‎2011 Mar 14 9:04 PM
How can I modify the item net price? Please, I really need to modifiy it but it always contain the same...
‎2011 Mar 25 9:49 PM
‎2011 Mar 26 4:37 AM
See the following EXAMPLE:
DATA:i_bapi_view LIKE order_view.
DATA:sales_documents LIKE sales_key OCCURS 0 WITH HEADER LINE.
*ORDER_OUT
DATA:order_items_out LIKE bapisdit OCCURS 0 WITH HEADER LINE.
DATA:order_headers_out LIKE bapisdhd OCCURS 0 WITH HEADER LINE.
DATA:order_header_inx LIKE bapisdh1x.
***ORDER_IN
DATA:order_item_in LIKE bapisditm OCCURS 0 WITH HEADER LINE.
DATA:order_header_in LIKE bapisdh1 OCCURS 0 WITH HEADER LINE.
DATA:order_item_inx LIKE bapisditmx OCCURS 0 WITH HEADER LINE.
DATA:schedule_lines LIKE bapischdl OCCURS 0 WITH HEADER LINE.
DATA:schedule_linesx LIKE bapischdlx OCCURS 0 WITH HEADER LINE.
DATA: i_hdr TYPE bapisdh1.
DATA: TCONDSX LIKE BAPICONDX OCCURS 0 WITH HEADER LINE.
DATA: COND_ch LIKE BAPICOND OCCURS 0 WITH HEADER LINE.
DATA: itab_item LIKE bapisditem OCCURS 0 WITH HEADER LINE.
DATA: itab_ch LIKE itab_item OCCURS 0 WITH HEADER LINE.
DATA: s_order_header_in LIKE bapisdh1.
DATA: s_order_header_inx LIKE bapisdh1x.
DATA: BEGIN OF i_order_item_in OCCURS 0.
INCLUDE STRUCTURE bapisditm.
DATA: END OF i_order_item_in.
DATA: BEGIN OF i_order_item_inx OCCURS 0.
INCLUDE STRUCTURE bapisditmx.
DATA: END OF i_order_item_inx.
DATA: BEGIN OF it_return OCCURS 0.
INCLUDE STRUCTURE bapiret2.
DATA: END OF it_return.
DATA: BEGIN OF i_sched OCCURS 10.
INCLUDE STRUCTURE bapischdl.
DATA: END OF i_sched.
DATA: BEGIN OF i_schedx OCCURS 10.
INCLUDE STRUCTURE bapischdlx.
DATA: END OF i_schedx.
DATA : zmsg(50) TYPE c.
DATA : order_contracts_out LIKE bapisdcntr OCCURS 0 WITH HEADER LINE.
DATA : order_billingplans_out LIKE bapisdbpl OCCURS 0 WITH HEADER LINE.
DATA : order_billingdates_out LIKE bapisdbpld OCCURS 0 WITH HEADER LINE.
DATA : order_partners_out LIKE bapisdpart OCCURS 0 WITH HEADER LINE,
order_conditions_out LIKE bapisdcond OCCURS 0 WITH HEADER LINE,
order_cond_head LIKE bapicondhd OCCURS 0 WITH HEADER LINE,
order_cond_item LIKE bapicondit OCCURS 0 WITH HEADER LINE,
order_cond_qty_scale LIKE bapicondqs OCCURS 0 WITH HEADER LINE,
order_cond_val_scale LIKE bapicondvs OCCURS 0 WITH HEADER LINE.
**condition data
DATA logic_switch LIKE bapisdls.
DATA: ls_order_header_x TYPE BAPISDHD1X,
ls_cond TYPE BAPICOND,
ls_cond_x TYPE BAPICONDX,
lt_cond TYPE TABLE OF BAPICOND,
lt_cond_x TYPE TABLE OF BAPICONDX,
lt_return TYPE TABLE OF BAPIRET2.
Parameters
SELECTION-SCREEN : BEGIN OF BLOCK order WITH FRAME TITLE text-001.
SELECTION-SCREEN SKIP.
PARAMETERS: p_vbeln TYPE BAPIVBELN-VBELN OBLIGATORY,
pval TYPE vbap-bwtar .
SELECTION-SCREEN : END OF BLOCK order.
order_header_in-sd_doc_cat = 'C'.
order_header_inx-updateflag = 'U'.
i_bapi_view-header = 'X'.
i_bapi_view-item = 'X'.
i_bapi_view-partner = 'X'.
i_bapi_view-contract = 'X'.
i_bapi_view-sdcond = 'X'.
i_bapi_view-sdcond_add = 'X'.
i_bapi_view-billplan = 'X'.
i_bapi_view-configure = 'X'.
sales_documents-vbeln = p_vbeln.
APPEND sales_documents.
‎2011 Mar 26 4:49 AM
Continue...
CALL FUNCTION 'BAPISDORDER_GETDETAILEDLIST'
EXPORTING
i_bapi_view = i_bapi_view
TABLES
sales_documents = sales_documents
order_headers_out = order_headers_out
order_items_out = order_items_out
order_contracts_out = order_contracts_out
order_billingplans_out = order_billingplans_out
order_billingdates_out = order_billingdates_out
order_partners_out = order_partners_out
order_conditions_out = order_conditions_out.
LOOP AT order_items_out .
MOVE-CORRESPONDING order_items_out TO order_item_in.
order_item_in-NET_VALUE = 'ADD NEW UR NET VALUE'l.
APPEND order_item_in.
ENDLOOP.
LOOP AT order_item_in .
MOVE-CORRESPONDING order_item_in TO itab_ch.
APPEND itab_ch.
ENDLOOP.
LOOP AT order_conditions_out.
MOVE-CORRESPONDING order_conditions_out TONET_VALUE.
if order_conditions_out-COND_TYPE = 'ZP00'.
COND_ch-COND_VALUE = '120'.
APPEND COND_CH.
ENDIF.
ENDLOOP.
loop at cond_ch.
ls_order_header_x-updateflag = 'U'.
ls_cond-itm_number = cond_ch-itm_number.
ls_cond-cond_type = cond_ch-cond_type.
ls_cond-cond_value = cond_ch-cond_value.
ls_cond-currency = 'INR'.
ls_cond_x-itm_number = cond_ch-itm_number.
ls_cond_x-cond_type = cond_ch-cond_type.
ls_cond_X-cond_value = 'X'.
ls_cond_x-currency = 'X'.
ls_cond_X-updateflag = 'U'.
APPEND ls_cond TO lt_cond.
APPEND ls_cond_x TO lt_cond_x.
endloop.
logic_switch-cond_handl = 'X'.
CALL FUNCTION 'SD_SALESDOCUMENT_CHANGE'
EXPORTING
SALESDOCUMENT = p_vbeln
* ORDER_HEADER_IN =
order_header_inx = ls_order_header_x
LOGIC_SWITCH = logic_switch
tables
return = lt_return
CONDITIONS_IN = lt_cond
CONDITIONS_INX = lt_cond_x
.
BREAK DEVELOPER.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.