Recuperar Mensaje de Error o Warnning de una transacción estándar
Publicado por Francisco Javier (3 intervenciones) el 27/09/2018 01:17:51
Hola que tal, alguna idea de como poder recuperar el mensaje de un pop up que arroja la transacción MIGO; ya que actualmente la mando a llamar en modo batch-input y es necesario obtener los diferentes mensajes que esta arroja como si estuviera ejecutandose en modo gráfico.
Lo que tengo es lo siguiente :
****************** En este punto ya esta llena gt_bcdata *******************
***************** Aquí no hay problema, si lo hace bien la transacción el código si lo guardo sin problema ********
Este es un pop up que arroja la imagen en modo gráfico y ese es el mensaje que quisiera poder atrapar cuando se ejecuta en modo batch.

Espero me puedan ayudar.
Saludos.
Lo que tengo es lo siguiente :
1
2
3
4
5
6
DATA: gs_opciones TYPE ctu_params,
messtab LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE.
gt_bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.
gs_opciones-dismode = 'E'.
gs_opciones-updmode = 'S'.
****************** En este punto ya esta llena gt_bcdata *******************
1
2
CALL TRANSACTION 'MIGO' USING gt_bdcdata OPTIONS FROM gs_opciones
MESSAGES INTO messtab.
***************** Aquí no hay problema, si lo hace bien la transacción el código si lo guardo sin problema ********
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
READ TABLE messtab WITH KEY msgtyp = 'S' msgid = 'MIGO' msgnr = '012'.
IF sy-subrc EQ 0.
* generó documento
gv_msg = messtab-msgv1.
gwa_msg-mensaje = gv_msg.
APPEND gwa_msg TO gti_msg.
ELSE.
* no generó documento y no puedo obtener el mensaje por el cual no se pudo generar el documento.
LOOP AT messtab.
CALL FUNCTION 'MESSAGE_TEXT_BUILD'
EXPORTING
msgid = messtab-msgid
msgnr = messtab-msgnr
msgv1 = messtab-msgv1
msgv2 = messtab-msgv2
msgv3 = messtab-msgv3
msgv4 = messtab-msgv4
IMPORTING
message_text_output = gv_msg.
ENDLOOP.
gwa_msg-mensaje = gv_msg.
APPEND gwa_msg TO gti_msg.
Este es un pop up que arroja la imagen en modo gráfico y ese es el mensaje que quisiera poder atrapar cuando se ejecuta en modo batch.
Espero me puedan ayudar.
Saludos.
Valora esta pregunta


0