<?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: Transaction KP26 BAPI in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815544#M349253</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Durga Prasad,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Got your mail ID from SDN forum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a requirement to upload the excel data into KP26 T. code, I have tried below 2 BAPI's and for some reason it's not posting any thing, I am not getting any error messages, but the values are not posting.&lt;/P&gt;&lt;P&gt;1) BAPI_ACT_PRICE_CHECK_AND_POST 2)BAPI_COSTACTPLN_POSTACTOUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have step through it and it's going to perform routine call_interface_aci at the end of BAPI logic, in this it's not going to Posting FM, because the Internal tables are not filling (gt_acivalline and gt_acitotline)&lt;/P&gt;&lt;P&gt;Do I missed any thing at selection, I think I have passed all the required info. We are at 4.6C version.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if you need more info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thiru&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 20 Mar 2008 19:59:29 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-03-20T19:59:29Z</dc:date>
    <item>
      <title>Transaction KP26 BAPI</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815540#M349249</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I need to upload the data into SAP for transaction KP26 ( Price Planning for Activity Types). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Following BAPI's I have tried , but these BAPI's donr have the provision to enter the cost center range , So please help me regarding the same.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BAPI_ACT_PRICE_CHECK_AND_POST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BAPI_COSTACTPLN_POSTACTOUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Durgaprasad&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Jan 2007 11:17:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815540#M349249</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-15T11:17:59Z</dc:date>
    </item>
    <item>
      <title>Re: Transaction KP26 BAPI</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815541#M349250</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Have a look at below thread. It may be hepful to you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_thread" href="https://community.sap.com/" __jive_macro_name="thread" modifiedtitle="true" __default_attr="92900"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;Vibha &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Please mark all the helpful answers&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Jan 2007 11:22:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815541#M349250</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-15T11:22:25Z</dc:date>
    </item>
    <item>
      <title>Re: Transaction KP26 BAPI</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815542#M349251</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I could not get the BAPI to create a sales order with reference to a quantity contract and still have the manual pricing conditions carry across. So I have used a little work around, it's a bit clumsy, but it works.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First create the Sales Order via BAPI_SALESORDER_CREATEFROMDAT2 in the normal way. Then, get the relevant Contract Line Items' Condition Records and call BAPI_SALESORDER_CHANGE for the newly created ales Order (do not use BAPI_SALESORDER_GETDETAILEDLIST to get Condition Records as this populates some Function Group Structures and causes BAPI_SALESORDER_CHANGE to fail - rather hit KONV to get the Conditions and then T685A to get the Pricing Condition Master data, then pass this info into MAP_INT_TO_EXT_STRUCTURE which maps the data into the correct structure format for BAPI_SALESORDER_CHANGE).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**************************&lt;/P&gt;&lt;P&gt;The BAPI does not allow the Pricing Conditions to be sourced from the Contract. I debugged the BAPI and it uses a piece of code (don't recall which subroutine though) from SAPMV45A which is relevant for dialog processing where it reads from the VBAP and *VBAP structures. Well this structure is only populated when you are using the Front End transaction (VA41, VA42, etc). Because this structure is empty, pricing conditions do not flow across.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is a little prototype program I whipped up to test my method of creating a Sales order and then changing the Sales Order:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  ypat_salesorder_create LINE-SIZE 256.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;This program will create a ZOC Sales Order with Reference to Contract&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;20000720 / 10. This will be done via BAPI. There are 2 BAPi calls,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BAPI_SALESORDER_CREATEFROMDAT2 and BAPI_SALESORDER_CHANGE. We need to&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;perform 2 BAPI calls as the BAPI to create the Sales Order does not&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;bring across the Pricing Conditions properly. To get around this we&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;create the Order with reference to the Contract, then we get the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;related Pricing Conditions from the COntract and then update the newly&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;created Order.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;CONSTANTS: c_contract  LIKE vbak-vbeln VALUE '0020000720',&lt;/P&gt;&lt;P&gt;           c_item      LIKE vbap-posnr VALUE '000010'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Structures&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Structure to hold BAPI Header&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: st_bapisdhd1   LIKE bapisdhd1.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sales Order Create BAPI Return Messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_return     TYPE STANDARD TABLE OF bapiret2&lt;/P&gt;&lt;P&gt;                     WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sales Order BAPI Line Item&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_bapisditm  TYPE STANDARD TABLE OF bapisditm&lt;/P&gt;&lt;P&gt;                     WITH HEADER LINE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sales Order BAPI Line Item&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_bapisditmx  TYPE STANDARD TABLE OF bapisditmx&lt;/P&gt;&lt;P&gt;                     WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sales Order BAPI Pricing Conditions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_bapicond   TYPE STANDARD TABLE OF bapicond&lt;/P&gt;&lt;P&gt;                     WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sales Order BAPI Partner Functions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_bapiparnr  TYPE STANDARD TABLE OF bapiparnr&lt;/P&gt;&lt;P&gt;                     WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sales Order BAPI Schedule Lines&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_bapischdl  TYPE STANDARD TABLE OF bapischdl&lt;/P&gt;&lt;P&gt;                     WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sales Order BAPI Schedule Lines&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_bapischdlx TYPE STANDARD TABLE OF bapischdlx&lt;/P&gt;&lt;P&gt;                     WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sales Order BAPI Pricing Conditions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_bapicondx    TYPE STANDARD TABLE OF bapicondx&lt;/P&gt;&lt;P&gt;                       WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Customer Enhancement for VBAK, VBAP, VBEP&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_bapiparex    TYPE STANDARD TABLE OF bapiparex&lt;/P&gt;&lt;P&gt;                       WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table to hold BAPI Detail Conditions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tbl_bapisdcond   TYPE STANDARD TABLE OF bapisdcond&lt;/P&gt;&lt;P&gt;                       WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table to hold Return Messages from Sales Order Change BAPI&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;DATA: tbl_return_chg  TYPE STANDARD TABLE OF bapiret2&lt;/P&gt;&lt;P&gt;                      WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;DATA: g_vbeln_created   LIKE vbak-vbeln,&lt;/P&gt;&lt;P&gt;      g_valid_contract  TYPE c,&lt;/P&gt;&lt;P&gt;      g_cont_price_date TYPE d.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Start of Selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  PERFORM validate_contract.&lt;/P&gt;&lt;P&gt;  PERFORM create_sales_ord.&lt;/P&gt;&lt;P&gt;  PERFORM update_sales_ord.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of Selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  PERFORM write_output_report.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Subroutines&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  create_sales_ord&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;      Create the Sales Order&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_sales_ord .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  PERFORM populate_bapi_tables.&lt;/P&gt;&lt;P&gt;  PERFORM call_create_sales_ord_bapi.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " create_sales_ord&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  populate_bapi_tables&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;      Fill up the BAPI Tables&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 populate_bapi_tables .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  PERFORM populate_bapi_header.&lt;/P&gt;&lt;P&gt;  PERFORM build_bapi_partners.&lt;/P&gt;&lt;P&gt;  PERFORM build_bapi_items.&lt;/P&gt;&lt;P&gt;  PERFORM build_bapi_sched_lines.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " populate_bapi_tables&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  populate_bapi_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;      Build BAPI Header Details&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 populate_bapi_header .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR st_bapisdhd1.&lt;/P&gt;&lt;P&gt;  st_bapisdhd1-doc_type     = 'ZOC'.         "Order type&lt;/P&gt;&lt;P&gt;  st_bapisdhd1-sales_org    = '026'.         "Sales Org&lt;/P&gt;&lt;P&gt;  st_bapisdhd1-distr_chan   = '00'.          "Dist Channel&lt;/P&gt;&lt;P&gt;  st_bapisdhd1-division     = '00'.          "Division&lt;/P&gt;&lt;P&gt;  st_bapisdhd1-purch_no_c   = 'Cust Po No'.  "Cust PO No&lt;/P&gt;&lt;P&gt;  st_bapisdhd1-name         = 'Orderer'.     "Name of Orderer&lt;/P&gt;&lt;P&gt;  st_bapisdhd1-ord_reason   = ''.            "Order Reason&lt;/P&gt;&lt;P&gt;  st_bapisdhd1-sales_off    = '3001'.        "Sales Office&lt;/P&gt;&lt;P&gt;  st_bapisdhd1-sales_grp    = '301'.         "Market Area&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  IF g_valid_contract = 'X'.&lt;/P&gt;&lt;P&gt;    st_bapisdhd1-price_date = g_cont_price_date.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " populate_bapi_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;P&gt;*&amp;amp;      Form  build_bapi_partners&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;      Build BAPI Partner Functions&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 build_bapi_partners .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR tbl_bapiparnr.&lt;/P&gt;&lt;P&gt;  tbl_bapiparnr-partn_role   = 'AG'.&lt;/P&gt;&lt;P&gt;  tbl_bapiparnr-partn_numb   = '0000100750'.&lt;/P&gt;&lt;P&gt;  APPEND tbl_bapiparnr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR tbl_bapiparnr.&lt;/P&gt;&lt;P&gt;  tbl_bapiparnr-partn_role   = 'WE'.&lt;/P&gt;&lt;P&gt;  tbl_bapiparnr-partn_numb   = '0000504472'.&lt;/P&gt;&lt;P&gt;  APPEND tbl_bapiparnr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_bapi_partners&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  build_bapi_items&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;      Build The BAPI Line Items&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 build_bapi_items .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  DATA: l_matnr LIKE mara-matnr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      input  = '10000072'&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      output = l_matnr.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR tbl_bapisditm.&lt;/P&gt;&lt;P&gt;  tbl_bapisditm-itm_number  = c_item.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  IF g_valid_contract = 'X'.&lt;/P&gt;&lt;P&gt;    tbl_bapisditm-ref_doc     = c_contract.&lt;/P&gt;&lt;P&gt;    tbl_bapisditm-ref_doc_it  = c_item.&lt;/P&gt;&lt;P&gt;    tbl_bapisditm-ref_doc_ca  = 'G'.       "Contract&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  tbl_bapisditm-material    = l_matnr.&lt;/P&gt;&lt;P&gt;  tbl_bapisditm-plant       = '3012'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditm-target_qty  = '5.000'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  tbl_bapisditm-target_qu   = 'M3'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditm-item_categ  = 'ZZOC'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditm-sales_dist  = '301'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditm-dlv_prio    = '02'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  tbl_bapisditm-prc_group5  = '080'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  tbl_bapisditm-cust_mat35  = 'kdmat'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditm-route       = 'TESYS'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditm-usage_ind   = 'CIV'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  APPEND tbl_bapisditm.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR tbl_bapisditmx.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-itm_number = c_item.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-ref_doc    = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-ref_doc_it = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-ref_doc_ca = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-material   = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-updateflag = 'I'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-plant      = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-target_qty = 'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-target_qu  = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-item_categ = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-sales_dist = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-dlv_prio   = 'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-prc_group5 = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-cust_mat35 = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-usage_ind  = 'X'.&lt;/P&gt;&lt;P&gt;  tbl_bapisditmx-route      = 'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  APPEND tbl_bapisditmx.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_bapi_items&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  build_bapi_sched_lines&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;      Build the BAPI Schedule Lines&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 build_bapi_sched_lines .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR tbl_bapischdl.&lt;/P&gt;&lt;P&gt;  tbl_bapischdl-itm_number  = c_item.&lt;/P&gt;&lt;P&gt;  tbl_bapischdl-req_qty     = '1'.&lt;/P&gt;&lt;P&gt;  tbl_bapischdl-req_date    = sy-datum.&lt;/P&gt;&lt;P&gt;  APPEND tbl_bapischdl.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_bapi_sched_lines&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  build_bapi_conditions&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;      Pull the BAPI Pricing Conditions from the Contract&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 build_bapi_conditions .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  LOOP AT tbl_bapisdcond.&lt;/P&gt;&lt;P&gt;    CLEAR tbl_bapicond.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING tbl_bapisdcond TO tbl_bapicond.&lt;/P&gt;&lt;P&gt;    APPEND tbl_bapicond.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;    CLEAR tbl_bapicondx.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-itm_number = tbl_bapicond-itm_number.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-cond_st_no = tbl_bapicond-cond_st_no.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-cond_count = tbl_bapicond-cond_count.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-cond_type  = tbl_bapicond-cond_type.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-updateflag = 'I'.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-cond_value = 'X'.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-currency   = 'X'.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-cond_unit  = 'X'.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-cond_p_unt = 'X'.&lt;/P&gt;&lt;P&gt;    tbl_bapicondx-varcond    = tbl_bapicond-varcond.&lt;/P&gt;&lt;P&gt;    APPEND tbl_bapicondx.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_bapi_conditions&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  call_create_sales_ord_bapi&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;      Call the Sales Order Create BAPI&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 call_create_sales_ord_bapi .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CLEAR g_vbeln_created.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      order_header_in    = st_bapisdhd1&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      salesdocument      = g_vbeln_created&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      return             = tbl_return&lt;/P&gt;&lt;P&gt;      order_items_in     = tbl_bapisditm&lt;/P&gt;&lt;P&gt;      order_items_inx    = tbl_bapisditmx&lt;/P&gt;&lt;P&gt;      order_partners     = tbl_bapiparnr&lt;/P&gt;&lt;P&gt;      order_schedules_in = tbl_bapischdl.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      wait = 'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " call_create_sales_ord_bapi&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  update_sales_ord&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;      Update the newly created Sales Order with the Pricing Conditions&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      from the Contract&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 update_sales_ord .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CHECK g_valid_contract EQ 'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  PERFORM get_contract_details.&lt;/P&gt;&lt;P&gt;  PERFORM build_bapi_conditions.&lt;/P&gt;&lt;P&gt;  PERFORM call_change_sales_ord_bapi.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " update_sales_ord&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  get_contract_details&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;      Get Contract Details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_contract_details .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Need to manually get the relevant Pricing Conditions as the BAPI&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BAPISDORDER_GETDETAILEDLIST causes problems when we call the BAPI&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BAPI_SALESORDER_CREATEFROMDAT2 and BAPI_SALESORDER_CHANGE (I think&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this is due to the fact that these BAPIs belong to the same Function&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Group and there must be some common structures that are not cleared&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;causing us all sorts of grief when we try and call the next BAPI)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  DATA: tbl_konv TYPE STANDARD TABLE OF konv WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;  DATA: tbl_komv TYPE STANDARD TABLE OF komv WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;  DATA: tbl_vbak TYPE STANDARD TABLE OF vbak WITH HEADER LINE.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Pricing Condition Master&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: BEGIN OF tbl_t685a OCCURS 0,&lt;/P&gt;&lt;P&gt;          kschl     LIKE t685a-kschl,&lt;/P&gt;&lt;P&gt;          kaend_wrt LIKE t685a-kaend_wrt,&lt;/P&gt;&lt;P&gt;        END OF tbl_t685a.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  SELECT *&lt;/P&gt;&lt;P&gt;         INTO TABLE tbl_vbak&lt;/P&gt;&lt;P&gt;         FROM vbak&lt;/P&gt;&lt;P&gt;         WHERE vbeln = c_contract.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  READ TABLE tbl_vbak INDEX 1.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  SELECT *&lt;/P&gt;&lt;P&gt;         INTO TABLE tbl_konv&lt;/P&gt;&lt;P&gt;         FROM konv&lt;/P&gt;&lt;P&gt;         WHERE knumv = tbl_vbak-knumv AND&lt;/P&gt;&lt;P&gt;               kposn = c_item.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CHECK sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;We now need to make sure we only bring across the Condition Types that&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;are EDITABLE. If we bring across non editable conditions (such as&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;'ZPR1') the Change Sales Order BAPI will fail&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT kschl kaend_wrt&lt;/P&gt;&lt;P&gt;         INTO TABLE tbl_t685a&lt;/P&gt;&lt;P&gt;         FROM t685a&lt;/P&gt;&lt;P&gt;         FOR ALL ENTRIES IN tbl_konv&lt;/P&gt;&lt;P&gt;         WHERE kappl     EQ 'V'             AND  "Sales&lt;/P&gt;&lt;P&gt;               kschl     EQ tbl_konv-kschl  AND&lt;/P&gt;&lt;P&gt;               kaend_wrt EQ 'X'             AND  "Value is Editable&lt;/P&gt;&lt;P&gt;               kmanu     NE 'D'.                 "Process manually&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Prepare for Binary Search&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SORT tbl_t685a BY kschl.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  LOOP AT tbl_konv.&lt;/P&gt;&lt;P&gt;    READ TABLE tbl_t685a WITH KEY kschl = tbl_konv-kschl BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING tbl_konv TO tbl_komv.&lt;/P&gt;&lt;P&gt;      APPEND tbl_komv.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CHECK NOT tbl_komv[] IS INITIAL.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Map KOMV into the more BAPI friendly BAPISDCOND structure&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'MAP_INT_TO_EXT_STRUCTURE'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      fxvbak        = tbl_vbak&lt;/P&gt;&lt;P&gt;      fxkomv        = tbl_komv&lt;/P&gt;&lt;P&gt;      fxbapikomv    = tbl_bapisdcond&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      entry_missing = 1&lt;/P&gt;&lt;P&gt;      OTHERS        = 2.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_contract_details&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  call_change_sales_ord_bapi&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;      Call the Change Sales Order BAPI&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 call_change_sales_ord_bapi .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  DATA: st_head_chg      LIKE bapisdh1x,&lt;/P&gt;&lt;P&gt;        st_logic_switch  TYPE bapisdls.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CHECK NOT g_vbeln_created IS INITIAL.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CHECK g_valid_contract EQ 'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  st_head_chg-updateflag     = 'U'.&lt;/P&gt;&lt;P&gt;  st_logic_switch-cond_handl = 'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BAPI_SALESORDER_CHANGE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      salesdocument    = g_vbeln_created&lt;/P&gt;&lt;P&gt;      order_header_inx = st_head_chg&lt;/P&gt;&lt;P&gt;      logic_switch     = st_logic_switch&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      return           = tbl_return_chg&lt;/P&gt;&lt;P&gt;      conditions_in    = tbl_bapicond&lt;/P&gt;&lt;P&gt;      conditions_inx   = tbl_bapicondx.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      wait = 'X'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " call_change_sales_ord_bapi&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  write_output_report&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;      Produce Output Report&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 write_output_report .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  IF NOT g_vbeln_created IS INITIAL.&lt;/P&gt;&lt;P&gt;    WRITE:/ 'Success! Sales Order', g_vbeln_created, 'was created!'.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    WRITE:/ 'Failure! Sales Order was not created!'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  SKIP.&lt;/P&gt;&lt;P&gt;  WRITE:/ 'Sales Order Create Log'.&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_return.&lt;/P&gt;&lt;P&gt;    WRITE:/ tbl_return-type, tbl_return-id, tbl_return-number,&lt;/P&gt;&lt;P&gt;            tbl_return-message.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  SKIP.&lt;/P&gt;&lt;P&gt;  WRITE:/ 'Sales Order Change Log'.&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_return_chg.&lt;/P&gt;&lt;P&gt;    WRITE:/ tbl_return_chg-type, tbl_return_chg-id,&lt;/P&gt;&lt;P&gt;            tbl_return_chg-number, tbl_return_chg-message.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " write_output_report&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  validate_contract&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;      Make sure that the Contract is Valid&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 validate_contract .&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  DATA: l_gueen  LIKE vbak-gueen,&lt;/P&gt;&lt;P&gt;        l_prsdt  LIKE vbkd-prsdt.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  SELECT SINGLE  vbak&lt;SUB&gt;gueen vbkd&lt;/SUB&gt;prsdt&lt;/P&gt;&lt;P&gt;         INTO (l_gueen, l_prsdt)&lt;/P&gt;&lt;P&gt;         FROM vbak&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;         INNER JOIN vbkd&lt;/P&gt;&lt;P&gt;         ON vbak&lt;SUB&gt;vbeln = vbkd&lt;/SUB&gt;vbeln&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;         WHERE vbak~vbeln = c_contract AND&lt;/P&gt;&lt;P&gt;               vbkd~posnr = '000000'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  IF sy-datum LE l_gueen.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Contract is valid! Set Order Price Date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    g_valid_contract  = 'X'.&lt;/P&gt;&lt;P&gt;    g_cont_price_date = l_prsdt.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.                    " validate_contract&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Jan 2007 11:47:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815542#M349251</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-15T11:47:33Z</dc:date>
    </item>
    <item>
      <title>Re: Transaction KP26 BAPI</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815543#M349252</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ramesh, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Do u have any BAPI examples which use BAPI_SALESORDER_CHANGE to change the sales order and remove the billing block also.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 11:14:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815543#M349252</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T11:14:05Z</dc:date>
    </item>
    <item>
      <title>Re: Transaction KP26 BAPI</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815544#M349253</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Durga Prasad,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Got your mail ID from SDN forum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a requirement to upload the excel data into KP26 T. code, I have tried below 2 BAPI's and for some reason it's not posting any thing, I am not getting any error messages, but the values are not posting.&lt;/P&gt;&lt;P&gt;1) BAPI_ACT_PRICE_CHECK_AND_POST 2)BAPI_COSTACTPLN_POSTACTOUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have step through it and it's going to perform routine call_interface_aci at the end of BAPI logic, in this it's not going to Posting FM, because the Internal tables are not filling (gt_acivalline and gt_acitotline)&lt;/P&gt;&lt;P&gt;Do I missed any thing at selection, I think I have passed all the required info. We are at 4.6C version.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if you need more info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thiru&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Mar 2008 19:59:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction-kp26-bapi/m-p/1815544#M349253</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-20T19:59:29Z</dc:date>
    </item>
  </channel>
</rss>

