Menu Painter
É uma ferramenta com a qual você cria interfaces de usuário para seus programas ABAP. Os programas ABAP contem uma grande variedade de funções, que se enquadram em diferentes categorias dentro da interface do usuário. É importante que os usuários sejam capazes de diferenciar entre essas categorias para escolher a função certa facilmente. No sistema R/3, você organiza as funções usando o Painter Menu.
Uma instância da interface do usuário, que consiste em uma barra de menu, uma barra de ferramentas padrão, uma barra de ferramentas do aplicativo, e uma configuração de tecla de função, é chamada de GUI Status. O GUI Status e GUI Title definem como a interface do usuário irá parecer e se comportar em um programa ABAP.
O objeto principal de uma interface de usuário é o GUI Status. Isso pode ser atribuído a qualquer tela (tela, tela de seleção, ou lista). Tecnicamente, trata-se de uma referência a uma barra de menu, uma barra de ferramentas padrão, e uma configuração de teclas de função.
GUI Status / GUI Title
Para criar um Status e Title do GUI, siga os passos abaixo:
- Entre na transação SE41
- Entre com o nome do programa ZDESIGNFIRST e clique em Create.
- Digite no campo STATUS, ZMENU.
- No campo Short Text digite, Meu primeiro menu e clique OK.
- Na tela Maintain Status, em Menu Bar, clique no primeiro icone com o sinal de mais.
- Após expandir, em Display Standard, preencha o primeiro campo com a palavra: Reservas.
- De um duplo clique no seu campo Reservas.
- Apos expandir, em Code digite: F_Mostrar e em Text digite Mostrar.
- Faça o mesmo procedimento acima adicionando os itens Limpar e Sair.
- Salve e ative o Menu.
- Digite /nse41 para voltar a tela inicial do Menu Painter.
- Selecione o programa ZDESIGNFIRST, o Status ZMENU, clique no botão de radio Title List e clique no botão Create.
- Em Title Code digite o mesmo nome do programa e em Title digite: “Flight Model – Reservas de Voo.” e clique OK.
- Para testar ative e pressione F8, coloque o status = ZMENU, Screen = 100, Title = ZDESIGNFIRST e clique em OK.
- Entre na transação SE38 e modifique o programa ZDESIGNFIRST como mostra o código abaixo.
Exemplo:
Neste exemplo criamos um Menu Painter para um objeto de GUI Status e um Objeto GUI Title e o anexamos ao programa ZDESIGNFIRST que fizemos anteriormente no Screen Painter com o editor gráfico.
Abap
*&---------------------------------------------------------------------* *& Report ZDESIGNFIRST *& *&---------------------------------------------------------------------* *& Desenvolvimento Aberto *& Screen Painter *&---------------------------------------------------------------------* REPORT ZDESIGNFIRST. TABLES SPFLI. DATA OK_CODE LIKE SY-UCOMM. CALL SCREEN 100. MODULE STATUS_0100 OUTPUT. * Adiciona o Menu e Titulo criados no Menu Painter SET PF-STATUS 'ZMENU'. SET TITLEBAR 'ZDESIGNFIRST'. CASE SY-UCOMM. WHEN 'F_SAIR'. LEAVE PROGRAM. WHEN 'F_MOSTRAR'. SELECT SINGLE * FROM spfli INTO CORRESPONDING FIELDS OF spfli WHERE carrid = spfli-CARRID AND CONNID = spfli-CONNID. WHEN 'F_LIMPAR'. CLEAR SPFLI. WHEN 'F_GRAVAR'. INSERT INTO SPFLI VALUES SPFLI. MESSAGE 'Registro gravado com Sucesso' TYPE 'S'. CLEAR SPFLI. WHEN 'F_EXCLUIR'. DELETE FROM SPFLI CLIENT SPECIFIED WHERE mandt = spfli-MANDT AND carrid = spfli-CARRID AND CONNID = spfli-CONNID. MESSAGE 'Registro deletado com Sucesso' TYPE 'S'. CLEAR SPFLI. ENDCASE. ENDMODULE.