<?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 How to create Rate Routing via conversion program? in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-rate-routing-via-conversion-program/m-p/2514031#M568708</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I am in SAP ECC 5.0&lt;/P&gt;&lt;P&gt;We are using Repetitive Manufacturing scenario for PP implementation. For that we need to convert legacy data to create Rate Routing in SAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rate Routing is manually created in SAP via transaction CA21.&lt;/P&gt;&lt;P&gt;SAP suggests ABAP Program RCPTRA01 / RCPTRA02 to create Routing from external system data. However, all these programs create "Normal Routing" and NOT Rate Routing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For your reference, normal routing is created in SAP via CA01.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How can I create RATE ROUTING in SAP programmatically? Is there any standard BAPI / LSMW for Rate routing creation?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please suggest whether I can use BAPI_ROUTING_CREATE for Rate Routing. Whatever I tried with this BAPI only created Normal Routing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please answer .. this is pretty URGENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;Bhaskar Pal.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 06 Jul 2007 20:38:49 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-07-06T20:38:49Z</dc:date>
    <item>
      <title>How to create Rate Routing via conversion program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-rate-routing-via-conversion-program/m-p/2514031#M568708</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I am in SAP ECC 5.0&lt;/P&gt;&lt;P&gt;We are using Repetitive Manufacturing scenario for PP implementation. For that we need to convert legacy data to create Rate Routing in SAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rate Routing is manually created in SAP via transaction CA21.&lt;/P&gt;&lt;P&gt;SAP suggests ABAP Program RCPTRA01 / RCPTRA02 to create Routing from external system data. However, all these programs create "Normal Routing" and NOT Rate Routing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For your reference, normal routing is created in SAP via CA01.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How can I create RATE ROUTING in SAP programmatically? Is there any standard BAPI / LSMW for Rate routing creation?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please suggest whether I can use BAPI_ROUTING_CREATE for Rate Routing. Whatever I tried with this BAPI only created Normal Routing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please answer .. this is pretty URGENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;Bhaskar Pal.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2007 20:38:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-rate-routing-via-conversion-program/m-p/2514031#M568708</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-06T20:38:49Z</dc:date>
    </item>
    <item>
      <title>Re: How to create Rate Routing via conversion program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-rate-routing-via-conversion-program/m-p/2514032#M568709</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Baskar,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have done bdc for CA21 Transaction and i tried look at FM and LSMW (No luck).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See the BDC Program what i did for CA21 Transaction:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EPORT zmppc010 NO STANDARD PAGE HEADING LINE-SIZE 120 LINE-COUNT 55&lt;/P&gt;&lt;P&gt;   MESSAGE-ID zz.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;pool of form routines&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;INCLUDE ZMPPN001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Define BDC Table Structure&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF itab_bdc_tab OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdcdata.&lt;/P&gt;&lt;P&gt;DATA: END OF itab_bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Input record layout of Leagcy File&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF itab_xcel OCCURS 0,&lt;/P&gt;&lt;P&gt;        matnr(18) TYPE c,&lt;/P&gt;&lt;P&gt;        werks(4)  TYPE c,&lt;/P&gt;&lt;P&gt;        datuv(10) TYPE c,&lt;/P&gt;&lt;P&gt;        verwe(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        statu(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        slwbez(3) TYPE c,&lt;/P&gt;&lt;P&gt;        vornr(4)  TYPE n,&lt;/P&gt;&lt;P&gt;        arbpl(8)  TYPE c,&lt;/P&gt;&lt;P&gt;        steus(4)  TYPE c,&lt;/P&gt;&lt;P&gt;        ltxa1(40) TYPE c,&lt;/P&gt;&lt;P&gt;        bmsch     LIKE PLPOD-BMSCH,&lt;/P&gt;&lt;P&gt;        meinh(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        lar01(6)  TYPE c,&lt;/P&gt;&lt;P&gt;        vgw01     LIKE PLPOD-VGW01,&lt;/P&gt;&lt;P&gt;        vge01(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        lar02(6)  TYPE c,&lt;/P&gt;&lt;P&gt;        vgw02     LIKE PLPOD-VGW02,&lt;/P&gt;&lt;P&gt;        vge02(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        lar03(6)  TYPE c,&lt;/P&gt;&lt;P&gt;        vgw03     LIKE PLPOD-VGW03,&lt;/P&gt;&lt;P&gt;        vge03(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        lar04(6)  TYPE c,&lt;/P&gt;&lt;P&gt;        vgw04     LIKE PLPOD-VGW04,&lt;/P&gt;&lt;P&gt;        vge04(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        lar05(6)  TYPE c,&lt;/P&gt;&lt;P&gt;        vgw05     LIKE PLPOD-VGW05,&lt;/P&gt;&lt;P&gt;        vge05(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        lar06(6)  TYPE c,&lt;/P&gt;&lt;P&gt;        vgw06     LIKE PLPOD-VGW06,&lt;/P&gt;&lt;P&gt;        vge06(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        anzma     LIKE PLPOD-ANZMA,&lt;/P&gt;&lt;P&gt;        zlmax     LIKE PLPOD-ZLMAX,&lt;/P&gt;&lt;P&gt;        zeilm(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        zwnor     LIKE PLPOD-ZWNOR,&lt;/P&gt;&lt;P&gt;        zeiwn(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        ztnor     LIKE PLPOD-ZTNOR,&lt;/P&gt;&lt;P&gt;        zeitn(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        sortl(10) TYPE c,&lt;/P&gt;&lt;P&gt;        lifnr(10) TYPE c,&lt;/P&gt;&lt;P&gt;        plifz     LIKE PLPOD-PLIFZ,&lt;/P&gt;&lt;P&gt;        preis     LIKE PLPOD-PREIS,&lt;/P&gt;&lt;P&gt;        peinh     LIKE PLPOD-PEINH,&lt;/P&gt;&lt;P&gt;        sakto(10) TYPE c,&lt;/P&gt;&lt;P&gt;        waers(5)  TYPE c,&lt;/P&gt;&lt;P&gt;        infnr(10) TYPE c,&lt;/P&gt;&lt;P&gt;        ekorg(4)  TYPE c,&lt;/P&gt;&lt;P&gt;        ekgrp(3)  TYPE c,&lt;/P&gt;&lt;P&gt;        matkl(9)  TYPE c,&lt;/P&gt;&lt;P&gt;        ebeln(10) TYPE c,&lt;/P&gt;&lt;P&gt;        ebelp(5)  TYPE c,&lt;/P&gt;&lt;P&gt;        qpart(8)  TYPE c,&lt;/P&gt;&lt;P&gt;        ckselkz(1) TYPE c,&lt;/P&gt;&lt;P&gt;        rsanz     LIKE PLPOD-RSANZ,&lt;/P&gt;&lt;P&gt;      END OF itab_xcel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: v_ssnnr(4)      TYPE n,&lt;/P&gt;&lt;P&gt;      v_lines_in_xcel LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;      v_ssnname       LIKE apqi-groupid,&lt;/P&gt;&lt;P&gt;      v_trans_in_ssn  TYPE i,&lt;/P&gt;&lt;P&gt;      wa_xcel         LIKE itab_xcel,&lt;/P&gt;&lt;P&gt;      l_tabix         like sy-tabix,&lt;/P&gt;&lt;P&gt;      v_tcode         LIKE sy-tcode VALUE 'CA21'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Parameters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN: SKIP 3.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: BEGIN OF BLOCK 1 WITH FRAME.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;PARAMETERS: p_name        LIKE rlgrap-filename&lt;/P&gt;&lt;P&gt;                          DEFAULT 'C:\My Documents\InputFile.txt'&lt;/P&gt;&lt;P&gt;                          OBLIGATORY,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bdc session name prefix&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            p_bdcpfx(6)   DEFAULT 'ZRTCRT'&lt;/P&gt;&lt;P&gt;                          OBLIGATORY,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;number for transction per BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            p_trnssn      TYPE i&lt;/P&gt;&lt;P&gt;                          DEFAULT 2000 OBLIGATORY,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;retain the BDC session after successfull execution&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            p_keep        LIKE apqi-qerase&lt;/P&gt;&lt;P&gt;                          DEFAULT 'X',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;user who will be executing BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            p_uname       LIKE apqi-userid&lt;/P&gt;&lt;P&gt;                          DEFAULT sy-uname&lt;/P&gt;&lt;P&gt;                          OBLIGATORY.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: END OF BLOCK 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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;possible entry list (F4 dropdown) for input file name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-SELECT FILE FROM USERS LOCAL PC&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'WS_FILENAME_GET'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         DEF_FILENAME     = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           def_path         = 'C:\Temp\'&lt;/P&gt;&lt;P&gt;           mask             = ',&lt;STRONG&gt;.&lt;/STRONG&gt;,&lt;STRONG&gt;.&lt;/STRONG&gt;.'&lt;/P&gt;&lt;P&gt;           mode             = 'O'&lt;/P&gt;&lt;P&gt;           title            = 'Select File '(007)&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;           filename         = p_name&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         RC               =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;           inv_winsys       = 1&lt;/P&gt;&lt;P&gt;           no_batch         = 2&lt;/P&gt;&lt;P&gt;           selection_cancel = 3&lt;/P&gt;&lt;P&gt;           selection_error  = 4&lt;/P&gt;&lt;P&gt;           OTHERS           = 5.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;********************************************************&lt;/P&gt;&lt;P&gt;********************************************************&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;begin the show &lt;SPAN __jive_emoticon_name="happy"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read data from input file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM transfer_xcel_to_itab.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  LOOP AT itab_xcel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  load data in work area, used inside 'at new' block&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    wa_xcel = itab_xcel.&lt;/P&gt;&lt;P&gt;    l_tabix = sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  each unique part-plant combn marks begining of new routing defn&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    AT NEW werks.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    if num-of-trnas-in-session = 0, create new BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF v_trans_in_ssn IS INITIAL.&lt;/P&gt;&lt;P&gt;        PERFORM BDC_SESSION_OPEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    begin new bdc script for rtg create trans&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    fill in bdc-data for rtg header screens&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM BDC_BUILD_SCRIPT_FOR_HDR.&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;  fill in bdc-data for each opertion in the routing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM BDC_BUILD_SCRIPT_FOR_OPS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  end of all recs corresponding to the unique part-plant combn, marks&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  the end of routing defn.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    AT END OF werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    fill in the bdc-data to save the routing defn&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM BDC_BUILD_SCRIPT_FOR_TEND.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    insert the bdc script as a BDC transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM BDC_SUBMIT_TRANSACTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    keep track of how many BDC transactions were inserted in the BDC&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      ADD 1 TO v_trans_in_ssn.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    if the user-specified num of trans in BDC session is reached OR&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    if end of input file is reached, close the BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF v_trans_in_ssn = p_trnssn or&lt;/P&gt;&lt;P&gt;         l_tabix = v_lines_in_xcel.&lt;/P&gt;&lt;P&gt;        PERFORM BDC_SESSION_CLOSE.&lt;/P&gt;&lt;P&gt;        CLEAR v_trans_in_ssn.&lt;/P&gt;&lt;P&gt;      ENDIF.&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;Top-of-page.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'Z_HEADER'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FLEX_TEXT1       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FLEX_TEXT2       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FLEX_TEXT3       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;      FORM TRANSFER_XCEL_TO_ITAB                                    *&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;      Transfer Xcel Spreadsheet to SAP Internal Table               *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM transfer_xcel_to_itab.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Read the tab-delimited file into itab&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            filename            = p_name&lt;/P&gt;&lt;P&gt;            filetype            = 'DAT'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           filelength          = flength&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            data_tab            = itab_xcel&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_table_width = 4&lt;/P&gt;&lt;P&gt;            invalid_type        = 5&lt;/P&gt;&lt;P&gt;            no_batch            = 6&lt;/P&gt;&lt;P&gt;            unknown_error       = 7&lt;/P&gt;&lt;P&gt;            OTHERS              = 8.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  sort the data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SORT itab_xcel BY matnr werks.&lt;/P&gt;&lt;P&gt;    CLEAR v_lines_in_xcel.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  if no data in the file - error out&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    DESCRIBE TABLE itab_xcel LINES v_lines_in_xcel.&lt;/P&gt;&lt;P&gt;    IF v_lines_in_xcel IS INITIAL.&lt;/P&gt;&lt;P&gt;      WRITE: / 'No data in input file'.&lt;/P&gt;&lt;P&gt;      STOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  if file upload failed - error out&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WRITE: / 'Error reading input file'.&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;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM BDC_SESSION_OPEN                                         *&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;      Open 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 BDC_SESSION_OPEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;create bdc session name = prefix-from-selectn-screen + nnnn&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ADD 1 TO v_ssnnr.&lt;/P&gt;&lt;P&gt;  CONCATENATE p_bdcpfx v_ssnnr INTO v_ssnname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;open new bdc session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            client              = sy-mandt&lt;/P&gt;&lt;P&gt;            group               = v_ssnname&lt;/P&gt;&lt;P&gt;            keep                = p_keep&lt;/P&gt;&lt;P&gt;            user                = p_uname&lt;/P&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;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM BDC_BUILD_SCRIPT_FOR_HDR                                 *&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;      Build BDC                                                     *&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_build_script_for_hdr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_sttag LIKE rc271-sttag,&lt;/P&gt;&lt;P&gt;        l_matnr LIKE rc27m-matnr,&lt;/P&gt;&lt;P&gt;        l_mapl  LIKE mapl.&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;clear bdc-data itab - begin of new bdc transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR   itab_bdc_tab.&lt;/P&gt;&lt;P&gt;  REFRESH itab_bdc_tab.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read material cross reference tables to determine sap part#&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM read_matnr_cross_ref USING wa_xcel-matnr&lt;/P&gt;&lt;P&gt;                                     wa_xcel-werks&lt;/P&gt;&lt;P&gt;                               CHANGING l_matnr.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read any existing rtg group counters from MAPL table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  clear l_mapl.&lt;/P&gt;&lt;P&gt;  select * into l_mapl&lt;/P&gt;&lt;P&gt;    from mapl up to 1 rows&lt;/P&gt;&lt;P&gt;   where matnr = l_matnr and&lt;/P&gt;&lt;P&gt;         werks = wa_xcel-werks and&lt;/P&gt;&lt;P&gt;         plnty = 'R' and&lt;/P&gt;&lt;P&gt;         loekz = space.&lt;/P&gt;&lt;P&gt;  endselect.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bdc script for routing header screens&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM BDC_BUILD_SCRIPT_RECORD&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;initial screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          USING: 'X' 'SAPLCPDI'         '1010',&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_OKCODE'       '/00',&lt;/P&gt;&lt;P&gt;                 ' ' 'RC27M-MATNR'      l_matnr,&lt;/P&gt;&lt;P&gt;                 ' ' 'RC27M-WERKS'      wa_xcel-werks,&lt;/P&gt;&lt;P&gt;                 ' ' 'RC271-VBELN'      space,&lt;/P&gt;&lt;P&gt;                 ' ' 'RC271-POSNR'      space,&lt;/P&gt;&lt;P&gt;                 ' ' 'RC271-PSPNR'      space,&lt;/P&gt;&lt;P&gt;                 ' ' 'RC271-PLNNR'      space,&lt;/P&gt;&lt;P&gt;                 ' ' 'RC271-AENNR'      space,&lt;/P&gt;&lt;P&gt;                 ' ' 'RC271-STTAG'      wa_xcel-datuv,&lt;/P&gt;&lt;P&gt;                 ' ' 'RC271-REVLV'      space,&lt;/P&gt;&lt;P&gt;                 ' ' 'RC271-PROFIDNETZ' space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;overview screen (lists all existing group counters)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;the following screen will be included in bdc only if there was atleast&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;one good group counter defined already for this part-plant combn&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  if not l_mapl is initial.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_BUILD_SCRIPT_RECORD&lt;/P&gt;&lt;P&gt;            USING: 'X' 'SAPLCPDI'         '5200',	&lt;/P&gt;&lt;P&gt;                   ' ' 'BDC_OKCODE'       '=ANLG'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;header details screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM BDC_BUILD_SCRIPT_RECORD&lt;/P&gt;&lt;P&gt;          USING: 'X' 'SAPLCPDA'         '1200',	&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_OKCODE'       '/00',&lt;/P&gt;&lt;P&gt;                 ' ' 'PLKOD-VERWE'      wa_xcel-VERWE,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLKOD-STATU'      wa_xcel-STATU,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLKOD-SLWBEZ'     wa_xcel-SLWBEZ,	&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;header details screen, goto operations overview screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                 'X' 'SAPLCPDA'         '1200',	&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_OKCODE'       '=VOUE'.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;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 BDC_BUILD_SCRIPT_FOR_OPS                                 *&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;      Build BDC                                                     *&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_BUILD_SCRIPT_FOR_OPS.&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;bdc script for routing operations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM BDC_BUILD_SCRIPT_RECORD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;operaions overview screen, insert new line for the operaion&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          USING: 'X' 'SAPLCPDI'         '5400',&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_CURSOR'       'PLPOD-VORNR(01)',&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_OKCODE'       '=EINF',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;operation overview screen, goto operation detail screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                 'X' 'SAPLCPDI'         '5400',&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_CURSOR'       'PLPOD-VORNR(01)',&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_OKCODE'       '=PICK',&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VORNR(01)'  wa_xcel-VORNR,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-ARBPL(01)'  wa_xcel-ARBPL,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;operation detail screen,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                 'X' 'SAPLCPDO'         '1200',&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_OKCODE'       '/00',&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-STEUS'      wa_xcel-STEUS,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-LTXA1'      wa_xcel-LTXA1,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-BMSCH'      wa_xcel-BMSCH,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-MEINH'      wa_xcel-MEINH,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGW01'      wa_xcel-VGW01,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGE01'      wa_xcel-VGE01,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGW02'      wa_xcel-VGW02,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGE02'      wa_xcel-VGE02,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGW03'      wa_xcel-VGW03,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGE03'      wa_xcel-VGE03,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGW04'      wa_xcel-VGW04,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGE04'      wa_xcel-VGE04,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGW05'      wa_xcel-VGW05,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-VGE05'      wa_xcel-VGE05.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if no fields in the inputfile for activity#6 (on the screen)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;are given then do not include it in the bdc script as they&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MIGHT NOT be available on the operation detail screen at all&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  if not wa_xcel-VGW06 is initial or&lt;/P&gt;&lt;P&gt;     not wa_xcel-VGE06 is initial or&lt;/P&gt;&lt;P&gt;     not wa_xcel-LAR06 is initial.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_BUILD_SCRIPT_RECORD&lt;/P&gt;&lt;P&gt;            USING: ' ' 'PLPOD-VGW06'      wa_xcel-VGW06,&lt;/P&gt;&lt;P&gt;                   ' ' 'PLPOD-VGE06'      wa_xcel-VGE06.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;continue with operation detail screen,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM BDC_BUILD_SCRIPT_RECORD&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;          USING: ' ' 'PLPOD-ZLMAX'      wa_xcel-ZLMAX,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-ZEILM'      wa_xcel-ZEILM,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-ZWNOR'      wa_xcel-ZWNOR,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-ZEIWN'      wa_xcel-ZEIWN,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-ZTNOR'      wa_xcel-ZTNOR,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-ZEITN'      wa_xcel-ZEITN,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-RSANZ'      wa_xcel-RSANZ,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-ANZMA'      wa_xcel-ANZMA,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-CKSELKZ'    wa_xcel-CKSELKZ,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-INFNR'      wa_xcel-INFNR,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-EKORG'      wa_xcel-EKORG,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-EBELN'      wa_xcel-EBELN,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-EBELP'      wa_xcel-EBELP,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-SORTL'      wa_xcel-SORTL,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-MATKL'      wa_xcel-MATKL,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-EKGRP'      wa_xcel-EKGRP,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-LIFNR'      wa_xcel-LIFNR,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-PLIFZ'      wa_xcel-PLIFZ,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-PEINH'      wa_xcel-PEINH,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-SAKTO'      wa_xcel-SAKTO,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-PREIS'      wa_xcel-PREIS,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-WAERS'      wa_xcel-WAERS,&lt;/P&gt;&lt;P&gt;                 ' ' 'PLPOD-QPART'      wa_xcel-QPART,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;operation detail screen, go to the op overview scrn to add another op&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                 'X' 'SAPLCPDO'         '1200',&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_OKCODE'       '=BACK'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;			&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM BDC_BUILD_SCRIPT_FOR_TEND                                 *&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;      Build BDC                                                     *&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_BUILD_SCRIPT_FOR_TEND.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;operatin detail screen, save the routing defn&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM BDC_BUILD_SCRIPT_RECORD&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;          USING: 'X' 'SAPLCPDI'         '5400',&lt;/P&gt;&lt;P&gt;                 ' ' 'BDC_OKCODE'       '=BU'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;			&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM BDC_SUBMIT_TRANSACTION                                   *&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;      Submit 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 BDC_SUBMIT_TRANSACTION.&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;Load BDC script as a trqansction in BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            tcode          = v_tcode&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            dynprotab      = itab_bdc_tab&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            internal_error = 01&lt;/P&gt;&lt;P&gt;            not_open       = 02&lt;/P&gt;&lt;P&gt;            queue_error    = 03&lt;/P&gt;&lt;P&gt;            tcode_invalid  = 04.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;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 BDC_BUILD_SCRIPT_RECORD                                  *&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_BUILD_SCRIPT_RECORD USING dynbegin name value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR itab_bdc_tab.&lt;/P&gt;&lt;P&gt;  IF dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;    MOVE: name  TO itab_bdc_tab-program,&lt;/P&gt;&lt;P&gt;          value TO itab_bdc_tab-dynpro,&lt;/P&gt;&lt;P&gt;          'X'   TO itab_bdc_tab-dynbegin.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MOVE: name  TO itab_bdc_tab-fnam,&lt;/P&gt;&lt;P&gt;          value TO itab_bdc_tab-fval.&lt;/P&gt;&lt;P&gt;    SHIFT itab_bdc_tab-fval LEFT DELETING LEADING SPACE.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND itab_bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;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 BDC_SESSION_CLOSE                                        *&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;      Close 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 BDC_SESSION_CLOSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;close the session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;  SKIP 2.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    WRITE: / 'Error Closing BDC Session ' , 'RETURN CODE: ', sy-subrc.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    WRITE : /  'Session created:', v_ssnname,&lt;/P&gt;&lt;P&gt;            50 '# of transactions:', v_trans_in_ssn.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Report     : ZMPPN001&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Type       : Include&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Author     : Chetan Shah&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Date       : 05/05/2005&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Transport  : DV3K919472&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Transaction: ??&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Description: Common miscelleneous form routines used in more then&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             one program&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;                    Modification Log&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Date       Programmer    Request #    Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;05/05/2005 Chetan Shah   DV3K919472   Initial coding&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  INCLUDE ZMPPN001                                                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  read_matnr_cross_ref&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;FORM read_matnr_cross_ref USING    pi_matnr   "SMI legacy part#&lt;/P&gt;&lt;P&gt;                                   pi_werks   "SMI plant&lt;/P&gt;&lt;P&gt;                          CHANGING pe_matnr.  "SAP part#&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_tablename(20) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;pi_matnr   = SMI legacy part#&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;pi_werks   = SMI plant&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;pe_matnr   = SAP part#&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;based in given plant#, decide which cross-reference&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;table is to be used&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CASE pi_werks.&lt;/P&gt;&lt;P&gt;    WHEN '0101'.&lt;/P&gt;&lt;P&gt;      l_tablename = 'ZMSMI_SIMP_RAW'.&lt;/P&gt;&lt;P&gt;    WHEN '0103'.&lt;/P&gt;&lt;P&gt;      l_tablename = 'ZMSMI_FERR_RAW'.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    this is basically snapper plant (0102) and all its related&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    warehouse-plants. Plant 0110 which is a warehouse-plant for&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    snapper can have production parts.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      l_tablename = 'ZMSMI_SNAP_RAW'.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read the cross-reference&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR pe_matnr.&lt;/P&gt;&lt;P&gt;  SELECT SINGLE cmatnr INTO pe_matnr&lt;/P&gt;&lt;P&gt;    FROM (l_tablename)&lt;/P&gt;&lt;P&gt;   WHERE matnr = pi_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if the cross-reference table had SAP-part# as blank OR&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if the cross-reference read failed,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;return back the SMI part#&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF pe_matnr IS INITIAL OR&lt;/P&gt;&lt;P&gt;     sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    pe_matnr = pi_matnr.&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.                    " read_matnr_cross_ref&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Seshu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2007 20:46:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-rate-routing-via-conversion-program/m-p/2514032#M568709</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-06T20:46:55Z</dc:date>
    </item>
    <item>
      <title>Re: How to create Rate Routing via conversion program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-rate-routing-via-conversion-program/m-p/2514033#M568710</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I also raised a OSS message to SAP. And SAP replied that no standard LSMW/BAPI etc support rate routing / reference rate routing conversion.So, we have to write our own custom program.&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 Jul 2007 17:04:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-rate-routing-via-conversion-program/m-p/2514033#M568710</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-09T17:04:09Z</dc:date>
    </item>
    <item>
      <title>Re: How to create Rate Routing via conversion program?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-rate-routing-via-conversion-program/m-p/2514034#M568711</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Bhaskar Pal,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do you have the template for uploading the same with the program that you have given for rate routing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In addition request you to give me the standard template for CA01 also if you have it on uploading the same with the program &lt;SPAN style="color: #333333; font-size: 12px;"&gt;RCPTRA01 / RCPTRA02&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Deepak GS&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Sep 2014 04:19:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-rate-routing-via-conversion-program/m-p/2514034#M568711</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2014-09-11T04:19:42Z</dc:date>
    </item>
  </channel>
</rss>

