Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

BAPI_SALESORDER_CHANGE problen

Former Member
0 Kudos

Hi,

With bapi_salesorder_change bapi.I can not change quantity field.It adds the new value to existing value.

What is te problem?Do i need to fill other fields?

My code is below;

gt_order_items_in-itm_number = '10'.

gt_order_items_in-material = '000000001100000235'.

APPEND gt_order_items_in.

gt_order_items_inx-itm_number = '10'.

gt_order_items_inx-updateflag = 'U'.

gt_order_items_inx-material = 'X'.

APPEND gt_order_items_inx.

gt_order_schedules_in-itm_number = '10'.

gt_order_schedules_in-req_qty = '1'.

APPEND gt_order_schedules_in.

gt_order_schedules_inx-itm_number = '10'.

gt_order_schedules_inx-req_qty = 'X'.

APPEND gt_order_schedules_inx.

DATA:ls_order_header_in TYPE bapisdh1,

ls_order_header_inx TYPE bapisdh1x.

ls_order_header_in-sales_org = '0020'.

ls_order_header_in-distr_chan = '00'.

ls_order_header_in-division = '01'.

ls_order_header_inx-updateflag = 'U'.

ls_order_header_inx-sales_org = 'X'.

ls_order_header_inx-distr_chan = 'X'.

ls_order_header_inx-division = 'X'.

CALL FUNCTION 'BAPI_SALESORDER_CHANGE'

EXPORTING

salesdocument = '0000007030'

order_header_in = ls_order_header_in

order_header_inx = ls_order_header_inx

TABLES

return = gt_return

order_item_in = gt_order_items_in

order_item_inx = gt_order_items_inx

schedule_lines = gt_order_schedules_in

schedule_linesx = gt_order_schedules_inx.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

WAIT = 'X'.

2 REPLIES 2

Former Member
0 Kudos

Add this line

gt_order_schedules_inx-updateflag = 'U'.

Former Member
0 Kudos

Hi,

The issue is in this.

Give the schedule line number and update flag

gt_order_schedules_in-itm_number = '10'.

gt_order_schedules_in-sched_line = '0001'. <--- " You might need to select from VBEP to get the correct value.

gt_order_schedules_in-req_qty = '1'.

APPEND gt_order_schedules_in.

gt_order_schedules_inx-itm_number = '10'.

gt_order_schedules_inx-sched_line = '0001'. " You might need to select from VBEP to get the correct value.

gt_order_schedules_inx-updateflag = 'U'. <----- This is required

gt_order_schedules_inx-req_qty = 'X'.

APPEND gt_order_schedules_inx.

Hope it helps.

Sujay