2015 Jun 03 9:29 AM
Hi experts,
I want to get quotation conditions from webservice. So, i used below code;
VBELN = 0020000267
Already exist one item in quotation document. I will add two condition for this item. I filled quotation condition parameters like below;
LOOP AT lt_cond.
READ TABLE lt_konv INTO ls_konv WITH KEY kposn = lt_cond-posnr
kschl = lt_cond-kschl.
PERFORM conversion_input_unit USING lt_cond-kmein
CHANGING lt_cond-kmein.
IF ls_konv IS NOT INITIAL. "if already exist, updateflag EQ U
lt_quotation_conditions_in-itm_number = ls_konv-kposn.
lt_quotation_conditions_in-cond_st_no = ls_konv-stunr.
lt_quotation_conditions_in-cond_count = ls_konv-zaehk.
lt_quotation_conditions_in-cond_type = lt_cond-kschl.
lt_quotation_conditions_in-cond_value = lt_cond-kbetr.
lt_quotation_conditions_in-currency = lt_cond-waers.
lt_quotation_conditions_in-cond_p_unt = lt_cond-kpein.
lt_quotation_conditions_in-cond_unit = lt_cond-kmein.
lt_quotation_conditions_in-cond_updat = 'X'.
lt_quotation_conditions_inx-updateflag = 'U'.
lt_quotation_conditions_inx-itm_number = ls_konv-kposn.
lt_quotation_conditions_inx-cond_st_no = ls_konv-stunr.
lt_quotation_conditions_inx-cond_count = ls_konv-zaehk.
lt_quotation_conditions_inx-cond_type = lt_cond-kschl.
lt_quotation_conditions_inx-cond_value = 'X'.
lt_quotation_conditions_inx-currency = 'X'.
lt_quotation_conditions_inx-cond_p_unt = 'X'.
lt_quotation_conditions_inx-cond_unit = 'X'.
ELSE.
lt_quotation_conditions_in-itm_number = lt_cond-posnr.
lt_quotation_conditions_in-cond_type = lt_cond-kschl.
lt_quotation_conditions_in-cond_value = lt_cond-kbetr.
lt_quotation_conditions_in-currency = lt_cond-waers.
lt_quotation_conditions_in-cond_p_unt = lt_cond-kpein.
lt_quotation_conditions_in-cond_unit = lt_cond-kmein.
lt_quotation_conditions_in-cond_updat = 'X'.
lt_quotation_conditions_inx-updateflag = 'I'.
lt_quotation_conditions_inx-itm_number = lt_cond-posnr.
ENDIF.
APPEND : lt_quotation_conditions_in,lt_quotation_conditions_inx.
CLEAR : lt_cond,ls_konv.
ENDLOOP.
CALL FUNCTION 'BAPI_CUSTOMERQUOTATION_CHANGE'
EXPORTING
salesdocument = i_vbeln
quotation_header_in = ls_quotation_header_in
quotation_header_inx = ls_quotation_header_inx
int_number_assignment = 'X'
TABLES
return = lt_return
quotation_item_in = lt_quotation_items_in
quotation_item_inx = lt_quotation_items_inx
conditions_in = lt_quotation_conditions_in
conditions_inx = lt_quotation_conditions_inx
schedule_lines = lt_quotation_schedules_in
schedule_linesx = lt_quotation_schedules_inx.
RESULT
Bapi has created two item in quotatin document and added all condition last item.
How can i solve it?
Thanks for reply.
Ömer Faruk KAYA
2015 Jun 03 10:16 AM
Hi,
Did you pass the update parameter as 'U' in the lt_quotation_items_inx and passed all the parameters as 'X' in lt_quotation_conditions_inx. Also check the data in the schedule lines table.
Hope this helps.
2015 Jun 03 10:31 AM
Hi,
Yes, i passed updatefilag as U like below code;
lt_quotation_items_inx-updateflag = 'U'.
lt_quotation_items_inx-itm_number = lt_item-posnr.
lt_quotation_items_inx-material = 'X'.
lt_quotation_items_inx-target_qty = 'X'.
lt_quotation_items_inx-target_qu = 'X'.
lt_quotation_schedules_inx-updateflag = 'U'.
lt_quotation_schedules_inx-itm_number = lt_item-posnr.
lt_quotation_schedules_inx-sched_line = 1.
lt_quotation_schedules_inx-req_qty = 'X'.
2015 Jun 03 11:09 AM
2015 Jun 03 12:54 PM
Hi Omer Faruk,
That is not the correct answer, replicate your quality system configuration and check in your dev.