<?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: sample BDC code in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688782#M621944</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi muraly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check the code below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;...........................................................&lt;/P&gt;&lt;P&gt;*: Description :&lt;/P&gt;&lt;P&gt;*: -&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt; :&lt;/P&gt;&lt;P&gt;*: This is a simple example program to get data from an excel :&lt;/P&gt;&lt;P&gt;*: file and store it in an internal table. :&lt;/P&gt;&lt;P&gt;*: :&lt;/P&gt;&lt;P&gt;*: :&lt;/P&gt;&lt;P&gt;*: SAP Version : 4.7 :&lt;/P&gt;&lt;P&gt;*:............................................................:&lt;/P&gt;&lt;P&gt;REPORT zupload_excel_to_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: truxs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_file TYPE rlgrap-filename.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_datatab,&lt;/P&gt;&lt;P&gt;col1(30) TYPE c,&lt;/P&gt;&lt;P&gt;col2(30) TYPE c,&lt;/P&gt;&lt;P&gt;col3(30) TYPE c,&lt;/P&gt;&lt;P&gt;END OF t_datatab.&lt;/P&gt;&lt;P&gt;DATA: it_datatab type standard table of t_datatab,&lt;/P&gt;&lt;P&gt;wa_datatab type t_datatab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_raw TYPE truxs_t_text_data.&lt;/P&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;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;field_name = 'P_FILE'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;file_name = p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;*START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_FIELD_SEPERATOR =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_line_header = 'X'&lt;/P&gt;&lt;P&gt;i_tab_raw_data = it_raw " WORK TABLE&lt;/P&gt;&lt;P&gt;i_filename = p_file&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;i_tab_converted_data = it_datatab[] "ACTUAL DATA&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;conversion_failed = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&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;&lt;/P&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;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;LOOP AT it_datatab INTO wa_datatab.&lt;/P&gt;&lt;P&gt;WRITE:/ wa_datatab-col1,&lt;/P&gt;&lt;P&gt;wa_datatab-col2,&lt;/P&gt;&lt;P&gt;wa_datatab-col3.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;bhaskar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 10 Aug 2007 06:00:09 GMT</pubDate>
    <dc:creator>former_member189596</dc:creator>
    <dc:date>2007-08-10T06:00:09Z</dc:date>
    <item>
      <title>sample BDC code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688781#M621943</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any one can please send a sample &amp;lt;b&amp;gt;BDC code in direct input method and session method.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;you can send your views to 'muraly.g@gmail.com'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-Muraly&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 09 Aug 2007 15:24:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688781#M621943</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-09T15:24:06Z</dc:date>
    </item>
    <item>
      <title>Re: sample BDC code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688782#M621944</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi muraly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check the code below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;...........................................................&lt;/P&gt;&lt;P&gt;*: Description :&lt;/P&gt;&lt;P&gt;*: -&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt; :&lt;/P&gt;&lt;P&gt;*: This is a simple example program to get data from an excel :&lt;/P&gt;&lt;P&gt;*: file and store it in an internal table. :&lt;/P&gt;&lt;P&gt;*: :&lt;/P&gt;&lt;P&gt;*: :&lt;/P&gt;&lt;P&gt;*: SAP Version : 4.7 :&lt;/P&gt;&lt;P&gt;*:............................................................:&lt;/P&gt;&lt;P&gt;REPORT zupload_excel_to_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: truxs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_file TYPE rlgrap-filename.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_datatab,&lt;/P&gt;&lt;P&gt;col1(30) TYPE c,&lt;/P&gt;&lt;P&gt;col2(30) TYPE c,&lt;/P&gt;&lt;P&gt;col3(30) TYPE c,&lt;/P&gt;&lt;P&gt;END OF t_datatab.&lt;/P&gt;&lt;P&gt;DATA: it_datatab type standard table of t_datatab,&lt;/P&gt;&lt;P&gt;wa_datatab type t_datatab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_raw TYPE truxs_t_text_data.&lt;/P&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;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;field_name = 'P_FILE'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;file_name = p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;*START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_FIELD_SEPERATOR =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_line_header = 'X'&lt;/P&gt;&lt;P&gt;i_tab_raw_data = it_raw " WORK TABLE&lt;/P&gt;&lt;P&gt;i_filename = p_file&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;i_tab_converted_data = it_datatab[] "ACTUAL DATA&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;conversion_failed = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&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;&lt;/P&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;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;LOOP AT it_datatab INTO wa_datatab.&lt;/P&gt;&lt;P&gt;WRITE:/ wa_datatab-col1,&lt;/P&gt;&lt;P&gt;wa_datatab-col2,&lt;/P&gt;&lt;P&gt;wa_datatab-col3.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;bhaskar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Aug 2007 06:00:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688782#M621944</guid>
      <dc:creator>former_member189596</dc:creator>
      <dc:date>2007-08-10T06:00:09Z</dc:date>
    </item>
    <item>
      <title>Re: sample BDC code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688783#M621945</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Muraly,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;BDC:&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;Batch Data Communication (BDC) is the process of transferring data from one SAP System to another SAP system or from a non-SAP system to SAP System.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Features :&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;BDC is an automatic procedure.&lt;/P&gt;&lt;P&gt;This method is used to transfer large amount of data that is available in electronic medium.&lt;/P&gt;&lt;P&gt;BDC can be used primarily when installing the SAP system and when transferring data from a legacy system (external system).&lt;/P&gt;&lt;P&gt;BDC uses normal transaction codes to transfer data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Types of BDC :&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;CLASSICAL BATCH INPUT (Session Method)&lt;/P&gt;&lt;P&gt;CALL TRANSACTION &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;BATCH INPUT METHOD:&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;This method is also called as &amp;#145;CLASSICAL METHOD&amp;#146;.&lt;/P&gt;&lt;P&gt;Features:&lt;/P&gt;&lt;P&gt;Asynchronous processing. &lt;/P&gt;&lt;P&gt;Synchronous Processing in database update.&lt;/P&gt;&lt;P&gt;Transfer data for more than one transaction.&lt;/P&gt;&lt;P&gt;Batch input processing log will be generated.&lt;/P&gt;&lt;P&gt;During processing, no transaction is started until the previous transaction has been written to the database.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;CALL TRANSACTION METHOD :&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;This is another method to transfer data from the legacy system.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Features:&lt;/P&gt;&lt;P&gt;Synchronous processing. The system performs a database commit immediately before and after the CALL TRANSACTION USING statement.&lt;/P&gt;&lt;P&gt;Updating the database can be either synchronous or asynchronous. The program specifies the update type.&lt;/P&gt;&lt;P&gt;Transfer data for a single transaction.&lt;/P&gt;&lt;P&gt;Transfers data for a sequence of dialog screens.&lt;/P&gt;&lt;P&gt;No batch input processing log is generated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Differences between Call Transaction and Sessions Method:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Session method.&amp;lt;/b&amp;gt; &lt;/P&gt;&lt;P&gt;1) synchronous processing. &lt;/P&gt;&lt;P&gt;2) can tranfer large amount of data. &lt;/P&gt;&lt;P&gt;3) processing is slower. &lt;/P&gt;&lt;P&gt;4) error log is created &lt;/P&gt;&lt;P&gt;5) data is not updated until session is processed. &lt;/P&gt;&lt;P&gt;6) generally used for back ground jobs.&lt;/P&gt;&lt;P&gt;7) at atime we can update to more than one screens.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Call transaction.&amp;lt;/b&amp;gt; &lt;/P&gt;&lt;P&gt;1) asynchronous processing &lt;/P&gt;&lt;P&gt;2) can transfer small amount of data &lt;/P&gt;&lt;P&gt;3) processing is faster. &lt;/P&gt;&lt;P&gt;4) errors need to be handled explicitly &lt;/P&gt;&lt;P&gt;5) data is updated automatically &lt;/P&gt;&lt;P&gt;6) for background n fore ground jobs.&lt;/P&gt;&lt;P&gt;7) at atime we can update to a single screen. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;For BDC:&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://myweb.dal.ca/hchinni/sap/bdc_home.htm" target="test_blank"&gt;http://myweb.dal.ca/hchinni/sap/bdc_home.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/bdc&amp;amp;" target="test_blank"&gt;https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/bdc&amp;amp;&lt;/A&gt;;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/learning-bdc-programming.htm" target="test_blank"&gt;http://www.sap-img.com/abap/learning-bdc-programming.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapdevelopment.co.uk/bdc/bdchome.htm" target="test_blank"&gt;http://www.sapdevelopment.co.uk/bdc/bdchome.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm" target="test_blank"&gt;http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_47x200/helpdata/en/69/c250684ba111d189750000e8322d00/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_47x200/helpdata/en/69/c250684ba111d189750000e8322d00/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapbrain.com/TUTORIALS/TECHNICAL/BDC_tutorial.html" target="test_blank"&gt;http://www.sapbrain.com/TUTORIALS/TECHNICAL/BDC_tutorial.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Check these link:&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm" target="test_blank"&gt;http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/question-about-bdc-program.htm" target="test_blank"&gt;http://www.sap-img.com/abap/question-about-bdc-program.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.itcserver.com/blog/2006/06/30/batch-input-vs-call-transaction/" target="test_blank"&gt;http://www.itcserver.com/blog/2006/06/30/batch-input-vs-call-transaction/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.planetsap.com/bdc_main_page.htm" target="test_blank"&gt;http://www.planetsap.com/bdc_main_page.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="2491514"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Sample BDC&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report ZABSALES_ORDER no standard page heading line-size 255.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: vbak, vbap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: messtab LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF SCREEN 500 AS WINDOW.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK salesblock WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS : Order_ty LIKE vbak-auart DEFAULT 'OR'&lt;/P&gt;&lt;P&gt;modif id SC1,&lt;/P&gt;&lt;P&gt;Customer LIKE kuagv-kunnr OBLIGATORY VALUE CHECK,&lt;/P&gt;&lt;P&gt;Purchase LIKE vbkd-bstkd OBLIGATORY VALUE CHECK,&lt;/P&gt;&lt;P&gt;Material LIKE vbap-matnr OBLIGATORY VALUE CHECK,&lt;/P&gt;&lt;P&gt;Quantity LIKE rv45a-kwmeng OBLIGATORY VALUE CHECK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK salesblock.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF SCREEN 500.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL SELECTION-SCREEN 500.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*At selection-screen on Order_ty.&lt;/P&gt;&lt;P&gt;*IF Order_ty &amp;lt;&amp;gt; 'OR'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE E080(ZVIKALP).&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMV45A' '0101'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'VBAK-AUART'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=UER1'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'VBAK-AUART'&lt;/P&gt;&lt;P&gt;Order_ty.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMV45A' '4001'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=SICH'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'VBKD-BSTKD'&lt;/P&gt;&lt;P&gt;Purchase.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'KUAGV-KUNNR'&lt;/P&gt;&lt;P&gt;Customer.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMSSY0' '0120'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'04/05'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'SICH'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RV45A-KETDAT'&lt;/P&gt;&lt;P&gt;'06-05-2005'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RV45A-KPRGBZ'&lt;/P&gt;&lt;P&gt;'D'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'VBKD-PRSDT'&lt;/P&gt;&lt;P&gt;'05-29-2005'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'RV45A-KWMENG(01)'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RV45A-MABNR(01)'&lt;/P&gt;&lt;P&gt;Material.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RV45A-KWMENG(01)'&lt;/P&gt;&lt;P&gt;Quantity.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPLSPO2' '0101'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=OPT1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL TRANSACTION 'VA01' USING bdcdata&lt;/P&gt;&lt;P&gt;MODE 'N'&lt;/P&gt;&lt;P&gt;UPDATE 'A'&lt;/P&gt;&lt;P&gt;MESSAGES INTO messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if messtab-msgtyp = 'S'.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 5.&lt;/P&gt;&lt;P&gt;elseif messtab-msgtyp = 'E'.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write: / messtab-msgtyp, messtab-msgnr.&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;AT SELECTION-SCREEN OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;IF SCREEN-GROUP1 = 'SC1'.&lt;/P&gt;&lt;P&gt;screen-input = 0.&lt;/P&gt;&lt;P&gt;MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;ENDIF.&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;&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 new 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;FORM BDC_DYNPRO USING PROGRAM DYNPRO.&lt;/P&gt;&lt;P&gt;CLEAR BDCDATA.&lt;/P&gt;&lt;P&gt;BDCDATA-PROGRAM = PROGRAM.&lt;/P&gt;&lt;P&gt;BDCDATA-DYNPRO = DYNPRO.&lt;/P&gt;&lt;P&gt;BDCDATA-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;APPEND BDCDATA.&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;Insert 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;P&gt;FORM BDC_FIELD USING FNAM FVAL.&lt;/P&gt;&lt;P&gt;IF FVAL &amp;lt;&amp;gt; ' '.&lt;/P&gt;&lt;P&gt;CLEAR BDCDATA.&lt;/P&gt;&lt;P&gt;BDCDATA-FNAM = FNAM.&lt;/P&gt;&lt;P&gt;BDCDATA-FVAL = FVAL.&lt;/P&gt;&lt;P&gt;APPEND BDCDATA.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********By session method&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report ZAB_PURCHASE no standard page heading line-size 255.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: ekko, ekpo, t100.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF T_MSG OCCURS 0.&lt;/P&gt;&lt;P&gt;INCLUDE STRUCTURE T100.&lt;/P&gt;&lt;P&gt;DATA: END OF T_MSG.&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;*SELECTION-SCREEN BEGIN OF SCREEN 500 AS WINDOW.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK salesblock WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS : Vendor like Ekko-lifnr OBLIGATORY,&lt;/P&gt;&lt;P&gt;Order_ty like RM06E-BSART obligatory,&lt;/P&gt;&lt;P&gt;Pur_org like ekko-ekorg obligatory value check,&lt;/P&gt;&lt;P&gt;Pur_grp like ekko-ekgrp obligatory value check,&lt;/P&gt;&lt;P&gt;Material like ekpo-ematn obligatory value check,&lt;/P&gt;&lt;P&gt;Quantity(13) type n,&lt;/P&gt;&lt;P&gt;Plant like ekpo-werks obligatory value check.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK salesblock.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN END OF SCREEN 500.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*CALL SELECTION-SCREEN 500.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;WRITE :/40 'Creating Purchase Order' COLOR 4 INTENSIFIED ON INVERSE ON&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 7 INVERSE ON.&lt;/P&gt;&lt;P&gt;WRITE :/1(20) 'Mesaage Type',&lt;/P&gt;&lt;P&gt;25(20) 'Message'.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&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;*perform open_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMM06E' '0100'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'EKKO-EKGRP'.&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 'EKKO-LIFNR'&lt;/P&gt;&lt;P&gt;Vendor.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RM06E-BSART'&lt;/P&gt;&lt;P&gt;Order_ty.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RM06E-BEDAT'&lt;/P&gt;&lt;P&gt;'05-30-2005'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'EKKO-EKORG'&lt;/P&gt;&lt;P&gt;Pur_org.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'EKKO-EKGRP'&lt;/P&gt;&lt;P&gt;Pur_grp.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RM06E-LPEIN'&lt;/P&gt;&lt;P&gt;'T'.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMM06E' '0120'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'EKPO-WERKS(01)'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=BU'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'EKPO-EMATN(01)'&lt;/P&gt;&lt;P&gt;Material.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'EKPO-MENGE(01)'&lt;/P&gt;&lt;P&gt;Quantity.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'EKPO-WERKS(01)'&lt;/P&gt;&lt;P&gt;Plant.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*perform bdc_transaction using 'ME21'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*CALL TRANSACTION 'ME21' USING BDCDATA&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MODE 'A'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;UPDATE 'A'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGES INTO MESSTAB.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DEST = FILLER8&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;GROUP = 'ZAP3'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HOLDDATE = FILLER8&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;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;QID =&lt;/P&gt;&lt;/LI&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;CLIENT_INVALID = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DESTINATION_INVALID = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;GROUP_INVALID = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;GROUP_IS_LOCKED = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HOLDDATE_INVALID = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INTERNAL_ERROR = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;QUEUE_ERROR = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;RUNNING = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SYSTEM_LOCK_ERROR = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;USER_INVALID = 10&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 11&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;CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;TCODE = 'ME21'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;POST_LOCAL = NOVBLOCAL&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PRINTING = NOPRINT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = BDCDATA&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;INTERNAL_ERROR = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NOT_OPEN = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;QUEUE_ERROR = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TCODE_INVALID = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PRINTING_INVALID = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;POSTING_INVALID = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 7&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;CALL FUNCTION 'BDC_CLOSE_GROUP'&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;NOT_OPEN = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;QUEUE_ERROR = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 3&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;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at messtab.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'FORMAT_MESSAGE'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;ID = messtab-MSGID&lt;/P&gt;&lt;P&gt;LANG = 'EN'&lt;/P&gt;&lt;P&gt;NO = messtab-msgnr&lt;/P&gt;&lt;P&gt;V1 = messtab-MSGV1&lt;/P&gt;&lt;P&gt;V2 = messtab-MSGV2&lt;/P&gt;&lt;P&gt;V3 = messtab-MSGV3&lt;/P&gt;&lt;P&gt;V4 = messtab-MSGV4&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;MSG = T_MSG&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;NOT_FOUND = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 2&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;if messtab-msgtyp = 'S'.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 5 inverse on.&lt;/P&gt;&lt;P&gt;elseif messtab-msgtyp = 'E'.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6 inverse on.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 3 inverse on.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;WRITE : /1(20) messtab-msgtyp ,&lt;/P&gt;&lt;P&gt;25(60) t_msg.&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;*perform close_group.&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 new 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;FORM BDC_DYNPRO USING PROGRAM DYNPRO.&lt;/P&gt;&lt;P&gt;CLEAR BDCDATA.&lt;/P&gt;&lt;P&gt;BDCDATA-PROGRAM = PROGRAM.&lt;/P&gt;&lt;P&gt;BDCDATA-DYNPRO = DYNPRO.&lt;/P&gt;&lt;P&gt;BDCDATA-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;APPEND BDCDATA.&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;Insert 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;P&gt;FORM BDC_FIELD USING FNAM FVAL.&lt;/P&gt;&lt;P&gt;IF FVAL &amp;lt;&amp;gt; ' '.&lt;/P&gt;&lt;P&gt;CLEAR BDCDATA.&lt;/P&gt;&lt;P&gt;BDCDATA-FNAM = FNAM.&lt;/P&gt;&lt;P&gt;BDCDATA-FVAL = FVAL.&lt;/P&gt;&lt;P&gt;APPEND BDCDATA.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Reward points if Useful&amp;lt;/b&amp;gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Gokul&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Aug 2007 09:14:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688783#M621945</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-10T09:14:34Z</dc:date>
    </item>
    <item>
      <title>Re: sample BDC code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688784#M621946</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;   REPORT zsdr_price_upload  MESSAGE-ID zsdr_bdc_vk11  LINE-SIZE 150&lt;/P&gt;&lt;P&gt; LINE-COUNT 75 .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;******Internal Table for Header Data.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF type_header,&lt;/P&gt;&lt;P&gt;        kschl LIKE konv-kschl,&lt;/P&gt;&lt;P&gt;        vkorg LIKE vbak-vkorg,&lt;/P&gt;&lt;P&gt;        vtweg LIKE komg-spart,&lt;/P&gt;&lt;P&gt;        matnr LIKE mvke-matnr,&lt;/P&gt;&lt;P&gt;        kbetr(11) TYPE c,&lt;/P&gt;&lt;P&gt;        datab(10) TYPE c,&lt;/P&gt;&lt;P&gt;        datbi(10) TYPE c,&lt;/P&gt;&lt;P&gt;        END OF type_header.&lt;/P&gt;&lt;P&gt;****Internal Table for Item Level.&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF type_item, &lt;/P&gt;&lt;P&gt;        kschl LIKE konv-kschl,&lt;/P&gt;&lt;P&gt;        vkorg LIKE vbak-vkorg,&lt;/P&gt;&lt;P&gt;        vtweg LIKE komg-spart,&lt;/P&gt;&lt;P&gt;        matnr LIKE mvke-matnr,&lt;/P&gt;&lt;P&gt;        kbetr(11)  TYPE c,&lt;/P&gt;&lt;P&gt;        datab(10) TYPE c,&lt;/P&gt;&lt;P&gt;        datbi(10) TYPE c,&lt;/P&gt;&lt;P&gt;       END OF type_item.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;******Error Table For not found in MVKE.&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF type_error ,&lt;/P&gt;&lt;P&gt;        kschl LIKE konv-kschl,&lt;/P&gt;&lt;P&gt;        vkorg LIKE vbak-vkorg,&lt;/P&gt;&lt;P&gt;        vtweg LIKE komg-spart,&lt;/P&gt;&lt;P&gt;        matnr LIKE mvke-matnr, &lt;/P&gt;&lt;P&gt;        kbetr LIKE konp-kbetr,&lt;/P&gt;&lt;P&gt;        datab(10) TYPE c,&lt;/P&gt;&lt;P&gt;        datbi(10) TYPE c,&lt;/P&gt;&lt;P&gt;        text(100) TYPE c,&lt;/P&gt;&lt;P&gt;        END OF type_error.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;****For error Messages&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF type_mtab,&lt;/P&gt;&lt;P&gt;        matnr   LIKE mara-matnr,&lt;/P&gt;&lt;P&gt;        msgtyp  LIKE bdcmsgcoll-msgtyp,&lt;/P&gt;&lt;P&gt;        msgid   LIKE bdcmsgcoll-msgid,&lt;/P&gt;&lt;P&gt;        msgnr   LIKE bdcmsgcoll-msgnr,&lt;/P&gt;&lt;P&gt;        text(100) TYPE c,&lt;/P&gt;&lt;P&gt;        END OF type_mtab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;****Internal Table&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF type_mvke,&lt;/P&gt;&lt;P&gt;       matnr LIKE mvke-matnr,&lt;/P&gt;&lt;P&gt;       vkorg LIKE mvke-vkorg,&lt;/P&gt;&lt;P&gt;       vtweg LIKE mvke-vtweg,&lt;/P&gt;&lt;P&gt;       END OF type_mvke.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;****Internal Table&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF type_tvkov,&lt;/P&gt;&lt;P&gt;        vkorg LIKE tvkov-vkorg,&lt;/P&gt;&lt;P&gt;        vtweg LIKE tvkov-vtweg,&lt;/P&gt;&lt;P&gt;        END OF type_tvkov.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Declaring Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;DATA : t_header TYPE STANDARD TABLE OF type_header,&lt;/P&gt;&lt;P&gt;       t_item TYPE STANDARD TABLE OF type_item,&lt;/P&gt;&lt;P&gt;       t_mvke TYPE STANDARD TABLE OF type_mvke,&lt;/P&gt;&lt;P&gt;       t_tvkov TYPE STANDARD TABLE OF type_tvkov,&lt;/P&gt;&lt;P&gt;       t_error TYPE STANDARD TABLE OF type_error,&lt;/P&gt;&lt;P&gt;       t_mtab TYPE STANDARD TABLE OF type_mtab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Work Area Declaration.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;DATA : wa_header LIKE LINE OF t_header,&lt;/P&gt;&lt;P&gt;       wa_item LIKE LINE OF t_item,&lt;/P&gt;&lt;P&gt;       wa_error LIKE LINE OF t_error,&lt;/P&gt;&lt;P&gt;       wa_mtab LIKE LINE OF t_mtab,&lt;/P&gt;&lt;P&gt;       wa_tvkov LIKE LINE OF t_tvkov,&lt;/P&gt;&lt;P&gt;       wa_mvke LIKE LINE OF t_mvke.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;Rows for Table with Excel Data&lt;/STRONG&gt;*******&lt;/P&gt;&lt;P&gt;DATA: t_xls_file LIKE alsmex_tabline OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;***Constant.&lt;/P&gt;&lt;P&gt;DATA : c_params LIKE ctu_params.&lt;/P&gt;&lt;P&gt;DATA : c_ans(1) TYPE c.&lt;/P&gt;&lt;P&gt;DATA : v_count(4) TYPE c. " To show No.of records&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;DATA :  bdctab LIKE bdcdata OCCURS 10 WITH HEADER LINE.      " BDCDATA&lt;/P&gt;&lt;P&gt;DATA :  tmess_mtab  LIKE  bdcmsgcoll OCCURS 10 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;**&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; SELECTION SCREEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&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_fname LIKE rlgrap-filename OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;END OF SELECTION SCREEN.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;DATA : repid LIKE sy-repid.&lt;/P&gt;&lt;P&gt;DATA : v_matnr(50) TYPE c, "used for line items&lt;/P&gt;&lt;P&gt;       v_kbetr(50) TYPE c, "used for line items&lt;/P&gt;&lt;P&gt;       v_dat1(50) TYPE c,  "used for line items&lt;/P&gt;&lt;P&gt;       v_dat(50) TYPE c.   "used for line items&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;DATA : v_lindx(5) TYPE n ,"index counter for first 14 records.&lt;/P&gt;&lt;P&gt;       v_lindx1(5) TYPE n  VALUE '01', "index counter for  13 records.&lt;/P&gt;&lt;P&gt;       v_item(5) TYPE c,  "To increment the line index&lt;/P&gt;&lt;P&gt;       v_pgedwn2  TYPE i . "For Pagedown Counter&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;DATA:  v_currentrow TYPE i.  "For Current Row&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;DATA  v_bdc(50) TYPE c." Text to apper in Confrim POPUP Window.&lt;/P&gt;&lt;P&gt; &lt;/P&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;AT SELECTION-SCREEN  ON VALUE-REQUEST FOR p_fname.&lt;/P&gt;&lt;P&gt;  PERFORM get_filename USING p_fname.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*************START-OF-SELECTION&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;******Values for Ctu_params to Transaction&lt;/P&gt;&lt;P&gt;  c_params-defsize = 'X'.&lt;/P&gt;&lt;P&gt;  c_params-dismode = 'N'.&lt;/P&gt;&lt;P&gt;  c_params-updmode = 'S'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;******Refresh&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  PERFORM f_refresh.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*********To upload File.&lt;/P&gt;&lt;P&gt;  PERFORM upload_file.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;****User Confrimation only BDC will Process&lt;/P&gt;&lt;P&gt;  IF c_ans = '1'.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;*** BDC Process.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM read_data.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    FORMAT COLOR 3 INTENSIFIED .&lt;/P&gt;&lt;P&gt;    WRITE:/ 'Selected not to Process the Upload'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;******On completion of  Process Refresh the Internal Table&lt;/P&gt;&lt;P&gt;  REFRESH :  t_xls_file,&lt;/P&gt;&lt;P&gt;               t_header,&lt;/P&gt;&lt;P&gt;               t_item,&lt;/P&gt;&lt;P&gt;               t_mvke,&lt;/P&gt;&lt;P&gt;               t_tvkov.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR :    t_xls_file,&lt;/P&gt;&lt;P&gt;             wa_header,&lt;/P&gt;&lt;P&gt;             wa_item,&lt;/P&gt;&lt;P&gt;             wa_mvke,&lt;/P&gt;&lt;P&gt;             wa_tvkov.&lt;/P&gt;&lt;P&gt;***************************************&lt;/P&gt;&lt;P&gt;***********Display Messages&lt;/P&gt;&lt;P&gt;  WRITE : /01 'Status',19 'Status Text'.&lt;/P&gt;&lt;P&gt;  WRITE  AT 0(150) sy-uline.&lt;/P&gt;&lt;P&gt;  LOOP AT t_mtab INTO wa_mtab.&lt;/P&gt;&lt;P&gt;    WRITE :/01 wa_mtab-msgtyp,19 wa_mtab-text.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  SKIP 2.&lt;/P&gt;&lt;P&gt;  SORT t_error BY matnr.&lt;/P&gt;&lt;P&gt;  WRITE  AT 0(150) sy-uline.&lt;/P&gt;&lt;P&gt;  WRITE 'ERROR MESSAGES'.&lt;/P&gt;&lt;P&gt;  WRITE  AT 0(150) sy-uline.&lt;/P&gt;&lt;P&gt;  WRITE :/01 'Material.No',20 'Status Text'.&lt;/P&gt;&lt;P&gt;  WRITE  AT 0(150) sy-uline.&lt;/P&gt;&lt;P&gt;  LOOP AT t_error INTO wa_error WHERE matnr NE ' '.&lt;/P&gt;&lt;P&gt;! &lt;/P&gt;&lt;P&gt;    WRITE:/01 wa_error-matnr,20 wa_error-text.&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;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  get_filename&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_FILENAME  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 get_filename USING    p_fname.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*****To read the file from Presentation Server&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'KD_GET_FILENAME_ON_F4'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;     program_name        =  repid&lt;/P&gt;&lt;P&gt;    dynpro_number      ! ; =   syst-dynnr&lt;/P&gt;&lt;P&gt;      field_name          = p_fname&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  STATIC              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    mask                = '*.XLS'&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      file_name           = p_fname&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   mask_too_long       = 1&lt;/P&gt;&lt;P&gt;   OTHERS              = 2&lt;/P&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;ENDFORM.                    " get_filename&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_file&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_file.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  DATA : frow VALUE 2 TYPE i,&lt;/P&gt;&lt;P&gt;         fcol VALUE 1 TYPE i,&lt;/P&gt;&lt;P&gt;         erow VALUE 10000 TYPE i,&lt;/P&gt;&lt;P&gt;         ecol VALUE 7  TYPE i,&lt;/P&gt;&lt;P&gt;         ecol1 VALUE 1 TYPE i,&lt;/P&gt;&lt;P&gt;         c_col1 TYPE i VALUE '0001',&lt;/P&gt;&lt;P&gt;         c_col2 TYPE i VALUE '0002',&lt;/P&gt;&lt;P&gt;         c_col3 TYPE i VALUE '0003',&lt;/P&gt;&lt;P&gt;       &amp;amp;nb! sp; c_col4 TYPE i VALUE '0004',&lt;/P&gt;&lt;P&gt;         c_col5 TYPE i VALUE '0005',&lt;/P&gt;&lt;P&gt;         c_col6 TYPE i VALUE '0006',&lt;/P&gt;&lt;P&gt;         c_col7 TYPE i VALUE '0007'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;***FM used to UPLOAD data from Flat file&lt;/P&gt;&lt;P&gt; &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                = p_fname&lt;/P&gt;&lt;P&gt;            i_begin_col             = fcol&lt;/P&gt;&lt;P&gt;            i_begin_row             = frow&lt;/P&gt;&lt;P&gt;            i_end_col               = ecol&lt;/P&gt;&lt;P&gt;            i_end_row               = erow&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            intern                  = t_xls_file&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; &lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e000.&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;****T_XLS_FILE is initial, stop the process &amp;amp; throw message&lt;/P&gt;&lt;P&gt;  IF t_xls_file[] IS INITIAL. &lt;/P&gt;&lt;P&gt;    FORMAT COLOR 6 ON INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;    WRITE:/ 'No Data  Exists '.&lt;/P&gt;&lt;P&gt;    FORMAT COLOR OFF INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;    STOP.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sort table by rows and colums&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SORT t_xls_file BY row col.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get first row retrieved&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    READ TABLE t_xls_file INDEX 1.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set first row retrieved to current row&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    v_currentrow = t_xls_file-row.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;**Loop  to move data in internal Table&lt;/P&gt;&lt;P&gt;    LOOP AT t_xls_file .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Reset values for next row&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF t_xls_file-row NE v_currentrow.&lt;/P&gt;&lt;P&gt;        APPEND wa_header TO t_header.&lt;/P&gt;&lt;P&gt;        CLEAR wa_header.&lt;/P&gt;&lt;P&gt;        v_currentrow = t_xls_file-row.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;      CASE t_xls_file-col.&lt;/P&gt;&lt;P&gt;        WHEN  c_col1.                              "Kschl&lt;/P&gt;&lt;P&gt;          wa_header-kschl = t_xls_file-value.&lt;/P&gt;&lt;P&gt;        WHEN c_col2.                              "Vkorg&lt;/P&gt;&lt;P&gt;          wa_header-vkorg = t_xls_file-value.&lt;/P&gt;&lt;P&gt;        WHEN c_col3.                              "vtweg&lt;/P&gt;&lt;P&gt;          wa_header-vtweg = t_xls_file-value.&lt;/P&gt;&lt;P&gt;        WHEN c_col4.                              "Matnr&lt;/P&gt;&lt;P&gt;          wa_header-matnr = t_xls_file-value.&lt;/P&gt;&lt;P&gt;        WHEN c_col5.                              "Kbetr&lt;/P&gt;&lt;P&gt;          wa_header-kbetr = t_xls_file-value.&lt;/P&gt;&lt;P&gt;        WHEN c_col6.                              "FROm&lt;/P&gt;&lt;P&gt;          wa_header-datab   = t_xls_file-value.&lt;/P&gt;&lt;P&gt;        WHEN c_col7.                              "TO&lt;/P&gt;&lt;P&gt;          wa_header-datbi   = t_xls_file-value.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    APPEND wa_header TO t_header.&lt;/P&gt;&lt;P&gt;    CLEAR wa_header.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;****To process the data&lt;/P&gt;&lt;P&gt;  PERFORM f_process.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " upload_file&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  READ_DATA&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 read_data.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;****To make Uniq Records in Header Level&lt;/P&gt;&lt;P&gt;  SORT t_header BY kschl vkorg vtweg.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM t_header COMPARING&lt;/P&gt;&lt;P&gt;                                   kschl vkorg vtweg .&lt;/P&gt;&lt;P&gt;  SORT t_item BY vkorg vtweg matnr.&lt;/P&gt;&lt;P&gt;  DATA : wa1_item TYPE type_item.&lt;/P&gt;&lt;P&gt;  DATA : l_cnt TYPE i.&lt;/P&gt;&lt;P&gt;  DATA : flag(1) TYPE c. "to process the Line item.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;***Looping Header Table.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  LOOP AT t_header INTO wa_header.&lt;/P&gt;&lt;P&gt;***************************************&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro      US! ING 'SAPMV13A' '0100'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'RV13A-KSCHL'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=ANTA'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'RV13A-KSCHL'&lt;/P&gt;&lt;P&gt;                                  wa_header-kschl.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro      USING 'SAPLV14A' '0100'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'RV130-SELKZ(03)'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=WEIT'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'RV130-SELKZ(03)'&lt;/P&gt;&lt;P&gt;                                  'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro      USING 'SAPMV13A' '1004'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'KOMG-VKORG'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'KOMG-VKORG'&lt;/P&gt;&lt;P&gt;                                   wa_header-vkorg.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'KOMG-VTWEG'&lt;/P&gt;&lt;P&gt;                                   wa_header-vtweg.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;****To handle Line Items.&lt;/P&gt;&lt;P&gt;    LOOP AT t_item INTO wa1_item WHERE vkorg = wa_header-vkorg AND&lt;/P&gt;&lt;P&gt;                                  vtweg = wa_header-vtweg.&lt;/P&gt;&lt;P&gt;      wa_item = wa1_item.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;******Flag Set only After processing  first 14 records .&lt;/P&gt;&lt;P&gt;      IF flag = ' '.&lt;/P&gt;&lt;P&gt;        v_lindx  = v_lindx + 01.&lt;/P&gt;&lt;P&gt;        SHIFT  v_lindx LEFT DELETING LEADING '0'.&lt;/P&gt;&lt;P&gt;        v_item  = v_lindx .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONCATENATE 'KOMG-MATNR(' v_item ')'  INTO v_matnr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        PERFORM bdc_field           USING v_matnr&lt;/P&gt;&lt;P&gt;                                      wa_item-matnr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONCATENATE 'KONP-KBETR(' v_item ')' INTO v_kbetr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING v_kbetr&lt;/P&gt;&lt;P&gt;                                      wa_item-kbetr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONCATENATE 'RV13A-DATAB(' v_item ')' INTO v_dat.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING  v_dat&lt;/P&gt;&lt;P&gt;                                      wa_item-datab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONCATENATE 'RV13A-DATBI(' v_item ')' INTO v_dat1.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING  v_dat1&lt;/P&gt;&lt;P&gt;                                      wa_item-datbi.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        IF  v_item = 14.&lt;/P&gt;&lt;P&gt;          flag = 'X'.&lt;/P&gt;&lt;P&gt; &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; &lt;/P&gt;&lt;P&gt;          PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                             '=P+'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;          PERFORM bdc_dynpro      USING 'SAPMV13A' '1004'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;          CLEAR v_lindx.&lt;/P&gt;&lt;P&gt;          CLEAR v_item.&lt;/P&gt;&lt;P&gt;          CONTINUE.&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; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;***Flag is Set  after Processing of 14 records.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="6" type="ul"&gt;&lt;P&gt;TO process rest of Records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;      IF flag = 'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        v_pgedwn2  = v_pgedwn2 + 1.&lt;/P&gt;&lt;P&gt;        v_lindx1  = v_lindx1 + 01.&lt;/P&gt;&lt;P&gt;        SHIFT  v_lindx1 LEFT DE! LETING LEADING '0'.&lt;/P&gt;&lt;P&gt;        v_item  = v_lindx1 .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONCATENATE 'KOMG-MATNR(' v_it! em ')'  INTO v_matnr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        PERFORM bdc_field           USING v_matnr&lt;/P&gt;&lt;P&gt;                                      wa_item-matnr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONCATENATE 'KONP-KBETR(' v_item ')' INTO v_kbetr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING v_kbetr&lt;/P&gt;&lt;P&gt;                                      wa_item-kbetr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONCATENATE 'RV13A-DATAB(' v_item ')' INTO v_dat.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING  v_dat&lt;/P&gt;&lt;P&gt;                                      wa_item-datab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONCATENATE 'RV13A-DATBI(' v_item ')' INTO v_dat1.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING  v_dat1&lt;/P&gt;&lt;P&gt;                                      wa_item-datbi.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        IF v_pgedwn2 = 13.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &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; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;          PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                             '=P+'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;          PERFORM bdc_dynpro      USING 'SAPMV13A' '1004'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;          v_pgedwn2 = 0.&lt;/P&gt;&lt;P&gt;          v_lindx1 = 1.&lt;/P&gt;&lt;P&gt;          CLEAR v_item.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;          CONTINUE.&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; &lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;    PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                               '=SICH'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="6" type="ul"&gt;&lt;P&gt;Calling Transaction after Processing All items.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;    CALL TRANSACTION 'VK11' USING bdctab&lt;/P&gt;&lt;P&gt;                       OPTIONS FROM c_params MESSAGES INTO tmess_mtab.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    REFRESH bdctab.&lt;/P&gt;&lt;P&gt;    CLEAR : bdctab.&lt;/P&gt;&lt;P&gt;    CLEAR : wa_item.&lt;/P&gt;&lt;P&gt;    CLEAR : wa1_item.&lt;/P&gt;&lt;P&gt;    CLEAR : wa_header.&lt;/P&gt;&lt;P&gt;    CLEAR : l_cnt.&lt;/P&gt;&lt;P&gt;    CLEAR : v_lindx1.&lt;/P&gt;&lt;P&gt;    CLEAR:  v_pgedwn2,v_lindx.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;    LOOP AT tmess_mtab .&lt;/P&gt;&lt;P&gt;      l_cnt =  l_cnt + 1.&lt;/P&gt;&lt;P&gt;      READ TABLE t_item INTO wa_item INDEX l_cnt .&lt;/P&gt;&lt;P&gt;! &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'MASS_MESSAGE_GET' "To get the Message Text&lt;/P&gt;&lt;P&gt;           EXPORTING&lt;/P&gt;&lt;P&gt;                arbgb             = tmess_mtab-msgid&lt;/P&gt;&lt;P&gt;                msgnr             = tmess_mtab-msgnr&lt;/P&gt;&lt;P&gt;                msgv1             = tmess_mtab-msgv1&lt;/P&gt;&lt;P&gt;                msgv2             = tmess_mtab-msgv2&lt;/P&gt;&lt;P&gt;                msgv3             = tmess_mtab-msgv3&lt;/P&gt;&lt;P&gt;                msgv4           !   = tmess_mtab-msgv4&lt;/P&gt;&lt;P&gt;           IMPORTING&lt;/P&gt;&lt;P&gt;                msgtext           = wa_mtab-text&lt;/P&gt;&lt;P&gt;           EXCEPTIONS&lt;/P&gt;&lt;P&gt;                message_not_found = 1&lt;/P&gt;&lt;P&gt;                OTHERS            = 2.&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;      wa_mtab-matnr   = wa_item-matnr.&lt;/P&gt;&lt;P&gt;      wa_mtab-msgtyp  = tmess_mtab-msgtyp.&lt;/P&gt;&lt;P&gt;      wa_mtab-msgid   = tmess_mtab-msgid.&lt;/P&gt;&lt;P&gt;      wa_mtab-msgn! r   = tmess_mtab-msgnr.&lt;/P&gt;&lt;P&gt;      APPEND wa_mtab TO t_mtab.&lt;/P&gt;&lt;P&gt;      CLEAR wa_mtab-text.&lt;/P&gt;&lt;P&gt;      CLEAR wa_item.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&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.                    " READ_DATA&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_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_0300   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0301   text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;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 new 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;FORM bdc_dynpro USING program dynpro.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR bdctab.&lt;/P&gt;&lt;P&gt;  bdctab-program  = program.&lt;/P&gt;&lt;P&gt;  bdctab-dynpro   = dynpro.&lt;/P&gt;&lt;P&gt;  bdctab-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND bdctab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " BDC_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_FIELD&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_0305   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_WA_HEADER_KSCHL  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;&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;       Insert 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;P&gt;FORM bdc_field USING fnam fval.&lt;/P&gt;&lt;P&gt;  CLEAR bdctab.&lt;/P&gt;&lt;P&gt;  bdctab-fnam = fnam.&lt;/P&gt;&lt;P&gt;  bdctab-fval = fval.&lt;/P&gt;&lt;P&gt;  APPEND bdctab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " BDC_FIELD&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_trc_ansaction&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_0527   text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&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  f_Process&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 f_process.&lt;/P&gt;&lt;P&gt;  DATA : l_todate(12) TYPE c,&lt;/P&gt;&lt;P&gt;         l_frdate(12) TYPE c.&lt;/P&gt;&lt;P&gt;***Select for all entries of material in Header "Flat File Materials".&lt;/P&gt;&lt;P&gt;  IF NOT t_header[] IS INITIAL.&lt;/P&gt;&lt;P&gt;   SELECT matnr vkorg vtweg FROM mvke INTO TABLE t_mvke FOR ALL ENTRIES&lt;/P&gt;&lt;P&gt;                           IN t_header WHERE matnr = t_header-matnr AND&lt;/P&gt;&lt;P&gt;                                             vkorg = t_header-vkorg AND&lt;/P&gt;&lt;P&gt;                                                 vtweg = t_header-vtweg.&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;*********select Sales.org &amp;amp; Dist.channel.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  IF NOT t_header[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT vkorg vtweg FROM tvkov INTO TABLE t_tvkov FOR ALL ENTRIES IN&lt;/P&gt;&lt;P&gt;                                t_header WHERE vkorg = t_header-vkorg&lt;/P&gt;&lt;P&gt;                                           AND vtweg = t_header-vtweg.&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; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;***Checking for material in Sales Master Table&lt;/P&gt;&lt;P&gt;  SORT t_mvke BY matnr vkorg vtweg.&lt;/P&gt;&lt;P&gt;  SORT t_tvkov BY vkorg vtweg.&lt;/P&gt;&lt;P&gt;  LOOP AT t_header INTO wa_header.&lt;/P&gt;&lt;P&gt;    READ TABLE t_mvke INTO wa_mvke WITH KEY matnr = wa_header-matnr&lt;/P&gt;&lt;P&gt;                                             vkorg = wa_header-vkorg&lt;/P&gt;&lt;P&gt;                                ! ;  vtweg = wa_header-vtweg BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      wa_error = wa_header.&lt;/P&gt;&lt;P&gt;    &amp;amp;nb! sp; MOVE text-011 TO  wa_error-text.&lt;/P&gt;&lt;P&gt;      APPEND wa_error TO t_error.&lt;/P&gt;&lt;P&gt;      DELETE TABLE t_header FROM wa_header.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;********Date Validations&lt;/P&gt;&lt;P&gt;      IF ( wa_header-datab  NE ' ! ;  '  AND  wa_header-datbi NE  '  ' ) .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        l_todate = wa_header-datab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        l_frdate = wa_header-datbi.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        REPLACE '.' INTO l_toda! te WITH ''.&lt;/P&gt;&lt;P&gt;        REPLACE '.' INTO l_todate WITH ''.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONDENSE l_todate NO-GAPS.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        REPLACE '.' INTO l_frdate WITH ''.&lt;/P&gt;&lt;P&gt;        REPLACE '.' INTO l_frdate WITH ''.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        CONDENSE l_frdate NO-GAPS.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;        IF l_frdate &amp;lt; l_todate.&lt;/P&gt;&lt;P&gt;          wa_error = wa_header .&lt;/P&gt;&lt;P&gt;          MOVE text-012 TO wa_error-text.&lt;/P&gt;&lt;P&gt;          APPEND wa_error TO t_error.&lt;/P&gt;&lt;P&gt;          DELETE TABLE t_header FROM wa_header.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        wa_error = wa_header .&lt;/P&gt;&lt;P&gt;        MOVE text-016 TO wa_error-text.&lt;/P&gt;&lt;P&gt;        APPEND wa_error TO t_error.&lt;/P&gt;&lt;P&gt;        DELETE TABLE t_header FROM wa_header.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;********Rate Validation.&lt;/P&gt;&lt;P&gt;    IF wa_header-kbetr = '   '.&lt;/P&gt;&lt;P&gt;      wa_error = wa_header .&lt;/P&gt;&lt;P&gt;      MOVE text-017 TO wa_error-text.&lt;/P&gt;&lt;P&gt;      APPEND wa_error TO t_error.&lt;/P&gt;&lt;P&gt;      DELETE TABLE t_header FROM wa_header.&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;    READ TABLE t_tvkov INTO wa_tvkov WITH KEY vkorg = wa_header-vkorg&lt;/P&gt;&lt;P&gt;                                               BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF sy-subrc  = 0.&lt;/P&gt;&lt;P&gt;      READ TABLE t_tvkov INTO wa_tvkov WITH KEY vtweg = wa_header-vtweg&lt;/P&gt;&lt;P&gt;                                                   BINARY SEARCH.&lt;/P&gt;&lt;P&gt;      IF sy-subrc  &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;        wa_error = wa_header.&lt;/P&gt;&lt;P&gt;        MOVE text-015 TO  wa_error-text.&lt;/P&gt;&lt;P&gt;        WRITE wa_header-vtweg TO wa_error-text+13(4).&lt;/P&gt;&lt;P&gt;        APPEND wa_error TO t_error.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      wa_error = wa_header.&lt;/P&gt;&lt;P&gt;      MOVE text-013 TO  wa_error-text.&lt;/P&gt;&lt;P&gt;      WRITE wa_header-vkorg TO wa_error-text+9(4).&lt;/P&gt;&lt;P&gt;      APPEND wa_error TO t_error.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CLEAR wa_header.&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;*****Deleting Duplicate Material  Form Header "Flat File Data".&lt;/P&gt;&lt;P&gt;  SORT t_header BY kschl vkorg vtweg matnr.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM t_header COMPARING&lt;/P&gt;&lt;P&gt;        kschl! vkorg vtweg matnr .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ****Data Moving from Header to Item Level.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  t_item[] = t_header[].&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*To count No.of records in Item Table.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE t_item  LINES v_count.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CONCATENATE text-014 ' ' v_count INTO  v_bdc.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;****Popup to get Confirmation from user to process BDC&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            titlebar       = 'Confirmation of File Data'&lt;/P&gt;&lt;P&gt;            text_question  = v_bdc&lt;/P&gt;&lt;P&gt;            text_button_1  = 'Confirm'&lt;/P&gt;&lt;P&gt;            text_button_2  = 'Cancel Run'&lt;/P&gt;&lt;P&gt;            default_button = '1'&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            answer         = c_ans.&lt;/P&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; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_Process&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  f_Refresh&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 f_refresh.&lt;/P&gt;&lt;P&gt;  REFRESH :  t_xls_file,&lt;/P&gt;&lt;P&gt;             t_header,&lt;/P&gt;&lt;P&gt;             t_item,&lt;/P&gt;&lt;P&gt;             t_mvke,&lt;/P&gt;&lt;P&gt;             t_tvkov,&lt;/P&gt;&lt;P&gt;             t_error,&lt;/P&gt;&lt;P&gt;             t_mtab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR :    t_xls_file,&lt;/P&gt;&lt;P&gt;             wa_header,&lt;/P&gt;&lt;P&gt;             wa_item,&lt;/P&gt;&lt;P&gt;             wa_mvke,&lt;/P&gt;&lt;P&gt;             wa_tvkov,&lt;/P&gt;&lt;P&gt;             wa_error,&lt;/P&gt;&lt;P&gt;             wa_mtab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_Refresh&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Aug 2007 09:17:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688784#M621946</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-10T09:17:28Z</dc:date>
    </item>
    <item>
      <title>Re: sample BDC code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688785#M621947</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&amp;lt;b&amp;gt;Transaction method&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report ZRKBDC1&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;DATA: BEGIN OF ITAB OCCURS 0,&lt;/P&gt;&lt;P&gt;       MATNR LIKE MARA-MATNR,&lt;/P&gt;&lt;P&gt;       MBRSH LIKE MARA-MBRSH,&lt;/P&gt;&lt;P&gt;       MTART LIKE MARA-MTART,&lt;/P&gt;&lt;P&gt;       MAKTX LIKE MAKT-MAKTX,&lt;/P&gt;&lt;P&gt;       MEINS LIKE MARA-MEINS,&lt;/P&gt;&lt;P&gt;     END OF ITAB.&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;&lt;/P&gt;&lt;P&gt;parameters: dataset(132) lower case.&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: MAKTX&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        MAKTX_005(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_006(003),&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_007(004),&lt;/P&gt;&lt;P&gt;      end of record.&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                      = 'D:\SAPPROGRAMS\BDC.TXT'&lt;/P&gt;&lt;P&gt;   FILETYPE                      = 'ASC'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  HAS_FIELD_SEPARATOR           = ' '&lt;/P&gt;&lt;/LI&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                      = ITAB&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;perform open_dataset using dataset.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform open_group.&lt;/P&gt;&lt;P&gt;&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 ITAB.&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;                              '=AUSW'.&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(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_field       using 'MSICHTAUSW-KZSEL(01)'&lt;/P&gt;&lt;P&gt;                              record-KZSEL_01_004.&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;                              '=BU'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'MAKT-MAKTX'&lt;/P&gt;&lt;P&gt;                              record-MAKTX_005.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'MARA-MEINS'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'MARA-MEINS'&lt;/P&gt;&lt;P&gt;                              record-MEINS_006.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'MARA-MTPOS_MARA'&lt;/P&gt;&lt;P&gt;                              record-MTPOS_MARA_007.&lt;/P&gt;&lt;P&gt;perform bdc_transaction using 'MM01'.&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;&lt;/P&gt;&lt;P&gt;&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;CALL TRANSACTION 'MM01' USING ITAB MODE 'A' UPDATE 'A'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;session method&amp;lt;/b&amp;gt;&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  ZSAG_BS                                                     *&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  ZSAG_BS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;********TABLES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES : MARA,MAKT .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*******INTERNAL TABLE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF ITAB OCCURS 0 ,&lt;/P&gt;&lt;P&gt;MATNR LIKE MARA-MATNR,&lt;/P&gt;&lt;P&gt;MBRSH LIKE MARA-MBRSH,&lt;/P&gt;&lt;P&gt;MTART  LIKE MARA-MTART ,&lt;/P&gt;&lt;P&gt;MAKTX LIKE MAKT-MAKTX,&lt;/P&gt;&lt;P&gt;MEINS LIKE MARA-MEINS ,&lt;/P&gt;&lt;P&gt;END OF ITAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BDCTAB LIKE BDCDATA OCCURS 0 WITH HEADER LINE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;********WS_UPLOAD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;P&gt;   FILENAME                      = 'C:\DAT1.TXT'&lt;/P&gt;&lt;P&gt;   FILETYPE                      = 'DAT'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                      = ITAB .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;****************BDC_OPEN_GROUP&lt;/P&gt;&lt;P&gt;&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                     = 'CHANDU'&lt;/P&gt;&lt;P&gt;   KEEP                      = 'X'&lt;/P&gt;&lt;P&gt;   USER                      =  SY-UNAME&lt;/P&gt;&lt;P&gt;   PROG                      = SY-CPROG .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT ITAB .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   REFRESH  BDCTAB .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*********FIRST SCREEN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-PROGRAM = 'SAPLMGMM'.&lt;/P&gt;&lt;P&gt;BDCTAB-DYNPRO =  '0060'.&lt;/P&gt;&lt;P&gt;BDCTAB-DYNBEGIN   = 'X' .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-FNAM = 'RMMG1-MATNR' .&lt;/P&gt;&lt;P&gt;BDCTAB-FVAL = ITAB-MATNR .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-FNAM = 'RMMG1-MBRSH' .&lt;/P&gt;&lt;P&gt;BDCTAB-FVAL = ITAB-MBRSH .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-FNAM = 'RMMG1-MTART' .&lt;/P&gt;&lt;P&gt;BDCTAB-FVAL = ITAB-MTART .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-FNAM = 'BDC_OKCODE'.&lt;/P&gt;&lt;P&gt;BDCTAB-FVAL = '=AUSW' .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;********SECOND SCREEN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-PROGRAM = 'SAPLMGMM'.&lt;/P&gt;&lt;P&gt;BDCTAB-DYNPRO =  '0070'.&lt;/P&gt;&lt;P&gt;BDCTAB-DYNBEGIN   = 'X' .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-FNAM = 'MSICHTAUSW-KZSEL(01)' .&lt;/P&gt;&lt;P&gt;BDCTAB-FVAL = 'X' .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-FNAM = 'BDC_OKCODE'.&lt;/P&gt;&lt;P&gt;BDCTAB-FVAL = '=ENTR' .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***************THIRD SCREEN&lt;/P&gt;&lt;P&gt;BDCTAB-PROGRAM = 'SAPLMGMM'.&lt;/P&gt;&lt;P&gt;BDCTAB-DYNPRO =  '4004'.&lt;/P&gt;&lt;P&gt;BDCTAB-DYNBEGIN   = 'X' .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-FNAM = 'MAKT-MAKTX' .&lt;/P&gt;&lt;P&gt;BDCTAB-FVAL =  ITAB-MAKTX.&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-FNAM = 'MARA-MEINS'.&lt;/P&gt;&lt;P&gt;BDCTAB-FVAL =  ITAB-MEINS .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BDCTAB-FNAM = 'BDC_OKCODE'.&lt;/P&gt;&lt;P&gt;BDCTAB-FVAL = '=BU' .&lt;/P&gt;&lt;P&gt;APPEND  BDCTAB .&lt;/P&gt;&lt;P&gt;CLEAR  BDCTAB.&lt;/P&gt;&lt;P&gt;&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              =  BDCTAB  .&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;CALL FUNCTION 'BDC_CLOSE_GROUP' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;srinivas&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;&amp;lt;b&amp;gt;*&lt;STRONG&gt;reward for useful answers&lt;/STRONG&gt;*&amp;lt;/b&amp;gt;&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Aug 2007 09:27:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688785#M621947</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-10T09:27:11Z</dc:date>
    </item>
    <item>
      <title>Re: sample BDC code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688786#M621948</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for Support.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Aug 2007 05:32:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688786#M621948</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-16T05:32:03Z</dc:date>
    </item>
    <item>
      <title>Re: sample BDC code</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688787#M621949</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;May be you can give points for the answers you are satisfied with!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;srinivas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Aug 2007 08:56:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sample-bdc-code/m-p/2688787#M621949</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-16T08:56:40Z</dc:date>
    </item>
  </channel>
</rss>

