Ver Mensaje Individual
  #5  
Viejo 13/04/07, 15:08:00
Avatar de crounly
crounly crounly is offline
Senior Member
 
Fecha de Ingreso: nov 2006
Localización: Zaragoza, Espaņa
Mensajes: 227
Aqui va otro sin objetos, espero que te sirva


DATA: pv_tabla TYPE dd02l-tabname,
generic_table TYPE REF TO data,
generic_line TYPE REF TO data.

FIELD-SYMBOLS: <table> TYPE ANY TABLE,
<wa> TYPE ANY,
<field> TYPE ANY.

*& en pv_tabla almacenamos el nombre de la tabla del diccionario
pv_tabla = 'spfli'.

*& Referenciamos la estructura de la tabla
CREATE DATA generic_table TYPE STANDARD TABLE OF (pv_tabla).
ASSIGN generic_table->* TO <table>.

*& Referenciamos la cabecera de la tabla
CREATE DATA generic_line TYPE (pv_tabla).
ASSIGN generic_line->* TO <wa>.

*& Rellenamos la tabla interna creada dinamicamente
SELECT * INTO CORRESPONDING FIELDS OF TABLE <table> FROM (pv_tabla).

*& Recorremos la tabla creada dinamicamente
LOOP AT <table> INTO <wa>.
DO.

*& Como no conocemos los campos de la tabla hasta la ejecucion
*& assignamos a <field> un campo de la estructura en cada bucle
*& cuando sy-index supere el nš de campos de la estructura
*& sy-subrc = 4 con lo que sale del bucle
ASSIGN COMPONENT sy-index OF STRUCTURE <wa> TO <field>.
IF sy-subrc <> 0.
EXIT.
ENDIF.
WRITE <field>.
ENDDO.
NEW-LINE.
ENDLOOP.
Responder Con Cita