Sunteți pe pagina 1din 1

To fulfill the requirement#1

When populating the sales Order line data in OE_ORDER_PUB.PROCESS_ORDER API , po


pulate the adjustment records as shown blow.
l_line_tbl oe_order_pub.line_tbl_type;--Price Adjustment record
Make sure you populate the
l_line_price_att_tbl_out(l_line_items) := OE_ORDER_PUB.G_MISS_LINE_PRICE_ATT_REC
;
l_adj_tbl(l_line_items) := OE_ORDER_PUB.G_MISS_LINE_ADJ_REC;
l_adj_tbl(l_line_items).list_header_id := l_Modifier_id
l_adj_tbl(l_line_items).list_line_id := l_Modifier_line_id
l_adj_tbl(l_line_items).automatic_flag := 'Y';
l_adj_tbl(l_line_items).list_line_type_code := 'DIS';
l_adj_tbl(l_line_items).arithmetic_operator := 'AMT';-- l_adj_tbl(l_lin
e_items).operand := ll_line_list_price l_adj_tbl(l_line_items).operatio
n := oe_globals.g_opr_create;
l_adj_tbl(l_line_items).line_index := l_line_items;
l_adj_tbl(l_line_items).applied_flag := 'Y'; l_adj_tbl(l_line_items).up
dated_flag := 'Y';
l_adj_tbl(l_line_items).change_reason_code := 'MANUAL';
l_adj_tbl(l_line_items).change_reason_text := 'Manually applied adjustments';
Please make sure that while populating the following field
l_line_tbl(l_line_items).unit_list_price:= l_line_list_price;
l_line_tbl(l_line_items).unit_selling_price:= l_line_quote_price;
Requirement #2
Since requirement is to allow user to manually change price by applying Manual M
odifier , add the below line of code in Process Order API.
l_line_tbl(l_line_items).calculate_price_flag := 'P';
Above line indicate that calculate Price flag will be Partial Price . With calculat
e Price = partial price ,user can change the price .
Requirement #3
Once the calculate price is partial price and unit selling rice is already populat
ed, selecting ACTION >Process Order/Pricess line will not modify price or will n
ot apply another Modifier.

S-ar putea să vă placă și