"
Apoiado por

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

adam_eve

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! »

Acrescenta parâmetros a métodos e funções standard

esquilo

Todos conhecemos as ampliações implícitas da SAP, que permitem adicionar código no início ou final qualquer blocos de código standard (funções, métodos, etc.). Já todos as usámos para alterar uma BAPI ou outro código standard qualquer.

Mas só há pouco tempo é que descobri que também é possível usar ampliações implícitas para acrescentar parâmetros a funções e métodos ABAP standard.

Ler o resto do artigo! »

ZTOAD – Editor de SQL

toad-world-logo

O Toad é uma ferramenta muito famosa no mundo SQL que permite construir e executar queries SQL de forma fácil e interactiva. E agora, graças ao senhor Sébastien HERMANN, o SAP tem uma versão simplificada desta ferramenta maravilha.

Ele explica.

Obrigado Sérgio Fraga por descobrires isto.

O Abapinho saúda-vos.

Índices secundários em tabelas internas

postits

Durante anos as tabelas internas eram declaradas assim:


DATA: itbl TYPE TABLE OF bkpf.

Ler o resto do artigo! »

Programa a programação dos programas

cerebro_fios

Uma das coisas que distingue o homem dos restantes animais é o facto de ser capaz de pensar o pensamento.

Um pardal pode pensar “estou assustado, vou dizer piu piu piu” e, como consequência, quem estiver ao pé dele ouve “piu piu piu”.

Ler o resto do artigo! »

Utilizar a lista de utilizações programaticamente

Book Illustration Depicting Sherlock Holmes and Dr. Watson in a Train Cabin

A ferramenta “lista de utilizações” é uma das mais queridas de um programador ABAP. Através dela conseguimos saber onde é que um objecto é utilizado. Parece pouco mas sabemos que é muito.

Ler o resto do artigo! »

A classe CL_GUI_FRONTEND_SERVICES

nariz

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!

selfiestick

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! »

Nunca te lembras do código ASCII do CR_LF e seus amigos?

carriage_return

Eu também não.

Nem quero lembrar-me. Para quê gastar memória com códigos obtusos?

E não é preciso porque o ABAP tem uma classe que ajuda.

Ler o resto do artigo! »

SELECT de um conjunto de valores conhecidos

banner-minions

Pedem-te para seleccionares registos cujo critério é um conjunto de meia dúzia de códigos que são conhecidos e nunca vão mudar. Sabias que podes fazer tudo logo no SELECT?


SELECT * INTO T_T005T
FROM T005T
WHERE LAND1 = I_LAND1 AND
           SPRAS IN ( 'PT', EN' ).

Compete-me lembrar-te que fixar valores em programas não é a melhor das ideias por isso usa isto com tino.

Obrigado Sérgio Fraga pela dica.

O Abapinho saúda-vos.

Podes gravar variantes na SE16N

nariz_cao

E pronto, está dada a dica. Esteve sempre debaixo do teu nariz mas provavelmente nunca pensaste nisso: é possível gravar variantes na SE16N. E até podem ser específicas por utilizador. Algo tão práctico e no entanto tão pouco conhecido.

Obrigado Sérgio Fraga pela dica.
Obrigado Cloudtail pela foto.

O Abapinho saúda-vos.

Limitar execução em background ou foreground

semaforo

Desenvolveste um report que sabes que demora 12 horas a correr. Por isso não queres que ninguém tente corrê-lo em foreground. Vou mostrar-te uma forma de garantires que isso não acontece.

Ler o resto do artigo! »

Como sabotar textos standard

sabotage

Às vezes não gosto dos nomes que a SAP deu às coisas. E então mudo-os.

Por exemplo, um dia estava muito zangado e achava que os clientes eram todos uns parasitas.

Então fiz o seguinte:

Ler o resto do artigo! »

Formata as variáveis ao concatenar strings com pipes

filtros

A nova moda em strings é usar pipes. Tipo:


str = |Olá { sy-uname }, | &
      |a data de hoje é { sy-datum }.|.

Além de ter pinta é muito mais práctico do que usar o CONCATENATE que é horrível.

Mas o que eu só descobri recentemente é que é possível aplicar formatação às variáveis:

Ler o resto do artigo! »

O GUI está disponível?

guilherme-leicam

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

dynamite

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! »

Eu te baptizo em nome do ABAP

letras_frigorifico

Quando aprendemos ABAP ensinam-nos uma série de regras sobre como dar nomes a variáveis. Ainda que nem todos acabem por dar nomes iguais, ainda assim partilham-se algumas ideias rígidas:

  • As variáveis locais começam por L: L_BUKRS;
  • As variáveis globais começam por G: G_MODE;
  • As tabelas internas têm de ter lá um T_: LT_MARA;
  • As estruturas têm de ter lá um S_: LS_MARA;
  • As referências para objectos começam por R_: R_CUSTOMER;
  • Os parâmetros input devem começar por I, os output por O, os changing por C e os returning por R.
  • E a mais estúpida de todas, os field-symbols devem começar por FS_: <FS_MARA>.

No início do século XXI isto até fazia sentido (excepto a dos field-symbols que já na altura era tão estúpida como escrever a palavra “lápis” em todos os lápis que tivermos). Hoje quase já não. Passo a explicar.
Ler o resto do artigo! »

Abapinho Dev Tools: Translator

torre_babel

O Nuno Morais desenvolveu uma ferramenta muito útil que auxilia na tradução em massa da maioria dos objectos SAP.

A ferramenta não faz tradução automática entre línguas. Antes, permite:

  • Exportar um ficheiro Excel com textos
  • Importar um ficheiro Excel com textos
  • Copiar textos de uma língua para uma ou mais línguas de destino
  • Criar uma ordem de transporte com as alterações
  • Encontrar dependências de objectos a que faltem traduções
  • Práctico interface de navegação para tradução manual

O Abapinho passa a ser o seu repositório oficial.

Código no GitHub.

Em breve, instruções. Até lá vai experimentando, é intuitivo. E se gostares ou tiveres sugestões deixa aqui um comentário.

Obrigado Nuno por teres desenvolvido isto e por o partilhares com o mundo no Abapinho.

Obrigado AJ Cann pela foto.

O Abapinho saúda-vos.

Abapinho Dev Tools: Dependencies

canivete_suico

O Nuno Morais desenvolveu uma ferramenta muito útil que permite comparar objectos entre sistemas e que funciona muito melhor do que a transacção SREPO.

O Abapinho passa a ser o seu repositório oficial.

Código no GitHub.

Em breve, instruções. Até lá vai experimentando, é intuitivo. E se gostares ou tiveres sugestões deixa aqui um comentário.

Obrigado Nuno por teres desenvolvido isto e por o partilhares com o mundo no Abapinho.

Obrigado AJ Cann pela foto.

O Abapinho saúda-vos.

Atalhos para fazer letras grandes e pequenas

OLYMPUS DIGITAL CAMERA

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.


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