Você está na página 1de 2

* O programa seguinte pesquisa a tabela que guarda os nomes dos pases e mostra na tela os cdigos e nomes dos pases

em portugus. * A tabela T_T005T guardar os nomes dos pases DATA: BEGIN OF T_T005T occurs 0, LAND1 TYPE T005T-LAND1, LANDX TYPE T005T-LANDX, END OF T_T005T. * Retira da base de dados os nomes dos pases em portugus e os insere na tabela int erna T_T005T SELECT LAND1 LANDX FROM T005T INTO TABLE T_T005T WHERE SPRAS = 'P'. * Ordena a tabela interna T_T005T pelo campo LAND1. SORT T_T005T BY LAND1. * Mostra na tela os cdigos e nomes dos pases. LOOP AT T_T005T. WRITE: /05 T_T005T-LAND1, 09 T_T005T-LANDX. ENDLOOP. * Verifica se voltou resultado no SELECT IF sy-subrc IS INITIAL. * Mensagem de sucesso MESSAGE s001. ELSE. * Mensagem de Erro MESSAGE e002. ENDIF. [editar]Tipos * A tabela T_T005T guardar os nomes dos pases, com uma rea adicional de transferncia denominada "Header Line" DATA: BEGIN OF T_T005T occurs 0, LAND1 TYPE T005T-LAND1, LANDX TYPE T005T-LANDX, END OF T_T005T. Alternativa ao comando anterior: usar "Header Line" j obsoleto, hoje prefere-se o seguinte processo: cria-se um tipo e, a partir do tipo, cria-se uma WORK-AREA e uma tabela interna EX: * Tipo Y_T005T Types: BEGIN OF Y_T005T, LAND1 TYPE T005T-LAND1, LANDX TYPE T005T-LANDX, END OF Y_T005T. * Work-area e Tabela interna Data: ST_T005T type Y_t005T, "Header Line (TL_T005T) TL_T005T Type table of Y_t005t. "Tabela Interna * Retira da base de dados os nomes dos pases em portugus e os insere na tabela int erna T_T005T SELECT LAND1 LANDX FROM T005T INTO TABLE TL_T005T WHERE SPRAS = 'P'. * Ordena a tabela interna T_T005T pelo campo LAND1. SORT T_T005T BY LAND1. * Mostra na tela os cdigos e nomes dos pases. LOOP AT T_T005T INTO ST_T005T. WRITE: /05 ST_T005T-LAND1, 09 ST_T005T-LANDX.

ENDLOOP. * Verifica se voltou resultado no SELECT IF sy-subrc IS INITIAL. * Mensagem de sucesso MESSAGE s001. "Sucesso ELSE.

Você também pode gostar