cancel
Showing results for 
Search instead for 
Did you mean: 

Vendor master data

Former Member
0 Kudos

I am looking for a bapi to load vendor master data from excel sheet.

please someone send me a sample code with load excel file from application server.

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

Here is the code for BDC to create vendor from Application server.

report ZMMBDCP_VENDOR

no standard page heading

line-size 255.

----


*Includes

----


include bdcrecx1.

----


*Internal Tables

----


*--Internal Table to hold vendor details

Data: begin of it_vendor occurs 0,

f1(4), " Company code

f2(4), " Purch. organization

f3(4), " Acc group

f4(30), " Title

f5(40), " Name1

f6(40), " Name2

f7(20), " Search Term

f8(20), " Search Term

f9(60), " Street

f10(10), " Postal Code

f11(40), " City

f12(3), " Country

f13(10), " PO Box

f14(2), " Language

f15(30), " Telephone

f16(30), " Fax

f17(241), " Email

f18(10), " Recon. account

f19(1), " Chk double inv.

f20(5), " Currency

f21(2), " Schema

f22(30),

end of it_vendor.

----


*Start of selection

----


start-of-selection.

Clear it_vendor.

Refresh it_vendor.

  • WRITE : / 'Upload of Vendor from ', P_FNAME, ' on ', SY-DATUM.

*To Upload Flat file

CALL FUNCTION 'UPLOAD'

EXPORTING

filename = 'C:\WINDOWS\Desktop\vendor1.txt'

filetype = 'DAT'

TABLES

data_tab = it_vendor

EXCEPTIONS

conversion_error = 1

invalid_table_width = 2

invalid_type = 3

no_batch = 4

unknown_error = 5

gui_refuse_filetransfer = 6

OTHERS = 7.

perform open_group.

  • OPEN DATASET P_FNAME FOR INPUT IN TEXT MODE.

*

  • if sy-subrc ne 0.

  • write : / 'File could not be uploaded.. Check file name.'.

  • stop.

  • endif.

*

  • CLEAR : it_vendor[], it_vendor.

*

  • DO.

  • READ DATASET P_FNAME INTO V_STR.

  • IF SY-SUBRC NE 0.

  • EXIT.

  • ENDIF.

    • write v_str.

    • translate v_str using '#/'.

  • SPLIT V_STR AT ',' INTO it_vendor-F1 it_vendor-F2 it_vendor-F3

  • it_vendor-F4 it_vendor-F5 it_vendor-F6

  • it_vendor-F7 it_vendor-F8 it_vendor-F9

  • it_vendor-F10 it_vendor-F11 it_vendor-F12

  • it_vendor-F13 it_vendor-F14 it_vendor-F15

  • it_vendor-F16 it_vendor-F17 it_vendor-F18

  • it_vendor-F19 it_vendor-F20 it_vendor-F21

  • it_vendor-F22.

*

  • APPEND it_vendor.

  • CLEAR it_vendor.

  • ENDDO.

*

  • IF it_vendor[] IS INITIAL.

  • WRITE : / 'No data found to upload'.

  • STOP.

  • ENDIF.

*Looping on vendor internal table

loop at it_vendor.

*Screen 110

perform bdc_dynpro using 'SAPMF02K' '0100'.

perform bdc_field using 'BDC_CURSOR'

'USE_ZAV'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'RF02K-BUKRS'

it_vendor-f1. " '3000'.

perform bdc_field using 'RF02K-EKORG'

it_vendor-f2. "'3000'.

perform bdc_field using 'RF02K-KTOKK'

it_vendor-f3. "'kred'.

perform bdc_field using 'USE_ZAV'

'X'.

*Screen 111

perform bdc_dynpro using 'SAPMF02K' '0111'.

perform bdc_field using 'BDC_OKCODE'

'=VW'.

perform bdc_field using 'BDC_CURSOR'

'SZA1_D0100-SMTP_ADDR'.

perform bdc_field using 'SZA1_D0100-TITLE_MEDI'

it_vendor-f4. " 'Company'.

perform bdc_field using 'ADDR1_DATA-NAME1'

it_vendor-f5. "'name1'.

perform bdc_field using 'ADDR1_DATA-NAME2'

it_vendor-f6. "'name2'.

perform bdc_field using 'ADDR1_DATA-SORT1'

it_vendor-f7. "'s1'.

perform bdc_field using 'ADDR1_DATA-SORT2'

it_vendor-f8. "'s2'.

perform bdc_field using 'ADDR1_DATA-STREET'

it_vendor-f9.

perform bdc_field using 'ADDR1_DATA-POST_CODE1'

it_vendor-f10. "'55555'.

perform bdc_field using 'ADDR1_DATA-CITY1'

it_vendor-f11. "'city'.

perform bdc_field using 'ADDR1_DATA-COUNTRY'

it_vendor-f12. "'SA'.

perform bdc_field using 'ADDR1_DATA-PO_BOX'

it_vendor-f13 . "'12345'.

perform bdc_field using 'ADDR1_DATA-LANGU'

it_vendor-f14 . "'EN'.

perform bdc_field using 'SZA1_D0100-TEL_NUMBER'

it_vendor-f15. "'344455'.

perform bdc_field using 'SZA1_D0100-FAX_NUMBER'

it_vendor-f16. "'445555'.

perform bdc_field using 'SZA1_D0100-SMTP_ADDR'

it_vendor-f17. " 'anujkaul@hotmail.com'.

*Screen 120

perform bdc_dynpro using 'SAPMF02K' '0120'.

perform bdc_field using 'BDC_CURSOR'

'LFA1-KUNNR'.

perform bdc_field using 'BDC_OKCODE'

'=VW'.

*Screen 130

perform bdc_dynpro using 'SAPMF02K' '0130'.

perform bdc_field using 'BDC_CURSOR'

'LFBK-BANKS(01)'.

perform bdc_field using 'BDC_OKCODE'

'=VW'.

*Screen 210

perform bdc_dynpro using 'SAPMF02K' '0210'.

perform bdc_field using 'BDC_CURSOR'

'LFB1-AKONT'.

perform bdc_field using 'BDC_OKCODE'

'=VW'.

perform bdc_field using 'LFB1-AKONT'

it_vendor-f18. "'160000'.

*Screen 215

perform bdc_dynpro using 'SAPMF02K' '0215'.

perform bdc_field using 'BDC_CURSOR'

'LFB1-REPRF'.

perform bdc_field using 'BDC_OKCODE'

'=VW'.

perform bdc_field using 'LFB1-REPRF'

it_vendor-f19. "'X'.

*Screen 220

perform bdc_dynpro using 'SAPMF02K' '0220'.

perform bdc_field using 'BDC_CURSOR'

'LFB5-MAHNA'.

perform bdc_field using 'BDC_OKCODE'

'=VW'.

*Screen 310

perform bdc_dynpro using 'SAPMF02K' '0310'.

perform bdc_field using 'BDC_CURSOR'

'LFM1-KALSK'.

perform bdc_field using 'BDC_OKCODE'

'=VW'.

perform bdc_field using 'LFM1-WAERS'

it_vendor-f20. "'SAR'.

perform bdc_field using 'LFM1-KALSK'

it_vendor-f21. "'01'.

perform bdc_field using 'LFM1-VERKF'

it_vendor-f22.

*Screen 320

perform bdc_dynpro using 'SAPMF02K' '0320'.

perform bdc_field using 'BDC_CURSOR'

'WYT3-PARVW(01)'.

perform bdc_field using 'BDC_OKCODE'

'=VW'.

*Screen 300

perform bdc_dynpro using 'SAPLSPO1' '0300'.

perform bdc_field using 'BDC_OKCODE'

'=YES'.

*Call Transaction XK01

perform bdc_transaction using 'XK01'.

endloop.

perform close_group.

reward if useful

regards,

ANJI

Former Member
0 Kudos

hi anji reddy give your email adress and phone no plz.