MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Submit (foro/showthread.php?t=46578)

tate 10/11/11 08:51:13

Submit
 
Hola.

Tengo un submit a un programa z.

SUBMIT zsite_envio_pi
WITH p_acro EQ p_w_envio_acronimo
WITH p_fich EQ p_w_envio_filename
AND RETURN.

Como podria saber que el programa a ido bien a traves de una variable que hay en el programa al que llama?.

Vamos algo que el submit me informe mediante un parametro export como en los includes.

Un saludo y gracias.

jtristan 10/11/11 09:11:31

Podrías pasar una variable en memoria desde el programa que llamas y recogerla después del submit.

Un saludo.

tate 10/11/11 11:54:39

Y como lo podria hacer.
Con import / export??

Nunca lo he usado, lo digo por si me podrias decir mas o menos como hacerlo.

vanesamacri 10/11/11 12:44:49

Una técnica para poder hacer debug en los programas a los cuales se está haciendo submit es incluir un loop infinito dentro de su código (tomar como ejemplo, el código del reporte estándar BTCLOOP) y ejecutar de fondo el programa lanzador.

Desde la transacción SM37, seleccionar el job e ir al modo debug. El debug arrancará desde el loop infinito, momento en el cual, se deberá cambiar la condición para que salga de dicho loop. De ahí en más, continuar debugueando el reporte normalmente. De esa manera, se puede analizar el comportamiento de las variables a través de la lógica del programa al cual se está llamando.

Espero haberme expresado con suficiente claridad.

jtristan 10/11/11 13:08:17

Sería algo así.

export (variable) to memory id 'xxx'.
import (variable) from memory id 'XXX'.

En el id eres tú el que pones el id que quieres. No he trabajado mucho con la memoria, pero si que he visto en los casos en que les he usado, que además de tener el mismo id, las variables tienen que llamarse igual. No sé si esto es por algo que hago mal o tiene que ser así por algún motivo.

un saludo.

jtristan 10/11/11 13:10:40

Hola vanesamacri:

además de poner controlar el loop infinito por la sm37 como si fuese un trabajo de fondo, también puedes mirarlo por la sm50. Te posiciones en el registro adecuado y vas a programa/modo ->programa -> debugging.
Pero tratándose de un programa Z nuestro, no creo que haya problemas por poner un break-point si lo que queremos es debuguearle.

Un saludo.

vanesamacri 10/11/11 13:48:21

@jtristan

No sé qué versión de SAP estará usando tate, pero en la que tenemos nosotros, cuando estamos debugueando código y se hace un llamado a otro mediante un submit, el debug saltea el código del programa al cual se está submiteando. Por ello es que sugerí incluir el loop y debuguearlo de fondo.

tate 10/11/11 13:52:30

Muchas gracias por las respuestas.

Lo de debugear en fondo ya lo he hecho mas veces, pero el caso es lo que quiero es traer una variable de programa al cual llamo, y con el import / export lo soluciono.


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

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