Patrocinado por
Patrocinado por Inetum

Usa um gestor de passwords na tua vida

images/thumbnail.jpg - Thumbnail

E pronto, se leste o título, a dica está dada. Agora umas dicas sobre a dica:

Tenho 5 anos!

Olá, chamo-me Abapinho e tenho 5 anos. Ainda estou em crescimento. Obrigado a todos os que me visitaram na minha curta vida e um obrigado especial àqueles que me enviaram dicas e ideias e em particular aos que já colaboraram com artigos. Eu, Abapinho, saúdo-vos.

Boas prácticas do Abapinho

images/thumbnail.jpg - Thumbnail

Ao longo dos últimos tempos compilei um conjunto de boas prácticas que fui adoptando para mim próprio. Resolvi partilhá-las aqui, criando para isso uma nova categoria (que aparecerá em breve no menu à esquerda) sob a qual serão agrupadas. A ideia original era fazer um PDF mas, como elas estão em constante revisão e ampliação, tornava-se pouco práctico. Como tal, serão publicadas uma a uma. O objectivo é que estas possam ser vistas no seu conjunto como uma referência acessível de fácil consulta.

O detective do ABAP

images/thumbnail.jpg - Thumbnail

Em SAP, quando um desenvolvimento está concluído, chega finalmente o momento de o enviar para outros sistemas onde pode ser devidamente testado e por fim executado pelos utilizadores. Mas antes disso, é crucial verificar se não existem lapsos, erros e afins que possam levar ao aparecimento de alguns comportamentos imprevisíveis por parte dos nossos programas. Existe uma ferramenta muito útil que permite filtrar alguns desses erros e lacunas. Chama-se ABAP Code Inspector.

Fecha a janela encalhada

images/thumbnail.jpg - Thumbnail

Quantas vezes te aconteceu ficar com uma janela “pendurada” quando terminas um debug?

Exemplar exemplo de SALV

images/thumbnail.jpg - Thumbnail

A não ser que queiras fazer edição dos dados, a única forma digna de usar ALVs nos dias que correm é através das classes SALV. São mais modernas, mais elegantes e permitem a quem as usa alcançar um estatuto social até aqui apenas ao alcance daqueles que são donos de uma matrícula de carro.

Pára lá mas não já

images/thumbnail.jpg - Thumbnail

Estás a fazer um LOOP AT a uma tabela com 1000 linhas e sabes que a linha que te interessa é a 853. Até há pouco tempo tinhas duas hipóteses: ou carregavas 852 vezes na tecla F8, arriscando-te a carregar 853 e teres de começar tudo de novo ou então criavas um watchpoint com a condição SY-TABIX = 852 ou lá perto e rezavas para que funcionasse. Agora tens uma terceira alternativa.

APPEND LINES OF classe->metodo() TO itbl

images/thumbnail.jpg - Thumbnail

O ABAP anda cada vez mais esperto. Ainda sou do tempo em que não se fazia nada dele. E agora, lentamente, com mais de um quinto de século de atraso, lá vai tentado imitar o C e o Java e ficando mais flexível. Eu ia fazer algo deste tipo:

Teclado automático

images/thumbnail.jpg - Thumbnail

Todos os programadores conhecem a relação íntima que há entre batch-inputs e pisa-papéis, agrafadores e outros objectos pesados do tipo. São ajudantes preciosíssimos que evitam passarmos por vezes 8 horas a empurrar uma tecla chamada ENTER com um dedo. Ainda que esse tipo de objectos tenha algum encanto, por vezes a lei da gravidade - a mesma que os torna úteis - fá-los cair para o lado e pararem assim de pressionar a tal tecla chamada ENTER.

Adicionar valor a domínio standard

images/thumbnail.jpg - Thumbnail

Se julgas que não é possível acrescentar valores a um domínio SAP standard sem pedir uma chave de activação, estás enganado.

O ABAP suga

images/thumbnail.jpg - Thumbnail

Ora bem, este é o primeiro artigo do Abapinho em que o título se sente um bocado perdido na tradução. Mas mesmo tendo consciência de que não é semanticamente são, penso ser o único título à altura do que aqui vos apresento.

Usa sempre classes de mensagens nas classe de excepção

images/thumbnail.jpg - Thumbnail

As classes de excepção permitem declarar múltiplos textos que descrevem os diferentes erros possíveis que elas podem representar. Há no entanto uma opção para a associar a uma classe de mensagens (SE91). Isto permite que, em vez de os textos serem definidos directamente ali na classe de excepção, sejam antes definidos como clássicas mensagens da SE91. E tem vantagens.

Matemática problemática

images/thumbnail.jpg - Thumbnail

Sabes a diferença entre um mistério e um enigma? Num enigma sabe-se que há uma solução mas esta não é conhecida; já num mistério, não se sabe se haverá solução. Concordas com isto? 5 * 3 / 10 = ( 5 * 3 ) / 10 = 5 * ( 3 / 10 ) = 1.5 Se não concordas, devias concordar porque é um facto matemático. Mas vamos lá fazer umas experiências.

O editor de ABAP tem boa memória

images/thumbnail.jpg - Thumbnail

No editor ABAP selecciona uma palavra e faz CTRL-C. Depois selecciona outra palavra e faz novamente CTRL-C. Depois outra e outra. Copiaste várias vezes palavras para o clipboard. Diz a experiência e o senso comum que agora, se fizeres CTRL-V só vais poder usar a última palavra que para lá copiaste. Mas não é bem assim. Talvez não saibas mas o editor de ABAP tem boa memória.

Compara uma tabela entre dois sistemas

images/thumbnail.jpg - Thumbnail

A transacção SCMP permite comparar o conteúdo de uma tabela entre dois sistemas. Muito útil, principalmente para tabelas de parameterização. É muito simples de usar. Permite fazer uma pré-selecção dos registos bem como dos campos a comparar. Permite também mostrar apenas as diferenças, o que é conveniente para tabelas com muitos dados. E acho que não é preciso explicar mais. Ite et videte. Esta dica apareceu recentemente no ex-blog SAPtricks e é tão útil que vo-la ofereço aqui também, caso não a tenham lá visto já.