Tag > 7.4
Patrocinado por
Patrocinado por Inetum

Para aqueles que criticam a nova sintaxe da 7.4

images/thumbnail.jpg - Thumbnail

Este post dirige-se à personagem colectiva que representa todas as pessoas já me disseram que gostam de algumas coisas da nova sintaxe funcional da 7.4 mas acham que não se deve exagerar e se deve evitar usar REDUCE e essas coisas desnecessariamente esquisitas pois o código fica mais obscuro, é mais lento e não vêem vantagens.

Estás a falar a sério?

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?

Mesh e remexe

images/thumbnail.jpg - Thumbnail

O ABAP 7.4 trouxe uma série de novidades aplaudidas. Mas de todas, aquela em que menos se fala é o novo tipo de dados MESH. Vamos ver aqui quão injusto é tê-lo votado ao abandono.

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.

ABAP no meio de comandos SQL

images/thumbnail.jpg - Thumbnail

Sabias que, se o teu SAP for minimamente actual, podes usar expressões complexas em ABAP no meio de comandos SQL?

Lookup em tabela sem ter de lidar com a excepção CX_SY_ITAB_LINE_NOT_FOUND

images/thumbnail.jpg - Thumbnail

Antes do 7.40 ter modernizado o ABAP, um lookup a uma tabela obrigava a declarar uma variável auxiliar e a pelo menos 4 linhas de código.

NÃO

images/thumbnail.jpg - Thumbnail

Não, o ABAP nunca vai ter o operador NOT.

MOVE-CORRESPONDING entre duas tabelas respeitando a chave

images/thumbnail.jpg - Thumbnail

O Abapinho não tem falado muito sobre o 7.40 porque as suas novidades têm já sido amplamente descritas em vários sites. Tentamos não inventar a roda.

Mas há pequenas pérolas úteis que ainda são pouco conhecidas. Esta é sobre uma delas.

O caminho mais curto para ir de SELECT a RANGE

images/thumbnail.jpg - Thumbnail

Hoje debruçamo-nos sobre como tentar optimizar o código para transformar um SELECT num RANGE.

É tão simples converter uma MESSAGE numa EXCEPTION

images/thumbnail.jpg - Thumbnail

Há alguns anos atrás mostrei como se podia converter uma MESSAGE normal numa excepção tipificada. Entretanto o ABAP evoluiu um bocadinho e agora, na versão 7.40, aquela solução complexa já não é necessária.

IF sem IS INITIAL em métodos booleanos

images/thumbnail.jpg - Thumbnail

O sistema do cliente onde trabalho actualmente foi finalmente actualizado para o 7.50 e, depois de tantos anos preso ao ABAP convencional, posso desfrutar as maravilhas introduzidas no 7.40.

São às dúzias essas maravilhas, e não vou começar aqui a fazer artigos sobre cada uma porque já existem artigos espalhados pela net sobre quase todas elas o Abapinho faz sempre o possível por ensinar algo novo ou, pelo menos, pouco conhecido.

Mas há uma singela funcionalidade que, não sendo nada de extraordinário, me agrada: já não é preciso fazer IS INITIAL no comando IF quando a condição é um método que retorna um booleano.

GROUP BY em LOOPs a tabelas internas

images/thumbnail.jpg - Thumbnail

Todos já ordenamos tabelas internas e utilizamos a instrução AT NEW. Mas a partir da 7.40, podemos utilizar GROUP BY no LOOP.

É fantástico a capacidade de agrupamento em que os valores do registo processado no loop podem ser comparados, recorrendo a expressões e até métodos.

O agrupamento é realizado num primeiro LOOP e pode ser processado a seguir. Experimentem o seguinte código e, tal como eu, ficarão impressionados com o caminho que o ABAP está a seguir.

O READ TABLE vai desaparecer!

images/thumbnail.jpg - Thumbnail

Pré 7.4: DATA l_idade type i. READ TABLE lt_gente INTO ls_gente WITH KEY nome = l_nome. l_idade = ls_gente-idade. Pós 7.4: data(l_idade) = lt_gente[ nome = l_nome ]-idade. Obrigado Sérgio Fraga pela dica. O Abapinho saúda-vos.

Tanta coisa nova no 7.4 que não sei por onde começar

images/thumbnail.jpg - Thumbnail

O Abapinho vai lentamente começar a dar dicas específicas para o AS ABAP 7.4. Lentamente porque ainda são poucas as pessoas com acesso a esse sistema. Mas são tantas as novidades que dá vontade de começar a fazê-lo rapidamente. O ABAP era um gajo de meia idade com barriga e todo flácido. Fizeram-lhe uma operação plástica e agora parece ter 20 anos e montes de músculos, capaz de ir sair à noite até às 9 da manhã, beber 7 gins tónicos e a seguir, antes de se ir deitar, fazer 100 burpees só para adormecer melhor.