#1
|
|||
|
|||
Problemas Con Submit
Muy buenas, estoy haciendo un programa y no se como puedo hacer una cosilla. El tema es que tengo un report que dentro hace un submit a otro programa y luego tiene que volver al primer programa para seguir. El tema es que hace bien el submit pero ejecuta ese programa y visualiza el resultado por pantalla, teniendo que dar al boton de atras para que vuelva al primer programa. Mi pregunta es, hay alguna forma que al ejecutar el submit realice las operaciones del otro programa y sin visulizarlo por pantalla vuelva al primer programa?
Muchas gracias y espero no liar mucho. Un saludo. El submit es: Submit PPSFCACT WITH FLG_TERM = '' with TESTRUN eq '' with flg_cost EQ 'X' with AUFNR-LOW = i_afko-aufnr and return. |
#2
|
|||
|
|||
q tal, pero necesitas la informacion del prgrama que llamas..
tu esquema es el siguiente 1.. zprincipal hace submit zpsencundario. entonces. 2..a zprincipal has un export de una varible x ejemplo EXPORT PROC TO MEMORY ID 'PROC'. cuando llame a zpsecundario. haces un import de la variable. para saber si es llamado por zprincipal.. si es asi.. entonces que no salga nada en el reporte.. y las tablas que displaya guardalo en memoria. asi que cuando regrese a tu programa principal ya tendras la informacion del programa secundario. saludos |
#3
|
|||
|
|||
Te falta el return
Hola intenta lo siguiente:
SUBMIT zreport EXPORTING LIST TO MEMORY and return . Con esta intruccion mandas a memoria la lista de resultados que te entrega la transaccion a la cual le haces el submit. Ahora bien para recuperar la info usa la funcion 'LIST_FROM_MEMORY' , cheka este codigo ejemplo: DATA BEGIN OF itab_list OCCURS 0. INCLUDE STRUCTURE abaplist. DATA END OF itab_list. DATA: BEGIN OF vlist OCCURS 0, filler1(01) TYPE c, field1(06) TYPE c, filler(08) TYPE c, field2(10) TYPE c, filler3(01) TYPE c, field3(10) TYPE c, filler4(01) TYPE c, field4(3) TYPE c, filler5(02) TYPE c, field5(15) TYPE c, filler6(02) TYPE c, field6(30) TYPE c, filler7(43) TYPE c, field7(10) TYPE c, END OF vlist. SUBMIT zreport EXPORTING LIST TO MEMORY. CALL FUNCTION 'LIST_FROM_MEMORY' TABLES listobject = itab_list EXCEPTIONS not_found = 4 OTHERS = 8. CALL FUNCTION 'LIST_TO_ASCI' EXPORTING list_index = -1 TABLES listasci = vlist listobject = itab_list EXCEPTIONS empty_list = 1 list_index_invalid = 2 OTHERS = 3. IF sy-subrc NE '0'. WRITE:/ 'LIST_TO_ASCI error !! ', sy-subrc. ENDIF. Mira a decir verdad no lo he usado pero en teoria debe de funcionar. Saludos! Por otro lado, debuggea el programa al cual le haces el submit capaz que en ese programa la informacion que necesitas la puedes obtener por una funcion. Úlima edición por vickxo fecha: 19/02/08 a las 11:57:27. |
#4
|
||||
|
||||
ademas
Tambien la variable PROC que estas exportando debes crearla en el programa que recibe o importa la variable con el mismo nombre y el mismo tipo!
__________________
Atte. Marcos Carrasco... |
#5
|
|||
|
|||
Ahorrate el submit
Hola, mira hice un debugg sobre PPSFCACT y vi que con esta funcione puedes obtener la informacion que haces con la transaccion obvio sin tantas validaciones y sin que se vea super guay pero mete un break point sobre:
CALL FUNCTION 'RS_REFRESH_FROM_SELECTOPTIONS' EXPORTING curr_report = sy-cprog TABLES selection_table = t_params. Revisala y estoy casi seguro que con ellas el submit no lo tendras que usar. Úlima edición por vickxo fecha: 19/02/08 a las 12:15:32. |
#6
|
|||
|
|||
Buenas hardrake,
Tengo el mismo inconveniente, pudiste solucionarlo de alguna manera? Saludos y muchas gracias! |
Herramientas | Buscar en Tema |
Desplegado | |
|
|