Categoria > Dicas
Patrocinado por
Patrocinado por Inetum

Usa BASE para não estragares o que já tens

images/thumbnail.png - Thumbnail

Dantes usava-se o comands APPEND e INSERT para adicionar linhas a tabelas internas. Mas agora que o ABAP cresceu, podemos usar VALUE, REDUCE, CORRESPONDING, etc. Mas, e se a tabela interna já tiver linhas e não as quisermos perder?

INNER JOIN em vez de FOR ALL ENTRIES

images/thumbnail.png - Thumbnail

Há uns tempos mostrei-te que podias fazer SELECT a uma tabela interna. E no outro dia perguntei-me: se isso é possível, não será então também possível fazer INNER JOINs?

Copia do SAPGUI para o clipboard

images/thumbnail.png - Thumbnail

Sabias que o teu programa ABAP pode copiar conteúdo para o clipboard do teu sistema operativo?

SELECT a tabela interna

images/thumbnail.jpg - Thumbnail

Agora dá para fazer SELECT a tabelas internas.

SELECT SINGLE vs SELECT UP TO 1 ROWS

images/thumbnail.jpg - Thumbnail

É pá, esta é uma daquelas discussões infinitas que nunca chegarão a lado nenhum. Igual a tentar decidir se mereces continuar a viver se meteres ananás na pizza ou queijo Filadélfia no sushi.

Chama a SM30 ou a SM34 a partir de uma função

images/thumbnail.jpg - Thumbnail

Se quiseres chamar a SM30 a partir de um programa podes fazer um CALL TRANSACTION mas há uma forma mais simples.

Usa um diccionário em vez de IF ou CASE

images/thumbnail.png - Thumbnail

Quanto menos IFs e CASEs melhor, certo? Cada ramo de um IF ou de um CASE é uma excepção. E nós gostamos mais de regras do que de excepções. Aqui está mais uma técnica para o conseguir.

O ponto de exclamação!

images/thumbnail.jpg - Thumbnail

Quando se olha para o código fonte ABAP, a declaração dos métodos prefixa sempre os parâmetros de entrada com um ponto de exclamação. Isto sempre me intrigou. Finalmente sei o porquê.

Coleccionador de mensagens

images/thumbnail.jpg - Thumbnail

As mensagens SAP são todas geridas de forma centralizada através da transacção SE91, mas podem aparecer a um programa nos mais diversos formatos.

SELECT de registo único com chave incompleta

images/thumbnail.png - Thumbnail

Durante anos explicaram-me que se deve usar UP TO 1 ROWS quando a chave não é completa. A minha professora primária disse que devemos sempre perguntar porquê: porquê? Ninguém explica.

Usar & em textos de SAPScript

images/thumbnail.png - Thumbnail

Imagina que queres mostrar um url num formulário. Colocas o url no texto do formulário e partes do princípio que tudo correrá bem. Porque, de facto, geralmente tudo corre bem. Só que às vezes…

Declarações de dados limpas

images/thumbnail.jpg - Thumbnail

Quando escreveres código deves estar sempre preocupado com quão fácil será mantê-lo. Isso é particularmente importante nas declarações de variáveis. E é tão simples de aplicar.

SELECT FOR UPDATE

images/thumbnail.jpg - Thumbnail

Quando vais modificar registos na base de dados é comum fazeres primeiro um SELECT para ver como as coisas são e depois então fazeres UPDATE como as coisas serão.

Tabela com chaves de desenvolvimento

images/thumbnail.jpg - Thumbnail

Quando chego a um projecto novo atribuem-me uma chave de desenvolvimento para cada sistema de desenvolvimento associado. Normalmente esta é-me enviada por e-mail. Normalmente perco-lhes o rasto.

Modifica facilmente uma tabela interna

images/thumbnail.jpg - Thumbnail

A nova forma de ler de tabelas internas é também a nova forma de escrever em tabelas internas.