Tanta coisa nova no 7.4 que não sei por onde começar
2015-08-19

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.
Pré 7.4:
SELECT z1~campo1 z1~campo2 z1~campo3 z1~campo4 z1~campo5
z2~campo6
FROM z1
INNER JOIN z2
ON z1~campo1 = z2~campo1
INTO CORRESPONDING FIELDS OF TABLE lt_data
WHERE z1~campo2 = 'MALAQUIAS'.
Pós 7.4:
SELECT z1~*
z2~campo6
FROM z1
INNER JOIN z2
ON z1~campo1 = z2~campo1
INTO CORRESPONDING FIELDS OF TABLE lt_data
WHERE z1~campo2 = 'MALAQUIAS'.
O Abapinho saúda-vos.
21 de agosto de 2015 às 9:39
Muita coisa esta a mudar mesmo e que alegria o Abapinho seguir na linha da frente!!
No exemplo em questão, se quisermos usar o novo “strict” mode da avaliação de sintaxe do novo SQL parser temos que:
1 – A lista de operandos tem que ser separada por “,”
2 – Caracter de escape “@” tem que ser adicionado a todas as variáveis “host”
Algo como:
SELECT z1~*, z2~campo6
FROM z1
INNER JOIN z2
ON z1~campo1 = z2~campo1
WHERE z1~campo2 = ‘MALAQUIAS’
INTO CORRESPONDING FIELDS OF TABLE @(data lt_data).
Caso o SP8 já esteja instalado, podemos ir ainda mais longe e declarar a tabela lt_data no exato momento em é preenchida, como acima exemplificado, bem como colocar a cláusula INTO na última posição da query(!!)
Para (muito mais) informação, espreitem:
http://help.sap.com/abapdocu_740/en/index.htm?file=ABENNEWS-740_SP05-OPEN_SQL.htm
Para perceber a razão da posição do INTO:
http://scn.sap.com/community/abap/blog/2014/10/08/abap-news-for-740-sp08–open-sql
Cumprimentos
Sérgio Fraga