PDA

Ver la Versión Completa : Como Igualar Dos Tablas Internas


acha3318
11/06/10, 19:26:23
Hola a todos,

Estoy en una BADI de pedidos, y tengo la siguiente situción:

Como hago para copiar los datos de una tabla interna que no tienen la misma estructura en campos, ver como está la asignación:

DATA tb_ekko TYPE STANDARD TABLE OF ekko.
DATA gt_ekko TYPE mepoheader.

* Asignar campos de la cabecera del Pedido de Compra
gt_ekko = im_header->get_data( ).

* Asignar estos campo a la otra tabla interna del tipo EKKO
tb_ekko = gt_ekko.

¿Como hago para asignar copiar los datos del gt_ekko a la tabla interna tb_ekko.

Gracias de antemano por su ayuda.

Mauricio Hidalgo
11/06/10, 19:45:38
Primero aclarar que tb_ekko es tabla y gt_ekko es una estructura. Luego, no puedes asignar directamente. Para ello defínele una linea de cabecera a la tabla con WITH HEADER LINE o bien create una nueva variable del tipo ekko. supongamos DATA wa_ekko type ekko.

con linea de cabecera:
move-corresponding gt_ekko to tb_ekko.
append tb_ekko.

Sin linea de cabecera y area de trabajo.
move-corresponding gt_ekko to wa_ekko.
append wa_ekko to tb_ekko.


saludos

PS:Si ambas tablas fueran de identica estructura, la copia de datos entre ellas se haría con: TB_EKKO[] = GT_EKKO[].

acha3318
12/06/10, 20:13:07
Gracias Mauricio, Funcionó perfecto, con tu respuesta recordé que alguna vez ya lo habia usado, pero fué muy oportuna y exacta tu respuesta, gracias de nuevo, mi BADI funcionó perfecta.


Primero aclarar que tb_ekko es tabla y gt_ekko es una estructura. Luego, no puedes asignar directamente. Para ello defínele una linea de cabecera a la tabla con WITH HEADER LINE o bien create una nueva variable del tipo ekko. supongamos DATA wa_ekko type ekko.

con linea de cabecera:
move-corresponding gt_ekko to tb_ekko.
append tb_ekko.

Sin linea de cabecera y area de trabajo.
move-corresponding gt_ekko to wa_ekko.
append wa_ekko to tb_ekko.


saludos

PS:Si ambas tablas fueran de identica estructura, la copia de datos entre ellas se haría con: TB_EKKO[] = GT_EKKO[].