<?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: Give one example error  for bdc? in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592642#M593639</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;Kindly go thru this links. Ur query is answered there.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check this link.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=2979983" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=2979983&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=2979982" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=2979982&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=745186" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=745186&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=3523632" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=3523632&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rgds&lt;/P&gt;&lt;P&gt;Anversha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 01 Aug 2007 05:08:20 GMT</pubDate>
    <dc:creator>anversha_s</dc:creator>
    <dc:date>2007-08-01T05:08:20Z</dc:date>
    <item>
      <title>Give one example error  for bdc?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592641#M593638</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;what are errors in bdc? Give one example error ? how to solve it ?&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;eswar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 05:00:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592641#M593638</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T05:00:46Z</dc:date>
    </item>
    <item>
      <title>Re: Give one example error  for bdc?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592642#M593639</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;Kindly go thru this links. Ur query is answered there.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check this link.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=2979983" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=2979983&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=2979982" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=2979982&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=745186" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=745186&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=3523632" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=4238251&amp;amp;messageID=3523632&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rgds&lt;/P&gt;&lt;P&gt;Anversha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 05:08:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592642#M593639</guid>
      <dc:creator>anversha_s</dc:creator>
      <dc:date>2007-08-01T05:08:20Z</dc:date>
    </item>
    <item>
      <title>Re: Give one example error  for bdc?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592643#M593640</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>Wed, 01 Aug 2007 05:43:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592643#M593640</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T05:43:07Z</dc:date>
    </item>
    <item>
      <title>Re: Give one example error  for bdc?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592644#M593641</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Eswar,&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;Regarding the error handling in call transaction. &lt;/P&gt;&lt;P&gt;The BDCMSGCOLL does not have the messages text. It has only the message type, number and message parameters. &lt;/P&gt;&lt;P&gt;You have to read the message text.  (recall that the database table T100 stores all the messages.) &lt;/P&gt;&lt;P&gt;There are more than one method of doing this. &lt;/P&gt;&lt;P&gt;Following is the psuedocode for one of the methods. &lt;/P&gt;&lt;P&gt;  LOOP for the internal table IT1 which has data value from flat file. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;call transcation using.... &lt;/P&gt;&lt;P&gt;if SY-SUBRC &amp;lt;&amp;gt; 0. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;Read the dictionary table T100 FOR ALL ENTRIES in BDCMSGCOLL. &lt;/P&gt;&lt;P&gt;(also use the condition T100-SPRAS  =  SY-LANGU (the log on language. This is because you need only the message texts in English if the user is logged in English language) &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;IF message type is E , then, transfer the contents of this particular error record to file x. (TRANSFER......) &lt;/P&gt;&lt;P&gt;( Ignore all other messages. Only consider type 'E' messages. Ignore other types of messages.) &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;(You can also store the message text from T100 and the error record in another internal table IT2) &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;Please note that the client might ask you for a file of records which could not be uploaded. &lt;/P&gt;&lt;P&gt;Give him the file created in the above psuedocode. (most often you will have to do this). &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;Otherwise just display the error messages and the error records in the internal table IT2 in the form of a list. &lt;/P&gt;&lt;P&gt;Thats it. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;Alternatively, &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;Instead of &lt;/P&gt;&lt;P&gt;" Read the dictionary table T100 FOR ALL ENTRIES in BDCMSGCOLL." &lt;/P&gt;&lt;P&gt;you can use the function module &lt;/P&gt;&lt;P&gt;WRITE_MESSAGES to read the messages. &lt;/P&gt;&lt;P&gt;Please refer to the function module for the list of parameters. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;Also refer FORMAT_MESSAGES function module. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;As, I said, there are more than one method of doing this. &lt;/P&gt;&lt;P&gt;.Reward points if useful &lt;SPAN __jive_emoticon_name="happy"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers!!!!&lt;/P&gt;&lt;P&gt;Twinkle&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 05:53:36 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592644#M593641</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T05:53:36Z</dc:date>
    </item>
    <item>
      <title>Re: Give one example error  for bdc?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592645#M593642</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;In BDC genreal errors are due to if you have not record the screens flow propely the most of erros will come.&lt;/P&gt;&lt;P&gt;second if the data populated to the BDC screens are not valid data then erros will come.&lt;/P&gt;&lt;P&gt;If you are using the call transaction method then you will check the sy-subrc if it is 0 then success if it 1000 or 1001 then it is error.&lt;/P&gt;&lt;P&gt;If you are using the session method then function module will give the exceptions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and regards,&lt;/P&gt;&lt;P&gt;shyla&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 06:04:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592645#M593642</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T06:04:44Z</dc:date>
    </item>
    <item>
      <title>Re: Give one example error  for bdc?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592646#M593643</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;ERRORS In BDC:&lt;/P&gt;&lt;P&gt;In the SESSION method we can check errors at sm35-&amp;gt;log(ERROR LOG)&lt;/P&gt;&lt;P&gt;u can reprocess the session for error records.&lt;/P&gt;&lt;P&gt;where as in call transaction we have to take care using the structure BDCMSGCOLL and the FM FORMAT_MESSAGES and we can open session for error records(if sy-subrc &amp;lt;&amp;gt;) 0), we can amke changes andreprocess the session for error records.&lt;/P&gt;&lt;P&gt;ex:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  zgopi_report&lt;/P&gt;&lt;P&gt; NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                        LINE-SIZE 255&lt;/P&gt;&lt;P&gt;                        MESSAGE-ID ZRASH.&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;                Internal Table Declarations                          *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;*--Internal Table for Data Uploading.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF IT_FFCUST OCCURS 0,&lt;/P&gt;&lt;P&gt;         KUNNR(10),&lt;/P&gt;&lt;P&gt;         BUKRS(4),&lt;/P&gt;&lt;P&gt;         KTOKD(4),&lt;/P&gt;&lt;P&gt;         ANRED(15),&lt;/P&gt;&lt;P&gt;         NAME1(35),&lt;/P&gt;&lt;P&gt;         SORTL(10),&lt;/P&gt;&lt;P&gt;         STRAS(35),&lt;/P&gt;&lt;P&gt;         ORT01(35),&lt;/P&gt;&lt;P&gt;         PSTLZ(10),&lt;/P&gt;&lt;P&gt;         LAND1(3),&lt;/P&gt;&lt;P&gt;         SPRAS(2),&lt;/P&gt;&lt;P&gt;         AKONT(10),&lt;/P&gt;&lt;P&gt;       END OF IT_FFCUST.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Internal Table to Store Error Records.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF IT_ERRCUST OCCURS 0,&lt;/P&gt;&lt;P&gt;         KUNNR(10),&lt;/P&gt;&lt;P&gt;         EMSG(255),&lt;/P&gt;&lt;P&gt;       END OF IT_ERRCUST.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Internal Table to Store Successful Records.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF IT_SUCCUST OCCURS 0,&lt;/P&gt;&lt;P&gt;         KUNNR(10),&lt;/P&gt;&lt;P&gt;         SMSG(255),&lt;/P&gt;&lt;P&gt;       END OF IT_SUCCUST.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Internal Table for Storing the BDC data.&lt;/P&gt;&lt;P&gt;DATA : IT_CUSTBDC LIKE BDCDATA OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Internal Table for storing the messages.&lt;/P&gt;&lt;P&gt;DATA : IT_CUSTMSG LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;DATA : V_FLAG1(1) VALUE ' ',&lt;/P&gt;&lt;P&gt;"Flag used for opening session.&lt;/P&gt;&lt;P&gt;       V_TLINES LIKE SY-TABIX,&lt;/P&gt;&lt;P&gt;       "For storing total records processed.&lt;/P&gt;&lt;P&gt;       V_ELINES LIKE SY-TABIX,&lt;/P&gt;&lt;P&gt;       "For storing the no of error records.&lt;/P&gt;&lt;P&gt;       V_SLINES LIKE SY-TABIX.&lt;/P&gt;&lt;P&gt;       "For storing the no of success records.&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;         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;SELECTION-SCREEN BEGIN OF BLOCK B1.&lt;/P&gt;&lt;P&gt;PARAMETERS : V_FNAME LIKE RLGRAP-FILENAME,&lt;/P&gt;&lt;P&gt;             V_SESNAM  LIKE RLGRAP-FILENAME.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&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;         Start-of-selection                                          *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;*-- Form to upload flatfile data into the internal table.&lt;/P&gt;&lt;P&gt;  PERFORM FORM_UPLOADFF.&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;       TOP-OF-PAGE                                                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;  WRITE:/ 'Details of the error and success records for the transaction'&lt;/P&gt;&lt;P&gt;  .&lt;/P&gt;&lt;P&gt;  ULINE.&lt;/P&gt;&lt;P&gt;  SKIP.&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;************************************************************************&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;*-- Form to Generate a BDC from the Uploaded Internal table&lt;/P&gt;&lt;P&gt;  PERFORM FORM_BDCGENERATE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--To write the totals and the session name.&lt;/P&gt;&lt;P&gt;  PERFORM FORM_WRITEOP.&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;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  form_uploadff&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;    Form to upload flatfile data into the internal 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 FORM_UPLOADFF .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Variable to change the type of the parameter file name.&lt;/P&gt;&lt;P&gt;  DATA : LV_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  LV_FILE = V_FNAME.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Function to upload the flat file to the internal table.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FILENAME                      =  LV_FILE&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    FILETYPE                      = 'ASC'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      HAS_FIELD_SEPARATOR           = 'X'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    HEADER_LENGTH                 = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    READ_BY_LINE                  = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    DAT_MODE                      = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    FILELENGTH                    =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    HEADER                        =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      DATA_TAB                      = IT_FFCUST&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 = 0.&lt;/P&gt;&lt;P&gt;*--Deleting the headings from the internal table.&lt;/P&gt;&lt;P&gt;    DELETE IT_FFCUST INDEX 1.&lt;/P&gt;&lt;P&gt;*--Getting the total number of records uploaded.&lt;/P&gt;&lt;P&gt;    DESCRIBE TABLE IT_FFCUST LINES V_TLINES.&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;ENDFORM.                    " form_uploadff&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  Form_bdcgenerate&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;    Form to Generate a BDC from the Uploaded Internal 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 FORM_BDCGENERATE .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Generating the BDC table for the fields of the internal table.&lt;/P&gt;&lt;P&gt;  LOOP AT IT_FFCUST.&lt;/P&gt;&lt;P&gt;    PERFORM POPULATEBDC USING :&lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0105',&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '/00' ,&lt;/P&gt;&lt;P&gt;                                ' ' 'RF02D-KUNNR' IT_FFCUST-KUNNR,&lt;/P&gt;&lt;P&gt;                                ' ' 'RF02D-BUKRS' IT_FFCUST-BUKRS,&lt;/P&gt;&lt;P&gt;                                ' ' 'RF02D-KTOKD' IT_FFCUST-KTOKD,&lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0110' ,&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '/00',&lt;/P&gt;&lt;P&gt;                                ' ' 'KNA1-ANRED'  IT_FFCUST-ANRED,&lt;/P&gt;&lt;P&gt;                                ' ' 'KNA1-NAME1' IT_FFCUST-NAME1,&lt;/P&gt;&lt;P&gt;                                ' ' 'KNA1-SORTL'  IT_FFCUST-SORTL,&lt;/P&gt;&lt;P&gt;                                ' ' 'KNA1-STRAS' IT_FFCUST-STRAS,&lt;/P&gt;&lt;P&gt;                                ' ' 'KNA1-ORT01' IT_FFCUST-ORT01,&lt;/P&gt;&lt;P&gt;                                ' ' 'KNA1-PSTLZ' IT_FFCUST-PSTLZ,&lt;/P&gt;&lt;P&gt;                                ' ' 'KNA1-LAND1' IT_FFCUST-LAND1,&lt;/P&gt;&lt;P&gt;                                ' ' 'KNA1-SPRAS' IT_FFCUST-SPRAS,&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;                                'X' 'SAPMFO2D' '0120',	&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '/00',&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0125',	&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '/00',&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0130',	&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '=ENTR',&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0340',	&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '=ENTR',&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0360',&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '=ENTR',&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0210',	&lt;/P&gt;&lt;P&gt;                                ' ' 'KNB1-AKONT'  IT_FFCUST-AKONT,&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '/00',&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0215',&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '/00',&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0220',	&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '/00',&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;                                'X' 'SAPMF02D' '0230',	&lt;/P&gt;&lt;P&gt;                                ' ' 'BDC_OKCODE'  '=UPDA'.&lt;/P&gt;&lt;P&gt;*--Calling the transaction 'fd01'.&lt;/P&gt;&lt;P&gt;    CALL TRANSACTION 'FD01' USING IT_CUSTBDC MODE 'N' UPDATE 'S'&lt;/P&gt;&lt;P&gt;    MESSAGES INTO IT_CUSTMSG.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;*--Populating the error records internal table.&lt;/P&gt;&lt;P&gt;      IT_ERRCUST-KUNNR = IT_FFCUST-KUNNR.&lt;/P&gt;&lt;P&gt;      APPEND IT_ERRCUST.&lt;/P&gt;&lt;P&gt;      CLEAR IT_ERRCUST.&lt;/P&gt;&lt;P&gt;*--Opening a session if there is an error record.&lt;/P&gt;&lt;P&gt;      IF V_FLAG1 = ' '.&lt;/P&gt;&lt;P&gt;        PERFORM FORM_OPENSESSION.&lt;/P&gt;&lt;P&gt;        V_FLAG1 = 'X'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;*--Inserting the error records into already open session.&lt;/P&gt;&lt;P&gt;      IF V_FLAG1 = 'X'.&lt;/P&gt;&lt;P&gt;        PERFORM FORM_INSERT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;*--Populating the Success records internal table.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      IT_SUCCUST-KUNNR = IT_FFCUST-KUNNR.&lt;/P&gt;&lt;P&gt;      APPEND IT_SUCCUST.&lt;/P&gt;&lt;P&gt;      CLEAR IT_SUCCUST.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*--Displaying the messages.&lt;/P&gt;&lt;P&gt;    IF NOT IT_CUSTMSG[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      PERFORM FORM_FORMATMSG.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*--Clearing the message and bdc tables.&lt;/P&gt;&lt;P&gt;    CLEAR : IT_CUSTBDC[],IT_CUSTMSG[].&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Getting the total no of error records.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_ERRCUST LINES V_ELINES.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Getting the total no of successful records.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_SUCCUST LINES V_SLINES.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Closing the session only if it is open.&lt;/P&gt;&lt;P&gt;  IF V_FLAG1 = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM FORM_CLOSESESS.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " Form_bdcgenerate&lt;/P&gt;&lt;P&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;      Form  populatebdc&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;      FOrm to Populate 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 POPULATEBDC  USING    VALUE(P_0178)&lt;/P&gt;&lt;P&gt;                           VALUE(P_0179)&lt;/P&gt;&lt;P&gt;                           VALUE(P_0180).&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  IF P_0178 = 'X'.&lt;/P&gt;&lt;P&gt;    IT_CUSTBDC-PROGRAM = P_0179.&lt;/P&gt;&lt;P&gt;    IT_CUSTBDC-DYNPRO = P_0180.&lt;/P&gt;&lt;P&gt;    IT_CUSTBDC-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IT_CUSTBDC-FNAM = P_0179.&lt;/P&gt;&lt;P&gt;    IT_CUSTBDC-FVAL = P_0180.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  APPEND IT_CUSTBDC.&lt;/P&gt;&lt;P&gt;  CLEAR IT_CUSTBDC.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " populatebdc&lt;/P&gt;&lt;P&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;      Form  FORM_OPENSESSION&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;      Form to Open a session.&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 FORM_OPENSESSION .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Variable to convert the given session name into reqd type.&lt;/P&gt;&lt;P&gt;  DATA : LV_SESNAM(12).&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  LV_SESNAM = V_SESNAM.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Opening a session.&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                     = LV_SESNAM&lt;/P&gt;&lt;P&gt;     HOLDDATE                  = '20040805'&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;UL&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;/UL&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     CLIENT_INVALID            = 1&lt;/P&gt;&lt;P&gt;     DESTINATION_INVALID       = 2&lt;/P&gt;&lt;P&gt;     GROUP_INVALID             = 3&lt;/P&gt;&lt;P&gt;     GROUP_IS_LOCKED           = 4&lt;/P&gt;&lt;P&gt;     HOLDDATE_INVALID          = 5&lt;/P&gt;&lt;P&gt;     INTERNAL_ERROR            = 6&lt;/P&gt;&lt;P&gt;     QUEUE_ERROR               = 7&lt;/P&gt;&lt;P&gt;     RUNNING                   = 8&lt;/P&gt;&lt;P&gt;     SYSTEM_LOCK_ERROR         = 9&lt;/P&gt;&lt;P&gt;     USER_INVALID              = 10&lt;/P&gt;&lt;P&gt;     OTHERS                    = 11&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; 'Session not open'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " FORM_OPENSESSION&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  FORM_INSERT&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;      fORM TO INSERT ERROR RECOED INTO A SESSION.&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 FORM_INSERT .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Inserting the record into 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                  = 'FD01'&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;LI level="1" type="ul"&gt;&lt;P&gt;    SIMUBATCH              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    CTUPARAMS              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      DYNPROTAB              = IT_CUSTBDC&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      INTERNAL_ERROR         = 1&lt;/P&gt;&lt;P&gt;      NOT_OPEN               = 2&lt;/P&gt;&lt;P&gt;      QUEUE_ERROR            = 3&lt;/P&gt;&lt;P&gt;      TCODE_INVALID          = 4&lt;/P&gt;&lt;P&gt;      PRINTING_INVALID       = 5&lt;/P&gt;&lt;P&gt;      POSTING_INVALID        = 6&lt;/P&gt;&lt;P&gt;      OTHERS                 = 7&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; 'Unable to insert the record'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " FORM_INSERT&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  FORM_CLOSESESS&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;      Form to Close the Open Session.&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 FORM_CLOSESESS .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      NOT_OPEN    = 1&lt;/P&gt;&lt;P&gt;      QUEUE_ERROR = 2&lt;/P&gt;&lt;P&gt;      OTHERS      = 3.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;  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.                    " FORM_CLOSESESS&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  FORM_FORMATMSG&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;      Form to format messages.&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 FORM_FORMATMSG .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*--Var to store the formatted msg.&lt;/P&gt;&lt;P&gt;  DATA : LV_MSG(255).&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'FORMAT_MESSAGE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      ID        = SY-MSGID&lt;/P&gt;&lt;P&gt;      LANG      = SY-LANGU&lt;/P&gt;&lt;P&gt;      NO        = SY-MSGNO&lt;/P&gt;&lt;P&gt;      V1        = SY-MSGV1&lt;/P&gt;&lt;P&gt;      V2        = SY-MSGV2&lt;/P&gt;&lt;P&gt;      V3        = SY-MSGV3&lt;/P&gt;&lt;P&gt;      V4        = SY-MSGV4&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      MSG       = LV_MSG&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      NOT_FOUND = 1&lt;/P&gt;&lt;P&gt;      OTHERS    = 2.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;    WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; LV_MSG.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  ENDIF.&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;ENDFORM.                    " FORM_FORMATMSG&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  form_writeop&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;      To write the totals and the session name.&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 FORM_WRITEOP .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; 'Total Records Uploaded :',V_TLINES,&lt;/P&gt;&lt;P&gt;           / 'No of Error Records :',V_ELINES,&lt;/P&gt;&lt;P&gt;           / 'No of Success Records :',V_SLINES,&lt;/P&gt;&lt;P&gt;           / 'Name of the Session :',V_SESNAM.&lt;/P&gt;&lt;P&gt;  ULINE.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 06:26:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592646#M593643</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T06:26:40Z</dc:date>
    </item>
    <item>
      <title>Re: Give one example error  for bdc?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592647#M593644</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi if u are using CALL TRANSACTION then we generally have those errors in BDCMSGCOLL structure.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check the link below which discusses about this in detail, award points if found helpful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=907612&amp;amp;messageID=745186" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=907612&amp;amp;messageID=745186&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 08:29:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/give-one-example-error-for-bdc/m-p/2592647#M593644</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T08:29:11Z</dc:date>
    </item>
  </channel>
</rss>

