<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: BDC for CS01 ??? in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788495#M911381</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try Referring to the below Program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF x_output,&lt;/P&gt;&lt;P&gt;          matnr   TYPE   rc29n-matnr,                    "Material Number&lt;/P&gt;&lt;P&gt;          werks   TYPE   rc29n-werks,                    "Plant&lt;/P&gt;&lt;P&gt;          stlan   TYPE   rc29n-stlan,                    "BOM Usage 'Z'&lt;/P&gt;&lt;P&gt;          datuv   TYPE   sy-datum,                       "Valid From&lt;/P&gt;&lt;P&gt;          bmeng   TYPE   rc29k-bmeng,                    "Base Quantity&lt;/P&gt;&lt;P&gt;          stlst   TYPE   rc29k-stlst,                    "BOM Status&lt;/P&gt;&lt;P&gt;          idnrk   TYPE   rc29p-idnrk,                    "Material Number&lt;/P&gt;&lt;P&gt;          menge   TYPE   rc29p-menge,                    "Quantity&lt;/P&gt;&lt;P&gt;          postp   TYPE   rc29p-postp,                    "Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;          rvrel   TYPE   rc29p-rvrel,                    "Relevant to Sales&lt;/P&gt;&lt;P&gt;          sanfe   TYPE   rc29p-sanfe,                    "Relevant to Production&lt;/P&gt;&lt;P&gt;          SANKA   type   RC29P-SANKA,                    "Indicator for Relevancy to Costing&lt;/P&gt;&lt;P&gt;      END OF x_output,&lt;/P&gt;&lt;P&gt;      BEGIN OF x_head,&lt;/P&gt;&lt;P&gt;          matnr   TYPE   rc29n-matnr,                    "Material Number&lt;/P&gt;&lt;P&gt;          werks   TYPE   rc29n-werks,                    "Plant&lt;/P&gt;&lt;P&gt;          stlan   TYPE   rc29n-stlan,                    "BOM Usage 'Z'&lt;/P&gt;&lt;P&gt;          datuv   TYPE   sy-datum,                       "Valid From&lt;/P&gt;&lt;P&gt;          bmeng   TYPE   rc29k-bmeng,                    "Base Quantity&lt;/P&gt;&lt;P&gt;          stlst   TYPE   rc29k-stlst,                    "BOM Status&lt;/P&gt;&lt;P&gt;      END OF x_head,&lt;/P&gt;&lt;P&gt;      BEGIN OF x_item,&lt;/P&gt;&lt;P&gt;          matnr   TYPE    rc29n-matnr,                   "Material Number&lt;/P&gt;&lt;P&gt;          idnrk   LIKE   rc29p-idnrk,                    "Material Number&lt;/P&gt;&lt;P&gt;          menge   LIKE   rc29p-menge,                    "Quantity&lt;/P&gt;&lt;P&gt;          postp   LIKE   rc29p-postp,                    "Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;          rvrel   LIKE   rc29p-rvrel,                    "Relivant to Sales&lt;/P&gt;&lt;P&gt;          sanfe   LIKE   rc29p-sanfe,                    "Relevant to Production&lt;/P&gt;&lt;P&gt;          SANKA   type   RC29P-SANKA,                    "Indicator for Relevancy to Costing&lt;/P&gt;&lt;P&gt;      END OF x_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal Table&lt;/P&gt;&lt;P&gt;DATA :int_output  TYPE TABLE OF x_output,&lt;/P&gt;&lt;P&gt;      int_head    TYPE TABLE OF x_head,&lt;/P&gt;&lt;P&gt;      int_item    TYPE TABLE OF x_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for messages during the BDC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: int_msgtab          TYPE       TABLE OF       bdcmsgcoll.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table for BDC transaction data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: int_bdcdata         LIKE       bdcdata              OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*WORK AREA FOR UPLOAD FILE&lt;/P&gt;&lt;P&gt;DATA: w_output            TYPE       X_output,&lt;/P&gt;&lt;P&gt;      W_ITEM              TYPE       X_ITEM,&lt;/P&gt;&lt;P&gt;      W_HEAD              TYPE       X_HEAD.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Work Area for messages during the BDC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: w_msgtab            TYPE       bdcmsgcoll,&lt;/P&gt;&lt;P&gt;      w_ctu_params        TYPE       ctu_params.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: g_v_mode            TYPE       c                   VALUE   'A',                               "BDC Mode&lt;/P&gt;&lt;P&gt;      g_v_update          TYPE       c                   VALUE   'S',                               "BDC Update Method&lt;/P&gt;&lt;P&gt;      g_v_str_msg(255)    TYPE       c.                                                             "String for Error Msg&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: index               TYPE       i,&lt;/P&gt;&lt;P&gt;      counter_line_item   TYPE       i,&lt;/P&gt;&lt;P&gt;      v_idnrk(30)         TYPE       c,                                                             "Variable for procesing Material Number&lt;/P&gt;&lt;P&gt;      v_menge(30)         TYPE       c,                                                             "Variable for procesing Quantity&lt;/P&gt;&lt;P&gt;      v_postp(30)         TYPE       c,                                                             "Variable for procesing Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;      idx                 TYPE       n     LENGTH 2,&lt;/P&gt;&lt;P&gt;      idx1                TYPE       n     LENGTH 2,&lt;/P&gt;&lt;P&gt;      flag                TYPE       i                   VALUE    0,&lt;/P&gt;&lt;P&gt;      g_file              TYPE       string.&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;----&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;SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_file LIKE cffile-filename DEFAULT 'C:\so.Txt' OBLIGATORY.                            "File Name&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b2.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Browse the path where file is stored&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   CALL FUNCTION 'F4_FILENAME'                                                                      "Allows user to select path/file&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              program_name  = syst-repid&lt;/P&gt;&lt;P&gt;              dynpro_number = syst-dynnr&lt;/P&gt;&lt;P&gt;              field_name    = 'p_file'&lt;/P&gt;&lt;P&gt;         IMPORTING&lt;/P&gt;&lt;P&gt;              file_name     = p_file.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    write: / 'Error'(002).&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  PERFORM upload.&lt;/P&gt;&lt;P&gt;  PERFORM DELETE_HEADING.&lt;/P&gt;&lt;P&gt;  PERFORM conversion_on_fields .&lt;/P&gt;&lt;P&gt;  PERFORM fill_bdcdata .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  upload&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM upload.&lt;/P&gt;&lt;P&gt;   g_file = p_file.&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                = g_file&lt;/P&gt;&lt;P&gt;      filetype                = 'ASC'&lt;/P&gt;&lt;P&gt;      has_field_separator     = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      data_tab                = int_output&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;  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;ENDFORM . " upload&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  delete_heading&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 delete_heading .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Deleting the Headings of the Excel Sheet&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DELETE int_output INDEX 1.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " delete_heading&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  conversion_on_fields&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 conversion_on_fields .&lt;/P&gt;&lt;P&gt;if not int_output[] is initial.&lt;/P&gt;&lt;P&gt;  LOOP AT int_output into w_output.&lt;/P&gt;&lt;P&gt;*Material Number&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-matnr&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-matnr.&lt;/P&gt;&lt;P&gt;*Plant&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-werks&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-werks.&lt;/P&gt;&lt;P&gt;*BOM Usage&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-stlan&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-stlan.&lt;/P&gt;&lt;P&gt;*Valid From&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-datuv&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-datuv.&lt;/P&gt;&lt;P&gt;*BOM Status&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-stlst&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-stlst.&lt;/P&gt;&lt;P&gt;*Material Number&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-idnrk&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-idnrk.&lt;/P&gt;&lt;P&gt;*Price List&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-postp&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-postp.&lt;/P&gt;&lt;P&gt;*Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-sanfe&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-sanfe.&lt;/P&gt;&lt;P&gt;*Relivant to Sales&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-rvrel&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-rvrel.&lt;/P&gt;&lt;P&gt;*Indicator for Relevancy to Costing&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-SANKA&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-SANKA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODIFY INT_output   INDEX sy-tabix&lt;/P&gt;&lt;P&gt;                     FROM W_OUTPUT TRANSPORTING   matnr                                             "Material Number&lt;/P&gt;&lt;P&gt;                                                  werks                                             "Plant&lt;/P&gt;&lt;P&gt;                                                  stlan                                             "BOM Usage 'Z'&lt;/P&gt;&lt;P&gt;                                                  datuv                                             "Valid From&lt;/P&gt;&lt;P&gt;                                                  stlst                                             "BOM Status&lt;/P&gt;&lt;P&gt;                                                  idnrk                                             "Component Number&lt;/P&gt;&lt;P&gt;                                                  postp                                             "Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;                                                  sanfe                                             "Relevant to Production&lt;/P&gt;&lt;P&gt;                                                  rvrel                                             "Relevant to Sales&lt;/P&gt;&lt;P&gt;                                                  SANKA.                                            "Indicator for Relevancy to Costing&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " conversion_on_fields&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  fill_bdcdata&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;&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;Filling the BDC Table according to the sequence of the 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 fill_bdcdata .&lt;/P&gt;&lt;P&gt;DATA: v_bmeng(13),&lt;/P&gt;&lt;P&gt;      v_menge1(13).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  w_ctu_params-dismode = g_v_mode.&lt;/P&gt;&lt;P&gt;  w_ctu_params-updmode = g_v_update.&lt;/P&gt;&lt;P&gt;  w_ctu_params-defsize = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT int_output[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT int_output into w_output.&lt;/P&gt;&lt;P&gt;      ON CHANGE OF w_output-matnr.&lt;/P&gt;&lt;P&gt;      MOVE: W_OUTPUT-MATNR TO W_HEAD-MATNR,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-werks TO W_HEAD-werks,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-stlan TO W_HEAD-stlan,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-datuv TO W_HEAD-datuv,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-bmeng TO W_HEAD-bmeng,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-stlst TO W_HEAD-stlst.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND w_head TO INT_HEAD.&lt;/P&gt;&lt;P&gt;        CLEAR w_head.&lt;/P&gt;&lt;P&gt;      ENDON.&lt;/P&gt;&lt;P&gt;*TO HAVE LINK BETWEEN HEADER AND ITEM TABLE USE LIFNR AS LINKER&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING w_output TO w_item.&lt;/P&gt;&lt;P&gt;      APPEND w_item TO INT_ITEM.&lt;/P&gt;&lt;P&gt;      CLEAR w_item.&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;  IF NOT int_head[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT int_head into w_head .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ON CHANGE OF INT_HEAD-MATNR.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR int_bdcdata.&lt;/P&gt;&lt;P&gt;      REFRESH int_bdcdata.&lt;/P&gt;&lt;P&gt;*INITIAL SCREEN&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING   'SAPLCSDI' '0100'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                      'RC29N-DATUV'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                      '/00'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29N-MATNR'&lt;/P&gt;&lt;P&gt;                                       w_head-matnr.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29N-WERKS'&lt;/P&gt;&lt;P&gt;                                       w_head-werks.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29N-STLAN'&lt;/P&gt;&lt;P&gt;                                       w_head-stlan.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29N-DATUV'&lt;/P&gt;&lt;P&gt;                                       w_head-datuv.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING   'SAPLCSDI' '0110'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                      'RC29K-BMENG'.&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;      MOVE W_head-bmeng       TO       v_bmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29K-BMENG'&lt;/P&gt;&lt;P&gt;                                      v_bmeng.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29K-STLST'&lt;/P&gt;&lt;P&gt;                                       w_head-stlst.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING   'SAPLCSDI' '0111'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                      'RC29K-LABOR'.&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;      MOVE 1                  TO     idx.&lt;/P&gt;&lt;P&gt;      counter_line_item = 0.&lt;/P&gt;&lt;P&gt;      if not int_item[] is initial.&lt;/P&gt;&lt;P&gt;      LOOP AT INT_item INTO W_ITEM  WHERE matnr = W_head-matnr.&lt;/P&gt;&lt;P&gt;        counter_line_item = counter_line_item + 1.&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;*Processing of Line-Items&lt;/P&gt;&lt;P&gt;      if not int_item[] is initial.&lt;/P&gt;&lt;P&gt;      LOOP AT INT_item INTO W_ITEM  WHERE matnr = w_head-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro      USING 'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;*Processing of first 14 Line-Items&lt;/P&gt;&lt;P&gt;        IF flag = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-IDNRK(' idx ')' INTO v_idnrk.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-MENGE(' idx ')' INTO v_menge.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-POSTP(' idx ')' INTO v_postp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field       USING    v_idnrk&lt;/P&gt;&lt;P&gt;                                           W_item-idnrk.                              "cOMPONENT Number&lt;/P&gt;&lt;P&gt;          MOVE  W_item-menge      TO       v_menge1.&lt;/P&gt;&lt;P&gt;          PERFORM   bdc_field     USING    v_menge&lt;/P&gt;&lt;P&gt;                                           v_menge1.                                    "Quantity&lt;/P&gt;&lt;P&gt;          PERFORM   bdc_field     USING    v_postp&lt;/P&gt;&lt;P&gt;                                           w_item-postp.                              "L&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;      ELSE.&lt;/P&gt;&lt;P&gt;          idx1 = idx + 1.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-IDNRK(' idx1 ')' INTO v_idnrk.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-MENGE(' idx1 ')' INTO v_menge.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-POSTP(' idx1 ')' INTO v_postp.&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field       USING     v_idnrk&lt;/P&gt;&lt;P&gt;                                            w_item-idnrk.                              "cOMPONENT Number&lt;/P&gt;&lt;P&gt;          MOVE  W_item-menge      TO        v_menge1.&lt;/P&gt;&lt;P&gt;          PERFORM  bdc_field      USING     v_menge&lt;/P&gt;&lt;P&gt;                                            v_menge1.                                     "Quantity&lt;/P&gt;&lt;P&gt;          PERFORM  bdc_field      USING     v_postp&lt;/P&gt;&lt;P&gt;                                            w_item-postp.                                "L&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;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro        USING     'SAPLCSDI' '0130'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                            '/00'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_SUBSCR'&lt;/P&gt;&lt;P&gt;                                            'SAPLCSDI'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_SUBSCR'&lt;/P&gt;&lt;P&gt;                                            'SAPLCSDI'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-IDNRK'&lt;/P&gt;&lt;P&gt;                                            w_item-idnrk.                            "cOMPONENT Number&lt;/P&gt;&lt;P&gt;        MOVE W_item-menge         TO        v_menge1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-MENGE'&lt;/P&gt;&lt;P&gt;                                            v_menge1.                                   "Quantity&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POSNR'.&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_dynpro        USING     'SAPLCSDI' '0131'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                            '/00'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_SUBSCR'&lt;/P&gt;&lt;P&gt;                                            'SAPLCSDI'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_SUBSCR'&lt;/P&gt;&lt;P&gt;                                            'SAPLCSDI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POTX1'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-SANFE'&lt;/P&gt;&lt;P&gt;                                             w_item-sanfe.                                  "X&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-RVREL'&lt;/P&gt;&lt;P&gt;                                             w_item-rvrel.                                  "X&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-SANKA'&lt;/P&gt;&lt;P&gt;                                             w_item-SANKA.                                  "X&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;*First Screen Processing with 14 rows&lt;/P&gt;&lt;P&gt;     IF idx = 14.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro       USING      'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field        USING      'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                            '=FCNP'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field        USING      'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POSNR(02)'.&lt;/P&gt;&lt;P&gt;        idx  = 0.&lt;/P&gt;&lt;P&gt;        flag = 1.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;*Second screen onwards processing with 13 rows&lt;/P&gt;&lt;P&gt;*As the first row in the next screen is always filled the last row of the previous row&lt;/P&gt;&lt;P&gt;     IF idx = 13.&lt;/P&gt;&lt;P&gt;       IF flag = 1.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro      USING       'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING       'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POSNR(01)'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING       'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                            '=FCNP'.&lt;/P&gt;&lt;P&gt;        idx = 0.&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;&lt;/P&gt;&lt;P&gt;        idx = idx + 1.&lt;/P&gt;&lt;P&gt;        index = index + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     IF index = counter_line_item.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro      USING       'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING       'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POSTP(02)'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING       'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                             '=FCBU'.&lt;/P&gt;&lt;P&gt;        PERFORM f_elog.&lt;/P&gt;&lt;P&gt;        index = 0.&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;ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_bdcdata&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form to set error log                                                            *&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;P&gt;*Setting the Error log to display Success or Error while creating the Sales Order  *&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;FORM f_elog.&lt;/P&gt;&lt;P&gt;  DATA len TYPE i.&lt;/P&gt;&lt;P&gt;  CLEAR int_msgtab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Call Transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL TRANSACTION 'CS01'&lt;/P&gt;&lt;P&gt;                USING int_bdcdata&lt;/P&gt;&lt;P&gt;                OPTIONS FROM w_ctu_params&lt;/P&gt;&lt;P&gt;                MESSAGES INTO int_msgtab.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ABAP4_COMMIT_WORK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Error/Sucess Handling&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT int_msgtab INTO w_msgtab&lt;/P&gt;&lt;P&gt;                      WHERE msgtyp = 'E'&lt;/P&gt;&lt;P&gt;                         OR msgtyp = 'S'.&lt;/P&gt;&lt;P&gt;*Selecting the Text from T100 Table (T100 stores all the messages while running any Transaction)&lt;/P&gt;&lt;P&gt;    SELECT SINGLE text&lt;/P&gt;&lt;P&gt;                    FROM t100&lt;/P&gt;&lt;P&gt;                    INTO g_v_str_msg&lt;/P&gt;&lt;P&gt;                    WHERE sprsl EQ w_msgtab-msgspra AND&lt;/P&gt;&lt;P&gt;                          arbgb EQ w_msgtab-msgid AND&lt;/P&gt;&lt;P&gt;                          msgnr EQ w_msgtab-msgnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If entry found in T100 then the 4 fields MSGV1, MSGV2, MSGV3, MSGV4 are concatenated&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      IF NOT w_msgtab-msgv1 IS INITIAL.&lt;/P&gt;&lt;P&gt;        len = STRLEN( w_msgtab-msgv1 ).&lt;/P&gt;&lt;P&gt;        REPLACE '&amp;amp;1' WITH w_msgtab-msgv1(len) INTO g_v_str_msg.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF NOT w_msgtab-msgv2 IS INITIAL.&lt;/P&gt;&lt;P&gt;        len = STRLEN( w_msgtab-msgv2 ).&lt;/P&gt;&lt;P&gt;        REPLACE '&amp;amp;2' WITH w_msgtab-msgv2(len) INTO g_v_str_msg.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF NOT w_msgtab-msgv3 IS INITIAL.&lt;/P&gt;&lt;P&gt;        len = STRLEN( w_msgtab-msgv3 ).&lt;/P&gt;&lt;P&gt;        REPLACE '&amp;amp;3' WITH w_msgtab-msgv3(len) INTO g_v_str_msg.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF NOT w_msgtab-msgv4 IS INITIAL.&lt;/P&gt;&lt;P&gt;        len = STRLEN( w_msgtab-msgv4 ).&lt;/P&gt;&lt;P&gt;        REPLACE '&amp;amp;' WITH w_msgtab-msgv4(len) INTO g_v_str_msg.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      TRANSLATE g_v_str_msg USING '&amp;amp; '.&lt;/P&gt;&lt;P&gt;      CONDENSE g_v_str_msg.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Display with Colour&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF w_msgtab-msgtyp EQ 'E'.&lt;/P&gt;&lt;P&gt;      WRITE g_v_str_msg COLOR 6.                                   "Red Colour&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      WRITE g_v_str_msg COLOR 5.                                   "Green Colour&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "f_elog&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;*&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;/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;FORM bdc_dynpro USING program dynpro.&lt;/P&gt;&lt;P&gt;  CLEAR int_bdcdata.&lt;/P&gt;&lt;P&gt;  int_bdcdata-program = program.&lt;/P&gt;&lt;P&gt;  int_bdcdata-dynpro = dynpro.&lt;/P&gt;&lt;P&gt;  int_bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND int_bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "bdc_dynpro&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;/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;/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;FORM bdc_field USING fnam fval TYPE any.&lt;/P&gt;&lt;P&gt;  CLEAR int_bdcdata.&lt;/P&gt;&lt;P&gt;  int_bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;  int_bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;  WRITE fval TO int_bdcdata-fval LEFT-JUSTIFIED.&lt;/P&gt;&lt;P&gt;  APPEND int_bdcdata.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;E N D - O F - S E L E C T I O N                                               *&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;*Free all internal tables&lt;/P&gt;&lt;P&gt;  FREE: int_head,&lt;/P&gt;&lt;P&gt;        int_item,&lt;/P&gt;&lt;P&gt;        int_output.&lt;/P&gt;&lt;P&gt;*********************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;E N D O F R E P O R T *&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;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="81" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&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;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 28 Apr 2008 13:29:02 GMT</pubDate>
    <dc:creator>former_member609120</dc:creator>
    <dc:date>2008-04-28T13:29:02Z</dc:date>
    <item>
      <title>BDC for CS01 ???</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788491#M911377</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I want to create BDC program(in SAP version ecc6.0) for transaction for CS01 (Create Material BOM). where in first screen i have 1st four fields and in second screen(in Material tab) I have many rows of data to be updated in table control where no of rows of data differ from material to material.&lt;/P&gt;&lt;P&gt;Can anybody suggest me with coding.....&lt;/P&gt;&lt;P&gt;thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 28 Apr 2008 09:14:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788491#M911377</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-28T09:14:26Z</dc:date>
    </item>
    <item>
      <title>Re: BDC for CS01 ???</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788492#M911378</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 get the no of records to be uploaded for a given BOM. i.e. say there are say 10 Raw materials/Packing Materials/SGS to be uplaod in the current BOM. For first 2 items update all details like materials/Qty/UOM's etc etc As normal BDC followed with enter for act record. Now click the 'Position' Button at the bottomm of the window, &amp;amp; give item code as 20, ( Since we have keyed in data for 2 records , First will have item code of 10 &amp;amp; second will have item code of 20 ) , this will bring item code 20 on the first line, now key in next material on line 30 by giving details like Material/Qty/UOM etc etc &amp;amp; aagain click button 'Position' &amp;amp; give item code as 30, This will agin bring Item 30 as the top, on first line, again key in next item on the next line..etc etc till your are finished with all the items. &amp;amp; finally press save button. Please note that if there are only 2 items in a BOM then the procedure of clicking 'Position' button will not be required.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope This helps,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Raju Chitale&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 28 Apr 2008 10:06:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788492#M911378</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-28T10:06:56Z</dc:date>
    </item>
    <item>
      <title>Re: BDC for CS01 ???</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788493#M911379</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt; Try with the following code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS truxs.                                           "#EC *&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_head, " structure for header file&lt;/P&gt;&lt;P&gt;          ind(2) TYPE n,&lt;/P&gt;&lt;P&gt;          matnr(18),                                        "#EC *&lt;/P&gt;&lt;P&gt;          werks(4),                                         "#EC *&lt;/P&gt;&lt;P&gt;          stlan(1),                                         "#EC *&lt;/P&gt;&lt;P&gt;       END OF ty_head.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES :BEGIN OF ty_item, "structure for item file&lt;/P&gt;&lt;P&gt;        ind(2) TYPE n,&lt;/P&gt;&lt;P&gt;        postp(1) ,                                          "#EC *&lt;/P&gt;&lt;P&gt;        posnr(4) ,                                          "#EC *&lt;/P&gt;&lt;P&gt;        idnrk(18) ,                                         "#EC *&lt;/P&gt;&lt;P&gt;        menge(13),                                          "#EC *&lt;/P&gt;&lt;P&gt;        potx1(40),                                          "#EC *&lt;/P&gt;&lt;P&gt;      END OF ty_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES :BEGIN OF ty_flat, " structure for final file&lt;/P&gt;&lt;P&gt;          matnr(18) ,                                       "#EC *&lt;/P&gt;&lt;P&gt;          werks(4) ,                                        "#EC *&lt;/P&gt;&lt;P&gt;          stlan(1) ,                                        "#EC *&lt;/P&gt;&lt;P&gt;          postp(1),                                         "#EC *&lt;/P&gt;&lt;P&gt;          posnr(4) ,                                        "#EC *&lt;/P&gt;&lt;P&gt;          idnrk(18) ,                                       "#EC *&lt;/P&gt;&lt;P&gt;          menge(13),                                        "#EC *&lt;/P&gt;&lt;P&gt;      END OF ty_flat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;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;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : t_flat TYPE TABLE OF ty_flat,&lt;/P&gt;&lt;P&gt;       f_file TYPE string,&lt;/P&gt;&lt;P&gt;       t_head TYPE TABLE OF ty_head,&lt;/P&gt;&lt;P&gt;       t_item TYPE TABLE OF ty_item,&lt;/P&gt;&lt;P&gt;       t_bdcdata TYPE TABLE OF bdcdata,&lt;/P&gt;&lt;P&gt;       t_bdcmsg TYPE TABLE OF 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;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&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;                 WORK AREA DECLARATIONS                               *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :  st_flat LIKE LINE OF t_flat,&lt;/P&gt;&lt;P&gt;        st_head LIKE LINE OF t_head,&lt;/P&gt;&lt;P&gt;        st_item LIKE LINE OF t_item,&lt;/P&gt;&lt;P&gt;        st_bdcdata LIKE LINE OF t_bdcdata,&lt;/P&gt;&lt;P&gt;        st_bdcmsg LIKE LINE OF t_bdcmsg.                    "#EC NEEDED&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;HR originaltext="-----------------------------------------------------------------" /&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;                   VARIABLES                                         *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : v_ind(2) TYPE n,                                     " value 1,&lt;/P&gt;&lt;P&gt;       v_fld(20),                                          "#EC *&lt;/P&gt;&lt;P&gt;       v_no(2) TYPE n value 1.&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;HR originaltext="-----------------------------------------------------------------" /&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;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-001. "selection screen                  "#EC *&lt;/P&gt;&lt;P&gt;PARAMETERS: p_fnam TYPE rlgrap-filename OBLIGATORY.                                                "#EC *&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;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&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;                  AT  SELECTION SCREEN                               *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fnam.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     F4 FUNCTIONALITY                               *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'F4_FILENAME'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      program_name  = syst-cprog&lt;/P&gt;&lt;P&gt;      dynpro_number = syst-dynnr&lt;/P&gt;&lt;P&gt;      field_name    = ' '&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      file_name     = p_fnam.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_fnam IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VALIDATE FILE TYPE&lt;/P&gt;&lt;P&gt;    PERFORM sub_validate_txt_type.&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;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  f_file = p_fnam.&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                = f_file&lt;/P&gt;&lt;P&gt;      filetype                = 'ASC'&lt;/P&gt;&lt;P&gt;      has_field_separator     = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      data_tab                = t_flat&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;  IF sy-subrc eq 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;HR originaltext="-----------------------------------------------------------------" /&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;                    LOOP THE ITAB                             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT t_flat BY matnr .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT t_flat INTO st_flat.&lt;/P&gt;&lt;P&gt;    MOVE :&lt;/P&gt;&lt;P&gt;    st_flat-matnr TO st_head-matnr,&lt;/P&gt;&lt;P&gt;    st_flat-werks TO st_head-werks,&lt;/P&gt;&lt;P&gt;    st_flat-stlan TO st_head-stlan.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    move:&lt;/P&gt;&lt;P&gt;    st_flat-posnr to st_item-posnr,&lt;/P&gt;&lt;P&gt;    st_flat-postp to st_item-postp,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    st_flat-idnrk to st_item-idnrk,&lt;/P&gt;&lt;P&gt;    st_flat-menge to st_item-menge.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE v_ind TO st_head-ind.&lt;/P&gt;&lt;P&gt;    MOVE v_ind TO st_item-ind.&lt;/P&gt;&lt;P&gt;    APPEND st_head TO t_head.&lt;/P&gt;&lt;P&gt;    APPEND st_item TO t_item.&lt;/P&gt;&lt;P&gt;    CLEAR st_head.&lt;/P&gt;&lt;P&gt;    CLEAR st_item.&lt;/P&gt;&lt;P&gt;    CLEAR v_ind.&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 t_item BY ind.&lt;/P&gt;&lt;P&gt;  SORT t_head BY ind.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM t_head.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM t_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT t_head INTO st_head.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro USING 'SAPLCSDI' '0100'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;    'RC29N-STLAN'.&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 'RC29N-MATNR'&lt;/P&gt;&lt;P&gt;    st_head-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field USING 'RC29N-WERKS'&lt;/P&gt;&lt;P&gt;    st_head-werks.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field USING 'RC29N-STLAN'&lt;/P&gt;&lt;P&gt;    st_head-stlan.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro USING 'SAPLCSDI' '0110'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;    'RC29K-ZTEXT'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;    '/00'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro USING 'SAPLCSDI' '0111'.&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;    'RC29K-LABOR'.&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;    v_no  = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT t_item INTO st_item WHERE ind = st_head-ind.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro USING 'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;      'RC29P-POSTP'.&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;      on change of st_item-posnr.&lt;/P&gt;&lt;P&gt;        CONCATENATE 'RC29P-IDNRK(' v_no ')' INTO v_fld.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field USING v_fld&lt;/P&gt;&lt;P&gt;        st_item-idnrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CONCATENATE 'RC29P-MENGE(' v_no ')' INTO v_fld.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field USING v_fld&lt;/P&gt;&lt;P&gt;        st_item-menge.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CONCATENATE 'RC29P-POSTP(' v_no ')' INTO v_fld.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field USING v_fld&lt;/P&gt;&lt;P&gt;        'L'.&lt;/P&gt;&lt;P&gt;*st_item-postp.&lt;/P&gt;&lt;P&gt;      endon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING 'BDC_SUBSCR'&lt;/P&gt;&lt;P&gt;      'SAPLCSDI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      v_no = v_no + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    CLEAR v_no.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;    '=FCBU'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    CALL TRANSACTION                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL TRANSACTION 'CS01' USING t_bdcdata MODE 'E'&lt;/P&gt;&lt;P&gt;    UPDATE 'A' MESSAGES INTO t_bdcmsg.&lt;/P&gt;&lt;P&gt;    REFRESH t_bdcdata.&lt;/P&gt;&lt;P&gt;    CLEAR t_bdcdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&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 new screen                         *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM bdc_dynpro USING program dynpro.                       "#EC *&lt;/P&gt;&lt;P&gt;  CLEAR st_bdcdata.&lt;/P&gt;&lt;P&gt;  st_bdcdata-program = program.&lt;/P&gt;&lt;P&gt;  st_bdcdata-dynpro = dynpro.&lt;/P&gt;&lt;P&gt;  st_bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND st_bdcdata TO t_bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM. "BDC_DYNPRO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;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;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM bdc_field USING fnam fval.                             "#EC *&lt;/P&gt;&lt;P&gt;  CLEAR st_bdcdata.&lt;/P&gt;&lt;P&gt;  st_bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;  st_bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;  APPEND st_bdcdata TO t_bdcdata.&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;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_validate_txt_type .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : str1 TYPE localfile,                               "#EC NEEDED&lt;/P&gt;&lt;P&gt;  str2 TYPE char3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SPLIT p_fnam AT '.'&lt;/P&gt;&lt;P&gt;  INTO str1 str2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  TRANSLATE str2 TO LOWER CASE.                          "#EC TRANSLANG&lt;/P&gt;&lt;P&gt;  IF str2 NE 'txt'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE i001(zmsg).                                     "#EC *&lt;/P&gt;&lt;P&gt;    LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM. "sub_validate_txt_type.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Venkat&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 28 Apr 2008 10:23:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788493#M911379</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-28T10:23:55Z</dc:date>
    </item>
    <item>
      <title>Re: BDC for CS01 ???</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788494#M911380</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;Use the following LSMW object for loading the BOM:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;Object               0030   Material BOM    
Method               0004   Create w/lngTxt 
Program name         RCSBI040               
Program type         B   Batch input&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;     &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you need to schedule for repeat steps at regular intervals you could schedule the background job for the Prg: /SAPDMC/SAP_LSMW_INTERFACE for the above LSMW object. Put the data files on the application server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards, Murugesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 28 Apr 2008 11:09:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788494#M911380</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-28T11:09:10Z</dc:date>
    </item>
    <item>
      <title>Re: BDC for CS01 ???</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788495#M911381</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try Referring to the below Program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF x_output,&lt;/P&gt;&lt;P&gt;          matnr   TYPE   rc29n-matnr,                    "Material Number&lt;/P&gt;&lt;P&gt;          werks   TYPE   rc29n-werks,                    "Plant&lt;/P&gt;&lt;P&gt;          stlan   TYPE   rc29n-stlan,                    "BOM Usage 'Z'&lt;/P&gt;&lt;P&gt;          datuv   TYPE   sy-datum,                       "Valid From&lt;/P&gt;&lt;P&gt;          bmeng   TYPE   rc29k-bmeng,                    "Base Quantity&lt;/P&gt;&lt;P&gt;          stlst   TYPE   rc29k-stlst,                    "BOM Status&lt;/P&gt;&lt;P&gt;          idnrk   TYPE   rc29p-idnrk,                    "Material Number&lt;/P&gt;&lt;P&gt;          menge   TYPE   rc29p-menge,                    "Quantity&lt;/P&gt;&lt;P&gt;          postp   TYPE   rc29p-postp,                    "Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;          rvrel   TYPE   rc29p-rvrel,                    "Relevant to Sales&lt;/P&gt;&lt;P&gt;          sanfe   TYPE   rc29p-sanfe,                    "Relevant to Production&lt;/P&gt;&lt;P&gt;          SANKA   type   RC29P-SANKA,                    "Indicator for Relevancy to Costing&lt;/P&gt;&lt;P&gt;      END OF x_output,&lt;/P&gt;&lt;P&gt;      BEGIN OF x_head,&lt;/P&gt;&lt;P&gt;          matnr   TYPE   rc29n-matnr,                    "Material Number&lt;/P&gt;&lt;P&gt;          werks   TYPE   rc29n-werks,                    "Plant&lt;/P&gt;&lt;P&gt;          stlan   TYPE   rc29n-stlan,                    "BOM Usage 'Z'&lt;/P&gt;&lt;P&gt;          datuv   TYPE   sy-datum,                       "Valid From&lt;/P&gt;&lt;P&gt;          bmeng   TYPE   rc29k-bmeng,                    "Base Quantity&lt;/P&gt;&lt;P&gt;          stlst   TYPE   rc29k-stlst,                    "BOM Status&lt;/P&gt;&lt;P&gt;      END OF x_head,&lt;/P&gt;&lt;P&gt;      BEGIN OF x_item,&lt;/P&gt;&lt;P&gt;          matnr   TYPE    rc29n-matnr,                   "Material Number&lt;/P&gt;&lt;P&gt;          idnrk   LIKE   rc29p-idnrk,                    "Material Number&lt;/P&gt;&lt;P&gt;          menge   LIKE   rc29p-menge,                    "Quantity&lt;/P&gt;&lt;P&gt;          postp   LIKE   rc29p-postp,                    "Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;          rvrel   LIKE   rc29p-rvrel,                    "Relivant to Sales&lt;/P&gt;&lt;P&gt;          sanfe   LIKE   rc29p-sanfe,                    "Relevant to Production&lt;/P&gt;&lt;P&gt;          SANKA   type   RC29P-SANKA,                    "Indicator for Relevancy to Costing&lt;/P&gt;&lt;P&gt;      END OF x_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal Table&lt;/P&gt;&lt;P&gt;DATA :int_output  TYPE TABLE OF x_output,&lt;/P&gt;&lt;P&gt;      int_head    TYPE TABLE OF x_head,&lt;/P&gt;&lt;P&gt;      int_item    TYPE TABLE OF x_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for messages during the BDC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: int_msgtab          TYPE       TABLE OF       bdcmsgcoll.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table for BDC transaction data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: int_bdcdata         LIKE       bdcdata              OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*WORK AREA FOR UPLOAD FILE&lt;/P&gt;&lt;P&gt;DATA: w_output            TYPE       X_output,&lt;/P&gt;&lt;P&gt;      W_ITEM              TYPE       X_ITEM,&lt;/P&gt;&lt;P&gt;      W_HEAD              TYPE       X_HEAD.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Work Area for messages during the BDC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: w_msgtab            TYPE       bdcmsgcoll,&lt;/P&gt;&lt;P&gt;      w_ctu_params        TYPE       ctu_params.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: g_v_mode            TYPE       c                   VALUE   'A',                               "BDC Mode&lt;/P&gt;&lt;P&gt;      g_v_update          TYPE       c                   VALUE   'S',                               "BDC Update Method&lt;/P&gt;&lt;P&gt;      g_v_str_msg(255)    TYPE       c.                                                             "String for Error Msg&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: index               TYPE       i,&lt;/P&gt;&lt;P&gt;      counter_line_item   TYPE       i,&lt;/P&gt;&lt;P&gt;      v_idnrk(30)         TYPE       c,                                                             "Variable for procesing Material Number&lt;/P&gt;&lt;P&gt;      v_menge(30)         TYPE       c,                                                             "Variable for procesing Quantity&lt;/P&gt;&lt;P&gt;      v_postp(30)         TYPE       c,                                                             "Variable for procesing Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;      idx                 TYPE       n     LENGTH 2,&lt;/P&gt;&lt;P&gt;      idx1                TYPE       n     LENGTH 2,&lt;/P&gt;&lt;P&gt;      flag                TYPE       i                   VALUE    0,&lt;/P&gt;&lt;P&gt;      g_file              TYPE       string.&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;----&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;SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_file LIKE cffile-filename DEFAULT 'C:\so.Txt' OBLIGATORY.                            "File Name&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b2.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Browse the path where file is stored&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   CALL FUNCTION 'F4_FILENAME'                                                                      "Allows user to select path/file&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              program_name  = syst-repid&lt;/P&gt;&lt;P&gt;              dynpro_number = syst-dynnr&lt;/P&gt;&lt;P&gt;              field_name    = 'p_file'&lt;/P&gt;&lt;P&gt;         IMPORTING&lt;/P&gt;&lt;P&gt;              file_name     = p_file.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    write: / 'Error'(002).&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  PERFORM upload.&lt;/P&gt;&lt;P&gt;  PERFORM DELETE_HEADING.&lt;/P&gt;&lt;P&gt;  PERFORM conversion_on_fields .&lt;/P&gt;&lt;P&gt;  PERFORM fill_bdcdata .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  upload&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM upload.&lt;/P&gt;&lt;P&gt;   g_file = p_file.&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                = g_file&lt;/P&gt;&lt;P&gt;      filetype                = 'ASC'&lt;/P&gt;&lt;P&gt;      has_field_separator     = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      data_tab                = int_output&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;  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;ENDFORM . " upload&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  delete_heading&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 delete_heading .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Deleting the Headings of the Excel Sheet&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DELETE int_output INDEX 1.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " delete_heading&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  conversion_on_fields&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 conversion_on_fields .&lt;/P&gt;&lt;P&gt;if not int_output[] is initial.&lt;/P&gt;&lt;P&gt;  LOOP AT int_output into w_output.&lt;/P&gt;&lt;P&gt;*Material Number&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-matnr&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-matnr.&lt;/P&gt;&lt;P&gt;*Plant&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-werks&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-werks.&lt;/P&gt;&lt;P&gt;*BOM Usage&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-stlan&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-stlan.&lt;/P&gt;&lt;P&gt;*Valid From&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-datuv&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-datuv.&lt;/P&gt;&lt;P&gt;*BOM Status&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-stlst&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-stlst.&lt;/P&gt;&lt;P&gt;*Material Number&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-idnrk&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-idnrk.&lt;/P&gt;&lt;P&gt;*Price List&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-postp&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-postp.&lt;/P&gt;&lt;P&gt;*Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-sanfe&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-sanfe.&lt;/P&gt;&lt;P&gt;*Relivant to Sales&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-rvrel&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-rvrel.&lt;/P&gt;&lt;P&gt;*Indicator for Relevancy to Costing&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        input  = w_output-SANKA&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        output = w_output-SANKA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODIFY INT_output   INDEX sy-tabix&lt;/P&gt;&lt;P&gt;                     FROM W_OUTPUT TRANSPORTING   matnr                                             "Material Number&lt;/P&gt;&lt;P&gt;                                                  werks                                             "Plant&lt;/P&gt;&lt;P&gt;                                                  stlan                                             "BOM Usage 'Z'&lt;/P&gt;&lt;P&gt;                                                  datuv                                             "Valid From&lt;/P&gt;&lt;P&gt;                                                  stlst                                             "BOM Status&lt;/P&gt;&lt;P&gt;                                                  idnrk                                             "Component Number&lt;/P&gt;&lt;P&gt;                                                  postp                                             "Item Category (Bill of Material)&lt;/P&gt;&lt;P&gt;                                                  sanfe                                             "Relevant to Production&lt;/P&gt;&lt;P&gt;                                                  rvrel                                             "Relevant to Sales&lt;/P&gt;&lt;P&gt;                                                  SANKA.                                            "Indicator for Relevancy to Costing&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " conversion_on_fields&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  fill_bdcdata&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;&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;Filling the BDC Table according to the sequence of the 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 fill_bdcdata .&lt;/P&gt;&lt;P&gt;DATA: v_bmeng(13),&lt;/P&gt;&lt;P&gt;      v_menge1(13).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  w_ctu_params-dismode = g_v_mode.&lt;/P&gt;&lt;P&gt;  w_ctu_params-updmode = g_v_update.&lt;/P&gt;&lt;P&gt;  w_ctu_params-defsize = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT int_output[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT int_output into w_output.&lt;/P&gt;&lt;P&gt;      ON CHANGE OF w_output-matnr.&lt;/P&gt;&lt;P&gt;      MOVE: W_OUTPUT-MATNR TO W_HEAD-MATNR,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-werks TO W_HEAD-werks,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-stlan TO W_HEAD-stlan,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-datuv TO W_HEAD-datuv,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-bmeng TO W_HEAD-bmeng,&lt;/P&gt;&lt;P&gt;             W_OUTPUT-stlst TO W_HEAD-stlst.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND w_head TO INT_HEAD.&lt;/P&gt;&lt;P&gt;        CLEAR w_head.&lt;/P&gt;&lt;P&gt;      ENDON.&lt;/P&gt;&lt;P&gt;*TO HAVE LINK BETWEEN HEADER AND ITEM TABLE USE LIFNR AS LINKER&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING w_output TO w_item.&lt;/P&gt;&lt;P&gt;      APPEND w_item TO INT_ITEM.&lt;/P&gt;&lt;P&gt;      CLEAR w_item.&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;  IF NOT int_head[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT int_head into w_head .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ON CHANGE OF INT_HEAD-MATNR.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR int_bdcdata.&lt;/P&gt;&lt;P&gt;      REFRESH int_bdcdata.&lt;/P&gt;&lt;P&gt;*INITIAL SCREEN&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING   'SAPLCSDI' '0100'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                      'RC29N-DATUV'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                      '/00'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29N-MATNR'&lt;/P&gt;&lt;P&gt;                                       w_head-matnr.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29N-WERKS'&lt;/P&gt;&lt;P&gt;                                       w_head-werks.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29N-STLAN'&lt;/P&gt;&lt;P&gt;                                       w_head-stlan.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29N-DATUV'&lt;/P&gt;&lt;P&gt;                                       w_head-datuv.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING   'SAPLCSDI' '0110'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                      'RC29K-BMENG'.&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;      MOVE W_head-bmeng       TO       v_bmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29K-BMENG'&lt;/P&gt;&lt;P&gt;                                      v_bmeng.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'RC29K-STLST'&lt;/P&gt;&lt;P&gt;                                       w_head-stlst.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING   'SAPLCSDI' '0111'.&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING   'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                      'RC29K-LABOR'.&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;      MOVE 1                  TO     idx.&lt;/P&gt;&lt;P&gt;      counter_line_item = 0.&lt;/P&gt;&lt;P&gt;      if not int_item[] is initial.&lt;/P&gt;&lt;P&gt;      LOOP AT INT_item INTO W_ITEM  WHERE matnr = W_head-matnr.&lt;/P&gt;&lt;P&gt;        counter_line_item = counter_line_item + 1.&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;*Processing of Line-Items&lt;/P&gt;&lt;P&gt;      if not int_item[] is initial.&lt;/P&gt;&lt;P&gt;      LOOP AT INT_item INTO W_ITEM  WHERE matnr = w_head-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro      USING 'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;*Processing of first 14 Line-Items&lt;/P&gt;&lt;P&gt;        IF flag = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-IDNRK(' idx ')' INTO v_idnrk.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-MENGE(' idx ')' INTO v_menge.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-POSTP(' idx ')' INTO v_postp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field       USING    v_idnrk&lt;/P&gt;&lt;P&gt;                                           W_item-idnrk.                              "cOMPONENT Number&lt;/P&gt;&lt;P&gt;          MOVE  W_item-menge      TO       v_menge1.&lt;/P&gt;&lt;P&gt;          PERFORM   bdc_field     USING    v_menge&lt;/P&gt;&lt;P&gt;                                           v_menge1.                                    "Quantity&lt;/P&gt;&lt;P&gt;          PERFORM   bdc_field     USING    v_postp&lt;/P&gt;&lt;P&gt;                                           w_item-postp.                              "L&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;      ELSE.&lt;/P&gt;&lt;P&gt;          idx1 = idx + 1.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-IDNRK(' idx1 ')' INTO v_idnrk.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-MENGE(' idx1 ')' INTO v_menge.&lt;/P&gt;&lt;P&gt;          CONCATENATE 'RC29P-POSTP(' idx1 ')' INTO v_postp.&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field       USING     v_idnrk&lt;/P&gt;&lt;P&gt;                                            w_item-idnrk.                              "cOMPONENT Number&lt;/P&gt;&lt;P&gt;          MOVE  W_item-menge      TO        v_menge1.&lt;/P&gt;&lt;P&gt;          PERFORM  bdc_field      USING     v_menge&lt;/P&gt;&lt;P&gt;                                            v_menge1.                                     "Quantity&lt;/P&gt;&lt;P&gt;          PERFORM  bdc_field      USING     v_postp&lt;/P&gt;&lt;P&gt;                                            w_item-postp.                                "L&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;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro        USING     'SAPLCSDI' '0130'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                            '/00'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_SUBSCR'&lt;/P&gt;&lt;P&gt;                                            'SAPLCSDI'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_SUBSCR'&lt;/P&gt;&lt;P&gt;                                            'SAPLCSDI'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-IDNRK'&lt;/P&gt;&lt;P&gt;                                            w_item-idnrk.                            "cOMPONENT Number&lt;/P&gt;&lt;P&gt;        MOVE W_item-menge         TO        v_menge1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-MENGE'&lt;/P&gt;&lt;P&gt;                                            v_menge1.                                   "Quantity&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POSNR'.&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_dynpro        USING     'SAPLCSDI' '0131'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                            '/00'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_SUBSCR'&lt;/P&gt;&lt;P&gt;                                            'SAPLCSDI'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_SUBSCR'&lt;/P&gt;&lt;P&gt;                                            'SAPLCSDI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POTX1'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-SANFE'&lt;/P&gt;&lt;P&gt;                                             w_item-sanfe.                                  "X&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-RVREL'&lt;/P&gt;&lt;P&gt;                                             w_item-rvrel.                                  "X&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field         USING     'RC29P-SANKA'&lt;/P&gt;&lt;P&gt;                                             w_item-SANKA.                                  "X&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;*First Screen Processing with 14 rows&lt;/P&gt;&lt;P&gt;     IF idx = 14.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro       USING      'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field        USING      'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                            '=FCNP'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field        USING      'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POSNR(02)'.&lt;/P&gt;&lt;P&gt;        idx  = 0.&lt;/P&gt;&lt;P&gt;        flag = 1.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;*Second screen onwards processing with 13 rows&lt;/P&gt;&lt;P&gt;*As the first row in the next screen is always filled the last row of the previous row&lt;/P&gt;&lt;P&gt;     IF idx = 13.&lt;/P&gt;&lt;P&gt;       IF flag = 1.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro      USING       'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING       'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POSNR(01)'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING       'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                            '=FCNP'.&lt;/P&gt;&lt;P&gt;        idx = 0.&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;&lt;/P&gt;&lt;P&gt;        idx = idx + 1.&lt;/P&gt;&lt;P&gt;        index = index + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     IF index = counter_line_item.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_dynpro      USING       'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING       'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                            'RC29P-POSTP(02)'.&lt;/P&gt;&lt;P&gt;        PERFORM bdc_field       USING       'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                             '=FCBU'.&lt;/P&gt;&lt;P&gt;        PERFORM f_elog.&lt;/P&gt;&lt;P&gt;        index = 0.&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;ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_bdcdata&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form to set error log                                                            *&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;P&gt;*Setting the Error log to display Success or Error while creating the Sales Order  *&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;FORM f_elog.&lt;/P&gt;&lt;P&gt;  DATA len TYPE i.&lt;/P&gt;&lt;P&gt;  CLEAR int_msgtab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Call Transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL TRANSACTION 'CS01'&lt;/P&gt;&lt;P&gt;                USING int_bdcdata&lt;/P&gt;&lt;P&gt;                OPTIONS FROM w_ctu_params&lt;/P&gt;&lt;P&gt;                MESSAGES INTO int_msgtab.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ABAP4_COMMIT_WORK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Error/Sucess Handling&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT int_msgtab INTO w_msgtab&lt;/P&gt;&lt;P&gt;                      WHERE msgtyp = 'E'&lt;/P&gt;&lt;P&gt;                         OR msgtyp = 'S'.&lt;/P&gt;&lt;P&gt;*Selecting the Text from T100 Table (T100 stores all the messages while running any Transaction)&lt;/P&gt;&lt;P&gt;    SELECT SINGLE text&lt;/P&gt;&lt;P&gt;                    FROM t100&lt;/P&gt;&lt;P&gt;                    INTO g_v_str_msg&lt;/P&gt;&lt;P&gt;                    WHERE sprsl EQ w_msgtab-msgspra AND&lt;/P&gt;&lt;P&gt;                          arbgb EQ w_msgtab-msgid AND&lt;/P&gt;&lt;P&gt;                          msgnr EQ w_msgtab-msgnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If entry found in T100 then the 4 fields MSGV1, MSGV2, MSGV3, MSGV4 are concatenated&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      IF NOT w_msgtab-msgv1 IS INITIAL.&lt;/P&gt;&lt;P&gt;        len = STRLEN( w_msgtab-msgv1 ).&lt;/P&gt;&lt;P&gt;        REPLACE '&amp;amp;1' WITH w_msgtab-msgv1(len) INTO g_v_str_msg.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF NOT w_msgtab-msgv2 IS INITIAL.&lt;/P&gt;&lt;P&gt;        len = STRLEN( w_msgtab-msgv2 ).&lt;/P&gt;&lt;P&gt;        REPLACE '&amp;amp;2' WITH w_msgtab-msgv2(len) INTO g_v_str_msg.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF NOT w_msgtab-msgv3 IS INITIAL.&lt;/P&gt;&lt;P&gt;        len = STRLEN( w_msgtab-msgv3 ).&lt;/P&gt;&lt;P&gt;        REPLACE '&amp;amp;3' WITH w_msgtab-msgv3(len) INTO g_v_str_msg.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF NOT w_msgtab-msgv4 IS INITIAL.&lt;/P&gt;&lt;P&gt;        len = STRLEN( w_msgtab-msgv4 ).&lt;/P&gt;&lt;P&gt;        REPLACE '&amp;amp;' WITH w_msgtab-msgv4(len) INTO g_v_str_msg.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      TRANSLATE g_v_str_msg USING '&amp;amp; '.&lt;/P&gt;&lt;P&gt;      CONDENSE g_v_str_msg.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Display with Colour&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF w_msgtab-msgtyp EQ 'E'.&lt;/P&gt;&lt;P&gt;      WRITE g_v_str_msg COLOR 6.                                   "Red Colour&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      WRITE g_v_str_msg COLOR 5.                                   "Green Colour&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "f_elog&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;*&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;/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;FORM bdc_dynpro USING program dynpro.&lt;/P&gt;&lt;P&gt;  CLEAR int_bdcdata.&lt;/P&gt;&lt;P&gt;  int_bdcdata-program = program.&lt;/P&gt;&lt;P&gt;  int_bdcdata-dynpro = dynpro.&lt;/P&gt;&lt;P&gt;  int_bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND int_bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "bdc_dynpro&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;/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;/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;FORM bdc_field USING fnam fval TYPE any.&lt;/P&gt;&lt;P&gt;  CLEAR int_bdcdata.&lt;/P&gt;&lt;P&gt;  int_bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;  int_bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;  WRITE fval TO int_bdcdata-fval LEFT-JUSTIFIED.&lt;/P&gt;&lt;P&gt;  APPEND int_bdcdata.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;E N D - O F - S E L E C T I O N                                               *&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;*Free all internal tables&lt;/P&gt;&lt;P&gt;  FREE: int_head,&lt;/P&gt;&lt;P&gt;        int_item,&lt;/P&gt;&lt;P&gt;        int_output.&lt;/P&gt;&lt;P&gt;*********************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;E N D O F R E P O R T *&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;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="81" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&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;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 28 Apr 2008 13:29:02 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788495#M911381</guid>
      <dc:creator>former_member609120</dc:creator>
      <dc:date>2008-04-28T13:29:02Z</dc:date>
    </item>
    <item>
      <title>Re: BDC for CS01 ???</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788496#M911382</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;

TABLES: MAPL, PLPO, PLAS.
INCLUDE BDCRECX1.
PARAMETERS : P_FILE TYPE STRING.
DATA: G_FILE TYPE IBIPPARMS-PATH.
DATA: LIN_COUNT(02),
      X1(20),
      X2(20),
      X3(20),
      X4(20),
      X5(20),
      X6(20),
      X7(20),
      FLAG(002),                    "Flag to select the assignment
      CNT TYPE I,
      CNT1 TYPE I,
      CNT2 TYPE I,
      OPNO(4) TYPE N,
      SEQUENCE(6) TYPE N,
      SET TYPE I.

DATA: BEGIN OF RECORD OCCURS 0,
        COUNT(005),            "Counter
        MATNR_001(018),        "Material No
        WERKS_002(004),        "Plant
        STLAN_003(001),        "Bom Usage
        STLAL_004(002),        "Alternative Bom
        DATUV_005(010),        "Valid-From Date
        ZTEXT_006(040),        "BOM Text
        BMENG_007(017),        "Base Quantity
        LOSVN(013),            "From Lot Size
        LOSBS(013),            "To Lot Size
        STLST_008(002),        "BOM Status
        POSNR_012(004),        "BOM Item Number
        IDNRK_01_009(018),     "Component
        POSTP(001),            "Item Category (Bill of Material)
        MENGE_01_010(018),     "Quantity
	END OF RECORD.
**** End generated data section ***
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
  CALL FUNCTION 'F4_FILENAME'
    EXPORTING
      PROGRAM_NAME  = SYST-CPROG
      DYNPRO_NUMBER = SYST-DYNNR
      FIELD_NAME    = 'P_FILE '
    IMPORTING
      FILE_NAME     = G_FILE.
  P_FILE = G_FILE.
START-OF-SELECTION.
  PERFORM OPEN_GROUP.
  CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
      FILENAME            = P_FILE
      HAS_FIELD_SEPARATOR = 'X'
    TABLES
      DATA_TAB            = RECORD.
  IF SY-SUBRC &amp;lt;&amp;gt; 0.
* Implement suitable error handling here
  ENDIF.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Mar 2012 11:30:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788496#M911382</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2012-03-01T11:30:08Z</dc:date>
    </item>
    <item>
      <title>Re: BDC for CS01 ???</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788497#M911383</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;code-2&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

LOOP AT RECORD.

    ON CHANGE OF RECORD-COUNT.                                                    "record-matnr_001 OR RECORD-STLAL_004.
      LIN_COUNT = 1.

      PERFORM BDC_DYNPRO      USING 'SAPLCSDI' '0100'.
      PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                    'RC29N-DATUV'.
      PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM BDC_FIELD       USING 'RC29N-MATNR'
                                    RECORD-MATNR_001.
      PERFORM BDC_FIELD       USING 'RC29N-WERKS'
                                    RECORD-WERKS_002.
      PERFORM BDC_FIELD       USING 'RC29N-STLAN'
                                    RECORD-STLAN_003.
      PERFORM BDC_FIELD       USING 'RC29N-STLAL'
                                    RECORD-STLAL_004.
      PERFORM BDC_FIELD       USING 'RC29N-DATUV'
                                    RECORD-DATUV_005.

      PERFORM BDC_DYNPRO      USING 'SAPLCSDI' '0110'.
      PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                    'RC29K-BMENG'.
      PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM BDC_FIELD       USING 'RC29K-ZTEXT'
                                    RECORD-ZTEXT_006.
      PERFORM BDC_FIELD       USING 'RC29K-BMENG'
                                    RECORD-BMENG_007.
      PERFORM BDC_FIELD       USING 'RC29K-STLST'
                                    RECORD-STLST_008.

      PERFORM BDC_DYNPRO      USING 'SAPLCSDI' '0111'.
      PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                    'RC29K-LABOR'.
      PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                    '/00'.
    ENDON.
    PERFORM CONCAT.

    PERFORM BDC_DYNPRO      USING 'SAPLCSDI' '0140'.
    PERFORM BDC_FIELD       USING 'BDC_CURSOR'X5
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '/00'.
 PERFORM BDC_FIELD       USING X1 RECORD-POSNR_012.
 PERFORM BDC_FIELD       USING X2                                            "'RC29P-IDNRK(01)'
                                  RECORD-IDNRK_01_009.
PERFORM BDC_FIELD       USING X3                                            "'RC29P-MENGE(01)'
                                  RECORD-MENGE_01_010.
PERFORM BDC_FIELD       USING X5                                            "'RC29P-POSTP(01)'
                                  RECORD-POSTP.
PERFORM BDC_DYNPRO      USING 'SAPLCSDI' '0130'.
    PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '/00'.
    PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                  'RC29P-AUSCH'.
    PERFORM BDC_FIELD       USING 'RC29P-POSNR'
                                  RECORD-POSNR_012.
IF RECORD-MATNR_001 EQ RECORD-IDNRK_01_009.
      PERFORM BDC_FIELD       USING 'RC29P-REKRS'
                                    'X'.
    ENDIF.

    PERFORM BDC_DYNPRO      USING 'SAPLCSDI' '0131'.
    PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '/00'.
  PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                  'RC29P-POSNR(01)'.
  LIN_COUNT = LIN_COUNT + 1.

    AT END OF COUNT.                                        "MATNR_001.
      PERFORM BDC_DYNPRO      USING 'SAPLCSDI' '0140'.
*perform bdc_field       using 'BDC_CURSOR'
*                              'RC29P-POSNR(02)'.
      PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                    '=FCBU'.
      PERFORM BDC_TRANSACTION USING 'CS01'.
    ENDAT.

  ENDLOOP.

  PERFORM CLOSE_GROUP.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Mar 2012 11:33:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788497#M911383</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2012-03-01T11:33:52Z</dc:date>
    </item>
    <item>
      <title>Re: BDC for CS01 ???</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788498#M911384</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;code-3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  CONCAT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM CONCAT.
  IF LIN_COUNT &amp;lt; 50.
    CONCATENATE 'RC29P-POSNR(' LIN_COUNT ')' INTO X1.
    CONCATENATE 'RC29P-IDNRK(' LIN_COUNT ')' INTO X2.
    CONCATENATE 'RC29P-MENGE(' LIN_COUNT ')' INTO X3.
    CONCATENATE 'RC29P-MEINS(' LIN_COUNT ')' INTO X4.
    CONCATENATE 'RC29P-POSTP(' LIN_COUNT ')' INTO X5.
    CONCATENATE 'RC29P-AUSKZ(' LIN_COUNT ')' INTO X6.
  ENDIF.
ENDFORM.                    " CONCAT
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;all the 3 post wil complete the code,&lt;/P&gt;&lt;P&gt;hope this helps...even at this point of time the code might not be helpful for you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CODE: For BOM Routing CS01 TCODE&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Mar 2012 11:35:36 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-for-cs01/m-p/3788498#M911384</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2012-03-01T11:35:36Z</dc:date>
    </item>
  </channel>
</rss>

