<?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 CONVERSIONS in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097332#M436804</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;&lt;/P&gt;&lt;P&gt;My requairment is i need to select the records from vbak veda table based on some conditions and need display the list of those records from that list user selects some records and he will process the bdc session or calltransaction.by default all  the documents will be selected .first selection screen is with document number and auart .after displaying the list we need to do the bdc process .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please guide me in this..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&amp;amp;Regards.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ramu.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 29 Mar 2007 04:36:18 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-03-29T04:36:18Z</dc:date>
    <item>
      <title>CONVERSIONS</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097332#M436804</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;&lt;/P&gt;&lt;P&gt;My requairment is i need to select the records from vbak veda table based on some conditions and need display the list of those records from that list user selects some records and he will process the bdc session or calltransaction.by default all  the documents will be selected .first selection screen is with document number and auart .after displaying the list we need to do the bdc process .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please guide me in this..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&amp;amp;Regards.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ramu.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Mar 2007 04:36:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097332#M436804</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-29T04:36:18Z</dc:date>
    </item>
    <item>
      <title>Re: CONVERSIONS</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097333#M436805</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;      U can write a report program where in U will be selecting the required fields from those tables and display them with check-box i.e. each row will be having a checkbox, then user may select the required rows.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     U can use the event at user command. After user selects the data u can call the bdc or Call transcation. which inturn will upload the data to the transaction.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps.......&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Mar 2007 12:18:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097333#M436805</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-29T12:18:51Z</dc:date>
    </item>
    <item>
      <title>Re: CONVERSIONS</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097334#M436806</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;execute this sample code..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*"Table declarations...................................................&lt;/P&gt;&lt;P&gt;tables:&lt;/P&gt;&lt;P&gt;  vbak.                                " Sales document Header data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*"Selection screen elements............................................&lt;/P&gt;&lt;P&gt;selection-screen begin of block blck with frame .&lt;/P&gt;&lt;P&gt;  select-options&lt;/P&gt;&lt;P&gt;    s_docno for vbak-vbeln .           " Sales documetnt number.&lt;/P&gt;&lt;P&gt;selection-screen end of block blck.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*" Type declarations...................................................&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;Type declaration of the structure to hold sales documet header data *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;from  table VBAK .                                                  *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;types:&lt;/P&gt;&lt;P&gt;  begin of type_s_sales_documentdata,&lt;/P&gt;&lt;P&gt;    vbeln type vbak-vbeln,             " Sales document number&lt;/P&gt;&lt;P&gt;    erdat type vbak-erdat,             " Sales document creation date&lt;/P&gt;&lt;P&gt;    ernam type vbak-ernam,             " Created by.&lt;/P&gt;&lt;P&gt;    vbtyp type vbak-vbtyp,             " Document category&lt;/P&gt;&lt;P&gt;    auart type vbak-auart,             " Document type&lt;/P&gt;&lt;P&gt;    lifsk type vbak-lifsk,             " Delivery block&lt;/P&gt;&lt;P&gt;    faksk type vbak-faksk,             " Billing block&lt;/P&gt;&lt;P&gt;    netwr type vbak-netwr,             " Net value of the document&lt;/P&gt;&lt;P&gt;    waerk type vbak-waerk,             " SD document currency&lt;/P&gt;&lt;P&gt;    vkorg type vbak-vkorg,             " Sales organization&lt;/P&gt;&lt;P&gt;    kunnr type vbak-kunnr,             " Sold to party&lt;/P&gt;&lt;P&gt;    check  type c,                     " Check box&lt;/P&gt;&lt;P&gt;  end of type_s_sales_documentdata.&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;Type declaration of the structure to hold sales documet ITEM data   *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;from  table VBAP.                                                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;types:&lt;/P&gt;&lt;P&gt;  begin of type_s_itemdata,&lt;/P&gt;&lt;P&gt;    vbeln type vbap-vbeln,             " Sales document&lt;/P&gt;&lt;P&gt;  end of type_s_itemdata.&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;Internal table to hold sales document header  data                  *&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;data&lt;/P&gt;&lt;P&gt;  t_sales_documentdata type standard table&lt;/P&gt;&lt;P&gt;                    of type_s_sales_documentdata&lt;/P&gt;&lt;P&gt;               initial size 0.&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;Internal table to hold sales document item data                     *&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;data&lt;/P&gt;&lt;P&gt;  t_itemdata type standard table&lt;/P&gt;&lt;P&gt;               of type_s_itemdata&lt;/P&gt;&lt;P&gt;          initial size 0.&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;Work area to hold sales document header data                        *&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;data&lt;/P&gt;&lt;P&gt;  wa_sales_documentdata type type_s_sales_documentdata.&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;Work area to hold sales document item data                          *&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;data&lt;/P&gt;&lt;P&gt;  wa_itemdata type type_s_itemdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     AT SELECTION-SCREEN EVENT                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at selection-screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform read_vbak.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                      END-OF-SELECTION EVENT                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform display_salesdocument.&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;After selecting the records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at user-command.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;case sy-ucomm.&lt;/P&gt;&lt;P&gt;  when 'DISP'.&lt;/P&gt;&lt;P&gt;    PERFORM GET_SELECTED_RECORDS.&lt;/P&gt;&lt;P&gt; ENDCASE.&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  read_vbak&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; This subroutine retrieves the required  data from Vbak 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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; There are no interface parameters to be passed to this subroutine. *&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_vbak .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  select vbeln                         " Sales document number&lt;/P&gt;&lt;P&gt;         erdat                         " Sales document creation date&lt;/P&gt;&lt;P&gt;         ernam                         " Created by&lt;/P&gt;&lt;P&gt;         vbtyp                         " Document category&lt;/P&gt;&lt;P&gt;         auart                         " Document type&lt;/P&gt;&lt;P&gt;         lifsk                         " Delivery block&lt;/P&gt;&lt;P&gt;         faksk                         " Billing block&lt;/P&gt;&lt;P&gt;         netwr                         " Net value of the document&lt;/P&gt;&lt;P&gt;         waerk                         " SD document currency&lt;/P&gt;&lt;P&gt;         vkorg                         " Sales organization&lt;/P&gt;&lt;P&gt;         kunnr                         " Sold to party&lt;/P&gt;&lt;P&gt;    from vbak&lt;/P&gt;&lt;P&gt;    into table t_sales_documentdata&lt;/P&gt;&lt;P&gt;   where vbeln in s_docno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message 'No Data found'(001) type 'E'.&lt;/P&gt;&lt;P&gt;  endif.                               " If sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                               " Form read_vbak&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  display_Salesdocument                                         *&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; This subroutine generates the  list with sales document header data *&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; There are no interface parameters to be passed to this subroutine.  *&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 display_salesdocument .&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;SET PF-STATUS 'STATUS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at t_sales_documentdata into wa_sales_documentdata.&lt;/P&gt;&lt;P&gt;    write:&lt;/P&gt;&lt;P&gt;      / sy-vline, wa_sales_documentdata-check as checkbox,&lt;/P&gt;&lt;P&gt;       wa_sales_documentdata-vbeln,sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-erdat, 30  sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-ernam, 48  sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-vbtyp, 55  sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-auart, 60  sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-lifsk, 70  sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-faksk, 80  sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-netwr currency&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-waerk, 107 sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-waerk, 116 sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-vkorg, 125 sy-vline,&lt;/P&gt;&lt;P&gt;      wa_sales_documentdata-kunnr, 138 sy-vline.&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;  uline (138).&lt;/P&gt;&lt;P&gt;  clear wa_sales_documentdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                               " Form display_Salesdocument&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form to read the user selected records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;form GET_SELECTED_RECORDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Declaration of Work variables...&lt;/P&gt;&lt;P&gt;  data:&lt;/P&gt;&lt;P&gt;    lw_lines   type i,                 " Holds no.of lines in t_spfli&lt;/P&gt;&lt;P&gt;    lw_linno  type i value 5.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  describe table t_sales_documentdata lines lw_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  do lw_lines times.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    read line lw_linno field value :&lt;/P&gt;&lt;P&gt;    wa_sales_documentdata-check into wa_sales_documentdata-check,&lt;/P&gt;&lt;P&gt;    wa_sales_documentdata-vbeln into  wa_sales_documentdata-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if wa_sales_documentdata-check eq 'X'.&lt;/P&gt;&lt;P&gt;       wa_itemdata-vbeln = wa_sales_documentdata-vbeln.&lt;/P&gt;&lt;P&gt;      append wa_itemdata-vbeln to t_itemdata.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    clear wa_sales_documentdata-check.&lt;/P&gt;&lt;P&gt;  enddo.                               " Do lw_lines times.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;U need to create a pf-status with name 'STATUS', in this with one push button with function code 'DISP'. &amp;lt;i&amp;gt;and when u press this push button the table t_itemdata contains the user selected Order numers ....  now u can do bdc with this table.&amp;lt;/i&amp;gt;.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward points if helpful...&lt;/P&gt;&lt;P&gt;sai ramesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Mar 2007 14:50:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097334#M436806</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-29T14:50:17Z</dc:date>
    </item>
    <item>
      <title>Re: CONVERSIONS</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097335#M436807</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi here is a sample code for transaction sm30. Please use this if it helps you...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT zrecord02&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;&lt;/P&gt;&lt;P&gt;CONSTANTS: gc_x         TYPE c VALUE 'X',                                    "constants for true value&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          gc_land(40)  TYPE c VALUE 'Improper land value',                  "Constants used in error description&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          gc_imp(50)   TYPE c VALUE 'Import Code is already present',       "Constants used in error description&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          gc_noimp(60) TYPE c VALUE 'Please enter import code and try',     "Constants used in error description&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          gc_dup(50)   TYPE c VALUE 'Duplicate Error',                      "Constants used in error description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           gc_dynbegin  TYPE c VALUE  'X',                                   "constants used in call transaction&lt;/P&gt;&lt;P&gt;           gc_mode      TYPE c VALUE 'A',                                    "constants used in call transaction&lt;/P&gt;&lt;P&gt;           gc_mode1     TYPE c VALUE 'N',                                    "constants used in call transaction&lt;/P&gt;&lt;P&gt;           gc_sucess    TYPE c VALUE 'S',                                    "constants used in call transaction&lt;/P&gt;&lt;P&gt;           gc_flag      TYPE c VALUE 'X',                                    "constants used in call transaction&lt;/P&gt;&lt;P&gt;           gc_read      TYPE dxfields-fileoper VALUE 'R',                    "Constants used in form file selection.&lt;/P&gt;&lt;P&gt;           gc_applic    TYPE dxfields-location VALUE 'A',                    "application server location&lt;/P&gt;&lt;P&gt;           gc_presen    TYPE dxfields-location VALUE 'P',                    "Presentation server location&lt;/P&gt;&lt;P&gt;           gc_root(01)  TYPE c VALUE '/'.                                    "constant used in file selection&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gv_datab    TYPE char12,                                               "Varible to hold the data&lt;/P&gt;&lt;P&gt;      gv_date     TYPE char2,&lt;/P&gt;&lt;P&gt;      gv_mon      TYPE char2,&lt;/P&gt;&lt;P&gt;      gv_year     TYPE char4,&lt;/P&gt;&lt;P&gt;      gv_no_succs TYPE i,&lt;/P&gt;&lt;P&gt;      gv_no_error TYPE i,&lt;/P&gt;&lt;P&gt;      gv_msg      TYPE char100,&lt;/P&gt;&lt;P&gt;      gv_id       TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE text-t01.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_upl_ps RADIOBUTTON GROUP g DEFAULT 'X',      "radiobutton for presentation server&lt;/P&gt;&lt;P&gt;            p_upl_as RADIOBUTTON GROUP g,                  "radiobutton for application server&lt;/P&gt;&lt;P&gt;            p_file   TYPE rlgrap-filename,                 "file name&lt;/P&gt;&lt;P&gt;            p_test   AS CHECKBOX.                          "for testmode&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF gs_itab ,                         " structure containing the fields of flat file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      land1 TYPE v_t604-land1,&lt;/P&gt;&lt;P&gt;      stawn TYPE v_t604-stawn,&lt;/P&gt;&lt;P&gt;      text1 TYPE v_t604-text1,&lt;/P&gt;&lt;P&gt;      bemeh TYPE v_t604-bemeh,&lt;/P&gt;&lt;P&gt;      impma TYPE v_t604-impma,&lt;/P&gt;&lt;P&gt;      minol TYPE v_t604-minol,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      END OF gs_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gi_itab       TYPE TABLE OF gs_itab ,              "internal table for the structure gs_itab&lt;/P&gt;&lt;P&gt;      gi_valid_itab TYPE TABLE OF gs_itab,               "internal table for the structure gs_itab with valid fields alone.&lt;/P&gt;&lt;P&gt;      gi_dup_itab   TYPE TABLE OF gs_itab,               "internal table for the structure gs_itab to capture the duplicate values&lt;/P&gt;&lt;P&gt;      gw_itab       TYPE gs_itab,                        " work area of gs_itab&lt;/P&gt;&lt;P&gt;      gw_validitab  TYPE gs_itab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     gw_finalitab  TYPE gs_itab.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF gs_e_itab,                           " structure containing the error fields of flat file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      land1   TYPE v_t604-land1,&lt;/P&gt;&lt;P&gt;      stawn   TYPE v_t604-stawn,&lt;/P&gt;&lt;P&gt;      text1   TYPE v_t604-text1,&lt;/P&gt;&lt;P&gt;      bemeh   TYPE v_t604-bemeh,&lt;/P&gt;&lt;P&gt;      impma   TYPE v_t604-impma,&lt;/P&gt;&lt;P&gt;      minol   TYPE v_t604-minol,&lt;/P&gt;&lt;P&gt;      err(30) TYPE c,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      END OF gs_e_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gi_err_itab TYPE TABLE OF gs_e_itab,          " internal table for the structure gs_e_itab.&lt;/P&gt;&lt;P&gt;      gw_err_itab TYPE gs_e_itab.                   "work area for the structure gs_itab&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     gw_itab1    TYPE gs_e_itab.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF gs_land_stawn,                     "structure containing land and import codes of flat file.&lt;/P&gt;&lt;P&gt;       land1 TYPE t005-land1,&lt;/P&gt;&lt;P&gt;       stawn TYPE t604-stawn,&lt;/P&gt;&lt;P&gt;       END OF gs_land_stawn.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gi_land_stawn     TYPE TABLE OF gs_land_stawn,     " internal table containing valid land and import codes of flat file&lt;/P&gt;&lt;P&gt;      gi_err_land_stawn TYPE TABLE OF gs_land_stawn,     " internal table containing error land and import codes of flat file&lt;/P&gt;&lt;P&gt;      gw_land_stawn     TYPE gs_land_stawn.              " work area for the above internal table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF gs_land,                                 "structure containing land field alone&lt;/P&gt;&lt;P&gt;       land1 TYPE t005-land1,&lt;/P&gt;&lt;P&gt;       END OF gs_land.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gi_land   TYPE TABLE OF gs_land,                   " internal table for the structure gs_land&lt;/P&gt;&lt;P&gt;      gi_c_land TYPE TABLE OF gs_land, " gi_b_land,      " internal table for the structure gs_land with only valid land fields&lt;/P&gt;&lt;P&gt;      gw_land   TYPE gs_land.                            "work area for gs_land&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF gs_temp,                                  "structure containing the fields of legacy file.&lt;/P&gt;&lt;P&gt;      line(1000) TYPE c,&lt;/P&gt;&lt;P&gt;      END OF gs_temp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gi_temp LIKE TABLE OF gs_temp,                     "internal table for the structure gs_temp,&lt;/P&gt;&lt;P&gt;      gw_temp LIKE gs_temp.                              "work area for gs_temp&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gi_bdcdata TYPE TABLE OF bdcdata,                 "internal table for bdcdata&lt;/P&gt;&lt;P&gt;      gi_msg     TYPE TABLE OF bdcmsgcoll.                  "internal table for bdcmsgcoll&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gw_bdcdata TYPE bdcdata,                          "workarea for bdcdata&lt;/P&gt;&lt;P&gt;      gw_msg     TYPE bdcmsgcoll.                           "workarea for bdcmsgcoll&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     AT SELECTION-SCREEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;P&gt;  PERFORM file_selection.              "Selecting the file from the server&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;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;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;  PERFORM gf_header.                  "Calling the header Section&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      END-OF-PAGE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-PAGE.&lt;/P&gt;&lt;P&gt;  EXIT.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      START-OF-SELECTION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  PERFORM upload.                   "Uploading the file to internal table&lt;/P&gt;&lt;P&gt;  PERFORM get_data.                 "Splitting the pipe delimited data&lt;/P&gt;&lt;P&gt;  IF p_test = gc_x.                 "In test mode&lt;/P&gt;&lt;P&gt;    PERFORM validations.&lt;/P&gt;&lt;P&gt;    PERFORM remove_duplicate.&lt;/P&gt;&lt;P&gt;    PERFORM display.&lt;/P&gt;&lt;P&gt;  ELSE.                             "not in test mode&lt;/P&gt;&lt;P&gt;    PERFORM validations.&lt;/P&gt;&lt;P&gt;    PERFORM remove_duplicate.&lt;/P&gt;&lt;P&gt;    PERFORM bdc.&lt;/P&gt;&lt;P&gt;    PERFORM display.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  PERFORM no_of_records.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      END-OF-SELECTION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  EXIT.&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  file_selection.&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;P&gt;&lt;/P&gt;&lt;P&gt;FORM file_selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONSTANTS: lc_slash(2) TYPE c VALUE '//'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA :  lv_file_path TYPE dxfields-longpath,&lt;/P&gt;&lt;P&gt;          lv_location  TYPE dxfields-location,&lt;/P&gt;&lt;P&gt;          lv_server    TYPE msxxlist-name,&lt;/P&gt;&lt;P&gt;          ls_rfcsi    TYPE rfcsi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR:lv_server,lv_location, lv_file_path.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MOVE gc_read TO lv_file_path.&lt;/P&gt;&lt;P&gt;  IF lv_file_path IS INITIAL.&lt;/P&gt;&lt;P&gt;    lv_file_path = gc_root.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT p_upl_ps IS INITIAL.&lt;/P&gt;&lt;P&gt;    lv_location = gc_presen.                                 "if presentation server is selected&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    lv_location = gc_applic.                                 "if application server is selected&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'RFC_SYSTEM_INFO'&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      rfcsi_export = ls_rfcsi.&lt;/P&gt;&lt;P&gt;  lv_server    = ls_rfcsi-rfcdest.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;     i_location_flag       = lv_location&lt;/P&gt;&lt;P&gt;     i_server              = lv_server&lt;/P&gt;&lt;P&gt;     i_path                = lv_file_path&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   FILEMASK              = '&lt;STRONG&gt;.&lt;/STRONG&gt;'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     fileoperation         = p_upl_ps&lt;/P&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   O_LOCATION_FLAG       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   O_SERVER              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     o_path                = lv_file_path&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ABEND_FLAG            =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     rfc_error             = 1&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ERROR_WITH_GUI        = 2&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MOVE lv_file_path TO p_file.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF p_file(2) EQ lc_slash.&lt;/P&gt;&lt;P&gt;    SHIFT p_file LEFT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " FILE_SELECTION&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  upload&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lv_file TYPE string.&lt;/P&gt;&lt;P&gt;  lv_file = p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT p_upl_ps IS INITIAL.                      "if presentation server is selected&lt;/P&gt;&lt;P&gt;    CLEAR gi_itab.&lt;/P&gt;&lt;P&gt;    REFRESH gi_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        filename                      = lv_file&lt;/P&gt;&lt;P&gt;        filetype                      = 'ASC'&lt;/P&gt;&lt;P&gt;        has_field_separator           = ''&lt;/P&gt;&lt;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;/UL&gt;&lt;P&gt;       dat_mode                      = 'X'&lt;/P&gt;&lt;UL&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;  VIRUS_SCAN_PROFILE            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  NO_AUTH_CHECK                 = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FILELENGTH                    =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  HEADER                        =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        data_tab                      = gi_temp&lt;/P&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;P&gt;       file_open_error               = 1&lt;/P&gt;&lt;P&gt;       file_read_error               = 2&lt;/P&gt;&lt;P&gt;       no_batch                      = 3&lt;/P&gt;&lt;P&gt;       gui_refuse_filetransfer       = 4&lt;/P&gt;&lt;P&gt;       invalid_type                  = 5&lt;/P&gt;&lt;P&gt;       no_authority                  = 6&lt;/P&gt;&lt;P&gt;       unknown_error                 = 7&lt;/P&gt;&lt;P&gt;       bad_data_format               = 8&lt;/P&gt;&lt;P&gt;       header_not_allowed            = 9&lt;/P&gt;&lt;P&gt;       separator_not_allowed         = 10&lt;/P&gt;&lt;P&gt;       header_too_long               = 11&lt;/P&gt;&lt;P&gt;       unknown_dp_error              = 12&lt;/P&gt;&lt;P&gt;       access_denied                 = 13&lt;/P&gt;&lt;P&gt;       dp_out_of_memory              = 14&lt;/P&gt;&lt;P&gt;       disk_full                     = 15&lt;/P&gt;&lt;P&gt;       dp_timeout                    = 16&lt;/P&gt;&lt;P&gt;       OTHERS                        = 17&lt;/P&gt;&lt;P&gt;              .&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ELSE.                                                             "If application server is selected&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    OPEN DATASET p_file FOR INPUT IN TEXT MODE ENCODING DEFAULT      "If the data is available on the UNIX/Appl. server get the data&lt;/P&gt;&lt;P&gt;                               WITH SMART LINEFEED.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    DO.&lt;/P&gt;&lt;P&gt;      READ DATASET  p_file INTO gw_temp-line.                                 "read file which is opened.&lt;/P&gt;&lt;P&gt;      APPEND gw_temp TO gi_temp.&lt;/P&gt;&lt;P&gt;      IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLOSE DATASET p_file.                                                     "close the file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "upload&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  get_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;P&gt;FORM get_data.&lt;/P&gt;&lt;P&gt;  DATA:lv_id TYPE sy-tabix.&lt;/P&gt;&lt;P&gt;  gv_id = 0.&lt;/P&gt;&lt;P&gt;  IF gi_temp[] IS INITIAL.                   "If the uploaded internal table is empty.&lt;/P&gt;&lt;P&gt;    WRITE: /5 text-001.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    LOOP AT gi_temp INTO gw_temp.&lt;/P&gt;&lt;P&gt;      lv_id = sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SPLIT gw_temp-line&lt;/P&gt;&lt;P&gt;        AT '|'&lt;/P&gt;&lt;P&gt;        INTO gw_itab-land1&lt;/P&gt;&lt;P&gt;             gw_itab-stawn&lt;/P&gt;&lt;P&gt;             gw_itab-text1                  "Splitting the pipe delimited data.&lt;/P&gt;&lt;P&gt;             gw_itab-bemeh&lt;/P&gt;&lt;P&gt;             gw_itab-impma&lt;/P&gt;&lt;P&gt;             gw_itab-minol.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF gw_itab-land1 IS INITIAL.        " If the user fails to enter land key&lt;/P&gt;&lt;P&gt;        gw_itab-land1 = 'CA'.             " Default land to 'CA'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF gw_itab-stawn IS NOT INITIAL.    " If import code is present&lt;/P&gt;&lt;P&gt;        APPEND gw_itab TO gi_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND gw_itab TO gi_itab.&lt;/P&gt;&lt;P&gt;        CLEAR gw_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        READ TABLE gi_itab&lt;/P&gt;&lt;P&gt;          INTO gw_itab WITH KEY stawn = space.   "Read the internal table with empty import code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          gw_err_itab-land1 = gw_itab-land1.&lt;/P&gt;&lt;P&gt;          gw_err_itab-stawn = gw_itab-stawn.&lt;/P&gt;&lt;P&gt;          gw_err_itab-text1 = gw_itab-text1.&lt;/P&gt;&lt;P&gt;          gw_err_itab-bemeh = gw_itab-bemeh.&lt;/P&gt;&lt;P&gt;          gw_err_itab-impma = gw_itab-impma.&lt;/P&gt;&lt;P&gt;          gw_err_itab-minol = gw_itab-minol.&lt;/P&gt;&lt;P&gt;          gw_err_itab-err   = text-032.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          APPEND gw_err_itab TO gi_err_itab.&lt;/P&gt;&lt;P&gt;          gv_id = gv_id + 1.&lt;/P&gt;&lt;P&gt;          DELETE gi_itab INDEX lv_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "get_data&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  gf_header&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;P&gt;FORM gf_header.&lt;/P&gt;&lt;P&gt;  NEW-LINE.                                       " Dispalay the header section&lt;/P&gt;&lt;P&gt;  ULINE.&lt;/P&gt;&lt;P&gt;  WRITE:/ text-006.&lt;/P&gt;&lt;P&gt;  WRITE:/ text-019.&lt;/P&gt;&lt;P&gt;  SKIP 1.&lt;/P&gt;&lt;P&gt;  WRITE: AT /1 'PROGRAM NAME:'(022),sy-repid,&lt;/P&gt;&lt;P&gt;        'DATE :'(023),sy-datum,&lt;/P&gt;&lt;P&gt;        AT 100 'TIME :'(024),sy-timlo.&lt;/P&gt;&lt;P&gt;  WRITE: AT /1  'FILENAME:'(025),p_file.&lt;/P&gt;&lt;P&gt;  ULINE.&lt;/P&gt;&lt;P&gt;  SKIP 1.&lt;/P&gt;&lt;P&gt;  WRITE:/  text-008.&lt;/P&gt;&lt;P&gt;  WRITE:/  text-009.&lt;/P&gt;&lt;P&gt;  WRITE:/  text-010.&lt;/P&gt;&lt;P&gt;  WRITE: AT 20  text-011.&lt;/P&gt;&lt;P&gt;  WRITE: AT 33  text-012.&lt;/P&gt;&lt;P&gt;  WRITE: AT 55  text-013.&lt;/P&gt;&lt;P&gt;  WRITE: AT 70  text-014.&lt;/P&gt;&lt;P&gt;  WRITE: AT 95  text-015.&lt;/P&gt;&lt;P&gt;  WRITE: AT 120 text-016.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ULINE.&lt;/P&gt;&lt;P&gt;  NEW-LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  NEW-LINE.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "gf_header&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  validations&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;P&gt;FORM validations.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lv_id TYPE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT gi_itab INTO gw_itab.&lt;/P&gt;&lt;P&gt;    APPEND gw_itab-land1 TO gi_land.       "Land code alone is taken into internal table&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;  LOOP AT gi_itab INTO gw_itab.&lt;/P&gt;&lt;P&gt;    gw_land_stawn-land1 = gw_itab-land1.         "land along with import code is taken into another internal table&lt;/P&gt;&lt;P&gt;    gw_land_stawn-stawn = gw_itab-stawn.&lt;/P&gt;&lt;P&gt;    APPEND gw_land_stawn TO gi_land_stawn.&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;  SORT gi_land BY land1.&lt;/P&gt;&lt;P&gt;  REFRESH gi_c_land.&lt;/P&gt;&lt;P&gt;  SELECT land1&lt;/P&gt;&lt;P&gt;    FROM t005&lt;/P&gt;&lt;P&gt;    INTO TABLE gi_c_land&lt;/P&gt;&lt;P&gt;    FOR ALL ENTRIES IN gi_land&lt;/P&gt;&lt;P&gt;    WHERE land1 EQ gi_land-land1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    LOOP AT gi_itab INTO gw_itab.&lt;/P&gt;&lt;P&gt;      READ TABLE gi_c_land               "Read table with correct land keys&lt;/P&gt;&lt;P&gt;        INTO gw_land&lt;/P&gt;&lt;P&gt;        WITH KEY land1 = gw_itab-land1 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        gw_validitab-land1 = gw_itab-land1.&lt;/P&gt;&lt;P&gt;        gw_validitab-stawn = gw_itab-stawn.&lt;/P&gt;&lt;P&gt;        gw_validitab-text1 = gw_itab-text1.&lt;/P&gt;&lt;P&gt;        gw_validitab-bemeh = gw_itab-bemeh.&lt;/P&gt;&lt;P&gt;        gw_validitab-impma = gw_itab-impma.&lt;/P&gt;&lt;P&gt;        gw_validitab-minol = gw_itab-minol.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND gw_validitab TO gi_valid_itab.         "appending correct values to internal table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        gw_err_itab-land1 = gw_itab-land1.&lt;/P&gt;&lt;P&gt;        gw_err_itab-stawn = gw_itab-stawn.&lt;/P&gt;&lt;P&gt;        gw_err_itab-text1 = gw_itab-text1.&lt;/P&gt;&lt;P&gt;        gw_err_itab-bemeh = gw_itab-bemeh.&lt;/P&gt;&lt;P&gt;        gw_err_itab-impma = gw_itab-impma.&lt;/P&gt;&lt;P&gt;        gw_err_itab-minol = gw_itab-minol.&lt;/P&gt;&lt;P&gt;        gw_err_itab-err   = text-033.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND gw_err_itab TO gi_err_itab.            "Appending incorrect values.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT land1 stawn&lt;/P&gt;&lt;P&gt;    FROM t604                             "Selecting already present land and import codes from gi_land_stawn&lt;/P&gt;&lt;P&gt;    INTO TABLE gi_err_land_stawn&lt;/P&gt;&lt;P&gt;    FOR ALL ENTRIES IN gi_land_stawn&lt;/P&gt;&lt;P&gt;    WHERE land1 = gi_land_stawn-land1 AND stawn = gi_land_stawn-stawn.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT gi_valid_itab INTO gw_validitab. " gi_itab_a into gw_validitab.&lt;/P&gt;&lt;P&gt;      CLEAR gw_err_itab.&lt;/P&gt;&lt;P&gt;      lv_id = sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE gi_err_land_stawn&lt;/P&gt;&lt;P&gt;        INTO gw_land_stawn                      "Reading internal table containing error import codes&lt;/P&gt;&lt;P&gt;        WITH KEY land1 = gw_validitab-land1&lt;/P&gt;&lt;P&gt;                 stawn = gw_validitab-stawn.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        gw_err_itab-land1 = gw_validitab-land1.&lt;/P&gt;&lt;P&gt;        gw_err_itab-stawn = gw_validitab-stawn.&lt;/P&gt;&lt;P&gt;        gw_err_itab-text1 = gw_validitab-text1.&lt;/P&gt;&lt;P&gt;        gw_err_itab-bemeh = gw_validitab-bemeh.&lt;/P&gt;&lt;P&gt;        gw_err_itab-impma = gw_validitab-impma.&lt;/P&gt;&lt;P&gt;        gw_err_itab-minol = gw_validitab-minol.&lt;/P&gt;&lt;P&gt;        gw_err_itab-err   = text-034.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND gw_err_itab TO gi_err_itab.           "Appending error values to error internal table.&lt;/P&gt;&lt;P&gt;        DELETE gi_valid_itab INDEX lv_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "validations&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  remove_duplicate&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;P&gt;FORM remove_duplicate.&lt;/P&gt;&lt;P&gt;  DATA: lv_id TYPE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT gi_valid_itab INTO gw_itab.&lt;/P&gt;&lt;P&gt;    APPEND gw_itab TO gi_dup_itab.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR gw_itab.&lt;/P&gt;&lt;P&gt;  SORT gi_valid_itab BY land1 stawn ASCENDING.&lt;/P&gt;&lt;P&gt;  SORT gi_dup_itab BY land1 stawn ASCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM gi_valid_itab COMPARING land1 stawn.     "deleting duplicates from gi_valid_itab.&lt;/P&gt;&lt;P&gt;  LOOP AT gi_valid_itab INTO gw_itab.&lt;/P&gt;&lt;P&gt;    lv_id = sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE gi_dup_itab&lt;/P&gt;&lt;P&gt;      INTO gw_validitab&lt;/P&gt;&lt;P&gt;      WITH TABLE KEY land1 = gw_itab-land1          "Reading from the internal table containing duplicate values.&lt;/P&gt;&lt;P&gt;                     stawn = gw_itab-stawn&lt;/P&gt;&lt;P&gt;                     text1 = gw_itab-text1&lt;/P&gt;&lt;P&gt;                     bemeh = gw_itab-bemeh&lt;/P&gt;&lt;P&gt;                     impma = gw_itab-impma&lt;/P&gt;&lt;P&gt;                     minol = gw_itab-minol.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DELETE gi_dup_itab&lt;/P&gt;&lt;P&gt;        WHERE land1 = gw_itab-land1&lt;/P&gt;&lt;P&gt;          AND stawn = gw_itab-stawn               "Deleting the correct values from duplicated internal table.&lt;/P&gt;&lt;P&gt;          AND text1 = gw_itab-text1&lt;/P&gt;&lt;P&gt;          AND bemeh = gw_itab-bemeh               "Now it has only duplicaed values.&lt;/P&gt;&lt;P&gt;          AND impma = gw_itab-impma&lt;/P&gt;&lt;P&gt;          AND minol = gw_itab-minol.&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;  LOOP AT gi_dup_itab INTO gw_itab.&lt;/P&gt;&lt;P&gt;    gw_err_itab-land1 = gw_itab-land1.&lt;/P&gt;&lt;P&gt;    gw_err_itab-stawn = gw_itab-stawn.&lt;/P&gt;&lt;P&gt;    gw_err_itab-text1 = gw_itab-text1.&lt;/P&gt;&lt;P&gt;    gw_err_itab-bemeh = gw_itab-bemeh.&lt;/P&gt;&lt;P&gt;    gw_err_itab-impma = gw_itab-impma.&lt;/P&gt;&lt;P&gt;    gw_err_itab-minol = gw_itab-minol.&lt;/P&gt;&lt;P&gt;    gw_err_itab-err   = text-035.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND gw_err_itab TO gi_err_itab.         "Appending the duplicate errors to gi_err_itab&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "remove_duplicate&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  no_of_records&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;P&gt;FORM no_of_records.&lt;/P&gt;&lt;P&gt;  DATA: lv_line TYPE i,&lt;/P&gt;&lt;P&gt;        lv_line1 TYPE i,&lt;/P&gt;&lt;P&gt;        lv_corr TYPE i,&lt;/P&gt;&lt;P&gt;        lv_dup TYPE i,&lt;/P&gt;&lt;P&gt;        lv_tot TYPE i,&lt;/P&gt;&lt;P&gt;        lv_total TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE gi_itab LINES lv_tot.                    "Total number of records in the flat file&lt;/P&gt;&lt;P&gt;  lv_total = lv_tot + gv_id.&lt;/P&gt;&lt;P&gt;  WRITE: /5 text-002, 44 lv_total. "'Total number of Records from flat file:', 44 lv_total.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE gi_valid_itab LINES lv_line.                 "Total number of valid records.&lt;/P&gt;&lt;P&gt;  WRITE: /5 text-003, 44 lv_line. " 'No of correctly processed records:', 44 lv_line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE gi_err_itab LINES lv_line1.                  "Total number of error records.&lt;/P&gt;&lt;P&gt;  WRITE: /5 text-004, 44 lv_line1. "'No of Error Records:', 44 lv_line1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  lv_corr = lv_line + lv_line1.                                "Total number of duplicate records.&lt;/P&gt;&lt;P&gt;  lv_dup  = lv_total - lv_corr.&lt;/P&gt;&lt;P&gt;  WRITE: /5 text-030, 44 lv_dup. "'Total number of exact duplicates:', 44 lv_dup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "validations&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  display&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;P&gt;FORM display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF gi_err_itab[] IS INITIAL.                      "If error internal table is empty&lt;/P&gt;&lt;P&gt;    WRITE: / sy-uline.&lt;/P&gt;&lt;P&gt;    WRITE: /5 text-031."'All the datas are successfully uploaded'.&lt;/P&gt;&lt;P&gt;    WRITE: / sy-uline.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    LOOP AT gi_err_itab INTO gw_err_itab.&lt;/P&gt;&lt;P&gt;      WRITE: / gw_err_itab-land1, 21 gw_err_itab-stawn, 34 gw_err_itab-text1,56 gw_err_itab-bemeh, 71 gw_err_itab-impma, 97 gw_err_itab-minol, 121 gw_err_itab-err.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    WRITE: / sy-uline.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "display&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  bdc&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;P&gt;FORM bdc.&lt;/P&gt;&lt;P&gt;  DATA: lv_tcode(4) TYPE c VALUE 'SM30'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF gi_valid_itab[] IS INITIAL.                     "If correct internal table is empty, exit.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONSTANTS: lc_slash TYPE c VALUE '/'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR: gv_year, gv_mon, gv_date, gi_bdcdata, gv_datab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    REFRESH gi_bdcdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE: sy-datum+0(4) TO gv_year,               "Todays data.&lt;/P&gt;&lt;P&gt;          sy-datum+4(2) TO gv_mon,&lt;/P&gt;&lt;P&gt;          sy-datum+6(2) TO gv_date.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE gv_mon lc_slash gv_date lc_slash gv_year INTO gv_datab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT gi_valid_itab INTO gw_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPMSVMA' '0100'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'VIEWNAME'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=UPD'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'VIEWNAME'&lt;/P&gt;&lt;P&gt;                                    'V_T604'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'VIMDYNFLDS-LTD_DTA_NO'&lt;/P&gt;&lt;P&gt;                                    'X'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPL080E' '0020'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'V_T604-BEMEH(01)'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=NEWL'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPL080E' '0040'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'V_T604-MINOL'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=UEBE'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'V_T604-LAND1'&lt;/P&gt;&lt;P&gt;                                    gw_itab-land1.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'V_T604-STAWN'&lt;/P&gt;&lt;P&gt;                                    gw_itab-stawn.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'V_T604-TEXT1'&lt;/P&gt;&lt;P&gt;                                    gw_itab-text1.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'V_T604-BEMEH'&lt;/P&gt;&lt;P&gt;                                    gw_itab-bemeh.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'V_T604-IMPMA'&lt;/P&gt;&lt;P&gt;                                    gw_itab-impma.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'V_T604-MINOL'&lt;/P&gt;&lt;P&gt;                                    gw_itab-minol.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPL080E' '0020'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'V_T604-BEMEH(01)'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=BACK'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPLSPO1' '0100'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=YES'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPLSTRD' '0300'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'KO008-TRKORR'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=INSA'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'KO008-TRKORR'&lt;/P&gt;&lt;P&gt;                                    'BS7K900776'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPLSTR8' '0102'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'KO013-PROJECT'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=DOUBLECLICK'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'KO013-TARSYSTEM'&lt;/P&gt;&lt;P&gt;                                    'BS7.200'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPLSTR8' '0102'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'KO013-AS4TEXT'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=CREA'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'KO013-AS4TEXT'&lt;/P&gt;&lt;P&gt;                                    'another req'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'KO013-TARSYSTEM'&lt;/P&gt;&lt;P&gt;                                    'BS7.200'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPLSTRD' '0300'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'KO008-TRKORR'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=LOCK'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'KO008-TRKORR'&lt;/P&gt;&lt;P&gt;                                    'BS7K900778'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPMSVMA' '0100'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '/EBACK'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                    'VIEWNAME'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_transaction USING lv_tcode&lt;/P&gt;&lt;P&gt;      .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      REFRESH gi_bdcdata.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "bdc&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  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;X_PROGRAM  text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;X_DYNPRO   text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_dynpro USING x_program  TYPE any x_dynpro TYPE any.               " BDC sturucture&lt;/P&gt;&lt;P&gt;  CLEAR gw_bdcdata.&lt;/P&gt;&lt;P&gt;  gw_bdcdata-program  = x_program.&lt;/P&gt;&lt;P&gt;  gw_bdcdata-dynpro   = x_dynpro.&lt;/P&gt;&lt;P&gt;  gw_bdcdata-dynbegin = gc_dynbegin.&lt;/P&gt;&lt;P&gt;  APPEND gw_bdcdata TO gi_bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "bdc_dynpro&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&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;X_FNAM     text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;X_FVAL     text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_field USING x_fnam TYPE any x_fval TYPE any.&lt;/P&gt;&lt;P&gt;  IF NOT x_fval IS INITIAL.&lt;/P&gt;&lt;P&gt;    CLEAR gw_bdcdata.&lt;/P&gt;&lt;P&gt;    gw_bdcdata-fnam = x_fnam.&lt;/P&gt;&lt;P&gt;    gw_bdcdata-fval = x_fval.&lt;/P&gt;&lt;P&gt;    APPEND gw_bdcdata TO gi_bdcdata.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "BDC_FIELD&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  bdc_transaction&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;X_TCODE    text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_transaction USING x_tcode TYPE any.                      "BDC Transaction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lv_flag TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL TRANSACTION x_tcode USING gi_bdcdata&lt;/P&gt;&lt;P&gt;                    MODE        gc_mode&lt;/P&gt;&lt;P&gt;                    UPDATE       gc_mode1&lt;/P&gt;&lt;P&gt;                    MESSAGES INTO gi_msg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    EXIT.&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;  CLEAR: lv_flag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT gi_msg INTO gw_msg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF gw_msg-msgtyp EQ gc_sucess.&lt;/P&gt;&lt;P&gt;      IF lv_flag EQ space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        gv_no_succs = gv_no_succs + 1.&lt;/P&gt;&lt;P&gt;        lv_flag = gc_flag.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'MESSAGE_TEXT_BUILD'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          msgid               = gw_msg-msgid&lt;/P&gt;&lt;P&gt;          msgnr               = gw_msg-msgnr&lt;/P&gt;&lt;P&gt;          msgv1               = gw_msg-msgv1&lt;/P&gt;&lt;P&gt;          msgv2               = gw_msg-msgv2&lt;/P&gt;&lt;P&gt;          msgv3               = gw_msg-msgv3&lt;/P&gt;&lt;P&gt;          msgv4               = gw_msg-msgv4&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          message_text_output = gv_msg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND gv_msg TO gi_msg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF lv_flag EQ space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        gv_no_error = gv_no_error + 1.&lt;/P&gt;&lt;P&gt;        lv_flag = gc_flag.&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;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "bdc_transaction&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Mar 2007 15:07:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097335#M436807</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-29T15:07:33Z</dc:date>
    </item>
    <item>
      <title>Re: CONVERSIONS</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097336#M436808</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     First you should do recording for BDC using transaction SHDB. It will create a program automatically... in that program you need to create an internal table which contains all the fields to be uploaded into database table through BDC.&lt;/P&gt;&lt;P&gt;Then do the required validations...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The above program may help you..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Buvana&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Award points if helpful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Mar 2007 15:11:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/conversions/m-p/2097336#M436808</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-29T15:11:00Z</dc:date>
    </item>
  </channel>
</rss>

