MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Coger variable de report desde el include (foro/showthread.php?t=12737)

natxojarto 18/04/08 12:24:25

Coger variable de report desde el include
 
Hola,

Tenemos un programa estandar que llama a un include que podemos modificar, hay alguna manera de recoger una variable de ese programa?

No podemos modificar el report, tendria que ser todo el codigo desde el include.

Gracias

vickxo 21/04/08 08:19:44

Hola...
 
Por lo que comentas creo q te refieres a una user - exit (UE) si es asi en la definicion de la UE viene q atributos puedes manipular. Es probable q la informacion que requieres venga en alguna de las UE peor tendrias que revisar cual es la mas acorde para el programa que estas manipulando. A veces hay mas de una UE por transaccion, consulta en la CMOD. Saludos!

natxojarto 22/04/08 14:25:06

Hola,

Desde el report q ejecutamos se llama a la user exit. En el report metemos el campo que queremos pero al llegar a la user exit ya no la podemos obtener. Hay alguna manera de obtenerla?

abapconsultoria 22/04/08 15:07:00

si, lo haces mediante field symbol.

Si mal no recuerdo es algo asi:


report YTEST_JM.

FIELD-SYMBOLS : <variable_externa> type any.
data : dato value 'A'.

ASSIGN ('(YTEST_JM)DATO') to <variable_externa>.

write <variable_externa>.


donde YTEST_JM es el nombre del programa del cual queres obtener la variable y DATO es el nombre de la variable que queres obtener.

Saludos.

Javier.

natxojarto 20/05/08 11:16:57

Muchas gracias por la ayuda pero todavia no lo he solucionado.
El problema es que esto solo funciona para el programa principal ,es decir, mi programa principal es RBDSEMAT que entra en el include(funcion) LMV01U06 y dentro de este se accede a la user exit.
He intentado poner en el programa (LMV01U06)DATO pero me pone que el valor no existe.

Alguien puede ayudarme o decirme como se hace lo mismo pero en vez de poner (nombre_programa)DATO, a poner (funcion)DATO?
O alguna otra forma, la que se os occurra.

Muchisimas gracias.

miguelonibus 20/05/08 11:23:53

Hola.

Prueba tomando el grupo de funciones de esa funcion y haciedo lo siguiente.
Supongamos que el grupo de funciones el ZGRUP pues pon (SAPLZGRUP)DATO.
Espero que funcione.

Un Saludo.

Miguel.

natxojarto 20/05/08 11:46:24

Tampoco funciona, la variable esta vacia, pero antes de entrar en la funcion esta rellena, es muy raro

natxojarto 22/05/08 06:41:13

El problema es que no se sabe desde que programa se va a llamar a esta user exit, entonces no puedo coger la variable desde el programa principal sino que tengo que cogerlo desde el include LMV01U06.

El problema es que quiero conseguir cual es el destino de este idoc, en este caso la variable que necesito es el receiving partner. En el include la variable que contiene este dato es RCVPRN y esta relleno, pero una vez que entra en la user exit al parecer lo borra y cuando entro a la user exit y pongo (SAPLMV01)RCVPRN, el dato está vacio.

Si pongo el programa principal desde el que estoy lanzando los idocs que seria el RBDSEMAT, sí que me coge el dato. (RBDSEMAT)logsys. Pero como no se si sólo van a lanazar con este programa no puedo poner esto, necesitaria la variable desde otro sitio.

Alguien puede ayudarme?

natxojarto 22/05/08 10:40:29

He econtrado la variable en la global stack en memoria, hay alguna forma de sacarla de ahi?

suapcram 22/05/08 10:54:19

Por lo que veo, no estás llamando a ningún include, si no no tendrías problemas para acceder a ninguna variable global definida en el programa.
Estas llamando, bueno el programa estándar está llamando a una función MASTERIDOC_CREATE_MATMAS, ninguno de los parámteros de la función tiene la variable que necesitas?

Ni niguna de las tablas que se le pasan a la función....


Husos Horarios son GMT. La hora en este momento es 04:45:45.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web