Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

BDCDATA Table

Former Member
0 Kudos

Hi Everybody,

how to populate BDCDATA table without using the form .

FORM DYNPRO_PROCESS2 USING DYNBEGIN FLD1 FLD2. "#EC *

IF DYNBEGIN = 'X' .

CLEAR WA_BDCDATA .

MOVE: DYNBEGIN TO WA_BDCDATA-DYNBEGIN ,

FLD1 TO WA_BDCDATA-PROGRAM ,

FLD2 TO WA_BDCDATA-DYNPRO.

APPEND WA_BDCDATA TO TB_BDCDATA.

ELSE.

CLEAR WA_BDCDATA .

MOVE: FLD1 TO WA_BDCDATA-FNAM ,

FLD2 TO WA_BDCDATA-FVAL .

APPEND WA_BDCDATA TO TB_BDCDATA.

ENDIF.

ENDFORM. "DYNPRO_PROCESS

Please help.

Thank you.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Check this example:

REPORT ZMUTVD01 .

tables: RF02D,ADDR1_DATA,KNVV,KNVI,KNA1.

DATA ITAB1 LIKE KNVI OCCURS 10 WITH HEADER LINE.

data : bdcitab like bdcdata occurs 99 with header line.

data : begin of wa,

ktokd like RF02D-KTOKD,

vkorg like RF02D-VKORG,

vtweg like RF02D-VTWEG,

spart like RF02D-SPART,

LAND1 LIKE KNA1-LAND1,

SPRAS LIKE KNA1-SPRAS,

vsbed like KNVV-VSBED,

taxkd like KNVI-TAXKD,

end of wa.

data : itab like wa occurs 12 with header line .

CALL FUNCTION 'UPLOAD'

EXPORTING

FILENAME = 'C:/VD01.TXT'

FILETYPE = 'ASC'

TABLES

DATA_TAB = ITAB

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

                          • first screen *************

loop at itab.

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '107'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

*********FIELDS****

BDCITAB-FNAM = 'RF02D-KTOKD'.

BDCITAB-FVAL = ITAB-KTOKD.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'RF02D-VKORG'.

BDCITAB-FVAL = ITAB-VKORG.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'RF02D-VTWEG'.

BDCITAB-FVAL = ITAB-VTWEG.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'RF02D-SPART'.

BDCITAB-FVAL = ITAB-SPART.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

*************2ND **********

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '110'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'KNA1-LAND1'.

BDCITAB-FVAL = ITAB-LAND1.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'KNA1-SPRAS'.

BDCITAB-FVAL = ITAB-SPRAS.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

********3rd *****************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '120'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

***********4thD **********

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '125'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

***5TH *************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '340'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

*****6TH*******************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '370'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

************7TH *********************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '360'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

******8TH **************************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '310'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

************9TH ***********************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '315'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'KNVV-VSBED'.

BDCITAB-FVAL = ITAB-VSBED.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

*************10TH ***************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '320'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

***************11TH ******************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '1350'.

bdcitab-dynbegin = 'X'.

APPEND BDCITAB.

CLEAR BDCITAB.

*BDCITAB-FNAM = 'KNVI-TAXKD'.

*BDCITAB-FVAL = '0'.

*APPEND BDCITAB.

*CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

*BDCITAB-FNAM = 'BDC_OKCODE'.

*BDCITAB-FVAL = 'ENTER'.

*APPEND BDCITAB.

*CLEAR BDCITAB.

*************11TH*************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '324'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

CALL TRANSACTION 'VD01' USING BDCITAB MODE 'A'.

ENDLOOP.

2 REPLIES 2

former_member181962
Active Contributor
0 Kudos

Paste the code inside the form -endform in place of the perform DYNPRO_PROCESS2 statement.

Regards,

ravi

Former Member
0 Kudos

Check this example:

REPORT ZMUTVD01 .

tables: RF02D,ADDR1_DATA,KNVV,KNVI,KNA1.

DATA ITAB1 LIKE KNVI OCCURS 10 WITH HEADER LINE.

data : bdcitab like bdcdata occurs 99 with header line.

data : begin of wa,

ktokd like RF02D-KTOKD,

vkorg like RF02D-VKORG,

vtweg like RF02D-VTWEG,

spart like RF02D-SPART,

LAND1 LIKE KNA1-LAND1,

SPRAS LIKE KNA1-SPRAS,

vsbed like KNVV-VSBED,

taxkd like KNVI-TAXKD,

end of wa.

data : itab like wa occurs 12 with header line .

CALL FUNCTION 'UPLOAD'

EXPORTING

FILENAME = 'C:/VD01.TXT'

FILETYPE = 'ASC'

TABLES

DATA_TAB = ITAB

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

                          • first screen *************

loop at itab.

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '107'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

*********FIELDS****

BDCITAB-FNAM = 'RF02D-KTOKD'.

BDCITAB-FVAL = ITAB-KTOKD.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'RF02D-VKORG'.

BDCITAB-FVAL = ITAB-VKORG.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'RF02D-VTWEG'.

BDCITAB-FVAL = ITAB-VTWEG.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'RF02D-SPART'.

BDCITAB-FVAL = ITAB-SPART.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

*************2ND **********

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '110'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'KNA1-LAND1'.

BDCITAB-FVAL = ITAB-LAND1.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'KNA1-SPRAS'.

BDCITAB-FVAL = ITAB-SPRAS.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

********3rd *****************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '120'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

***********4thD **********

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '125'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

***5TH *************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '340'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

*****6TH*******************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '370'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

************7TH *********************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '360'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

******8TH **************************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '310'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

************9TH ***********************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '315'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'KNVV-VSBED'.

BDCITAB-FVAL = ITAB-VSBED.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

*************10TH ***************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '320'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

***************11TH ******************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '1350'.

bdcitab-dynbegin = 'X'.

APPEND BDCITAB.

CLEAR BDCITAB.

*BDCITAB-FNAM = 'KNVI-TAXKD'.

*BDCITAB-FVAL = '0'.

*APPEND BDCITAB.

*CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

*BDCITAB-FNAM = 'BDC_OKCODE'.

*BDCITAB-FVAL = 'ENTER'.

*APPEND BDCITAB.

*CLEAR BDCITAB.

*************11TH*************

bdcitab-program = 'SAPMF02D'.

bdcitab-dynpro = '324'.

bdcitab-dynbegin ='X'.

APPEND BDCITAB.

CLEAR BDCITAB.

BDCITAB-FNAM = 'BDC_OKCODE'.

BDCITAB-FVAL = 'ENTER'.

APPEND BDCITAB.

CLEAR BDCITAB.

CALL TRANSACTION 'VD01' USING BDCITAB MODE 'A'.

ENDLOOP.