Application Development and Automation 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: 
Read only

bdc program

Former Member
0 Likes
697

hi all,

can anyone please send me a bdc program for handling the table controls.

please attach the flat file also.

thanks in advance and i will surely give ten points for the requrement.

sultan.s

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
650

Hi,

Check this sample code.

report Z_XK01_REC_PRG_MUL_CTRL_FIELDS

no standard page heading line-size 255.

TABLES: RF02K,LFA1,LFBK,LFB1,LFM1.

DATA: BEGIN OF IT_ITAB OCCURS 0,

LIFNR LIKE RF02K-LIFNR,

BUKRS LIKE RF02K-BUKRS,

EKORG LIKE RF02K-EKORG,

KTOKK LIKE RF02K-KTOKK,

NAME1 LIKE LFA1-NAME1,

SORTL LIKE LFA1-SORTL,

LAND1 LIKE LFA1-LAND1,

BANKS(6) TYPE C,

BANKL(17) TYPE C,

BANKN(19) TYPE C,

AKONT LIKE LFB1-AKONT,

FDGRV LIKE LFB1-FDGRV,

WAERS LIKE LFM1-WAERS,

END OF IT_ITAB.

DATA: BEGIN OF BANKS OCCURS 0,

BANKS LIKE LFBK-BANKS,

END OF BANKS.

DATA: BEGIN OF BANKL OCCURS 0,

BANKL LIKE LFBK-BANKL,

END OF BANKL.

DATA: BEGIN OF BANKN OCCURS 0,

BANKN LIKE LFBK-BANKN,

END OF BANKN.

DATA : FLD(20) TYPE C,

CNT(2) TYPE N.

include bdcrecx1.

start-of-selection.

*CALL FUNCTION 'WS_UPLOAD'

  • EXPORTING

    • CODEPAGE = ' '

  • FILENAME = 'Z:/SS/MUL_REC_TAB.TXT'

  • FILETYPE = 'DAT'

    • HEADLEN = ' '

    • LINE_EXIT = ' '

    • TRUNCLEN = ' '

    • USER_FORM = ' '

    • USER_PROG = ' '

    • DAT_D_FORMAT = ' '

    • IMPORTING

    • FILELENGTH = FILELENGTH

  • TABLES

  • DATA_TAB = it_itab

  • EXCEPTIONS

  • CONVERSION_ERROR = 1

  • FILE_OPEN_ERROR = 2

  • FILE_READ_ERROR = 3

  • INVALID_TYPE = 4

  • NO_BATCH = 5

  • UNKNOWN_ERROR = 6

  • INVALID_TABLE_WIDTH = 7

  • GUI_REFUSE_FILETRANSFER = 8

  • CUSTOMER_ERROR = 9

  • NO_AUTHORITY = 10

  • OTHERS = 11

  • .

*IF SY-SUBRC <> 0.

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

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

*ENDIF.

*

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

FILENAME = 'Z:/SS/MUL_REC_TAB.TXT'

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

  • HEADER_LENGTH = 0

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • CODEPAGE = ' '

  • IGNORE_CERR = ABAP_TRUE

  • REPLACEMENT = '#'

  • CHECK_BOM = ' '

  • VIRUS_SCAN_PROFILE = VIRUS_SCAN_PROFILE

  • NO_AUTH_CHECK = ' '

  • IMPORTING

  • FILELENGTH = FILELENGTH

  • HEADER = HEADER

TABLES

DATA_TAB = it_itab

EXCEPTIONS

FILE_OPEN_ERROR = 1

FILE_READ_ERROR = 2

NO_BATCH = 3

GUI_REFUSE_FILETRANSFER = 4

INVALID_TYPE = 5

NO_AUTHORITY = 6

UNKNOWN_ERROR = 7

BAD_DATA_FORMAT = 8

HEADER_NOT_ALLOWED = 9

SEPARATOR_NOT_ALLOWED = 10

HEADER_TOO_LONG = 11

UNKNOWN_DP_ERROR = 12

ACCESS_DENIED = 13

DP_OUT_OF_MEMORY = 14

DISK_FULL = 15

DP_TIMEOUT = 16

OTHERS = 17

.

IF SY-SUBRC <> 0.

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

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

ENDIF.

perform open_group.

LOOP AT IT_ITAB.

REFRESH BDCDATA.

REFRESH: BANKS,BANKL,BANKN.

SPLIT IT_ITAB-BANKS AT ',' INTO TABLE BANKS.

SPLIT IT_ITAB-BANKL AT ',' INTO TABLE BANKL.

SPLIT IT_ITAB-BANKN AT ',' INTO TABLE BANKN.

perform bdc_dynpro using 'SAPMF02K' '0100'.

perform bdc_field using 'BDC_CURSOR'

'RF02K-KTOKK'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'RF02K-LIFNR'

it_itab-lifnr.

perform bdc_field using 'RF02K-BUKRS'

it_itab-bukrs.

perform bdc_field using 'RF02K-EKORG'

it_itab-ekorg.

perform bdc_field using 'RF02K-KTOKK'

it_itab-ktokk.

perform bdc_dynpro using 'SAPMF02K' '0110'.

perform bdc_field using 'BDC_CURSOR'

'LFA1-LAND1'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'LFA1-NAME1'

it_itab-name1.

perform bdc_field using 'LFA1-SORTL'

it_itab-sortl.

perform bdc_field using 'LFA1-LAND1'

it_itab-land1.

perform bdc_dynpro using 'SAPMF02K' '0120'.

perform bdc_field using 'BDC_CURSOR'

'LFA1-KUNNR'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPMF02K' '0130'.

perform bdc_field using 'BDC_CURSOR'

'LFBK-BANKN(02)'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

*perform bdc_field using 'LFBK-BANKS(01)'

  • 'DE'.

*perform bdc_field using 'LFBK-BANKS(02)'

  • 'DE'.

*perform bdc_field using 'LFBK-BANKL(01)'

  • '11111111'.

*perform bdc_field using 'LFBK-BANKL(02)'

  • '10010010'.

*perform bdc_field using 'LFBK-BANKN(01)'

  • '534634634'.

*perform bdc_field using 'LFBK-BANKN(02)'

  • '986678443'.

*perform bdc_dynpro using 'SAPMF02K' '0130'.

MOVE 1 TO CNT.

LOOP AT BANKS .

CONCATENATE 'LFBK-BANKS( ' CNT ' ) ' INTO FLD.

PERFORM BDC_FIELD USING FLD BANKS-BANKS.

CNT = CNT + 1.

ENDLOOP.

MOVE 1 TO CNT.

LOOP AT BANKl .

CONCATENATE 'LFBK-BANKl( ' CNT ' ) ' INTO FLD.

PERFORM BDC_FIELD USING FLD BANKl-BANKl.

CNT = CNT + 1.

ENDLOOP.

MOVE 1 TO CNT.

LOOP AT BANKN .

CONCATENATE 'LFBK-BANKN( ' CNT ' ) ' INTO FLD.

PERFORM BDC_FIELD USING FLD BANKN-BANKN.

CNT = CNT + 1.

ENDLOOP.

perform bdc_field using 'BDC_CURSOR'

'LFBK-BANKS(01)'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_dynpro using 'SAPMF02K' '0210'.

perform bdc_field using 'BDC_CURSOR'

'LFB1-FDGRV'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'LFB1-AKONT'

it_itab-akont.

perform bdc_field using 'LFB1-FDGRV'

it_itab-fdgrv.

perform bdc_dynpro using 'SAPMF02K' '0215'.

perform bdc_field using 'BDC_CURSOR'

'LFB1-ZTERM'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPMF02K' '0220'.

perform bdc_field using 'BDC_CURSOR'

'LFB5-MAHNA'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPMF02K' '0310'.

perform bdc_field using 'BDC_CURSOR'

'LFM1-WAERS'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'LFM1-WAERS'

it_itab-waers.

perform bdc_dynpro using 'SAPMF02K' '0320'.

perform bdc_field using 'BDC_CURSOR'

'RF02K-LIFNR'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_dynpro using 'SAPLSPO1' '0300'.

perform bdc_field using 'BDC_OKCODE'

'=YES'.

perform bdc_dynpro using 'SAPMSRD0' '0102'.

perform bdc_field using 'BDC_CURSOR'

'RSRD1-TBMA_VAL'.

perform bdc_field using 'BDC_OKCODE'

'=BACK'.

perform bdc_field using 'RSRD1-TBMA'

'X'.

perform bdc_transaction using 'XK01'.

endloop.

perform close_group.

This is the test data

bScdefgh 0001 0001 0001 xyz1234567890sssOMALI sss DE DE,DE 11111111,10010010 534634634,986678443 62130 A3 AUD

here the spaces are tab delimeters.

4 REPLIES 4
Read only

Former Member
0 Likes
650

Hi Sultan,

Please check the below program....

report BDC_FIELD_DELETION

no standard page heading line-size 255.

include bdcrecx1.

parameters: dataset(132) lower case.

      • DO NOT CHANGE - the generated data section - DO NOT CHANGE ***

*

  • If it is nessesary to change the data section use the rules:

  • 1.) Each definition of a field exists of two lines

  • 2.) The first line shows exactly the comment

  • '* data element: ' followed with the data element

  • which describes the field.

  • If you don't have a data element use the

  • comment without a data element name

  • 3.) The second line shows the fieldname of the

  • structure, the fieldname must consist of

  • a fieldname and optional the character '_' and

  • three numbers and the field length in brackets

  • 4.) Each field must be type C.

*

      • Generated data section with specific formatting - DO NOT CHANGE ***

data: begin of record,

  • data element: CLASSTAB

TBMA_001(001),

  • data element: TABNAME16

TBMA_VAL_002(016),

  • data element: TYPENAME

DDTYPE_VAL_003(030),

  • data element: AS4TEXT

DDTEXT_004(060),

  • data element: EX_CDTF

CDTF_005(001),

  • data element: AS4TEXT

DDTEXT_006(060),

  • data element: DATATYPE_D

DATATYPE_007(010),

  • data element: DDLENG

LENG_008(006),

  • data element: OUTPUTLEN

OUTPUTLEN_009(006),

  • data element: EX_CDE

CDE_010(001),

  • data element: AS4TEXT

DDTEXT_011(060),

  • data element: DATATYPE_D

DATATYPE_012(010),

  • data element: DDLENG

LENG_013(006),

  • data element: OUTPUTLEN

OUTPUTLEN_014(006),

  • data element: AS4TEXT

DDTEXT_015(060),

  • data element:

ELEM_016(001),

  • data element:

DOMAIN_017(001),

  • data element: DOM_REF

DOMNAME_018(030),

  • data element: AS4TEXT

DDTEXT_019(060),

  • data element: CLASSTAB

TBMA_020(001),

  • data element: TABNAME16

TBMA_VAL_021(016),

  • data element: TYPENAME

DDTYPE_VAL_022(030),

end of record.

      • End generated data section ***

start-of-selection.

perform open_dataset using dataset.

perform open_group.

do.

read dataset dataset into record.

if sy-subrc <> 0. exit. endif.

perform bdc_dynpro using 'SAPMSRD0' '0102'.

perform bdc_field using 'BDC_CURSOR'

'RSRD1-TBMA_VAL'.

perform bdc_field using 'BDC_OKCODE'

'=SHOW'.

perform bdc_field using 'RSRD1-TBMA'

record-TBMA_001.

perform bdc_field using 'RSRD1-TBMA_VAL'

record-TBMA_VAL_002.

perform bdc_field using 'RSRD1-DDTYPE_VAL'

record-DDTYPE_VAL_003.

perform bdc_dynpro using 'SAPLSD41' '2200'.

perform bdc_field using 'BDC_OKCODE'

'=WB_DISP_EDIT_TOGGLE'.

perform bdc_field using 'BDC_CURSOR'

'DD03P-FIELDNAME(01)'.

perform bdc_dynpro using 'SAPLSD41' '2200'.

perform bdc_field using 'BDC_OKCODE'

'=WB_SELECT_OBJECT'.

perform bdc_field using 'DD02D-DDTEXT'

record-DDTEXT_004.

perform bdc_field using 'BDC_CURSOR'

'DD03D-ROLLNAME(05)'.

perform bdc_dynpro using 'SAPLSPO1' '0300'.

perform bdc_field using 'BDC_OKCODE'

'=NO'.

perform bdc_dynpro using 'SAPLSD51' '1000'.

perform bdc_field using 'BDC_OKCODE'

'=WB_WHERE_USED_LIST'.

perform bdc_dynpro using 'SAPICDE_' '0101'.

perform bdc_field using 'BDC_CURSOR'

'RSEUV-TDFIND'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_field using 'RSEUX-CDTF'

record-CDTF_005.

perform bdc_dynpro using 'SAPMSSY0' '0120'.

perform bdc_field using 'BDC_CURSOR'

'06/04'.

perform bdc_field using 'BDC_OKCODE'

'=WB_BACK'.

perform bdc_dynpro using 'SAPLSD51' '1000'.

perform bdc_field using 'BDC_OKCODE'

'=WB_SELECT_OBJECT'.

perform bdc_dynpro using 'SAPLSPO1' '0300'.

perform bdc_field using 'BDC_OKCODE'

'=NO'.

perform bdc_dynpro using 'SAPLSD01' '1200'.

perform bdc_field using 'BDC_CURSOR'

'DD01D-DDTEXT'.

perform bdc_field using 'BDC_OKCODE'

'=WB_WHERE_USED_LIST'.

perform bdc_field using 'DD01D-DDTEXT'

record-DDTEXT_006.

perform bdc_field using 'DD01D-DATATYPE'

record-DATATYPE_007.

perform bdc_field using 'DD01D-LENG'

record-LENG_008.

perform bdc_field using 'DD01D-OUTPUTLEN'

record-OUTPUTLEN_009.

perform bdc_dynpro using 'SAPICDD_' '0101'.

perform bdc_field using 'BDC_CURSOR'

'RSEUV-TDFIND'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_field using 'RSEUX-CDE'

record-CDE_010.

perform bdc_dynpro using 'SAPMSSY0' '0120'.

perform bdc_field using 'BDC_CURSOR'

'04/04'.

perform bdc_field using 'BDC_OKCODE'

'=DELE'.

perform bdc_dynpro using 'SAPLSDYY' '0800'.

perform bdc_field using 'BDC_CURSOR'

'DDOBJ_TEXT'.

perform bdc_field using 'BDC_OKCODE'

'=GOON'.

perform bdc_dynpro using 'SAPMSSY0' '0120'.

perform bdc_field using 'BDC_CURSOR'

'04/04'.

perform bdc_field using 'BDC_OKCODE'

'=WB_BACK'.

perform bdc_dynpro using 'SAPLSD01' '1200'.

perform bdc_field using 'BDC_CURSOR'

'DD01D-DDTEXT'.

perform bdc_field using 'BDC_OKCODE'

'=WB_BACK'.

perform bdc_field using 'DD01D-DDTEXT'

record-DDTEXT_011.

perform bdc_field using 'DD01D-DATATYPE'

record-DATATYPE_012.

perform bdc_field using 'DD01D-LENG'

record-LENG_013.

perform bdc_field using 'DD01D-OUTPUTLEN'

record-OUTPUTLEN_014.

perform bdc_dynpro using 'SAPLSD51' '1000'.

perform bdc_field using 'BDC_OKCODE'

'=WB_BACK'.

perform bdc_field using 'DD04D-DDTEXT'

record-DDTEXT_015.

perform bdc_field using 'BDC_CURSOR'

'DD04D-DOMNAME'.

perform bdc_field using 'RADIO-ELEM'

record-ELEM_016.

perform bdc_field using 'RADIO-DOMAIN'

record-DOMAIN_017.

perform bdc_field using 'DD04D-DOMNAME'

record-DOMNAME_018.

perform bdc_dynpro using 'SAPLSD41' '2200'.

perform bdc_field using 'BDC_OKCODE'

'=WB_BACK'.

perform bdc_field using 'DD02D-DDTEXT'

record-DDTEXT_019.

perform bdc_field using 'BDC_CURSOR'

'DD03D-ROLLNAME(05)'.

perform bdc_dynpro using 'SAPMSRD0' '0102'.

perform bdc_field using 'BDC_CURSOR'

'RSRD1-TBMA_VAL'.

perform bdc_field using 'BDC_OKCODE'

'=BACK'.

perform bdc_field using 'RSRD1-TBMA'

record-TBMA_020.

perform bdc_field using 'RSRD1-TBMA_VAL'

record-TBMA_VAL_021.

perform bdc_field using 'RSRD1-DDTYPE_VAL'

record-DDTYPE_VAL_022.

perform bdc_transaction using 'SE11'.

enddo.

perform close_group.

perform close_dataset using dataset.

-


Reward points if helpful....

Regards,

Omkar.

Read only

0 Likes
650

hi yanamala,

thanks for your reply.i wanted to know the code for catching the records(line items) into one header item into the internal table.

pls if you can send me that code i will surely be very happy to reward you with ten points.

thanks,

sultan.s

Read only

Former Member
0 Likes
650
Read only

Former Member
0 Likes
651

Hi,

Check this sample code.

report Z_XK01_REC_PRG_MUL_CTRL_FIELDS

no standard page heading line-size 255.

TABLES: RF02K,LFA1,LFBK,LFB1,LFM1.

DATA: BEGIN OF IT_ITAB OCCURS 0,

LIFNR LIKE RF02K-LIFNR,

BUKRS LIKE RF02K-BUKRS,

EKORG LIKE RF02K-EKORG,

KTOKK LIKE RF02K-KTOKK,

NAME1 LIKE LFA1-NAME1,

SORTL LIKE LFA1-SORTL,

LAND1 LIKE LFA1-LAND1,

BANKS(6) TYPE C,

BANKL(17) TYPE C,

BANKN(19) TYPE C,

AKONT LIKE LFB1-AKONT,

FDGRV LIKE LFB1-FDGRV,

WAERS LIKE LFM1-WAERS,

END OF IT_ITAB.

DATA: BEGIN OF BANKS OCCURS 0,

BANKS LIKE LFBK-BANKS,

END OF BANKS.

DATA: BEGIN OF BANKL OCCURS 0,

BANKL LIKE LFBK-BANKL,

END OF BANKL.

DATA: BEGIN OF BANKN OCCURS 0,

BANKN LIKE LFBK-BANKN,

END OF BANKN.

DATA : FLD(20) TYPE C,

CNT(2) TYPE N.

include bdcrecx1.

start-of-selection.

*CALL FUNCTION 'WS_UPLOAD'

  • EXPORTING

    • CODEPAGE = ' '

  • FILENAME = 'Z:/SS/MUL_REC_TAB.TXT'

  • FILETYPE = 'DAT'

    • HEADLEN = ' '

    • LINE_EXIT = ' '

    • TRUNCLEN = ' '

    • USER_FORM = ' '

    • USER_PROG = ' '

    • DAT_D_FORMAT = ' '

    • IMPORTING

    • FILELENGTH = FILELENGTH

  • TABLES

  • DATA_TAB = it_itab

  • EXCEPTIONS

  • CONVERSION_ERROR = 1

  • FILE_OPEN_ERROR = 2

  • FILE_READ_ERROR = 3

  • INVALID_TYPE = 4

  • NO_BATCH = 5

  • UNKNOWN_ERROR = 6

  • INVALID_TABLE_WIDTH = 7

  • GUI_REFUSE_FILETRANSFER = 8

  • CUSTOMER_ERROR = 9

  • NO_AUTHORITY = 10

  • OTHERS = 11

  • .

*IF SY-SUBRC <> 0.

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

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

*ENDIF.

*

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

FILENAME = 'Z:/SS/MUL_REC_TAB.TXT'

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

  • HEADER_LENGTH = 0

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • CODEPAGE = ' '

  • IGNORE_CERR = ABAP_TRUE

  • REPLACEMENT = '#'

  • CHECK_BOM = ' '

  • VIRUS_SCAN_PROFILE = VIRUS_SCAN_PROFILE

  • NO_AUTH_CHECK = ' '

  • IMPORTING

  • FILELENGTH = FILELENGTH

  • HEADER = HEADER

TABLES

DATA_TAB = it_itab

EXCEPTIONS

FILE_OPEN_ERROR = 1

FILE_READ_ERROR = 2

NO_BATCH = 3

GUI_REFUSE_FILETRANSFER = 4

INVALID_TYPE = 5

NO_AUTHORITY = 6

UNKNOWN_ERROR = 7

BAD_DATA_FORMAT = 8

HEADER_NOT_ALLOWED = 9

SEPARATOR_NOT_ALLOWED = 10

HEADER_TOO_LONG = 11

UNKNOWN_DP_ERROR = 12

ACCESS_DENIED = 13

DP_OUT_OF_MEMORY = 14

DISK_FULL = 15

DP_TIMEOUT = 16

OTHERS = 17

.

IF SY-SUBRC <> 0.

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

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

ENDIF.

perform open_group.

LOOP AT IT_ITAB.

REFRESH BDCDATA.

REFRESH: BANKS,BANKL,BANKN.

SPLIT IT_ITAB-BANKS AT ',' INTO TABLE BANKS.

SPLIT IT_ITAB-BANKL AT ',' INTO TABLE BANKL.

SPLIT IT_ITAB-BANKN AT ',' INTO TABLE BANKN.

perform bdc_dynpro using 'SAPMF02K' '0100'.

perform bdc_field using 'BDC_CURSOR'

'RF02K-KTOKK'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'RF02K-LIFNR'

it_itab-lifnr.

perform bdc_field using 'RF02K-BUKRS'

it_itab-bukrs.

perform bdc_field using 'RF02K-EKORG'

it_itab-ekorg.

perform bdc_field using 'RF02K-KTOKK'

it_itab-ktokk.

perform bdc_dynpro using 'SAPMF02K' '0110'.

perform bdc_field using 'BDC_CURSOR'

'LFA1-LAND1'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'LFA1-NAME1'

it_itab-name1.

perform bdc_field using 'LFA1-SORTL'

it_itab-sortl.

perform bdc_field using 'LFA1-LAND1'

it_itab-land1.

perform bdc_dynpro using 'SAPMF02K' '0120'.

perform bdc_field using 'BDC_CURSOR'

'LFA1-KUNNR'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPMF02K' '0130'.

perform bdc_field using 'BDC_CURSOR'

'LFBK-BANKN(02)'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

*perform bdc_field using 'LFBK-BANKS(01)'

  • 'DE'.

*perform bdc_field using 'LFBK-BANKS(02)'

  • 'DE'.

*perform bdc_field using 'LFBK-BANKL(01)'

  • '11111111'.

*perform bdc_field using 'LFBK-BANKL(02)'

  • '10010010'.

*perform bdc_field using 'LFBK-BANKN(01)'

  • '534634634'.

*perform bdc_field using 'LFBK-BANKN(02)'

  • '986678443'.

*perform bdc_dynpro using 'SAPMF02K' '0130'.

MOVE 1 TO CNT.

LOOP AT BANKS .

CONCATENATE 'LFBK-BANKS( ' CNT ' ) ' INTO FLD.

PERFORM BDC_FIELD USING FLD BANKS-BANKS.

CNT = CNT + 1.

ENDLOOP.

MOVE 1 TO CNT.

LOOP AT BANKl .

CONCATENATE 'LFBK-BANKl( ' CNT ' ) ' INTO FLD.

PERFORM BDC_FIELD USING FLD BANKl-BANKl.

CNT = CNT + 1.

ENDLOOP.

MOVE 1 TO CNT.

LOOP AT BANKN .

CONCATENATE 'LFBK-BANKN( ' CNT ' ) ' INTO FLD.

PERFORM BDC_FIELD USING FLD BANKN-BANKN.

CNT = CNT + 1.

ENDLOOP.

perform bdc_field using 'BDC_CURSOR'

'LFBK-BANKS(01)'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_dynpro using 'SAPMF02K' '0210'.

perform bdc_field using 'BDC_CURSOR'

'LFB1-FDGRV'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'LFB1-AKONT'

it_itab-akont.

perform bdc_field using 'LFB1-FDGRV'

it_itab-fdgrv.

perform bdc_dynpro using 'SAPMF02K' '0215'.

perform bdc_field using 'BDC_CURSOR'

'LFB1-ZTERM'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPMF02K' '0220'.

perform bdc_field using 'BDC_CURSOR'

'LFB5-MAHNA'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPMF02K' '0310'.

perform bdc_field using 'BDC_CURSOR'

'LFM1-WAERS'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'LFM1-WAERS'

it_itab-waers.

perform bdc_dynpro using 'SAPMF02K' '0320'.

perform bdc_field using 'BDC_CURSOR'

'RF02K-LIFNR'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_dynpro using 'SAPLSPO1' '0300'.

perform bdc_field using 'BDC_OKCODE'

'=YES'.

perform bdc_dynpro using 'SAPMSRD0' '0102'.

perform bdc_field using 'BDC_CURSOR'

'RSRD1-TBMA_VAL'.

perform bdc_field using 'BDC_OKCODE'

'=BACK'.

perform bdc_field using 'RSRD1-TBMA'

'X'.

perform bdc_transaction using 'XK01'.

endloop.

perform close_group.

This is the test data

bScdefgh 0001 0001 0001 xyz1234567890sssOMALI sss DE DE,DE 11111111,10010010 534634634,986678443 62130 A3 AUD

here the spaces are tab delimeters.