Application Development and Automation 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: 
Read only

Order Quantity in BAPI_Salesorder_change becomes zero when changed.

Former Member
0 Likes
816

Hi,

As a requirement , I have to delete line item on a sales order and create one line item with the same data except delivering plant. I am using BAPI_SALESORDER_CHANGE.

I need to change ship to party and line item data. Ship to party and other line item details updates fine but order quantity remains zero.

Please find below used code.

{ Code

wa_order_item_in-itm_number = wa_vbap-posnr.

wa_order_item_in-plant = wa_vbap-werks.

wa_order_item_in-material = wa_vbap-matnr.

wa_order_item_in-target_qty = '1'.

clear wa_order_item_in.

*--Adding second line item

wa_order_item_in-plant = pa_werks.

wa_order_item_in-material = wa_vbap-matnr.

wa_order_item_in-target_qty = '1'.

wa_order_item_inx-itm_number = wa_vbap-posnr.

wa_order_item_inx-updateflag = c_delete.

clear wa_order_item_inx.

wa_order_item_inx-itm_number = wa_vbap-posnr.

wa_order_item_inx-updateflag = 'I'.

wa_order_item_inx-material = c_x.

wa_order_item_inx-plant = c_x.

wa_order_item_inx-target_qty = c_x.

wa_order_item_inx-target_qu = c_x.

append wa_order_item_inx to it_order_item_inx.

clear wa_order_item_inx.

-Partner function changes--


concatenate c_p wa_vbap-werks into lv_garage1.

wa_partnerchanges-updateflag = c_update.

wa_partnerchanges-document = wa_vbap-vbeln.

wa_partnerchanges-p_numb_new = lv_garage.

wa_partnerchanges-partn_role = c_shiptoparty.

wa_partnerchanges-p_numb_old = lv_garage1.

append wa_partnerchanges to lt_partnerchanges.

clear wa_partnerchanges.

Schedule Lines--


wa_schedule_lines-itm_number = wa_vbap-posnr.

wa_schedule_lines-req_qty = wa_vbap-kwmeng.

wa_schedule_lines-sched_line = '0001'.

append wa_schedule_lines to lt_schedule_lines.

clear wa_schedule_lines.

wa_schedule_linesx-itm_number = wa_vbap-posnr.

wa_schedule_linesx-updateflag = 'U'.

wa_schedule_linesx-req_qty = 'X'.

append wa_schedule_linesx to lt_schedule_linesx.

clear wa_schedule_linesx.

}

Thanks

Mohinder

Edited by: Mohinder Singh Chauhan on Dec 9, 2009 5:27 AM

Edited by: Mohinder Singh Chauhan on Dec 9, 2009 5:28 AM

1 ACCEPTED SOLUTION
Read only

former_member217544
Active Contributor
0 Likes
684

Hi Mohindar,

Please keep your code between code tags

Regards,

Swarna Munukoti

Edited by: Swarna Munukoti on Dec 9, 2009 5:29 AM

Edited by: Swarna Munukoti on Dec 9, 2009 5:29 AM

4 REPLIES 4
Read only

former_member217544
Active Contributor
0 Likes
685

Hi Mohindar,

Please keep your code between code tags

Regards,

Swarna Munukoti

Edited by: Swarna Munukoti on Dec 9, 2009 5:29 AM

Edited by: Swarna Munukoti on Dec 9, 2009 5:29 AM

Read only

former_member217544
Active Contributor
0 Likes
684

Hi Mohinder,

Try giving schdule line number value also in wa_schedule_linesx sctructure.


wa_order_item_in-itm_number = wa_vbap-posnr.
wa_order_item_in-plant = wa_vbap-werks.
wa_order_item_in-material = wa_vbap-matnr.
wa_order_item_in-target_qty = '1'.
clear wa_order_item_in.
*--Adding second line item
wa_order_item_in-plant = pa_werks.
wa_order_item_in-material = wa_vbap-matnr.
wa_order_item_in-target_qty = '1'.
wa_order_item_inx-itm_number = wa_vbap-posnr.
wa_order_item_inx-updateflag = c_delete.
clear wa_order_item_inx.
wa_order_item_inx-itm_number = wa_vbap-posnr.
wa_order_item_inx-updateflag = 'I'.
wa_order_item_inx-material = c_x.
wa_order_item_inx-plant = c_x.
wa_order_item_inx-target_qty = c_x.
wa_order_item_inx-target_qu = c_x.
append wa_order_item_inx to it_order_item_inx.
clear wa_order_item_inx.
---Partner function changes-------------------------------------------
concatenate c_p wa_vbap-werks into lv_garage1.
wa_partnerchanges-updateflag = c_update.
wa_partnerchanges-document = wa_vbap-vbeln.
wa_partnerchanges-p_numb_new = lv_garage.
wa_partnerchanges-partn_role = c_shiptoparty.
wa_partnerchanges-p_numb_old = lv_garage1.
append wa_partnerchanges to lt_partnerchanges.
clear wa_partnerchanges.
--Schedule Lines------------------------------------------------------
wa_schedule_lines-itm_number = wa_vbap-posnr.
wa_schedule_lines-req_qty = wa_vbap-kwmeng.
wa_schedule_lines-sched_line = '0001'.
append wa_schedule_lines to lt_schedule_lines.
clear wa_schedule_lines.
wa_schedule_linesx-itm_number = wa_vbap-posnr.
wa_schedule_linesx-sched_line = '0001'. " Add this line and check
wa_schedule_linesx-updateflag = 'U'.
wa_schedule_linesx-req_qty = 'X'.
append wa_schedule_linesx to lt_schedule_linesx.
clear wa_schedule_linesx. 

Regards,

Swarna Munukoti

Read only

0 Likes
684

Hi Swarna,

{ wa_schedule_linesx-itm_number = wa_vbap-posnr.

wa_schedule_linesx-sched_line = c_scheduleline.

wa_schedule_linesx-updateflag = c_update.

wa_schedule_linesx-req_qty = c_x.}

I have already checked it.. but still its order quantity is zero.

One more thing I am still not able to add code in tags ... could plz explain though i checked moderator's way to do so..

thanks

Mohinder

Edited by: Mohinder Singh Chauhan on Dec 9, 2009 5:53 AM

Read only

Former Member
0 Likes
684

Hi ,

The issue is resolved.

thanks for replies..

I checked schedule line item_catergory and line item number..

Regards

Mohinder Singh chauhan