<?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_SALESORDER_CHANGE in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751772#M326023</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Open sales orders are orders whose document flow is not yet complete.&lt;/P&gt;&lt;P&gt;i.e. accounting document is not yet generated.&lt;/P&gt;&lt;P&gt;In order to update the header data you have pass the below parameters.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;order_header_in and order_header_inx.&lt;/P&gt;&lt;P&gt;order_header_inx contains a flag for all the fields in the sales order header,&lt;/P&gt;&lt;P&gt;you have to set this flag for all the fields that you want to make the change.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in order_header_in you pass the new values that has to replace the old values.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You have to set the update flag&lt;/P&gt;&lt;P&gt;E.g. say you want to change the value of customer purchase order in SO.&lt;/P&gt;&lt;P&gt;then &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;order_header_inx-updateflag = 'U'.&lt;/P&gt;&lt;P&gt;order_header_inx-purch_no_c = 'X' "indicates this field has to be set to new value&lt;/P&gt;&lt;P&gt;ORDER_HEADER_IN-PURCH_NO_C = 'New value of PO'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;salesdocument = sales document number to be changed.&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               = salesdocument&lt;/P&gt;&lt;P&gt;              order_header_in             = order_header_in&lt;/P&gt;&lt;P&gt;              order_header_inx            =order_header_inx&lt;/P&gt;&lt;P&gt;            tables&lt;/P&gt;&lt;P&gt;              return                      = gt_bapireturn&lt;/P&gt;&lt;P&gt;     .&lt;/P&gt;&lt;P&gt;          call function 'BAPI_TRANSACTION_COMMIT' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;similarly for changing item details you have to pass,&lt;/P&gt;&lt;P&gt;order_item_inx and order_item_in.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Raghavendra&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 06 Dec 2006 04:50:20 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-12-06T04:50:20Z</dc:date>
    <item>
      <title>BAPI_SALESORDER_CHANGE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751769#M326020</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi friends,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  what is open sales orders and back orders.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; how i can pass header and item through this BAPI_SALESORDER_CHANGE&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;ganesh&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: &lt;/P&gt;&lt;P&gt;        ganesh ram&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Dec 2006 04:19:27 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751769#M326020</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-06T04:19:27Z</dc:date>
    </item>
    <item>
      <title>Re: BAPI_SALESORDER_CHANGE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751770#M326021</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check this link for sample code.&lt;/P&gt;&lt;P&gt;&lt;A href="http://sap4.com/wiki/index.php?title=BAPI_SALESORDER_CHANGE" target="test_blank"&gt;http://sap4.com/wiki/index.php?title=BAPI_SALESORDER_CHANGE&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Dec 2006 04:22:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751770#M326021</guid>
      <dc:creator>jayanthi_jayaraman</dc:creator>
      <dc:date>2006-12-06T04:22:07Z</dc:date>
    </item>
    <item>
      <title>Re: BAPI_SALESORDER_CHANGE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751771#M326022</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check this sample code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT  Z_BAPI_SO_CHANGE
        NO STANDARD PAGE HEADING
        LINE-SIZE  132
        LINE-COUNT 65(0)
        MESSAGE-ID ZZ.
 
TABLES: VBAP.
 
DATA:
V_FILEIN(90)   TYPE C,
V_RECIN        TYPE I,
V_RECVBAP      TYPE I,
V_RECORDER     TYPE I,
V_VBELN        LIKE VBAP-VBELN,
ORDERHEADERINX LIKE BAPISDH1X.
 
DATA: BEGIN OF I_ORDERS OCCURS 0,
VBELN LIKE VBAK-VBELN,
POSNR LIKE VBAP-POSNR,
BRGEW(18) TYPE C,
VOLUM(18) TYPE C,
END OF I_ORDERS.
 
DATA: BEGIN OF I_OUTPUT OCCURS 0,
VBELN LIKE VBAK-VBELN,
POSNR LIKE VBAP-POSNR,
* GEWEI LIKE VBAP-GEWEI,
BRGEW LIKE VBAP-BRGEW,
VOLUM LIKE VBAP-VOLUM,
CKWGT TYPE C,
CKVOL TYPE C,
END OF I_OUTPUT.
 
DATA: BEGIN OF ORDERITEMIN OCCURS 0.
        INCLUDE STRUCTURE BAPISDITM.
DATA: END OF ORDERITEMIN.
 
DATA: BEGIN OF ORDERITEMINX OCCURS 0.
        INCLUDE STRUCTURE BAPISDITMX.
DATA: END OF ORDERITEMINX.
 
DATA: BEGIN OF RETURN OCCURS 0.
        INCLUDE STRUCTURE BAPIRET2.
DATA: END OF RETURN.
 
DATA: BEGIN OF BAPIRETURN OCCURS 0.
        INCLUDE STRUCTURE BAPIRET2.
DATA: END OF BAPIRETURN.
 
PARAMETERS:
P_PATH(45) TYPE C DEFAULT '/usr/users/ftpsapom/' LOWER CASE,
P_FNAME(32) TYPE C DEFAULT '/sweetjo.txt' LOWER CASE.
 
START-OF-SELECTION.
* CONCATENATE PATH AND FILE NAME INTO ONE VARIABLE
  CONCATENATE P_PATH P_FNAME INTO V_FILEIN.
* OPEN DATASET
  IF V_FILEIN IS INITIAL.
    MESSAGE E002 WITH 'FILE' V_FILEIN 'DOES NOT CONTAIN ANY DATA!'.
*   &amp;amp; &amp;amp; &amp;amp; &amp;amp;
  ELSE.
    OPEN DATASET V_FILEIN
         FOR INPUT
         IN TEXT MODE.
    IF SY-SUBRC = 0.
* READ DATASET
      DO.
        READ DATASET V_FILEIN INTO I_ORDERS.
        IF SY-SUBRC = 0.
          APPEND I_ORDERS.
        ELSE.
          EXIT.
        ENDIF.
      ENDDO.
* CLOSE DATASET
      CLOSE DATASET V_FILEIN.
      IF SY-SUBRC &amp;lt;&amp;gt; 0.
        MESSAGE E002 WITH 'ERROR - CLOSING' V_FILEIN.
*   &amp;amp; &amp;amp; &amp;amp; &amp;amp;
      ENDIF.
    ELSE.
      MESSAGE E002 WITH 'ERROR - COULD NOT OPEN' V_FILEIN.
*   &amp;amp; &amp;amp; &amp;amp; &amp;amp;
    ENDIF.
  ENDIF.
* SORT AND REMOVE DUPLICATES FROM I_ORDERS
  SORT I_ORDERS BY VBELN POSNR.
  DELETE ADJACENT DUPLICATES FROM I_ORDERS.
* POPULATE I_OUTPUT
  LOOP AT I_ORDERS.
    SHIFT I_ORDERS-POSNR LEFT  DELETING LEADING SPACE.
    CONCATENATE '0' I_ORDERS-POSNR INTO I_ORDERS-POSNR.
    SELECT SINGLE BRGEW VOLUM
    FROM VBAP
    INTO (VBAP-BRGEW, VBAP-VOLUM)
    WHERE VBELN = I_ORDERS-VBELN
      AND POSNR = I_ORDERS-POSNR.
    IF SY-SUBRC = 0.
      IF VBAP-BRGEW = 0.
        I_OUTPUT-CKWGT = 'X'.
      ENDIF.
      IF VBAP-VOLUM = 0.
        I_OUTPUT-CKVOL = 'X'.
      ENDIF.
      I_OUTPUT-VBELN = I_ORDERS-VBELN.
      I_OUTPUT-POSNR = I_ORDERS-POSNR.
*     I_OUTPUT-GEWEI = 'ST'.
      I_OUTPUT-BRGEW = I_ORDERS-BRGEW.
      I_OUTPUT-VOLUM = I_ORDERS-VOLUM.
      APPEND I_OUTPUT.
      CLEAR: I_OUTPUT.
    ENDIF.
    V_RECIN = V_RECIN + 1.
  ENDLOOP.
* POPULATE BAPI DATA AND RUN BAPI
  CLEAR: ORDERHEADERINX, ORDERITEMIN, ORDERITEMINX,
         RETURN, BAPIRETURN.
  REFRESH: ORDERITEMIN, ORDERITEMINX, RETURN, BAPIRETURN.
  ORDERHEADERINX-UPDATEFLAG = 'U'.
  LOOP AT I_OUTPUT WHERE CKWGT = 'X' OR CKVOL = 'X'.
 
    V_RECVBAP = V_RECVBAP + 1.
 
    IF I_OUTPUT-VBELN &amp;lt;&amp;gt; V_VBELN AND SY-TABIX &amp;lt;&amp;gt; 1.
      V_RECORDER = V_RECORDER + 1.
      CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
           EXPORTING
                SALESDOCUMENT    = V_VBELN
                ORDER_HEADER_INX = ORDERHEADERINX
           TABLES
                RETURN           = RETURN
                ORDER_ITEM_IN    = ORDERITEMIN
                ORDER_ITEM_INX   = ORDERITEMINX.
 
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
           EXPORTING
                WAIT   = 'X'
           IMPORTING
                RETURN = BAPIRETURN.
* WRITE OUT RETURN
      LOOP AT RETURN.
        WRITE: / RETURN.
      ENDLOOP.
      WRITE: / BAPIRETURN.
      SKIP.
      CLEAR: ORDERITEMIN, ORDERITEMINX,
             RETURN, BAPIRETURN.
      REFRESH: ORDERITEMIN, ORDERITEMINX, RETURN, BAPIRETURN.
    ENDIF.
 
    ORDERITEMIN-ITM_NUMBER = I_OUTPUT-POSNR.
*   ORDERITEMIN-UNTOF_WGHT = I_OUTPUT-GEWEI.
    IF NOT I_OUTPUT-CKWGT IS INITIAL.
      ORDERITEMIN-GROSS_WGHT = I_OUTPUT-BRGEW.
      ORDERITEMINX-GROSS_WGHT = 'X'.
    ENDIF.
    IF NOT I_OUTPUT-CKVOL IS INITIAL.
      ORDERITEMIN-VOLUME = I_OUTPUT-VOLUM.
      ORDERITEMINX-VOLUME = 'X'.
    ENDIF.
    APPEND ORDERITEMIN.
    ORDERITEMINX-ITM_NUMBER = I_OUTPUT-POSNR.
*   ORDERITEMINX-UNTOF_WGHT = 'X'.
    ORDERITEMINX-UPDATEFLAG = 'U'.
    APPEND ORDERITEMINX.
 
    V_VBELN = I_OUTPUT-VBELN.
 
  ENDLOOP.
* RUN BAPI ON LAST ORDER
  IF NOT ORDERITEMIN IS INITIAL.
    V_RECORDER = V_RECORDER + 1.
    CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
         EXPORTING
              SALESDOCUMENT    = V_VBELN
              ORDER_HEADER_INX = ORDERHEADERINX
         TABLES
              RETURN           = RETURN
              ORDER_ITEM_IN    = ORDERITEMIN
              ORDER_ITEM_INX   = ORDERITEMINX.
 
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
         EXPORTING
              WAIT   = 'X'
         IMPORTING
              RETURN = BAPIRETURN.
* WRITE OUT RETURN
    LOOP AT RETURN.
      WRITE: / RETURN.
    ENDLOOP.
    WRITE: / BAPIRETURN.
    SKIP.
 
  ENDIF.
* WRITE OUT RECORD COUNT FROM FILE
  WRITE: / 'RECORD COUNT FROM FILE ', V_RECIN.
  SKIP.
* WRITE OUT RECORD COUNT FROM FILE
  WRITE: / 'RECORD COUNT OF LINES TO CHANGE ', V_RECVBAP.
  SKIP.
* WRITE OUT RECORD COUNT FROM FILE
  WRITE: / 'RECORD COUNT OF ORDERS TO CHANGE ', V_RECORDER.
  SKIP.
 
* TOP OF PAGE
TOP-OF-PAGE.
  WRITE:/1(5)    TEXT-H01,    6(8) SY-DATUM MM/DD/YY,
        100(8)   TEXT-H02,  126(8) SY-PAGNO.
  WRITE:/1(5)    TEXT-H03,    6(8) SY-UZEIT USING EDIT MASK '__:__:__',
        20(77)   TEXT-H04,
       100(8)    TEXT-H05, 108(25) SY-REPID.
  WRITE:/1(6)    TEXT-H06,   8(12) SY-UNAME,
        20(4)    TEXT-H07,  25(32) SY-HOST,
       100(13)   TEXT-H08,  121(8) SY-SYSID,
       129 '/',             130(3) SY-MANDT.
  ULINE.
  SKIP.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ferry Lianto&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Dec 2006 04:26:02 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751771#M326022</guid>
      <dc:creator>ferry_lianto</dc:creator>
      <dc:date>2006-12-06T04:26:02Z</dc:date>
    </item>
    <item>
      <title>Re: BAPI_SALESORDER_CHANGE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751772#M326023</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Open sales orders are orders whose document flow is not yet complete.&lt;/P&gt;&lt;P&gt;i.e. accounting document is not yet generated.&lt;/P&gt;&lt;P&gt;In order to update the header data you have pass the below parameters.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;order_header_in and order_header_inx.&lt;/P&gt;&lt;P&gt;order_header_inx contains a flag for all the fields in the sales order header,&lt;/P&gt;&lt;P&gt;you have to set this flag for all the fields that you want to make the change.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in order_header_in you pass the new values that has to replace the old values.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You have to set the update flag&lt;/P&gt;&lt;P&gt;E.g. say you want to change the value of customer purchase order in SO.&lt;/P&gt;&lt;P&gt;then &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;order_header_inx-updateflag = 'U'.&lt;/P&gt;&lt;P&gt;order_header_inx-purch_no_c = 'X' "indicates this field has to be set to new value&lt;/P&gt;&lt;P&gt;ORDER_HEADER_IN-PURCH_NO_C = 'New value of PO'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;salesdocument = sales document number to be changed.&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               = salesdocument&lt;/P&gt;&lt;P&gt;              order_header_in             = order_header_in&lt;/P&gt;&lt;P&gt;              order_header_inx            =order_header_inx&lt;/P&gt;&lt;P&gt;            tables&lt;/P&gt;&lt;P&gt;              return                      = gt_bapireturn&lt;/P&gt;&lt;P&gt;     .&lt;/P&gt;&lt;P&gt;          call function 'BAPI_TRANSACTION_COMMIT' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;similarly for changing item details you have to pass,&lt;/P&gt;&lt;P&gt;order_item_inx and order_item_in.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Raghavendra&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Dec 2006 04:50:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751772#M326023</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-06T04:50:20Z</dc:date>
    </item>
    <item>
      <title>Re: BAPI_SALESORDER_CHANGE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751773#M326024</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This message was moderated.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Nov 2008 12:47:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bapi-salesorder-change/m-p/1751773#M326024</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-11-10T12:47:26Z</dc:date>
    </item>
  </channel>
</rss>

