SQL nativo
2016-03-28
Por vezes o SQL do ABAP não te permite fazer coisas que conseguirias fazer usando SQL nativo da base de dados. É possível fazê-lo.
* Converte para maiúsculas e acrescenta wildcard
TRANSLATE l_name1 TO UPPER CASE.
CONCATENATE l_name1 '%' INTO l_name1.
* Executa SQL nativo para fazer
* uma pesquisa "case insensitive" pelo nome
EXEC sql performing SAVE_ROW.
SELECT kunnr
INTO :l_kuune
FROM kna1
WHERE kna1.mandt = :sy-mandt
AND UPPER(kna1.name1) LIKE :l_name1
ENDEXEC.
Mas atenção pois, ao contrário do SQL do ABAP que é genérico, este SQL terá de ser escrito especificamente para a base de dados existente. Por consequência o código fica menos flexível e mais complexo. Como tal, faz isto só mesmo se não tiveres alternativa.
Foto: Photodesaster
O Abapinho saúda-vos.