10-23-2007 4:47 AM
Can any one provide me source code to change line item text for sales order using
BAPI_SALESORDER_CHANGE
Thanks in advance
Umesh
10-23-2007 4:52 AM
10-23-2007 4:59 AM
Check this sample code -
******************************************
&----
*& Report ZMLN_TEST_SO_CHANGE *
*& *
&----
*& Author : MLNARAS *
*& *
&----
REPORT ZMLN_TEST_SO_CHANGE .
data: ORDER_HEADER_IN like BAPISDH1,
ORDER_HEADER_INX like BAPISDH1X,
ORDER_ITEM_IN like BAPISDITM occurs 0 with header line,
ORDER_ITEM_INX like BAPISDITMX occurs 0 with header line,
ITEM_IN like BAPISDITEM occurs 0 with header line,
ITEM_INX like BAPISDITEMX occurs 0 with header line,
UPDATEFLAG like BAPISDITMX-UPDATEFLAG value 'U',
RETURN like BAPIRET2 occurs 0 with header line,
SCHEDULE_LINES like BAPISCHDL occurs 0 with header line,
SCHEDULE_LINESX like BAPISCHDLX occurs 0 with header line.
data: begin of t_vbap,
VBELN like VBAP-VBELN,
MATNR like VBAP-MATNR,
POSNR like VBAP-POSNR,
end of t_vbap.
parameters: VBELN like VBAP-VBELN default '29',
MATNR like VBAP-MATNR default '24351',
POSNR like VBAP-POSNR default '2072'.
select single VBELN MATNR POSNR into t_vbap
from VBAP
where
VBELN = VBELN AND
MATNR = MATNR AND
POSNR = POSNR.
break-point.
*Header
ORDER_HEADER_INX-UPDATEFLAG = UPDATEFLAG.
INX - Schedule line item level
SCHEDULE_LINESX-ITM_NUMBER = t_vbap-posnr.
SCHEDULE_LINESX-SCHED_LINE = '0001'.
SCHEDULE_LINESX-UPDATEFLAG = 'U'.
SCHEDULE_LINESX-REQ_QTY = 'X'.
append SCHEDULE_LINESX.
clear SCHEDULE_LINESX.
*Item (Order QQuantity Field to be changed "KWMENG")
SCHEDULE_LINES-ITM_NUMBER = t_vbap-posnr.
SCHEDULE_LINES-SCHED_LINE = '0001'.
SCHEDULE_LINES-REQ_QTY = '3'.
append SCHEDULE_LINES.
clear SCHEDULE_LINES.
break-point.
*******************
CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
EXPORTING
SALESDOCUMENT = T_vbap-vbeln
ORDER_HEADER_IN = ORDER_HEADER_IN
ORDER_HEADER_INX = ORDER_HEADER_INX
TABLES
RETURN = RETURN
SCHEDULE_LINES = SCHEDULE_LINES
SCHEDULE_LINESX = SCHEDULE_LINESX.
data: RETURN1 like RETURN .
read table return with key TYPE = 'E'.
if sy-subrc = 0.
else.
break-point.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
IMPORTING
RETURN = RETURN .
Hope this helps.
ashish