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: 

Filling table controls using BDC

former_member206396
Active Participant
0 Kudos

hai,

could any one send code for populating BDCDATA in table controls, VA01...

pls send the procedure....

waiting for reply..

Thanking you,

Rama krishna S

3 REPLIES 3

Former Member
0 Kudos

Hi rama,

1. In table control we have to use INDEX Number

(Row number for the field)

2. eg.

FIELDA(1) = for first row , fieldA

FIELDA(2) = for second row , fieldA

FIELDA(3) = for third row , fieldA

3. So the field name , in bdc internal table

should be <b>FIELD(1)</b>

(and not merely FIELD)

regards,

amit m.

Former Member

Simha_
Employee
Employee
0 Kudos

Hi ,

check this code...

report YSUPPLY_7

no standard page heading line-size 255.

include bdcrecx1.

data: begin of itab occurs 0,

LIFNR like RF02K-LIFNR,

BUKRS like RF02K-BUKRS,

KTOKK like RF02K-KTOKK,

ANRED LIKE LFA1-ANRED,

NAME1 LIKE LFA1-NAME1,

SORTL LIKE LFA1-SORTL,

LAND1 LIKE LFA1-LAND1,

KUNNR LIKE LFA1-KUNNR,

BANKS(50) TYPE C,

BANKL(50) TYPE C,

BANKN(50) TYPE C,

KOINH(50) TYPE C,

BANKA LIKE BNKA-BANKA,

PROVZ LIKE BNKA-PROVZ,

AKONT LIKE LFB1-AKONT,

END OF 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: BEGIN OF KOINH OCCURS 0,

KOINH LIKE LFBK-KOINH,

END OF KOINH.

DATA: CNT(2) TYPE N,

FLD(20) TYPE C.

start-of-selection.

CALL FUNCTION 'WS_UPLOAD'

EXPORTING

  • CODEPAGE = ' '

FILENAME = 'C:\SAM.TXT'

FILETYPE = 'DAT'

TABLES

data_tab = 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.

perform open_group.

LOOP AT ITAB.

REFRESH BDCDATA.

REFRESH: BANKS,BANKL,BANKN,KOINH.

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

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

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

SPLIT ITAB-KOINH AT ',' INTO TABLE KOINH.

perform bdc_dynpro using 'SAPMF02K' '0100'.

perform bdc_field using 'BDC_CURSOR'

'RF02K-BUKRS'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'RF02K-LIFNR'

ITAB-LIFNR.

perform bdc_field using 'RF02K-BUKRS'

ITAB-BUKRS.

perform bdc_field using 'RF02K-KTOKK'

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-ANRED'

ITAB-ANRED.

perform bdc_field using 'LFA1-NAME1'

ITAB-NAME1.

perform bdc_field using 'LFA1-SORTL'

ITAB-SORTL.

perform bdc_field using 'LFA1-LAND1'

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_field using 'LFA1-KUNNR'

ITAB-KUNNR.

perform bdc_dynpro using 'SAPMF02K' '0130'.

perform bdc_field using 'BDC_CURSOR'

'LFBK-KOINH(01)'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

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

  • ITAB-BANKS.

MOVE 1 TO CNT.

LOOP AT BANKS.

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

PERFORM BDC_FIELD USING FLD BANKS-BANKS.

CNT = CNT + 1.

ENDLOOP.

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

  • ITAB-BANKL.

MOVE 1 TO CNT.

LOOP AT BANKL.

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

PERFORM BDC_FIELD USING FLD BANKL-BANKL.

CNT = CNT + 1.

ENDLOOP.

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

  • ITAB-BANKN.

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 'LFBK-KOINH(01)'

  • ITAB-KOINH.

MOVE 1 TO CNT.

LOOP AT KOINH.

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

PERFORM BDC_FIELD USING FLD KOINH-KOINH.

CNT = CNT + 1.

ENDLOOP.

perform bdc_dynpro using 'SAPLBANK' '0100'.

perform bdc_field using 'BDC_CURSOR'

'BNKA-PROVZ'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_field using 'BNKA-BANKA'

ITAB-BANKA.

perform bdc_field using 'BNKA-PROVZ'

ITAB-PROVZ.

perform bdc_dynpro using 'SAPMF02K' '0130'.

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-AKONT'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'LFB1-AKONT'

ITAB-AKONT.

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 'SAPLSPO1' '0300'.

perform bdc_field using 'BDC_OKCODE'

'=YES'.

perform bdc_transaction using 'XK01'.

ENDLOOP.

perform close_group.

cheers,

Simha.