Anda di halaman 1dari 7

SELECT SCREEN OVERVIEW Telas de seleo servem de interface entre o programa e o usurio, e permitem, por exemplo, a limitao da quantidade

e de dados a serem lidos do banco de dados. Bases de dados lgicos fornecem telas de seleo, cuja aparncia depende do nome do n especificado (<name> ns). Verses tela de seleo (caso fornecido pelo banco de dados lgico) oferecem um subconjunto de telas de seleo padro. Voc pode usar os elementos de linguagem declarativa PARMETERS e SELECT-OPTIONS para gerar uma tela de seleo padro (tela 1000) com entrada de campos prontos. Alm da tela de seleo de padro, voc pode gerar telas de seleo adicionais com SELECTION-SCREEN BEGIN.... e chamlos com CALL SELECTION SCREEN. Voc pode criar variantes de uma tela de seleo. VARIANTES uma variante de seleo especficas do usurio. Voc poderia criar uma variante de tela se voc costuma iniciar um programa com as variantes de mesma seleo ou iniciar o processamento em segundo plano.

DECLARANDO CAMPOS COM PARAMETERS


PARAMETERS: <f>[TYPE <type>][DECIMALS <n>][LIKE <f1>][MEMORY ID <pid>] [OBLIGATORY][DEFAULT <wert>] [AS CHECKBOX] [RADIOBUTTON GROUP <grp>]
REPORT zac_checkbox_radiobutton. ... . PARAMETERS: pa_carr LIKE sflight-carrid, pa_name AS CHECKBOX DEFAULT 'X', pa_curr AS CHECKBOX DEFAULT 'X', pa_lim_1 RADIOBUTTON GROUP lim, pa_lim_2 RADIOBUTTON GROUP lim, pa_lim_3 RADIOBUTTON GROUP lim. CONSTANTS mark VALUE 'X'. * Check, if any checkbox has been selected IF pa_name EQ mark. ... . ENDDIF. IF pa_curr EQ mark. ... . ENDDIF. * Check, which radiobutton has been selected CASE mark. WHEN pa_lim_1. ... . WHEN pa_lim_2. ... . WHEN pa_lim_3. ... . ENDCASE.

A declarao PARAMETERS um elemento de linguagem declarativa. Como no caso da instruo de dados, voc pode declarar os campos com TYPE ou LIKE. O sistema gera entrada de campos prontos na tela de seleo. Os nomes dos campos de parmetros podem ser de at 8 caracteres. Voc pode manter textos de seleo (nomes dos parmetros) com os elementos da funo de ext elements/Selection texts.

Voc pode definir um valor padro, com a adio <value> DEFAULT. Se voc atribuir um MEMRY ID <pid>, o sistema usa Memria SAP e o parmetro SET / GET para definir o valor padro. Se voc declarar campos obrigatrios com a adio OBLIGATORY os usurios no podem deixar a tela de seleo at que os valores foram inseridos nestes domnios. Voc tambm pode definir parmetros como AS checkbox ( caixa). Ao fazer isso cria-se um campo de um caractere que pode conter um "" (espao) ou um "X".Voc pode avaliar o contedo de caixas utilizando estruturas de controle IF e ENDIF /. Voc tambm pode definir uma srie de botes de rdio para a tela de seleo com o RadioButton GROUP<grp>. O nome de comprimento mximo para um RadioButton GROUP <grp> de 4 caracteres. Apenas um boto de rdio em um grupo pode ser ativo e pode ser avaliada durante o processamento do programa. Voc pode avaliar o contedo de botes de rdio usando as estruturas de controle CASE / ENDCASE.

SELECIONANDO COM A DECLARAO SELECT-OPTIONS


A instruo SELECT-OPTIONS um elemento de linguagem declarativa. Em contraste com a declarao PARAMETERS, ele permite que selees complexas em vez de apenas um campo de entrada. SELECT-OPTIONS gera um tabela interna<seltab> com uma estrutura padro. Este composto por quatro campos: seltab-sign, seltab-option, seltab-low, and seltab-high. O nome do <seltab> tabela de seleo pode conter at 8 caracteres. Voc pode manter textos de seleo (nome das selees) com os elementos da funo de texto / textos Seleo. Use a adio FOR para especificar o campo contra o qual o sistema deve verificar as entradas de seleo. Este campo deve ser declarado em uma instruo DATA ou TABLES. Os campos seltab de baixa e alta seltab possuem as mesmas caractersticas do campo de seleo. Cada linha da tabela de seleo <seltab> formula uma condio usando um dos seguintes operadores relacionais. Os seguintes valores so possveis: SINAL: I (Incluir), E (Excluir) OPO: EQ, NE, LE, LT, GE, GT, BT (Entre), NB (no entre), CP (Contm Padro), NP (No Contm Pattern) O conjunto de seleo a unio de todos os inclui (I1,..., In) menos a unio de todos os exclui (E1, ..., Em). Se a tabela permanece vazio, a seleo feita utilizando o conjunto de seleo total, se voc estiver trabalhando na instruo SELECT com WHERE IN <seltab>. SELECT-OPTIONS: <seltab> FOR <f> Internal Table so_carr REPORT select_options . ... . SELECT-OPTIONS: so_carr FOR sflight-carrid DEFAULT 'AA', so_fldt FOR sflight-fldate. SINTAXE DA DECLARAO SELECT-OPTIONS SELECT-OPTIONS <seltab> FOR <f> DEFAULT <value> DEFAULT <value1> TO <value2> MEMORY ID <pid> LOWER CASE OBLIGATORY NO-EXTENSION NO INTERVALS. OPTION <xx> SIGN <x>

Projetando a Tela de Seleo SELECTION-SCREEN BEGIN OF BLOCK <block> WITH FRAME TITLE <text> SELECTION-SCREEN END OF BLOCK <block> REPORT sel_screen. ... SELECTION-SCREEN BEGIN OF BLOCK carr WITH FRAME. SELECT-OPTIONS: so_carr FOR wa_sflight-carrid. SELECTION-SCREEN END OF BLOCK carr. SELECTION-SCREEN limit text-001. PARAMETERS: pa_lim_1 RADIOBUTTON GROUP lim, pa_lim_2 RADIOBUTTON GROUP lim, pa_lim_3 RADIOBUTTON GROUP lim. SELECTION-SCREEN END OF BLOCK limit. ... BEGIN OF BLOCK WITH FRAME TITLE BLOC Adies do comando SELECT-OPTIONS: DEFAULT - permite definir valores padro para seltab-low (valor nico) seltab-low e seltab-high (intervalo). Voc pode usar a OPTION e SIGN para definir valores padro para seltab e seltab sign- ue diferem do padro normal. ID MEMRIA <pid> aloca um parmetro SPA / GPA. O valor armazenado na memria SAP com o ID <pid> colocado em seltab-LOW (limite inferior do intervalo) quando voc chamar a tela de seleo. LOWER CASE - suprime a converso da entrada em maisculas. Essa adio no para os campos de dicionrios, uma vez que o atributo definido no Dicionrio leva preferencia. OBRIGATRIO (OBLIGATOTY) - gera um campo obrigatrio. Um ponto de interrogao aparece no campo de entrada na tela de seleo, e o usurio deve inserir um valor. NO EXTENSION suprime vrias selees numa faixa nica ou mltipla. NO INTERVALS - suprime a entrada seltab high (limite superior do intervalo) na tela de seleo. Voc pode usar a tela adicional, a seleo mltipla, para entrar com intervalos. Se voc entrar com um banco de dados lgico nos atributos do programa de tipo 1, a tela de seleo do banco de dados lgico processado. Se voc tiver programado adicionais SELECT-OPTIONS ou declaraes PARMETERS, o sistema exibe-os aps as selees do banco de dados lgico.

PROJETANDO A SELECTION SCREEN - 1

SELECTION-SCREEN BEGIN OF BLOCK <block> WITH FRAME TITLE <text> SELECTION-SCREEN END OF BLOCK <block> REPORT sel_screen_1. ... SELECTION-SCREEN BEGIN OF BLOCK carr WITH FRAME. SELECT-OPTIONS: so_carr FOR wa_sflight-carrid. SELECTION-SCREEN END OF BLOCK carr. SELECTION-SCREEN limit text-001. PARAMETERS: pa_lim_1 RADIOBUTTON GROUP lim, pa_lim_2 RADIOBUTTON GROUP lim, pa_lim_3 RADIOBUTTON GROUP lim. SELECTION-SCREEN END OF BLOCK limit.

PRICE.....

Voc pode usar a declarao SELECT SCREEN para criar o layout da tela de seleo. Voc pode agrupar selees que pertencem a um mesmo conjunto com a declarao BEGIN OF BLOCK <block> e colocar uma moldura em torno delas usando WITH FRAME. Voc pode atribuir um ttulo para o bloco, mas voc s pode usar o TITLE <text>, juntamente com um quadro. Voc pode moldar um mximo de 5 frames. Antes de assinar uma tela de seleo, voc deve orientar-se com as diretrizes da tela de design encontrados na transao BIBS.

PROJETANDO A SELECTION SCREEN - 2


Voc pode exibir vrios parmetros e comentrios em uma linha de sada. Para fazer isso, voc deve coloc-los entre a SELECTION-SCREEN BEGIN OF LINE e SELECTION-SCREEN END OF LINE. O parmetro COMMENTpermite REPORT sel_screen_i2. Output ..... ... incluir texto na linha - Textos comentrio deve ter sempre um formato (posio e tamanho de sada). A posio pode ser definida * Parameters displayed in one line com um campo de dados, ou pos_low pos_high.Estas so as posies dos campos seltab low e seltab high na tela de seleo. SELECTION-SCREEN BEGIN OF LINE. Seats ..... SELECTION-SCREEN COMMENT 1(20) text-s03. Adicionando comentrio ... FOR FIELD <f> garante que a Ajuda SELECTION-SCREEN COMMENT pos_low(8) text-s04. F1 para <f>field exibido para o texto do comentrio e para o prprio parmetro. Se AS CHECKBOX. PARAMETERS pa_col voc ocultar o parmetro (variante de seleo: o atributo invisvel) o texto do comentrio tambm est escondido. SELECTION-SCREEN COMMENT pos_high(8) text-s05. PARAMETERS pa_ico AS CHECKBOX. SELECTION-SCREEN POSITION para definir o cursor para a posio de sadaseguinte (somente dentro ... BEGIN DE Voc pode usar <pos> END OF LINE. LINHA ... END OF LINE).

Voc pode exibir vrios parmetros e comentrios em uma linha de sada. Para fazer isso, voc deve coloc-los entre a SELECT-SCREEN BEGIN OF LINE e SELECT-SCREEN END OF LINE. O parmetro COMMENTpermite incluir texto na linha. Texto de comentrio deve ter sempre um formato (posio e tamanho de sada). A posio pode ser definida com um campo de dados, ou pos_low pos_high.Estas so as posies dos campos seltab de low e seltab high na tela de seleo. Adicionando comentrio ... FOR FIELD <f> garante que a Ajuda F1 para o campo <f> exibida para o texto do comentrio e para o prprio parmetro. Se voc ocultar o parmetro (variante de seleo: o atributo invisvel) o texto do comentrio tambm ficar oculto. Voc pode usar <pos> POSITION para definir o cursor para a posio de sada seguinte (somente dentro ... BEGIN OF LINE....END OF LINE).

REPORT zac_initialization. ... INITIALIZATION. MOVE: mark TO pa_all. MOVE: 'I' TO so_carr-sign, 'BT' TO so_carr-option, 'AA' TO so_carr-low, 'LH' TO so_carr-high. APPEND so_carr. CLEAR so_carr. MOVE: 'E' TO so_carr-sign, 'EQ' TO so_carr-option, 'DL' TO so_carr-low. APPEND so_carr.

Airline Flight dat

TO TO

OUTPUT...

SEATS...
All Available Occupied Selection Colors Icons

O evento INITIALIZATION processado exatamente uma vez em um programa executvel. Voc pode fornecer valores padro para os campos de seleo da tela do banco de dados lgico durante este evento. Voc pode usar a Ajuda F1 (ajuda tcnica) para determinar os nomes dos campos da seleo. Voc pode usar a adio DEFAULT <value> para apresentar o relatrio especfico adicional valores padro para campos de tela de seleo em um comunicado seleo de opo. Os conjuntos de valor so inseridas no <seltab>tabela interna durante este evento. Na tela de seleo geralmente podem ser inicializado durante o evento AT SELEO-SCREEN OUTPUT. Este evento corresponde ao Processo de evento antes da sada (PBO) da tela de seleo e, portanto, pode ser passado vrias vezes. Uma tarefa comum para o evento na tela de seleo de PBO a modificao de tela dinmica (LOOP AT SCREEN), ou seja, mostrar ou ocultar campos, permitindo ou impedindo a entrada, e assim por diante.

Voc pode executar uma verificao de dilogo de erro da tela de seleo de campos dentro do processamento de bloco AT SELECTION SCREEN. O evento pertence ao tratamento PAI(ProcessAfterInput) da tela de seleo. Em caso de erros (ou MESSAGE Exxx MENSAGEM xxx), todos os campos esto prontos para a entrada novamente. Voc pode consultar selees individuais com os parmetros ON <f> ou ON<seltab>. Em caso de erros, apenas essas selees de entrada so feitas prontas novamente. Para verificar as combinaes de entrada de um grupo lgico, voc pode usar o evento AT SELECTION SCREEN ON BLOCK <block>. Os campos neste bloco esto preparadas para entrada quando uma mensagem de erro emitida. O evento AT SELECTION SCREEN ON END OF <field> pertence ao tratamento PAI da tela de seleo para selees mltiplas. Voc pode executar as verificaes de entrada para critrios de seleo do banco de dados lgico ou para o seu prprio programa de selees especficas. Voc pode trabalhar com vrias telas de seleo em um programa. A tela de seleo de padro tem sempre o nmero de tela 1000. Voc tambm pode definir uma tela de seleo SELECTION-SCREEN BEGIN OF SCREEN <nnnn> ... End <nnnn> SCREEN OF. Entre as declaraes BEGIN ... END ... , voc declara as selees necessrias com SELECT-OPTIONS e PARAMETERS. A tela de seleo atribudo o nmero <nnnn>e chamada com CALL SELECTION-SCREEN <nnnn>. O sistema cuida do retorno da tela de seleo, o que significa que voc no tem que program-lo sozinho com LEAVE SCREEN (como o caso com CALL SCREEN). O programa continua, imediatamente aps a chamada. No entanto, voc deve usar campo de sistema sy-SUBRC para consultar se o usurio escolheu Executar (F8) ou Cancelar (setas verde e amarelo, vermelho X). Executar (F8) retorna sy-SUBRC = 0; Cancelar retorna sy-SUBRC = 4. Voc pode fornecer a tela de seleo com valores padro na inicializao. Voc pode determinar quais tela de seleo est processando com o evento AT SELECTION-SCREEN. Voc pode fazer isso com uma estrutura de controle CASE e avaliar o campo de sistema sy-dynnr. Voc pode criar qualquer nmero de conjuntos de seleo (variantes) para um programa. As variantes so alocadas para o programa de forma exclusiva. Criando variantes faz sentido quando voc costuma iniciar um programa com os valores padro da mesma seleo. Voc pode marcar Start com variantes nos atributos do programa. Usurios (do sistema, servios de informao), podem, ento, iniciar o programa apenas com uma variante. Se o programa usa vrias telas de seleo, voc pode optar por criar uma variante para todas as telas de seleo ou individualmente para cada tela de seleo. Convenes e transporte de variantes " SAP & xxx "so fornecidos pela SAP " CUS & xxx "so criadas por clientes (no cliente 000) Variantes que segue estas convenes de nomenclatura so-cliente independente e ser automaticamente transportada junto com o relatrio. Se estas convenes de nomenclatura no forem seguidas, uma entrada para um REQUEST (task) deve ser adicionado lista de objetos: LIMU VARI <variant_name>.. Voc tem que atribuir um nome e uma descrio para cada variante. Por padro, as variantes esto disponveis tanto para processamento on-line e em segundo plano. Voc tambm pode definir uma variante exclusivamente para uso com processamento em segundo plano.

Voc pode proteger a variante e os critrios de seleo individual e parmetros contra alteraes no autorizadas. Se voc selecionar Exibir apenas no catlogo, esta variante no ser exibida na ajuda valor geral (F4). O tipo de uma seleo determinada na sua declarao: S para SELECT-OPTIONS, type p para os parmetros. Se voc selecionar selection protected, ento o campo (s) no estar pronto para a entrada. Voc pode usar o atributo de suprimir e esconder critrios de seleo e os parmetros na tela, se necessrio, resultando em uma tela de seleo menos desordenado. Quando voc usa varivel de seleo, h trs maneiras bsicas de suprir as suas selees com valores em tempo de execuo: From table TVARV (tipo T) Campos de data usando clculo de data dinmica (tipo D), tais como a data especfica de hoje . Variveis (tipo B especficas do usurio); Pr requisito: A seleo deve ser declarada com a adio MEMORY ID <pid> .

Anda mungkin juga menyukai