andresf02
26/07/12, 17:25:03
Buenas tardes.
Tengo un programa que envia a memoria una tabla Interna. Este proceso lo esta haciendo bien ya que el sy-subrc queda en cero.
Lo que hace el programa es: Si es la primera ejecucion, graba la tabla interna en memoria bajo el ID 'MC'.
Si es la seguda ejecucion, graba la tabla interna en memoria bajo el ID 'MA'.
Si es la primera o segunda ejecucion, la define el campo 'opcion'.
data: opcion type n.
GET PARAMETER ID 'MO' field opcion.
if opcion ne 1.
it_data_mc[] = it_data_final2[].
EXPORT it_data_mc TO MEMORY ID 'MC'. "Datos ejecucion 1
opcion = 1. "Prepara el programa para 2da ejecucion
SET PARAMETER ID 'MO' FIELD opcion.
else.
it_data_ma[] = it_data_final2[].
EXPORT it_data_ma TO MEMORY ID 'MA'. "Datos ejecucion 1
opcion = 0. "Reestablece el ciclo de ejecuciones.
SET PARAMETER ID 'MO' FIELD opcion.
ENDIF.
Esta parte funciona perfecto. (aclaro que no se si es posible ver los datos que estan en memoria, pero como dije, luego del EXPORT, el sy-subrc queda en CERO)
El otro programa es que recibe los datos. (Un programa aparte, con otro nombre y otra transaccion independiente completamente del primero)
Declare la misma estructura que en el primer programa y las mismas tablas internas con los mismos nombres
data: it_data_mc type table of gs_data_final2 with HEADER LINE,
it_data_ma type table of gs_data_final2 with HEADER LINE.
data: opcion type n.
free: it_data_ma, it_data_mc.
import it_data_ma FROM MEMORY ID 'MA'.
import it_data_mc FROM MEMORY ID 'MC'.
get PARAMETER ID 'MO' FIELD opcion. "Este es solo de prueba y si lo lee bien
El problema es que luego de los IMPORT no recoge ningun dato, las tablas internas siguen [INITAL] y el sy-subrc queda = 4.
Por el contrario, el GET PARAMETER si es capaz de leer perfectamente el dato del ID 'MO' y lo guarda en la variable opcion.
Al hacer debuging al primer programa (EXPORT). en el menu PASAR A --> AMBITO DEL SISTEMA --> MEMORIA ABAP , puedo ver que el memoria estan los IDs 'MC' y 'MA'
Al hacer lo mismo para el segundo programa (IMPORT), en la memoria ABAP no aparecen los ID. Como si solo existieran en memoria para el programa 1.
Por favor ayuda urgente con este caso.
Mil gracias!
Tengo un programa que envia a memoria una tabla Interna. Este proceso lo esta haciendo bien ya que el sy-subrc queda en cero.
Lo que hace el programa es: Si es la primera ejecucion, graba la tabla interna en memoria bajo el ID 'MC'.
Si es la seguda ejecucion, graba la tabla interna en memoria bajo el ID 'MA'.
Si es la primera o segunda ejecucion, la define el campo 'opcion'.
data: opcion type n.
GET PARAMETER ID 'MO' field opcion.
if opcion ne 1.
it_data_mc[] = it_data_final2[].
EXPORT it_data_mc TO MEMORY ID 'MC'. "Datos ejecucion 1
opcion = 1. "Prepara el programa para 2da ejecucion
SET PARAMETER ID 'MO' FIELD opcion.
else.
it_data_ma[] = it_data_final2[].
EXPORT it_data_ma TO MEMORY ID 'MA'. "Datos ejecucion 1
opcion = 0. "Reestablece el ciclo de ejecuciones.
SET PARAMETER ID 'MO' FIELD opcion.
ENDIF.
Esta parte funciona perfecto. (aclaro que no se si es posible ver los datos que estan en memoria, pero como dije, luego del EXPORT, el sy-subrc queda en CERO)
El otro programa es que recibe los datos. (Un programa aparte, con otro nombre y otra transaccion independiente completamente del primero)
Declare la misma estructura que en el primer programa y las mismas tablas internas con los mismos nombres
data: it_data_mc type table of gs_data_final2 with HEADER LINE,
it_data_ma type table of gs_data_final2 with HEADER LINE.
data: opcion type n.
free: it_data_ma, it_data_mc.
import it_data_ma FROM MEMORY ID 'MA'.
import it_data_mc FROM MEMORY ID 'MC'.
get PARAMETER ID 'MO' FIELD opcion. "Este es solo de prueba y si lo lee bien
El problema es que luego de los IMPORT no recoge ningun dato, las tablas internas siguen [INITAL] y el sy-subrc queda = 4.
Por el contrario, el GET PARAMETER si es capaz de leer perfectamente el dato del ID 'MO' y lo guarda en la variable opcion.
Al hacer debuging al primer programa (EXPORT). en el menu PASAR A --> AMBITO DEL SISTEMA --> MEMORIA ABAP , puedo ver que el memoria estan los IDs 'MC' y 'MA'
Al hacer lo mismo para el segundo programa (IMPORT), en la memoria ABAP no aparecen los ID. Como si solo existieran en memoria para el programa 1.
Por favor ayuda urgente con este caso.
Mil gracias!