‎2009 Apr 24 1:54 PM
Hi friends
i have created a bdc program to upload vendor data
iam using session method
now i have to submit the bdc in bacg groud .
how can i do can any one tell me with sample code.
Regards
Priyanka
‎2009 Apr 24 2:05 PM
‎2009 Apr 24 2:06 PM
Hi,
This is the sample code
DATA: RUNTIME TYPE I. "Runtime
DATA: GROUP LIKE APQI-GROUPID, " Mappenname
BDCIMMED LIKE RFIPI-BDCIMMED, " nur BDC: sof. Abspielen
BDCSTRTDT LIKE TBTCJOB-SDLSTRTDT, "nur BDC: Startdatum
BDCSTRTTM LIKE TBTCJOB-SDLSTRTTM. "nur BDC: Startzeit
form mappe_abspielen_im_batch.
GET RUN TIME FIELD RUNTIME.
JOBNAME = 'RFEBFD00-FIEB'.
JOBNAME+14 = RUNTIME.
eak-point.
CALL FUNCTION 'JOB_OPEN'
EXPORTING
JOBNAME = JOBNAME
JOBGROUP = 'FIEB'
IMPORTING
JOBCOUNT = JOBCOUNT
EXCEPTIONS
CANT_CREATE_JOB = 01
INVALID_JOB_DATA = 02
JOBNAME_MISSING = 03.
IF SY-SUBRC NE 0.
MESSAGE E015 RAISING SESSION_NOT_PROCESSABLE.
ENDIF.
SUBMIT RSBDCSUB AND RETURN
USER SY-UNAME
VIA JOB JOBNAME NUMBER JOBCOUNT
with mappe = group
WITH MAPPE = BI-NAME
WITH VON = SY-DATUM
WITH BIS = SY-DATUM
WITH Z_VERARB = 'X'.
BDCSTRTDT = SY-DATUM.
BDCSTRTDT = SPACE.
BDCSTRTTM = SPACE.
BDCIMMED = 'X'.
bdcstrttm = runtime.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
JOBNAME = JOBNAME
JOBCOUNT = JOBCOUNT
STRTIMMED = BDCIMMED
SDLSTRTDT = BDCSTRTDT
SDLSTRTTM = BDCSTRTTM
EXCEPTIONS
CANT_START_IMMEDIATE = 01
JOBNAME_MISSING = 02
JOB_CLOSE_FAILED = 03
JOB_NOSTEPS = 04
JOB_NOTEX = 05
LOCK_FAILED = 06.
IF SY-SUBRC NE 0.
MESSAGE E015 RAISING SESSION_NOT_PROCESSABLE.
ENDIF.
CLEAR BDCIMMED.
BDCSTRTDT = SPACE.
BDCSTRTTM = SPACE.
OR
PERFORM OPEN_BDC_GROUP.
PERFORM CLOSE_BDC_GROUP.
PERFORM SUBMIT_JOB.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
GROUP = GROUP
USER = USER
USER = SY-UNAME
KEEP = KEEP
HOLDDATE = HOLDDATE
IMPORTING
QID = QID.
ENDFORM. " OPEN_BDC_GROUP
FORM CLOSE_BDC_GROUP.
CALL FUNCTION 'BDC_CLOSE_GROUP'.
ENDFORM. " CLOSE_BDC_GROUP
FORM BDC_TRANSACTION.
CALL FUNCTION 'BDC_INSERT'
EXPORTING TCODE = TCODE
TABLES DYNPROTAB = BDCDATA.
ENDFORM. " BDC_TRANSACTION
FORM SUBMIT_JOB.
Start BDC session in background
SUBMIT RSBDCSUB AND RETURN
USER USER
USER SY-UNAME
EXPORTING LIST TO MEMORY
WITH MAPPE = GROUP
WITH VON = SY-DATUM
WITH BIS = SY-DATUM.
ENDFORM. " SUBMIT_JOB
Regards
Krishna
Edited by: Krishna Gowrneni on Apr 24, 2009 6:45 PM
‎2009 Apr 24 5:08 PM
Hi Priyanka,
check this code it may be help full to u.........
REPORT ZBDCSMBG .
TABLES:LFA1.
DATA:BEGIN OF ITAB OCCURS 0,
LIFNR TYPE LIFNR,
NAME1 TYPE NAME1,
LAND1 TYPE LAND1,
END OF ITAB.
DATA:JTAB LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'C:/HYE/HI.TXT'
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB = ITAB.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLINT = SY-MANDT
GROUP = 'SESBG'
USER = SY-UNAME.
LOOP AT ITAB.
REFRESH JTAB.
PERFORM SUB USING 'ZVIF' '0100'.
PERFORM SUB1 USING:'LFA1-LIFNR' ITAB-LIFNR,
'LFA1-NAME1' ITAB-NAME1,
'LFA1-LAND1' ITAB-LAND1.
PERFORM SUB1 USING 'BDC_OKCODE' 'INSERT'.
PERFORM SUB USING 'ZVIF' '0100'.
PERFORM SUB1 USING 'BDC_OKCODE' 'EXIT'.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = 'YVTRANS'
TABLE
DYNPROTAB = JTAB.
ENDLOOP.
CALL FUNCTION 'BDC_CLOSE_GROUP'.
SUBMIT RSBDCSUB VIA SELECTION-SCREEN.
FORM SUB USING A B.
CLEAR JTAB.
JTAB-PROGRAM = A.
JTAB-DYNPRO = B.
JTAB-DYNBEGIN = 'X'.
APPEND JTAB.
ENDFORM.
FORM SUB1 USING C D.
CLEAR JTAB.
JTAB-FNAM = C.
JTAB-FVAL = D.
APPEND JTAB.
ENDFORM.
With Regard's
SHAIK.