<?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: BAPI  for Order BOM in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-for-order-bom/m-p/4125712#M986425</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;Check ds BAPI..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BAPI_MATERIAL_BOM_GROUP_CREATE Creation of a material BOM group&lt;/P&gt;&lt;P&gt;BAPI_MAT_BOM_EXISTENCE_CHECK   Check whether BOM for material exists&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CSUL                           CRM Upload of BOM Data&lt;/P&gt;&lt;P&gt;BAPI_BOM_UPLOAD_SAVE           Main Module for BOM Update (Upload from CRM)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;________________________________________________________________________&lt;/P&gt;&lt;P&gt;Code_&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF i_bom OCCURS 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      matnr(18),&lt;/P&gt;&lt;P&gt;      werks(4),&lt;/P&gt;&lt;P&gt;      stlan(1),&lt;/P&gt;&lt;P&gt;      stlal(2),&lt;/P&gt;&lt;P&gt;      stktx(40),&lt;/P&gt;&lt;P&gt;      bmeng(16),&lt;/P&gt;&lt;P&gt;      menge(16),&lt;/P&gt;&lt;P&gt;      posnr(4),&lt;/P&gt;&lt;P&gt;      postp(1),&lt;/P&gt;&lt;P&gt;      meins(3),&lt;/P&gt;&lt;P&gt;      datuv(10),&lt;/P&gt;&lt;P&gt;      fmeng(1),&lt;/P&gt;&lt;P&gt;      idnrk(18),&lt;/P&gt;&lt;P&gt;      potx1(40),&lt;/P&gt;&lt;P&gt;      ausch(7),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      END OF i_bom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extracting Document and Doc type for POSTP = D.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_stpo OCCURS 1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       doknr(25),&lt;/P&gt;&lt;P&gt;       dokar(3),&lt;/P&gt;&lt;P&gt;       posnr(4),&lt;/P&gt;&lt;P&gt;       stlnr LIKE mast-stlnr,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       END   OF i_stpo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local work area&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  g_my_rec_in   LIKE i_bom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Declare internal table for Call Transaction and BDC Session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: i_bdc_table LIKE bdcdata OCCURS 0 WITH HEADER LINE.&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;                     Global Variables                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: g_counter(2) TYPE n,&lt;/P&gt;&lt;P&gt;      g_field_name(18) TYPE c,&lt;/P&gt;&lt;P&gt;      zc_yes  TYPE syftype VALUE 'X'.&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;                     Selection Screen                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_fname1 TYPE localfile .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE text-002.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_rloc1 AS CHECKBOX  DEFAULT 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK c WITH FRAME TITLE text-005.&lt;/P&gt;&lt;P&gt;PARAMETERS p_group(12) OBLIGATORY DEFAULT 'ZBOM'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK c.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK a.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**WRITE the report header&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;  INCLUDE zheading.&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;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Load Input file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM f_load_input_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create BDC records.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM create_bdc_records .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  Create_BDC_records&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text:* perform the BDC for the records in the internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;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 create_bdc_records .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: v_stlnr LIKE mast-stlnr.&lt;/P&gt;&lt;P&gt;  DATA: v_postp(1) VALUE 'D'.&lt;/P&gt;&lt;P&gt;  IF NOT i_bom[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Open BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM open_bdc_session.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT i_bom BY matnr werks posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT  SINGLE stlnr  INTO v_stlnr&lt;/P&gt;&lt;P&gt;    FROM mast&lt;/P&gt;&lt;P&gt;    WHERE    matnr = i_bom-matnr&lt;/P&gt;&lt;P&gt;     AND     werks = i_bom-werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT doknr dokar posnr stlnr&lt;/P&gt;&lt;P&gt;                INTO TABLE i_stpo&lt;/P&gt;&lt;P&gt;                FROM stpo&lt;/P&gt;&lt;P&gt;                FOR ALL ENTRIES IN i_bom&lt;/P&gt;&lt;P&gt;                WHERE postp = v_postp&lt;/P&gt;&lt;P&gt;                AND   posnr = i_bom-posnr&lt;/P&gt;&lt;P&gt;                AND   stlnr = v_stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT i_stpo BY posnr stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT i_bom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      g_my_rec_in = i_bom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE i_stpo WITH KEY posnr = i_bom-posnr&lt;/P&gt;&lt;P&gt;                                 stlnr = v_stlnr&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT NEW matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR i_bdc_table[].&lt;/P&gt;&lt;P&gt;        PERFORM insert_screen_header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Setting up counter for 20 line items&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF g_counter = 20.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        g_counter = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      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;*next screen&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro USING 'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field  USING 'BDC_CURSOR' 'RC29P-FMENG(01)'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-POSNR('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-IDNRK('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-idnrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-MENGE('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-menge.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-MEINS('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-meins.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-POSTP('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-postp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-FMENG('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-fmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*next screen&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro USING 'SAPLCSDI' '0130'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&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;Check the Item category to direct the screen flow accordingly.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CASE i_bom-postp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'B'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'Z'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'T'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'N'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'BDC_CURSOR' 'RC29P-AUSCH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-AUSCH' i_bom-ausch.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*next screen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_dynpro  USING 'SAPLCSDI' '0133'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-EKORG' ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'D'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-DOKNR' i_stpo-doknr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-DOKAR' i_stpo-dokar.&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;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;When POSTP = X, L.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'BDC_CURSOR' 'RC29P-AUSCH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-AUSCH' i_bom-ausch.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      g_counter = g_counter + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR' 'RC29P-POSNR(01)'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE' '=FCBU'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM insert_bdc_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&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;    CLEAR i_bom[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM close_bdc_session.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Release the BDC sessions created&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM release_bdc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " open_group&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_dynpro_start&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;      Initialize 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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_G_PROGRAM_1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_G_SCREEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_dynpro USING    p_g_program_1&lt;/P&gt;&lt;P&gt;                                p_g_screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_bdc_table.&lt;/P&gt;&lt;P&gt;  i_bdc_table-program  = p_g_program_1.&lt;/P&gt;&lt;P&gt;  i_bdc_table-dynpro   = p_g_screen.&lt;/P&gt;&lt;P&gt;  i_bdc_table-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND i_bdc_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " bdc_dynpro_start&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_field&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Insert field                                                  *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_field USING f_name f_value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_bdc_table.&lt;/P&gt;&lt;P&gt;  i_bdc_table-fnam = f_name.&lt;/P&gt;&lt;P&gt;  i_bdc_table-fval = f_value.&lt;/P&gt;&lt;P&gt;  APPEND i_bdc_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "bdc_insert_field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  open_bdc_session&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;     Open the BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM open_bdc_session .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Open BDC session and creat and update condition records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      client                    = sy-mandt&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      DEST                      = FILLER8&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      group                     = p_group&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      HOLDDATE                  = FILLER8&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      keep                      = 'X'&lt;/P&gt;&lt;P&gt;      user                      = sy-uname&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      RECORD                    = FILLER1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PROG                      = SY-CPROG&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      QID                       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   client_invalid            = 1&lt;/P&gt;&lt;P&gt;   destination_invalid       = 2&lt;/P&gt;&lt;P&gt;   group_invalid             = 3&lt;/P&gt;&lt;P&gt;   group_is_locked           = 4&lt;/P&gt;&lt;P&gt;   holddate_invalid          = 5&lt;/P&gt;&lt;P&gt;   internal_error            = 6&lt;/P&gt;&lt;P&gt;   queue_error               = 7&lt;/P&gt;&lt;P&gt;   running                   = 8&lt;/P&gt;&lt;P&gt;   system_lock_error         = 9&lt;/P&gt;&lt;P&gt;   user_invalid              = 10&lt;/P&gt;&lt;P&gt;   OTHERS                    = 11&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&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;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " create_bdc_session&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  insert_screen_header&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Insert the Header data into the screens&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM insert_screen_header .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  g_counter = 1.&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' 'RC29N-STLAL'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-MATNR' g_my_rec_in-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-WERKS' g_my_rec_in-werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-STLAN' g_my_rec_in-stlan.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-STLAL' g_my_rec_in-stlal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-DATUV' g_my_rec_in-datuv.&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;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_dynpro USING 'SAPLCSDI' '0110'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_CURSOR' 'RC29K-BMENG'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29K-STKTX' g_my_rec_in-stktx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29K-BMENG' g_my_rec_in-bmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*next screen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_dynpro USING 'SAPLCSDI' '0111'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_CURSOR' 'RC29K-LABOR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " insert_screen_header&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  insert_bdc&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Insert the BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM insert_bdc_new .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;       tcode                  = 'CS01'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      POST_LOCAL             = NOVBLOCAL&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PRINTING               = NOPRINT&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      SIMUBATCH              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      CTUPARAMS              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;       dynprotab              = i_bdc_table&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    internal_error         = 1&lt;/P&gt;&lt;P&gt;    not_open               = 2&lt;/P&gt;&lt;P&gt;    queue_error            = 3&lt;/P&gt;&lt;P&gt;    tcode_invalid          = 4&lt;/P&gt;&lt;P&gt;    printing_invalid       = 5&lt;/P&gt;&lt;P&gt;    posting_invalid        = 6&lt;/P&gt;&lt;P&gt;    OTHERS                 = 7&lt;/P&gt;&lt;P&gt;             .&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    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;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_bdc_table[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " insert_bdc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  close_bdc_session&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;      Close the BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM close_bdc_session .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            not_open    = 1&lt;/P&gt;&lt;P&gt;            queue_error = 2&lt;/P&gt;&lt;P&gt;            OTHERS      = 3.&lt;/P&gt;&lt;P&gt;&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.                    " close_bdc_session&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  f_load_input_file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Load the file into the Internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM f_load_input_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_rloc1 = zc_yes.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              filename                = p_fname1&lt;/P&gt;&lt;P&gt;              filetype                = 'DAT'&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              data_tab                = i_bom&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              conversion_error        = 1&lt;/P&gt;&lt;P&gt;              file_open_error         = 2&lt;/P&gt;&lt;P&gt;              file_read_error         = 3&lt;/P&gt;&lt;P&gt;              invalid_type            = 4&lt;/P&gt;&lt;P&gt;              no_batch                = 5&lt;/P&gt;&lt;P&gt;              unknown_error           = 6&lt;/P&gt;&lt;P&gt;              invalid_table_width     = 7&lt;/P&gt;&lt;P&gt;              gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;              customer_error          = 9&lt;/P&gt;&lt;P&gt;              OTHERS                  = 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;      STOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_load_input_file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  release_bdc&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Release BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM release_bdc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SUBMIT rsbdcsub WITH mappe EQ p_group&lt;/P&gt;&lt;P&gt;                  WITH von EQ sy-datum&lt;/P&gt;&lt;P&gt;                  WITH bis EQ sy-datum&lt;/P&gt;&lt;P&gt;                  WITH fehler EQ '.'&lt;/P&gt;&lt;P&gt;                  EXPORTING LIST TO MEMORY&lt;/P&gt;&lt;P&gt;                  AND RETURN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " release_bdc&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  item_text_insert&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Repetitive code in the screen flow&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_dynpro USING 'SAPLCSDI' '0131'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_CURSOR' 'RC29P-POTX1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29P-POTX1' i_bom-potx1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " item_text_insert&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward If Helpfull&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;Mehul&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 04 Jul 2008 05:03:06 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-07-04T05:03:06Z</dc:date>
    <item>
      <title>BAPI  for Order BOM</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-for-order-bom/m-p/4125711#M986424</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there any BAPI for Order BOM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PLS can you help me&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks&lt;/P&gt;&lt;P&gt;mars&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 Jul 2008 04:54:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-for-order-bom/m-p/4125711#M986424</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-07-04T04:54:45Z</dc:date>
    </item>
    <item>
      <title>Re: BAPI  for Order BOM</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-for-order-bom/m-p/4125712#M986425</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;Check ds BAPI..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BAPI_MATERIAL_BOM_GROUP_CREATE Creation of a material BOM group&lt;/P&gt;&lt;P&gt;BAPI_MAT_BOM_EXISTENCE_CHECK   Check whether BOM for material exists&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CSUL                           CRM Upload of BOM Data&lt;/P&gt;&lt;P&gt;BAPI_BOM_UPLOAD_SAVE           Main Module for BOM Update (Upload from CRM)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;________________________________________________________________________&lt;/P&gt;&lt;P&gt;Code_&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF i_bom OCCURS 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      matnr(18),&lt;/P&gt;&lt;P&gt;      werks(4),&lt;/P&gt;&lt;P&gt;      stlan(1),&lt;/P&gt;&lt;P&gt;      stlal(2),&lt;/P&gt;&lt;P&gt;      stktx(40),&lt;/P&gt;&lt;P&gt;      bmeng(16),&lt;/P&gt;&lt;P&gt;      menge(16),&lt;/P&gt;&lt;P&gt;      posnr(4),&lt;/P&gt;&lt;P&gt;      postp(1),&lt;/P&gt;&lt;P&gt;      meins(3),&lt;/P&gt;&lt;P&gt;      datuv(10),&lt;/P&gt;&lt;P&gt;      fmeng(1),&lt;/P&gt;&lt;P&gt;      idnrk(18),&lt;/P&gt;&lt;P&gt;      potx1(40),&lt;/P&gt;&lt;P&gt;      ausch(7),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      END OF i_bom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Extracting Document and Doc type for POSTP = D.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_stpo OCCURS 1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       doknr(25),&lt;/P&gt;&lt;P&gt;       dokar(3),&lt;/P&gt;&lt;P&gt;       posnr(4),&lt;/P&gt;&lt;P&gt;       stlnr LIKE mast-stlnr,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       END   OF i_stpo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local work area&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  g_my_rec_in   LIKE i_bom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Declare internal table for Call Transaction and BDC Session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: i_bdc_table LIKE bdcdata OCCURS 0 WITH HEADER LINE.&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;                     Global Variables                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: g_counter(2) TYPE n,&lt;/P&gt;&lt;P&gt;      g_field_name(18) TYPE c,&lt;/P&gt;&lt;P&gt;      zc_yes  TYPE syftype VALUE 'X'.&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;                     Selection Screen                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_fname1 TYPE localfile .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE text-002.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_rloc1 AS CHECKBOX  DEFAULT 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK c WITH FRAME TITLE text-005.&lt;/P&gt;&lt;P&gt;PARAMETERS p_group(12) OBLIGATORY DEFAULT 'ZBOM'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK c.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK a.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**WRITE the report header&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;  INCLUDE zheading.&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;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Load Input file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM f_load_input_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create BDC records.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM create_bdc_records .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  Create_BDC_records&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text:* perform the BDC for the records in the internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;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 create_bdc_records .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: v_stlnr LIKE mast-stlnr.&lt;/P&gt;&lt;P&gt;  DATA: v_postp(1) VALUE 'D'.&lt;/P&gt;&lt;P&gt;  IF NOT i_bom[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Open BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM open_bdc_session.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT i_bom BY matnr werks posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT  SINGLE stlnr  INTO v_stlnr&lt;/P&gt;&lt;P&gt;    FROM mast&lt;/P&gt;&lt;P&gt;    WHERE    matnr = i_bom-matnr&lt;/P&gt;&lt;P&gt;     AND     werks = i_bom-werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT doknr dokar posnr stlnr&lt;/P&gt;&lt;P&gt;                INTO TABLE i_stpo&lt;/P&gt;&lt;P&gt;                FROM stpo&lt;/P&gt;&lt;P&gt;                FOR ALL ENTRIES IN i_bom&lt;/P&gt;&lt;P&gt;                WHERE postp = v_postp&lt;/P&gt;&lt;P&gt;                AND   posnr = i_bom-posnr&lt;/P&gt;&lt;P&gt;                AND   stlnr = v_stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT i_stpo BY posnr stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT i_bom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      g_my_rec_in = i_bom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE i_stpo WITH KEY posnr = i_bom-posnr&lt;/P&gt;&lt;P&gt;                                 stlnr = v_stlnr&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT NEW matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR i_bdc_table[].&lt;/P&gt;&lt;P&gt;        PERFORM insert_screen_header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Setting up counter for 20 line items&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF g_counter = 20.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        g_counter = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      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;*next screen&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro USING 'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field  USING 'BDC_CURSOR' 'RC29P-FMENG(01)'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-POSNR('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-IDNRK('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-idnrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-MENGE('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-menge.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-MEINS('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-meins.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-POSTP('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-postp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'RC29P-FMENG('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field USING g_field_name i_bom-fmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*next screen&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro USING 'SAPLCSDI' '0130'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&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;Check the Item category to direct the screen flow accordingly.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CASE i_bom-postp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'B'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'Z'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'T'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'N'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'BDC_CURSOR' 'RC29P-AUSCH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-AUSCH' i_bom-ausch.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*next screen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_dynpro  USING 'SAPLCSDI' '0133'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-EKORG' ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'D'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-DOKNR' i_stpo-doknr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-DOKAR' i_stpo-dokar.&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;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;When POSTP = X, L.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'BDC_CURSOR' 'RC29P-AUSCH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM bdc_field   USING 'RC29P-AUSCH' i_bom-ausch.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          PERFORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      g_counter = g_counter + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro      USING 'SAPLCSDI' '0140'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_CURSOR' 'RC29P-POSNR(01)'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_field       USING 'BDC_OKCODE' '=FCBU'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AT END OF matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM insert_bdc_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDAT.&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;    CLEAR i_bom[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM close_bdc_session.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Release the BDC sessions created&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM release_bdc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " open_group&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_dynpro_start&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;      Initialize 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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_G_PROGRAM_1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_G_SCREEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_dynpro USING    p_g_program_1&lt;/P&gt;&lt;P&gt;                                p_g_screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_bdc_table.&lt;/P&gt;&lt;P&gt;  i_bdc_table-program  = p_g_program_1.&lt;/P&gt;&lt;P&gt;  i_bdc_table-dynpro   = p_g_screen.&lt;/P&gt;&lt;P&gt;  i_bdc_table-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND i_bdc_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " bdc_dynpro_start&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_field&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Insert field                                                  *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_field USING f_name f_value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_bdc_table.&lt;/P&gt;&lt;P&gt;  i_bdc_table-fnam = f_name.&lt;/P&gt;&lt;P&gt;  i_bdc_table-fval = f_value.&lt;/P&gt;&lt;P&gt;  APPEND i_bdc_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "bdc_insert_field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  open_bdc_session&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;     Open the BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM open_bdc_session .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Open BDC session and creat and update condition records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      client                    = sy-mandt&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      DEST                      = FILLER8&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      group                     = p_group&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      HOLDDATE                  = FILLER8&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      keep                      = 'X'&lt;/P&gt;&lt;P&gt;      user                      = sy-uname&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      RECORD                    = FILLER1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PROG                      = SY-CPROG&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      QID                       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   client_invalid            = 1&lt;/P&gt;&lt;P&gt;   destination_invalid       = 2&lt;/P&gt;&lt;P&gt;   group_invalid             = 3&lt;/P&gt;&lt;P&gt;   group_is_locked           = 4&lt;/P&gt;&lt;P&gt;   holddate_invalid          = 5&lt;/P&gt;&lt;P&gt;   internal_error            = 6&lt;/P&gt;&lt;P&gt;   queue_error               = 7&lt;/P&gt;&lt;P&gt;   running                   = 8&lt;/P&gt;&lt;P&gt;   system_lock_error         = 9&lt;/P&gt;&lt;P&gt;   user_invalid              = 10&lt;/P&gt;&lt;P&gt;   OTHERS                    = 11&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&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;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " create_bdc_session&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  insert_screen_header&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Insert the Header data into the screens&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM insert_screen_header .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  g_counter = 1.&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' 'RC29N-STLAL'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-MATNR' g_my_rec_in-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-WERKS' g_my_rec_in-werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-STLAN' g_my_rec_in-stlan.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-STLAL' g_my_rec_in-stlal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29N-DATUV' g_my_rec_in-datuv.&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;next screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_dynpro USING 'SAPLCSDI' '0110'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_CURSOR' 'RC29K-BMENG'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29K-STKTX' g_my_rec_in-stktx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29K-BMENG' g_my_rec_in-bmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*next screen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_dynpro USING 'SAPLCSDI' '0111'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_CURSOR' 'RC29K-LABOR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " insert_screen_header&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  insert_bdc&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Insert the BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM insert_bdc_new .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;       tcode                  = 'CS01'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      POST_LOCAL             = NOVBLOCAL&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PRINTING               = NOPRINT&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      SIMUBATCH              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      CTUPARAMS              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;       dynprotab              = i_bdc_table&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    internal_error         = 1&lt;/P&gt;&lt;P&gt;    not_open               = 2&lt;/P&gt;&lt;P&gt;    queue_error            = 3&lt;/P&gt;&lt;P&gt;    tcode_invalid          = 4&lt;/P&gt;&lt;P&gt;    printing_invalid       = 5&lt;/P&gt;&lt;P&gt;    posting_invalid        = 6&lt;/P&gt;&lt;P&gt;    OTHERS                 = 7&lt;/P&gt;&lt;P&gt;             .&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    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;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_bdc_table[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " insert_bdc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  close_bdc_session&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;      Close the BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM close_bdc_session .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            not_open    = 1&lt;/P&gt;&lt;P&gt;            queue_error = 2&lt;/P&gt;&lt;P&gt;            OTHERS      = 3.&lt;/P&gt;&lt;P&gt;&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.                    " close_bdc_session&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  f_load_input_file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Load the file into the Internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM f_load_input_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_rloc1 = zc_yes.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              filename                = p_fname1&lt;/P&gt;&lt;P&gt;              filetype                = 'DAT'&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              data_tab                = i_bom&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              conversion_error        = 1&lt;/P&gt;&lt;P&gt;              file_open_error         = 2&lt;/P&gt;&lt;P&gt;              file_read_error         = 3&lt;/P&gt;&lt;P&gt;              invalid_type            = 4&lt;/P&gt;&lt;P&gt;              no_batch                = 5&lt;/P&gt;&lt;P&gt;              unknown_error           = 6&lt;/P&gt;&lt;P&gt;              invalid_table_width     = 7&lt;/P&gt;&lt;P&gt;              gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;              customer_error          = 9&lt;/P&gt;&lt;P&gt;              OTHERS                  = 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;      STOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_load_input_file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  release_bdc&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Release BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM release_bdc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SUBMIT rsbdcsub WITH mappe EQ p_group&lt;/P&gt;&lt;P&gt;                  WITH von EQ sy-datum&lt;/P&gt;&lt;P&gt;                  WITH bis EQ sy-datum&lt;/P&gt;&lt;P&gt;                  WITH fehler EQ '.'&lt;/P&gt;&lt;P&gt;                  EXPORTING LIST TO MEMORY&lt;/P&gt;&lt;P&gt;                  AND RETURN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " release_bdc&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  item_text_insert&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Repetitive code in the screen flow&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM item_text_insert.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_dynpro USING 'SAPLCSDI' '0131'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'BDC_CURSOR' 'RC29P-POTX1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bdc_field  USING 'RC29P-POTX1' i_bom-potx1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " item_text_insert&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward If Helpfull&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;Mehul&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 Jul 2008 05:03:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-for-order-bom/m-p/4125712#M986425</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-07-04T05:03:06Z</dc:date>
    </item>
  </channel>
</rss>

