April 19, 2024

ABAPZombie Guide to ABAP – Parte 11 – AT PFxx

Bom, o AT PFxx é um daqueles comandos que a SAP não recomenda serem usados em programas, salvo para testes.

O funcionamento é bem simples, nada muito complicado! Ele cria um evento novo para os códigos de função de 1 até 24, para o tratamento das funções de usuários em listas (reports com o WRITE). Exemplo para o F5:

REPORT zombie_at_pf.

*--------------------------------------------------------------------*
* START-OF-SELECTION
*--------------------------------------------------------------------*
START-OF-SELECTION.

* Print de uma lista qualquer para o teste
  WRITE 'Teste de comandos! Aperte o F5'.

*--------------------------------------------------------------------*
* EVENTO para F5 em Listas
*--------------------------------------------------------------------*
AT PF5.
  BREAK-POINT.

Se você trocar o PF5 por PF1, PF2, PF3, etc… ele vai disparar um evento para um botão diferente. Agora, eu disse ali que a SAP não recomanda o uso (e é bem explícito isso na documentação oficial do comando), mas ela nos dá uma alternativa que eu acho muito melhor… tratar os códigos de funções 1-24 dentro do evento AT USER-COMMAND, tratando o valor da variável SY-UCOMM num laço CASE…ENDCASE, por exemplo.

Mas enfim, agora se você ver isso num standard por aí não vai ficar boiando! 😀

Abraços!

Mauricio Cruz

Pasteleiro há 15+ anos e criou o ABAPZombie junto com o Mauro em 2010. Gosta de filosofar sobre fundamentos básicos da programação e assuntos polêmicos. Não trabalha mais com SAP, mas ainda escreve sobre programação e faz vídeos de vez em quando.

View all posts by Mauricio Cruz →

Leave a Reply

Your email address will not be published. Required fields are marked *