"
Etiqueta > SAPgui
Apoiado por

Programar classes baseado em texto fonte

Estando habituado a programar em Java e C++, a forma como a SE24 obriga a navegar entre as várias partes de uma classe e o facto de cada método estar isolado no seu próprio include ao início fez-me muita confusão. Mas porque é que a SAP complica sempre tudo? Acabei por habituar-me.

A dado momento a SE24 passou a permitir a opção “Basedo em texto fonte” que mostra a classe e os métodos todos ligados em texto corrido. Mas por alguma razão que nunca atinei com aquilo.

Ler o resto do artigo! »

Saltar para a tua última alteração

Imagina que estás a mexer num programa daqueles antigos que têm milhares de linhas (sim porque hoje em dia sabes que não modularizar é errado (pecado mesmo) e os teus métodos (sim porque hoje tu já só usas métodos) nunca passam das 200 linhas).

Ora estás tu muito bem a editar uma linha qualquer lá pelo meio quando (como já não vais para novo) o nome de uma variável de que precisas se te varre completamente da memória. Ainda puxas pela cabeça mas não há meio de te recordares dela. Não te resta senão fazer HOME para saltares para o topo do programa, onde estão declaradas todas as variáveis (porque quem fez este programa não modularizava mas era uma pessoa arrumadinha).

Mas esqueceste-te do número da linha que estavas a editar e então lá tens tu de vir por aí abaixo a PAGE DOWNar às apalpadelas à procura da linha que estavas a alterar.

Ou então…

Ler o resto do artigo! »

Inibe o histórico de valores para um só campo

Normalmente o SapGUI memoriza os últimos valores introduzidos em cada campo. E isso costuma ser bom. Mas podes muito bem não querer que isto aconteça. (ex: no caso, improvável eu sei, de quereres introduzir valores pornográficos num determinado campo). Uma hipótese é desligar globalmente esta funcionalidade nas configurações do SapGUI.

Mas e se quiseres desligar apenas num campo? O Abapinho ensina-te.

Ler o resto do artigo! »

A classe CL_GUI_FRONTEND_SERVICES

A classe CL_GUI_FRONTEND_SERVICES é frequentemente usada para fazer upload e download de ficheiros de e para o computador local. Mas ela consegue fazer muitos mais coisas boas. Por exemplo:

Ler o resto do artigo! »

O SAP sabe tirar selfies!

Acabei de descobrir que o SAP consegue tirar selfies. Ainda não estou a ver para que é que isto possa servir. Mas não é grave porque na verdade também nunca vi para que é que servem as selfies tiradas por nós os humanos.

Faz-se assim:

Ler o resto do artigo! »

O GUI está disponível?

Para verificar se um programa está em background é costume espreitar a variável de sistema SY-BATCH. A SY-BINPT também pode ser usada para verificar se o que está a correr em background é uma sessão de BDC. Normalmente usa-se uma destas duas.

Mas há uma pergunta parecida e no entanto diferente. Como fazes para saber se o GUI está disponível? É certo que na maior parte dos casos o resultado é semelhante, mas não o será em todos.

É como dizer que de dia há o sol e de noite há a lua. Se o ceu estiver nublado não há nem sol de dia nem lua de noite.

Ler o resto do artigo! »

Como evitar timeout ao correr um programa

Normalmente os sistemas SAP têm definido um tempo limite para que um programa possa correr interactivamente. Se o programa demorar mais ocorre um erro de execução (vulgo dump).

Ler o resto do artigo! »

Atalhos para fazer letras grandes e pequenas

Podes nem sequer saber programar mas se souberes datilografar rápido e conheceres muitos atalhos de teclado vais parecer super profissional.

No editor escreve a seguinte palavra: chichisbéu

Agora experimenta nos seguintes atalhos:

CTRL+U: CHICHISBÉU LETRAS GRANDES! MAIÚSCULAS!
CTRL+L: chichisbéu letras minúsculas! minúsculas!
CTRL+J: Chichisbéu A Primeira Letra De CaDa PaLaVrA É mAiÚsCuLa!
CTRL+K: cHICHISBÉU O gRaNdE fIcOu PeQuEnO e ViCe-VeRsA!

Obrigado José Vília pela dica.

Obrigado Chris pela foto.

O Abapinho saúda-vos.

Múltiplas selecções OR na SE16N

Se tu és daquelas pessoas que ainda usa a SE16, este artigo não é para ti. Se continuares a ler corres o risco de encontrar ainda mais uma razão para finalmente passares a usar a SE16N (como se todas as outras não fossem já suficientes).

Imagina que queres seleccionar todos os materiais que tenham “PREGO” no nome e que sejam do tipo FERRAGENS e além disso todos os materiais que tenham “GUARDANAPO” no nome e que sejam do tipo COMIDA. Ou seja, não deverá aparecer o “PREGO_NO_PAO” nem o “GARDANAPO_PAPEL”. O que tu queres é isto (faz de conta):

(MATNR = “PREGO%” AND MTART = “FERR” ) OR (MATNR = “GUARDANAPO%” AND MAKT = “COMI” )

Como bem sabes, numa utilização normal (sem recorrer a isto que te vou mostrar) da SE16N terias de a executar duas vezes e cruzar manualmente a informação porque o ecrã de selecção não dá para fazer ORs.

Ou dá?

Ler o resto do artigo! »

Escrever em muitas linhas ao mesmo tempo

O editor de ABAP tem coisas que não lembram ao diabo.
Até dá para escrever ao mesmo tempo em várias linhas.

Ler o resto do artigo! »

Indentar em bloco

Para indentares um bloco de linhas só com teclas faz assim:

Ler o resto do artigo! »

Limpar os buffers de uma sessão SAP

Todos os dias aprendo novos comandos para introduzir no campo da transacção. Hoje aprendi uns que resolvem um problema que, ainda que raramente, já me aconteceu no passado.

Vê lá se isto já te aconteceu: fazes uma alteração a um texto de um elemento usado numa tabela que editas a partir da SM30. Mas quando vais à SM30 o texto antigo continua lá. Activas vezes sem conta, sais e entras da transacção e nada.

Ler o resto do artigo! »

Modelo automático só com CTRL-SPACE

Claro que já conheces o botão “Modelo” no editor de ABAP que permite introduzir automaticamente modelos para módulos de função, chamadas a métodos e outros.

Mas o novo editor agora cresceu um bocadinho (já só está 10 anos atrasado em relação ao Eclipse em vez de 20) e já permite completar automaticamente alguns comandos através do atalho CTRL-SPACE.

Ler o resto do artigo! »

Mete-o entre parêntesis

Truquezito catita: quando na SE38 quiseres meter uma palavra ou expressão entre parêntesis ou aspas, basta seleccioná-la e carregar em ( ou [ ou ‘. E imediatamente isto fica (isto) ou [isto] ou ‘isto’.

Obrigado Sérgio Fraga pela dica.

Contemplar o pacote

Estás a contemplar uma classe na SE24, uma tabela na SE11 ou um programa na SE80. Agora queres ver o pacote desse objecto bem como o seu conteúdo. Até há pouco tempo eu faria assim: primeiro via nas características do objecto qual é o seu pacote, depois abria uma sessão nova, ia à SE80 e escrevia lá o pacote.

Agora aprendi uma forma muito mais simples.

Ler o resto do artigo! »


Acerca do Abapinho
O Abapinho é suportado pelo WordPress
Artigos (RSS) e Comentários (RSS).