#2
|
|||
|
|||
Call transaction no me guarda mensaje de error
Hola Chisto,
1. para ir paso a paso visualizando la ejecución el modo debe ser igual a 'A'. 2. el call transaction que haces en el programa debería tener más o menos esta estructura: DATA: messtab LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE. DATA: L_MSTRING(480). REFRESH MESSTAB. CALL TRANSACTION TCODE USING BDCDATA MODE CTUMODE UPDATE CUPDATE MESSAGES INTO MESSTAB. IF SY-SUBRC NE 0. LOOP AT MESSTAB. SELECT SINGLE * FROM T100 WHERE SPRSL = MESSTAB-MSGSPRA AND ARBGB = MESSTAB-MSGID AND MSGNR = MESSTAB-MSGNR. IF SY-SUBRC = 0. L_MSTRING = T100-TEXT. IF L_MSTRING CS '&1'. REPLACE '&1' WITH MESSTAB-MSGV1 INTO L_MSTRING. REPLACE '&2' WITH MESSTAB-MSGV2 INTO L_MSTRING. REPLACE '&3' WITH MESSTAB-MSGV3 INTO L_MSTRING. REPLACE '&4' WITH MESSTAB-MSGV4 INTO L_MSTRING. ELSE. REPLACE '&' WITH MESSTAB-MSGV1 INTO L_MSTRING. REPLACE '&' WITH MESSTAB-MSGV2 INTO L_MSTRING. REPLACE '&' WITH MESSTAB-MSGV3 INTO L_MSTRING. REPLACE '&' WITH MESSTAB-MSGV4 INTO L_MSTRING. ENDIF. CONDENSE L_MSTRING. WRITE: / MESSTAB-MSGTYP, L_MSTRING(250). ELSE. WRITE: / MESSTAB. ENDIF. ENDLOOP. ENDIF. en la tabla interna MESSTAB debe registrarse todos los mensajes de error. Espero que lo enviado te ayude en algo. Saludos. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|