CASE dentro de SELECT (brevemente em todos os SAPs)
2015-07-20
Prepara-te porque em breve terás muitas surpresas. É que o ABAP está a aprender troques novos. Repara neste:
CONSTANTS:
lc_menina TYPE STRING VALUE ‘MENINA',
lc_menino TYPE STRING VALUE ‘MENINO’,
lc_senhor TYPE STRING VALUE ’SENHOR’,
lc_senhora TYPE STRING VALUE ‘SENHORA’.
SELECT nome,
CASE
WHEN sexo_id = ‘M' AND idade < 18 THEN @lc_menino
WHEN sexo_id = ‘F’ AND idade < 18 THEN @lc_menina
WHEN sexo_id = ‘M' AND idade >=18 THEN @lc_senhor
WHEN sexo_id = ‘F’ AND idade >=18 THEN @lc_senhora
END AS titulo
FROM zpessoa
WHERE pessoa_id = @pessoa_id
INTO CORRESPONDING FIELDS OF @lt_pessoas.
Só tens de esperar pela versão 7.40.
Obrigado Sérgio Fraga pela dica.
O Abapinho saúda-vos.