Académique Documents
Professionnel Documents
Culture Documents
I want to
write a
function
Module
which will
include a
bdc
code ,,,
how i
should
write
..please
guide in
steps. i
have tried
but its not
giving data
to bdc
,though
data is
coming in
internal
table.
please
help.
regards
shekhar
Rajasekhar
Dina...
Posts: 1,416
Registered: 11/11/05
Forum Points: 1,528 Top of Form
Regards,
Rajasekhar
***INCLUDE ZBDCRECX1.
*SELECTION-SCREEN SKIP.
PARAMETERS: E_HDATE LIKE SY-DATUM NO-DISPLAY.
----------------------------------------------------------------------
data definition
----------------------------------------------------------------------
Batchinputdata of single transaction
DATA: E_GROUP_OPENED.
message texts
TABLES: T100.
----------------------------------------------------------------------
at selection screen *
----------------------------------------------------------------------
AT SELECTION-SCREEN.
group and user must be filled for create session
----------------------------------------------------------------------
open dataset *
----------------------------------------------------------------------
FORM OPEN_DATASET USING P_DATASET.
OPEN DATASET P_DATASET IN TEXT MODE.
IF SY-SUBRC 0.
WRITE: / TEXT-E00, SY-SUBRC.
STOP.
ENDIF.
ENDFORM.
----------------------------------------------------------------------
close dataset *
----------------------------------------------------------------------
FORM CLOSE_DATASET USING P_DATASET.
CLOSE DATASET P_DATASET.
ENDFORM.
----------------------------------------------------------------------
create batchinput session *
(not for call transaction using...) *
----------------------------------------------------------------------
FORM OPEN_GROUP.
IF SESSION = 'X'.
SKIP.
WRITE: /(20) 'Create group'(I01), GROUP.
SKIP.
open batchinput group
----------------------------------------------------------------------
end batchinput session *
(call transaction using...: error session) *
----------------------------------------------------------------------
FORM CLOSE_GROUP.
IF SESSION = 'X'.
close batchinput group
----------------------------------------------------------------------
Start new transaction according to parameters *
----------------------------------------------------------------------
FORM BDC_TRANSACTION USING TCODE.
DATA: L_MSTRING(480).
DATA: L_SUBRC LIKE SY-SUBRC.
batch input session
IF SESSION = 'X'.
CALL FUNCTION 'BDC_INSERT'
EXPORTING TCODE = TCODE
TABLES DYNPROTAB = BDCDATA.
IF SMALLLOG 'X'.
WRITE: / 'BDC_INSERT'(I03),
TCODE,
'returncode:'(I05),
SY-SUBRC,
'RECORD:',
SY-INDEX.
ENDIF.
call transaction using
ELSE.
REFRESH MESSTAB.
CALL TRANSACTION TCODE USING BDCDATA
MODE CTUMODE
UPDATE CUPDATE
MESSAGES INTO MESSTAB.
L_SUBRC = SY-SUBRC.
IF SMALLLOG 'X'.
WRITE: / 'CALL_TRANSACTION',
TCODE,
'returncode:'(I05),
L_SUBRC,
'RECORD:',
SY-INDEX.
IF SY-SUBRC = 0.
FORMAT COLOR OFF.
WRITE:/ 'Successfully Process ', MESSTAB, RECORD.
ELSE.
FORMAT COLOR COL_NEGATIVE.
WRITE:/ 'Failed Process ', MESSTAB, RECORD.
ENDIF.
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.
SKIP.
ENDIF.
o Erzeugen fehlermappe
************************************************
----------------------------------------------------------------------
Start new screen *
----------------------------------------------------------------------
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
CLEAR BDCDATA.
BDCDATA-PROGRAM = PROGRAM.
BDCDATA-DYNPRO = DYNPRO.
BDCDATA-DYNBEGIN = 'X'.
APPEND BDCDATA.
ENDFORM.
----------------------------------------------------------------------
Insert field *
----------------------------------------------------------------------
FORM BDC_FIELD USING FNAM FVAL.
IF FVAL NODATA.
CLEAR BDCDATA.
BDCDATA-FNAM = FNAM.
BDCDATA-FVAL = FVAL.
APPEND BDCDATA.
ENDIF.
ENDFORM.
thnaks
Vana