<?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 program in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/2453384#M549956</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;first u need to create a recording and then code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a sample code&lt;/P&gt;&lt;P&gt;&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;Program : ZMM_BDCP_VENDOR_AS01 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Title : BDC for vendor Data Upload *&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;REPORT zmm_bdcp_customer_as01&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 Program for data declarations and subroutines&lt;/P&gt;&lt;P&gt;INCLUDE zsd_incl_vendor_as01.&lt;/P&gt;&lt;P&gt;&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;START-OF-SELECTION *&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;&lt;/P&gt;&lt;P&gt;*-----Uploading a file from the PC to the server&lt;/P&gt;&lt;P&gt;PERFORM data_upload .&lt;/P&gt;&lt;P&gt;*-----Loop for all records&lt;/P&gt;&lt;P&gt;LOOP AT it_struc1 INTO x_struc1.&lt;/P&gt;&lt;P&gt;*-----Filling the fields&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc USING : 'X' 'SAPMF02K' '0100',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;' ' 'RF02K-LIFNR' x_struc1-lifnr,&lt;/P&gt;&lt;P&gt;' ' 'RF02K-KTOKK' x_struc1-ktokk,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPMF02K' '0110',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;' ' 'LFA1-ANRED' x_struc1-anred,&lt;/P&gt;&lt;P&gt;' ' 'LFA1-NAME1' x_struc1-name1,&lt;/P&gt;&lt;P&gt;' ' 'LFA1-SORTL' x_struc1-sortl,&lt;/P&gt;&lt;P&gt;' ' 'LFA1-LAND1' x_struc1-land1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPMF02K' '0120',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPMF02K' '0130',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=ENTR',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPLSPO1' '0300',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=YES'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Start new transaction according to parameters&lt;/P&gt;&lt;P&gt;PERFORM bdc_transaction USING 'XK01'.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&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;END-OF-SELECTION *&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;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Printing all success messages&lt;/P&gt;&lt;P&gt;IF it_messtab1 IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;WRITE:/ 'SUCCESS MESSAGES'.&lt;/P&gt;&lt;P&gt;LOOP AT it_messtab1 INTO x_messtab1.&lt;/P&gt;&lt;P&gt;WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; x_messtab1-mstring.&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;SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Printing all error messages&lt;/P&gt;&lt;P&gt;IF it_messtab2 IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;WRITE:/ 'ERROR MESSAGES'.&lt;/P&gt;&lt;P&gt;LOOP AT it_messtab2 INTO x_messtab2.&lt;/P&gt;&lt;P&gt;CHECK x_messtab2-msgtyp = 'E'.&lt;/P&gt;&lt;P&gt;WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; x_messtab2-mstring.&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;*-----Close batch input session&lt;/P&gt;&lt;P&gt;PERFORM close_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Include's Coding&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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;Program : ZSD_INCL_VENDOR_AS01 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Title : Include for ZSD_BDCP_VENDOR_AS01 *&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;&lt;/P&gt;&lt;P&gt;*-----Table declaration&lt;/P&gt;&lt;P&gt;TABLES: t100.&lt;/P&gt;&lt;P&gt;&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;Data definition&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;*-----Types Declaration&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF x_struc1,&lt;/P&gt;&lt;P&gt;lifnr TYPE rf02k-lifnr, "Vendor Account Number&lt;/P&gt;&lt;P&gt;ktokk TYPE rf02k-ktokk, "Vendor account group&lt;/P&gt;&lt;P&gt;anred TYPE lfa1-anred, "Title&lt;/P&gt;&lt;P&gt;name1 TYPE lfa1-name1, "Name 1&lt;/P&gt;&lt;P&gt;sortl TYPE lfa1-sortl, "Sort field&lt;/P&gt;&lt;P&gt;land1 TYPE lfa1-land1, "Country Key&lt;/P&gt;&lt;P&gt;END OF x_struc1,&lt;/P&gt;&lt;P&gt;BEGIN OF x_struc2,&lt;/P&gt;&lt;P&gt;msgtyp TYPE bdcmsgcoll-msgtyp,"Message Type&lt;/P&gt;&lt;P&gt;mstring TYPE string, "Message Text&lt;/P&gt;&lt;P&gt;END OF x_struc2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Internal table declaration&lt;/P&gt;&lt;P&gt;DATA : it_messtab TYPE TABLE OF bdcmsgcoll,&lt;/P&gt;&lt;P&gt;it_messtab1 TYPE TABLE OF x_struc2,&lt;/P&gt;&lt;P&gt;it_messtab2 TYPE TABLE OF x_struc2,&lt;/P&gt;&lt;P&gt;it_bdcdata TYPE TABLE OF bdcdata,&lt;/P&gt;&lt;P&gt;it_struc1 TYPE TABLE OF x_struc1,&lt;/P&gt;&lt;P&gt;*-----Work area declaration&lt;/P&gt;&lt;P&gt;x_bdcdata TYPE bdcdata,&lt;/P&gt;&lt;P&gt;x_struc1 TYPE x_struc1,&lt;/P&gt;&lt;P&gt;x_messtab TYPE bdcmsgcoll,&lt;/P&gt;&lt;P&gt;x_messtab1 TYPE x_struc2,&lt;/P&gt;&lt;P&gt;x_messtab2 TYPE x_struc2,&lt;/P&gt;&lt;P&gt;*-----flags declaration&lt;/P&gt;&lt;P&gt;fg_group_opened(1) TYPE c,&lt;/P&gt;&lt;P&gt;fg_e_group_opened TYPE c,&lt;/P&gt;&lt;P&gt;*-----local variable declaration&lt;/P&gt;&lt;P&gt;v_subrc TYPE sy-subrc,&lt;/P&gt;&lt;P&gt;v_mstring TYPE string,&lt;/P&gt;&lt;P&gt;v_fname TYPE string.&lt;/P&gt;&lt;P&gt;&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;SELECTION-SCREEN declaration *&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;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;PARAMETERS p_sesion RADIOBUTTON GROUP rb_c.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 3(20) text-s07 FOR FIELD p_sesion.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 45.&lt;/P&gt;&lt;P&gt;PARAMETERS p_ctu RADIOBUTTON GROUP rb_c.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 48(20) text-s08 FOR FIELD p_ctu.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 3(20) text-s01 FOR FIELD p_group.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 25.&lt;/P&gt;&lt;P&gt;PARAMETERS p_group(12).&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 48(20) text-s05 FOR FIELD p_ctumod.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 70.&lt;/P&gt;&lt;P&gt;PARAMETERS p_ctumod TYPE ctu_params-dismode DEFAULT 'N'.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 3(20) text-s03 FOR FIELD px_keep.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 25.&lt;/P&gt;&lt;P&gt;PARAMETERS: px_keep AS CHECKBOX.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 48(20) text-s09 FOR FIELD p_e_grp.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 70.&lt;/P&gt;&lt;P&gt;PARAMETERS p_e_grp(12).&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 51(17) text-s03 FOR FIELD px_e_kep.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 70.&lt;/P&gt;&lt;P&gt;PARAMETERS: px_e_kep AS CHECKBOX.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 3(20) text-s11 FOR FIELD p_fname.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 25.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_fname(128) TYPE c.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&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;AT SELECTION-SCREEN *&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;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Group must be filled for create session&lt;/P&gt;&lt;P&gt;IF p_sesion = 'X' AND&lt;/P&gt;&lt;P&gt;p_group = space.&lt;/P&gt;&lt;P&gt;MESSAGE e613(ms).&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&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;AT SELECTION-SCREEN ON VALUE-REQUEST *&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;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Calling function for selecting the local 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_fname.&lt;/P&gt;&lt;P&gt;v_fname = p_fname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="---------------------" /&gt;FORM open_group--&lt;HR originaltext="------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM open_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Open batchinput group&lt;/P&gt;&lt;P&gt;IF p_sesion = 'X'.&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 = p_group&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;P&gt;keep = px_keep.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "OPEN_GROUP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="------------------" /&gt;FORM close_group--&lt;HR originaltext="--------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM close_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Close batch input session&lt;/P&gt;&lt;P&gt;IF p_sesion = 'X'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;WRITE: /(30) text-001.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;IF fg_e_group_opened = 'X'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;WRITE: /.&lt;/P&gt;&lt;P&gt;WRITE: /(30) 'Error session created'(i01).&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "CLOSE_GROUP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="---------" /&gt;FORM bdc_transaction USING tcode TYPE any--&lt;HR originaltext="----------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_transaction USING tcode TYPE any.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Batch input session&lt;/P&gt;&lt;P&gt;IF p_sesion = 'X'.&lt;/P&gt;&lt;P&gt;IF fg_group_opened = ' '.&lt;/P&gt;&lt;P&gt;*-----Open batch input session for adding transactions&lt;/P&gt;&lt;P&gt;PERFORM open_group.&lt;/P&gt;&lt;P&gt;fg_group_opened = 'X'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;*-----Insert batch input transactions in batch input session&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;tcode = tcode&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = it_bdcdata.&lt;/P&gt;&lt;P&gt;WRITE: / 'INSERT SUCCESSFULL'.&lt;/P&gt;&lt;P&gt;*-----Call transaction&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;REFRESH it_messtab.&lt;/P&gt;&lt;P&gt;CALL TRANSACTION tcode USING it_bdcdata&lt;/P&gt;&lt;P&gt;MODE p_ctumod&lt;/P&gt;&lt;P&gt;MESSAGES INTO it_messtab.&lt;/P&gt;&lt;P&gt;v_subrc = sy-subrc.&lt;/P&gt;&lt;P&gt;LOOP AT it_messtab INTO x_messtab.&lt;/P&gt;&lt;P&gt;SELECT SINGLE * FROM t100 WHERE sprsl = x_messtab-msgspra&lt;/P&gt;&lt;P&gt;AND arbgb = x_messtab-msgid&lt;/P&gt;&lt;P&gt;AND msgnr = x_messtab-msgnr.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;v_mstring = t100-text.&lt;/P&gt;&lt;P&gt;IF v_mstring CS '&amp;amp;1'.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;1' WITH x_messtab-msgv1 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;2' WITH x_messtab-msgv2 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;3' WITH x_messtab-msgv3 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;4' WITH x_messtab-msgv4 INTO v_mstring.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;' WITH x_messtab-msgv1 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;' WITH x_messtab-msgv2 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;' WITH x_messtab-msgv3 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;' WITH x_messtab-msgv4 INTO v_mstring.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CONDENSE v_mstring.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Determining of messages&lt;/P&gt;&lt;P&gt;CASE x_messtab-msgtyp.&lt;/P&gt;&lt;P&gt;WHEN 'S'.&lt;/P&gt;&lt;P&gt;x_messtab1-msgtyp = x_messtab-msgtyp.&lt;/P&gt;&lt;P&gt;x_messtab1-mstring = v_mstring.&lt;/P&gt;&lt;P&gt;APPEND x_messtab1 TO it_messtab1.&lt;/P&gt;&lt;P&gt;WHEN 'E'.&lt;/P&gt;&lt;P&gt;x_messtab2-msgtyp = x_messtab-msgtyp.&lt;/P&gt;&lt;P&gt;x_messtab2-mstring = v_mstring.&lt;/P&gt;&lt;P&gt;APPEND x_messtab2 TO it_messtab2.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;WRITE: / x_messtab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF v_subrc &amp;lt;&amp;gt; 0 AND p_e_grp &amp;lt;&amp;gt; space.&lt;/P&gt;&lt;P&gt;IF fg_e_group_opened = ' '.&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 = p_e_grp&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;P&gt;keep = px_e_kep.&lt;/P&gt;&lt;P&gt;fg_e_group_opened = 'X'.&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 = tcode&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = it_bdcdata.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;REFRESH it_bdcdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "BDC_TRANSACTION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="---------------------" /&gt;FORM fill_bdc--&lt;HR originaltext="--------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fill_bdc USING value(l_dynbegin) TYPE any&lt;/P&gt;&lt;P&gt;value(l_fname) TYPE any&lt;/P&gt;&lt;P&gt;value(l_value) TYPE any.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR : x_bdcdata.&lt;/P&gt;&lt;P&gt;IF l_dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;x_bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;x_bdcdata-program = l_fname.&lt;/P&gt;&lt;P&gt;x_bdcdata-dynpro = l_value.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;x_bdcdata-fnam = l_fname.&lt;/P&gt;&lt;P&gt;x_bdcdata-fval = l_value.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;APPEND x_bdcdata TO it_bdcdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " fill_bdc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="------------------------" /&gt;FORM data_upload--&lt;HR originaltext="--------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM data_upload .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----loading a file from the PC to the server&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename = v_fname&lt;/P&gt;&lt;P&gt;has_field_separator = 'X'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = it_struc1&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;file_open_error = 1&lt;/P&gt;&lt;P&gt;file_read_error = 2&lt;/P&gt;&lt;P&gt;no_batch = 3&lt;/P&gt;&lt;P&gt;gui_refuse_filetransfer = 4&lt;/P&gt;&lt;P&gt;invalid_type = 5&lt;/P&gt;&lt;P&gt;no_authority = 6&lt;/P&gt;&lt;P&gt;unknown_error = 7&lt;/P&gt;&lt;P&gt;bad_data_format = 8&lt;/P&gt;&lt;P&gt;header_not_allowed = 9&lt;/P&gt;&lt;P&gt;separator_not_allowed = 10&lt;/P&gt;&lt;P&gt;header_too_long = 11&lt;/P&gt;&lt;P&gt;unknown_dp_error = 12&lt;/P&gt;&lt;P&gt;access_denied = 13&lt;/P&gt;&lt;P&gt;dp_out_of_memory = 14&lt;/P&gt;&lt;P&gt;disk_full = 15&lt;/P&gt;&lt;P&gt;dp_timeout = 16&lt;/P&gt;&lt;P&gt;OTHERS = 17.&lt;/P&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;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " data_upload&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward if useful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Ashu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 27 Jun 2007 11:31:05 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-06-27T11:31:05Z</dc:date>
    <item>
      <title>bdc program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/2453383#M549955</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi to all  &lt;/P&gt;&lt;P&gt;my querry isas follows &lt;/P&gt;&lt;P&gt;develop a bdc program  to change customer details(like address )  and add more contact persons for that customer using call tran  method . pls give coding . &lt;/P&gt;&lt;P&gt; points will rewarded for good answers .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Jun 2007 11:26:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/2453383#M549955</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-27T11:26:51Z</dc:date>
    </item>
    <item>
      <title>Re: bdc program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/2453384#M549956</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;first u need to create a recording and then code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a sample code&lt;/P&gt;&lt;P&gt;&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;Program : ZMM_BDCP_VENDOR_AS01 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Title : BDC for vendor Data Upload *&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;REPORT zmm_bdcp_customer_as01&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 Program for data declarations and subroutines&lt;/P&gt;&lt;P&gt;INCLUDE zsd_incl_vendor_as01.&lt;/P&gt;&lt;P&gt;&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;START-OF-SELECTION *&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;&lt;/P&gt;&lt;P&gt;*-----Uploading a file from the PC to the server&lt;/P&gt;&lt;P&gt;PERFORM data_upload .&lt;/P&gt;&lt;P&gt;*-----Loop for all records&lt;/P&gt;&lt;P&gt;LOOP AT it_struc1 INTO x_struc1.&lt;/P&gt;&lt;P&gt;*-----Filling the fields&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc USING : 'X' 'SAPMF02K' '0100',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;' ' 'RF02K-LIFNR' x_struc1-lifnr,&lt;/P&gt;&lt;P&gt;' ' 'RF02K-KTOKK' x_struc1-ktokk,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPMF02K' '0110',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;' ' 'LFA1-ANRED' x_struc1-anred,&lt;/P&gt;&lt;P&gt;' ' 'LFA1-NAME1' x_struc1-name1,&lt;/P&gt;&lt;P&gt;' ' 'LFA1-SORTL' x_struc1-sortl,&lt;/P&gt;&lt;P&gt;' ' 'LFA1-LAND1' x_struc1-land1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPMF02K' '0120',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPMF02K' '0130',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=ENTR',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPLSPO1' '0300',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=YES'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Start new transaction according to parameters&lt;/P&gt;&lt;P&gt;PERFORM bdc_transaction USING 'XK01'.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&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;END-OF-SELECTION *&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;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Printing all success messages&lt;/P&gt;&lt;P&gt;IF it_messtab1 IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;WRITE:/ 'SUCCESS MESSAGES'.&lt;/P&gt;&lt;P&gt;LOOP AT it_messtab1 INTO x_messtab1.&lt;/P&gt;&lt;P&gt;WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; x_messtab1-mstring.&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;SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Printing all error messages&lt;/P&gt;&lt;P&gt;IF it_messtab2 IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;WRITE:/ 'ERROR MESSAGES'.&lt;/P&gt;&lt;P&gt;LOOP AT it_messtab2 INTO x_messtab2.&lt;/P&gt;&lt;P&gt;CHECK x_messtab2-msgtyp = 'E'.&lt;/P&gt;&lt;P&gt;WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; x_messtab2-mstring.&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;*-----Close batch input session&lt;/P&gt;&lt;P&gt;PERFORM close_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Include's Coding&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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;Program : ZSD_INCL_VENDOR_AS01 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Title : Include for ZSD_BDCP_VENDOR_AS01 *&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;&lt;/P&gt;&lt;P&gt;*-----Table declaration&lt;/P&gt;&lt;P&gt;TABLES: t100.&lt;/P&gt;&lt;P&gt;&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;Data definition&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;*-----Types Declaration&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF x_struc1,&lt;/P&gt;&lt;P&gt;lifnr TYPE rf02k-lifnr, "Vendor Account Number&lt;/P&gt;&lt;P&gt;ktokk TYPE rf02k-ktokk, "Vendor account group&lt;/P&gt;&lt;P&gt;anred TYPE lfa1-anred, "Title&lt;/P&gt;&lt;P&gt;name1 TYPE lfa1-name1, "Name 1&lt;/P&gt;&lt;P&gt;sortl TYPE lfa1-sortl, "Sort field&lt;/P&gt;&lt;P&gt;land1 TYPE lfa1-land1, "Country Key&lt;/P&gt;&lt;P&gt;END OF x_struc1,&lt;/P&gt;&lt;P&gt;BEGIN OF x_struc2,&lt;/P&gt;&lt;P&gt;msgtyp TYPE bdcmsgcoll-msgtyp,"Message Type&lt;/P&gt;&lt;P&gt;mstring TYPE string, "Message Text&lt;/P&gt;&lt;P&gt;END OF x_struc2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Internal table declaration&lt;/P&gt;&lt;P&gt;DATA : it_messtab TYPE TABLE OF bdcmsgcoll,&lt;/P&gt;&lt;P&gt;it_messtab1 TYPE TABLE OF x_struc2,&lt;/P&gt;&lt;P&gt;it_messtab2 TYPE TABLE OF x_struc2,&lt;/P&gt;&lt;P&gt;it_bdcdata TYPE TABLE OF bdcdata,&lt;/P&gt;&lt;P&gt;it_struc1 TYPE TABLE OF x_struc1,&lt;/P&gt;&lt;P&gt;*-----Work area declaration&lt;/P&gt;&lt;P&gt;x_bdcdata TYPE bdcdata,&lt;/P&gt;&lt;P&gt;x_struc1 TYPE x_struc1,&lt;/P&gt;&lt;P&gt;x_messtab TYPE bdcmsgcoll,&lt;/P&gt;&lt;P&gt;x_messtab1 TYPE x_struc2,&lt;/P&gt;&lt;P&gt;x_messtab2 TYPE x_struc2,&lt;/P&gt;&lt;P&gt;*-----flags declaration&lt;/P&gt;&lt;P&gt;fg_group_opened(1) TYPE c,&lt;/P&gt;&lt;P&gt;fg_e_group_opened TYPE c,&lt;/P&gt;&lt;P&gt;*-----local variable declaration&lt;/P&gt;&lt;P&gt;v_subrc TYPE sy-subrc,&lt;/P&gt;&lt;P&gt;v_mstring TYPE string,&lt;/P&gt;&lt;P&gt;v_fname TYPE string.&lt;/P&gt;&lt;P&gt;&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;SELECTION-SCREEN declaration *&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;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;PARAMETERS p_sesion RADIOBUTTON GROUP rb_c.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 3(20) text-s07 FOR FIELD p_sesion.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 45.&lt;/P&gt;&lt;P&gt;PARAMETERS p_ctu RADIOBUTTON GROUP rb_c.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 48(20) text-s08 FOR FIELD p_ctu.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 3(20) text-s01 FOR FIELD p_group.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 25.&lt;/P&gt;&lt;P&gt;PARAMETERS p_group(12).&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 48(20) text-s05 FOR FIELD p_ctumod.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 70.&lt;/P&gt;&lt;P&gt;PARAMETERS p_ctumod TYPE ctu_params-dismode DEFAULT 'N'.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 3(20) text-s03 FOR FIELD px_keep.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 25.&lt;/P&gt;&lt;P&gt;PARAMETERS: px_keep AS CHECKBOX.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 48(20) text-s09 FOR FIELD p_e_grp.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 70.&lt;/P&gt;&lt;P&gt;PARAMETERS p_e_grp(12).&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 51(17) text-s03 FOR FIELD px_e_kep.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 70.&lt;/P&gt;&lt;P&gt;PARAMETERS: px_e_kep AS CHECKBOX.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 3(20) text-s11 FOR FIELD p_fname.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN POSITION 25.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_fname(128) TYPE c.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&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;AT SELECTION-SCREEN *&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;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Group must be filled for create session&lt;/P&gt;&lt;P&gt;IF p_sesion = 'X' AND&lt;/P&gt;&lt;P&gt;p_group = space.&lt;/P&gt;&lt;P&gt;MESSAGE e613(ms).&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&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;AT SELECTION-SCREEN ON VALUE-REQUEST *&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;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Calling function for selecting the local 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_fname.&lt;/P&gt;&lt;P&gt;v_fname = p_fname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="---------------------" /&gt;FORM open_group--&lt;HR originaltext="------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM open_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Open batchinput group&lt;/P&gt;&lt;P&gt;IF p_sesion = 'X'.&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 = p_group&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;P&gt;keep = px_keep.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "OPEN_GROUP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="------------------" /&gt;FORM close_group--&lt;HR originaltext="--------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM close_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Close batch input session&lt;/P&gt;&lt;P&gt;IF p_sesion = 'X'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;WRITE: /(30) text-001.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;IF fg_e_group_opened = 'X'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;WRITE: /.&lt;/P&gt;&lt;P&gt;WRITE: /(30) 'Error session created'(i01).&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "CLOSE_GROUP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="---------" /&gt;FORM bdc_transaction USING tcode TYPE any--&lt;HR originaltext="----------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_transaction USING tcode TYPE any.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Batch input session&lt;/P&gt;&lt;P&gt;IF p_sesion = 'X'.&lt;/P&gt;&lt;P&gt;IF fg_group_opened = ' '.&lt;/P&gt;&lt;P&gt;*-----Open batch input session for adding transactions&lt;/P&gt;&lt;P&gt;PERFORM open_group.&lt;/P&gt;&lt;P&gt;fg_group_opened = 'X'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;*-----Insert batch input transactions in batch input session&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;tcode = tcode&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = it_bdcdata.&lt;/P&gt;&lt;P&gt;WRITE: / 'INSERT SUCCESSFULL'.&lt;/P&gt;&lt;P&gt;*-----Call transaction&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;REFRESH it_messtab.&lt;/P&gt;&lt;P&gt;CALL TRANSACTION tcode USING it_bdcdata&lt;/P&gt;&lt;P&gt;MODE p_ctumod&lt;/P&gt;&lt;P&gt;MESSAGES INTO it_messtab.&lt;/P&gt;&lt;P&gt;v_subrc = sy-subrc.&lt;/P&gt;&lt;P&gt;LOOP AT it_messtab INTO x_messtab.&lt;/P&gt;&lt;P&gt;SELECT SINGLE * FROM t100 WHERE sprsl = x_messtab-msgspra&lt;/P&gt;&lt;P&gt;AND arbgb = x_messtab-msgid&lt;/P&gt;&lt;P&gt;AND msgnr = x_messtab-msgnr.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;v_mstring = t100-text.&lt;/P&gt;&lt;P&gt;IF v_mstring CS '&amp;amp;1'.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;1' WITH x_messtab-msgv1 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;2' WITH x_messtab-msgv2 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;3' WITH x_messtab-msgv3 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;4' WITH x_messtab-msgv4 INTO v_mstring.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;' WITH x_messtab-msgv1 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;' WITH x_messtab-msgv2 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;' WITH x_messtab-msgv3 INTO v_mstring.&lt;/P&gt;&lt;P&gt;REPLACE '&amp;amp;' WITH x_messtab-msgv4 INTO v_mstring.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CONDENSE v_mstring.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Determining of messages&lt;/P&gt;&lt;P&gt;CASE x_messtab-msgtyp.&lt;/P&gt;&lt;P&gt;WHEN 'S'.&lt;/P&gt;&lt;P&gt;x_messtab1-msgtyp = x_messtab-msgtyp.&lt;/P&gt;&lt;P&gt;x_messtab1-mstring = v_mstring.&lt;/P&gt;&lt;P&gt;APPEND x_messtab1 TO it_messtab1.&lt;/P&gt;&lt;P&gt;WHEN 'E'.&lt;/P&gt;&lt;P&gt;x_messtab2-msgtyp = x_messtab-msgtyp.&lt;/P&gt;&lt;P&gt;x_messtab2-mstring = v_mstring.&lt;/P&gt;&lt;P&gt;APPEND x_messtab2 TO it_messtab2.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;WRITE: / x_messtab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF v_subrc &amp;lt;&amp;gt; 0 AND p_e_grp &amp;lt;&amp;gt; space.&lt;/P&gt;&lt;P&gt;IF fg_e_group_opened = ' '.&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 = p_e_grp&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;P&gt;keep = px_e_kep.&lt;/P&gt;&lt;P&gt;fg_e_group_opened = 'X'.&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 = tcode&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = it_bdcdata.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;REFRESH it_bdcdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "BDC_TRANSACTION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="---------------------" /&gt;FORM fill_bdc--&lt;HR originaltext="--------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fill_bdc USING value(l_dynbegin) TYPE any&lt;/P&gt;&lt;P&gt;value(l_fname) TYPE any&lt;/P&gt;&lt;P&gt;value(l_value) TYPE any.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR : x_bdcdata.&lt;/P&gt;&lt;P&gt;IF l_dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;x_bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;x_bdcdata-program = l_fname.&lt;/P&gt;&lt;P&gt;x_bdcdata-dynpro = l_value.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;x_bdcdata-fnam = l_fname.&lt;/P&gt;&lt;P&gt;x_bdcdata-fval = l_value.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;APPEND x_bdcdata TO it_bdcdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " fill_bdc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="------------------------" /&gt;FORM data_upload--&lt;HR originaltext="--------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM data_upload .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----loading a file from the PC to the server&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename = v_fname&lt;/P&gt;&lt;P&gt;has_field_separator = 'X'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = it_struc1&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;file_open_error = 1&lt;/P&gt;&lt;P&gt;file_read_error = 2&lt;/P&gt;&lt;P&gt;no_batch = 3&lt;/P&gt;&lt;P&gt;gui_refuse_filetransfer = 4&lt;/P&gt;&lt;P&gt;invalid_type = 5&lt;/P&gt;&lt;P&gt;no_authority = 6&lt;/P&gt;&lt;P&gt;unknown_error = 7&lt;/P&gt;&lt;P&gt;bad_data_format = 8&lt;/P&gt;&lt;P&gt;header_not_allowed = 9&lt;/P&gt;&lt;P&gt;separator_not_allowed = 10&lt;/P&gt;&lt;P&gt;header_too_long = 11&lt;/P&gt;&lt;P&gt;unknown_dp_error = 12&lt;/P&gt;&lt;P&gt;access_denied = 13&lt;/P&gt;&lt;P&gt;dp_out_of_memory = 14&lt;/P&gt;&lt;P&gt;disk_full = 15&lt;/P&gt;&lt;P&gt;dp_timeout = 16&lt;/P&gt;&lt;P&gt;OTHERS = 17.&lt;/P&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;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " data_upload&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward if useful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Ashu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Jun 2007 11:31:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/2453384#M549956</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-27T11:31:05Z</dc:date>
    </item>
    <item>
      <title>Re: bdc program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/2453385#M549957</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Have you even attempted to do this yourself? Perhaps you should try first and post specific threads when you run into problems.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Award points if helpful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Jun 2007 11:31:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/2453385#M549957</guid>
      <dc:creator>former_member378318</dc:creator>
      <dc:date>2007-06-27T11:31:33Z</dc:date>
    </item>
    <item>
      <title>Re: bdc program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/2453386#M549958</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;refer this code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZSYSTEM LINE-SIZE 255.&lt;/P&gt;&lt;P&gt;TABLES: T100.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Batch-input data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF G_BDCDATA OCCURS 100.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE BDCDATA.&lt;/P&gt;&lt;P&gt;DATA: END OF G_BDCDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: G_MESSAGE(200). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM FILL_BDCDATA.&lt;/P&gt;&lt;P&gt;CALL TRANSACTION 'FI01'  USING G_BDCDATA  MODE 'N'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;of course it is nicer with a message itab, but this example&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;should also demostrate the use of system variables.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE * FROM T100 WHERE&lt;/P&gt;&lt;P&gt;                SPRSL = 'E'&lt;/P&gt;&lt;P&gt;            AND ARBGB = SY-MSGID&lt;/P&gt;&lt;P&gt;            AND MSGNR = SY-MSGNO.&lt;/P&gt;&lt;P&gt;G_MESSAGE = T100-TEXT. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM REPLACE_PARAMETERS  USING     SY-MSGV1&lt;/P&gt;&lt;P&gt;                                      SY-MSGV2&lt;/P&gt;&lt;P&gt;                                      SY-MSGV3&lt;/P&gt;&lt;P&gt;                                      SY-MSGV4&lt;/P&gt;&lt;P&gt;                            CHANGING  G_MESSAGE. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE: / 'System variables:'.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;WRITE: / '        Sy-msgty:', SY-MSGTY.&lt;/P&gt;&lt;P&gt;WRITE: / '        Sy-msgid:', SY-MSGID.&lt;/P&gt;&lt;P&gt;WRITE: / '        Sy-msgno:', SY-MSGNO.&lt;/P&gt;&lt;P&gt;WRITE: / '        Sy-msgv1:', SY-MSGV1.&lt;/P&gt;&lt;P&gt;WRITE: / '        Sy-msgv2:', SY-MSGV2.&lt;/P&gt;&lt;P&gt;WRITE: / '        Sy-msgv3:', SY-MSGV3.&lt;/P&gt;&lt;P&gt;WRITE: / '        Sy-msgv4:', SY-MSGV4.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;WRITE: / 'The transaction was called with a wrong country code.'.&lt;/P&gt;&lt;P&gt;WRITE: / 'The error message should be either that or that you have'.&lt;/P&gt;&lt;P&gt;WRITE: / '  no authorisation to execute the transaction'.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;WRITE: / 'Message:'.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;WRITE: / SY-MSGTY, G_MESSAGE. &lt;/P&gt;&lt;P&gt;&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;      Build up the BDC-table                                        *&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 FILL_BDCDATA.&lt;/P&gt;&lt;P&gt;  REFRESH G_BDCDATA. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO USING 'SAPMF02B' '0100'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD USING 'BNKA-BANKS' 'ZZZ'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD USING 'BDC_OKCODE' 'QQQQQ'. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. &lt;/P&gt;&lt;P&gt;&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;      FORM BDC_DYNPRO                                               *&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;      Batchinput: Start new Dynpro                                  *&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_DYNPRO USING P_PROGRAM P_DYNPRO.&lt;/P&gt;&lt;P&gt;  CLEAR G_BDCDATA.&lt;/P&gt;&lt;P&gt;  G_BDCDATA-PROGRAM = P_PROGRAM.&lt;/P&gt;&lt;P&gt;  G_BDCDATA-DYNPRO = P_DYNPRO.&lt;/P&gt;&lt;P&gt;  G_BDCDATA-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND G_BDCDATA.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BDC_DYNPRO &lt;/P&gt;&lt;P&gt;&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;      FORM BDC_FIELD                                                *&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;      Batchinput: Feld hinzufugen                                   *&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_FIELD USING P_FNAM P_FVAL.&lt;/P&gt;&lt;P&gt;  CLEAR G_BDCDATA.&lt;/P&gt;&lt;P&gt;  G_BDCDATA-FNAM = P_FNAM.&lt;/P&gt;&lt;P&gt;  G_BDCDATA-FVAL = P_FVAL.&lt;/P&gt;&lt;P&gt;  APPEND G_BDCDATA.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BDC_FIELD&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;      FORM REPLACE_PARAMETERS                                       *&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;      ........                                                      *&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_PAR_1                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_PAR_2                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_PAR_3                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_PAR_4                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_MESSAGE                                                     *&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 REPLACE_PARAMETERS  USING    P_PAR_1&lt;/P&gt;&lt;P&gt;                                  P_PAR_2&lt;/P&gt;&lt;P&gt;                                  P_PAR_3&lt;/P&gt;&lt;P&gt;                                  P_PAR_4&lt;/P&gt;&lt;P&gt;                         CHANGING P_MESSAGE. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;erst mal pruefen, ob numerierte Parameter verwendet wurden&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;    REPLACE '&amp;amp;1' WITH P_PAR_1 INTO P_MESSAGE.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;    REPLACE '&amp;amp;2' WITH P_PAR_2 INTO P_MESSAGE.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;    REPLACE '&amp;amp;3' WITH P_PAR_3 INTO P_MESSAGE.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;    REPLACE '&amp;amp;4' WITH P_PAR_4 INTO P_MESSAGE.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;falls keine numerierten Parameter vorh., ersetzen wie gehabt&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  REPLACE '&amp;amp;' WITH P_PAR_1 INTO P_MESSAGE.&lt;/P&gt;&lt;P&gt;  CONDENSE P_MESSAGE.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;    REPLACE '&amp;amp;' WITH P_PAR_2 INTO P_MESSAGE.&lt;/P&gt;&lt;P&gt;    CONDENSE P_MESSAGE.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;      REPLACE '&amp;amp;' WITH P_PAR_3 INTO P_MESSAGE.&lt;/P&gt;&lt;P&gt;      CONDENSE P_MESSAGE.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;        REPLACE '&amp;amp;' WITH P_PAR_4 INTO P_MESSAGE.&lt;/P&gt;&lt;P&gt;        CONDENSE P_MESSAGE.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               "replace_parameters&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward all helpfull answers.&lt;/P&gt;&lt;P&gt;Regards.&lt;/P&gt;&lt;P&gt;Jay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Jun 2007 11:34:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/2453386#M549958</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-27T11:34:38Z</dc:date>
    </item>
  </channel>
</rss>

