Modificar uma campo em todas as linhas de tabela interna
2015-08-31
O que vos vou mostrar não é propriamente uma novidade. Até já foi usado antes no Abapinho. Mas como se continua a ver por aí muita gente a fazer LOOPs a tabelas internas para alterar um campo, achei que valia a pena recordar.
Tens uma tabela com um milhão e duzentas mil linhas e queres que o campo ICON tenha sempre o valor ‘@FM@’.
Em vez de fazeres isto:
LOOP AT lt_data ASSIGNING <data>.
<data>-icon = '@FM@'.
ENDLOOP.
Experimenta fazer antes isto:
ls_data-icon = '@FM@'.
MODIFY lt_data FROM ls_data TRANSPORTING icon WHERE icon <> 'PATO DONALD'.
Como é óbvio, na condição podes escolher outra personagem qualquer dos Tio Patinhas.
Obrigado Sérgio Serra por sugerires que poderia ser interessante ensinar isto. Obrigado Andrew Becraft pela foto.
O Abapinho saúda-vos.