<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: bdc in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389243#M531173</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check the sample code to transfer data from file to SAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report ZCN_MM_MATMASTER_BASICVIEW&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT zcn_mm_matmaster_basicview.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF it_data OCCURS 0,&lt;/P&gt;&lt;P&gt;mat_type LIKE mara-mtart,&lt;/P&gt;&lt;P&gt;ind_sec LIKE mara-mbrsh,&lt;/P&gt;&lt;P&gt;plant LIKE bapi_marc-plant,&lt;/P&gt;&lt;P&gt;stge_loc LIKE bapi_mard-stge_loc,&lt;/P&gt;&lt;P&gt;mat_desc LIKE makt-maktx,&lt;/P&gt;&lt;P&gt;base_uom LIKE mara-meins,&lt;/P&gt;&lt;P&gt;old_matno LIKE mara-bismt,&lt;/P&gt;&lt;P&gt;matl_group LIKE mara-matkl,&lt;/P&gt;&lt;P&gt;document LIKE mara-zeinr,&lt;/P&gt;&lt;P&gt;po_unit LIKE bapi_mara-po_unit,&lt;/P&gt;&lt;P&gt;pur_valkey LIKE bapi_mara-pur_valkey,&lt;/P&gt;&lt;P&gt;mfr_no LIKE bapi_mara-mfr_no,&lt;/P&gt;&lt;P&gt;manu_mat LIKE bapi_mara-manu_mat,&lt;/P&gt;&lt;P&gt;vendor_lookup(10) TYPE c,&lt;/P&gt;&lt;P&gt;mrp_type LIKE bapi_marc-mrp_type,&lt;/P&gt;&lt;P&gt;mrp_ctrler LIKE bapi_marc-mrp_ctrler,&lt;/P&gt;&lt;P&gt;sm_key LIKE bapi_marc-sm_key,&lt;/P&gt;&lt;P&gt;proc_type LIKE bapi_marc-proc_type,&lt;/P&gt;&lt;P&gt;sloc_exprc LIKE bapi_marc-sloc_exprc,&lt;/P&gt;&lt;P&gt;stge_bin LIKE bapi_mard-stge_bin,&lt;/P&gt;&lt;P&gt;issue_unit LIKE bapi_marc-issue_unit,&lt;/P&gt;&lt;P&gt;cc_ph_inv LIKE bapi_marc-cc_ph_inv,&lt;/P&gt;&lt;P&gt;price_ctrl LIKE bapi_mbew-price_ctrl,&lt;/P&gt;&lt;P&gt;val_class LIKE bapi_mbew-val_class,&lt;/P&gt;&lt;P&gt;moving_pr,&lt;/P&gt;&lt;P&gt;price_unit,&lt;/P&gt;&lt;P&gt;profit_ctr LIKE bapi_marc-profit_ctr,&lt;/P&gt;&lt;P&gt;matnr LIKE mara-matnr,&lt;/P&gt;&lt;P&gt;END OF it_data,&lt;/P&gt;&lt;P&gt;is_data LIKE it_data.&lt;/P&gt;&lt;P&gt;DATA: bdc_tab LIKE bdcdata OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA : g_file TYPE string.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF data_mat OCCURS 0,&lt;/P&gt;&lt;P&gt;datastring(120),&lt;/P&gt;&lt;P&gt;END OF data_mat.&lt;/P&gt;&lt;P&gt;DATA: record(500).&lt;/P&gt;&lt;P&gt;*******************&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;SELECTION SCREEN&lt;/STRONG&gt;&lt;/DEL&gt;--*************************&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_file TYPE ibipparms-path.&lt;/P&gt;&lt;P&gt;PARAMETERS: r_local RADIOBUTTON GROUP radi,&lt;/P&gt;&lt;P&gt;r_apps RADIOBUTTON GROUP radi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;*******************AT SELECTION SCREEN *********************&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'F4_FILENAME'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;program_name = syst-cprog&lt;/P&gt;&lt;P&gt;dynpro_number = syst-dynnr&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;file_name = p_file.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;S T A R T O F S E L E C T I O N&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;g_file = p_file.&lt;/P&gt;&lt;P&gt;PERFORM upload USING g_file. "Upload takes the file from the presentation&lt;/P&gt;&lt;P&gt;PERFORM bdc_opengroup.&lt;/P&gt;&lt;P&gt;PERFORM bdc_processing.&lt;/P&gt;&lt;P&gt;PERFORM bdc_closegroup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form upload&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM upload USING lv_file .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF r_apps = 'X'.&lt;/P&gt;&lt;P&gt;OPEN DATASET lv_file&lt;/P&gt;&lt;P&gt;FOR INPUT IN TEXT MODE&lt;/P&gt;&lt;P&gt;ENCODING DEFAULT.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;WRITE: / text-002, sy-subrc.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;DO.&lt;/P&gt;&lt;P&gt;READ DATASET lv_file INTO record.&lt;/P&gt;&lt;P&gt;SPLIT record AT '~' INTO&lt;/P&gt;&lt;P&gt;it_data-mat_type&lt;/P&gt;&lt;P&gt;it_data-ind_sec&lt;/P&gt;&lt;P&gt;it_data-plant&lt;/P&gt;&lt;P&gt;it_data-stge_loc&lt;/P&gt;&lt;P&gt;it_data-mat_desc&lt;/P&gt;&lt;P&gt;it_data-base_uom&lt;/P&gt;&lt;P&gt;it_data-old_matno&lt;/P&gt;&lt;P&gt;it_data-matl_group&lt;/P&gt;&lt;P&gt;it_data-document&lt;/P&gt;&lt;P&gt;it_data-po_unit&lt;/P&gt;&lt;P&gt;it_data-pur_valkey&lt;/P&gt;&lt;P&gt;it_data-mfr_no&lt;/P&gt;&lt;P&gt;it_data-manu_mat&lt;/P&gt;&lt;P&gt;it_data-vendor_lookup&lt;/P&gt;&lt;P&gt;it_data-mrp_type&lt;/P&gt;&lt;P&gt;it_data-mrp_ctrler&lt;/P&gt;&lt;P&gt;it_data-sm_key&lt;/P&gt;&lt;P&gt;it_data-proc_type&lt;/P&gt;&lt;P&gt;it_data-sloc_exprc&lt;/P&gt;&lt;P&gt;it_data-stge_bin&lt;/P&gt;&lt;P&gt;it_data-issue_unit&lt;/P&gt;&lt;P&gt;it_data-cc_ph_inv&lt;/P&gt;&lt;P&gt;it_data-price_ctrl&lt;/P&gt;&lt;P&gt;it_data-val_class&lt;/P&gt;&lt;P&gt;it_data-moving_pr&lt;/P&gt;&lt;P&gt;it_data-price_unit&lt;/P&gt;&lt;P&gt;it_data-profit_ctr&lt;/P&gt;&lt;P&gt;it_data-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND it_data.&lt;/P&gt;&lt;P&gt;CLEAR it_data.&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;CLOSE DATASET lv_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ELSEIF r_local = 'X'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename = lv_file&lt;/P&gt;&lt;P&gt;filetype = 'ASC'&lt;/P&gt;&lt;P&gt;has_field_separator = '~'&lt;/P&gt;&lt;P&gt;header_length = 0&lt;/P&gt;&lt;P&gt;read_by_line = 'X'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DAT_MODE = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CODEPAGE = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ignore_cerr = 'X'&lt;/P&gt;&lt;P&gt;replacement = '#'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECK_BOM = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VIRUS_SCAN_PROFILE =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NO_AUTH_CHECK = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILELENGTH =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = data_mat&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILE_OPEN_ERROR = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILE_READ_ERROR = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NO_BATCH = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;GUI_REFUSE_FILETRANSFER = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INVALID_TYPE = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NO_AUTHORITY = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;UNKNOWN_ERROR = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BAD_DATA_FORMAT = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER_NOT_ALLOWED = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SEPARATOR_NOT_ALLOWED = 10&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER_TOO_LONG = 11&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;UNKNOWN_DP_ERROR = 12&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ACCESS_DENIED = 13&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DP_OUT_OF_MEMORY = 14&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DISK_FULL = 15&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DP_TIMEOUT = 16&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 17&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;LOOP AT data_mat.&lt;/P&gt;&lt;P&gt;SPLIT data_mat-datastring AT '~' INTO&lt;/P&gt;&lt;P&gt;it_data-mat_type&lt;/P&gt;&lt;P&gt;it_data-ind_sec&lt;/P&gt;&lt;P&gt;it_data-plant&lt;/P&gt;&lt;P&gt;it_data-stge_loc&lt;/P&gt;&lt;P&gt;it_data-mat_desc&lt;/P&gt;&lt;P&gt;it_data-base_uom&lt;/P&gt;&lt;P&gt;it_data-old_matno&lt;/P&gt;&lt;P&gt;it_data-matl_group&lt;/P&gt;&lt;P&gt;it_data-document&lt;/P&gt;&lt;P&gt;it_data-po_unit&lt;/P&gt;&lt;P&gt;it_data-pur_valkey&lt;/P&gt;&lt;P&gt;it_data-mfr_no&lt;/P&gt;&lt;P&gt;it_data-manu_mat&lt;/P&gt;&lt;P&gt;it_data-vendor_lookup&lt;/P&gt;&lt;P&gt;it_data-mrp_type&lt;/P&gt;&lt;P&gt;it_data-mrp_ctrler&lt;/P&gt;&lt;P&gt;it_data-sm_key&lt;/P&gt;&lt;P&gt;it_data-proc_type&lt;/P&gt;&lt;P&gt;it_data-sloc_exprc&lt;/P&gt;&lt;P&gt;it_data-stge_bin&lt;/P&gt;&lt;P&gt;it_data-issue_unit&lt;/P&gt;&lt;P&gt;it_data-cc_ph_inv&lt;/P&gt;&lt;P&gt;it_data-price_ctrl&lt;/P&gt;&lt;P&gt;it_data-val_class&lt;/P&gt;&lt;P&gt;it_data-moving_pr&lt;/P&gt;&lt;P&gt;it_data-price_unit&lt;/P&gt;&lt;P&gt;it_data-profit_ctr&lt;/P&gt;&lt;P&gt;it_data-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND it_data.&lt;/P&gt;&lt;P&gt;CLEAR it_data.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " upload&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form bdc_opengroup&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_opengroup .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;client = sy-mandt&lt;/P&gt;&lt;P&gt;group = 'Z_MAT_BASIC'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HOLDDATE = sy-datum&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;keep = 'X'&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;RECORD = FILLER1&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;prog = sy-cprog&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;client_invalid = 1&lt;/P&gt;&lt;P&gt;destination_invalid = 2&lt;/P&gt;&lt;P&gt;group_invalid = 3&lt;/P&gt;&lt;P&gt;group_is_locked = 4&lt;/P&gt;&lt;P&gt;holddate_invalid = 5&lt;/P&gt;&lt;P&gt;internal_error = 6&lt;/P&gt;&lt;P&gt;queue_error = 7&lt;/P&gt;&lt;P&gt;running = 8&lt;/P&gt;&lt;P&gt;system_lock_error = 9&lt;/P&gt;&lt;P&gt;user_invalid = 10&lt;/P&gt;&lt;P&gt;OTHERS = 11.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " bdc_opengroup&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form bdc_processing&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_processing .&lt;/P&gt;&lt;P&gt;LOOP AT it_data INTO is_data.&lt;/P&gt;&lt;P&gt;IF is_data-document &amp;lt;&amp;gt; ' '.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING: 'X' 'SAPLMGMM' '0060',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;' ' 'RMMG1-MBRSH' is_data-ind_sec,&lt;/P&gt;&lt;P&gt;' ' 'RMMG1-MTART' is_data-mat_type,&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '0070',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=ENTR',&lt;/P&gt;&lt;P&gt;' ' 'MSICHTAUSW-KZSEL(01)' 'X',&lt;/P&gt;&lt;P&gt;' ' 'MSICHTAUSW-KZSEL(02)' 'X',&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '5004',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=SP02',&lt;/P&gt;&lt;P&gt;' ' 'MAKT-MAKTX' is_data-mat_desc,&lt;/P&gt;&lt;P&gt;' ' 'MARA-MEINS' is_data-base_uom,&lt;/P&gt;&lt;P&gt;' ' 'MARA-MATKL' is_data-matl_group,&lt;/P&gt;&lt;P&gt;' ' 'MARA-BISMT' is_data-old_matno,&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '5004',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=BU',&lt;/P&gt;&lt;P&gt;' ' 'MARA-ZEINR' is_data-document.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING: 'X' 'SAPLMGMM' '0060',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;' ' 'RMMG1-MBRSH' is_data-ind_sec,&lt;/P&gt;&lt;P&gt;' ' 'RMMG1-MTART' is_data-mat_type,&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '0070',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=ENTR',&lt;/P&gt;&lt;P&gt;' ' 'MSICHTAUSW-KZSEL(01)' 'X',&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '5004',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=BU',&lt;/P&gt;&lt;P&gt;' ' 'MAKT-MAKTX' is_data-mat_desc,&lt;/P&gt;&lt;P&gt;' ' 'MARA-MEINS' is_data-base_uom,&lt;/P&gt;&lt;P&gt;' ' 'MARA-MATKL' is_data-matl_group,&lt;/P&gt;&lt;P&gt;' ' 'MARA-BISMT' is_data-old_matno.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;tcode = 'MM01'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = bdc_tab&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;internal_error = 1&lt;/P&gt;&lt;P&gt;not_open = 2&lt;/P&gt;&lt;P&gt;queue_error = 3&lt;/P&gt;&lt;P&gt;tcode_invalid = 4&lt;/P&gt;&lt;P&gt;printing_invalid = 5&lt;/P&gt;&lt;P&gt;posting_invalid = 6&lt;/P&gt;&lt;P&gt;OTHERS = 7.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;refresh bdc_tab.&lt;/P&gt;&lt;P&gt;clear is_data.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " bdc_processing&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form dynpro&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_0270 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_0271 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_0272 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM dynpro USING dynbegin name value.&lt;/P&gt;&lt;P&gt;CLEAR bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;MOVE: name TO bdc_tab-program,&lt;/P&gt;&lt;P&gt;value TO bdc_tab-dynpro,&lt;/P&gt;&lt;P&gt;'X' TO bdc_tab-dynbegin.&lt;/P&gt;&lt;P&gt;APPEND bdc_tab.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;MOVE name TO bdc_tab-fnam.&lt;/P&gt;&lt;P&gt;MOVE value TO bdc_tab-fval.&lt;/P&gt;&lt;P&gt;APPEND bdc_tab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " dynpro&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form bdc_closegroup&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_closegroup .&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;not_open = 1&lt;/P&gt;&lt;P&gt;queue_error = 2&lt;/P&gt;&lt;P&gt;OTHERS = 3.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " bdc_closegroup&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Padmam.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 19 Jun 2007 10:59:17 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-06-19T10:59:17Z</dc:date>
    <item>
      <title>bdc</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389240#M531170</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi friends,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tell me how to upload datas from excel to SAP using BDC?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;give me some programs....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2007 10:53:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389240#M531170</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-19T10:53:07Z</dc:date>
    </item>
    <item>
      <title>Re: bdc</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389241#M531171</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mageshwaran,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here is the step by step procedure for uploading data using BDC  taking a example of MMO1...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;step1. go to the Transaction SHDb and create a new recording for the transaction MM01 and save the recording.&lt;/P&gt;&lt;P&gt;step 2: from the same transaction select the recording and go the program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note: if you have ur file in presentation server insted of open dataset use gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;make the needed necessary changes in the coding.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i've attached the sample coding, keep that as reference and do according to your need.&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;REPORT zmm01_bdc&lt;/P&gt;&lt;P&gt;NO STANDARD PAGE HEADING LINE-SIZE 255.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE bdcrecx1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: dataset(132) TYPE c.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;DO NOT CHANGE - the generated data section - DO NOT CHANGE ***&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If it is nessesary to change the data section use the rules:&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;1.) Each definition of a field exists of two lines&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;2.) The first line shows exactly the comment&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;'* data element: ' followed with the data element&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;which describes the field.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If you don't have a data element use the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;comment without a data element name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;3.) The second line shows the fieldname of the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;structure, the fieldname must consist of&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;a fieldname and optional the character '_' and&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;three numbers and the field length in brackets&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;4.) Each field must be type C.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;Generated data section with specific formatting - DO NOT CHANGE ***&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF record,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MATNR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;matnr_001(018),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MBRSH&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;mbrsh_002(001),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MTART&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;mtart_003(004),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: XFELD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;kzsel_01_004(001),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: XFELD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;kzsel_02_005(001),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MATNR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;matnr_006(018),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MBRSH&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;mbrsh_007(001),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MTART&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;mtart_008(004),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: XFELD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;kzsel_01_009(001),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: XFELD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;kzsel_02_010(001),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MAKTX&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;maktx_011(040),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MEINS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;meins_012(003),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MATKL&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;matkl_013(009),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MTPOS_MARA&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;mtpos_mara_014(004),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data element: MAKTX&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;maktx_015(040),&lt;/P&gt;&lt;P&gt;END OF record.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA l_lines TYPE i .&lt;/P&gt;&lt;P&gt;DATA it_record LIKE TABLE OF record WITH HEADER LINE .&lt;/P&gt;&lt;P&gt;DATA wa_record LIKE record .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;End generated data section ***&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename ='C:\MM01_FILE.TXT'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;filetype = 'ASC'&lt;/P&gt;&lt;P&gt;has_field_separator = '#'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER_LENGTH = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;READ_BY_LINE = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DAT_MODE = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CODEPAGE = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IGNORE_CERR = ABAP_TRUE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;REPLACEMENT = '#'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECK_BOM = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILELENGTH =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = it_record&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILE_OPEN_ERROR = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILE_READ_ERROR = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NO_BATCH = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;GUI_REFUSE_FILETRANSFER = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INVALID_TYPE = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NO_AUTHORITY = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;UNKNOWN_ERROR = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BAD_DATA_FORMAT = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER_NOT_ALLOWED = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SEPARATOR_NOT_ALLOWED = 10&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER_TOO_LONG = 11&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;UNKNOWN_DP_ERROR = 12&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ACCESS_DENIED = 13&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DP_OUT_OF_MEMORY = 14&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DISK_FULL = 15&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DP_TIMEOUT = 16&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 17&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM open_dataset USING dataset.&lt;/P&gt;&lt;P&gt;PERFORM open_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;READ DATASET dataset INTO record.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0. EXIT. ENDIF.&lt;/P&gt;&lt;P&gt;LOOP AT it_record INTO wa_record.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPLMGMM' '0060'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'RMMG1-MTART'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'/00'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'RMMG1-MATNR'&lt;/P&gt;&lt;P&gt;record-matnr_001.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'RMMG1-MBRSH'&lt;/P&gt;&lt;P&gt;record-mbrsh_002.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'RMMG1-MTART'&lt;/P&gt;&lt;P&gt;record-mtart_003.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPLMGMM' '0070'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'MSICHTAUSW-DYTXT(02)'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=ENTR'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'MSICHTAUSW-KZSEL(01)'&lt;/P&gt;&lt;P&gt;record-kzsel_01_004.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'MSICHTAUSW-KZSEL(02)'&lt;/P&gt;&lt;P&gt;record-kzsel_02_005.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPLMGMM' '0060'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'RMMG1-MATNR'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'/00'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'RMMG1-MATNR'&lt;/P&gt;&lt;P&gt;record-matnr_006.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'RMMG1-MBRSH'&lt;/P&gt;&lt;P&gt;record-mbrsh_007.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'RMMG1-MTART'&lt;/P&gt;&lt;P&gt;record-mtart_008.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPLMGMM' '0070'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'MSICHTAUSW-DYTXT(02)'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=ENTR'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'MSICHTAUSW-KZSEL(01)'&lt;/P&gt;&lt;P&gt;record-kzsel_01_009.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'MSICHTAUSW-KZSEL(02)'&lt;/P&gt;&lt;P&gt;record-kzsel_02_010.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPLMGMM' '4004'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'/00'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'MAKT-MAKTX'&lt;/P&gt;&lt;P&gt;record-maktx_011.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'MARA-MATKL'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'MARA-MEINS'&lt;/P&gt;&lt;P&gt;record-meins_012.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'MARA-MATKL'&lt;/P&gt;&lt;P&gt;record-matkl_013.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'MARA-MTPOS_MARA'&lt;/P&gt;&lt;P&gt;record-mtpos_mara_014.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPLMGMM' '4004'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'/00'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'MAKT-MAKTX'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'MAKT-MAKTX'&lt;/P&gt;&lt;P&gt;record-maktx_015.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPLSPO1' '0300'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=YES'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_transaction USING 'MM01'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM close_group.&lt;/P&gt;&lt;P&gt;PERFORM close_dataset USING dataset. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward points if useful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reena&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2007 10:56:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389241#M531171</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-19T10:56:22Z</dc:date>
    </item>
    <item>
      <title>Re: bdc</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389242#M531172</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI,&lt;/P&gt;&lt;P&gt;Check this sample code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  ZSBDC_XL&lt;/P&gt;&lt;P&gt;        NO STANDARD PAGE HEADING LINE-SIZE 255.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES : LFA1,RF02K.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF ITAB OCCURS 0,&lt;/P&gt;&lt;P&gt;       LIFNR LIKE RF02K-LIFNR,&lt;/P&gt;&lt;P&gt;       KTOKK LIKE RF02K-KTOKK,&lt;/P&gt;&lt;P&gt;       NAME1 LIKE LFA1-NAME1,&lt;/P&gt;&lt;P&gt;       SORTL LIKE LFA1-SORTL,&lt;/P&gt;&lt;P&gt;       LAND1 LIKE LFA1-LAND1,&lt;/P&gt;&lt;P&gt;       SPRAS LIKE LFA1-SPRAS,&lt;/P&gt;&lt;P&gt;       END OF ITAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : ITAB1 LIKE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : B1 TYPE I VALUE 1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       C1 TYPE I VALUE 1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       B2 TYPE I VALUE 10,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       C2 TYPE I VALUE 99.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE BDCRECX1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FILENAME                = 'C:\xl1.XLS'&lt;/P&gt;&lt;P&gt;      I_BEGIN_COL             = B1&lt;/P&gt;&lt;P&gt;      I_BEGIN_ROW             = C1&lt;/P&gt;&lt;P&gt;      I_END_COL               = B2&lt;/P&gt;&lt;P&gt;      I_END_ROW               = C2&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      INTERN                  = ITAB1&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      INCONSISTENT_PARAMETERS = 1&lt;/P&gt;&lt;P&gt;      UPLOAD_OLE              = 2&lt;/P&gt;&lt;P&gt;      OTHERS                  = 3.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  PERFORM  ORGANIZE_UPLOADED_DATA.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM OPEN_GROUP.&lt;/P&gt;&lt;P&gt;LOOP AT ITAB.&lt;/P&gt;&lt;P&gt;PERFORM BDC_DYNPRO      USING 'SAPMF02K' '0100'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'RF02K-KTOKK'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'RF02K-LIFNR'&lt;/P&gt;&lt;P&gt;                              ITAB-LIFNR.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'RF02K-KTOKK'&lt;/P&gt;&lt;P&gt;                              ITAB-KTOKK.&lt;/P&gt;&lt;P&gt;PERFORM BDC_DYNPRO      USING 'SAPMF02K' '0110'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFA1-SPRAS'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'LFA1-NAME1'&lt;/P&gt;&lt;P&gt;                              ITAB-NAME1.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'LFA1-SORTL'&lt;/P&gt;&lt;P&gt;                              ITAB-SORTL.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'LFA1-LAND1'&lt;/P&gt;&lt;P&gt;                              ITAB-LAND1.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'LFA1-SPRAS'&lt;/P&gt;&lt;P&gt;                              ITAB-SPRAS.&lt;/P&gt;&lt;P&gt;PERFORM BDC_DYNPRO      USING 'SAPMF02K' '0120'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFA1-KUNNR'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_DYNPRO      USING 'SAPMF02K' '0130'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFBK-BANKS(01)'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '=ENTR'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_DYNPRO      USING 'SAPLSPO1' '0300'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '=YES'.&lt;/P&gt;&lt;P&gt;PERFORM BDC_TRANSACTION USING 'XK01'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM CLOSE_GROUP.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;FORM ORGANIZE_UPLOADED_DATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT  ITAB1  BY  ROW&lt;/P&gt;&lt;P&gt;                   COL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP  AT  ITAB1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE  ITAB1-COL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    ....................................................&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN  1.&lt;/P&gt;&lt;P&gt;        ITAB-LIFNR = ITAB1-VALUE.&lt;/P&gt;&lt;P&gt;      WHEN  2.&lt;/P&gt;&lt;P&gt;        ITAB-KTOKK = ITAB1-VALUE.&lt;/P&gt;&lt;P&gt;      WHEN  3.&lt;/P&gt;&lt;P&gt;        ITAB-NAME1 = ITAB1-VALUE.&lt;/P&gt;&lt;P&gt;      WHEN  4.&lt;/P&gt;&lt;P&gt;        ITAB-SORTL = ITAB1-VALUE.&lt;/P&gt;&lt;P&gt;      WHEN  5.&lt;/P&gt;&lt;P&gt;        ITAB-LAND1 = ITAB1-VALUE.&lt;/P&gt;&lt;P&gt;      WHEN  6.&lt;/P&gt;&lt;P&gt;        ITAB-SPRAS = ITAB1-VALUE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    ....................................................&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AT  END  OF  ROW.&lt;/P&gt;&lt;P&gt;APPEND ITAB.&lt;/P&gt;&lt;P&gt;CLEAR ITAB.&lt;/P&gt;&lt;P&gt;    ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " ORGANIZE_UPLOADED_DATA&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2007 10:57:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389242#M531172</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-19T10:57:59Z</dc:date>
    </item>
    <item>
      <title>Re: bdc</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389243#M531173</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check the sample code to transfer data from file to SAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report ZCN_MM_MATMASTER_BASICVIEW&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT zcn_mm_matmaster_basicview.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF it_data OCCURS 0,&lt;/P&gt;&lt;P&gt;mat_type LIKE mara-mtart,&lt;/P&gt;&lt;P&gt;ind_sec LIKE mara-mbrsh,&lt;/P&gt;&lt;P&gt;plant LIKE bapi_marc-plant,&lt;/P&gt;&lt;P&gt;stge_loc LIKE bapi_mard-stge_loc,&lt;/P&gt;&lt;P&gt;mat_desc LIKE makt-maktx,&lt;/P&gt;&lt;P&gt;base_uom LIKE mara-meins,&lt;/P&gt;&lt;P&gt;old_matno LIKE mara-bismt,&lt;/P&gt;&lt;P&gt;matl_group LIKE mara-matkl,&lt;/P&gt;&lt;P&gt;document LIKE mara-zeinr,&lt;/P&gt;&lt;P&gt;po_unit LIKE bapi_mara-po_unit,&lt;/P&gt;&lt;P&gt;pur_valkey LIKE bapi_mara-pur_valkey,&lt;/P&gt;&lt;P&gt;mfr_no LIKE bapi_mara-mfr_no,&lt;/P&gt;&lt;P&gt;manu_mat LIKE bapi_mara-manu_mat,&lt;/P&gt;&lt;P&gt;vendor_lookup(10) TYPE c,&lt;/P&gt;&lt;P&gt;mrp_type LIKE bapi_marc-mrp_type,&lt;/P&gt;&lt;P&gt;mrp_ctrler LIKE bapi_marc-mrp_ctrler,&lt;/P&gt;&lt;P&gt;sm_key LIKE bapi_marc-sm_key,&lt;/P&gt;&lt;P&gt;proc_type LIKE bapi_marc-proc_type,&lt;/P&gt;&lt;P&gt;sloc_exprc LIKE bapi_marc-sloc_exprc,&lt;/P&gt;&lt;P&gt;stge_bin LIKE bapi_mard-stge_bin,&lt;/P&gt;&lt;P&gt;issue_unit LIKE bapi_marc-issue_unit,&lt;/P&gt;&lt;P&gt;cc_ph_inv LIKE bapi_marc-cc_ph_inv,&lt;/P&gt;&lt;P&gt;price_ctrl LIKE bapi_mbew-price_ctrl,&lt;/P&gt;&lt;P&gt;val_class LIKE bapi_mbew-val_class,&lt;/P&gt;&lt;P&gt;moving_pr,&lt;/P&gt;&lt;P&gt;price_unit,&lt;/P&gt;&lt;P&gt;profit_ctr LIKE bapi_marc-profit_ctr,&lt;/P&gt;&lt;P&gt;matnr LIKE mara-matnr,&lt;/P&gt;&lt;P&gt;END OF it_data,&lt;/P&gt;&lt;P&gt;is_data LIKE it_data.&lt;/P&gt;&lt;P&gt;DATA: bdc_tab LIKE bdcdata OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA : g_file TYPE string.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF data_mat OCCURS 0,&lt;/P&gt;&lt;P&gt;datastring(120),&lt;/P&gt;&lt;P&gt;END OF data_mat.&lt;/P&gt;&lt;P&gt;DATA: record(500).&lt;/P&gt;&lt;P&gt;*******************&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;SELECTION SCREEN&lt;/STRONG&gt;&lt;/DEL&gt;--*************************&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_file TYPE ibipparms-path.&lt;/P&gt;&lt;P&gt;PARAMETERS: r_local RADIOBUTTON GROUP radi,&lt;/P&gt;&lt;P&gt;r_apps RADIOBUTTON GROUP radi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;*******************AT SELECTION SCREEN *********************&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'F4_FILENAME'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;program_name = syst-cprog&lt;/P&gt;&lt;P&gt;dynpro_number = syst-dynnr&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;file_name = p_file.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;S T A R T O F S E L E C T I O N&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;g_file = p_file.&lt;/P&gt;&lt;P&gt;PERFORM upload USING g_file. "Upload takes the file from the presentation&lt;/P&gt;&lt;P&gt;PERFORM bdc_opengroup.&lt;/P&gt;&lt;P&gt;PERFORM bdc_processing.&lt;/P&gt;&lt;P&gt;PERFORM bdc_closegroup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form upload&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM upload USING lv_file .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF r_apps = 'X'.&lt;/P&gt;&lt;P&gt;OPEN DATASET lv_file&lt;/P&gt;&lt;P&gt;FOR INPUT IN TEXT MODE&lt;/P&gt;&lt;P&gt;ENCODING DEFAULT.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;WRITE: / text-002, sy-subrc.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;DO.&lt;/P&gt;&lt;P&gt;READ DATASET lv_file INTO record.&lt;/P&gt;&lt;P&gt;SPLIT record AT '~' INTO&lt;/P&gt;&lt;P&gt;it_data-mat_type&lt;/P&gt;&lt;P&gt;it_data-ind_sec&lt;/P&gt;&lt;P&gt;it_data-plant&lt;/P&gt;&lt;P&gt;it_data-stge_loc&lt;/P&gt;&lt;P&gt;it_data-mat_desc&lt;/P&gt;&lt;P&gt;it_data-base_uom&lt;/P&gt;&lt;P&gt;it_data-old_matno&lt;/P&gt;&lt;P&gt;it_data-matl_group&lt;/P&gt;&lt;P&gt;it_data-document&lt;/P&gt;&lt;P&gt;it_data-po_unit&lt;/P&gt;&lt;P&gt;it_data-pur_valkey&lt;/P&gt;&lt;P&gt;it_data-mfr_no&lt;/P&gt;&lt;P&gt;it_data-manu_mat&lt;/P&gt;&lt;P&gt;it_data-vendor_lookup&lt;/P&gt;&lt;P&gt;it_data-mrp_type&lt;/P&gt;&lt;P&gt;it_data-mrp_ctrler&lt;/P&gt;&lt;P&gt;it_data-sm_key&lt;/P&gt;&lt;P&gt;it_data-proc_type&lt;/P&gt;&lt;P&gt;it_data-sloc_exprc&lt;/P&gt;&lt;P&gt;it_data-stge_bin&lt;/P&gt;&lt;P&gt;it_data-issue_unit&lt;/P&gt;&lt;P&gt;it_data-cc_ph_inv&lt;/P&gt;&lt;P&gt;it_data-price_ctrl&lt;/P&gt;&lt;P&gt;it_data-val_class&lt;/P&gt;&lt;P&gt;it_data-moving_pr&lt;/P&gt;&lt;P&gt;it_data-price_unit&lt;/P&gt;&lt;P&gt;it_data-profit_ctr&lt;/P&gt;&lt;P&gt;it_data-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND it_data.&lt;/P&gt;&lt;P&gt;CLEAR it_data.&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;CLOSE DATASET lv_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ELSEIF r_local = 'X'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename = lv_file&lt;/P&gt;&lt;P&gt;filetype = 'ASC'&lt;/P&gt;&lt;P&gt;has_field_separator = '~'&lt;/P&gt;&lt;P&gt;header_length = 0&lt;/P&gt;&lt;P&gt;read_by_line = 'X'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DAT_MODE = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CODEPAGE = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ignore_cerr = 'X'&lt;/P&gt;&lt;P&gt;replacement = '#'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECK_BOM = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VIRUS_SCAN_PROFILE =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NO_AUTH_CHECK = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILELENGTH =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = data_mat&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILE_OPEN_ERROR = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILE_READ_ERROR = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NO_BATCH = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;GUI_REFUSE_FILETRANSFER = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INVALID_TYPE = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NO_AUTHORITY = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;UNKNOWN_ERROR = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BAD_DATA_FORMAT = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER_NOT_ALLOWED = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SEPARATOR_NOT_ALLOWED = 10&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER_TOO_LONG = 11&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;UNKNOWN_DP_ERROR = 12&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ACCESS_DENIED = 13&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DP_OUT_OF_MEMORY = 14&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DISK_FULL = 15&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DP_TIMEOUT = 16&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 17&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;LOOP AT data_mat.&lt;/P&gt;&lt;P&gt;SPLIT data_mat-datastring AT '~' INTO&lt;/P&gt;&lt;P&gt;it_data-mat_type&lt;/P&gt;&lt;P&gt;it_data-ind_sec&lt;/P&gt;&lt;P&gt;it_data-plant&lt;/P&gt;&lt;P&gt;it_data-stge_loc&lt;/P&gt;&lt;P&gt;it_data-mat_desc&lt;/P&gt;&lt;P&gt;it_data-base_uom&lt;/P&gt;&lt;P&gt;it_data-old_matno&lt;/P&gt;&lt;P&gt;it_data-matl_group&lt;/P&gt;&lt;P&gt;it_data-document&lt;/P&gt;&lt;P&gt;it_data-po_unit&lt;/P&gt;&lt;P&gt;it_data-pur_valkey&lt;/P&gt;&lt;P&gt;it_data-mfr_no&lt;/P&gt;&lt;P&gt;it_data-manu_mat&lt;/P&gt;&lt;P&gt;it_data-vendor_lookup&lt;/P&gt;&lt;P&gt;it_data-mrp_type&lt;/P&gt;&lt;P&gt;it_data-mrp_ctrler&lt;/P&gt;&lt;P&gt;it_data-sm_key&lt;/P&gt;&lt;P&gt;it_data-proc_type&lt;/P&gt;&lt;P&gt;it_data-sloc_exprc&lt;/P&gt;&lt;P&gt;it_data-stge_bin&lt;/P&gt;&lt;P&gt;it_data-issue_unit&lt;/P&gt;&lt;P&gt;it_data-cc_ph_inv&lt;/P&gt;&lt;P&gt;it_data-price_ctrl&lt;/P&gt;&lt;P&gt;it_data-val_class&lt;/P&gt;&lt;P&gt;it_data-moving_pr&lt;/P&gt;&lt;P&gt;it_data-price_unit&lt;/P&gt;&lt;P&gt;it_data-profit_ctr&lt;/P&gt;&lt;P&gt;it_data-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND it_data.&lt;/P&gt;&lt;P&gt;CLEAR it_data.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " upload&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form bdc_opengroup&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_opengroup .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;client = sy-mandt&lt;/P&gt;&lt;P&gt;group = 'Z_MAT_BASIC'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HOLDDATE = sy-datum&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;keep = 'X'&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;RECORD = FILLER1&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;prog = sy-cprog&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;client_invalid = 1&lt;/P&gt;&lt;P&gt;destination_invalid = 2&lt;/P&gt;&lt;P&gt;group_invalid = 3&lt;/P&gt;&lt;P&gt;group_is_locked = 4&lt;/P&gt;&lt;P&gt;holddate_invalid = 5&lt;/P&gt;&lt;P&gt;internal_error = 6&lt;/P&gt;&lt;P&gt;queue_error = 7&lt;/P&gt;&lt;P&gt;running = 8&lt;/P&gt;&lt;P&gt;system_lock_error = 9&lt;/P&gt;&lt;P&gt;user_invalid = 10&lt;/P&gt;&lt;P&gt;OTHERS = 11.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " bdc_opengroup&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form bdc_processing&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_processing .&lt;/P&gt;&lt;P&gt;LOOP AT it_data INTO is_data.&lt;/P&gt;&lt;P&gt;IF is_data-document &amp;lt;&amp;gt; ' '.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING: 'X' 'SAPLMGMM' '0060',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;' ' 'RMMG1-MBRSH' is_data-ind_sec,&lt;/P&gt;&lt;P&gt;' ' 'RMMG1-MTART' is_data-mat_type,&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '0070',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=ENTR',&lt;/P&gt;&lt;P&gt;' ' 'MSICHTAUSW-KZSEL(01)' 'X',&lt;/P&gt;&lt;P&gt;' ' 'MSICHTAUSW-KZSEL(02)' 'X',&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '5004',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=SP02',&lt;/P&gt;&lt;P&gt;' ' 'MAKT-MAKTX' is_data-mat_desc,&lt;/P&gt;&lt;P&gt;' ' 'MARA-MEINS' is_data-base_uom,&lt;/P&gt;&lt;P&gt;' ' 'MARA-MATKL' is_data-matl_group,&lt;/P&gt;&lt;P&gt;' ' 'MARA-BISMT' is_data-old_matno,&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '5004',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=BU',&lt;/P&gt;&lt;P&gt;' ' 'MARA-ZEINR' is_data-document.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING: 'X' 'SAPLMGMM' '0060',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;' ' 'RMMG1-MBRSH' is_data-ind_sec,&lt;/P&gt;&lt;P&gt;' ' 'RMMG1-MTART' is_data-mat_type,&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '0070',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=ENTR',&lt;/P&gt;&lt;P&gt;' ' 'MSICHTAUSW-KZSEL(01)' 'X',&lt;/P&gt;&lt;P&gt;'X' 'SAPLMGMM' '5004',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=BU',&lt;/P&gt;&lt;P&gt;' ' 'MAKT-MAKTX' is_data-mat_desc,&lt;/P&gt;&lt;P&gt;' ' 'MARA-MEINS' is_data-base_uom,&lt;/P&gt;&lt;P&gt;' ' 'MARA-MATKL' is_data-matl_group,&lt;/P&gt;&lt;P&gt;' ' 'MARA-BISMT' is_data-old_matno.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;tcode = 'MM01'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = bdc_tab&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;internal_error = 1&lt;/P&gt;&lt;P&gt;not_open = 2&lt;/P&gt;&lt;P&gt;queue_error = 3&lt;/P&gt;&lt;P&gt;tcode_invalid = 4&lt;/P&gt;&lt;P&gt;printing_invalid = 5&lt;/P&gt;&lt;P&gt;posting_invalid = 6&lt;/P&gt;&lt;P&gt;OTHERS = 7.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;refresh bdc_tab.&lt;/P&gt;&lt;P&gt;clear is_data.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " bdc_processing&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form dynpro&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_0270 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_0271 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_0272 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM dynpro USING dynbegin name value.&lt;/P&gt;&lt;P&gt;CLEAR bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;MOVE: name TO bdc_tab-program,&lt;/P&gt;&lt;P&gt;value TO bdc_tab-dynpro,&lt;/P&gt;&lt;P&gt;'X' TO bdc_tab-dynbegin.&lt;/P&gt;&lt;P&gt;APPEND bdc_tab.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;MOVE name TO bdc_tab-fnam.&lt;/P&gt;&lt;P&gt;MOVE value TO bdc_tab-fval.&lt;/P&gt;&lt;P&gt;APPEND bdc_tab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " dynpro&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form bdc_closegroup&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_closegroup .&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;not_open = 1&lt;/P&gt;&lt;P&gt;queue_error = 2&lt;/P&gt;&lt;P&gt;OTHERS = 3.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " bdc_closegroup&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Padmam.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2007 10:59:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389243#M531173</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-19T10:59:17Z</dc:date>
    </item>
    <item>
      <title>Re: bdc</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389244#M531174</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;you can upload data using GUI_UPLOAD function module.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;sathish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2007 11:00:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389244#M531174</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-19T11:00:09Z</dc:date>
    </item>
    <item>
      <title>Re: bdc</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389245#M531175</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi  ... here is the steps to  learn BDC program  by your self &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Learning BDC Programming &lt;/P&gt;&lt;P&gt;I want to learn how to upload data using BDC. If I have a excel data file how will upload it using BDC. I don't know the full process of doing it, if someone help me in this. I want it using BDC session process and processing that session. I was trying to upload material master other day. But could not follow the process of uploading using BDC though I know LSMW.  Please explain me the BDC process in details with examples. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For a BDC upload you need to write a program which created BDC sessions. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Steps: &lt;/P&gt;&lt;P&gt;1. Work out the transaction you would use to create the data manually. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Use transaction SHDB to record the creation of one material master data. &lt;/P&gt;&lt;P&gt;    Click the New recording button or the Menu - Recording - Create &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Save the recording, and then go back a screen and go to the overview. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. Select the recording and click on Edit - Create Program. Give the program a Z name, and select transfer from recording. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;5. Edit the program. You will see that all the data you entered is hard-coded into the program. You need to make the following changes: &lt;/P&gt;&lt;P&gt;5.1 After the start-of-selection, Call ws_upload to upload the file (the excel file needs to be saved as TAB separated). &lt;/P&gt;&lt;P&gt;5.2 After the open-group, Loop on the uploaded data. For each line, perform validation checks on the data, then modify the perform bdc_field commands to use the file data. &lt;/P&gt;&lt;P&gt;5.3. After perform bdc_transaction, add the endloop. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Execute the program. It will have options to create a batch session or to process directly. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;These are all my finds . Might be it will be useful to you. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Direct call of transactions, session handling: &lt;/P&gt;&lt;P&gt;[code]/nxxxx This terminates the current transaction, and starts transaction xxxx &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/n This terminates the transaction. This generally corresponds to pressing F15 to go back. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/nend This termiantes all separate sessions and logs off (corresponds to System - Logoff). &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/nex This terminates all separate sessions and logs off immediately (without any warning!). &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/oxxxx This opens a new session and starts transaction xxxx in This session. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/o This lists existing sessions and allows deletion or opening of a new session. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/i This terminates the current session (corresponds to System End &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/i1, /i2,... This terminates the session with the number given. &lt;/P&gt;&lt;P&gt; [/code] &lt;/P&gt;&lt;P&gt;.xyzw Fast path: 'xyzw' refers to the underlined letters in the menus. This type of navigation is uncommon and is provided more for emergencies (such as a defective mouse). &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;Batch &lt;/P&gt;&lt;P&gt;The following commands can be entered in correction mode ('Process in foreground' or 'Display errors only') when processing a batch input session: &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;[code]/n This terminates the current batch input transaction and characterizes it as &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/bdel This deletes the current batch input transaction. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/bend This terminates batch input processing and sets the session to Failed &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/bda This switches from Display errors only to Process in foreground &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/bde This switches from Process in foreground to Display errors only &lt;/P&gt;&lt;P&gt; [/code] &lt;/P&gt;&lt;P&gt;ABAP/4 &lt;/P&gt;&lt;P&gt;/h This switches into debugging mode. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/hs This switches into debugging mode and activates the debugging of system functions. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;Buffer &lt;/P&gt;&lt;P&gt;WARNING: Resetting buffers can significantly change the performance of the entire system for a long time. &lt;/P&gt;&lt;P&gt;It should therefore only be used where there is a good reason tdso. As of release 3.0B system administator authorization is required (authorization object (S_ADMI_FCD). The action is noted in the system log. &lt;/P&gt;&lt;P&gt; [code] &lt;/P&gt;&lt;P&gt;/$SYNC This resets all buffers of the application server &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/$CUA This resets the CUA buffer of the application server &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/$TAB This resets the TABLE buffers of the application server &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/$NAM This resets the nametab buffer of the application server &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;/$DYNP This resets the screen buffer of the application server[/code] &lt;/P&gt;&lt;P&gt;reward points if it is usefull ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Girish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2007 11:00:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389245#M531175</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-19T11:00:31Z</dc:date>
    </item>
    <item>
      <title>Re: bdc</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389246#M531176</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi , here is the  sample program of &amp;lt;b&amp;gt;table control bdc ...&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT Y730_BDC5 .
*HANDLING TABLE CONTROL IN BDC
DATA : BEGIN OF IT_DUMMY OCCURS 0,
       DUMMY(100) TYPE C,
       END OF IT_DUMMY.
DATA : BEGIN OF IT_XK01 OCCURS 0,
       LIFNR(10) TYPE C,
       BUKRS(4)  TYPE C,
       EKORG(4)  TYPE C,
       KTOKK(4)  TYPE C,
       NAME1(30) TYPE C,
       SORTL(10) TYPE C,
       LAND1(3)  TYPE C,
       SPRAS(2)  TYPE C,
       AKONT(6)  TYPE C,
       FDGRV(2)  TYPE C,
       WAERS(3)  TYPE C,
       END OF IT_XK01,
       BEGIN OF IT_BANK OCCURS 0,
       BANKS(3)  TYPE C,
       BANKL(10) TYPE C,
       BANKN(10) TYPE C,
       KOINH(30) TYPE C,
       LIFNR(10) TYPE C,
       END OF IT_BANK.
DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
       IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.

CALL FUNCTION 'WS_UPLOAD'
 EXPORTING
   FILENAME                      = 'C:VENDOR.TXT'
   FILETYPE                      = 'ASC'
 TABLES
   DATA_TAB                      = IT_DUMMY.

LOOP AT IT_DUMMY.
  IF IT_DUMMY-DUMMY+0(2) = '11'.
    IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).
    IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).
    IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).
    IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).
    IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).
    IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).
    IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).
    IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).
    IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).
    IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).
    IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).
    APPEND IT_XK01.
  ELSE.
    IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).
    IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).
    IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).
    IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).
    IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).
    APPEND IT_BANK.
  ENDIF.
ENDLOOP.

LOOP AT IT_XK01.
REFRESH IT_BDCDATA.
perform bdc_dynpro      using 'SAPMF02K' '0100'.
perform bdc_field       using 'BDC_CURSOR'
                              'RF02K-REF_LIFNR'.
perform bdc_field       using 'BDC_OKCODE'
                              '/00'.
perform bdc_field       using 'RF02K-LIFNR'
                              IT_XK01-LIFNR.
perform bdc_field       using 'RF02K-BUKRS'
                              IT_XK01-BUKRS.
perform bdc_field       using 'RF02K-EKORG'
                              IT_XK01-EKORG.
perform bdc_field       using 'RF02K-KTOKK'
                              IT_XK01-KTOKK.
perform bdc_dynpro      using 'SAPMF02K' '0110'.
perform bdc_field       using 'BDC_CURSOR'
                              'LFA1-TELX1'.
perform bdc_field       using 'BDC_OKCODE'
                              '/00'.
perform bdc_field       using 'LFA1-NAME1'
                              IT_XK01-NAME1.
perform bdc_field       using 'LFA1-SORTL'
                              IT_XK01-SORTL.
perform bdc_field       using 'LFA1-LAND1'
                              IT_XK01-LAND1.
perform bdc_field       using 'LFA1-SPRAS'
                              IT_XK01-SPRAS.
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-KOINH(02)'.
perform bdc_field       using 'BDC_OKCODE'
                              '=ENTR'.
DATA : FNAM(20) TYPE C,
       IDX      TYPE C.
  MOVE 1 TO IDX.
LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.
  CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.
  perform bdc_field       using FNAM
                                IT_BANK-BANKS.

  CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.
  perform bdc_field       using FNAM
                                IT_BANK-BANKL.

  CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.
  perform bdc_field       using FNAM
                                IT_BANK-BANKN.

  CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.
  perform bdc_field       using FNAM
                                IT_BANK-KOINH.
  IDX = IDX + 1.
ENDLOOP.

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-FDGRV'.
perform bdc_field       using 'BDC_OKCODE'
                              '/00'.
perform bdc_field       using 'LFB1-AKONT'
                              IT_XK01-AKONT.
perform bdc_field       using 'LFB1-FDGRV'
                              IT_XK01-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_XK01-WAERS.
perform bdc_dynpro      using 'SAPMF02K' '0320'.
perform bdc_field       using 'BDC_CURSOR'
                              'WYT3-PARVW(01)'.
perform bdc_field       using 'BDC_OKCODE'
                              '=ENTR'.
perform bdc_dynpro      using 'SAPLSPO1' '0300'.
perform bdc_field       using 'BDC_OKCODE'
                              '=YES'.
CALL TRANSACTION 'XK01' USING IT_BDCDATA
                        MODE  'A'
                       UPDATE 'S'
                     MESSAGES INTO IT_BDCMSGCOLL.
ENDLOOP.

FORM BDC_DYNPRO USING PROG SCR.
  CLEAR IT_BDCDATA.
  IT_BDCDATA-PROGRAM = PROG.
  IT_BDCDATA-DYNPRO  = SCR.
  IT_BDCDATA-DYNBEGIN = 'X'.
  APPEND IT_BDCDATA.
ENDFORM.

FORM BDC_FIELD USING FNAM FVAL.
  CLEAR IT_BDCDATA.
  IT_BDCDATA-FNAM = FNAM.
  IT_BDCDATA-FVAL  = FVAL.
  APPEND IT_BDCDATA.
ENDFORM.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward points if it is usefull ...&lt;/P&gt;&lt;P&gt;Girish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2007 11:01:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389246#M531176</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-19T11:01:24Z</dc:date>
    </item>
    <item>
      <title>Re: bdc</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389247#M531177</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mageshvaran,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If u r using R/3 system there are fms like TEXT_CONVERT_XLS_TO_SAP that uplaod the data directly from excel file.&lt;/P&gt;&lt;P&gt;You use this file as input for your bdc.&lt;/P&gt;&lt;P&gt;For that u need to go to SHDB and upload a test data . The transaction SHDB exacly trasfers it into technical names for that t-code.&lt;/P&gt;&lt;P&gt;Convert that recording into program and give ur file as input.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and Regards,&lt;/P&gt;&lt;P&gt;Saurabh Chhatre&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2007 11:01:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2389247#M531177</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-19T11:01:42Z</dc:date>
    </item>
  </channel>
</rss>

