PDA

Ver la Versión Completa : SUBMIT controlar los mensaje de un Report Standar Funcion RFC


ehrman
19/01/15, 14:29:33
Cuando estaba construyendo una funcion RFC se me presentoron probemas con los mensaje al utilizar el llamado por Submit. Lo solucione de la siguiente manera:

"Funcion para guardar los parametros de impresion:

CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING
NO_DIALOG = 'X' "No muestre dynpro de impresion
REPORT = 'RFIDYYWT' "Report que se llama en el Submit
IMPORTING
VALID = W_VALID
OUT_ARCHIVE_PARAMETERS = A_PARAMS
OUT_PARAMETERS = E_PARAMS.


"Se crea Job de Fondo evitando mensaje que generen excepciones en la funcion RFC

DATA: LT_TBTCJOB LIKE TBTCJOB-JOBCOUNT.

CALL FUNCTION 'JOB_OPEN'
EXPORTING
JOBNAME = 'RFIDYYWT' "Nombre Del Job.
IMPORTING
JOBCOUNT = LT_TBTCJOB
EXCEPTIONS
CANT_CREATE_JOB = 1
INVALID_JOB_DATA = 2
JOBNAME_MISSING = 3
OTHERS = 4.

IF SY-SUBRC <> 0.
MESSAGE E208(00) WITH 'Error creando Job'.
ENDIF.

"Se hace el llamado del Report
SUBMIT RFIDYYWT "VIA SELECTION-SCREEN "Muestra la dynpro
TO SAP-SPOOL "optional"
SPOOL PARAMETERS E_PARAMS "optional"
ARCHIVE PARAMETERS A_PARAMS "optional"
WITHOUT SPOOL DYNPRO "optional (hides the spool pop-up)"
VIA JOB 'RFIDYYWT' NUMBER LT_TBTCJOB
AND RETURN
WITH P_OUTG EQ P_OUTG. "Parametro particulares

IF SY-SUBRC <> 0.
MESSAGE E208(00) WITH 'Error programando Job'.
ENDIF.

"Se cierra el Job creado
DATA: XJOBWASRELEASED LIKE BTCH0000-CHAR1.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
JOBCOUNT = LT_TBTCJOB
JOBNAME = 'RFIDYYWT'
STRTIMMED = 'X'
IMPORTING
JOB_WAS_RELEASED = XJOBWASRELEASED
EXCEPTIONS
CANT_START_IMMEDIATE = 1
INVALID_STARTDATE = 2
JOBNAME_MISSING = 3
JOB_CLOSE_FAILED = 4
JOB_NOSTEPS = 5
JOB_NOTEX = 6
LOCK_FAILED = 7
OTHERS = 8.

IF SY-SUBRC <> 0.
MESSAGE E208(00) WITH 'Error cerrando Job'.
ELSE.
MESSAGE S368(00) WITH 'Job creado:' LT_TBTCJOB.
ENDIF.

ENDIF.