MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 18/04/08, 12:24:25
natxojarto natxojarto is offline
Junior Member
 
Fecha de Ingreso: oct 2007
Mensajes: 19
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
Responder Con Cita
  #2  
Viejo 21/04/08, 08:19:44
vickxo vickxo is offline
Senior Member
 
Fecha de Ingreso: nov 2006
Localización: Madrid, España
Mensajes: 118
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!
__________________
el tema esta en hacer la pregunta correcta...
Responder Con Cita
  #3  
Viejo 22/04/08, 14:25:06
natxojarto natxojarto is offline
Junior Member
 
Fecha de Ingreso: oct 2007
Mensajes: 19
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?
Responder Con Cita
  #4  
Viejo 22/04/08, 15:07:00
abapconsultoria abapconsultoria is offline
Senior Member
 
Fecha de Ingreso: ene 2008
Mensajes: 101
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.
__________________




Lo importante no es saber sino saber quien es el que sabe
Responder Con Cita
  #5  
Viejo 20/05/08, 11:16:57
natxojarto natxojarto is offline
Junior Member
 
Fecha de Ingreso: oct 2007
Mensajes: 19
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.
Responder Con Cita
  #6  
Viejo 20/05/08, 11:23:53
miguelonibus miguelonibus is offline
Junior Member
 
Fecha de Ingreso: mar 2007
Mensajes: 13
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.
Responder Con Cita
  #7  
Viejo 20/05/08, 11:46:24
natxojarto natxojarto is offline
Junior Member
 
Fecha de Ingreso: oct 2007
Mensajes: 19
Tampoco funciona, la variable esta vacia, pero antes de entrar en la funcion esta rellena, es muy raro
Responder Con Cita
  #8  
Viejo 22/05/08, 06:41:13
natxojarto natxojarto is offline
Junior Member
 
Fecha de Ingreso: oct 2007
Mensajes: 19
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?
Responder Con Cita
  #9  
Viejo 22/05/08, 10:40:29
natxojarto natxojarto is offline
Junior Member
 
Fecha de Ingreso: oct 2007
Mensajes: 19
He econtrado la variable en la global stack en memoria, hay alguna forma de sacarla de ahi?
Responder Con Cita
  #10  
Viejo 22/05/08, 10:54:19
Avatar de suapcram
suapcram suapcram is offline
Junior Member
 
Fecha de Ingreso: abr 2006
Mensajes: 13
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....
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 09:09:50.


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