DBA Data[Home] [Help]

APPS.QP_CALCULATE_PRICE_PUB dependencies on QP_PREQ_GRP

Line 24: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

20: , p_modifier_level_code VARCHAR2)
21: RETURN NUMBER IS
22: x_lumpsum_qty NUMBER;
23: BEGIN
24: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
25: IF l_debug = FND_API.G_TRUE THEN
26: QP_PREQ_GRP.engine_debug('In Get_Lumpsum_Qty ..., QPXPCLPB.pls');
27: QP_PREQ_GRP.engine_debug('line_index '|| p_line_index
28: ||' line_dtl_index '|| p_line_detail_index

Line 26: QP_PREQ_GRP.engine_debug('In Get_Lumpsum_Qty ..., QPXPCLPB.pls');

22: x_lumpsum_qty NUMBER;
23: BEGIN
24: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
25: IF l_debug = FND_API.G_TRUE THEN
26: QP_PREQ_GRP.engine_debug('In Get_Lumpsum_Qty ..., QPXPCLPB.pls');
27: QP_PREQ_GRP.engine_debug('line_index '|| p_line_index
28: ||' line_dtl_index '|| p_line_detail_index
29: ||' level '|| p_modifier_level_code);
30: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index) THEN

Line 27: QP_PREQ_GRP.engine_debug('line_index '|| p_line_index

23: BEGIN
24: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
25: IF l_debug = FND_API.G_TRUE THEN
26: QP_PREQ_GRP.engine_debug('In Get_Lumpsum_Qty ..., QPXPCLPB.pls');
27: QP_PREQ_GRP.engine_debug('line_index '|| p_line_index
28: ||' line_dtl_index '|| p_line_detail_index
29: ||' level '|| p_modifier_level_code);
30: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index) THEN
31: QP_PREQ_GRP.engine_debug('line_index qty '

Line 30: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index) THEN

26: QP_PREQ_GRP.engine_debug('In Get_Lumpsum_Qty ..., QPXPCLPB.pls');
27: QP_PREQ_GRP.engine_debug('line_index '|| p_line_index
28: ||' line_dtl_index '|| p_line_detail_index
29: ||' level '|| p_modifier_level_code);
30: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index) THEN
31: QP_PREQ_GRP.engine_debug('line_index qty '
32: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));
33: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
34: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_detail_index) THEN

Line 31: QP_PREQ_GRP.engine_debug('line_index qty '

27: QP_PREQ_GRP.engine_debug('line_index '|| p_line_index
28: ||' line_dtl_index '|| p_line_detail_index
29: ||' level '|| p_modifier_level_code);
30: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index) THEN
31: QP_PREQ_GRP.engine_debug('line_index qty '
32: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));
33: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
34: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_detail_index) THEN
35: QP_PREQ_GRP.engine_debug('line_detail_index qty '

Line 32: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));

28: ||' line_dtl_index '|| p_line_detail_index
29: ||' level '|| p_modifier_level_code);
30: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index) THEN
31: QP_PREQ_GRP.engine_debug('line_index qty '
32: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));
33: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
34: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_detail_index) THEN
35: QP_PREQ_GRP.engine_debug('line_detail_index qty '
36: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_detail_index));

Line 33: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl

29: ||' level '|| p_modifier_level_code);
30: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index) THEN
31: QP_PREQ_GRP.engine_debug('line_index qty '
32: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));
33: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
34: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_detail_index) THEN
35: QP_PREQ_GRP.engine_debug('line_detail_index qty '
36: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_detail_index));
37: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl

Line 34: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_detail_index) THEN

30: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index) THEN
31: QP_PREQ_GRP.engine_debug('line_index qty '
32: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));
33: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
34: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_detail_index) THEN
35: QP_PREQ_GRP.engine_debug('line_detail_index qty '
36: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_detail_index));
37: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
38: END IF;

Line 35: QP_PREQ_GRP.engine_debug('line_detail_index qty '

31: QP_PREQ_GRP.engine_debug('line_index qty '
32: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));
33: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
34: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_detail_index) THEN
35: QP_PREQ_GRP.engine_debug('line_detail_index qty '
36: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_detail_index));
37: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
38: END IF;
39: --4900095

Line 36: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_detail_index));

32: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));
33: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
34: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_detail_index) THEN
35: QP_PREQ_GRP.engine_debug('line_detail_index qty '
36: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_detail_index));
37: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
38: END IF;
39: --4900095
40: IF (QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index)

Line 37: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl

33: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
34: IF QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_detail_index) THEN
35: QP_PREQ_GRP.engine_debug('line_detail_index qty '
36: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_detail_index));
37: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
38: END IF;
39: --4900095
40: IF (QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index)
41: OR QP_PREQ_GRP.G_service_ldet_qty_tbl.EXISTS(p_line_detail_index)) THEN

Line 40: IF (QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index)

36: || QP_PREQ_GRP.G_service_line_qty_tbl(p_line_detail_index));
37: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
38: END IF;
39: --4900095
40: IF (QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index)
41: OR QP_PREQ_GRP.G_service_ldet_qty_tbl.EXISTS(p_line_detail_index)) THEN
42: IF p_modifier_level_code = QP_PREQ_GRP.G_LINE_GROUP THEN
43: x_lumpsum_qty :=
44: nvl(QP_PREQ_PUB.G_Service_pbh_lg_amt_qty(p_line_detail_index),

Line 41: OR QP_PREQ_GRP.G_service_ldet_qty_tbl.EXISTS(p_line_detail_index)) THEN

37: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
38: END IF;
39: --4900095
40: IF (QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index)
41: OR QP_PREQ_GRP.G_service_ldet_qty_tbl.EXISTS(p_line_detail_index)) THEN
42: IF p_modifier_level_code = QP_PREQ_GRP.G_LINE_GROUP THEN
43: x_lumpsum_qty :=
44: nvl(QP_PREQ_PUB.G_Service_pbh_lg_amt_qty(p_line_detail_index),
45: QP_PREQ_GRP.G_service_ldet_qty_tbl(p_line_detail_index));

Line 42: IF p_modifier_level_code = QP_PREQ_GRP.G_LINE_GROUP THEN

38: END IF;
39: --4900095
40: IF (QP_PREQ_GRP.G_service_line_qty_tbl.EXISTS(p_line_index)
41: OR QP_PREQ_GRP.G_service_ldet_qty_tbl.EXISTS(p_line_detail_index)) THEN
42: IF p_modifier_level_code = QP_PREQ_GRP.G_LINE_GROUP THEN
43: x_lumpsum_qty :=
44: nvl(QP_PREQ_PUB.G_Service_pbh_lg_amt_qty(p_line_detail_index),
45: QP_PREQ_GRP.G_service_ldet_qty_tbl(p_line_detail_index));
46: ELSIF p_modifier_level_code = QP_PREQ_GRP.G_LINE_LEVEL THEN

Line 45: QP_PREQ_GRP.G_service_ldet_qty_tbl(p_line_detail_index));

41: OR QP_PREQ_GRP.G_service_ldet_qty_tbl.EXISTS(p_line_detail_index)) THEN
42: IF p_modifier_level_code = QP_PREQ_GRP.G_LINE_GROUP THEN
43: x_lumpsum_qty :=
44: nvl(QP_PREQ_PUB.G_Service_pbh_lg_amt_qty(p_line_detail_index),
45: QP_PREQ_GRP.G_service_ldet_qty_tbl(p_line_detail_index));
46: ELSIF p_modifier_level_code = QP_PREQ_GRP.G_LINE_LEVEL THEN
47: x_lumpsum_qty :=
48: QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index);
49: END IF; --p_modifier_level_code

Line 46: ELSIF p_modifier_level_code = QP_PREQ_GRP.G_LINE_LEVEL THEN

42: IF p_modifier_level_code = QP_PREQ_GRP.G_LINE_GROUP THEN
43: x_lumpsum_qty :=
44: nvl(QP_PREQ_PUB.G_Service_pbh_lg_amt_qty(p_line_detail_index),
45: QP_PREQ_GRP.G_service_ldet_qty_tbl(p_line_detail_index));
46: ELSIF p_modifier_level_code = QP_PREQ_GRP.G_LINE_LEVEL THEN
47: x_lumpsum_qty :=
48: QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index);
49: END IF; --p_modifier_level_code
50: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl

Line 48: QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index);

44: nvl(QP_PREQ_PUB.G_Service_pbh_lg_amt_qty(p_line_detail_index),
45: QP_PREQ_GRP.G_service_ldet_qty_tbl(p_line_detail_index));
46: ELSIF p_modifier_level_code = QP_PREQ_GRP.G_LINE_LEVEL THEN
47: x_lumpsum_qty :=
48: QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index);
49: END IF; --p_modifier_level_code
50: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
51:
52: IF l_debug = FND_API.G_TRUE THEN

Line 50: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl

46: ELSIF p_modifier_level_code = QP_PREQ_GRP.G_LINE_LEVEL THEN
47: x_lumpsum_qty :=
48: QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index);
49: END IF; --p_modifier_level_code
50: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
51:
52: IF l_debug = FND_API.G_TRUE THEN
53: QP_PREQ_GRP.engine_debug('Get_Lumpsum_Qty '|| x_lumpsum_qty);
54: END IF;

Line 53: QP_PREQ_GRP.engine_debug('Get_Lumpsum_Qty '|| x_lumpsum_qty);

49: END IF; --p_modifier_level_code
50: END IF; --QP_PREQ_GRP.G_service_line_qty_tbl
51:
52: IF l_debug = FND_API.G_TRUE THEN
53: QP_PREQ_GRP.engine_debug('Get_Lumpsum_Qty '|| x_lumpsum_qty);
54: END IF;
55:
56: RETURN x_lumpsum_qty;
57: EXCEPTION

Line 80: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

76: v_routine_name CONSTANT VARCHAR2(240) := 'Routine:QP_Calculate_Price_PUB.Calculate_List_Price';
77: v_price_round_options VARCHAR2(30) := NULL; --shu, new rounding
78:
79: BEGIN
80: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
81: x_return_status := FND_API.G_RET_STS_SUCCESS;
82: IF l_debug = FND_API.G_TRUE THEN
83: QP_PREQ_GRP.engine_debug('In Calculate_List_Price ..., QPXPCLPB.pls');
84: END IF;

Line 83: QP_PREQ_GRP.engine_debug('In Calculate_List_Price ..., QPXPCLPB.pls');

79: BEGIN
80: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
81: x_return_status := FND_API.G_RET_STS_SUCCESS;
82: IF l_debug = FND_API.G_TRUE THEN
83: QP_PREQ_GRP.engine_debug('In Calculate_List_Price ..., QPXPCLPB.pls');
84: END IF;
85: IF (p_operand_calc_code = QP_PREQ_GRP.G_UNIT_PRICE) THEN
86: x_list_price := p_operand_value * p_service_duration;
87: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_BLOCK_PRICE) THEN -- block pricing

Line 85: IF (p_operand_calc_code = QP_PREQ_GRP.G_UNIT_PRICE) THEN

81: x_return_status := FND_API.G_RET_STS_SUCCESS;
82: IF l_debug = FND_API.G_TRUE THEN
83: QP_PREQ_GRP.engine_debug('In Calculate_List_Price ..., QPXPCLPB.pls');
84: END IF;
85: IF (p_operand_calc_code = QP_PREQ_GRP.G_UNIT_PRICE) THEN
86: x_list_price := p_operand_value * p_service_duration;
87: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_BLOCK_PRICE) THEN -- block pricing
88: IF (p_request_qty = 0) THEN
89: x_list_price := 0;

Line 87: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_BLOCK_PRICE) THEN -- block pricing

83: QP_PREQ_GRP.engine_debug('In Calculate_List_Price ..., QPXPCLPB.pls');
84: END IF;
85: IF (p_operand_calc_code = QP_PREQ_GRP.G_UNIT_PRICE) THEN
86: x_list_price := p_operand_value * p_service_duration;
87: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_BLOCK_PRICE) THEN -- block pricing
88: IF (p_request_qty = 0) THEN
89: x_list_price := 0;
90: ELSE
91: IF l_debug = FND_API.G_TRUE THEN

Line 92: qp_preq_grp.engine_debug('In Calculate_List_Price #1');

88: IF (p_request_qty = 0) THEN
89: x_list_price := 0;
90: ELSE
91: IF l_debug = FND_API.G_TRUE THEN
92: qp_preq_grp.engine_debug('In Calculate_List_Price #1');
93: END IF;
94: x_list_price := (p_operand_value / p_request_qty);
95: IF l_debug = FND_API.G_TRUE THEN
96: qp_preq_grp.engine_debug('Request Qty: ' || p_request_qty);

Line 96: qp_preq_grp.engine_debug('Request Qty: ' || p_request_qty);

92: qp_preq_grp.engine_debug('In Calculate_List_Price #1');
93: END IF;
94: x_list_price := (p_operand_value / p_request_qty);
95: IF l_debug = FND_API.G_TRUE THEN
96: qp_preq_grp.engine_debug('Request Qty: ' || p_request_qty);
97: qp_preq_grp.engine_debug('List Price: ' || x_list_price);
98: END IF;
99: END IF;
100: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_PRICE) THEN

Line 97: qp_preq_grp.engine_debug('List Price: ' || x_list_price);

93: END IF;
94: x_list_price := (p_operand_value / p_request_qty);
95: IF l_debug = FND_API.G_TRUE THEN
96: qp_preq_grp.engine_debug('Request Qty: ' || p_request_qty);
97: qp_preq_grp.engine_debug('List Price: ' || x_list_price);
98: END IF;
99: END IF;
100: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_PRICE) THEN
101: x_list_price := (p_operand_value / 100) * p_rltd_item_price * p_service_duration;

Line 100: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_PRICE) THEN

96: qp_preq_grp.engine_debug('Request Qty: ' || p_request_qty);
97: qp_preq_grp.engine_debug('List Price: ' || x_list_price);
98: END IF;
99: END IF;
100: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_PRICE) THEN
101: x_list_price := (p_operand_value / 100) * p_rltd_item_price * p_service_duration;
102: x_percent_price := p_operand_value; -- service duration is not applicable here.Discussion with Alison
103: END IF;
104:

Line 108: QP_PREQ_GRP.engine_debug('In procedure Calculate_List_Price ...');

104:
105: -- ravi passed (-1)*request_line.rounding_factor when calling this procedure, therefore needs to *(-1)
106: -- to print the original rounding_factor
107: IF l_debug = FND_API.G_TRUE THEN
108: QP_PREQ_GRP.engine_debug('In procedure Calculate_List_Price ...');
109: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
110: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor
111:
112: END IF;

Line 109: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629

105: -- ravi passed (-1)*request_line.rounding_factor when calling this procedure, therefore needs to *(-1)
106: -- to print the original rounding_factor
107: IF l_debug = FND_API.G_TRUE THEN
108: QP_PREQ_GRP.engine_debug('In procedure Calculate_List_Price ...');
109: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
110: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor
111:
112: END IF;
113: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN

Line 110: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor

106: -- to print the original rounding_factor
107: IF l_debug = FND_API.G_TRUE THEN
108: QP_PREQ_GRP.engine_debug('In procedure Calculate_List_Price ...');
109: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
110: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor
111:
112: END IF;
113: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN
114:

Line 113: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN

109: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
110: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor
111:
112: END IF;
113: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN
114:
115: x_list_price := ROUND(x_list_price, p_rounding_factor);
116: x_percent_price := ROUND(x_percent_price, p_rounding_factor);
117:

Line 118: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile

114:
115: x_list_price := ROUND(x_list_price, p_rounding_factor);
116: x_percent_price := ROUND(x_percent_price, p_rounding_factor);
117:
118: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile
119: IF l_debug = FND_API.G_TRUE THEN
120: QP_PREQ_GRP.engine_debug('are we here 2?');
121: END IF;
122: v_price_round_options := nvl(FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'), QP_Calculate_Price_PUB.G_NO_ROUND); --shu, new rounding

Line 120: QP_PREQ_GRP.engine_debug('are we here 2?');

116: x_percent_price := ROUND(x_percent_price, p_rounding_factor);
117:
118: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile
119: IF l_debug = FND_API.G_TRUE THEN
120: QP_PREQ_GRP.engine_debug('are we here 2?');
121: END IF;
122: v_price_round_options := nvl(FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'), QP_Calculate_Price_PUB.G_NO_ROUND); --shu, new rounding
123: IF l_debug = FND_API.G_TRUE THEN
124: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );

Line 124: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );

120: QP_PREQ_GRP.engine_debug('are we here 2?');
121: END IF;
122: v_price_round_options := nvl(FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'), QP_Calculate_Price_PUB.G_NO_ROUND); --shu, new rounding
123: IF l_debug = FND_API.G_TRUE THEN
124: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );
125: END IF;
126: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN
127: x_list_price := ROUND(x_list_price, p_rounding_factor);
128: x_percent_price := ROUND(x_percent_price, p_rounding_factor);

Line 133: QP_PREQ_GRP.engine_debug('x_list_price' || x_list_price);

129: END IF;
130: END IF;
131:
132: IF l_debug = FND_API.G_TRUE THEN
133: QP_PREQ_GRP.engine_debug('x_list_price' || x_list_price);
134: END IF;
135: -- end shu new rounding
136: EXCEPTION
137: WHEN OTHERS THEN

Line 139: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);

135: -- end shu new rounding
136: EXCEPTION
137: WHEN OTHERS THEN
138: IF l_debug = FND_API.G_TRUE THEN
139: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);
140: END IF;
141: x_return_status := FND_API.G_RET_STS_ERROR;
142: x_return_status_txt := v_routine_name || ' ' || SQLERRM;
143: END Calculate_List_Price;

Line 165: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

161: v_routine_name CONSTANT VARCHAR2(240) := 'Routine:QP_Calculate_Price_PUB.Calculate_List_Price_PVT';
162: v_price_round_options VARCHAR2(30) := NULL; --shu, new rounding
163:
164: BEGIN
165: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
166: x_return_status := FND_API.G_RET_STS_SUCCESS;
167: IF l_debug = FND_API.G_TRUE THEN
168: QP_PREQ_GRP.engine_debug('In Calculate_List_Price_PVT..., QPXPCLPB.pls');
169: END IF;

Line 168: QP_PREQ_GRP.engine_debug('In Calculate_List_Price_PVT..., QPXPCLPB.pls');

164: BEGIN
165: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
166: x_return_status := FND_API.G_RET_STS_SUCCESS;
167: IF l_debug = FND_API.G_TRUE THEN
168: QP_PREQ_GRP.engine_debug('In Calculate_List_Price_PVT..., QPXPCLPB.pls');
169: END IF;
170: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_UNIT_PRICE, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN
171: x_list_price := p_operand_value * p_service_duration;
172: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_BLOCK_PRICE) THEN -- block pricing

Line 170: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_UNIT_PRICE, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN

166: x_return_status := FND_API.G_RET_STS_SUCCESS;
167: IF l_debug = FND_API.G_TRUE THEN
168: QP_PREQ_GRP.engine_debug('In Calculate_List_Price_PVT..., QPXPCLPB.pls');
169: END IF;
170: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_UNIT_PRICE, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN
171: x_list_price := p_operand_value * p_service_duration;
172: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_BLOCK_PRICE) THEN -- block pricing
173: IF (p_request_qty = 0) THEN
174: x_list_price := 0;

Line 172: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_BLOCK_PRICE) THEN -- block pricing

168: QP_PREQ_GRP.engine_debug('In Calculate_List_Price_PVT..., QPXPCLPB.pls');
169: END IF;
170: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_UNIT_PRICE, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN
171: x_list_price := p_operand_value * p_service_duration;
172: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_BLOCK_PRICE) THEN -- block pricing
173: IF (p_request_qty = 0) THEN
174: x_list_price := 0;
175: x_extended_price := p_operand_value;
176: ELSE

Line 179: qp_preq_grp.engine_debug('In Calculate_List_Price_PVT #1');

175: x_extended_price := p_operand_value;
176: ELSE
177: IF (p_recurring_value IS NULL) THEN
178: IF l_debug = FND_API.G_TRUE THEN
179: qp_preq_grp.engine_debug('In Calculate_List_Price_PVT #1');
180: END IF;
181: x_list_price := (p_operand_value / p_request_qty);
182: x_extended_price := p_operand_value;
183: IF l_debug = FND_API.G_TRUE THEN

Line 184: qp_preq_grp.engine_debug('Extended Price #1 : ' || x_extended_price);

180: END IF;
181: x_list_price := (p_operand_value / p_request_qty);
182: x_extended_price := p_operand_value;
183: IF l_debug = FND_API.G_TRUE THEN
184: qp_preq_grp.engine_debug('Extended Price #1 : ' || x_extended_price);
185: qp_preq_grp.engine_debug('Request Qty: ' || p_request_qty);
186: qp_preq_grp.engine_debug('List Price: ' || x_list_price);
187: END IF;
188: ELSE

Line 185: qp_preq_grp.engine_debug('Request Qty: ' || p_request_qty);

181: x_list_price := (p_operand_value / p_request_qty);
182: x_extended_price := p_operand_value;
183: IF l_debug = FND_API.G_TRUE THEN
184: qp_preq_grp.engine_debug('Extended Price #1 : ' || x_extended_price);
185: qp_preq_grp.engine_debug('Request Qty: ' || p_request_qty);
186: qp_preq_grp.engine_debug('List Price: ' || x_list_price);
187: END IF;
188: ELSE
189: IF l_debug = FND_API.G_TRUE THEN

Line 186: qp_preq_grp.engine_debug('List Price: ' || x_list_price);

182: x_extended_price := p_operand_value;
183: IF l_debug = FND_API.G_TRUE THEN
184: qp_preq_grp.engine_debug('Extended Price #1 : ' || x_extended_price);
185: qp_preq_grp.engine_debug('Request Qty: ' || p_request_qty);
186: qp_preq_grp.engine_debug('List Price: ' || x_list_price);
187: END IF;
188: ELSE
189: IF l_debug = FND_API.G_TRUE THEN
190: qp_preq_grp.engine_debug('In Calculate_List_Price_PVT #2');

Line 190: qp_preq_grp.engine_debug('In Calculate_List_Price_PVT #2');

186: qp_preq_grp.engine_debug('List Price: ' || x_list_price);
187: END IF;
188: ELSE
189: IF l_debug = FND_API.G_TRUE THEN
190: qp_preq_grp.engine_debug('In Calculate_List_Price_PVT #2');
191: END IF;
192: x_list_price := p_operand_value / p_recurring_value;
193: x_extended_price := x_list_price * p_request_qty;
194: IF l_debug = FND_API.G_TRUE THEN

Line 195: qp_preq_grp.engine_debug('Extended Price #2: ' || x_extended_price);

191: END IF;
192: x_list_price := p_operand_value / p_recurring_value;
193: x_extended_price := x_list_price * p_request_qty;
194: IF l_debug = FND_API.G_TRUE THEN
195: qp_preq_grp.engine_debug('Extended Price #2: ' || x_extended_price);
196: END IF;
197: END IF;
198: END IF;
199: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_PRICE) THEN

Line 199: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_PRICE) THEN

195: qp_preq_grp.engine_debug('Extended Price #2: ' || x_extended_price);
196: END IF;
197: END IF;
198: END IF;
199: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_PRICE) THEN
200: x_list_price := (p_operand_value / 100) * p_rltd_item_price * p_service_duration;
201: x_percent_price := p_operand_value; -- service duration is not applicable here.Discussion with Alison
202: END IF;
203:

Line 207: QP_PREQ_GRP.engine_debug('In procedure Calculate_List_Price_PVT...');

203:
204: -- ravi passed (-1)*request_line.rounding_factor when calling this procedure, therefore needs to *(-1)
205: -- to print the original rounding_factor
206: IF l_debug = FND_API.G_TRUE THEN
207: QP_PREQ_GRP.engine_debug('In procedure Calculate_List_Price_PVT...');
208: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
209: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor
210:
211: END IF;

Line 208: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629

204: -- ravi passed (-1)*request_line.rounding_factor when calling this procedure, therefore needs to *(-1)
205: -- to print the original rounding_factor
206: IF l_debug = FND_API.G_TRUE THEN
207: QP_PREQ_GRP.engine_debug('In procedure Calculate_List_Price_PVT...');
208: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
209: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor
210:
211: END IF;
212: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN

Line 209: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor

205: -- to print the original rounding_factor
206: IF l_debug = FND_API.G_TRUE THEN
207: QP_PREQ_GRP.engine_debug('In procedure Calculate_List_Price_PVT...');
208: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
209: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor
210:
211: END IF;
212: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN
213:

Line 212: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN

208: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
209: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor
210:
211: END IF;
212: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN
213:
214: x_list_price := ROUND(x_list_price, p_rounding_factor);
215: x_percent_price := ROUND(x_percent_price, p_rounding_factor);
216:

Line 217: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile

213:
214: x_list_price := ROUND(x_list_price, p_rounding_factor);
215: x_percent_price := ROUND(x_percent_price, p_rounding_factor);
216:
217: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile
218:
219: v_price_round_options := nvl(FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'), QP_Calculate_Price_PUB.G_NO_ROUND); --shu, new rounding
220: IF l_debug = FND_API.G_TRUE THEN
221: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );

Line 221: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );

217: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile
218:
219: v_price_round_options := nvl(FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'), QP_Calculate_Price_PUB.G_NO_ROUND); --shu, new rounding
220: IF l_debug = FND_API.G_TRUE THEN
221: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );
222: END IF;
223:
224: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN
225: x_list_price := ROUND(x_list_price, p_rounding_factor);

Line 231: QP_PREQ_GRP.engine_debug('x_list_price' || x_list_price);

227: END IF;
228: END IF; -- end rounding stuff
229:
230: IF l_debug = FND_API.G_TRUE THEN
231: QP_PREQ_GRP.engine_debug('x_list_price' || x_list_price);
232: END IF;
233: -- end shu new rounding
234: EXCEPTION
235: WHEN OTHERS THEN

Line 237: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);

233: -- end shu new rounding
234: EXCEPTION
235: WHEN OTHERS THEN
236: IF l_debug = FND_API.G_TRUE THEN
237: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);
238: END IF;
239: x_return_status := FND_API.G_RET_STS_ERROR;
240: x_return_status_txt := v_routine_name || ' ' || SQLERRM;
241: END Calculate_List_Price_PVT;

Line 267: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

263: v_routine_name CONSTANT VARCHAR2(240) := 'Routine:QP_Calculate_Price_PUB.Calculate_Adjusted_Price';
264: v_price_round_options VARCHAR2(30) := NULL; --shu, new rounding
265:
266: BEGIN
267: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
268: IF l_debug = FND_API.G_TRUE THEN
269: QP_PREQ_GRP.engine_debug('In Calculate_Adjusted_Price...');
270: END IF;
271: v_price_round_options := FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'); --shu, new rounding

Line 269: QP_PREQ_GRP.engine_debug('In Calculate_Adjusted_Price...');

265:
266: BEGIN
267: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
268: IF l_debug = FND_API.G_TRUE THEN
269: QP_PREQ_GRP.engine_debug('In Calculate_Adjusted_Price...');
270: END IF;
271: v_price_round_options := FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'); --shu, new rounding
272: IF l_debug = FND_API.G_TRUE THEN
273: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );

Line 273: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );

269: QP_PREQ_GRP.engine_debug('In Calculate_Adjusted_Price...');
270: END IF;
271: v_price_round_options := FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'); --shu, new rounding
272: IF l_debug = FND_API.G_TRUE THEN
273: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );
274: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
275: END IF;
276: -- ravi passed (-1)*request_line.rounding_factor when calling this procedure, therefore needs to *(-1)
277: -- to print the original rounding_factor

Line 274: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629

270: END IF;
271: v_price_round_options := FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'); --shu, new rounding
272: IF l_debug = FND_API.G_TRUE THEN
273: QP_PREQ_GRP.engine_debug('selling_price_rounding_options: '|| v_price_round_options );
274: QP_PREQ_GRP.engine_debug('G_ROUNDING_FLAG: '|| QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, shu, 2457629
275: END IF;
276: -- ravi passed (-1)*request_line.rounding_factor when calling this procedure, therefore needs to *(-1)
277: -- to print the original rounding_factor
278: IF l_debug = FND_API.G_TRUE THEN

Line 279: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor

275: END IF;
276: -- ravi passed (-1)*request_line.rounding_factor when calling this procedure, therefore needs to *(-1)
277: -- to print the original rounding_factor
278: IF l_debug = FND_API.G_TRUE THEN
279: QP_PREQ_GRP.engine_debug('rounding_factor: '|| ( - 1) * p_rounding_factor); -- ravi passed (-1)*request_line.rounding_factor
280: END IF;
281:
282: x_return_status := FND_API.G_RET_STS_SUCCESS;
283: IF (p_old_pricing_sequence = p_new_pricing_sequence AND p_new_pricing_sequence IS NOT NULL) THEN

Line 285: QP_PREQ_GRP.engine_debug('I am in Calculate Adjusted Price');

281:
282: x_return_status := FND_API.G_RET_STS_SUCCESS;
283: IF (p_old_pricing_sequence = p_new_pricing_sequence AND p_new_pricing_sequence IS NOT NULL) THEN
284: IF l_debug = FND_API.G_TRUE THEN
285: QP_PREQ_GRP.engine_debug('I am in Calculate Adjusted Price');
286: END IF;
287:
288: -- G_BREAKUNIT_PRICE added for FTE breakunit
289: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_AMOUNT_DISCOUNT, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN

Line 289: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_AMOUNT_DISCOUNT, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN

285: QP_PREQ_GRP.engine_debug('I am in Calculate Adjusted Price');
286: END IF;
287:
288: -- G_BREAKUNIT_PRICE added for FTE breakunit
289: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_AMOUNT_DISCOUNT, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN
290:
291: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
292: x_adjusted_amount := - (p_operand_value);
293: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

Line 291: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

287:
288: -- G_BREAKUNIT_PRICE added for FTE breakunit
289: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_AMOUNT_DISCOUNT, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN
290:
291: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
292: x_adjusted_amount := - (p_operand_value);
293: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
294: x_discounted_price := p_discounted_price;
295: ELSE

Line 293: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

289: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_AMOUNT_DISCOUNT, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN
290:
291: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
292: x_adjusted_amount := - (p_operand_value);
293: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
294: x_discounted_price := p_discounted_price;
295: ELSE
296: x_discounted_price := p_discounted_price - p_operand_value;
297: END IF; -- end if p_accrual_flag

Line 299: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN

295: ELSE
296: x_discounted_price := p_discounted_price - p_operand_value;
297: END IF; -- end if p_accrual_flag
298:
299: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
300: x_adjusted_amount := p_operand_value;
301: x_discounted_price := p_discounted_price + p_operand_value;
302:
303: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN

Line 303: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN

299: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
300: x_adjusted_amount := p_operand_value;
301: x_discounted_price := p_discounted_price + p_operand_value;
302:
303: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN
304: x_discounted_price := p_discounted_price;
305: x_adjusted_amount := p_operand_value;
306: END IF; -- end if p_list_line_type
307:

Line 308: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT) THEN

304: x_discounted_price := p_discounted_price;
305: x_adjusted_amount := p_operand_value;
306: END IF; -- end if p_list_line_type
307:
308: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT) THEN
309:
310: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
311: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
312: x_discounted_price := p_discounted_price;

Line 310: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

306: END IF; -- end if p_list_line_type
307:
308: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT) THEN
309:
310: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
311: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
312: x_discounted_price := p_discounted_price;
313: x_adjusted_amount := - (abs(p_list_price) * (p_operand_value / 100));
314: ELSE

Line 311: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

307:
308: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT) THEN
309:
310: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
311: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
312: x_discounted_price := p_discounted_price;
313: x_adjusted_amount := - (abs(p_list_price) * (p_operand_value / 100));
314: ELSE
315: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

Line 315: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

311: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
312: x_discounted_price := p_discounted_price;
313: x_adjusted_amount := - (abs(p_list_price) * (p_operand_value / 100));
314: ELSE
315: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
316: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
317: x_discounted_price := p_discounted_price - ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
318: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
319: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 316: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding

312: x_discounted_price := p_discounted_price;
313: x_adjusted_amount := - (abs(p_list_price) * (p_operand_value / 100));
314: ELSE
315: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
316: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
317: x_discounted_price := p_discounted_price - ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
318: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
319: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
320: x_discounted_price := p_discounted_price - ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);

Line 318: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

314: ELSE
315: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
316: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
317: x_discounted_price := p_discounted_price - ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
318: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
319: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
320: x_discounted_price := p_discounted_price - ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
321: ELSE
322: x_discounted_price := p_discounted_price - (abs(p_list_price) * (p_operand_value/100)); --8521107

Line 324: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

320: x_discounted_price := p_discounted_price - ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
321: ELSE
322: x_discounted_price := p_discounted_price - (abs(p_list_price) * (p_operand_value/100)); --8521107
323: END IF;
324: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
325: x_discounted_price := p_discounted_price - (abs(p_list_price) * (p_operand_value / 100));
326: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
327:
328: x_adjusted_amount := - (abs(p_list_price) * (p_operand_value / 100));

Line 326: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG

322: x_discounted_price := p_discounted_price - (abs(p_list_price) * (p_operand_value/100)); --8521107
323: END IF;
324: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
325: x_discounted_price := p_discounted_price - (abs(p_list_price) * (p_operand_value / 100));
326: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
327:
328: x_adjusted_amount := - (abs(p_list_price) * (p_operand_value / 100));
329: END IF; -- end if p_accrual_flag
330:

Line 331: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN

327:
328: x_adjusted_amount := - (abs(p_list_price) * (p_operand_value / 100));
329: END IF; -- end if p_accrual_flag
330:
331: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
332:
333: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
334: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
335: x_discounted_price := p_discounted_price + ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);

Line 333: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

329: END IF; -- end if p_accrual_flag
330:
331: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
332:
333: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
334: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
335: x_discounted_price := p_discounted_price + ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
336: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
337: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 334: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding

330:
331: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
332:
333: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
334: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
335: x_discounted_price := p_discounted_price + ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
336: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
337: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
338: x_discounted_price := p_discounted_price + ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);

Line 336: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

332:
333: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
334: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
335: x_discounted_price := p_discounted_price + ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
336: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
337: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
338: x_discounted_price := p_discounted_price + ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
339: ELSE
340: x_discounted_price := p_discounted_price + (abs(p_list_price) * (p_operand_value/100)); --8521107

Line 342: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

338: x_discounted_price := p_discounted_price + ROUND((abs(p_list_price) * (p_operand_value / 100)), p_rounding_factor);
339: ELSE
340: x_discounted_price := p_discounted_price + (abs(p_list_price) * (p_operand_value/100)); --8521107
341: END IF;
342: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
343: x_discounted_price := p_discounted_price + (abs(p_list_price) * (p_operand_value / 100));
344: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
345:
346: x_adjusted_amount := abs(p_list_price) * (p_operand_value / 100);

Line 344: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG

340: x_discounted_price := p_discounted_price + (abs(p_list_price) * (p_operand_value/100)); --8521107
341: END IF;
342: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
343: x_discounted_price := p_discounted_price + (abs(p_list_price) * (p_operand_value / 100));
344: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
345:
346: x_adjusted_amount := abs(p_list_price) * (p_operand_value / 100);
347:
348: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN

Line 348: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN

344: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
345:
346: x_adjusted_amount := abs(p_list_price) * (p_operand_value / 100);
347:
348: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN
349: x_discounted_price := p_discounted_price;
350: x_adjusted_amount := abs(p_list_price) * (p_operand_value / 100);
351: END IF; -- end if p_list_line_type
352:

Line 353: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

349: x_discounted_price := p_discounted_price;
350: x_adjusted_amount := abs(p_list_price) * (p_operand_value / 100);
351: END IF; -- end if p_list_line_type
352:
353: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
354:
355: -- For NewPrice Calculation is same for Discount and Surcharge
356: IF (p_list_line_type IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE)) THEN
357: x_discounted_price := p_operand_value;

Line 356: IF (p_list_line_type IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE)) THEN

352:
353: ELSIF(p_operand_calc_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
354:
355: -- For NewPrice Calculation is same for Discount and Surcharge
356: IF (p_list_line_type IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE)) THEN
357: x_discounted_price := p_operand_value;
358: x_adjusted_amount := - (p_list_price - p_operand_value);
359: --fix bug 2353905
360: --Negative list price can get correct adjusted_amount

Line 363: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT) THEN

359: --fix bug 2353905
360: --Negative list price can get correct adjusted_amount
361: END IF;
362:
363: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT) THEN
364:
365: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
366:
367: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

Line 365: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

361: END IF;
362:
363: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT) THEN
364:
365: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
366:
367: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
368: x_discounted_price := p_discounted_price;
369: IF (p_request_qty <> 0) THEN -- ask ravi, how about null?

Line 367: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

363: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT) THEN
364:
365: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
366:
367: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
368: x_discounted_price := p_discounted_price;
369: IF (p_request_qty <> 0) THEN -- ask ravi, how about null?
370: x_adjusted_amount := - (p_operand_value / p_request_qty);
371: ELSE

Line 381: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

377: x_discounted_price := p_discounted_price;
378: x_adjusted_amount := 0; --bug2385874, should be 0 instead of p_operand_value
379: ELSE
380:
381: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
382: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
383: --4900095 added nvl to G_Lumpsum_qty
384: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_qty, p_request_qty)), p_rounding_factor);
385: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

Line 382: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding

378: x_adjusted_amount := 0; --bug2385874, should be 0 instead of p_operand_value
379: ELSE
380:
381: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
382: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
383: --4900095 added nvl to G_Lumpsum_qty
384: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_qty, p_request_qty)), p_rounding_factor);
385: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
386: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 385: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

381: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
382: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
383: --4900095 added nvl to G_Lumpsum_qty
384: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_qty, p_request_qty)), p_rounding_factor);
385: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
386: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
387: --4900095 added nvl to G_Lumpsum_qty
388: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_qty, p_request_qty)), p_rounding_factor);
389: ELSE

Line 392: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

388: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_qty, p_request_qty)), p_rounding_factor);
389: ELSE
390: x_discounted_price := p_discounted_price - (abs(p_list_price) * (p_operand_value/100)); --8521107
391: END IF;
392: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
393: --4900095 added nvl to G_Lumpsum_qty
394: x_discounted_price := p_discounted_price - (p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty));
395: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
396: --4900095 added nvl to G_Lumpsum_qty

Line 395: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG

391: END IF;
392: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
393: --4900095 added nvl to G_Lumpsum_qty
394: x_discounted_price := p_discounted_price - (p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty));
395: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
396: --4900095 added nvl to G_Lumpsum_qty
397: x_adjusted_amount := - (p_operand_value / nvl(G_Lumpsum_qty, p_request_qty));
398:
399: END IF; -- end if p_request_qty

Line 402: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN

398:
399: END IF; -- end if p_request_qty
400: END IF; -- end if p_accural_flag
401:
402: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
403:
404: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
405:
406: x_discounted_price := p_discounted_price;

Line 404: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

400: END IF; -- end if p_accural_flag
401:
402: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
403:
404: IF (p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
405:
406: x_discounted_price := p_discounted_price;
407: IF (p_request_qty <> 0) THEN -- ask ravi, how about null?
408: --4900095 added nvl to G_Lumpsum_qty

Line 422: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

418: x_discounted_price := p_discounted_price;
419: --x_adjusted_amount := p_operand_value;
420: x_adjusted_amount := 0; --bug2385874, should be 0 instead of p_operand_value
421: ELSE
422: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
423: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
424: --4900095 added nvl to G_Lumpsum_qty
425: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_qty, p_request_qty)), p_rounding_factor);
426: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

Line 423: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding

419: --x_adjusted_amount := p_operand_value;
420: x_adjusted_amount := 0; --bug2385874, should be 0 instead of p_operand_value
421: ELSE
422: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
423: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
424: --4900095 added nvl to G_Lumpsum_qty
425: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_qty, p_request_qty)), p_rounding_factor);
426: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
427: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 426: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

422: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
423: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
424: --4900095 added nvl to G_Lumpsum_qty
425: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_qty, p_request_qty)), p_rounding_factor);
426: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
427: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
428: --4900095 added nvl to G_Lumpsum_qty
429: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
430: ELSE

Line 433: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

429: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
430: ELSE
431: x_discounted_price := p_discounted_price + (abs(p_list_price) * (p_operand_value/100)); --8521107
432: END IF;
433: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
434: --4900095 added nvl to G_Lumpsum_qty
435: x_discounted_price := p_discounted_price + (p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty));
436: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
437:

Line 436: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG

432: END IF;
433: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
434: --4900095 added nvl to G_Lumpsum_qty
435: x_discounted_price := p_discounted_price + (p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty));
436: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
437:
438: --4900095 added nvl to G_Lumpsum_qty
439: x_adjusted_amount := (p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty));
440: END IF; -- end if p_request_qty

Line 443: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN

439: x_adjusted_amount := (p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty));
440: END IF; -- end if p_request_qty
441: END IF; -- end if p_accrual_flag
442:
443: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN
444:
445: IF l_debug = FND_API.G_TRUE THEN
446: QP_PREQ_GRP.engine_debug('Freight Charge');
447: QP_PREQ_GRP.engine_debug('Discounted Price : ' || p_discounted_price);

Line 446: QP_PREQ_GRP.engine_debug('Freight Charge');

442:
443: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN
444:
445: IF l_debug = FND_API.G_TRUE THEN
446: QP_PREQ_GRP.engine_debug('Freight Charge');
447: QP_PREQ_GRP.engine_debug('Discounted Price : ' || p_discounted_price);
448: END IF;
449: x_discounted_price := p_discounted_price;
450:

Line 447: QP_PREQ_GRP.engine_debug('Discounted Price : ' || p_discounted_price);

443: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN
444:
445: IF l_debug = FND_API.G_TRUE THEN
446: QP_PREQ_GRP.engine_debug('Freight Charge');
447: QP_PREQ_GRP.engine_debug('Discounted Price : ' || p_discounted_price);
448: END IF;
449: x_discounted_price := p_discounted_price;
450:
451: IF (p_request_qty = 0) THEN

Line 457: QP_PREQ_GRP.engine_debug('Adjusted Amount: ' || x_adjusted_amount);

453: ELSE
454: --4900095 added nvl to G_Lumpsum_qty
455: x_adjusted_amount := p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty);
456: IF l_debug = FND_API.G_TRUE THEN
457: QP_PREQ_GRP.engine_debug('Adjusted Amount: ' || x_adjusted_amount);
458: END IF;
459: END IF; -- end IF p_request_qty
460:
461: END IF; -- end if p_list_line_type = G_FREIGHT_CHARGE

Line 477: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_AMOUNT_DISCOUNT, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN

473: v_list_price := p_discounted_price;
474: END IF;
475:
476: -- G_BREAKUNIT_PRICE added for FTE breakunit
477: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_AMOUNT_DISCOUNT, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN
478:
479: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
480:
481: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

Line 479: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

475:
476: -- G_BREAKUNIT_PRICE added for FTE breakunit
477: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_AMOUNT_DISCOUNT, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN
478:
479: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
480:
481: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
482: x_discounted_price := p_discounted_price;
483: x_adjusted_amount := - (p_operand_value) ;

Line 481: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

477: IF (p_operand_calc_code IN (QP_PREQ_GRP.G_AMOUNT_DISCOUNT, QP_PREQ_GRP.G_BREAKUNIT_PRICE)) THEN
478:
479: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
480:
481: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
482: x_discounted_price := p_discounted_price;
483: x_adjusted_amount := - (p_operand_value) ;
484: ELSE
485: x_discounted_price := p_discounted_price - p_operand_value;

Line 489: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN

485: x_discounted_price := p_discounted_price - p_operand_value;
486: x_adjusted_amount := - (p_operand_value) ;
487: END IF; -- end if p_accrual_flag
488:
489: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
490:
491: x_discounted_price := p_discounted_price + p_operand_value;
492: x_adjusted_amount := p_operand_value;
493:

Line 494: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN

490:
491: x_discounted_price := p_discounted_price + p_operand_value;
492: x_adjusted_amount := p_operand_value;
493:
494: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN
495: x_discounted_price := p_discounted_price;
496: x_adjusted_amount := p_operand_value;
497: END IF; -- end if p_list_line_type
498:

Line 499: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT) THEN

495: x_discounted_price := p_discounted_price;
496: x_adjusted_amount := p_operand_value;
497: END IF; -- end if p_list_line_type
498:
499: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT) THEN
500:
501: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
502:
503: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

Line 501: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

497: END IF; -- end if p_list_line_type
498:
499: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT) THEN
500:
501: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
502:
503: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
504: x_discounted_price := p_discounted_price;
505: x_adjusted_amount := - (abs(v_list_price) * (p_operand_value / 100));

Line 503: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

499: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT) THEN
500:
501: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
502:
503: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
504: x_discounted_price := p_discounted_price;
505: x_adjusted_amount := - (abs(v_list_price) * (p_operand_value / 100));
506: ELSE
507: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

Line 507: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

503: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
504: x_discounted_price := p_discounted_price;
505: x_adjusted_amount := - (abs(v_list_price) * (p_operand_value / 100));
506: ELSE
507: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
508: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
509: x_discounted_price := p_discounted_price - ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
510: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
511: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 508: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding

504: x_discounted_price := p_discounted_price;
505: x_adjusted_amount := - (abs(v_list_price) * (p_operand_value / 100));
506: ELSE
507: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
508: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
509: x_discounted_price := p_discounted_price - ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
510: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
511: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
512: x_discounted_price := p_discounted_price - ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);

Line 510: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

506: ELSE
507: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
508: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
509: x_discounted_price := p_discounted_price - ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
510: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
511: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
512: x_discounted_price := p_discounted_price - ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
513: END IF;
514: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

Line 514: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

510: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
511: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
512: x_discounted_price := p_discounted_price - ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
513: END IF;
514: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
515: x_discounted_price := p_discounted_price - (abs(v_list_price) * (p_operand_value / 100));
516: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
517:
518: --x_discounted_price := p_discounted_price - (abs(v_list_price) *(p_operand_value/100));

Line 516: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG

512: x_discounted_price := p_discounted_price - ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
513: END IF;
514: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
515: x_discounted_price := p_discounted_price - (abs(v_list_price) * (p_operand_value / 100));
516: END IF; -- end if QP_PREQ_GRP.G_ROUNDING_FLAG
517:
518: --x_discounted_price := p_discounted_price - (abs(v_list_price) *(p_operand_value/100));
519: x_adjusted_amount := - (abs(v_list_price) * (p_operand_value / 100));
520:

Line 523: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN -- the sign along with value

519: x_adjusted_amount := - (abs(v_list_price) * (p_operand_value / 100));
520:
521: END IF; -- end if p_accrual_flag
522:
523: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN -- the sign along with value
524:
525: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
526: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
527: x_discounted_price := p_discounted_price + ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);

Line 525: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

521: END IF; -- end if p_accrual_flag
522:
523: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN -- the sign along with value
524:
525: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
526: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
527: x_discounted_price := p_discounted_price + ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
528: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
529: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 526: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding

522:
523: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN -- the sign along with value
524:
525: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
526: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
527: x_discounted_price := p_discounted_price + ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
528: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
529: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
530: x_discounted_price := p_discounted_price + ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);

Line 528: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

524:
525: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
526: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
527: x_discounted_price := p_discounted_price + ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
528: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
529: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
530: x_discounted_price := p_discounted_price + ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
531: END IF;
532: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

Line 532: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

528: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
529: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
530: x_discounted_price := p_discounted_price + ROUND((abs(v_list_price) * (p_operand_value / 100)), p_rounding_factor);
531: END IF;
532: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
533: x_discounted_price := p_discounted_price + (abs(v_list_price) * (p_operand_value / 100));
534: END IF;
535:
536: --x_discounted_price := p_discounted_price + (abs(v_list_price) *(p_operand_value/100));

Line 539: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN

535:
536: --x_discounted_price := p_discounted_price + (abs(v_list_price) *(p_operand_value/100));
537: x_adjusted_amount := abs(v_list_price) * (p_operand_value / 100);
538:
539: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN
540: x_discounted_price := p_discounted_price;
541: x_adjusted_amount := abs(v_list_price) * (p_operand_value / 100);
542: END IF; -- end if p_list_line_type
543:

Line 544: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

540: x_discounted_price := p_discounted_price;
541: x_adjusted_amount := abs(v_list_price) * (p_operand_value / 100);
542: END IF; -- end if p_list_line_type
543:
544: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
545:
546: IF (p_list_line_type IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE)) THEN
547: x_discounted_price := p_operand_value;
548: x_adjusted_amount := - (v_list_price - p_operand_value);

Line 546: IF (p_list_line_type IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE)) THEN

542: END IF; -- end if p_list_line_type
543:
544: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
545:
546: IF (p_list_line_type IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE)) THEN
547: x_discounted_price := p_operand_value;
548: x_adjusted_amount := - (v_list_price - p_operand_value);
549: --fix bug 2353905
550: --Negative list price can get correct adjusted_amount

Line 553: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT) THEN

549: --fix bug 2353905
550: --Negative list price can get correct adjusted_amount
551: END IF;
552:
553: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT) THEN
554:
555: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
556:
557: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

Line 555: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

551: END IF;
552:
553: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT) THEN
554:
555: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
556:
557: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
558: x_discounted_price := p_discounted_price;
559: IF (p_request_qty = 0) THEN

Line 557: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN

553: ELSIF (p_operand_calc_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT) THEN
554:
555: IF (p_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
556:
557: IF(p_accrual_flag = QP_PREQ_GRP.G_YES) THEN
558: x_discounted_price := p_discounted_price;
559: IF (p_request_qty = 0) THEN
560: --x_adjusted_amount := p_operand_value;
561: x_adjusted_amount := 0; --bug2385874, should be 0 instead of p_operand_value

Line 572: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

568: x_discounted_price := p_discounted_price;
569: --x_adjusted_amount := p_operand_value;
570: x_adjusted_amount := 0; --bug2385874, should be 0 instead of p_operand_value
571: ELSE
572: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
573: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
574: --4900095 added nvl to G_Lumpsum_qty
575: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
576: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

Line 573: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding

569: --x_adjusted_amount := p_operand_value;
570: x_adjusted_amount := 0; --bug2385874, should be 0 instead of p_operand_value
571: ELSE
572: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
573: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
574: --4900095 added nvl to G_Lumpsum_qty
575: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
576: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
577: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 576: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

572: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
573: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
574: --4900095 added nvl to G_Lumpsum_qty
575: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
576: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
577: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
578: --4900095 added nvl to G_Lumpsum_qty
579: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
580: END IF;

Line 581: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

577: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
578: --4900095 added nvl to G_Lumpsum_qty
579: x_discounted_price := p_discounted_price - ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
580: END IF;
581: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
582: --4900095 added nvl to G_Lumpsum_qty
583: x_discounted_price := p_discounted_price - (p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty));
584: END IF;
585:

Line 594: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN

590: END IF; -- end if p_request_qty
591:
592: END IF; -- end if p_accrual_flag
593:
594: ELSIF (p_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
595:
596: IF (p_request_qty = 0) THEN
597: x_discounted_price := p_discounted_price;
598: --x_adjusted_amount := p_operand_value;

Line 601: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

597: x_discounted_price := p_discounted_price;
598: --x_adjusted_amount := p_operand_value;
599: x_adjusted_amount := 0; --bug2385874, should be 0 instead of p_operand_value
600: ELSE
601: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
602: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
603: --4900095 added nvl to G_Lumpsum_qty
604: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
605: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

Line 602: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding

598: --x_adjusted_amount := p_operand_value;
599: x_adjusted_amount := 0; --bug2385874, should be 0 instead of p_operand_value
600: ELSE
601: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
602: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
603: --4900095 added nvl to G_Lumpsum_qty
604: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
605: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
606: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 605: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

601: --IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
602: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
603: --4900095 added nvl to G_Lumpsum_qty
604: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
605: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
606: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
607: --4900095 added nvl to G_Lumpsum_qty
608: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
609: END IF;

Line 610: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs

606: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
607: --4900095 added nvl to G_Lumpsum_qty
608: x_discounted_price := p_discounted_price + ROUND((p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty)), p_rounding_factor);
609: END IF;
610: ELSE -- QP_PREQ_GRP.G_ROUNDING_FLAG ='N' or 'U', un-round adjs
611: --4900095 added nvl to G_Lumpsum_qty
612: x_discounted_price := p_discounted_price + (p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty));
613: END IF; -- end if p_request_qty
614:

Line 621: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN

617: x_adjusted_amount := p_operand_value / nvl(G_Lumpsum_Qty, p_request_qty);
618:
619: END IF; -- end if p_request_qty
620:
621: ELSIF (p_list_line_type = QP_PREQ_GRP.G_FREIGHT_CHARGE) THEN
622: x_discounted_price := p_discounted_price;
623:
624: IF (p_request_qty = 0) THEN
625: x_adjusted_amount := p_operand_value;

Line 638: -- IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu

634:
635: END IF; -- end IF (p_old_pricing_sequence = p_new_pricing_sequence AND p_new_pricing_sequence IS NOT NULL)
636:
637: -- round it all
638: -- IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
639: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
640: x_adjusted_amount := ROUND(x_adjusted_amount, p_rounding_factor);
641: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
642: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 639: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding

635: END IF; -- end IF (p_old_pricing_sequence = p_new_pricing_sequence AND p_new_pricing_sequence IS NOT NULL)
636:
637: -- round it all
638: -- IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
639: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
640: x_adjusted_amount := ROUND(x_adjusted_amount, p_rounding_factor);
641: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
642: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
643: x_adjusted_amount := ROUND(x_adjusted_amount, p_rounding_factor);

Line 641: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile

637: -- round it all
638: -- IF (v_round_individual_adj_flag = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu
639: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN -- shu, new rounding
640: x_adjusted_amount := ROUND(x_adjusted_amount, p_rounding_factor);
641: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile
642: IF (v_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN -- do not round if profile is null
643: x_adjusted_amount := ROUND(x_adjusted_amount, p_rounding_factor);
644: END IF;
645: END IF;

Line 651: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);

647: EXCEPTION
648:
649: WHEN OTHERS THEN
650: IF l_debug = FND_API.G_TRUE THEN
651: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);
652: END IF;
653: x_return_status := FND_API.G_RET_STS_ERROR;
654: x_return_status_txt := v_routine_name || ' ' || SQLERRM;
655: END Calculate_Adjusted_Price;

Line 722: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

718: v_routine_name CONSTANT VARCHAR2(240) := 'Routine:QP_Calculate_Price_PUB.Process_Price_Break';
719:
720: BEGIN
721:
722: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
723: x_return_status := FND_API.G_RET_STS_SUCCESS;
724: v_related_request_lines := p_related_request_lines;
725: v_old_pricing_sequence := p_old_pricing_grp_seq;
726:

Line 738: QP_PREQ_GRP.engine_debug ('<-------- CONTINUOUS PRICE BREAK -------->');

734: LOOP
735: IF (p_related_request_lines(k).LINE_DETAIL_INDEX = p_list_line_index) THEN
736: IF l_debug = FND_API.G_TRUE THEN
737: IF l_continuous_flag = 'Y' THEN
738: QP_PREQ_GRP.engine_debug ('<-------- CONTINUOUS PRICE BREAK -------->');
739: ELSE
740: QP_PREQ_GRP.engine_debug ('<---------------------------------------->');
741: END IF;
742: QP_PREQ_GRP.engine_debug ('p_list_line_id: '|| p_list_line_id);

Line 740: QP_PREQ_GRP.engine_debug ('<---------------------------------------->');

736: IF l_debug = FND_API.G_TRUE THEN
737: IF l_continuous_flag = 'Y' THEN
738: QP_PREQ_GRP.engine_debug ('<-------- CONTINUOUS PRICE BREAK -------->');
739: ELSE
740: QP_PREQ_GRP.engine_debug ('<---------------------------------------->');
741: END IF;
742: QP_PREQ_GRP.engine_debug ('p_list_line_id: '|| p_list_line_id);
743: QP_PREQ_GRP.engine_debug ('p_list_line_index: '|| p_list_line_index);
744: END IF; -- END IF l_debug = FND_API.G_TRUE

Line 742: QP_PREQ_GRP.engine_debug ('p_list_line_id: '|| p_list_line_id);

738: QP_PREQ_GRP.engine_debug ('<-------- CONTINUOUS PRICE BREAK -------->');
739: ELSE
740: QP_PREQ_GRP.engine_debug ('<---------------------------------------->');
741: END IF;
742: QP_PREQ_GRP.engine_debug ('p_list_line_id: '|| p_list_line_id);
743: QP_PREQ_GRP.engine_debug ('p_list_line_index: '|| p_list_line_index);
744: END IF; -- END IF l_debug = FND_API.G_TRUE
745:
746: -- 4061138

Line 743: QP_PREQ_GRP.engine_debug ('p_list_line_index: '|| p_list_line_index);

739: ELSE
740: QP_PREQ_GRP.engine_debug ('<---------------------------------------->');
741: END IF;
742: QP_PREQ_GRP.engine_debug ('p_list_line_id: '|| p_list_line_id);
743: QP_PREQ_GRP.engine_debug ('p_list_line_index: '|| p_list_line_index);
744: END IF; -- END IF l_debug = FND_API.G_TRUE
745:
746: -- 4061138
747: -- check if PBH is prorated, important for continuous processing later

Line 748: IF l_continuous_flag = 'Y' AND QP_PREQ_GRP.G_BREAK_UOM_PRORATION = 'Y'

744: END IF; -- END IF l_debug = FND_API.G_TRUE
745:
746: -- 4061138
747: -- check if PBH is prorated, important for continuous processing later
748: IF l_continuous_flag = 'Y' AND QP_PREQ_GRP.G_BREAK_UOM_PRORATION = 'Y'
749: THEN
750: BEGIN
751: SELECT 'Y' INTO l_prorated_flag
752: FROM qp_npreq_ldets_tmp

Line 761: IF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_POINT_BREAK) THEN

757: l_prorated_flag := 'N';
758: END;
759: END IF;
760:
761: IF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_POINT_BREAK) THEN
762: IF l_debug = FND_API.G_TRUE THEN
763: QP_PREQ_GRP.engine_debug ('i am in Point break'); -- shu dbg 2388011
764: QP_PREQ_GRP.engine_debug ('p_group_value: '|| p_group_value); -- shu dbg 2388011
765: QP_PREQ_GRP.engine_debug ('p_list_line_qty: '|| p_list_line_qty); -- shu dbg 2388011

Line 763: QP_PREQ_GRP.engine_debug ('i am in Point break'); -- shu dbg 2388011

759: END IF;
760:
761: IF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_POINT_BREAK) THEN
762: IF l_debug = FND_API.G_TRUE THEN
763: QP_PREQ_GRP.engine_debug ('i am in Point break'); -- shu dbg 2388011
764: QP_PREQ_GRP.engine_debug ('p_group_value: '|| p_group_value); -- shu dbg 2388011
765: QP_PREQ_GRP.engine_debug ('p_list_line_qty: '|| p_list_line_qty); -- shu dbg 2388011
766: END IF; -- END IF l_debug = FND_API.G_TRUE
767:

Line 764: QP_PREQ_GRP.engine_debug ('p_group_value: '|| p_group_value); -- shu dbg 2388011

760:
761: IF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_POINT_BREAK) THEN
762: IF l_debug = FND_API.G_TRUE THEN
763: QP_PREQ_GRP.engine_debug ('i am in Point break'); -- shu dbg 2388011
764: QP_PREQ_GRP.engine_debug ('p_group_value: '|| p_group_value); -- shu dbg 2388011
765: QP_PREQ_GRP.engine_debug ('p_list_line_qty: '|| p_list_line_qty); -- shu dbg 2388011
766: END IF; -- END IF l_debug = FND_API.G_TRUE
767:
768: -- 2388011, Applicable for group of lines based PBH

Line 765: QP_PREQ_GRP.engine_debug ('p_list_line_qty: '|| p_list_line_qty); -- shu dbg 2388011

761: IF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_POINT_BREAK) THEN
762: IF l_debug = FND_API.G_TRUE THEN
763: QP_PREQ_GRP.engine_debug ('i am in Point break'); -- shu dbg 2388011
764: QP_PREQ_GRP.engine_debug ('p_group_value: '|| p_group_value); -- shu dbg 2388011
765: QP_PREQ_GRP.engine_debug ('p_list_line_qty: '|| p_list_line_qty); -- shu dbg 2388011
766: END IF; -- END IF l_debug = FND_API.G_TRUE
767:
768: -- 2388011, Applicable for group of lines based PBH
769: v_ord_qty := p_list_line_qty; -- Store the ordered qty

Line 778: QP_PREQ_GRP.engine_debug ('v_temp, for evaluation (either p_group_value or p_list_line_qty): '|| v_temp); -- shu dbg 2388011

774: v_temp := p_list_line_qty;
775: END IF;
776:
777: IF l_debug = FND_API.G_TRUE THEN
778: QP_PREQ_GRP.engine_debug ('v_temp, for evaluation (either p_group_value or p_list_line_qty): '|| v_temp); -- shu dbg 2388011
779: END IF; -- END IF l_debug = FND_API.G_TRUE
780:
781: -- If it falls in the range
782: /* rewritten for 4061138

Line 796: QP_PREQ_GRP.engine_debug ('PBH operand Calc Code : ' || p_operand_calc_code);

792: THEN
793: v_related_request_lines(k).LINE_QTY := v_temp; -- PBH line qty/v_ord_qty, 2388011
794:
795: IF l_debug = FND_API.G_TRUE THEN
796: QP_PREQ_GRP.engine_debug ('PBH operand Calc Code : ' || p_operand_calc_code);
797: END IF;
798:
799: -- Do not calculate per unit satisfied value if it is BLOCK_PRICING
800: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

Line 800: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

796: QP_PREQ_GRP.engine_debug ('PBH operand Calc Code : ' || p_operand_calc_code);
797: END IF;
798:
799: -- Do not calculate per unit satisfied value if it is BLOCK_PRICING
800: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
801: IF (p_operand_calc_code = 'BLOCK_PRICE') THEN
802: v_calculate_per_unit_flag := 'N';
803: ELSE
804: v_calculate_per_unit_flag := 'Y';

Line 811: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_BREAKUNIT_PRICE) THEN

807: v_calculate_per_unit_flag := 'Y';
808: END IF;
809: -- for FTE breakunit
810: -- also do not calculate per unit value if line is BREAKUNIT_PRICE
811: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_BREAKUNIT_PRICE) THEN
812: v_calculate_per_unit_flag := 'N';
813: END IF;
814:
815: IF l_debug = FND_API.G_TRUE THEN

Line 816: QP_PREQ_GRP.engine_debug ('Calculate Per Unit Flag : ' || v_calculate_per_unit_flag);

812: v_calculate_per_unit_flag := 'N';
813: END IF;
814:
815: IF l_debug = FND_API.G_TRUE THEN
816: QP_PREQ_GRP.engine_debug ('Calculate Per Unit Flag : ' || v_calculate_per_unit_flag);
817: END IF;
818:
819: -- This happens only if it is line group based Applicable for both Linegroup Amount and Item Amount
820: -- 2388011_new

Line 830: QP_PREQ_GRP.engine_debug('List Line Quantity: ' || v_related_request_lines(k).LINE_QTY );

826: END IF;
827:
828:
829: IF l_debug = FND_API.G_TRUE THEN
830: QP_PREQ_GRP.engine_debug('List Line Quantity: ' || v_related_request_lines(k).LINE_QTY );
831: QP_PREQ_GRP.engine_debug('PBH Type: ' || p_pbh_type);
832: END IF; -- END IF l_debug = FND_API.G_TRUE
833:
834: -- Call the Calculate List Price Function

Line 831: QP_PREQ_GRP.engine_debug('PBH Type: ' || p_pbh_type);

827:
828:
829: IF l_debug = FND_API.G_TRUE THEN
830: QP_PREQ_GRP.engine_debug('List Line Quantity: ' || v_related_request_lines(k).LINE_QTY );
831: QP_PREQ_GRP.engine_debug('PBH Type: ' || p_pbh_type);
832: END IF; -- END IF l_debug = FND_API.G_TRUE
833:
834: -- Call the Calculate List Price Function
835: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

Line 835: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

831: QP_PREQ_GRP.engine_debug('PBH Type: ' || p_pbh_type);
832: END IF; -- END IF l_debug = FND_API.G_TRUE
833:
834: -- Call the Calculate List Price Function
835: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
836: Calculate_List_Price_PVT(
837: p_related_request_lines(k).OPERAND_CALCULATION_CODE,
838: p_related_request_lines(k).OPERAND_VALUE,
839: p_related_request_lines(k).RECURRING_VALUE, -- block pricing

Line 843: QP_PREQ_GRP.G_ROUNDING_FLAG,

839: p_related_request_lines(k).RECURRING_VALUE, -- block pricing
840: v_ord_qty, -- 2388011_new, for calculation
841: p_related_item_price,
842: p_service_duration,
843: QP_PREQ_GRP.G_ROUNDING_FLAG,
844: p_rounding_factor,
845: x_list_price,
846: x_percent_price,
847: x_extended_price,

Line 857: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = qp_preq_grp.G_BLOCK_PRICE) THEN

853: END IF;
854:
855: -- This is the final list price after break evaluation
856: -- changed for block pricing
857: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = qp_preq_grp.G_BLOCK_PRICE) THEN
858: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_extended_price;
859: ELSE
860: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_list_price;
861: END IF;

Line 867: QP_PREQ_GRP.engine_debug('final list price after break evaluation..');

863: x_pbh_list_price := x_list_price;
864: x_pbh_extended_price := x_extended_price; -- block pricing
865:
866: IF l_debug = FND_API.G_TRUE THEN
867: QP_PREQ_GRP.engine_debug('final list price after break evaluation..');
868: QP_PREQ_GRP.engine_debug('List Line Price: ' || v_related_request_lines(k).ADJUSTMENT_AMOUNT );
869: QP_PREQ_GRP.engine_debug('List Line Price: ' || x_pbh_list_price );
870: END IF; -- END IF l_debug = FND_API.G_TRUE
871:

Line 868: QP_PREQ_GRP.engine_debug('List Line Price: ' || v_related_request_lines(k).ADJUSTMENT_AMOUNT );

864: x_pbh_extended_price := x_extended_price; -- block pricing
865:
866: IF l_debug = FND_API.G_TRUE THEN
867: QP_PREQ_GRP.engine_debug('final list price after break evaluation..');
868: QP_PREQ_GRP.engine_debug('List Line Price: ' || v_related_request_lines(k).ADJUSTMENT_AMOUNT );
869: QP_PREQ_GRP.engine_debug('List Line Price: ' || x_pbh_list_price );
870: END IF; -- END IF l_debug = FND_API.G_TRUE
871:
872: ELSE -- DIS/SUR/FREIGHT_CHARGE

Line 869: QP_PREQ_GRP.engine_debug('List Line Price: ' || x_pbh_list_price );

865:
866: IF l_debug = FND_API.G_TRUE THEN
867: QP_PREQ_GRP.engine_debug('final list price after break evaluation..');
868: QP_PREQ_GRP.engine_debug('List Line Price: ' || v_related_request_lines(k).ADJUSTMENT_AMOUNT );
869: QP_PREQ_GRP.engine_debug('List Line Price: ' || x_pbh_list_price );
870: END IF; -- END IF l_debug = FND_API.G_TRUE
871:
872: ELSE -- DIS/SUR/FREIGHT_CHARGE
873:

Line 875: QP_PREQ_GRP.engine_debug('I am in Discount Break');

871:
872: ELSE -- DIS/SUR/FREIGHT_CHARGE
873:
874: IF l_debug = FND_API.G_TRUE THEN
875: QP_PREQ_GRP.engine_debug('I am in Discount Break');
876: QP_PREQ_GRP.engine_debug('List Price: ' || p_list_price);
877: QP_PREQ_GRP.engine_debug('Discounted Price: ' || p_discounted_price);
878: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
879: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || v_related_request_lines(k).PRICING_GROUP_SEQUENCE);

Line 876: QP_PREQ_GRP.engine_debug('List Price: ' || p_list_price);

872: ELSE -- DIS/SUR/FREIGHT_CHARGE
873:
874: IF l_debug = FND_API.G_TRUE THEN
875: QP_PREQ_GRP.engine_debug('I am in Discount Break');
876: QP_PREQ_GRP.engine_debug('List Price: ' || p_list_price);
877: QP_PREQ_GRP.engine_debug('Discounted Price: ' || p_discounted_price);
878: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
879: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || v_related_request_lines(k).PRICING_GROUP_SEQUENCE);
880: END IF; -- END IF l_debug = FND_API.G_TRUE

Line 877: QP_PREQ_GRP.engine_debug('Discounted Price: ' || p_discounted_price);

873:
874: IF l_debug = FND_API.G_TRUE THEN
875: QP_PREQ_GRP.engine_debug('I am in Discount Break');
876: QP_PREQ_GRP.engine_debug('List Price: ' || p_list_price);
877: QP_PREQ_GRP.engine_debug('Discounted Price: ' || p_discounted_price);
878: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
879: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || v_related_request_lines(k).PRICING_GROUP_SEQUENCE);
880: END IF; -- END IF l_debug = FND_API.G_TRUE
881:

Line 878: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);

874: IF l_debug = FND_API.G_TRUE THEN
875: QP_PREQ_GRP.engine_debug('I am in Discount Break');
876: QP_PREQ_GRP.engine_debug('List Price: ' || p_list_price);
877: QP_PREQ_GRP.engine_debug('Discounted Price: ' || p_discounted_price);
878: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
879: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || v_related_request_lines(k).PRICING_GROUP_SEQUENCE);
880: END IF; -- END IF l_debug = FND_API.G_TRUE
881:
882: Calculate_Adjusted_Price(p_list_price => p_list_price, -- List Price

Line 879: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || v_related_request_lines(k).PRICING_GROUP_SEQUENCE);

875: QP_PREQ_GRP.engine_debug('I am in Discount Break');
876: QP_PREQ_GRP.engine_debug('List Price: ' || p_list_price);
877: QP_PREQ_GRP.engine_debug('Discounted Price: ' || p_discounted_price);
878: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
879: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || v_related_request_lines(k).PRICING_GROUP_SEQUENCE);
880: END IF; -- END IF l_debug = FND_API.G_TRUE
881:
882: Calculate_Adjusted_Price(p_list_price => p_list_price, -- List Price
883: p_discounted_price => p_discounted_price,

Line 893: p_rounding_flag => QP_PREQ_GRP.G_ROUNDING_FLAG,

889: p_list_line_type => v_related_request_lines(k).RELATED_LIST_LINE_TYPE,
890: --p_request_qty => v_related_request_lines(k).LINE_QTY, -- 2388011,
891: p_request_qty => p_list_line_qty, -- 2388011_new
892: p_accrual_flag => v_related_request_lines(k).ACCRUAL_FLAG,
893: p_rounding_flag => QP_PREQ_GRP.G_ROUNDING_FLAG,
894: p_rounding_factor => p_rounding_factor,
895: p_orig_unit_price => p_list_price,
896: x_discounted_price => x_discounted_price, -- Output Discounted Price
897: x_adjusted_amount => x_adjusted_amount, -- Discount amount for this line

Line 912: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || v_related_request_lines(k).ADJUSTMENT_AMOUNT);

908: -- This is the final selling price after break evaluation for this discount line
909: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_adjusted_amount;
910:
911: IF l_debug = FND_API.G_TRUE THEN
912: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || v_related_request_lines(k).ADJUSTMENT_AMOUNT);
913: END IF; -- END IF l_debug = FND_API.G_TRUE
914: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER))
915:
916: -- ELSE IF (v_temp >= p_related_request_lines(k).VALUE_FROM AND...

Line 914: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER))

910:
911: IF l_debug = FND_API.G_TRUE THEN
912: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || v_related_request_lines(k).ADJUSTMENT_AMOUNT);
913: END IF; -- END IF l_debug = FND_API.G_TRUE
914: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER))
915:
916: -- ELSE IF (v_temp >= p_related_request_lines(k).VALUE_FROM AND...
917: ELSE -- Store the break line which did not satisfy with qty 0,for other related lines
918: v_related_request_lines(k).LINE_QTY := 0;

Line 920: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

916: -- ELSE IF (v_temp >= p_related_request_lines(k).VALUE_FROM AND...
917: ELSE -- Store the break line which did not satisfy with qty 0,for other related lines
918: v_related_request_lines(k).LINE_QTY := 0;
919: -- This is the final list price or selling price after break evaluation
920: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
921:
922: Calculate_List_Price_PVT(
923: p_related_request_lines(k).OPERAND_CALCULATION_CODE,
924: p_related_request_lines(k).OPERAND_VALUE,

Line 929: QP_PREQ_GRP.G_ROUNDING_FLAG,

925: p_related_request_lines(k).RECURRING_VALUE, -- block pricing
926: 0, -- p_request_qty = 0
927: p_related_item_price,
928: p_service_duration,
929: QP_PREQ_GRP.G_ROUNDING_FLAG,
930: p_rounding_factor,
931: x_list_price,
932: x_percent_price,
933: x_extended_price, -- block pricing

Line 939: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || x_ret_status_txt);

935: x_ret_status_txt);
936:
937: IF(x_ret_status = FND_API.G_RET_STS_ERROR) THEN
938: IF l_debug = FND_API.G_TRUE THEN
939: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || x_ret_status_txt);
940: END IF;
941: RAISE FND_API.G_EXC_ERROR;
942: END IF; -- END IF(x_ret_status = FND_API.G_RET_STS_ERROR)
943:

Line 946: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = qp_preq_grp.G_BLOCK_PRICE) THEN

942: END IF; -- END IF(x_ret_status = FND_API.G_RET_STS_ERROR)
943:
944: -- This is the final list price after break evaluation
945: -- modified for block pricing
946: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = qp_preq_grp.G_BLOCK_PRICE) THEN
947: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_extended_price;
948: ELSE
949: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_list_price;
950: END IF;

Line 953: QP_PREQ_GRP.engine_debug('List Line Price: ' || v_related_request_lines(k).ADJUSTMENT_AMOUNT );

949: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_list_price;
950: END IF;
951:
952: IF l_debug = FND_API.G_TRUE THEN
953: QP_PREQ_GRP.engine_debug('List Line Price: ' || v_related_request_lines(k).ADJUSTMENT_AMOUNT );
954: END IF;
955:
956: ELSE --DIS/SUR/FREIGHT_CHARGE
957:

Line 968: p_rounding_flag => QP_PREQ_GRP.G_ROUNDING_FLAG,

964: p_operand_value => v_related_request_lines(k).OPERAND_VALUE,
965: p_list_line_type => v_related_request_lines(k).RELATED_LIST_LINE_TYPE,
966: p_request_qty => 0, -- p_request_qty
967: p_accrual_flag => v_related_request_lines(k).ACCRUAL_FLAG,
968: p_rounding_flag => QP_PREQ_GRP.G_ROUNDING_FLAG,
969: p_rounding_factor => p_rounding_factor,
970: p_orig_unit_price => p_list_price,
971: x_discounted_price => x_discounted_price, -- Output Discounted Price
972: x_adjusted_amount => x_adjusted_amount, -- Discount amount for this line

Line 987: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || x_adjustment_amount);

983: -- This is the final selling price after break evaluation for this discount line
984: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_adjusted_amount;
985:
986: IF l_debug = FND_API.G_TRUE THEN
987: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || x_adjustment_amount);
988: END IF; -- END IF l_debug = FND_API.G_TRUE
989: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER
990: END IF; -- END IF (v_temp >= p_related_request_lines(k).VALUE_FROM AND
991:

Line 989: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER

985:
986: IF l_debug = FND_API.G_TRUE THEN
987: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || x_adjustment_amount);
988: END IF; -- END IF l_debug = FND_API.G_TRUE
989: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER
990: END IF; -- END IF (v_temp >= p_related_request_lines(k).VALUE_FROM AND
991:
992: -- RANGE BREAK
993: ELSIF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RANGE_BREAK) THEN

Line 993: ELSIF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RANGE_BREAK) THEN

989: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER
990: END IF; -- END IF (v_temp >= p_related_request_lines(k).VALUE_FROM AND
991:
992: -- RANGE BREAK
993: ELSIF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RANGE_BREAK) THEN
994:
995: IF l_debug = FND_API.G_TRUE THEN
996: QP_PREQ_GRP.engine_debug('I am in Range Break');
997: QP_PREQ_GRP.engine_debug('The value of v_count is:' || v_count );

Line 996: QP_PREQ_GRP.engine_debug('I am in Range Break');

992: -- RANGE BREAK
993: ELSIF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RANGE_BREAK) THEN
994:
995: IF l_debug = FND_API.G_TRUE THEN
996: QP_PREQ_GRP.engine_debug('I am in Range Break');
997: QP_PREQ_GRP.engine_debug('The value of v_count is:' || v_count );
998: END IF;
999:
1000: IF (v_count = 0) THEN

Line 997: QP_PREQ_GRP.engine_debug('The value of v_count is:' || v_count );

993: ELSIF (p_related_request_lines(k).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RANGE_BREAK) THEN
994:
995: IF l_debug = FND_API.G_TRUE THEN
996: QP_PREQ_GRP.engine_debug('I am in Range Break');
997: QP_PREQ_GRP.engine_debug('The value of v_count is:' || v_count );
998: END IF;
999:
1000: IF (v_count = 0) THEN
1001: -- begin 2388011, grp_lines_pbh

Line 1014: QP_PREQ_GRP.engine_debug('p_group_value: ' || p_group_value); -- shu debug, 2388011

1010: v_ord_qty := p_list_line_qty;
1011: END IF; -- end IF (v_count = 0)
1012:
1013: IF l_debug = FND_API.G_TRUE THEN
1014: QP_PREQ_GRP.engine_debug('p_group_value: ' || p_group_value); -- shu debug, 2388011
1015: QP_PREQ_GRP.engine_debug('p_list_line_qty (v_ord_qty): ' || p_list_line_qty); -- shu debug, 2388011
1016: QP_PREQ_GRP.engine_debug('l_qualifier_value (either p_group_value or p_list_line_qty): ' || l_qualifier_value); -- shu debug, 2388011
1017: QP_PREQ_GRP.engine_debug('v_temp (either p_group_value or p_list_line_qty): ' || v_temp); -- shu debug, 2388011
1018: END IF; -- END IF l_debug = FND_API.G_TRUE

Line 1015: QP_PREQ_GRP.engine_debug('p_list_line_qty (v_ord_qty): ' || p_list_line_qty); -- shu debug, 2388011

1011: END IF; -- end IF (v_count = 0)
1012:
1013: IF l_debug = FND_API.G_TRUE THEN
1014: QP_PREQ_GRP.engine_debug('p_group_value: ' || p_group_value); -- shu debug, 2388011
1015: QP_PREQ_GRP.engine_debug('p_list_line_qty (v_ord_qty): ' || p_list_line_qty); -- shu debug, 2388011
1016: QP_PREQ_GRP.engine_debug('l_qualifier_value (either p_group_value or p_list_line_qty): ' || l_qualifier_value); -- shu debug, 2388011
1017: QP_PREQ_GRP.engine_debug('v_temp (either p_group_value or p_list_line_qty): ' || v_temp); -- shu debug, 2388011
1018: END IF; -- END IF l_debug = FND_API.G_TRUE
1019:

Line 1016: QP_PREQ_GRP.engine_debug('l_qualifier_value (either p_group_value or p_list_line_qty): ' || l_qualifier_value); -- shu debug, 2388011

1012:
1013: IF l_debug = FND_API.G_TRUE THEN
1014: QP_PREQ_GRP.engine_debug('p_group_value: ' || p_group_value); -- shu debug, 2388011
1015: QP_PREQ_GRP.engine_debug('p_list_line_qty (v_ord_qty): ' || p_list_line_qty); -- shu debug, 2388011
1016: QP_PREQ_GRP.engine_debug('l_qualifier_value (either p_group_value or p_list_line_qty): ' || l_qualifier_value); -- shu debug, 2388011
1017: QP_PREQ_GRP.engine_debug('v_temp (either p_group_value or p_list_line_qty): ' || v_temp); -- shu debug, 2388011
1018: END IF; -- END IF l_debug = FND_API.G_TRUE
1019:
1020: -- The check to see if the ordered quantity falls in the range needs to be done only once

Line 1017: QP_PREQ_GRP.engine_debug('v_temp (either p_group_value or p_list_line_qty): ' || v_temp); -- shu debug, 2388011

1013: IF l_debug = FND_API.G_TRUE THEN
1014: QP_PREQ_GRP.engine_debug('p_group_value: ' || p_group_value); -- shu debug, 2388011
1015: QP_PREQ_GRP.engine_debug('p_list_line_qty (v_ord_qty): ' || p_list_line_qty); -- shu debug, 2388011
1016: QP_PREQ_GRP.engine_debug('l_qualifier_value (either p_group_value or p_list_line_qty): ' || l_qualifier_value); -- shu debug, 2388011
1017: QP_PREQ_GRP.engine_debug('v_temp (either p_group_value or p_list_line_qty): ' || v_temp); -- shu debug, 2388011
1018: END IF; -- END IF l_debug = FND_API.G_TRUE
1019:
1020: -- The check to see if the ordered quantity falls in the range needs to be done only once
1021: -- Ex: If Ord Qty = 50 and 100-null then u do not get it

Line 1034: QP_PREQ_GRP.engine_debug('C100# value from: ' || p_related_request_lines(k).value_from);

1030: IF (p_related_request_lines(k).VALUE_TO IS NULL) THEN
1031: v_related_request_lines(k).LINE_QTY := v_temp;
1032: ELSE
1033: IF l_debug = FND_API.G_TRUE THEN
1034: QP_PREQ_GRP.engine_debug('C100# value from: ' || p_related_request_lines(k).value_from);
1035: QP_PREQ_GRP.engine_debug('C200# value to: ' || p_related_request_lines(k).value_to);
1036: QP_PREQ_GRP.engine_debug('C300# Qualifier Value: ' || l_qualifier_value); --2388011
1037: QP_PREQ_GRP.engine_debug('C400# Group Amount: ' || p_group_value); --2388011
1038: END IF; -- END IF l_debug = FND_API.G_TRUE

Line 1035: QP_PREQ_GRP.engine_debug('C200# value to: ' || p_related_request_lines(k).value_to);

1031: v_related_request_lines(k).LINE_QTY := v_temp;
1032: ELSE
1033: IF l_debug = FND_API.G_TRUE THEN
1034: QP_PREQ_GRP.engine_debug('C100# value from: ' || p_related_request_lines(k).value_from);
1035: QP_PREQ_GRP.engine_debug('C200# value to: ' || p_related_request_lines(k).value_to);
1036: QP_PREQ_GRP.engine_debug('C300# Qualifier Value: ' || l_qualifier_value); --2388011
1037: QP_PREQ_GRP.engine_debug('C400# Group Amount: ' || p_group_value); --2388011
1038: END IF; -- END IF l_debug = FND_API.G_TRUE
1039:

Line 1036: QP_PREQ_GRP.engine_debug('C300# Qualifier Value: ' || l_qualifier_value); --2388011

1032: ELSE
1033: IF l_debug = FND_API.G_TRUE THEN
1034: QP_PREQ_GRP.engine_debug('C100# value from: ' || p_related_request_lines(k).value_from);
1035: QP_PREQ_GRP.engine_debug('C200# value to: ' || p_related_request_lines(k).value_to);
1036: QP_PREQ_GRP.engine_debug('C300# Qualifier Value: ' || l_qualifier_value); --2388011
1037: QP_PREQ_GRP.engine_debug('C400# Group Amount: ' || p_group_value); --2388011
1038: END IF; -- END IF l_debug = FND_API.G_TRUE
1039:
1040: Get_Satisfied_Range(

Line 1037: QP_PREQ_GRP.engine_debug('C400# Group Amount: ' || p_group_value); --2388011

1033: IF l_debug = FND_API.G_TRUE THEN
1034: QP_PREQ_GRP.engine_debug('C100# value from: ' || p_related_request_lines(k).value_from);
1035: QP_PREQ_GRP.engine_debug('C200# value to: ' || p_related_request_lines(k).value_to);
1036: QP_PREQ_GRP.engine_debug('C300# Qualifier Value: ' || l_qualifier_value); --2388011
1037: QP_PREQ_GRP.engine_debug('C400# Group Amount: ' || p_group_value); --2388011
1038: END IF; -- END IF l_debug = FND_API.G_TRUE
1039:
1040: Get_Satisfied_Range(
1041: p_related_request_lines(k).value_from,

Line 1050: QP_PREQ_GRP.engine_debug('C500#: ' || l_satisfied_value);

1046: l_prorated_flag, -- 4061138
1047: l_satisfied_value);
1048:
1049: IF l_debug = FND_API.G_TRUE THEN
1050: QP_PREQ_GRP.engine_debug('C500#: ' || l_satisfied_value);
1051: QP_PREQ_GRP.engine_debug('C600# list price : ' || p_list_price);
1052: END IF; -- END IF l_debug = FND_API.G_TRUE
1053:
1054: IF l_debug = FND_API.G_TRUE THEN

Line 1051: QP_PREQ_GRP.engine_debug('C600# list price : ' || p_list_price);

1047: l_satisfied_value);
1048:
1049: IF l_debug = FND_API.G_TRUE THEN
1050: QP_PREQ_GRP.engine_debug('C500#: ' || l_satisfied_value);
1051: QP_PREQ_GRP.engine_debug('C600# list price : ' || p_list_price);
1052: END IF; -- END IF l_debug = FND_API.G_TRUE
1053:
1054: IF l_debug = FND_API.G_TRUE THEN
1055: QP_PREQ_GRP.engine_debug ('PBH operand Calc Code : ' || p_operand_calc_code);

Line 1055: QP_PREQ_GRP.engine_debug ('PBH operand Calc Code : ' || p_operand_calc_code);

1051: QP_PREQ_GRP.engine_debug('C600# list price : ' || p_list_price);
1052: END IF; -- END IF l_debug = FND_API.G_TRUE
1053:
1054: IF l_debug = FND_API.G_TRUE THEN
1055: QP_PREQ_GRP.engine_debug ('PBH operand Calc Code : ' || p_operand_calc_code);
1056: END IF;
1057:
1058: -- Do not calculate the per unit satisfied value if it is BLOCK_PRICING
1059: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

Line 1059: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

1055: QP_PREQ_GRP.engine_debug ('PBH operand Calc Code : ' || p_operand_calc_code);
1056: END IF;
1057:
1058: -- Do not calculate the per unit satisfied value if it is BLOCK_PRICING
1059: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
1060: IF (p_operand_calc_code = 'BLOCK_PRICE') THEN
1061: v_calculate_per_unit_flag := 'N';
1062: ELSE
1063: v_calculate_per_unit_flag := 'Y';

Line 1070: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_BREAKUNIT_PRICE) THEN

1066: v_calculate_per_unit_flag := 'Y';
1067: END IF;
1068: -- for FTE breakunit
1069: -- also do not calculate per unit value if line is BREAKUNIT_PRICE
1070: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_BREAKUNIT_PRICE) THEN
1071: v_calculate_per_unit_flag := 'N';
1072: END IF;
1073:
1074: IF l_debug = FND_API.G_TRUE THEN

Line 1075: QP_PREQ_GRP.engine_debug ('Calculate Per Unit Flag : ' || v_calculate_per_unit_flag);

1071: v_calculate_per_unit_flag := 'N';
1072: END IF;
1073:
1074: IF l_debug = FND_API.G_TRUE THEN
1075: QP_PREQ_GRP.engine_debug ('Calculate Per Unit Flag : ' || v_calculate_per_unit_flag);
1076: END IF;
1077:
1078: -- 2388011_new
1079: -- Ravi Change Applicable for both linegroup Group Amount and Line Item Amt

Line 1106: QP_PREQ_GRP.engine_debug('List Line Quantity: ' || v_related_request_lines(k).LINE_QTY );

1102:
1103: END IF; -- END IF (p_related_request_lines(k).VALUE_TO IS NULL)
1104:
1105: IF l_debug = FND_API.G_TRUE THEN
1106: QP_PREQ_GRP.engine_debug('List Line Quantity: ' || v_related_request_lines(k).LINE_QTY );
1107: QP_PREQ_GRP.engine_debug('Temp: ' || v_temp );
1108: END IF;
1109:
1110: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

Line 1107: QP_PREQ_GRP.engine_debug('Temp: ' || v_temp );

1103: END IF; -- END IF (p_related_request_lines(k).VALUE_TO IS NULL)
1104:
1105: IF l_debug = FND_API.G_TRUE THEN
1106: QP_PREQ_GRP.engine_debug('List Line Quantity: ' || v_related_request_lines(k).LINE_QTY );
1107: QP_PREQ_GRP.engine_debug('Temp: ' || v_temp );
1108: END IF;
1109:
1110: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
1111: -- Call the Calculate List Price Function

Line 1110: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

1106: QP_PREQ_GRP.engine_debug('List Line Quantity: ' || v_related_request_lines(k).LINE_QTY );
1107: QP_PREQ_GRP.engine_debug('Temp: ' || v_temp );
1108: END IF;
1109:
1110: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
1111: -- Call the Calculate List Price Function
1112: Calculate_List_Price_PVT(
1113: p_related_request_lines(k).OPERAND_CALCULATION_CODE,
1114: p_related_request_lines(k).OPERAND_VALUE,

Line 1120: QP_PREQ_GRP.G_ROUNDING_FLAG,

1116: --v_ord_qty, -- 2388011_new
1117: v_related_request_lines(k).LINE_QTY, -- new fix, error found in block pricing
1118: p_related_item_price,
1119: p_service_duration,
1120: QP_PREQ_GRP.G_ROUNDING_FLAG,
1121: NULL, -- fix bug 2724697, null rounding_factor so operand does not get rounded, it will be rounded later at Average Out PBH Lines
1122: x_list_price,
1123: x_percent_price,
1124: x_extended_price, -- block pricing

Line 1134: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = qp_preq_grp.G_BLOCK_PRICE) THEN

1130: END IF;
1131:
1132: -- This is the final list price after break evaluation
1133: -- modified for block pricing
1134: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = qp_preq_grp.G_BLOCK_PRICE) THEN
1135: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_extended_price;
1136: ELSE
1137: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_list_price;
1138: END IF;

Line 1142: QP_PREQ_GRP.engine_debug('I am in Discount Break (RANGE BLOCK)');

1138: END IF;
1139:
1140: ELSE -- DIS/SUR/FREIGHT_CHARGE
1141: IF l_debug = FND_API.G_TRUE THEN
1142: QP_PREQ_GRP.engine_debug('I am in Discount Break (RANGE BLOCK)');
1143: QP_PREQ_GRP.engine_debug('OPERAND_VALUE: '|| v_related_request_lines(k).OPERAND_VALUE); --shu debug 2388011
1144: QP_PREQ_GRP.engine_debug('LINE_QTY: '|| v_related_request_lines(k).LINE_QTY); --shu debug 2388011
1145: QP_PREQ_GRP.engine_debug('l_qualifier_value (p_request_qty)'|| l_qualifier_value); --shu debug 2388011
1146: END IF;

Line 1143: QP_PREQ_GRP.engine_debug('OPERAND_VALUE: '|| v_related_request_lines(k).OPERAND_VALUE); --shu debug 2388011

1139:
1140: ELSE -- DIS/SUR/FREIGHT_CHARGE
1141: IF l_debug = FND_API.G_TRUE THEN
1142: QP_PREQ_GRP.engine_debug('I am in Discount Break (RANGE BLOCK)');
1143: QP_PREQ_GRP.engine_debug('OPERAND_VALUE: '|| v_related_request_lines(k).OPERAND_VALUE); --shu debug 2388011
1144: QP_PREQ_GRP.engine_debug('LINE_QTY: '|| v_related_request_lines(k).LINE_QTY); --shu debug 2388011
1145: QP_PREQ_GRP.engine_debug('l_qualifier_value (p_request_qty)'|| l_qualifier_value); --shu debug 2388011
1146: END IF;
1147:

Line 1144: QP_PREQ_GRP.engine_debug('LINE_QTY: '|| v_related_request_lines(k).LINE_QTY); --shu debug 2388011

1140: ELSE -- DIS/SUR/FREIGHT_CHARGE
1141: IF l_debug = FND_API.G_TRUE THEN
1142: QP_PREQ_GRP.engine_debug('I am in Discount Break (RANGE BLOCK)');
1143: QP_PREQ_GRP.engine_debug('OPERAND_VALUE: '|| v_related_request_lines(k).OPERAND_VALUE); --shu debug 2388011
1144: QP_PREQ_GRP.engine_debug('LINE_QTY: '|| v_related_request_lines(k).LINE_QTY); --shu debug 2388011
1145: QP_PREQ_GRP.engine_debug('l_qualifier_value (p_request_qty)'|| l_qualifier_value); --shu debug 2388011
1146: END IF;
1147:
1148: --p_request_qty => l_qualifier_value,

Line 1145: QP_PREQ_GRP.engine_debug('l_qualifier_value (p_request_qty)'|| l_qualifier_value); --shu debug 2388011

1141: IF l_debug = FND_API.G_TRUE THEN
1142: QP_PREQ_GRP.engine_debug('I am in Discount Break (RANGE BLOCK)');
1143: QP_PREQ_GRP.engine_debug('OPERAND_VALUE: '|| v_related_request_lines(k).OPERAND_VALUE); --shu debug 2388011
1144: QP_PREQ_GRP.engine_debug('LINE_QTY: '|| v_related_request_lines(k).LINE_QTY); --shu debug 2388011
1145: QP_PREQ_GRP.engine_debug('l_qualifier_value (p_request_qty)'|| l_qualifier_value); --shu debug 2388011
1146: END IF;
1147:
1148: --p_request_qty => l_qualifier_value,
1149: -- 2388011, range break should be total amount not l_satisfied_value

Line 1164: p_rounding_flag => QP_PREQ_GRP.G_ROUNDING_FLAG,

1160: p_operand_value => v_related_request_lines(k).OPERAND_VALUE,
1161: p_list_line_type => v_related_request_lines(k).RELATED_LIST_LINE_TYPE,
1162: p_request_qty => v_related_request_lines(k).LINE_QTY, --always satisfied qty
1163: p_accrual_flag => v_related_request_lines(k).ACCRUAL_FLAG,
1164: p_rounding_flag => QP_PREQ_GRP.G_ROUNDING_FLAG,
1165: p_rounding_factor => p_rounding_factor,
1166: p_orig_unit_price => p_list_price,
1167: x_discounted_price => x_discounted_price, -- Output Discounted Price
1168: x_adjusted_amount => x_adjusted_amount, -- Discount amount for this line

Line 1182: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || x_adjusted_amount);

1178:
1179: -- This is the final list price after break evaluation
1180: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_adjusted_amount;
1181: IF l_debug = FND_API.G_TRUE THEN
1182: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || x_adjusted_amount);
1183: END IF;
1184: END IF;
1185:
1186: v_count := v_count + 1;

Line 1192: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

1188:
1189: -- Store the break line which did not satisfy with qty 0
1190: v_related_request_lines(k).LINE_QTY := 0;
1191: -- This is the final list price or selling price after break evaluation
1192: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
1193:
1194: Calculate_List_Price_PVT(p_related_request_lines(k).OPERAND_CALCULATION_CODE,
1195: p_related_request_lines(k).OPERAND_VALUE,
1196: p_related_request_lines(k).RECURRING_VALUE, -- block pricing

Line 1200: QP_PREQ_GRP.G_ROUNDING_FLAG,

1196: p_related_request_lines(k).RECURRING_VALUE, -- block pricing
1197: 0,
1198: p_related_item_price,
1199: p_service_duration,
1200: QP_PREQ_GRP.G_ROUNDING_FLAG,
1201: NULL, -- fix bug 2724697, null rounding_factor so operand does not get rounded, it will be rounded later at Average Out PBH Lines
1202: x_list_price,
1203: x_percent_price,
1204: x_extended_price,

Line 1214: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = qp_preq_grp.G_BLOCK_PRICE) THEN

1210: END IF;
1211:
1212: -- This is the final list price after break evaluation
1213: -- modified for block pricing
1214: IF (p_related_request_lines(k).OPERAND_CALCULATION_CODE = qp_preq_grp.G_BLOCK_PRICE) THEN
1215: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_extended_price;
1216: ELSE
1217: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_list_price;
1218: END IF;

Line 1221: QP_PREQ_GRP.engine_debug('List Line Price: ' || x_list_price);

1217: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_list_price;
1218: END IF;
1219:
1220: IF l_debug = FND_API.G_TRUE THEN
1221: QP_PREQ_GRP.engine_debug('List Line Price: ' || x_list_price);
1222: END IF;
1223:
1224: ELSE -- DIS/SUR/FREIGHT_CHARGE
1225:

Line 1238: p_rounding_flag => QP_PREQ_GRP.G_ROUNDING_FLAG,

1234: p_operand_value => v_related_request_lines(k).OPERAND_VALUE,
1235: p_list_line_type => v_related_request_lines(k).RELATED_LIST_LINE_TYPE,
1236: p_request_qty => 0,
1237: p_accrual_flag => v_related_request_lines(k).ACCRUAL_FLAG,
1238: p_rounding_flag => QP_PREQ_GRP.G_ROUNDING_FLAG,
1239: p_rounding_factor => p_rounding_factor,
1240: p_orig_unit_price => p_list_price,
1241: x_discounted_price => x_discounted_price, -- Output Discounted Price
1242: x_adjusted_amount => x_adjusted_amount, -- Discount amount for this line

Line 1256: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || x_adjusted_amount);

1252:
1253: -- This is the final list price after break evaluation
1254: v_related_request_lines(k).ADJUSTMENT_AMOUNT := x_adjusted_amount;
1255: IF l_debug = FND_API.G_TRUE THEN
1256: QP_PREQ_GRP.engine_debug('Adjusted Line Amount: ' || x_adjusted_amount);
1257: END IF;
1258: END IF;
1259:
1260: v_count := v_count + 1;

Line 1272: QP_PREQ_GRP.engine_debug('.........Average out value for the PBH line........ ' );

1268:
1269: -- This needs to be done only to get the averaged out value for the PBH Line
1270: IF (v_related_request_lines.COUNT > 0) THEN
1271: IF l_debug = FND_API.G_TRUE THEN
1272: QP_PREQ_GRP.engine_debug('.........Average out value for the PBH line........ ' );
1273: END IF;
1274: v_index := v_related_request_lines.FIRST;
1275: WHILE (v_index IS NOT NULL)
1276: LOOP

Line 1279: QP_PREQ_GRP.engine_debug('p_list_line_index '|| p_list_line_index ); -- shu debug 2388011

1275: WHILE (v_index IS NOT NULL)
1276: LOOP
1277: IF (v_related_request_lines(v_index).LINE_DETAIL_INDEX = p_list_line_index) THEN
1278: IF l_debug = FND_API.G_TRUE THEN
1279: QP_PREQ_GRP.engine_debug('p_list_line_index '|| p_list_line_index ); -- shu debug 2388011
1280: QP_PREQ_GRP.engine_debug('p_list_line_qty: '|| p_list_line_qty ); -- shu debug 2388011
1281: QP_PREQ_GRP.engine_debug('p_actual_line_qty: '|| p_actual_line_qty ); -- shu debug 2388011
1282: END IF;
1283:

Line 1280: QP_PREQ_GRP.engine_debug('p_list_line_qty: '|| p_list_line_qty ); -- shu debug 2388011

1276: LOOP
1277: IF (v_related_request_lines(v_index).LINE_DETAIL_INDEX = p_list_line_index) THEN
1278: IF l_debug = FND_API.G_TRUE THEN
1279: QP_PREQ_GRP.engine_debug('p_list_line_index '|| p_list_line_index ); -- shu debug 2388011
1280: QP_PREQ_GRP.engine_debug('p_list_line_qty: '|| p_list_line_qty ); -- shu debug 2388011
1281: QP_PREQ_GRP.engine_debug('p_actual_line_qty: '|| p_actual_line_qty ); -- shu debug 2388011
1282: END IF;
1283:
1284: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

Line 1281: QP_PREQ_GRP.engine_debug('p_actual_line_qty: '|| p_actual_line_qty ); -- shu debug 2388011

1277: IF (v_related_request_lines(v_index).LINE_DETAIL_INDEX = p_list_line_index) THEN
1278: IF l_debug = FND_API.G_TRUE THEN
1279: QP_PREQ_GRP.engine_debug('p_list_line_index '|| p_list_line_index ); -- shu debug 2388011
1280: QP_PREQ_GRP.engine_debug('p_list_line_qty: '|| p_list_line_qty ); -- shu debug 2388011
1281: QP_PREQ_GRP.engine_debug('p_actual_line_qty: '|| p_actual_line_qty ); -- shu debug 2388011
1282: END IF;
1283:
1284: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
1285: -- modified for block pricing

Line 1284: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

1280: QP_PREQ_GRP.engine_debug('p_list_line_qty: '|| p_list_line_qty ); -- shu debug 2388011
1281: QP_PREQ_GRP.engine_debug('p_actual_line_qty: '|| p_actual_line_qty ); -- shu debug 2388011
1282: END IF;
1283:
1284: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
1285: -- modified for block pricing
1286: IF (v_related_request_lines(v_index).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_BLOCK_PRICE) THEN
1287: IF (v_related_request_lines(v_index).LINE_QTY <> 0) THEN
1288: v_total_amount := v_total_amount + v_related_request_lines(v_index).ADJUSTMENT_AMOUNT;

Line 1286: IF (v_related_request_lines(v_index).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_BLOCK_PRICE) THEN

1282: END IF;
1283:
1284: IF (p_pbh_type IN (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
1285: -- modified for block pricing
1286: IF (v_related_request_lines(v_index).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_BLOCK_PRICE) THEN
1287: IF (v_related_request_lines(v_index).LINE_QTY <> 0) THEN
1288: v_total_amount := v_total_amount + v_related_request_lines(v_index).ADJUSTMENT_AMOUNT;
1289:
1290: -- fix for OM Pricing/Availability

Line 1322: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN

1318: x_pbh_extended_price := 0; -- block pricing
1319:
1320: END IF;
1321:
1322: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN
1323: x_pbh_list_price := ROUND (x_pbh_list_price, p_rounding_factor); -- Divide by grp amount/unit or group quantity
1324: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile
1325: l_price_round_options := nvl(FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'), QP_Calculate_Price_PUB.G_NO_ROUND);
1326: IF (l_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN

Line 1324: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile

1320: END IF;
1321:
1322: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES AND p_rounding_factor IS NOT NULL) THEN
1323: x_pbh_list_price := ROUND (x_pbh_list_price, p_rounding_factor); -- Divide by grp amount/unit or group quantity
1324: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile
1325: l_price_round_options := nvl(FND_PROFILE.VALUE('QP_SELLING_PRICE_ROUNDING_OPTIONS'), QP_Calculate_Price_PUB.G_NO_ROUND);
1326: IF (l_price_round_options = G_ROUND_ADJ AND p_rounding_factor IS NOT NULL) THEN
1327: x_pbh_list_price := ROUND (x_pbh_list_price, p_rounding_factor); -- Divide by grp amount/unit or group quantity
1328: END IF; -- end if G_ROUND_ADJ

Line 1332: QP_PREQ_GRP.engine_debug('x_pbh_list_price: '|| x_pbh_list_price);

1328: END IF; -- end if G_ROUND_ADJ
1329: END IF; --end if rounding stuff
1330:
1331: IF l_debug = FND_API.G_TRUE THEN
1332: QP_PREQ_GRP.engine_debug('x_pbh_list_price: '|| x_pbh_list_price);
1333: END IF; -- END IF l_debug
1334:
1335:
1336: ELSE

Line 1340: QP_PREQ_GRP.engine_debug ('v_index: '|| v_index); --2388011

1336: ELSE
1337: v_total_amount := v_total_amount + (v_related_request_lines(v_index).LINE_QTY *
1338: v_related_request_lines(v_index).ADJUSTMENT_AMOUNT);
1339: IF l_debug = FND_API.G_TRUE THEN
1340: QP_PREQ_GRP.engine_debug ('v_index: '|| v_index); --2388011
1341: QP_PREQ_GRP.engine_debug ('LINE_QTY : '|| v_related_request_lines(v_index).LINE_QTY ); --2388011
1342: QP_PREQ_GRP.engine_debug ('ADJUSTMENT_AMOUNT for the line: '|| v_related_request_lines(v_index).ADJUSTMENT_AMOUNT); --2388011
1343: QP_PREQ_GRP.engine_debug ('v_total_amount for now: '|| v_total_amount); --2388011
1344: END IF; -- END IF l_debug = FND_API.G_TRUE

Line 1341: QP_PREQ_GRP.engine_debug ('LINE_QTY : '|| v_related_request_lines(v_index).LINE_QTY ); --2388011

1337: v_total_amount := v_total_amount + (v_related_request_lines(v_index).LINE_QTY *
1338: v_related_request_lines(v_index).ADJUSTMENT_AMOUNT);
1339: IF l_debug = FND_API.G_TRUE THEN
1340: QP_PREQ_GRP.engine_debug ('v_index: '|| v_index); --2388011
1341: QP_PREQ_GRP.engine_debug ('LINE_QTY : '|| v_related_request_lines(v_index).LINE_QTY ); --2388011
1342: QP_PREQ_GRP.engine_debug ('ADJUSTMENT_AMOUNT for the line: '|| v_related_request_lines(v_index).ADJUSTMENT_AMOUNT); --2388011
1343: QP_PREQ_GRP.engine_debug ('v_total_amount for now: '|| v_total_amount); --2388011
1344: END IF; -- END IF l_debug = FND_API.G_TRUE
1345:

Line 1342: QP_PREQ_GRP.engine_debug ('ADJUSTMENT_AMOUNT for the line: '|| v_related_request_lines(v_index).ADJUSTMENT_AMOUNT); --2388011

1338: v_related_request_lines(v_index).ADJUSTMENT_AMOUNT);
1339: IF l_debug = FND_API.G_TRUE THEN
1340: QP_PREQ_GRP.engine_debug ('v_index: '|| v_index); --2388011
1341: QP_PREQ_GRP.engine_debug ('LINE_QTY : '|| v_related_request_lines(v_index).LINE_QTY ); --2388011
1342: QP_PREQ_GRP.engine_debug ('ADJUSTMENT_AMOUNT for the line: '|| v_related_request_lines(v_index).ADJUSTMENT_AMOUNT); --2388011
1343: QP_PREQ_GRP.engine_debug ('v_total_amount for now: '|| v_total_amount); --2388011
1344: END IF; -- END IF l_debug = FND_API.G_TRUE
1345:
1346: -- begin 2388011_new, grp_lines_pbh,

Line 1343: QP_PREQ_GRP.engine_debug ('v_total_amount for now: '|| v_total_amount); --2388011

1339: IF l_debug = FND_API.G_TRUE THEN
1340: QP_PREQ_GRP.engine_debug ('v_index: '|| v_index); --2388011
1341: QP_PREQ_GRP.engine_debug ('LINE_QTY : '|| v_related_request_lines(v_index).LINE_QTY ); --2388011
1342: QP_PREQ_GRP.engine_debug ('ADJUSTMENT_AMOUNT for the line: '|| v_related_request_lines(v_index).ADJUSTMENT_AMOUNT); --2388011
1343: QP_PREQ_GRP.engine_debug ('v_total_amount for now: '|| v_total_amount); --2388011
1344: END IF; -- END IF l_debug = FND_API.G_TRUE
1345:
1346: -- begin 2388011_new, grp_lines_pbh,
1347:

Line 1360: QP_PREQ_GRP.engine_debug ('p_list_line_qty: '|| p_list_line_qty); --2388011

1356:
1357: END IF;
1358:
1359: IF l_debug = FND_API.G_TRUE THEN
1360: QP_PREQ_GRP.engine_debug ('p_list_line_qty: '|| p_list_line_qty); --2388011
1361: QP_PREQ_GRP.engine_debug ('x_adjustment_amount: '|| x_adjustment_amount); --2388011
1362: END IF; -- END IF l_debug = FND_API.G_TRUE
1363: -- end 2388011, grp_lines_pbh
1364:

Line 1361: QP_PREQ_GRP.engine_debug ('x_adjustment_amount: '|| x_adjustment_amount); --2388011

1357: END IF;
1358:
1359: IF l_debug = FND_API.G_TRUE THEN
1360: QP_PREQ_GRP.engine_debug ('p_list_line_qty: '|| p_list_line_qty); --2388011
1361: QP_PREQ_GRP.engine_debug ('x_adjustment_amount: '|| x_adjustment_amount); --2388011
1362: END IF; -- END IF l_debug = FND_API.G_TRUE
1363: -- end 2388011, grp_lines_pbh
1364:
1365: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER...

Line 1365: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER...

1361: QP_PREQ_GRP.engine_debug ('x_adjustment_amount: '|| x_adjustment_amount); --2388011
1362: END IF; -- END IF l_debug = FND_API.G_TRUE
1363: -- end 2388011, grp_lines_pbh
1364:
1365: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER...
1366:
1367: IF l_debug = FND_API.G_TRUE THEN
1368: QP_PREQ_GRP.engine_debug ('Total Amount : ' || v_total_amount);
1369: QP_PREQ_GRP.engine_debug ('Total Qty : ' || v_ord_qty);

Line 1368: QP_PREQ_GRP.engine_debug ('Total Amount : ' || v_total_amount);

1364:
1365: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER...
1366:
1367: IF l_debug = FND_API.G_TRUE THEN
1368: QP_PREQ_GRP.engine_debug ('Total Amount : ' || v_total_amount);
1369: QP_PREQ_GRP.engine_debug ('Total Qty : ' || v_ord_qty);
1370: QP_PREQ_GRP.engine_debug ('Total Adjustment : ' || x_adjustment_amount);
1371: END IF; -- END IF l_debug = FND_API.G_TRUE THEN
1372: END IF;

Line 1369: QP_PREQ_GRP.engine_debug ('Total Qty : ' || v_ord_qty);

1365: END IF; -- END IF (p_pbh_type in (QP_PREQ_GRP.G_PRICE_LIST_HEADER...
1366:
1367: IF l_debug = FND_API.G_TRUE THEN
1368: QP_PREQ_GRP.engine_debug ('Total Amount : ' || v_total_amount);
1369: QP_PREQ_GRP.engine_debug ('Total Qty : ' || v_ord_qty);
1370: QP_PREQ_GRP.engine_debug ('Total Adjustment : ' || x_adjustment_amount);
1371: END IF; -- END IF l_debug = FND_API.G_TRUE THEN
1372: END IF;
1373:

Line 1370: QP_PREQ_GRP.engine_debug ('Total Adjustment : ' || x_adjustment_amount);

1366:
1367: IF l_debug = FND_API.G_TRUE THEN
1368: QP_PREQ_GRP.engine_debug ('Total Amount : ' || v_total_amount);
1369: QP_PREQ_GRP.engine_debug ('Total Qty : ' || v_ord_qty);
1370: QP_PREQ_GRP.engine_debug ('Total Adjustment : ' || x_adjustment_amount);
1371: END IF; -- END IF l_debug = FND_API.G_TRUE THEN
1372: END IF;
1373:
1374: EXIT WHEN v_index = v_related_request_lines.LAST;

Line 1382: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || x_ret_status_txt);

1378: x_related_request_lines_tbl := v_related_request_lines;
1379: EXCEPTION
1380: WHEN FND_API.G_EXC_ERROR THEN
1381: IF l_debug = FND_API.G_TRUE THEN
1382: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || x_ret_status_txt);
1383: END IF;
1384: x_return_status := FND_API.G_RET_STS_ERROR;
1385: x_return_status_txt := x_ret_status_txt;
1386: WHEN OTHERS THEN

Line 1388: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);

1384: x_return_status := FND_API.G_RET_STS_ERROR;
1385: x_return_status_txt := x_ret_status_txt;
1386: WHEN OTHERS THEN
1387: IF l_debug = FND_API.G_TRUE THEN
1388: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);
1389: END IF;
1390: x_return_status := FND_API.G_RET_STS_ERROR;
1391: x_return_status_txt := v_routine_name || ' ' || SQLERRM;
1392: END Process_Price_Break;

Line 1405: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

1401:
1402: l_routine VARCHAR2(50) := 'QP_Calculate_Price_PUB.Calculate_Adjustment';
1403:
1404: BEGIN
1405: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
1406: IF l_debug = FND_API.G_TRUE THEN
1407: QP_PREQ_GRP.ENGINE_DEBUG('In Routine: ' || l_routine);
1408:
1409: -- begin 2892848

Line 1407: QP_PREQ_GRP.ENGINE_DEBUG('In Routine: ' || l_routine);

1403:
1404: BEGIN
1405: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
1406: IF l_debug = FND_API.G_TRUE THEN
1407: QP_PREQ_GRP.ENGINE_DEBUG('In Routine: ' || l_routine);
1408:
1409: -- begin 2892848
1410: QP_PREQ_GRP.ENGINE_DEBUG('p_price: ' || p_price);
1411: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_calculation_code: ' || p_operand_calculation_code);

Line 1410: QP_PREQ_GRP.ENGINE_DEBUG('p_price: ' || p_price);

1406: IF l_debug = FND_API.G_TRUE THEN
1407: QP_PREQ_GRP.ENGINE_DEBUG('In Routine: ' || l_routine);
1408:
1409: -- begin 2892848
1410: QP_PREQ_GRP.ENGINE_DEBUG('p_price: ' || p_price);
1411: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_calculation_code: ' || p_operand_calculation_code);
1412: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_value: ' || p_operand_value);
1413: QP_PREQ_GRP.ENGINE_DEBUG('p_priced_quantity: ' || p_priced_quantity);
1414: -- end 2892848

Line 1411: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_calculation_code: ' || p_operand_calculation_code);

1407: QP_PREQ_GRP.ENGINE_DEBUG('In Routine: ' || l_routine);
1408:
1409: -- begin 2892848
1410: QP_PREQ_GRP.ENGINE_DEBUG('p_price: ' || p_price);
1411: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_calculation_code: ' || p_operand_calculation_code);
1412: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_value: ' || p_operand_value);
1413: QP_PREQ_GRP.ENGINE_DEBUG('p_priced_quantity: ' || p_priced_quantity);
1414: -- end 2892848
1415:

Line 1412: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_value: ' || p_operand_value);

1408:
1409: -- begin 2892848
1410: QP_PREQ_GRP.ENGINE_DEBUG('p_price: ' || p_price);
1411: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_calculation_code: ' || p_operand_calculation_code);
1412: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_value: ' || p_operand_value);
1413: QP_PREQ_GRP.ENGINE_DEBUG('p_priced_quantity: ' || p_priced_quantity);
1414: -- end 2892848
1415:
1416: END IF;

Line 1413: QP_PREQ_GRP.ENGINE_DEBUG('p_priced_quantity: ' || p_priced_quantity);

1409: -- begin 2892848
1410: QP_PREQ_GRP.ENGINE_DEBUG('p_price: ' || p_price);
1411: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_calculation_code: ' || p_operand_calculation_code);
1412: QP_PREQ_GRP.ENGINE_DEBUG('p_operand_value: ' || p_operand_value);
1413: QP_PREQ_GRP.ENGINE_DEBUG('p_priced_quantity: ' || p_priced_quantity);
1414: -- end 2892848
1415:
1416: END IF;
1417: IF p_operand_calculation_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT THEN

Line 1417: IF p_operand_calculation_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT THEN

1413: QP_PREQ_GRP.ENGINE_DEBUG('p_priced_quantity: ' || p_priced_quantity);
1414: -- end 2892848
1415:
1416: END IF;
1417: IF p_operand_calculation_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT THEN
1418: -- x_calc_adjustment := abs(p_price) * p_operand_value / 100; bug 6122488
1419: x_calc_adjustment := p_price * p_operand_value / 100;
1420: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_AMOUNT_DISCOUNT THEN
1421: x_calc_adjustment := p_operand_value;

Line 1420: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_AMOUNT_DISCOUNT THEN

1416: END IF;
1417: IF p_operand_calculation_code = QP_PREQ_GRP.G_PERCENT_DISCOUNT THEN
1418: -- x_calc_adjustment := abs(p_price) * p_operand_value / 100; bug 6122488
1419: x_calc_adjustment := p_price * p_operand_value / 100;
1420: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_AMOUNT_DISCOUNT THEN
1421: x_calc_adjustment := p_operand_value;
1422: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT THEN
1423: x_calc_adjustment := (abs(p_price) - p_operand_value);
1424: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN

Line 1422: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT THEN

1418: -- x_calc_adjustment := abs(p_price) * p_operand_value / 100; bug 6122488
1419: x_calc_adjustment := p_price * p_operand_value / 100;
1420: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_AMOUNT_DISCOUNT THEN
1421: x_calc_adjustment := p_operand_value;
1422: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT THEN
1423: x_calc_adjustment := (abs(p_price) - p_operand_value);
1424: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN
1425: -- [julin/4571612/4671446] explicitly set FND_API.G_NULL_NUM qty means infinity; this qty and zero qty yield no adj
1426: IF (p_priced_quantity = FND_API.G_NULL_NUM OR p_priced_quantity = 0) THEN

Line 1424: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN

1420: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_AMOUNT_DISCOUNT THEN
1421: x_calc_adjustment := p_operand_value;
1422: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT THEN
1423: x_calc_adjustment := (abs(p_price) - p_operand_value);
1424: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN
1425: -- [julin/4571612/4671446] explicitly set FND_API.G_NULL_NUM qty means infinity; this qty and zero qty yield no adj
1426: IF (p_priced_quantity = FND_API.G_NULL_NUM OR p_priced_quantity = 0) THEN
1427: x_calc_adjustment := 0;
1428: ELSE

Line 1431: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE THEN

1427: x_calc_adjustment := 0;
1428: ELSE
1429: x_calc_adjustment := p_operand_value / p_priced_quantity;
1430: END IF;
1431: ELSIF p_operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE THEN
1432: x_calc_adjustment := p_operand_value; -- FTE breakunit
1433: END IF;
1434:
1435: x_return_status := FND_API.G_RET_STS_SUCCESS;

Line 1439: QP_PREQ_GRP.ENGINE_DEBUG('Out of Routine: ' || l_routine);

1435: x_return_status := FND_API.G_RET_STS_SUCCESS;
1436: x_return_status_text := l_routine ||' SUCCESS';
1437:
1438: IF l_debug = FND_API.G_TRUE THEN
1439: QP_PREQ_GRP.ENGINE_DEBUG('Out of Routine: ' || l_routine);
1440:
1441: END IF;
1442: EXCEPTION
1443: WHEN OTHERS THEN

Line 1445: QP_PREQ_GRP.ENGINE_DEBUG('Error in calculating bucket price '|| SQLERRM);

1441: END IF;
1442: EXCEPTION
1443: WHEN OTHERS THEN
1444: IF l_debug = FND_API.G_TRUE THEN
1445: QP_PREQ_GRP.ENGINE_DEBUG('Error in calculating bucket price '|| SQLERRM);
1446: END IF;
1447: x_return_status := FND_API.G_RET_STS_ERROR;
1448: x_return_status_text := l_routine ||' '|| SQLERRM;
1449: END Calculate_Adjustment;

Line 1484: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW;

1480: CURSOR l_req_line_attrs_cur(p_list_line_id NUMBER) IS
1481: SELECT line_index, attribute_type, context, attribute, value_from, grouping_number
1482: FROM qp_npreq_line_attrs_tmp
1483: WHERE list_line_id = p_list_line_id
1484: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW;
1485:
1486: BEGIN
1487:
1488: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

Line 1488: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

1484: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW;
1485:
1486: BEGIN
1487:
1488: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
1489: IF l_debug = FND_API.G_TRUE THEN
1490: QP_PREQ_GRP.engine_debug('In Procedure : Get_Satisfied_Range');
1491: QP_PREQ_GRP.engine_debug(' continuous_flag = '|| p_continuous_flag);
1492: QP_PREQ_GRP.engine_debug(' prorated_flag = '|| p_prorated_flag);

Line 1490: QP_PREQ_GRP.engine_debug('In Procedure : Get_Satisfied_Range');

1486: BEGIN
1487:
1488: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
1489: IF l_debug = FND_API.G_TRUE THEN
1490: QP_PREQ_GRP.engine_debug('In Procedure : Get_Satisfied_Range');
1491: QP_PREQ_GRP.engine_debug(' continuous_flag = '|| p_continuous_flag);
1492: QP_PREQ_GRP.engine_debug(' prorated_flag = '|| p_prorated_flag);
1493: END IF;
1494: l_value_from_precision := power(10, - (length(to_char(abs(p_value_from) - trunc(abs(p_value_from)))) - 1));

Line 1491: QP_PREQ_GRP.engine_debug(' continuous_flag = '|| p_continuous_flag);

1487:
1488: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
1489: IF l_debug = FND_API.G_TRUE THEN
1490: QP_PREQ_GRP.engine_debug('In Procedure : Get_Satisfied_Range');
1491: QP_PREQ_GRP.engine_debug(' continuous_flag = '|| p_continuous_flag);
1492: QP_PREQ_GRP.engine_debug(' prorated_flag = '|| p_prorated_flag);
1493: END IF;
1494: l_value_from_precision := power(10, - (length(to_char(abs(p_value_from) - trunc(abs(p_value_from)))) - 1));
1495:

Line 1492: QP_PREQ_GRP.engine_debug(' prorated_flag = '|| p_prorated_flag);

1488: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
1489: IF l_debug = FND_API.G_TRUE THEN
1490: QP_PREQ_GRP.engine_debug('In Procedure : Get_Satisfied_Range');
1491: QP_PREQ_GRP.engine_debug(' continuous_flag = '|| p_continuous_flag);
1492: QP_PREQ_GRP.engine_debug(' prorated_flag = '|| p_prorated_flag);
1493: END IF;
1494: l_value_from_precision := power(10, - (length(to_char(abs(p_value_from) - trunc(abs(p_value_from)))) - 1));
1495:
1496: l_value_to_precision := power(10, - (length(to_char(abs(p_value_to) - trunc(abs(p_value_to)))) - 1));

Line 1519: IF (nvl(FND_PROFILE.VALUE('QP_ACCUM_ATTR_ENABLED'), QP_PREQ_GRP.G_NO) = QP_PREQ_GRP.G_YES AND

1515: ELSE
1516: l_value_from := p_value_from;
1517: END IF;
1518:
1519: IF (nvl(FND_PROFILE.VALUE('QP_ACCUM_ATTR_ENABLED'), QP_PREQ_GRP.G_NO) = QP_PREQ_GRP.G_YES AND
1520: p_list_line_id IS NOT NULL AND
1521: nvl(QP_PREQ_PUB.G_CALL_FROM_PRICE_BOOK, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES) -- price book
1522: THEN
1523: -- fetch accumulation attribute

Line 1521: nvl(QP_PREQ_PUB.G_CALL_FROM_PRICE_BOOK, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES) -- price book

1517: END IF;
1518:
1519: IF (nvl(FND_PROFILE.VALUE('QP_ACCUM_ATTR_ENABLED'), QP_PREQ_GRP.G_NO) = QP_PREQ_GRP.G_YES AND
1520: p_list_line_id IS NOT NULL AND
1521: nvl(QP_PREQ_PUB.G_CALL_FROM_PRICE_BOOK, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES) -- price book
1522: THEN
1523: -- fetch accumulation attribute
1524: -- these are "cached" on the basis of list_line_id
1525: -- if list_line_id changes, then need to retrieve values from temp table

Line 1529: QP_PREQ_GRP.engine_debug(' list_line_id = '|| p_list_line_id ||', prev = '|| l_prev_list_line_id);

1525: -- if list_line_id changes, then need to retrieve values from temp table
1526: -- else use previously cached values
1527: IF (p_list_line_id = l_prev_list_line_id) THEN
1528: IF l_debug = FND_API.G_TRUE THEN
1529: QP_PREQ_GRP.engine_debug(' list_line_id = '|| p_list_line_id ||', prev = '|| l_prev_list_line_id);
1530: END IF;
1531: l_accum_context := l_accum_context_cache;
1532: l_accum_attrib := l_accum_attrib_cache;
1533: l_accum_flag := l_accum_flag_cache;

Line 1536: QP_PREQ_GRP.engine_debug(' using cached values for accum context, attribute, etc.');

1532: l_accum_attrib := l_accum_attrib_cache;
1533: l_accum_flag := l_accum_flag_cache;
1534: v_list_line_no := l_accum_list_line_no_cache;
1535: IF l_debug = FND_API.G_TRUE THEN
1536: QP_PREQ_GRP.engine_debug(' using cached values for accum context, attribute, etc.');
1537: END IF;
1538: ELSE
1539: BEGIN
1540: SELECT accum_context, accum_attribute, accum_attr_run_src_flag, list_line_no

Line 1550: QP_PREQ_GRP.engine_debug(' No rows returned for list line ID '|| p_list_line_id);

1546: -- and rownum = 1;
1547: EXCEPTION
1548: WHEN NO_DATA_FOUND THEN
1549: IF l_debug = FND_API.G_TRUE THEN
1550: QP_PREQ_GRP.engine_debug(' No rows returned for list line ID '|| p_list_line_id);
1551: END IF;
1552: END;
1553:
1554: IF l_debug = FND_API.G_TRUE THEN

Line 1555: QP_PREQ_GRP.engine_debug(' accum context, attribute, etc. not cached');

1551: END IF;
1552: END;
1553:
1554: IF l_debug = FND_API.G_TRUE THEN
1555: QP_PREQ_GRP.engine_debug(' accum context, attribute, etc. not cached');
1556: END IF;
1557: -- cache the values
1558: l_accum_context_cache := l_accum_context;
1559: l_accum_attrib_cache := l_accum_attrib;

Line 1569: QP_PREQ_GRP.engine_debug(' no accum attribute specified.');

1565: -- conceptually, this means no accumulation processing
1566: -- in this code, we set accum=0 and let accumulation processing fall through
1567: l_accum := 0;
1568: IF l_debug = FND_API.G_TRUE THEN
1569: QP_PREQ_GRP.engine_debug(' no accum attribute specified.');
1570: END IF;
1571: ELSE
1572: IF l_debug = FND_API.G_TRUE THEN
1573: QP_PREQ_GRP.engine_debug(' accum attribute = '|| l_accum_attrib);

Line 1573: QP_PREQ_GRP.engine_debug(' accum attribute = '|| l_accum_attrib);

1569: QP_PREQ_GRP.engine_debug(' no accum attribute specified.');
1570: END IF;
1571: ELSE
1572: IF l_debug = FND_API.G_TRUE THEN
1573: QP_PREQ_GRP.engine_debug(' accum attribute = '|| l_accum_attrib);
1574: QP_PREQ_GRP.engine_debug(' line index = '|| l_line_index);
1575: END IF;
1576:
1577: -- try to get accum value from request line

Line 1574: QP_PREQ_GRP.engine_debug(' line index = '|| l_line_index);

1570: END IF;
1571: ELSE
1572: IF l_debug = FND_API.G_TRUE THEN
1573: QP_PREQ_GRP.engine_debug(' accum attribute = '|| l_accum_attrib);
1574: QP_PREQ_GRP.engine_debug(' line index = '|| l_line_index);
1575: END IF;
1576:
1577: -- try to get accum value from request line
1578: BEGIN

Line 1585: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_UNCHANGED;

1581: FROM qp_npreq_line_attrs_tmp
1582: WHERE line_index = l_line_index -- (l_line_index is a global package variable)
1583: AND context = l_accum_context
1584: AND attribute = l_accum_attrib
1585: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_UNCHANGED;
1586:
1587: IF l_debug = FND_API.G_TRUE THEN
1588: QP_PREQ_GRP.engine_debug(' accum value '|| l_accum ||' passed on request line.');
1589: END IF;

Line 1588: QP_PREQ_GRP.engine_debug(' accum value '|| l_accum ||' passed on request line.');

1584: AND attribute = l_accum_attrib
1585: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_UNCHANGED;
1586:
1587: IF l_debug = FND_API.G_TRUE THEN
1588: QP_PREQ_GRP.engine_debug(' accum value '|| l_accum ||' passed on request line.');
1589: END IF;
1590: EXCEPTION
1591: WHEN NO_DATA_FOUND THEN
1592: IF l_debug = FND_API.G_TRUE THEN

Line 1593: QP_PREQ_GRP.engine_debug(' accum value not passed on request line.');

1589: END IF;
1590: EXCEPTION
1591: WHEN NO_DATA_FOUND THEN
1592: IF l_debug = FND_API.G_TRUE THEN
1593: QP_PREQ_GRP.engine_debug(' accum value not passed on request line.');
1594: END IF;
1595: -- accum value was not passed on request line
1596: IF l_accum_flag = 'Y'
1597: THEN

Line 1610: QP_PREQ_GRP.engine_debug(' * Calling Custom API for accumulation *');

1606: -- Another select needed for steps 2 and 3.
1607: -- Last select needed to get order id.
1608: ------------------------------------------------------
1609: IF l_debug = FND_API.G_TRUE THEN
1610: QP_PREQ_GRP.engine_debug(' * Calling Custom API for accumulation *');
1611: QP_PREQ_GRP.engine_debug(' request line attr(s):');
1612: END IF;
1613: FOR attrs IN l_req_line_attrs_cur(p_list_line_id) LOOP
1614: l_req_attrs_tbl(counter).line_index := attrs.line_index;

Line 1611: QP_PREQ_GRP.engine_debug(' request line attr(s):');

1607: -- Last select needed to get order id.
1608: ------------------------------------------------------
1609: IF l_debug = FND_API.G_TRUE THEN
1610: QP_PREQ_GRP.engine_debug(' * Calling Custom API for accumulation *');
1611: QP_PREQ_GRP.engine_debug(' request line attr(s):');
1612: END IF;
1613: FOR attrs IN l_req_line_attrs_cur(p_list_line_id) LOOP
1614: l_req_attrs_tbl(counter).line_index := attrs.line_index;
1615: l_req_attrs_tbl(counter).attribute_type := attrs.attribute_type;

Line 1621: QP_PREQ_GRP.engine_debug(' '|| counter ||': line index '|| attrs.line_index ||', '|| attrs.attribute_type

1617: l_req_attrs_tbl(counter).attribute := attrs.attribute;
1618: l_req_attrs_tbl(counter).VALUE := attrs.value_from;
1619: l_req_attrs_tbl(counter).grouping_no := attrs.grouping_number;
1620: IF l_debug = FND_API.G_TRUE THEN
1621: QP_PREQ_GRP.engine_debug(' '|| counter ||': line index '|| attrs.line_index ||', '|| attrs.attribute_type
1622: ||', '|| attrs.context ||', '|| attrs.attribute ||', '|| attrs.value_from
1623: ||', '|| attrs.grouping_number);
1624: END IF;
1625: counter := counter + 1;

Line 1630: IF QP_PREQ_GRP.G_ORDER_ID IS NULL THEN

1626: END LOOP;
1627:
1628: -- get the order (header) ID if it's null
1629: -- this should never happen, though
1630: IF QP_PREQ_GRP.G_ORDER_ID IS NULL THEN
1631: BEGIN
1632: SELECT line_id
1633: INTO QP_PREQ_GRP.G_ORDER_ID
1634: FROM qp_npreq_lines_tmp

Line 1633: INTO QP_PREQ_GRP.G_ORDER_ID

1629: -- this should never happen, though
1630: IF QP_PREQ_GRP.G_ORDER_ID IS NULL THEN
1631: BEGIN
1632: SELECT line_id
1633: INTO QP_PREQ_GRP.G_ORDER_ID
1634: FROM qp_npreq_lines_tmp
1635: WHERE line_type_code = QP_PREQ_GRP.G_ORDER_LEVEL;
1636: EXCEPTION
1637: WHEN NO_DATA_FOUND THEN

Line 1635: WHERE line_type_code = QP_PREQ_GRP.G_ORDER_LEVEL;

1631: BEGIN
1632: SELECT line_id
1633: INTO QP_PREQ_GRP.G_ORDER_ID
1634: FROM qp_npreq_lines_tmp
1635: WHERE line_type_code = QP_PREQ_GRP.G_ORDER_LEVEL;
1636: EXCEPTION
1637: WHEN NO_DATA_FOUND THEN
1638: IF l_debug = FND_API.G_TRUE THEN
1639: QP_PREQ_GRP.engine_debug(' - summary line not present; cannot get order ID');

Line 1639: QP_PREQ_GRP.engine_debug(' - summary line not present; cannot get order ID');

1635: WHERE line_type_code = QP_PREQ_GRP.G_ORDER_LEVEL;
1636: EXCEPTION
1637: WHEN NO_DATA_FOUND THEN
1638: IF l_debug = FND_API.G_TRUE THEN
1639: QP_PREQ_GRP.engine_debug(' - summary line not present; cannot get order ID');
1640: END IF;
1641: END;
1642: IF l_debug = FND_API.G_TRUE THEN
1643: QP_PREQ_GRP.engine_debug(' ^ G_ORDER_ID was null, select statement got value '|| QP_PREQ_GRP.G_ORDER_ID);

Line 1643: QP_PREQ_GRP.engine_debug(' ^ G_ORDER_ID was null, select statement got value '|| QP_PREQ_GRP.G_ORDER_ID);

1639: QP_PREQ_GRP.engine_debug(' - summary line not present; cannot get order ID');
1640: END IF;
1641: END;
1642: IF l_debug = FND_API.G_TRUE THEN
1643: QP_PREQ_GRP.engine_debug(' ^ G_ORDER_ID was null, select statement got value '|| QP_PREQ_GRP.G_ORDER_ID);
1644: END IF;
1645: END IF;
1646:
1647: -- get order line ID and pricing effective date

Line 1651: /*IF (QP_PREQ_GRP.G_LINE_ID IS NULL OR

1647: -- get order line ID and pricing effective date
1648: -- these values are "cached" on the basis of order_id and line_index
1649: -- if the composite line_index+order_id changes, then need to retrieve new line_id/eff date
1650: -- else use the previously cached values
1651: /*IF (QP_PREQ_GRP.G_LINE_ID IS NULL OR
1652: QP_PREQ_GRP.G_PRICE_EFF_DATE IS NULL OR
1653: -- 4613884 bugfix
1654: TO_CHAR(l_line_index || QP_PREQ_GRP.G_ORDER_ID) <> TO_CHAR(l_prev_line_index || l_prev_order_id))
1655: THEN*/

Line 1652: QP_PREQ_GRP.G_PRICE_EFF_DATE IS NULL OR

1648: -- these values are "cached" on the basis of order_id and line_index
1649: -- if the composite line_index+order_id changes, then need to retrieve new line_id/eff date
1650: -- else use the previously cached values
1651: /*IF (QP_PREQ_GRP.G_LINE_ID IS NULL OR
1652: QP_PREQ_GRP.G_PRICE_EFF_DATE IS NULL OR
1653: -- 4613884 bugfix
1654: TO_CHAR(l_line_index || QP_PREQ_GRP.G_ORDER_ID) <> TO_CHAR(l_prev_line_index || l_prev_order_id))
1655: THEN*/
1656: IF l_debug = FND_API.G_TRUE THEN

Line 1654: TO_CHAR(l_line_index || QP_PREQ_GRP.G_ORDER_ID) <> TO_CHAR(l_prev_line_index || l_prev_order_id))

1650: -- else use the previously cached values
1651: /*IF (QP_PREQ_GRP.G_LINE_ID IS NULL OR
1652: QP_PREQ_GRP.G_PRICE_EFF_DATE IS NULL OR
1653: -- 4613884 bugfix
1654: TO_CHAR(l_line_index || QP_PREQ_GRP.G_ORDER_ID) <> TO_CHAR(l_prev_line_index || l_prev_order_id))
1655: THEN*/
1656: IF l_debug = FND_API.G_TRUE THEN
1657: QP_PREQ_GRP.engine_debug(' need to cache line_id, price_eff_date!');
1658: QP_PREQ_GRP.engine_debug(' - order_id ('|| qp_preq_grp.G_ORDER_ID ||'), prev_order_id ('|| l_prev_order_id || ')');

Line 1657: QP_PREQ_GRP.engine_debug(' need to cache line_id, price_eff_date!');

1653: -- 4613884 bugfix
1654: TO_CHAR(l_line_index || QP_PREQ_GRP.G_ORDER_ID) <> TO_CHAR(l_prev_line_index || l_prev_order_id))
1655: THEN*/
1656: IF l_debug = FND_API.G_TRUE THEN
1657: QP_PREQ_GRP.engine_debug(' need to cache line_id, price_eff_date!');
1658: QP_PREQ_GRP.engine_debug(' - order_id ('|| qp_preq_grp.G_ORDER_ID ||'), prev_order_id ('|| l_prev_order_id || ')');
1659: QP_PREQ_GRP.engine_debug(' - line_index ('|| l_line_index ||'), prev_line_index ('|| l_prev_line_index || ')');
1660: END IF;
1661: SELECT lines.line_id, lines.pricing_effective_date

Line 1658: QP_PREQ_GRP.engine_debug(' - order_id ('|| qp_preq_grp.G_ORDER_ID ||'), prev_order_id ('|| l_prev_order_id || ')');

1654: TO_CHAR(l_line_index || QP_PREQ_GRP.G_ORDER_ID) <> TO_CHAR(l_prev_line_index || l_prev_order_id))
1655: THEN*/
1656: IF l_debug = FND_API.G_TRUE THEN
1657: QP_PREQ_GRP.engine_debug(' need to cache line_id, price_eff_date!');
1658: QP_PREQ_GRP.engine_debug(' - order_id ('|| qp_preq_grp.G_ORDER_ID ||'), prev_order_id ('|| l_prev_order_id || ')');
1659: QP_PREQ_GRP.engine_debug(' - line_index ('|| l_line_index ||'), prev_line_index ('|| l_prev_line_index || ')');
1660: END IF;
1661: SELECT lines.line_id, lines.pricing_effective_date
1662: INTO v_line_id, v_price_eff_date

Line 1659: QP_PREQ_GRP.engine_debug(' - line_index ('|| l_line_index ||'), prev_line_index ('|| l_prev_line_index || ')');

1655: THEN*/
1656: IF l_debug = FND_API.G_TRUE THEN
1657: QP_PREQ_GRP.engine_debug(' need to cache line_id, price_eff_date!');
1658: QP_PREQ_GRP.engine_debug(' - order_id ('|| qp_preq_grp.G_ORDER_ID ||'), prev_order_id ('|| l_prev_order_id || ')');
1659: QP_PREQ_GRP.engine_debug(' - line_index ('|| l_line_index ||'), prev_line_index ('|| l_prev_line_index || ')');
1660: END IF;
1661: SELECT lines.line_id, lines.pricing_effective_date
1662: INTO v_line_id, v_price_eff_date
1663: FROM qp_npreq_lines_tmp lines

Line 1666: QP_PREQ_GRP.G_LINE_ID := v_line_id;

1662: INTO v_line_id, v_price_eff_date
1663: FROM qp_npreq_lines_tmp lines
1664: WHERE lines.line_index = l_line_index;
1665:
1666: QP_PREQ_GRP.G_LINE_ID := v_line_id;
1667: QP_PREQ_GRP.G_PRICE_EFF_DATE := v_price_eff_date;
1668: l_prev_order_id := QP_PREQ_GRP.G_ORDER_ID;
1669: l_prev_line_index := l_line_index;
1670: /*ELSE

Line 1667: QP_PREQ_GRP.G_PRICE_EFF_DATE := v_price_eff_date;

1663: FROM qp_npreq_lines_tmp lines
1664: WHERE lines.line_index = l_line_index;
1665:
1666: QP_PREQ_GRP.G_LINE_ID := v_line_id;
1667: QP_PREQ_GRP.G_PRICE_EFF_DATE := v_price_eff_date;
1668: l_prev_order_id := QP_PREQ_GRP.G_ORDER_ID;
1669: l_prev_line_index := l_line_index;
1670: /*ELSE
1671: IF l_debug = FND_API.G_TRUE THEN

Line 1668: l_prev_order_id := QP_PREQ_GRP.G_ORDER_ID;

1664: WHERE lines.line_index = l_line_index;
1665:
1666: QP_PREQ_GRP.G_LINE_ID := v_line_id;
1667: QP_PREQ_GRP.G_PRICE_EFF_DATE := v_price_eff_date;
1668: l_prev_order_id := QP_PREQ_GRP.G_ORDER_ID;
1669: l_prev_line_index := l_line_index;
1670: /*ELSE
1671: IF l_debug = FND_API.G_TRUE THEN
1672: QP_PREQ_GRP.engine_debug(' using cached line_id, price_eff_date');

Line 1672: QP_PREQ_GRP.engine_debug(' using cached line_id, price_eff_date');

1668: l_prev_order_id := QP_PREQ_GRP.G_ORDER_ID;
1669: l_prev_line_index := l_line_index;
1670: /*ELSE
1671: IF l_debug = FND_API.G_TRUE THEN
1672: QP_PREQ_GRP.engine_debug(' using cached line_id, price_eff_date');
1673: END IF;
1674: v_line_id := QP_PREQ_GRP.G_LINE_ID;
1675: v_price_eff_date := QP_PREQ_GRP.G_PRICE_EFF_DATE;
1676: END IF;*/

Line 1674: v_line_id := QP_PREQ_GRP.G_LINE_ID;

1670: /*ELSE
1671: IF l_debug = FND_API.G_TRUE THEN
1672: QP_PREQ_GRP.engine_debug(' using cached line_id, price_eff_date');
1673: END IF;
1674: v_line_id := QP_PREQ_GRP.G_LINE_ID;
1675: v_price_eff_date := QP_PREQ_GRP.G_PRICE_EFF_DATE;
1676: END IF;*/
1677:
1678: IF l_debug = FND_API.G_TRUE THEN

Line 1675: v_price_eff_date := QP_PREQ_GRP.G_PRICE_EFF_DATE;

1671: IF l_debug = FND_API.G_TRUE THEN
1672: QP_PREQ_GRP.engine_debug(' using cached line_id, price_eff_date');
1673: END IF;
1674: v_line_id := QP_PREQ_GRP.G_LINE_ID;
1675: v_price_eff_date := QP_PREQ_GRP.G_PRICE_EFF_DATE;
1676: END IF;*/
1677:
1678: IF l_debug = FND_API.G_TRUE THEN
1679: QP_PREQ_GRP.engine_debug(' order ID '|| QP_PREQ_GRP.G_ORDER_ID ||

Line 1679: QP_PREQ_GRP.engine_debug(' order ID '|| QP_PREQ_GRP.G_ORDER_ID ||

1675: v_price_eff_date := QP_PREQ_GRP.G_PRICE_EFF_DATE;
1676: END IF;*/
1677:
1678: IF l_debug = FND_API.G_TRUE THEN
1679: QP_PREQ_GRP.engine_debug(' order ID '|| QP_PREQ_GRP.G_ORDER_ID ||
1680: ', line ID '|| QP_PREQ_GRP.G_LINE_ID);
1681: END IF;
1682:
1683: l_accum_rec.p_request_type_code := QP_PREQ_GRP.G_REQUEST_TYPE_CODE;

Line 1680: ', line ID '|| QP_PREQ_GRP.G_LINE_ID);

1676: END IF;*/
1677:
1678: IF l_debug = FND_API.G_TRUE THEN
1679: QP_PREQ_GRP.engine_debug(' order ID '|| QP_PREQ_GRP.G_ORDER_ID ||
1680: ', line ID '|| QP_PREQ_GRP.G_LINE_ID);
1681: END IF;
1682:
1683: l_accum_rec.p_request_type_code := QP_PREQ_GRP.G_REQUEST_TYPE_CODE;
1684: l_accum_rec.context := l_accum_context;

Line 1683: l_accum_rec.p_request_type_code := QP_PREQ_GRP.G_REQUEST_TYPE_CODE;

1679: QP_PREQ_GRP.engine_debug(' order ID '|| QP_PREQ_GRP.G_ORDER_ID ||
1680: ', line ID '|| QP_PREQ_GRP.G_LINE_ID);
1681: END IF;
1682:
1683: l_accum_rec.p_request_type_code := QP_PREQ_GRP.G_REQUEST_TYPE_CODE;
1684: l_accum_rec.context := l_accum_context;
1685: l_accum_rec.attribute := l_accum_attrib;
1686: IF (l_accum_context = 'VOLUME' AND l_accum_attrib = 'PRICING_ATTRIBUTE19') THEN
1687: --added for 14783146

Line 1695: QP_PREQ_GRP.G_ORDER_ID,

1691: WHERE line_id=v_line_id
1692: AND rownum=1;
1693: l_accum := QP_TM_RUNTIME_SOURCE.Get_numeric_attribute_value(p_list_line_id,
1694: v_list_line_no,
1695: QP_PREQ_GRP.G_ORDER_ID,
1696: v_line_id,
1697: v_price_eff_date,
1698: l_req_attrs_tbl,
1699: l_accum_rec

Line 1703: QP_PREQ_GRP.engine_debug(' in exception of QP_TM_RUNTIME_SOURCE ');

1699: l_accum_rec
1700: );
1701: EXCEPTION
1702: WHEN OTHERS THEN
1703: QP_PREQ_GRP.engine_debug(' in exception of QP_TM_RUNTIME_SOURCE ');
1704: l_accum :=0;
1705: END;
1706: ELSE
1707: l_accum := QP_RUNTIME_SOURCE.Get_numeric_attribute_value(p_list_line_id,

Line 1709: QP_PREQ_GRP.G_ORDER_ID,

1705: END;
1706: ELSE
1707: l_accum := QP_RUNTIME_SOURCE.Get_numeric_attribute_value(p_list_line_id,
1708: v_list_line_no,
1709: QP_PREQ_GRP.G_ORDER_ID,
1710: v_line_id,
1711: v_price_eff_date,
1712: l_req_attrs_tbl,
1713: l_accum_rec

Line 1717: QP_PREQ_GRP.engine_debug(' accum value returned from custom API = '|| l_accum);

1713: l_accum_rec
1714: );
1715: END IF;
1716: IF l_debug = FND_API.G_TRUE THEN
1717: QP_PREQ_GRP.engine_debug(' accum value returned from custom API = '|| l_accum);
1718: END IF;
1719: ELSE
1720: -- this case should almost never happen, but if it does, set accum=0
1721: IF l_debug = FND_API.G_TRUE THEN

Line 1722: QP_PREQ_GRP.engine_debug('***oops. this should not be here!');

1718: END IF;
1719: ELSE
1720: -- this case should almost never happen, but if it does, set accum=0
1721: IF l_debug = FND_API.G_TRUE THEN
1722: QP_PREQ_GRP.engine_debug('***oops. this should not be here!');
1723: QP_PREQ_GRP.engine_debug(' Profile Value = '|| FND_PROFILE.VALUE('QP_ACCUM_ATTR_ENABLED'));
1724: END IF;
1725: l_accum := 0;
1726: END IF;

Line 1723: QP_PREQ_GRP.engine_debug(' Profile Value = '|| FND_PROFILE.VALUE('QP_ACCUM_ATTR_ENABLED'));

1719: ELSE
1720: -- this case should almost never happen, but if it does, set accum=0
1721: IF l_debug = FND_API.G_TRUE THEN
1722: QP_PREQ_GRP.engine_debug('***oops. this should not be here!');
1723: QP_PREQ_GRP.engine_debug(' Profile Value = '|| FND_PROFILE.VALUE('QP_ACCUM_ATTR_ENABLED'));
1724: END IF;
1725: l_accum := 0;
1726: END IF;
1727: END;

Line 1732: QP_PREQ_GRP.engine_debug(' - Accumulation Profile is not enabled');

1728:
1729: END IF; -- if (l_accum_attrib is null)
1730: ELSE
1731: IF l_debug = FND_API.G_TRUE THEN
1732: QP_PREQ_GRP.engine_debug(' - Accumulation Profile is not enabled');
1733: END IF;
1734: l_accum := 0;
1735: END IF; -- if ACCUM_ATTR_ENABLED profile...
1736:

Line 1743: QP_PREQ_GRP.engine_debug(' * begin accumulation processing (if necessary) *');

1739:
1740: -- accumulation processing:
1741: -- if accumulation value, then remap the value_from and offset qualifier value as necessary
1742: IF l_debug = FND_API.G_TRUE THEN
1743: QP_PREQ_GRP.engine_debug(' * begin accumulation processing (if necessary) *');
1744: END IF;
1745: l_new_qualifier := l_accum + p_qualifier_value; --bug#15895472
1746:
1747: IF (p_value_to <= l_accum AND p_qualifier_value > 0) OR (p_value_to <= l_new_qualifier AND p_qualifier_value < 0) THEN --bug#15895472

Line 1752: QP_PREQ_GRP.engine_debug(' - skipping this break');

1748: -- skip this break because no quantity is satisfied
1749: x_satisfied_value := 0;
1750: l_accum_global := nvl(l_accum_global, 0);
1751: IF l_debug = FND_API.G_TRUE THEN
1752: QP_PREQ_GRP.engine_debug(' - skipping this break');
1753: END IF;
1754: RETURN;
1755: ELSE
1756: IF l_accum <> 0 THEN

Line 1772: QP_PREQ_GRP.engine_debug(' l_accum = '|| l_accum);

1768: END IF;
1769: -- offset qualifier value if necessary
1770: -- l_new_qualifier := l_accum + p_qualifier_value; --bug#15895472
1771: IF l_debug = FND_API.G_TRUE THEN
1772: QP_PREQ_GRP.engine_debug(' l_accum = '|| l_accum);
1773: QP_PREQ_GRP.engine_debug(' l_value_from = '|| l_value_from);
1774: QP_PREQ_GRP.engine_debug(' l_new_qualifier = '|| l_new_qualifier);
1775: END IF;
1776:

Line 1773: QP_PREQ_GRP.engine_debug(' l_value_from = '|| l_value_from);

1769: -- offset qualifier value if necessary
1770: -- l_new_qualifier := l_accum + p_qualifier_value; --bug#15895472
1771: IF l_debug = FND_API.G_TRUE THEN
1772: QP_PREQ_GRP.engine_debug(' l_accum = '|| l_accum);
1773: QP_PREQ_GRP.engine_debug(' l_value_from = '|| l_value_from);
1774: QP_PREQ_GRP.engine_debug(' l_new_qualifier = '|| l_new_qualifier);
1775: END IF;
1776:
1777: -- shulin, fix bug 2372064

Line 1774: QP_PREQ_GRP.engine_debug(' l_new_qualifier = '|| l_new_qualifier);

1770: -- l_new_qualifier := l_accum + p_qualifier_value; --bug#15895472
1771: IF l_debug = FND_API.G_TRUE THEN
1772: QP_PREQ_GRP.engine_debug(' l_accum = '|| l_accum);
1773: QP_PREQ_GRP.engine_debug(' l_value_from = '|| l_value_from);
1774: QP_PREQ_GRP.engine_debug(' l_new_qualifier = '|| l_new_qualifier);
1775: END IF;
1776:
1777: -- shulin, fix bug 2372064
1778: -- 4999377, restrict shulin's fix to only 0-0 case

Line 1781: QP_PREQ_GRP.engine_debug('value_from is the same as value_to, x_satisfied_value is 0');

1777: -- shulin, fix bug 2372064
1778: -- 4999377, restrict shulin's fix to only 0-0 case
1779: IF (p_value_from = p_value_to AND p_value_from = 0) THEN -- for cases like 0-0, 2-2, 0.5-0.5
1780: IF l_debug = FND_API.G_TRUE THEN
1781: QP_PREQ_GRP.engine_debug('value_from is the same as value_to, x_satisfied_value is 0');
1782: END IF;
1783: x_satisfied_value := 0;
1784: ELSIF (l_new_qualifier - l_value_from + l_precision > 0) THEN
1785: x_satisfied_value := least(l_new_qualifier - l_value_from + l_precision, p_value_to - l_value_from + l_precision);

Line 1793: QP_PREQ_GRP.engine_debug('Out of Procedure : Get_Satisfied_Range');

1789: x_satisfied_value := 0;
1790: END IF;
1791:
1792: IF l_debug = FND_API.G_TRUE THEN
1793: QP_PREQ_GRP.engine_debug('Out of Procedure : Get_Satisfied_Range');
1794:
1795: END IF;
1796: END Get_Satisfied_Range;
1797:

Line 1838: AND rltd.pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW

1834: FROM qp_npreq_rltd_lines_tmp rltd, qp_npreq_lines_tmp line
1835: WHERE rltd.list_line_id = p_list_line_id
1836: AND rltd.line_index = p_line_index
1837: AND line.line_index = p_line_index
1838: AND rltd.pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW
1839: AND rltd.line_index = line.line_index -- sql repos
1840: UNION
1841: SELECT rltd.related_line_detail_index
1842: , rltd.list_line_id -- for accum range break

Line 1858: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES

1854: , line.catchweight_qty catchweight_qty
1855: , line.actual_order_quantity actual_order_qty
1856: , line.PRICE_REQUEST_CODE PRICE_REQUEST_CODE -- bug#12916970
1857: FROM qp_npreq_rltd_lines_tmp rltd, qp_npreq_lines_tmp line
1858: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES
1859: AND rltd.line_index = p_line_index
1860: AND line_detail_index = p_list_line_id
1861: AND line.line_index = p_line_index
1862: AND rltd.pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW

Line 1862: AND rltd.pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW

1858: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES
1859: AND rltd.line_index = p_line_index
1860: AND line_detail_index = p_list_line_id
1861: AND line.line_index = p_line_index
1862: AND rltd.pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW
1863: AND rltd.line_index = line.line_index -- sql repos
1864: ORDER BY 7, 9;
1865: -- 5169222 added order by 9 to sort breaks by ascending value from
1866:

Line 1912: AND rltd.pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW

1908: SELECT nvl(qpll.continuous_price_break_flag, 'N')
1909: FROM qp_list_lines qpll, qp_npreq_rltd_lines_tmp rltd
1910: WHERE rltd.line_index = p_line_index
1911: AND rltd.line_detail_index = p_list_line_id
1912: AND rltd.pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW
1913: AND rltd.list_line_id = qpll.list_line_id
1914: AND ROWNUM = 1;
1915:
1916: l_continuous_flag VARCHAR2(1) := 'N';

Line 1918: l_del_index_tbl QP_PREQ_GRP.NUMBER_TYPE;

1914: AND ROWNUM = 1;
1915:
1916: l_continuous_flag VARCHAR2(1) := 'N';
1917: l_break_qualified VARCHAR2(1) := 'N';
1918: l_del_index_tbl QP_PREQ_GRP.NUMBER_TYPE;
1919:
1920: BEGIN
1921:
1922: x_adjustment_amount := 0;

Line 1931: QP_PREQ_GRP.engine_debug('In Procedure '|| l_routine || '...');

1927: FETCH get_continuous_flag_cur INTO l_continuous_flag;
1928: CLOSE get_continuous_flag_cur;
1929:
1930: IF l_debug = FND_API.G_TRUE THEN
1931: QP_PREQ_GRP.engine_debug('In Procedure '|| l_routine || '...');
1932: IF l_continuous_flag = 'Y' THEN
1933: QP_PREQ_GRP.engine_debug('---------- CONTINUOUS PRICE BREAK ----------');
1934: END IF;
1935: QP_PREQ_GRP.engine_debug('SL with net_amt changes.'); -- 2892848

Line 1933: QP_PREQ_GRP.engine_debug('---------- CONTINUOUS PRICE BREAK ----------');

1929:
1930: IF l_debug = FND_API.G_TRUE THEN
1931: QP_PREQ_GRP.engine_debug('In Procedure '|| l_routine || '...');
1932: IF l_continuous_flag = 'Y' THEN
1933: QP_PREQ_GRP.engine_debug('---------- CONTINUOUS PRICE BREAK ----------');
1934: END IF;
1935: QP_PREQ_GRP.engine_debug('SL with net_amt changes.'); -- 2892848
1936: QP_PREQ_GRP.engine_debug('p_list_line_id: '|| p_list_line_id);
1937: QP_PREQ_GRP.engine_debug('p_line_index: '|| p_line_index);

Line 1935: QP_PREQ_GRP.engine_debug('SL with net_amt changes.'); -- 2892848

1931: QP_PREQ_GRP.engine_debug('In Procedure '|| l_routine || '...');
1932: IF l_continuous_flag = 'Y' THEN
1933: QP_PREQ_GRP.engine_debug('---------- CONTINUOUS PRICE BREAK ----------');
1934: END IF;
1935: QP_PREQ_GRP.engine_debug('SL with net_amt changes.'); -- 2892848
1936: QP_PREQ_GRP.engine_debug('p_list_line_id: '|| p_list_line_id);
1937: QP_PREQ_GRP.engine_debug('p_line_index: '|| p_line_index);
1938: QP_PREQ_GRP.engine_debug('p_req_value_per_unit: '|| p_req_value_per_unit);
1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);

Line 1936: QP_PREQ_GRP.engine_debug('p_list_line_id: '|| p_list_line_id);

1932: IF l_continuous_flag = 'Y' THEN
1933: QP_PREQ_GRP.engine_debug('---------- CONTINUOUS PRICE BREAK ----------');
1934: END IF;
1935: QP_PREQ_GRP.engine_debug('SL with net_amt changes.'); -- 2892848
1936: QP_PREQ_GRP.engine_debug('p_list_line_id: '|| p_list_line_id);
1937: QP_PREQ_GRP.engine_debug('p_line_index: '|| p_line_index);
1938: QP_PREQ_GRP.engine_debug('p_req_value_per_unit: '|| p_req_value_per_unit);
1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);
1940: QP_PREQ_GRP.engine_debug('p_list_price: '|| p_list_price); -- 2892848

Line 1937: QP_PREQ_GRP.engine_debug('p_line_index: '|| p_line_index);

1933: QP_PREQ_GRP.engine_debug('---------- CONTINUOUS PRICE BREAK ----------');
1934: END IF;
1935: QP_PREQ_GRP.engine_debug('SL with net_amt changes.'); -- 2892848
1936: QP_PREQ_GRP.engine_debug('p_list_line_id: '|| p_list_line_id);
1937: QP_PREQ_GRP.engine_debug('p_line_index: '|| p_line_index);
1938: QP_PREQ_GRP.engine_debug('p_req_value_per_unit: '|| p_req_value_per_unit);
1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);
1940: QP_PREQ_GRP.engine_debug('p_list_price: '|| p_list_price); -- 2892848
1941: QP_PREQ_GRP.engine_debug('p_line_quantity: '|| p_line_quantity);

Line 1938: QP_PREQ_GRP.engine_debug('p_req_value_per_unit: '|| p_req_value_per_unit);

1934: END IF;
1935: QP_PREQ_GRP.engine_debug('SL with net_amt changes.'); -- 2892848
1936: QP_PREQ_GRP.engine_debug('p_list_line_id: '|| p_list_line_id);
1937: QP_PREQ_GRP.engine_debug('p_line_index: '|| p_line_index);
1938: QP_PREQ_GRP.engine_debug('p_req_value_per_unit: '|| p_req_value_per_unit);
1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);
1940: QP_PREQ_GRP.engine_debug('p_list_price: '|| p_list_price); -- 2892848
1941: QP_PREQ_GRP.engine_debug('p_line_quantity: '|| p_line_quantity);
1942: QP_PREQ_GRP.engine_debug('p_bucketed_adjustment: '|| p_bucketed_adjustment);

Line 1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);

1935: QP_PREQ_GRP.engine_debug('SL with net_amt changes.'); -- 2892848
1936: QP_PREQ_GRP.engine_debug('p_list_line_id: '|| p_list_line_id);
1937: QP_PREQ_GRP.engine_debug('p_line_index: '|| p_line_index);
1938: QP_PREQ_GRP.engine_debug('p_req_value_per_unit: '|| p_req_value_per_unit);
1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);
1940: QP_PREQ_GRP.engine_debug('p_list_price: '|| p_list_price); -- 2892848
1941: QP_PREQ_GRP.engine_debug('p_line_quantity: '|| p_line_quantity);
1942: QP_PREQ_GRP.engine_debug('p_bucketed_adjustment: '|| p_bucketed_adjustment);
1943: QP_PREQ_GRP.engine_debug('p_bucketed_flag: '|| p_bucketed_flag);

Line 1940: QP_PREQ_GRP.engine_debug('p_list_price: '|| p_list_price); -- 2892848

1936: QP_PREQ_GRP.engine_debug('p_list_line_id: '|| p_list_line_id);
1937: QP_PREQ_GRP.engine_debug('p_line_index: '|| p_line_index);
1938: QP_PREQ_GRP.engine_debug('p_req_value_per_unit: '|| p_req_value_per_unit);
1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);
1940: QP_PREQ_GRP.engine_debug('p_list_price: '|| p_list_price); -- 2892848
1941: QP_PREQ_GRP.engine_debug('p_line_quantity: '|| p_line_quantity);
1942: QP_PREQ_GRP.engine_debug('p_bucketed_adjustment: '|| p_bucketed_adjustment);
1943: QP_PREQ_GRP.engine_debug('p_bucketed_flag: '|| p_bucketed_flag);
1944: END IF;

Line 1941: QP_PREQ_GRP.engine_debug('p_line_quantity: '|| p_line_quantity);

1937: QP_PREQ_GRP.engine_debug('p_line_index: '|| p_line_index);
1938: QP_PREQ_GRP.engine_debug('p_req_value_per_unit: '|| p_req_value_per_unit);
1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);
1940: QP_PREQ_GRP.engine_debug('p_list_price: '|| p_list_price); -- 2892848
1941: QP_PREQ_GRP.engine_debug('p_line_quantity: '|| p_line_quantity);
1942: QP_PREQ_GRP.engine_debug('p_bucketed_adjustment: '|| p_bucketed_adjustment);
1943: QP_PREQ_GRP.engine_debug('p_bucketed_flag: '|| p_bucketed_flag);
1944: END IF;
1945:

Line 1942: QP_PREQ_GRP.engine_debug('p_bucketed_adjustment: '|| p_bucketed_adjustment);

1938: QP_PREQ_GRP.engine_debug('p_req_value_per_unit: '|| p_req_value_per_unit);
1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);
1940: QP_PREQ_GRP.engine_debug('p_list_price: '|| p_list_price); -- 2892848
1941: QP_PREQ_GRP.engine_debug('p_line_quantity: '|| p_line_quantity);
1942: QP_PREQ_GRP.engine_debug('p_bucketed_adjustment: '|| p_bucketed_adjustment);
1943: QP_PREQ_GRP.engine_debug('p_bucketed_flag: '|| p_bucketed_flag);
1944: END IF;
1945:
1946: OPEN get_price_break_details;

Line 1943: QP_PREQ_GRP.engine_debug('p_bucketed_flag: '|| p_bucketed_flag);

1939: QP_PREQ_GRP.engine_debug('p_total_value: '|| p_total_value);
1940: QP_PREQ_GRP.engine_debug('p_list_price: '|| p_list_price); -- 2892848
1941: QP_PREQ_GRP.engine_debug('p_line_quantity: '|| p_line_quantity);
1942: QP_PREQ_GRP.engine_debug('p_bucketed_adjustment: '|| p_bucketed_adjustment);
1943: QP_PREQ_GRP.engine_debug('p_bucketed_flag: '|| p_bucketed_flag);
1944: END IF;
1945:
1946: OPEN get_price_break_details;
1947:

Line 1962: QP_PREQ_GRP.engine_debug('PRICE_REQUEST_CODE-DK-'||pbh_child_rec.PRICE_REQUEST_CODE);

1958: IF (p_total_value <> 0) THEN -- ravi_new --bug#15895472
1959: pbh_child_rec.qualifier_value := p_total_value;
1960: ELSE
1961: --bug#12916970
1962: QP_PREQ_GRP.engine_debug('PRICE_REQUEST_CODE-DK-'||pbh_child_rec.PRICE_REQUEST_CODE);
1963: open get_available_amount(pbh_child_rec.PRICE_REQUEST_CODE);
1964: fetch get_available_amount into l_available_amount;
1965: QP_PREQ_GRP.engine_debug('l_available_amount.amount-DK-'||l_available_amount.amount);
1966: if get_available_amount%notfound then

Line 1965: QP_PREQ_GRP.engine_debug('l_available_amount.amount-DK-'||l_available_amount.amount);

1961: --bug#12916970
1962: QP_PREQ_GRP.engine_debug('PRICE_REQUEST_CODE-DK-'||pbh_child_rec.PRICE_REQUEST_CODE);
1963: open get_available_amount(pbh_child_rec.PRICE_REQUEST_CODE);
1964: fetch get_available_amount into l_available_amount;
1965: QP_PREQ_GRP.engine_debug('l_available_amount.amount-DK-'||l_available_amount.amount);
1966: if get_available_amount%notfound then
1967: pbh_child_rec.qualifier_value := p_req_value_per_unit;
1968: else
1969: pbh_child_rec.qualifier_value := nvl(l_available_amount.amount,p_req_value_per_unit);

Line 1977: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);

1973: END IF;
1974: END IF;
1975:
1976: IF l_debug = FND_API.G_TRUE THEN
1977: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);
1978: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);
1979: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);
1980: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
1981: END IF;

Line 1978: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);

1974: END IF;
1975:
1976: IF l_debug = FND_API.G_TRUE THEN
1977: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);
1978: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);
1979: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);
1980: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
1981: END IF;
1982:

Line 1979: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);

1975:
1976: IF l_debug = FND_API.G_TRUE THEN
1977: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);
1978: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);
1979: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);
1980: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
1981: END IF;
1982:
1983: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN

Line 1980: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);

1976: IF l_debug = FND_API.G_TRUE THEN
1977: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);
1978: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);
1979: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);
1980: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
1981: END IF;
1982:
1983: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN
1984: IF l_debug = FND_API.G_TRUE THEN

Line 1983: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN

1979: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);
1980: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
1981: END IF;
1982:
1983: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN
1984: IF l_debug = FND_API.G_TRUE THEN
1985: QP_PREQ_GRP.engine_debug('i am in POINT block...');
1986: QP_PREQ_GRP.engine_debug('Before PBH List Line Type : ' || pbh_child_rec.related_list_line_type);
1987: END IF;

Line 1985: QP_PREQ_GRP.engine_debug('i am in POINT block...');

1981: END IF;
1982:
1983: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN
1984: IF l_debug = FND_API.G_TRUE THEN
1985: QP_PREQ_GRP.engine_debug('i am in POINT block...');
1986: QP_PREQ_GRP.engine_debug('Before PBH List Line Type : ' || pbh_child_rec.related_list_line_type);
1987: END IF;
1988:
1989: -- rewritten for 4061138

Line 1986: QP_PREQ_GRP.engine_debug('Before PBH List Line Type : ' || pbh_child_rec.related_list_line_type);

1982:
1983: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN
1984: IF l_debug = FND_API.G_TRUE THEN
1985: QP_PREQ_GRP.engine_debug('i am in POINT block...');
1986: QP_PREQ_GRP.engine_debug('Before PBH List Line Type : ' || pbh_child_rec.related_list_line_type);
1987: END IF;
1988:
1989: -- rewritten for 4061138
1990: IF ((l_continuous_flag <> 'Y' AND

Line 2001: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

1997: THEN
1998:
1999: l_break_qualified := 'Y'; --[julin/4671446]
2000:
2001: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2002: l_sign := 1;
2003: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2004: l_sign := - 1;
2005: END IF;

Line 2003: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN

1999: l_break_qualified := 'Y'; --[julin/4671446]
2000:
2001: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2002: l_sign := 1;
2003: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2004: l_sign := - 1;
2005: END IF;
2006:
2007: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

Line 2007: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

2003: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2004: l_sign := - 1;
2005: END IF;
2006:
2007: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
2008: l_sign := 1; -- new price discount/surcharge are the same
2009: END IF;
2010:
2011: IF l_debug = FND_API.G_TRUE THEN

Line 2012: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);

2008: l_sign := 1; -- new price discount/surcharge are the same
2009: END IF;
2010:
2011: IF l_debug = FND_API.G_TRUE THEN
2012: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);
2013: END IF;
2014: -- fte breakunit
2015: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE AND
2016: p_total_value <> 0) --bug#15895472

Line 2015: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE AND

2011: IF l_debug = FND_API.G_TRUE THEN
2012: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);
2013: END IF;
2014: -- fte breakunit
2015: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE AND
2016: p_total_value <> 0) --bug#15895472
2017: THEN
2018: IF l_debug = FND_API.G_TRUE THEN
2019: QP_PREQ_GRP.engine_debug('fte breakunit price, using p_total_value = '|| p_total_value);

Line 2019: QP_PREQ_GRP.engine_debug('fte breakunit price, using p_total_value = '|| p_total_value);

2015: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE AND
2016: p_total_value <> 0) --bug#15895472
2017: THEN
2018: IF l_debug = FND_API.G_TRUE THEN
2019: QP_PREQ_GRP.engine_debug('fte breakunit price, using p_total_value = '|| p_total_value);
2020: END IF;
2021: l_priced_quantity := p_total_value;
2022: ELSIF (p_applied_req_value_per_unit > 0) THEN -- [julin/4112395/4220399]
2023: l_priced_quantity := p_applied_req_value_per_unit;

Line 2029: QP_PREQ_GRP.engine_debug('l_priced_quantity '|| l_priced_quantity);

2025: l_priced_quantity := p_req_value_per_unit;
2026: END IF;
2027:
2028: IF l_debug = FND_API.G_TRUE THEN
2029: QP_PREQ_GRP.engine_debug('l_priced_quantity '|| l_priced_quantity);
2030: END IF; --l_debug
2031:
2032: --4900095 lumpsum
2033: IF pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT

Line 2033: IF pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT

2029: QP_PREQ_GRP.engine_debug('l_priced_quantity '|| l_priced_quantity);
2030: END IF; --l_debug
2031:
2032: --4900095 lumpsum
2033: IF pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT
2034: AND QP_PREQ_GRP.G_service_line_ind_tbl.EXISTS(p_line_index) THEN
2035: IF QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE.EXISTS(p_list_line_id)
2036: AND QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE(p_list_line_id) = 'LINE' THEN
2037: l_priced_quantity := nvl(p_applied_req_value_per_unit,

Line 2034: AND QP_PREQ_GRP.G_service_line_ind_tbl.EXISTS(p_line_index) THEN

2030: END IF; --l_debug
2031:
2032: --4900095 lumpsum
2033: IF pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT
2034: AND QP_PREQ_GRP.G_service_line_ind_tbl.EXISTS(p_line_index) THEN
2035: IF QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE.EXISTS(p_list_line_id)
2036: AND QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE(p_list_line_id) = 'LINE' THEN
2037: l_priced_quantity := nvl(p_applied_req_value_per_unit,
2038: QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));

Line 2038: QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));

2034: AND QP_PREQ_GRP.G_service_line_ind_tbl.EXISTS(p_line_index) THEN
2035: IF QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE.EXISTS(p_list_line_id)
2036: AND QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE(p_list_line_id) = 'LINE' THEN
2037: l_priced_quantity := nvl(p_applied_req_value_per_unit,
2038: QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));
2039: IF l_debug = FND_API.G_TRUE THEN
2040: QP_PREQ_GRP.engine_debug('service line pbh with line level');
2041: END IF; --l_debug
2042: --p_request_qty * l_parent_qty;

Line 2040: QP_PREQ_GRP.engine_debug('service line pbh with line level');

2036: AND QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE(p_list_line_id) = 'LINE' THEN
2037: l_priced_quantity := nvl(p_applied_req_value_per_unit,
2038: QP_PREQ_GRP.G_service_line_qty_tbl(p_line_index));
2039: IF l_debug = FND_API.G_TRUE THEN
2040: QP_PREQ_GRP.engine_debug('service line pbh with line level');
2041: END IF; --l_debug
2042: --p_request_qty * l_parent_qty;
2043: ELSIF QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE.EXISTS(p_list_line_id)
2044: AND QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE(p_list_line_id) = 'LINEGROUP' THEN

Line 2046: QP_PREQ_GRP.G_service_ldet_qty_tbl(p_list_line_id));

2042: --p_request_qty * l_parent_qty;
2043: ELSIF QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE.EXISTS(p_list_line_id)
2044: AND QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE(p_list_line_id) = 'LINEGROUP' THEN
2045: l_priced_quantity := nvl(p_applied_req_value_per_unit,
2046: QP_PREQ_GRP.G_service_ldet_qty_tbl(p_list_line_id));
2047: IF l_debug = FND_API.G_TRUE THEN
2048: QP_PREQ_GRP.engine_debug('service line pbh with linegrp level');
2049: END IF; --l_debug
2050: ELSE

Line 2048: QP_PREQ_GRP.engine_debug('service line pbh with linegrp level');

2044: AND QP_PREQ_PUB.G_PBH_MOD_LEVEL_CODE(p_list_line_id) = 'LINEGROUP' THEN
2045: l_priced_quantity := nvl(p_applied_req_value_per_unit,
2046: QP_PREQ_GRP.G_service_ldet_qty_tbl(p_list_line_id));
2047: IF l_debug = FND_API.G_TRUE THEN
2048: QP_PREQ_GRP.engine_debug('service line pbh with linegrp level');
2049: END IF; --l_debug
2050: ELSE
2051: l_priced_quantity := nvl(p_applied_req_value_per_unit, p_req_value_per_unit);
2052: IF l_debug = FND_API.G_TRUE THEN

Line 2053: QP_PREQ_GRP.engine_debug('non-service line pbh with linegrp level');

2049: END IF; --l_debug
2050: ELSE
2051: l_priced_quantity := nvl(p_applied_req_value_per_unit, p_req_value_per_unit);
2052: IF l_debug = FND_API.G_TRUE THEN
2053: QP_PREQ_GRP.engine_debug('non-service line pbh with linegrp level');
2054: END IF; --l_debug
2055: END IF; --QP_PREQ_GRP.G_service_line_ind_tbl.exists
2056:
2057: IF l_debug = FND_API.G_TRUE THEN

Line 2055: END IF; --QP_PREQ_GRP.G_service_line_ind_tbl.exists

2051: l_priced_quantity := nvl(p_applied_req_value_per_unit, p_req_value_per_unit);
2052: IF l_debug = FND_API.G_TRUE THEN
2053: QP_PREQ_GRP.engine_debug('non-service line pbh with linegrp level');
2054: END IF; --l_debug
2055: END IF; --QP_PREQ_GRP.G_service_line_ind_tbl.exists
2056:
2057: IF l_debug = FND_API.G_TRUE THEN
2058: QP_PREQ_GRP.engine_debug('lumpsum qty '|| l_priced_quantity);
2059: END IF; --l_debug

Line 2058: QP_PREQ_GRP.engine_debug('lumpsum qty '|| l_priced_quantity);

2054: END IF; --l_debug
2055: END IF; --QP_PREQ_GRP.G_service_line_ind_tbl.exists
2056:
2057: IF l_debug = FND_API.G_TRUE THEN
2058: QP_PREQ_GRP.engine_debug('lumpsum qty '|| l_priced_quantity);
2059: END IF; --l_debug
2060: END IF; --pbh_child_rec.operand_calculation_code
2061:
2062: Calculate_Adjustment(p_list_price,

Line 2073: QP_PREQ_GRP.engine_debug('PBH Adjustment : ' || l_adjustment_amount);

2069: l_return_status,
2070: l_return_status_text);
2071:
2072: IF l_debug = FND_API.G_TRUE THEN
2073: QP_PREQ_GRP.engine_debug('PBH Adjustment : ' || l_adjustment_amount);
2074: END IF;
2075:
2076: pbh_adjustments(i).l_adjustment_amount := l_adjustment_amount;
2077:

Line 2082: QP_PREQ_GRP.engine_debug('POINT net amount break l_satisfied_value: '|| pbh_adjustments(i).l_satisfied_value);

2078: -- begin 2892848
2079: IF (p_bucketed_flag = 'Y') THEN
2080: pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value;
2081: IF l_debug = FND_API.G_TRUE THEN
2082: QP_PREQ_GRP.engine_debug('POINT net amount break l_satisfied_value: '|| pbh_adjustments(i).l_satisfied_value);
2083: END IF; -- END IF l_debug
2084: ELSE -- end 2892848
2085:
2086: -- ravi_new

Line 2090: --IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE) THEN

2086: -- ravi_new
2087: IF (p_total_value <> 0 AND p_req_value_per_unit <> 0) THEN --6896139 added to avoid divide by zero error --bug#15895472
2088: v_attribute_value_per_unit := p_total_value / p_req_value_per_unit; --2388011_latest
2089: -- bug 3603096 - commented if..else
2090: --IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE) THEN
2091: pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value; -- fte breakunit
2092: --ELSE
2093: -- pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value/v_attribute_value_per_unit; --2388011_latest
2094: --END IF;

Line 2096: QP_PREQ_GRP.engine_debug('p_total_value > 0');

2092: --ELSE
2093: -- pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value/v_attribute_value_per_unit; --2388011_latest
2094: --END IF;
2095: IF l_debug = FND_API.G_TRUE THEN
2096: QP_PREQ_GRP.engine_debug('p_total_value > 0');
2097: QP_PREQ_GRP.engine_debug('v_attribute_value_per_unit (p_total_value/p_req_value_per_unit): ' || v_attribute_value_per_unit);
2098: QP_PREQ_GRP.engine_debug('l_satisfied_value (qualifier_value/v_attribute_value_per_unit): '|| pbh_adjustments(i).l_satisfied_value);
2099: END IF; -- END IF l_debug
2100: ELSE

Line 2097: QP_PREQ_GRP.engine_debug('v_attribute_value_per_unit (p_total_value/p_req_value_per_unit): ' || v_attribute_value_per_unit);

2093: -- pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value/v_attribute_value_per_unit; --2388011_latest
2094: --END IF;
2095: IF l_debug = FND_API.G_TRUE THEN
2096: QP_PREQ_GRP.engine_debug('p_total_value > 0');
2097: QP_PREQ_GRP.engine_debug('v_attribute_value_per_unit (p_total_value/p_req_value_per_unit): ' || v_attribute_value_per_unit);
2098: QP_PREQ_GRP.engine_debug('l_satisfied_value (qualifier_value/v_attribute_value_per_unit): '|| pbh_adjustments(i).l_satisfied_value);
2099: END IF; -- END IF l_debug
2100: ELSE
2101: pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value;

Line 2098: QP_PREQ_GRP.engine_debug('l_satisfied_value (qualifier_value/v_attribute_value_per_unit): '|| pbh_adjustments(i).l_satisfied_value);

2094: --END IF;
2095: IF l_debug = FND_API.G_TRUE THEN
2096: QP_PREQ_GRP.engine_debug('p_total_value > 0');
2097: QP_PREQ_GRP.engine_debug('v_attribute_value_per_unit (p_total_value/p_req_value_per_unit): ' || v_attribute_value_per_unit);
2098: QP_PREQ_GRP.engine_debug('l_satisfied_value (qualifier_value/v_attribute_value_per_unit): '|| pbh_adjustments(i).l_satisfied_value);
2099: END IF; -- END IF l_debug
2100: ELSE
2101: pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value;
2102: IF l_debug = FND_API.G_TRUE THEN

Line 2103: QP_PREQ_GRP.engine_debug('POINT break l_satisfied_value: '|| pbh_adjustments(i).l_satisfied_value);

2099: END IF; -- END IF l_debug
2100: ELSE
2101: pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value;
2102: IF l_debug = FND_API.G_TRUE THEN
2103: QP_PREQ_GRP.engine_debug('POINT break l_satisfied_value: '|| pbh_adjustments(i).l_satisfied_value);
2104: END IF; -- END IF l_debug
2105: END IF; -- END IF (p_total_value > 0)
2106: END IF; -- END IF (p_bucketed_flag = 'Y') 2892848
2107:

Line 2110: QP_PREQ_GRP.engine_debug('POINT break x_adjustment_amount: '|| x_adjustment_amount);

2106: END IF; -- END IF (p_bucketed_flag = 'Y') 2892848
2107:
2108: x_adjustment_amount := l_adjustment_amount;
2109: IF l_debug = FND_API.G_TRUE THEN
2110: QP_PREQ_GRP.engine_debug('POINT break x_adjustment_amount: '|| x_adjustment_amount);
2111: END IF; -- END IF l_debug
2112: -- fte breakunit
2113: -- Normally, point breaks assume the adj amt on the header is the same as
2114: -- the single qualifying child line. This is true for regular breaks, but

Line 2117: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE AND

2113: -- Normally, point breaks assume the adj amt on the header is the same as
2114: -- the single qualifying child line. This is true for regular breaks, but
2115: -- for block pricing (breakunit), the header and line quantity may not be
2116: -- the same UOM, so need to calculate a different adj amt for the PBH.
2117: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_BREAKUNIT_PRICE AND
2118: p_total_value <> 0) --bug#15895472
2119: THEN
2120: x_adjustment_amount := l_adjustment_amount * l_priced_quantity / p_req_value_per_unit;
2121: IF l_debug = FND_API.G_TRUE THEN

Line 2122: QP_PREQ_GRP.engine_debug('fte breakunit, PBH x_adjustment_amount: '|| x_adjustment_amount);

2118: p_total_value <> 0) --bug#15895472
2119: THEN
2120: x_adjustment_amount := l_adjustment_amount * l_priced_quantity / p_req_value_per_unit;
2121: IF l_debug = FND_API.G_TRUE THEN
2122: QP_PREQ_GRP.engine_debug('fte breakunit, PBH x_adjustment_amount: '|| x_adjustment_amount);
2123: END IF;
2124: END IF;
2125: ELSE
2126: pbh_adjustments(i).l_adjustment_amount := NULL;

Line 2134: ELSIF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN

2130: pbh_adjustments(i).l_related_list_line_id := pbh_child_rec.related_list_line_id;
2131: pbh_adjustments(i).l_related_line_detail_index := pbh_child_rec.related_line_detail_index;
2132: pbh_child_dtl_tbl(i) := pbh_child_rec;
2133:
2134: ELSIF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN
2135:
2136: IF l_debug = FND_API.G_TRUE THEN
2137: QP_PREQ_GRP.engine_debug('i am in RANGE block...');
2138: END IF; -- END IF l_debug

Line 2137: QP_PREQ_GRP.engine_debug('i am in RANGE block...');

2133:
2134: ELSIF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN
2135:
2136: IF l_debug = FND_API.G_TRUE THEN
2137: QP_PREQ_GRP.engine_debug('i am in RANGE block...');
2138: END IF; -- END IF l_debug
2139:
2140: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2141: l_sign := 1;

Line 2140: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

2136: IF l_debug = FND_API.G_TRUE THEN
2137: QP_PREQ_GRP.engine_debug('i am in RANGE block...');
2138: END IF; -- END IF l_debug
2139:
2140: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2141: l_sign := 1;
2142: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2143: l_sign := - 1;
2144: END IF;

Line 2142: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN

2138: END IF; -- END IF l_debug
2139:
2140: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2141: l_sign := 1;
2142: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2143: l_sign := - 1;
2144: END IF;
2145:
2146: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

Line 2146: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

2142: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2143: l_sign := - 1;
2144: END IF;
2145:
2146: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
2147: l_sign := 1; -- new price discount/surcharge are the same
2148: END IF;
2149:
2150: IF l_debug = FND_API.G_TRUE THEN

Line 2151: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);

2147: l_sign := 1; -- new price discount/surcharge are the same
2148: END IF;
2149:
2150: IF l_debug = FND_API.G_TRUE THEN
2151: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);
2152: END IF; -- END IF l_debug
2153:
2154: IF l_debug = FND_API.G_TRUE THEN
2155: QP_PREQ_GRP.engine_debug('l_total_value now: '|| l_total_value || ' is used to get_satisfied_range.');

Line 2155: QP_PREQ_GRP.engine_debug('l_total_value now: '|| l_total_value || ' is used to get_satisfied_range.');

2151: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);
2152: END IF; -- END IF l_debug
2153:
2154: IF l_debug = FND_API.G_TRUE THEN
2155: QP_PREQ_GRP.engine_debug('l_total_value now: '|| l_total_value || ' is used to get_satisfied_range.');
2156: END IF; -- END IF l_debug
2157:
2158: Get_Satisfied_Range(pbh_child_rec.value_from, pbh_child_rec.value_to, pbh_child_rec.qualifier_value,
2159: pbh_child_rec.list_line_id, l_continuous_flag, 'N', l_satisfied_value);

Line 2162: QP_PREQ_GRP.engine_debug('l_satisfied_range from Get_Satisfied_Range: '|| l_satisfied_value);

2158: Get_Satisfied_Range(pbh_child_rec.value_from, pbh_child_rec.value_to, pbh_child_rec.qualifier_value,
2159: pbh_child_rec.list_line_id, l_continuous_flag, 'N', l_satisfied_value);
2160:
2161: IF l_debug = FND_API.G_TRUE THEN
2162: QP_PREQ_GRP.engine_debug('l_satisfied_range from Get_Satisfied_Range: '|| l_satisfied_value);
2163: END IF; -- END IF l_debug
2164: pbh_adjustments(i).l_raw_satisfied_value := l_satisfied_value; -- 5335689
2165: IF (pbh_child_rec.qualifier_value > 0 AND l_satisfied_value > 0) OR (pbh_child_rec.qualifier_value < 0 AND l_satisfied_value < 0)THEN --bug#15895472
2166: l_break_qualified := 'Y'; --[julin/4671446]

Line 2178: QP_PREQ_GRP.engine_debug('p_total_value >= 0');

2174: v_attribute_value_per_unit := p_total_value / p_req_value_per_unit; --2388011_latest
2175: --pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value/v_attribute_value_per_unit; --2388011_latest
2176: pbh_adjustments(i).l_satisfied_value := l_satisfied_value / v_attribute_value_per_unit; -- SHU diff RAVI
2177: IF l_debug = FND_API.G_TRUE THEN
2178: QP_PREQ_GRP.engine_debug('p_total_value >= 0');
2179: QP_PREQ_GRP.engine_debug('v_attribute_value_per_unit (p_total_value/p_req_value_per_unit): ' || v_attribute_value_per_unit);
2180: QP_PREQ_GRP.engine_debug('l_raw_satisfied_value: ' || pbh_adjustments(i).l_raw_satisfied_value);
2181: QP_PREQ_GRP.engine_debug('l_satisfied_value assigned back to this child break: '|| pbh_adjustments(i).l_satisfied_value);
2182: END IF; -- END IF l_debug

Line 2179: QP_PREQ_GRP.engine_debug('v_attribute_value_per_unit (p_total_value/p_req_value_per_unit): ' || v_attribute_value_per_unit);

2175: --pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value/v_attribute_value_per_unit; --2388011_latest
2176: pbh_adjustments(i).l_satisfied_value := l_satisfied_value / v_attribute_value_per_unit; -- SHU diff RAVI
2177: IF l_debug = FND_API.G_TRUE THEN
2178: QP_PREQ_GRP.engine_debug('p_total_value >= 0');
2179: QP_PREQ_GRP.engine_debug('v_attribute_value_per_unit (p_total_value/p_req_value_per_unit): ' || v_attribute_value_per_unit);
2180: QP_PREQ_GRP.engine_debug('l_raw_satisfied_value: ' || pbh_adjustments(i).l_raw_satisfied_value);
2181: QP_PREQ_GRP.engine_debug('l_satisfied_value assigned back to this child break: '|| pbh_adjustments(i).l_satisfied_value);
2182: END IF; -- END IF l_debug
2183: ELSE

Line 2180: QP_PREQ_GRP.engine_debug('l_raw_satisfied_value: ' || pbh_adjustments(i).l_raw_satisfied_value);

2176: pbh_adjustments(i).l_satisfied_value := l_satisfied_value / v_attribute_value_per_unit; -- SHU diff RAVI
2177: IF l_debug = FND_API.G_TRUE THEN
2178: QP_PREQ_GRP.engine_debug('p_total_value >= 0');
2179: QP_PREQ_GRP.engine_debug('v_attribute_value_per_unit (p_total_value/p_req_value_per_unit): ' || v_attribute_value_per_unit);
2180: QP_PREQ_GRP.engine_debug('l_raw_satisfied_value: ' || pbh_adjustments(i).l_raw_satisfied_value);
2181: QP_PREQ_GRP.engine_debug('l_satisfied_value assigned back to this child break: '|| pbh_adjustments(i).l_satisfied_value);
2182: END IF; -- END IF l_debug
2183: ELSE
2184: pbh_adjustments(i).l_satisfied_value := l_satisfied_value;

Line 2181: QP_PREQ_GRP.engine_debug('l_satisfied_value assigned back to this child break: '|| pbh_adjustments(i).l_satisfied_value);

2177: IF l_debug = FND_API.G_TRUE THEN
2178: QP_PREQ_GRP.engine_debug('p_total_value >= 0');
2179: QP_PREQ_GRP.engine_debug('v_attribute_value_per_unit (p_total_value/p_req_value_per_unit): ' || v_attribute_value_per_unit);
2180: QP_PREQ_GRP.engine_debug('l_raw_satisfied_value: ' || pbh_adjustments(i).l_raw_satisfied_value);
2181: QP_PREQ_GRP.engine_debug('l_satisfied_value assigned back to this child break: '|| pbh_adjustments(i).l_satisfied_value);
2182: END IF; -- END IF l_debug
2183: ELSE
2184: pbh_adjustments(i).l_satisfied_value := l_satisfied_value;
2185: IF l_debug = FND_API.G_TRUE THEN

Line 2186: QP_PREQ_GRP.engine_debug('l_satisfied_value assigned back to this child break: '|| pbh_adjustments(i).l_satisfied_value);

2182: END IF; -- END IF l_debug
2183: ELSE
2184: pbh_adjustments(i).l_satisfied_value := l_satisfied_value;
2185: IF l_debug = FND_API.G_TRUE THEN
2186: QP_PREQ_GRP.engine_debug('l_satisfied_value assigned back to this child break: '|| pbh_adjustments(i).l_satisfied_value);
2187: END IF; -- END IF l_debug
2188: END IF; -- END IF (p_total_value > 0)
2189: END IF; -- END IF (p_bucketed_flag = 'Y') THEN
2190:

Line 2210: QP_PREQ_GRP.engine_debug('Adjustment : (' || i || ') ' || l_adjustment_amount);

2206: pbh_adjustments(i).l_adjustment_amount := l_adjustment_amount;
2207: pbh_child_dtl_tbl(i) := pbh_child_rec;
2208:
2209: IF l_debug = FND_API.G_TRUE THEN
2210: QP_PREQ_GRP.engine_debug('Adjustment : (' || i || ') ' || l_adjustment_amount);
2211: QP_PREQ_GRP.engine_debug('Satisfied Value : (' || i || ') ' || l_satisfied_value);
2212: QP_PREQ_GRP.engine_debug('Total Value for next child line: (' || i || ') ' || l_total_value);
2213: END IF; -- END IF l_debug
2214:

Line 2211: QP_PREQ_GRP.engine_debug('Satisfied Value : (' || i || ') ' || l_satisfied_value);

2207: pbh_child_dtl_tbl(i) := pbh_child_rec;
2208:
2209: IF l_debug = FND_API.G_TRUE THEN
2210: QP_PREQ_GRP.engine_debug('Adjustment : (' || i || ') ' || l_adjustment_amount);
2211: QP_PREQ_GRP.engine_debug('Satisfied Value : (' || i || ') ' || l_satisfied_value);
2212: QP_PREQ_GRP.engine_debug('Total Value for next child line: (' || i || ') ' || l_total_value);
2213: END IF; -- END IF l_debug
2214:
2215: END IF; -- END IF (p_break_type = POINT or RANGE

Line 2212: QP_PREQ_GRP.engine_debug('Total Value for next child line: (' || i || ') ' || l_total_value);

2208:
2209: IF l_debug = FND_API.G_TRUE THEN
2210: QP_PREQ_GRP.engine_debug('Adjustment : (' || i || ') ' || l_adjustment_amount);
2211: QP_PREQ_GRP.engine_debug('Satisfied Value : (' || i || ') ' || l_satisfied_value);
2212: QP_PREQ_GRP.engine_debug('Total Value for next child line: (' || i || ') ' || l_total_value);
2213: END IF; -- END IF l_debug
2214:
2215: END IF; -- END IF (p_break_type = POINT or RANGE
2216:

Line 2221: -- IF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN --bug#12916970

2217: END LOOP;
2218:
2219: CLOSE get_price_break_details;
2220:
2221: -- IF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN --bug#12916970
2222: FOR i IN 1 .. pbh_adjustments.COUNT
2223: LOOP
2224:
2225: l_range_adjustment := l_range_adjustment + nvl(pbh_adjustments(i).l_adjustment_amount *

Line 2229: QP_PREQ_GRP.engine_debug('--- '||'break child '|| i ||' ---');

2225: l_range_adjustment := l_range_adjustment + nvl(pbh_adjustments(i).l_adjustment_amount *
2226: pbh_adjustments(i).l_satisfied_value, 0);
2227:
2228: IF l_debug = FND_API.G_TRUE THEN
2229: QP_PREQ_GRP.engine_debug('--- '||'break child '|| i ||' ---');
2230: QP_PREQ_GRP.engine_debug('l_adjustment_amount: '|| pbh_adjustments(i).l_adjustment_amount);
2231: QP_PREQ_GRP.engine_debug('l_satisfied_value: '|| nvl(pbh_adjustments(i).l_raw_satisfied_value,
2232: pbh_adjustments(i).l_satisfied_value));
2233: QP_PREQ_GRP.engine_debug('l_range_adjustment total: '|| l_range_adjustment);

Line 2230: QP_PREQ_GRP.engine_debug('l_adjustment_amount: '|| pbh_adjustments(i).l_adjustment_amount);

2226: pbh_adjustments(i).l_satisfied_value, 0);
2227:
2228: IF l_debug = FND_API.G_TRUE THEN
2229: QP_PREQ_GRP.engine_debug('--- '||'break child '|| i ||' ---');
2230: QP_PREQ_GRP.engine_debug('l_adjustment_amount: '|| pbh_adjustments(i).l_adjustment_amount);
2231: QP_PREQ_GRP.engine_debug('l_satisfied_value: '|| nvl(pbh_adjustments(i).l_raw_satisfied_value,
2232: pbh_adjustments(i).l_satisfied_value));
2233: QP_PREQ_GRP.engine_debug('l_range_adjustment total: '|| l_range_adjustment);
2234: END IF; -- END IF l_debug

Line 2231: QP_PREQ_GRP.engine_debug('l_satisfied_value: '|| nvl(pbh_adjustments(i).l_raw_satisfied_value,

2227:
2228: IF l_debug = FND_API.G_TRUE THEN
2229: QP_PREQ_GRP.engine_debug('--- '||'break child '|| i ||' ---');
2230: QP_PREQ_GRP.engine_debug('l_adjustment_amount: '|| pbh_adjustments(i).l_adjustment_amount);
2231: QP_PREQ_GRP.engine_debug('l_satisfied_value: '|| nvl(pbh_adjustments(i).l_raw_satisfied_value,
2232: pbh_adjustments(i).l_satisfied_value));
2233: QP_PREQ_GRP.engine_debug('l_range_adjustment total: '|| l_range_adjustment);
2234: END IF; -- END IF l_debug
2235: END LOOP;

Line 2233: QP_PREQ_GRP.engine_debug('l_range_adjustment total: '|| l_range_adjustment);

2229: QP_PREQ_GRP.engine_debug('--- '||'break child '|| i ||' ---');
2230: QP_PREQ_GRP.engine_debug('l_adjustment_amount: '|| pbh_adjustments(i).l_adjustment_amount);
2231: QP_PREQ_GRP.engine_debug('l_satisfied_value: '|| nvl(pbh_adjustments(i).l_raw_satisfied_value,
2232: pbh_adjustments(i).l_satisfied_value));
2233: QP_PREQ_GRP.engine_debug('l_range_adjustment total: '|| l_range_adjustment);
2234: END IF; -- END IF l_debug
2235: END LOOP;
2236: -- x_adjustment_amount := l_range_adjustment / p_req_value_per_unit; -- ravi_new
2237: --bug#13776174

Line 2238: IF (p_total_value > 0 ) AND (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN

2234: END IF; -- END IF l_debug
2235: END LOOP;
2236: -- x_adjustment_amount := l_range_adjustment / p_req_value_per_unit; -- ravi_new
2237: --bug#13776174
2238: IF (p_total_value > 0 ) AND (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN
2239: x_adjustment_amount := l_range_adjustment / p_total_value; -- ravi_new
2240: ELSE
2241: x_adjustment_amount := l_range_adjustment / p_req_value_per_unit;
2242: END IF;

Line 2245: QP_PREQ_GRP.engine_debug('Range Break Averaged Adjustment : ' || x_adjustment_amount);

2241: x_adjustment_amount := l_range_adjustment / p_req_value_per_unit;
2242: END IF;
2243: --bug#13776174
2244: IF l_debug = FND_API.G_TRUE THEN
2245: QP_PREQ_GRP.engine_debug('Range Break Averaged Adjustment : ' || x_adjustment_amount);
2246: END IF; -- END IF l_debug
2247:
2248: -- END IF; --bug#12916970
2249:

Line 2251: IF (QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES) THEN

2247:
2248: -- END IF; --bug#12916970
2249:
2250: -- Update the adjustments/satisfied ranges info on line details
2251: IF (QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES) THEN
2252: IF (pbh_adjustments.COUNT > 0) THEN
2253: IF l_debug = FND_API.G_TRUE THEN
2254: QP_PREQ_GRP.engine_debug('updating child pbh lines '|| pbh_adjustments.COUNT);
2255: QP_PREQ_GRP.engine_debug('l_break_qualified=' || l_break_qualified);

Line 2254: QP_PREQ_GRP.engine_debug('updating child pbh lines '|| pbh_adjustments.COUNT);

2250: -- Update the adjustments/satisfied ranges info on line details
2251: IF (QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES) THEN
2252: IF (pbh_adjustments.COUNT > 0) THEN
2253: IF l_debug = FND_API.G_TRUE THEN
2254: QP_PREQ_GRP.engine_debug('updating child pbh lines '|| pbh_adjustments.COUNT);
2255: QP_PREQ_GRP.engine_debug('l_break_qualified=' || l_break_qualified);
2256: END IF; -- END IF l_debug
2257: IF l_break_qualified = 'Y' THEN
2258: FOR i IN pbh_adjustments.FIRST .. pbh_adjustments.LAST LOOP

Line 2255: QP_PREQ_GRP.engine_debug('l_break_qualified=' || l_break_qualified);

2251: IF (QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES) THEN
2252: IF (pbh_adjustments.COUNT > 0) THEN
2253: IF l_debug = FND_API.G_TRUE THEN
2254: QP_PREQ_GRP.engine_debug('updating child pbh lines '|| pbh_adjustments.COUNT);
2255: QP_PREQ_GRP.engine_debug('l_break_qualified=' || l_break_qualified);
2256: END IF; -- END IF l_debug
2257: IF l_break_qualified = 'Y' THEN
2258: FOR i IN pbh_adjustments.FIRST .. pbh_adjustments.LAST LOOP
2259: l_ord_qty_operand := 0;

Line 2286: QP_PREQ_GRP.engine_debug('child dtl adj amt '

2282: WHEN OTHERS THEN
2283: NULL;
2284: END;
2285: IF l_debug = FND_API.G_TRUE THEN
2286: QP_PREQ_GRP.engine_debug('child dtl adj amt '
2287: || pbh_adjustments(i).l_adjustment_amount
2288: ||' l_satisfied_value '|| pbh_adjustments(i).l_satisfied_value
2289: ||' ordqtyadjamt '|| l_ord_qty_adj_amt
2290: ||' order_qty_operand '|| l_ord_qty_operand

Line 2303: AND pricing_status_code IN (QP_PREQ_GRP.G_STATUS_NEW,

2299: pbh_adjustments(i).l_satisfied_value)
2300: , order_qty_adj_amt = - (l_ord_qty_adj_amt) -- bug 3285662
2301: , order_qty_operand = l_ord_qty_operand
2302: WHERE line_detail_index = pbh_adjustments(i).l_related_line_detail_index
2303: AND pricing_status_code IN (QP_PREQ_GRP.G_STATUS_NEW,
2304: --changes for bug 2264566 update adjamt on child lines of manualpbh
2305: QP_PREQ_GRP.G_STATUS_UNCHANGED);
2306: END LOOP;
2307: ELSE

Line 2305: QP_PREQ_GRP.G_STATUS_UNCHANGED);

2301: , order_qty_operand = l_ord_qty_operand
2302: WHERE line_detail_index = pbh_adjustments(i).l_related_line_detail_index
2303: AND pricing_status_code IN (QP_PREQ_GRP.G_STATUS_NEW,
2304: --changes for bug 2264566 update adjamt on child lines of manualpbh
2305: QP_PREQ_GRP.G_STATUS_UNCHANGED);
2306: END LOOP;
2307: ELSE
2308: IF p_automatic_flag <> QP_PREQ_PUB.G_NO THEN -- 5413797
2309: l_del_index_tbl(1) := p_list_line_id;

Line 2321: QP_PREQ_GRP.ENGINE_DEBUG('Error in price break calculation: '|| SQLERRM);

2317:
2318: EXCEPTION
2319: WHEN OTHERS THEN
2320: IF l_debug = FND_API.G_TRUE THEN
2321: QP_PREQ_GRP.ENGINE_DEBUG('Error in price break calculation: '|| SQLERRM);
2322: END IF; -- END IF l_debug
2323: x_return_status := FND_API.G_RET_STS_ERROR;
2324: x_return_status_text := l_routine ||' '|| SQLERRM;
2325: END Price_Break_Calculation;

Line 2349: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_NO

2345: , setup_value_from value_from
2346: , setup_value_to value_to
2347: , qualifier_value
2348: FROM qp_npreq_rltd_lines_tmp
2349: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_NO
2350: AND list_line_id = p_list_line_id
2351: AND line_index = p_line_index
2352: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW
2353: --fix for bug 2515762 added the union clause to distinguish between

Line 2352: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW

2348: FROM qp_npreq_rltd_lines_tmp
2349: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_NO
2350: AND list_line_id = p_list_line_id
2351: AND line_index = p_line_index
2352: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW
2353: --fix for bug 2515762 added the union clause to distinguish between
2354: --the passed-in rltd lines of PBH modifier versus the engine-inserted
2355: --when called from public API
2356: --made corresponding changes in the public API to pass the dtl_index

Line 2370: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES

2366: , setup_value_from value_from
2367: , setup_value_to value_to
2368: , qualifier_value
2369: FROM qp_npreq_rltd_lines_tmp
2370: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES
2371: AND line_index = p_line_index
2372: AND line_detail_index = p_list_line_id
2373: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW
2374: ORDER BY 7 ;

Line 2373: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW

2369: FROM qp_npreq_rltd_lines_tmp
2370: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES
2371: AND line_index = p_line_index
2372: AND line_detail_index = p_list_line_id
2373: AND pricing_status_code = QP_PREQ_GRP.G_STATUS_NEW
2374: ORDER BY 7 ;
2375:
2376: pbh_child_rec get_price_break_details%ROWTYPE;
2377:

Line 2404: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_NO

2400: -- 4061138, 5183755 continuous price breaks
2401: CURSOR get_continuous_flag_cur IS
2402: SELECT nvl(continuous_price_break_flag, 'N')
2403: FROM qp_list_lines
2404: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_NO
2405: AND list_line_id = p_list_line_id
2406: AND ROWNUM = 1
2407: UNION
2408: SELECT nvl(qpll.continuous_price_break_flag, 'N')

Line 2410: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES

2406: AND ROWNUM = 1
2407: UNION
2408: SELECT nvl(qpll.continuous_price_break_flag, 'N')
2409: FROM qp_list_lines qpll, qp_npreq_rltd_lines_tmp rltd
2410: WHERE QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES
2411: AND rltd.line_index = p_line_index
2412: AND rltd.line_detail_index = p_list_line_id
2413: AND rltd.list_line_id = qpll.list_line_id
2414: AND ROWNUM = 1;

Line 2420: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

2416: l_continuous_flag VARCHAR2(1) := 'N';
2417:
2418: BEGIN
2419:
2420: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
2421: IF l_debug = FND_API.G_TRUE THEN
2422: QP_PREQ_GRP.engine_debug('#90 p_id '|| p_list_line_id ||' pub_api_call_flg '
2423: || QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG);
2424: END IF;

Line 2422: QP_PREQ_GRP.engine_debug('#90 p_id '|| p_list_line_id ||' pub_api_call_flg '

2418: BEGIN
2419:
2420: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
2421: IF l_debug = FND_API.G_TRUE THEN
2422: QP_PREQ_GRP.engine_debug('#90 p_id '|| p_list_line_id ||' pub_api_call_flg '
2423: || QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG);
2424: END IF;
2425: x_adjustment_amount := 0;
2426: l_line_index := p_line_index; -- accum range break

Line 2423: || QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG);

2419:
2420: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
2421: IF l_debug = FND_API.G_TRUE THEN
2422: QP_PREQ_GRP.engine_debug('#90 p_id '|| p_list_line_id ||' pub_api_call_flg '
2423: || QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG);
2424: END IF;
2425: x_adjustment_amount := 0;
2426: l_line_index := p_line_index; -- accum range break
2427: IF l_debug = FND_API.G_TRUE THEN

Line 2428: QP_PREQ_GRP.engine_debug('#100');

2424: END IF;
2425: x_adjustment_amount := 0;
2426: l_line_index := p_line_index; -- accum range break
2427: IF l_debug = FND_API.G_TRUE THEN
2428: QP_PREQ_GRP.engine_debug('#100');
2429:
2430: END IF;
2431:
2432: -- 4061138, 5183755

Line 2440: QP_PREQ_GRP.engine_debug('#101');

2436:
2437: OPEN get_price_break_details;
2438:
2439: IF l_debug = FND_API.G_TRUE THEN
2440: QP_PREQ_GRP.engine_debug('#101');
2441:
2442: END IF;
2443: LOOP
2444:

Line 2446: QP_PREQ_GRP.engine_debug('#102');

2442: END IF;
2443: LOOP
2444:
2445: IF l_debug = FND_API.G_TRUE THEN
2446: QP_PREQ_GRP.engine_debug('#102');
2447: END IF;
2448:
2449: i := i + 1;
2450:

Line 2454: IF (QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES) THEN

2450:
2451: FETCH get_price_break_details INTO pbh_child_rec;
2452: EXIT WHEN get_price_break_details%NOTFOUND;
2453:
2454: IF (QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES) THEN
2455: pbh_child_rec.qualifier_value := p_request_qty;
2456: END IF;
2457:
2458: IF l_debug = FND_API.G_TRUE THEN

Line 2459: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);

2455: pbh_child_rec.qualifier_value := p_request_qty;
2456: END IF;
2457:
2458: IF l_debug = FND_API.G_TRUE THEN
2459: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);
2460: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);
2461: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);
2462: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
2463:

Line 2460: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);

2456: END IF;
2457:
2458: IF l_debug = FND_API.G_TRUE THEN
2459: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);
2460: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);
2461: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);
2462: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
2463:
2464: END IF;

Line 2461: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);

2457:
2458: IF l_debug = FND_API.G_TRUE THEN
2459: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);
2460: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);
2461: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);
2462: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
2463:
2464: END IF;
2465:

Line 2462: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);

2458: IF l_debug = FND_API.G_TRUE THEN
2459: QP_PREQ_GRP.engine_debug('PBH Qualifier Value : ' || pbh_child_rec.qualifier_value);
2460: QP_PREQ_GRP.engine_debug('PBH Value From : ' || pbh_child_rec.value_from);
2461: QP_PREQ_GRP.engine_debug('PBH Value To : ' || pbh_child_rec.value_to);
2462: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
2463:
2464: END IF;
2465:
2466: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN

Line 2466: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN

2462: QP_PREQ_GRP.engine_debug('PBH Break Type : ' || p_break_type);
2463:
2464: END IF;
2465:
2466: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN
2467:
2468: IF l_debug = FND_API.G_TRUE THEN
2469: QP_PREQ_GRP.engine_debug('Before PBH List Line Type : ' || pbh_child_rec.related_list_line_type);
2470: END IF;

Line 2469: QP_PREQ_GRP.engine_debug('Before PBH List Line Type : ' || pbh_child_rec.related_list_line_type);

2465:
2466: IF (p_break_type = QP_PREQ_GRP.G_POINT_BREAK) THEN
2467:
2468: IF l_debug = FND_API.G_TRUE THEN
2469: QP_PREQ_GRP.engine_debug('Before PBH List Line Type : ' || pbh_child_rec.related_list_line_type);
2470: END IF;
2471: -- rewritten for 4061138
2472: IF ((l_continuous_flag <> 'Y' AND
2473: pbh_child_rec.qualifier_value BETWEEN pbh_child_rec.value_from AND pbh_child_rec.value_to)

Line 2480: QP_PREQ_GRP.engine_debug('In PBH List Line Type : ' || pbh_child_rec.related_list_line_type);

2476: pbh_child_rec.value_from < pbh_child_rec.qualifier_value AND
2477: pbh_child_rec.qualifier_value <= pbh_child_rec.value_to) )
2478: THEN
2479: IF l_debug = FND_API.G_TRUE THEN
2480: QP_PREQ_GRP.engine_debug('In PBH List Line Type : ' || pbh_child_rec.related_list_line_type);
2481:
2482: END IF;
2483: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2484: l_sign := 1;

Line 2483: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

2479: IF l_debug = FND_API.G_TRUE THEN
2480: QP_PREQ_GRP.engine_debug('In PBH List Line Type : ' || pbh_child_rec.related_list_line_type);
2481:
2482: END IF;
2483: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2484: l_sign := 1;
2485: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2486: l_sign := - 1;
2487: END IF;

Line 2485: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN

2481:
2482: END IF;
2483: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2484: l_sign := 1;
2485: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2486: l_sign := - 1;
2487: END IF;
2488:
2489: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

Line 2489: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

2485: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2486: l_sign := - 1;
2487: END IF;
2488:
2489: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
2490: l_sign := 1; -- new price discount/surcharge are the same
2491: END IF;
2492: IF l_debug = FND_API.G_TRUE THEN
2493: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);

Line 2493: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);

2489: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
2490: l_sign := 1; -- new price discount/surcharge are the same
2491: END IF;
2492: IF l_debug = FND_API.G_TRUE THEN
2493: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);
2494:
2495: END IF;
2496: Calculate_Adjustment(p_list_price,
2497: pbh_child_rec.operand_calculation_code,

Line 2508: QP_PREQ_GRP.engine_debug('PBH Adjustment : ' || l_adjustment_amount);

2504: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2505: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2506: END IF;
2507: IF l_debug = FND_API.G_TRUE THEN
2508: QP_PREQ_GRP.engine_debug('PBH Adjustment : ' || l_adjustment_amount);
2509:
2510: END IF;
2511: pbh_adjustments(i).l_adjustment_amount := l_adjustment_amount;
2512: pbh_adjustments(i).l_satisfied_value := pbh_child_rec.qualifier_value;

Line 2523: ELSIF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN

2519:
2520: pbh_adjustments(i).l_related_list_line_id := pbh_child_rec.related_list_line_id;
2521: pbh_adjustments(i).l_related_line_detail_index := pbh_child_rec.related_line_detail_index;
2522:
2523: ELSIF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN
2524:
2525: IF (l_qualifier_value = 0) THEN
2526: IF l_debug = FND_API.G_TRUE THEN
2527: QP_PREQ_GRP.engine_debug('Range Break');

Line 2527: QP_PREQ_GRP.engine_debug('Range Break');

2523: ELSIF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN
2524:
2525: IF (l_qualifier_value = 0) THEN
2526: IF l_debug = FND_API.G_TRUE THEN
2527: QP_PREQ_GRP.engine_debug('Range Break');
2528: END IF;
2529: l_qualifier_value := pbh_child_rec.qualifier_value;
2530: l_total_value := pbh_child_rec.qualifier_value;
2531: END IF;

Line 2533: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN

2529: l_qualifier_value := pbh_child_rec.qualifier_value;
2530: l_total_value := pbh_child_rec.qualifier_value;
2531: END IF;
2532:
2533: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2534: l_sign := 1;
2535: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2536: l_sign := - 1;
2537: END IF;

Line 2535: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN

2531: END IF;
2532:
2533: IF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_DISCOUNT) THEN
2534: l_sign := 1;
2535: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2536: l_sign := - 1;
2537: END IF;
2538:
2539: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

Line 2539: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN

2535: ELSIF (pbh_child_rec.related_list_line_type = QP_PREQ_GRP.G_SURCHARGE) THEN
2536: l_sign := - 1;
2537: END IF;
2538:
2539: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
2540: l_sign := 1; -- new price discount/surcharge are the same
2541: END IF;
2542: IF l_debug = FND_API.G_TRUE THEN
2543: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);

Line 2543: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);

2539: IF (pbh_child_rec.operand_calculation_code = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT) THEN
2540: l_sign := 1; -- new price discount/surcharge are the same
2541: END IF;
2542: IF l_debug = FND_API.G_TRUE THEN
2543: QP_PREQ_GRP.engine_debug('l sign: '|| l_sign);
2544:
2545: END IF;
2546: -- 3943868: was passing p_list_line_id instead of pbh_child_rec.list_line_id
2547: Get_Satisfied_Range(pbh_child_rec.value_from, pbh_child_rec.value_to,

Line 2577: QP_PREQ_GRP.engine_debug('Adjustment : (' || i || ') ' || l_adjustment_amount);

2573: --IF (l_total_value > 0) THEN
2574: --l_total_value := l_total_value - l_satisfied_value; -- this is correct to be commented out
2575:
2576: IF l_debug = FND_API.G_TRUE THEN
2577: QP_PREQ_GRP.engine_debug('Adjustment : (' || i || ') ' || l_adjustment_amount);
2578: QP_PREQ_GRP.engine_debug('Satisfied Value : (' || i || ') ' || l_satisfied_value);
2579: QP_PREQ_GRP.engine_debug('Total Value : (' || i || ') ' || l_total_value);
2580: END IF;
2581: --ELSE

Line 2578: QP_PREQ_GRP.engine_debug('Satisfied Value : (' || i || ') ' || l_satisfied_value);

2574: --l_total_value := l_total_value - l_satisfied_value; -- this is correct to be commented out
2575:
2576: IF l_debug = FND_API.G_TRUE THEN
2577: QP_PREQ_GRP.engine_debug('Adjustment : (' || i || ') ' || l_adjustment_amount);
2578: QP_PREQ_GRP.engine_debug('Satisfied Value : (' || i || ') ' || l_satisfied_value);
2579: QP_PREQ_GRP.engine_debug('Total Value : (' || i || ') ' || l_total_value);
2580: END IF;
2581: --ELSE
2582: -- pbh_adjustments(i).l_satisfied_value := 0;

Line 2579: QP_PREQ_GRP.engine_debug('Total Value : (' || i || ') ' || l_total_value);

2575:
2576: IF l_debug = FND_API.G_TRUE THEN
2577: QP_PREQ_GRP.engine_debug('Adjustment : (' || i || ') ' || l_adjustment_amount);
2578: QP_PREQ_GRP.engine_debug('Satisfied Value : (' || i || ') ' || l_satisfied_value);
2579: QP_PREQ_GRP.engine_debug('Total Value : (' || i || ') ' || l_total_value);
2580: END IF;
2581: --ELSE
2582: -- pbh_adjustments(i).l_satisfied_value := 0;
2583: --END IF;

Line 2591: IF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN

2587: END LOOP;
2588:
2589: CLOSE get_price_break_details;
2590:
2591: IF (p_break_type = QP_PREQ_GRP.G_RANGE_BREAK) THEN
2592: FOR i IN 1 .. pbh_adjustments.COUNT
2593: LOOP
2594: l_range_adjustment := l_range_adjustment + nvl(pbh_adjustments(i).l_adjustment_amount * pbh_adjustments(i).l_satisfied_value, 0);
2595: END LOOP;

Line 2599: QP_PREQ_GRP.engine_debug('Averaged Adjustment : ' || x_adjustment_amount);

2595: END LOOP;
2596: x_adjustment_amount := l_range_adjustment / l_qualifier_value;
2597:
2598: IF l_debug = FND_API.G_TRUE THEN
2599: QP_PREQ_GRP.engine_debug('Averaged Adjustment : ' || x_adjustment_amount);
2600:
2601: END IF;
2602: END IF;
2603:

Line 2605: IF (QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES) THEN

2601: END IF;
2602: END IF;
2603:
2604: -- Update the adjustments/satisfied ranges info on line details
2605: IF (QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES) THEN
2606: IF (pbh_adjustments.COUNT > 0) THEN
2607: IF l_debug = FND_API.G_TRUE THEN
2608: QP_PREQ_GRP.engine_debug('updating child pbh lines '
2609: || pbh_adjustments.COUNT);

Line 2608: QP_PREQ_GRP.engine_debug('updating child pbh lines '

2604: -- Update the adjustments/satisfied ranges info on line details
2605: IF (QP_PREQ_GRP.G_PUBLIC_API_CALL_FLAG = QP_PREQ_GRP.G_YES) THEN
2606: IF (pbh_adjustments.COUNT > 0) THEN
2607: IF l_debug = FND_API.G_TRUE THEN
2608: QP_PREQ_GRP.engine_debug('updating child pbh lines '
2609: || pbh_adjustments.COUNT);
2610: END IF;
2611: FOR i IN pbh_adjustments.FIRST .. pbh_adjustments.LAST LOOP
2612: IF l_debug = FND_API.G_TRUE THEN

Line 2613: QP_PREQ_GRP.engine_debug('child dtl adj amt '

2609: || pbh_adjustments.COUNT);
2610: END IF;
2611: FOR i IN pbh_adjustments.FIRST .. pbh_adjustments.LAST LOOP
2612: IF l_debug = FND_API.G_TRUE THEN
2613: QP_PREQ_GRP.engine_debug('child dtl adj amt '
2614: || pbh_adjustments(i).l_adjustment_amount
2615: ||' qty '|| pbh_adjustments(i).l_satisfied_value
2616: ||' dtl index '|| pbh_adjustments(i).l_related_line_detail_index);
2617: END IF;

Line 2624: AND pricing_status_code IN (QP_PREQ_GRP.G_STATUS_NEW,

2620: SET adjustment_amount = - (pbh_adjustments(i).l_adjustment_amount),
2621: --SET adjustment_amount = l_sign * pbh_adjustments(i).l_adjustment_amount,
2622: line_quantity = pbh_adjustments(i).l_satisfied_value
2623: WHERE line_detail_index = pbh_adjustments(i).l_related_line_detail_index
2624: AND pricing_status_code IN (QP_PREQ_GRP.G_STATUS_NEW,
2625: --changes for bug 2264566 update adjamt on child lines of manualpbh
2626: QP_PREQ_GRP.G_STATUS_UNCHANGED);
2627: END LOOP;
2628: END IF;

Line 2626: QP_PREQ_GRP.G_STATUS_UNCHANGED);

2622: line_quantity = pbh_adjustments(i).l_satisfied_value
2623: WHERE line_detail_index = pbh_adjustments(i).l_related_line_detail_index
2624: AND pricing_status_code IN (QP_PREQ_GRP.G_STATUS_NEW,
2625: --changes for bug 2264566 update adjamt on child lines of manualpbh
2626: QP_PREQ_GRP.G_STATUS_UNCHANGED);
2627: END LOOP;
2628: END IF;
2629: END IF;
2630:

Line 2635: QP_PREQ_GRP.ENGINE_DEBUG('Error in price break calculation: '|| SQLERRM);

2631:
2632: EXCEPTION
2633: WHEN OTHERS THEN
2634: IF l_debug = FND_API.G_TRUE THEN
2635: QP_PREQ_GRP.ENGINE_DEBUG('Error in price break calculation: '|| SQLERRM);
2636: END IF;
2637: x_return_status := FND_API.G_RET_STS_ERROR;
2638: x_return_status_text := l_routine ||' '|| SQLERRM;
2639: END Price_Break_Calculation;

Line 2660: AND a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW;

2656: FROM qp_npreq_ldets_tmp a, QP_LIST_HEADERS_B b
2657: WHERE a.CREATED_FROM_LIST_HEADER_ID = b.LIST_HEADER_ID
2658: AND a.LINE_INDEX = p_line_index
2659: AND a.CREATED_FROM_LIST_LINE_TYPE = 'PLL'
2660: AND a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW;
2661:
2662: CURSOR get_list_details_cur(p_source_system_code VARCHAR2) IS
2663: SELECT /*+ ORDERED USE_NL(a b c d e) */ c.LIST_LINE_ID, c.OPERAND
2664: FROM

Line 2672: AND c.ARITHMETIC_OPERATOR = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT

2668: AND a.ATTRIBUTE = b.PRODUCT_ATTRIBUTE
2669: AND a.VALUE_FROM = b.PRODUCT_ATTR_VALUE
2670: AND b.PRICING_ATTRIBUTE_CONTEXT IS NULL
2671: AND b.LIST_LINE_ID = c.LIST_LINE_ID
2672: AND c.ARITHMETIC_OPERATOR = QP_PREQ_GRP.G_NEWPRICE_DISCOUNT
2673: AND c.LIST_HEADER_ID = d.LIST_HEADER_ID
2674: AND trunc(p_pricing_date) BETWEEN nvl(TRUNC(c.START_DATE_ACTIVE), trunc(p_pricing_date))
2675: AND nvl(TRUNC(c.END_DATE_ACTIVE), trunc(p_pricing_date))
2676: AND d.SOURCE_SYSTEM_CODE = p_source_system_code

Line 2677: AND d.ACTIVE_FLAG = QP_PREQ_GRP.G_YES

2673: AND c.LIST_HEADER_ID = d.LIST_HEADER_ID
2674: AND trunc(p_pricing_date) BETWEEN nvl(TRUNC(c.START_DATE_ACTIVE), trunc(p_pricing_date))
2675: AND nvl(TRUNC(c.END_DATE_ACTIVE), trunc(p_pricing_date))
2676: AND d.SOURCE_SYSTEM_CODE = p_source_system_code
2677: AND d.ACTIVE_FLAG = QP_PREQ_GRP.G_YES
2678: AND d.LIST_HEADER_ID = e.LIST_HEADER_ID
2679: AND e.QUALIFIER_CONTEXT = QP_PREQ_GRP.G_CUSTOMER_CONTEXT
2680: AND e.QUALIFIER_ATTRIBUTE = QP_PREQ_GRP.G_GSA_ATTRIBUTE
2681: AND e.QUALIFIER_ATTR_VALUE = QP_PREQ_GRP.G_YES

Line 2679: AND e.QUALIFIER_CONTEXT = QP_PREQ_GRP.G_CUSTOMER_CONTEXT

2675: AND nvl(TRUNC(c.END_DATE_ACTIVE), trunc(p_pricing_date))
2676: AND d.SOURCE_SYSTEM_CODE = p_source_system_code
2677: AND d.ACTIVE_FLAG = QP_PREQ_GRP.G_YES
2678: AND d.LIST_HEADER_ID = e.LIST_HEADER_ID
2679: AND e.QUALIFIER_CONTEXT = QP_PREQ_GRP.G_CUSTOMER_CONTEXT
2680: AND e.QUALIFIER_ATTRIBUTE = QP_PREQ_GRP.G_GSA_ATTRIBUTE
2681: AND e.QUALIFIER_ATTR_VALUE = QP_PREQ_GRP.G_YES
2682: ORDER BY 2;
2683:

Line 2680: AND e.QUALIFIER_ATTRIBUTE = QP_PREQ_GRP.G_GSA_ATTRIBUTE

2676: AND d.SOURCE_SYSTEM_CODE = p_source_system_code
2677: AND d.ACTIVE_FLAG = QP_PREQ_GRP.G_YES
2678: AND d.LIST_HEADER_ID = e.LIST_HEADER_ID
2679: AND e.QUALIFIER_CONTEXT = QP_PREQ_GRP.G_CUSTOMER_CONTEXT
2680: AND e.QUALIFIER_ATTRIBUTE = QP_PREQ_GRP.G_GSA_ATTRIBUTE
2681: AND e.QUALIFIER_ATTR_VALUE = QP_PREQ_GRP.G_YES
2682: ORDER BY 2;
2683:
2684: BEGIN

Line 2681: AND e.QUALIFIER_ATTR_VALUE = QP_PREQ_GRP.G_YES

2677: AND d.ACTIVE_FLAG = QP_PREQ_GRP.G_YES
2678: AND d.LIST_HEADER_ID = e.LIST_HEADER_ID
2679: AND e.QUALIFIER_CONTEXT = QP_PREQ_GRP.G_CUSTOMER_CONTEXT
2680: AND e.QUALIFIER_ATTRIBUTE = QP_PREQ_GRP.G_GSA_ATTRIBUTE
2681: AND e.QUALIFIER_ATTR_VALUE = QP_PREQ_GRP.G_YES
2682: ORDER BY 2;
2683:
2684: BEGIN
2685: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

Line 2685: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

2681: AND e.QUALIFIER_ATTR_VALUE = QP_PREQ_GRP.G_YES
2682: ORDER BY 2;
2683:
2684: BEGIN
2685: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
2686: x_return_status := FND_API.G_RET_STS_SUCCESS;
2687:
2688: OPEN get_source_system_code;
2689: FETCH get_source_system_code INTO v_source_system_code;

Line 2697: QP_PREQ_GRP.engine_debug ('GSA List Line : ' || v_list_line_id);

2693: FETCH get_list_details_cur INTO v_list_line_id, v_operand;
2694: CLOSE get_list_details_cur;
2695:
2696: IF l_debug = FND_API.G_TRUE THEN
2697: QP_PREQ_GRP.engine_debug ('GSA List Line : ' || v_list_line_id);
2698: QP_PREQ_GRP.engine_debug ('GSA Price : ' || v_operand);
2699: QP_PREQ_GRP.engine_debug('GSA List Line : ' || v_list_line_id);
2700: QP_PREQ_GRP.engine_debug('GSA Price : ' || v_operand);
2701:

Line 2698: QP_PREQ_GRP.engine_debug ('GSA Price : ' || v_operand);

2694: CLOSE get_list_details_cur;
2695:
2696: IF l_debug = FND_API.G_TRUE THEN
2697: QP_PREQ_GRP.engine_debug ('GSA List Line : ' || v_list_line_id);
2698: QP_PREQ_GRP.engine_debug ('GSA Price : ' || v_operand);
2699: QP_PREQ_GRP.engine_debug('GSA List Line : ' || v_list_line_id);
2700: QP_PREQ_GRP.engine_debug('GSA Price : ' || v_operand);
2701:
2702: END IF;

Line 2699: QP_PREQ_GRP.engine_debug('GSA List Line : ' || v_list_line_id);

2695:
2696: IF l_debug = FND_API.G_TRUE THEN
2697: QP_PREQ_GRP.engine_debug ('GSA List Line : ' || v_list_line_id);
2698: QP_PREQ_GRP.engine_debug ('GSA Price : ' || v_operand);
2699: QP_PREQ_GRP.engine_debug('GSA List Line : ' || v_list_line_id);
2700: QP_PREQ_GRP.engine_debug('GSA Price : ' || v_operand);
2701:
2702: END IF;
2703: IF (v_operand IS NOT NULL)

Line 2700: QP_PREQ_GRP.engine_debug('GSA Price : ' || v_operand);

2696: IF l_debug = FND_API.G_TRUE THEN
2697: QP_PREQ_GRP.engine_debug ('GSA List Line : ' || v_list_line_id);
2698: QP_PREQ_GRP.engine_debug ('GSA Price : ' || v_operand);
2699: QP_PREQ_GRP.engine_debug('GSA List Line : ' || v_list_line_id);
2700: QP_PREQ_GRP.engine_debug('GSA Price : ' || v_operand);
2701:
2702: END IF;
2703: IF (v_operand IS NOT NULL)
2704: --changes made by spgopal for ASO bug 1898927

Line 2713: QP_PREQ_GRP.engine_debug(v_routine_name || ' GSA Violation. GSA Price: ' || v_operand || 'List Line: ' || v_list_line_id);

2709:
2710: EXCEPTION
2711: WHEN GSA_VIOLATION THEN
2712: IF l_debug = FND_API.G_TRUE THEN
2713: QP_PREQ_GRP.engine_debug(v_routine_name || ' GSA Violation. GSA Price: ' || v_operand || 'List Line: ' || v_list_line_id);
2714: END IF;
2715: x_return_status := QP_PREQ_GRP.G_STATUS_GSA_VIOLATION;
2716: x_return_status_txt := v_operand ;
2717: WHEN OTHERS THEN

Line 2715: x_return_status := QP_PREQ_GRP.G_STATUS_GSA_VIOLATION;

2711: WHEN GSA_VIOLATION THEN
2712: IF l_debug = FND_API.G_TRUE THEN
2713: QP_PREQ_GRP.engine_debug(v_routine_name || ' GSA Violation. GSA Price: ' || v_operand || 'List Line: ' || v_list_line_id);
2714: END IF;
2715: x_return_status := QP_PREQ_GRP.G_STATUS_GSA_VIOLATION;
2716: x_return_status_txt := v_operand ;
2717: WHEN OTHERS THEN
2718: IF l_debug = FND_API.G_TRUE THEN
2719: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);

Line 2719: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);

2715: x_return_status := QP_PREQ_GRP.G_STATUS_GSA_VIOLATION;
2716: x_return_status_txt := v_operand ;
2717: WHEN OTHERS THEN
2718: IF l_debug = FND_API.G_TRUE THEN
2719: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);
2720: END IF;
2721: x_return_status := FND_API.G_RET_STS_ERROR;
2722: x_return_status_txt := v_routine_name || ' ' || SQLERRM;
2723: END GSA_Max_Discount_Check;

Line 2773: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;

2769: -- Get the records from the l_request_line_details_tbl in the order
2770: --of pricing sequence(this cannot be done
2771: -- using PL/SQL table. I am assuming that I would get the records in ordered sequence
2772:
2773: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
2774: IF l_debug = FND_API.G_TRUE THEN
2775: QP_PREQ_GRP.engine_debug ('In Procedure Calculate_Price...'); -- shu, aso rounding, 2457629
2776: QP_PREQ_GRP.engine_debug ('selling price rounding options : ' || v_price_round_options); -- shu
2777: QP_PREQ_GRP.engine_debug ('Rounding Flag : ' || QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, 2457629

Line 2775: QP_PREQ_GRP.engine_debug ('In Procedure Calculate_Price...'); -- shu, aso rounding, 2457629

2771: -- using PL/SQL table. I am assuming that I would get the records in ordered sequence
2772:
2773: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
2774: IF l_debug = FND_API.G_TRUE THEN
2775: QP_PREQ_GRP.engine_debug ('In Procedure Calculate_Price...'); -- shu, aso rounding, 2457629
2776: QP_PREQ_GRP.engine_debug ('selling price rounding options : ' || v_price_round_options); -- shu
2777: QP_PREQ_GRP.engine_debug ('Rounding Flag : ' || QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, 2457629
2778: QP_PREQ_GRP.engine_debug ('Rounding Factor : ' || p_request_line.rounding_factor);
2779: END IF;

Line 2776: QP_PREQ_GRP.engine_debug ('selling price rounding options : ' || v_price_round_options); -- shu

2772:
2773: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
2774: IF l_debug = FND_API.G_TRUE THEN
2775: QP_PREQ_GRP.engine_debug ('In Procedure Calculate_Price...'); -- shu, aso rounding, 2457629
2776: QP_PREQ_GRP.engine_debug ('selling price rounding options : ' || v_price_round_options); -- shu
2777: QP_PREQ_GRP.engine_debug ('Rounding Flag : ' || QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, 2457629
2778: QP_PREQ_GRP.engine_debug ('Rounding Factor : ' || p_request_line.rounding_factor);
2779: END IF;
2780:

Line 2777: QP_PREQ_GRP.engine_debug ('Rounding Flag : ' || QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, 2457629

2773: l_debug := QP_PREQ_GRP.G_DEBUG_ENGINE;
2774: IF l_debug = FND_API.G_TRUE THEN
2775: QP_PREQ_GRP.engine_debug ('In Procedure Calculate_Price...'); -- shu, aso rounding, 2457629
2776: QP_PREQ_GRP.engine_debug ('selling price rounding options : ' || v_price_round_options); -- shu
2777: QP_PREQ_GRP.engine_debug ('Rounding Flag : ' || QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, 2457629
2778: QP_PREQ_GRP.engine_debug ('Rounding Factor : ' || p_request_line.rounding_factor);
2779: END IF;
2780:
2781: IF (p_request_line.rounding_flag = 'Y' AND p_request_line.rounding_factor IS NULL) THEN -- shu

Line 2778: QP_PREQ_GRP.engine_debug ('Rounding Factor : ' || p_request_line.rounding_factor);

2774: IF l_debug = FND_API.G_TRUE THEN
2775: QP_PREQ_GRP.engine_debug ('In Procedure Calculate_Price...'); -- shu, aso rounding, 2457629
2776: QP_PREQ_GRP.engine_debug ('selling price rounding options : ' || v_price_round_options); -- shu
2777: QP_PREQ_GRP.engine_debug ('Rounding Flag : ' || QP_PREQ_GRP.G_ROUNDING_FLAG); -- aso rounding, 2457629
2778: QP_PREQ_GRP.engine_debug ('Rounding Factor : ' || p_request_line.rounding_factor);
2779: END IF;
2780:
2781: IF (p_request_line.rounding_flag = 'Y' AND p_request_line.rounding_factor IS NULL) THEN -- shu
2782: IF l_debug = FND_API.G_TRUE THEN

Line 2783: QP_PREQ_GRP.engine_debug ('WARNING: rounding_flag is Y, but rounding_factor is NULL!!!');

2779: END IF;
2780:
2781: IF (p_request_line.rounding_flag = 'Y' AND p_request_line.rounding_factor IS NULL) THEN -- shu
2782: IF l_debug = FND_API.G_TRUE THEN
2783: QP_PREQ_GRP.engine_debug ('WARNING: rounding_flag is Y, but rounding_factor is NULL!!!');
2784: END IF;
2785: END IF;
2786:
2787: -- For accum range break

Line 2793: QP_PREQ_GRP.engine_debug('The request line tables count is: ' || p_request_line_details.COUNT);

2789:
2790: -- Loop through the p_request_line_details
2791:
2792: IF l_debug = FND_API.G_TRUE THEN
2793: QP_PREQ_GRP.engine_debug('The request line tables count is: ' || p_request_line_details.COUNT);
2794: END IF;
2795:
2796: v_index := p_request_line_details.FIRST;
2797: WHILE (v_index IS NOT NULL )

Line 2801: QP_PREQ_GRP.engine_debug('LOOPing through p_request_line_details........');

2797: WHILE (v_index IS NOT NULL )
2798: LOOP
2799:
2800: IF l_debug = FND_API.G_TRUE THEN
2801: QP_PREQ_GRP.engine_debug('LOOPing through p_request_line_details........');
2802: QP_PREQ_GRP.engine_debug('The request line index is: ' || v_index);
2803: QP_PREQ_GRP.engine_debug('PBH Type123:' || p_request_line_details(v_index).CREATED_FROM_LIST_TYPE);
2804: END IF;
2805:

Line 2802: QP_PREQ_GRP.engine_debug('The request line index is: ' || v_index);

2798: LOOP
2799:
2800: IF l_debug = FND_API.G_TRUE THEN
2801: QP_PREQ_GRP.engine_debug('LOOPing through p_request_line_details........');
2802: QP_PREQ_GRP.engine_debug('The request line index is: ' || v_index);
2803: QP_PREQ_GRP.engine_debug('PBH Type123:' || p_request_line_details(v_index).CREATED_FROM_LIST_TYPE);
2804: END IF;
2805:
2806: -- Store the ordered qty

Line 2803: QP_PREQ_GRP.engine_debug('PBH Type123:' || p_request_line_details(v_index).CREATED_FROM_LIST_TYPE);

2799:
2800: IF l_debug = FND_API.G_TRUE THEN
2801: QP_PREQ_GRP.engine_debug('LOOPing through p_request_line_details........');
2802: QP_PREQ_GRP.engine_debug('The request line index is: ' || v_index);
2803: QP_PREQ_GRP.engine_debug('PBH Type123:' || p_request_line_details(v_index).CREATED_FROM_LIST_TYPE);
2804: END IF;
2805:
2806: -- Store the ordered qty
2807: v_ord_qty := nvl(p_request_line_details(v_index).line_quantity, 0); -- 2388011_latest

Line 2816: QP_PREQ_GRP.engine_debug('ldets.qualifier_value, (v_ord_qty) : ' || v_ord_qty);

2812: --v_total_value := nvl(p_request_line_details(v_index).qualifier_value, - 1); -- 2388011_latest
2813: v_total_value := nvl(p_request_line_details(v_index).qualifier_value, 0); --6896139 undoing changes done as part of bug 5158413
2814:
2815: IF l_debug = FND_API.G_TRUE THEN
2816: QP_PREQ_GRP.engine_debug('ldets.qualifier_value, (v_ord_qty) : ' || v_ord_qty);
2817: QP_PREQ_GRP.engine_debug('ldets.line_quqntity, (v_total_value) : ' || v_total_value);
2818: -- If bucketed net amount flag is set to 'Y'
2819: QP_PREQ_GRP.engine_debug('Bucketed Old PGS : ' || v_old_pricing_sequence);
2820: QP_PREQ_GRP.engine_debug('Bucketed New PGS : ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);

Line 2817: QP_PREQ_GRP.engine_debug('ldets.line_quqntity, (v_total_value) : ' || v_total_value);

2813: v_total_value := nvl(p_request_line_details(v_index).qualifier_value, 0); --6896139 undoing changes done as part of bug 5158413
2814:
2815: IF l_debug = FND_API.G_TRUE THEN
2816: QP_PREQ_GRP.engine_debug('ldets.qualifier_value, (v_ord_qty) : ' || v_ord_qty);
2817: QP_PREQ_GRP.engine_debug('ldets.line_quqntity, (v_total_value) : ' || v_total_value);
2818: -- If bucketed net amount flag is set to 'Y'
2819: QP_PREQ_GRP.engine_debug('Bucketed Old PGS : ' || v_old_pricing_sequence);
2820: QP_PREQ_GRP.engine_debug('Bucketed New PGS : ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
2821: END IF; -- END IF l_debug = FND_API.G_TRUE

Line 2819: QP_PREQ_GRP.engine_debug('Bucketed Old PGS : ' || v_old_pricing_sequence);

2815: IF l_debug = FND_API.G_TRUE THEN
2816: QP_PREQ_GRP.engine_debug('ldets.qualifier_value, (v_ord_qty) : ' || v_ord_qty);
2817: QP_PREQ_GRP.engine_debug('ldets.line_quqntity, (v_total_value) : ' || v_total_value);
2818: -- If bucketed net amount flag is set to 'Y'
2819: QP_PREQ_GRP.engine_debug('Bucketed Old PGS : ' || v_old_pricing_sequence);
2820: QP_PREQ_GRP.engine_debug('Bucketed New PGS : ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
2821: END IF; -- END IF l_debug = FND_API.G_TRUE
2822:
2823: IF (nvl(v_old_pricing_sequence, - 9999) <> p_request_line_details(v_index).PRICING_GROUP_SEQUENCE AND

Line 2820: QP_PREQ_GRP.engine_debug('Bucketed New PGS : ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);

2816: QP_PREQ_GRP.engine_debug('ldets.qualifier_value, (v_ord_qty) : ' || v_ord_qty);
2817: QP_PREQ_GRP.engine_debug('ldets.line_quqntity, (v_total_value) : ' || v_total_value);
2818: -- If bucketed net amount flag is set to 'Y'
2819: QP_PREQ_GRP.engine_debug('Bucketed Old PGS : ' || v_old_pricing_sequence);
2820: QP_PREQ_GRP.engine_debug('Bucketed New PGS : ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
2821: END IF; -- END IF l_debug = FND_API.G_TRUE
2822:
2823: IF (nvl(v_old_pricing_sequence, - 9999) <> p_request_line_details(v_index).PRICING_GROUP_SEQUENCE AND
2824: p_request_line_details(v_index).bucketed_flag = 'Y') THEN

Line 2826: QP_PREQ_GRP.engine_debug('Before Bucketed Group Amount : ' || v_bucketed_value);

2822:
2823: IF (nvl(v_old_pricing_sequence, - 9999) <> p_request_line_details(v_index).PRICING_GROUP_SEQUENCE AND
2824: p_request_line_details(v_index).bucketed_flag = 'Y') THEN
2825: IF l_debug = FND_API.G_TRUE THEN
2826: QP_PREQ_GRP.engine_debug('Before Bucketed Group Amount : ' || v_bucketed_value);
2827: QP_PREQ_GRP.engine_debug('Before Bucketed Line Amount : ' || v_bucketed_qty);
2828: QP_PREQ_GRP.engine_debug('Bucket Adjustment Amount: ' || nvl(v_total_adj_amt, 0));
2829: END IF; -- END IF l_debug = FND_API.G_TRUE
2830:

Line 2827: QP_PREQ_GRP.engine_debug('Before Bucketed Line Amount : ' || v_bucketed_qty);

2823: IF (nvl(v_old_pricing_sequence, - 9999) <> p_request_line_details(v_index).PRICING_GROUP_SEQUENCE AND
2824: p_request_line_details(v_index).bucketed_flag = 'Y') THEN
2825: IF l_debug = FND_API.G_TRUE THEN
2826: QP_PREQ_GRP.engine_debug('Before Bucketed Group Amount : ' || v_bucketed_value);
2827: QP_PREQ_GRP.engine_debug('Before Bucketed Line Amount : ' || v_bucketed_qty);
2828: QP_PREQ_GRP.engine_debug('Bucket Adjustment Amount: ' || nvl(v_total_adj_amt, 0));
2829: END IF; -- END IF l_debug = FND_API.G_TRUE
2830:
2831: IF (v_total_value > 0) THEN

Line 2828: QP_PREQ_GRP.engine_debug('Bucket Adjustment Amount: ' || nvl(v_total_adj_amt, 0));

2824: p_request_line_details(v_index).bucketed_flag = 'Y') THEN
2825: IF l_debug = FND_API.G_TRUE THEN
2826: QP_PREQ_GRP.engine_debug('Before Bucketed Group Amount : ' || v_bucketed_value);
2827: QP_PREQ_GRP.engine_debug('Before Bucketed Line Amount : ' || v_bucketed_qty);
2828: QP_PREQ_GRP.engine_debug('Bucket Adjustment Amount: ' || nvl(v_total_adj_amt, 0));
2829: END IF; -- END IF l_debug = FND_API.G_TRUE
2830:
2831: IF (v_total_value > 0) THEN
2832: v_bucketed_value := v_total_value + nvl(v_total_adj_amt * v_actual_line_qty, 0); -- Net Group Amount

Line 2840: QP_PREQ_GRP.engine_debug('Net Bucketed Group Amount : ' || v_bucketed_value);

2836: v_bucketed_value := NULL;
2837: END IF; -- END IF (v_total_value > 0)
2838:
2839: IF l_debug = FND_API.G_TRUE THEN
2840: QP_PREQ_GRP.engine_debug('Net Bucketed Group Amount : ' || v_bucketed_value);
2841: QP_PREQ_GRP.engine_debug('Net Bucketed Line Amount : ' || v_bucketed_qty);
2842: END IF; -- END IF l_debug = FND_API.G_TRUE
2843: END IF; -- END IF (nvl(v_old_pricing_sequence,-9999)
2844:

Line 2841: QP_PREQ_GRP.engine_debug('Net Bucketed Line Amount : ' || v_bucketed_qty);

2837: END IF; -- END IF (v_total_value > 0)
2838:
2839: IF l_debug = FND_API.G_TRUE THEN
2840: QP_PREQ_GRP.engine_debug('Net Bucketed Group Amount : ' || v_bucketed_value);
2841: QP_PREQ_GRP.engine_debug('Net Bucketed Line Amount : ' || v_bucketed_qty);
2842: END IF; -- END IF l_debug = FND_API.G_TRUE
2843: END IF; -- END IF (nvl(v_old_pricing_sequence,-9999)
2844:
2845: -- end fix 2388011, grp_lines_pbh, IT bucket

Line 2860: QP_PREQ_GRP.engine_debug('Service Duration : ' || v_service_duration);

2856: v_related_item_price := p_request_line.RELATED_ITEM_PRICE;
2857: v_service_duration := nvl(p_request_line.SERVICE_DURATION, 1);
2858:
2859: IF l_debug = FND_API.G_TRUE THEN
2860: QP_PREQ_GRP.engine_debug('Service Duration : ' || v_service_duration);
2861:
2862: END IF;
2863:
2864: -- Store the list line id

Line 2879: QP_PREQ_GRP.engine_debug ('V_List_Price is null');

2875: v_orig_list_price := p_request_line.UNIT_PRICE;
2876: ELSE
2877: IF (v_list_price IS NULL) THEN
2878: IF l_debug = FND_API.G_TRUE THEN
2879: QP_PREQ_GRP.engine_debug ('V_List_Price is null');
2880: END IF;
2881: v_list_price := p_request_line.UNIT_PRICE;
2882:
2883: IF nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND -- shu, aso debug 2457629

Line 2883: IF nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND -- shu, aso debug 2457629

2879: QP_PREQ_GRP.engine_debug ('V_List_Price is null');
2880: END IF;
2881: v_list_price := p_request_line.UNIT_PRICE;
2882:
2883: IF nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND -- shu, aso debug 2457629
2884: p_request_line_details(v_index).ROUNDING_FACTOR IS NOT NULL THEN -- 10093463
2885: v_list_price := ROUND(v_list_price, p_request_line_details(v_index).ROUNDING_FACTOR * ( - 1));
2886: p_request_line.UNIT_PRICE := v_list_price;
2887: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile

Line 2887: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile

2883: IF nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND -- shu, aso debug 2457629
2884: p_request_line_details(v_index).ROUNDING_FACTOR IS NOT NULL THEN -- 10093463
2885: v_list_price := ROUND(v_list_price, p_request_line_details(v_index).ROUNDING_FACTOR * ( - 1));
2886: p_request_line.UNIT_PRICE := v_list_price;
2887: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check v_selling_price_rounding_options profile
2888:
2889: IF (v_price_round_options = G_ROUND_ADJ AND p_request_line_details(v_index).ROUNDING_FACTOR IS NOT NULL) THEN
2890: v_list_price := ROUND(v_list_price, p_request_line_details(v_index).ROUNDING_FACTOR * ( - 1));
2891: p_request_line.UNIT_PRICE := v_list_price;

Line 2893: END IF; -- end IF nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y')

2889: IF (v_price_round_options = G_ROUND_ADJ AND p_request_line_details(v_index).ROUNDING_FACTOR IS NOT NULL) THEN
2890: v_list_price := ROUND(v_list_price, p_request_line_details(v_index).ROUNDING_FACTOR * ( - 1));
2891: p_request_line.UNIT_PRICE := v_list_price;
2892: END IF;
2893: END IF; -- end IF nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y')
2894: v_discounted_price := nvl(p_request_line.ADJUSTED_UNIT_PRICE, v_list_price);
2895:
2896: END IF; -- END IF (v_list_price IS NULL)
2897: v_orig_list_price := v_list_price;

Line 2901: QP_PREQ_GRP.G_PRICE_BREAK_TYPE) THEN

2897: v_orig_list_price := v_list_price;
2898: END IF; -- END IF (p_request_line_details(v_index).PRICING_GROUP_SEQUENCE IS NULL)
2899:
2900: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE =
2901: QP_PREQ_GRP.G_PRICE_BREAK_TYPE) THEN
2902: IF l_debug = FND_API.G_TRUE THEN
2903: QP_PREQ_GRP.engine_debug('PBH Type:' || p_request_line_details(v_index).CREATED_FROM_LIST_TYPE);
2904: QP_PREQ_GRP.engine_debug('PBH Unit Price:' || p_request_line.UNIT_PRICE);
2905: QP_PREQ_GRP.engine_debug('Old PGS:' || v_old_pricing_sequence);

Line 2903: QP_PREQ_GRP.engine_debug('PBH Type:' || p_request_line_details(v_index).CREATED_FROM_LIST_TYPE);

2899:
2900: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE =
2901: QP_PREQ_GRP.G_PRICE_BREAK_TYPE) THEN
2902: IF l_debug = FND_API.G_TRUE THEN
2903: QP_PREQ_GRP.engine_debug('PBH Type:' || p_request_line_details(v_index).CREATED_FROM_LIST_TYPE);
2904: QP_PREQ_GRP.engine_debug('PBH Unit Price:' || p_request_line.UNIT_PRICE);
2905: QP_PREQ_GRP.engine_debug('Old PGS:' || v_old_pricing_sequence);
2906: END IF;
2907:

Line 2904: QP_PREQ_GRP.engine_debug('PBH Unit Price:' || p_request_line.UNIT_PRICE);

2900: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE =
2901: QP_PREQ_GRP.G_PRICE_BREAK_TYPE) THEN
2902: IF l_debug = FND_API.G_TRUE THEN
2903: QP_PREQ_GRP.engine_debug('PBH Type:' || p_request_line_details(v_index).CREATED_FROM_LIST_TYPE);
2904: QP_PREQ_GRP.engine_debug('PBH Unit Price:' || p_request_line.UNIT_PRICE);
2905: QP_PREQ_GRP.engine_debug('Old PGS:' || v_old_pricing_sequence);
2906: END IF;
2907:
2908: IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE='PRL') THEN --10093463

Line 2905: QP_PREQ_GRP.engine_debug('Old PGS:' || v_old_pricing_sequence);

2901: QP_PREQ_GRP.G_PRICE_BREAK_TYPE) THEN
2902: IF l_debug = FND_API.G_TRUE THEN
2903: QP_PREQ_GRP.engine_debug('PBH Type:' || p_request_line_details(v_index).CREATED_FROM_LIST_TYPE);
2904: QP_PREQ_GRP.engine_debug('PBH Unit Price:' || p_request_line.UNIT_PRICE);
2905: QP_PREQ_GRP.engine_debug('Old PGS:' || v_old_pricing_sequence);
2906: END IF;
2907:
2908: IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE='PRL') THEN --10093463
2909: l_pbh_rounding_fact:=p_request_line_details(v_index).ROUNDING_FACTOR;

Line 2928: nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y'), -- shu, aso debug 2457629

2924: v_old_pricing_sequence,
2925: v_related_item_price, -- Related Item Price
2926: v_service_duration, -- Service Duration for service line pricing
2927: p_related_request_lines, -- Children of PBH Lines
2928: nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y'), -- shu, aso debug 2457629
2929: ( - 1) * l_pbh_rounding_fact, --10093463
2930: nvl(v_bucketed_value, v_total_value), -- 2388011, PBH LINEGROUP Ravi Change
2931: x_pbh_list_price, -- List Price for the Request Line
2932: x_extended_price, -- block pricing

Line 2944: (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

2940: RAISE FND_API.G_EXC_ERROR;
2941: END IF;
2942:
2943: IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE IN
2944: (QP_PREQ_GRP.G_PRICE_LIST_HEADER, QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
2945:
2946: -- Update the list price on the p_request_line_details structure for the PBH line
2947: p_request_line.UNIT_PRICE := x_pbh_list_price;
2948: p_request_line.EXTENDED_PRICE := x_extended_price; -- block pricing

Line 2955: QP_PREQ_GRP.engine_debug('Unit Price:' || x_pbh_list_price);

2951: -- Init the price list values for input to the Calculate_Adjusted_Price function
2952: v_list_price := x_pbh_list_price;
2953: v_discounted_price := x_pbh_list_price;
2954: IF l_debug = FND_API.G_TRUE THEN
2955: QP_PREQ_GRP.engine_debug('Unit Price:' || x_pbh_list_price);
2956: QP_PREQ_GRP.engine_debug('Extended Price on the Line: ' || p_request_line.EXTENDED_PRICE);
2957: QP_PREQ_GRP.engine_debug('Related Request Lines Table Count:'|| x_related_request_lines_tbl.COUNT);
2958: END IF;
2959: ELSE

Line 2956: QP_PREQ_GRP.engine_debug('Extended Price on the Line: ' || p_request_line.EXTENDED_PRICE);

2952: v_list_price := x_pbh_list_price;
2953: v_discounted_price := x_pbh_list_price;
2954: IF l_debug = FND_API.G_TRUE THEN
2955: QP_PREQ_GRP.engine_debug('Unit Price:' || x_pbh_list_price);
2956: QP_PREQ_GRP.engine_debug('Extended Price on the Line: ' || p_request_line.EXTENDED_PRICE);
2957: QP_PREQ_GRP.engine_debug('Related Request Lines Table Count:'|| x_related_request_lines_tbl.COUNT);
2958: END IF;
2959: ELSE
2960: -- Update the adjustment amount on the p_request_line_details

Line 2957: QP_PREQ_GRP.engine_debug('Related Request Lines Table Count:'|| x_related_request_lines_tbl.COUNT);

2953: v_discounted_price := x_pbh_list_price;
2954: IF l_debug = FND_API.G_TRUE THEN
2955: QP_PREQ_GRP.engine_debug('Unit Price:' || x_pbh_list_price);
2956: QP_PREQ_GRP.engine_debug('Extended Price on the Line: ' || p_request_line.EXTENDED_PRICE);
2957: QP_PREQ_GRP.engine_debug('Related Request Lines Table Count:'|| x_related_request_lines_tbl.COUNT);
2958: END IF;
2959: ELSE
2960: -- Update the adjustment amount on the p_request_line_details
2961: p_request_line_details(v_index).ADJUSTMENT_AMOUNT := nvl(x_adjusted_amount, 0);

Line 2967: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE <> QP_PREQ_GRP.G_FREIGHT_CHARGE AND

2963: -- Update the adjusted unit price
2964: -- Total Adjusted amount is not calculated on Freight Charges and manual price breaks which will have
2965: -- automatic_flag = 'N'
2966:
2967: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE <> QP_PREQ_GRP.G_FREIGHT_CHARGE AND
2968: p_request_line_details(v_index).AUTOMATIC_FLAG <> QP_PREQ_GRP.G_NO) THEN
2969: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES) THEN
2970: v_total_adj_amt := nvl(v_total_adj_amt, 0) + nvl(x_adjusted_amount, 0);
2971: END IF;

Line 2968: p_request_line_details(v_index).AUTOMATIC_FLAG <> QP_PREQ_GRP.G_NO) THEN

2964: -- Total Adjusted amount is not calculated on Freight Charges and manual price breaks which will have
2965: -- automatic_flag = 'N'
2966:
2967: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE <> QP_PREQ_GRP.G_FREIGHT_CHARGE AND
2968: p_request_line_details(v_index).AUTOMATIC_FLAG <> QP_PREQ_GRP.G_NO) THEN
2969: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES) THEN
2970: v_total_adj_amt := nvl(v_total_adj_amt, 0) + nvl(x_adjusted_amount, 0);
2971: END IF;
2972: p_request_line.ADJUSTED_UNIT_PRICE := p_request_line.UNIT_PRICE + nvl(v_total_adj_amt, 0);

Line 2969: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES) THEN

2965: -- automatic_flag = 'N'
2966:
2967: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE <> QP_PREQ_GRP.G_FREIGHT_CHARGE AND
2968: p_request_line_details(v_index).AUTOMATIC_FLAG <> QP_PREQ_GRP.G_NO) THEN
2969: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES) THEN
2970: v_total_adj_amt := nvl(v_total_adj_amt, 0) + nvl(x_adjusted_amount, 0);
2971: END IF;
2972: p_request_line.ADJUSTED_UNIT_PRICE := p_request_line.UNIT_PRICE + nvl(v_total_adj_amt, 0);
2973: END IF;

Line 2977: QP_PREQ_GRP.engine_debug('Adjusted Amount:' || x_adjusted_amount);

2973: END IF;
2974: v_discounted_price := p_request_line.ADJUSTED_UNIT_PRICE;
2975:
2976: IF l_debug = FND_API.G_TRUE THEN
2977: QP_PREQ_GRP.engine_debug('Adjusted Amount:' || x_adjusted_amount);
2978: QP_PREQ_GRP.engine_debug('Unit Price:' || p_request_line.UNIT_PRICE );
2979: QP_PREQ_GRP.engine_debug('Adjusted Unit Price:' || v_discounted_price);
2980: END IF;
2981:

Line 2978: QP_PREQ_GRP.engine_debug('Unit Price:' || p_request_line.UNIT_PRICE );

2974: v_discounted_price := p_request_line.ADJUSTED_UNIT_PRICE;
2975:
2976: IF l_debug = FND_API.G_TRUE THEN
2977: QP_PREQ_GRP.engine_debug('Adjusted Amount:' || x_adjusted_amount);
2978: QP_PREQ_GRP.engine_debug('Unit Price:' || p_request_line.UNIT_PRICE );
2979: QP_PREQ_GRP.engine_debug('Adjusted Unit Price:' || v_discounted_price);
2980: END IF;
2981:
2982: END IF; -- END IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE...

Line 2979: QP_PREQ_GRP.engine_debug('Adjusted Unit Price:' || v_discounted_price);

2975:
2976: IF l_debug = FND_API.G_TRUE THEN
2977: QP_PREQ_GRP.engine_debug('Adjusted Amount:' || x_adjusted_amount);
2978: QP_PREQ_GRP.engine_debug('Unit Price:' || p_request_line.UNIT_PRICE );
2979: QP_PREQ_GRP.engine_debug('Adjusted Unit Price:' || v_discounted_price);
2980: END IF;
2981:
2982: END IF; -- END IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE...
2983:

Line 2992: -- (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN

2988: END IF;
2989:
2990: -- Calculate List Price for Pricing Sequence 0 for a PLL Line
2991: --IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE in
2992: -- (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
2993: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE = QP_PREQ_GRP.G_PRICE_LIST_TYPE) THEN
2994: IF l_debug = FND_API.G_TRUE THEN
2995: QP_PREQ_GRP.engine_debug('I am in PLL');
2996: END IF;

Line 2993: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE = QP_PREQ_GRP.G_PRICE_LIST_TYPE) THEN

2989:
2990: -- Calculate List Price for Pricing Sequence 0 for a PLL Line
2991: --IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE in
2992: -- (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
2993: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE = QP_PREQ_GRP.G_PRICE_LIST_TYPE) THEN
2994: IF l_debug = FND_API.G_TRUE THEN
2995: QP_PREQ_GRP.engine_debug('I am in PLL');
2996: END IF;
2997: Calculate_List_Price_PVT(p_request_line_details(v_index).OPERAND_CALCULATION_CODE,

Line 2995: QP_PREQ_GRP.engine_debug('I am in PLL');

2991: --IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE in
2992: -- (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER)) THEN
2993: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE = QP_PREQ_GRP.G_PRICE_LIST_TYPE) THEN
2994: IF l_debug = FND_API.G_TRUE THEN
2995: QP_PREQ_GRP.engine_debug('I am in PLL');
2996: END IF;
2997: Calculate_List_Price_PVT(p_request_line_details(v_index).OPERAND_CALCULATION_CODE,
2998: p_request_line_details(v_index).OPERAND_VALUE,
2999: 0, -- block pricing

Line 3004: nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y'), -- shu, aso debug 2457629

3000: v_ord_qty,
3001: v_related_item_price,
3002: v_service_duration,
3003: --nvl(p_request_line.ROUNDING_FLAG,'Y'),
3004: nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y'), -- shu, aso debug 2457629
3005: ( - 1) * p_request_line_details(v_index).ROUNDING_FACTOR, --10093463
3006: x_list_price,
3007: x_percent_price,
3008: x_extended_price, -- block pricing

Line 3024: QP_PREQ_GRP.engine_debug('The List Price23 is: ' || v_list_price);

3020: -- Init the price list values for input to the Calculate_Adjusted_Price function
3021: v_list_price := x_list_price;
3022: v_discounted_price := x_list_price;
3023: IF l_debug = FND_API.G_TRUE THEN
3024: QP_PREQ_GRP.engine_debug('The List Price23 is: ' || v_list_price);
3025:
3026: END IF;
3027: END IF;
3028:

Line 3035: QP_PREQ_GRP.engine_debug ('V_List_Price is null');

3031: -- nvl , if the caller wants the adjustments to be applied to an already
3032: -- discounted line
3033: IF (v_list_price IS NULL) THEN
3034: IF l_debug = FND_API.G_TRUE THEN
3035: QP_PREQ_GRP.engine_debug ('V_List_Price is null');
3036: END IF;
3037: v_list_price := p_request_line.UNIT_PRICE;
3038:
3039: IF nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND -- shu, aso debug 2457629

Line 3039: IF nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND -- shu, aso debug 2457629

3035: QP_PREQ_GRP.engine_debug ('V_List_Price is null');
3036: END IF;
3037: v_list_price := p_request_line.UNIT_PRICE;
3038:
3039: IF nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND -- shu, aso debug 2457629
3040: p_request_line_details(v_index).ROUNDING_FACTOR IS NOT NULL THEN
3041: v_list_price := ROUND(p_request_line.UNIT_PRICE, p_request_line_details(v_index).ROUNDING_FACTOR * ( - 1)); -- 10093463
3042: p_request_line.UNIT_PRICE := v_list_price;
3043: -- shu, aso debug 2457629

Line 3044: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- shu, check v_selling_price_rounding_options profile

3040: p_request_line_details(v_index).ROUNDING_FACTOR IS NOT NULL THEN
3041: v_list_price := ROUND(p_request_line.UNIT_PRICE, p_request_line_details(v_index).ROUNDING_FACTOR * ( - 1)); -- 10093463
3042: p_request_line.UNIT_PRICE := v_list_price;
3043: -- shu, aso debug 2457629
3044: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- shu, check v_selling_price_rounding_options profile
3045: IF (v_price_round_options = G_ROUND_ADJ AND p_request_line_details(v_index).ROUNDING_FACTOR IS NOT NULL) THEN
3046: v_list_price := ROUND(p_request_line.UNIT_PRICE, p_request_line_details(v_index).ROUNDING_FACTOR * ( - 1)); -- 10093463
3047: p_request_line.UNIT_PRICE := v_list_price;
3048: END IF;

Line 3056: IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE, QP_PREQ_GRP.G_FREIGHT_CHARGE)) THEN

3052: END IF;
3053:
3054: -- Calculate Adjusted Price
3055: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE
3056: IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE, QP_PREQ_GRP.G_FREIGHT_CHARGE)) THEN
3057: IF l_debug = FND_API.G_TRUE THEN
3058: QP_PREQ_GRP.engine_debug('I am in DIS');
3059: QP_PREQ_GRP.engine_debug('The List Price is: ' || v_list_price);
3060: QP_PREQ_GRP.engine_debug('The Discounted Price is: ' || v_discounted_price);

Line 3058: QP_PREQ_GRP.engine_debug('I am in DIS');

3054: -- Calculate Adjusted Price
3055: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE
3056: IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE, QP_PREQ_GRP.G_FREIGHT_CHARGE)) THEN
3057: IF l_debug = FND_API.G_TRUE THEN
3058: QP_PREQ_GRP.engine_debug('I am in DIS');
3059: QP_PREQ_GRP.engine_debug('The List Price is: ' || v_list_price);
3060: QP_PREQ_GRP.engine_debug('The Discounted Price is: ' || v_discounted_price);
3061: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
3062: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);

Line 3059: QP_PREQ_GRP.engine_debug('The List Price is: ' || v_list_price);

3055: IF (p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE
3056: IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE, QP_PREQ_GRP.G_FREIGHT_CHARGE)) THEN
3057: IF l_debug = FND_API.G_TRUE THEN
3058: QP_PREQ_GRP.engine_debug('I am in DIS');
3059: QP_PREQ_GRP.engine_debug('The List Price is: ' || v_list_price);
3060: QP_PREQ_GRP.engine_debug('The Discounted Price is: ' || v_discounted_price);
3061: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
3062: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
3063: QP_PREQ_GRP.engine_debug('Operand Calc Code: ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);

Line 3060: QP_PREQ_GRP.engine_debug('The Discounted Price is: ' || v_discounted_price);

3056: IN (QP_PREQ_GRP.G_DISCOUNT, QP_PREQ_GRP.G_SURCHARGE, QP_PREQ_GRP.G_FREIGHT_CHARGE)) THEN
3057: IF l_debug = FND_API.G_TRUE THEN
3058: QP_PREQ_GRP.engine_debug('I am in DIS');
3059: QP_PREQ_GRP.engine_debug('The List Price is: ' || v_list_price);
3060: QP_PREQ_GRP.engine_debug('The Discounted Price is: ' || v_discounted_price);
3061: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
3062: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
3063: QP_PREQ_GRP.engine_debug('Operand Calc Code: ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3064: QP_PREQ_GRP.engine_debug('Operand Calc Value: ' || p_request_line_details(v_index).OPERAND_VALUE);

Line 3061: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);

3057: IF l_debug = FND_API.G_TRUE THEN
3058: QP_PREQ_GRP.engine_debug('I am in DIS');
3059: QP_PREQ_GRP.engine_debug('The List Price is: ' || v_list_price);
3060: QP_PREQ_GRP.engine_debug('The Discounted Price is: ' || v_discounted_price);
3061: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
3062: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
3063: QP_PREQ_GRP.engine_debug('Operand Calc Code: ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3064: QP_PREQ_GRP.engine_debug('Operand Calc Value: ' || p_request_line_details(v_index).OPERAND_VALUE);
3065: QP_PREQ_GRP.engine_debug('List Line Type: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE);

Line 3062: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);

3058: QP_PREQ_GRP.engine_debug('I am in DIS');
3059: QP_PREQ_GRP.engine_debug('The List Price is: ' || v_list_price);
3060: QP_PREQ_GRP.engine_debug('The Discounted Price is: ' || v_discounted_price);
3061: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
3062: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
3063: QP_PREQ_GRP.engine_debug('Operand Calc Code: ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3064: QP_PREQ_GRP.engine_debug('Operand Calc Value: ' || p_request_line_details(v_index).OPERAND_VALUE);
3065: QP_PREQ_GRP.engine_debug('List Line Type: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE);
3066:

Line 3063: QP_PREQ_GRP.engine_debug('Operand Calc Code: ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);

3059: QP_PREQ_GRP.engine_debug('The List Price is: ' || v_list_price);
3060: QP_PREQ_GRP.engine_debug('The Discounted Price is: ' || v_discounted_price);
3061: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
3062: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
3063: QP_PREQ_GRP.engine_debug('Operand Calc Code: ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3064: QP_PREQ_GRP.engine_debug('Operand Calc Value: ' || p_request_line_details(v_index).OPERAND_VALUE);
3065: QP_PREQ_GRP.engine_debug('List Line Type: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE);
3066:
3067: END IF;

Line 3064: QP_PREQ_GRP.engine_debug('Operand Calc Value: ' || p_request_line_details(v_index).OPERAND_VALUE);

3060: QP_PREQ_GRP.engine_debug('The Discounted Price is: ' || v_discounted_price);
3061: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
3062: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
3063: QP_PREQ_GRP.engine_debug('Operand Calc Code: ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3064: QP_PREQ_GRP.engine_debug('Operand Calc Value: ' || p_request_line_details(v_index).OPERAND_VALUE);
3065: QP_PREQ_GRP.engine_debug('List Line Type: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE);
3066:
3067: END IF;
3068:

Line 3065: QP_PREQ_GRP.engine_debug('List Line Type: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE);

3061: QP_PREQ_GRP.engine_debug('Old Pricing Seq: ' || v_old_pricing_sequence);
3062: QP_PREQ_GRP.engine_debug('New Pricing Seq: ' || p_request_line_details(v_index).PRICING_GROUP_SEQUENCE);
3063: QP_PREQ_GRP.engine_debug('Operand Calc Code: ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3064: QP_PREQ_GRP.engine_debug('Operand Calc Value: ' || p_request_line_details(v_index).OPERAND_VALUE);
3065: QP_PREQ_GRP.engine_debug('List Line Type: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE);
3066:
3067: END IF;
3068:
3069: /* [julin/5529345] recurring logic moved to QP_PREQ_GRP.PRICE_REQUEST

Line 3069: /* [julin/5529345] recurring logic moved to QP_PREQ_GRP.PRICE_REQUEST

3065: QP_PREQ_GRP.engine_debug('List Line Type: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE);
3066:
3067: END IF;
3068:
3069: /* [julin/5529345] recurring logic moved to QP_PREQ_GRP.PRICE_REQUEST
3070: -- Recurring flag check
3071: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND
3072: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_NO) THEN
3073: IF l_debug = FND_API.G_TRUE THEN

Line 3071: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND

3067: END IF;
3068:
3069: /* [julin/5529345] recurring logic moved to QP_PREQ_GRP.PRICE_REQUEST
3070: -- Recurring flag check
3071: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND
3072: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_NO) THEN
3073: IF l_debug = FND_API.G_TRUE THEN
3074: QP_PREQ_GRP.engine_debug('In Recurring Routine --- #1');
3075: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );

Line 3072: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_NO) THEN

3068:
3069: /* [julin/5529345] recurring logic moved to QP_PREQ_GRP.PRICE_REQUEST
3070: -- Recurring flag check
3071: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND
3072: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_NO) THEN
3073: IF l_debug = FND_API.G_TRUE THEN
3074: QP_PREQ_GRP.engine_debug('In Recurring Routine --- #1');
3075: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );
3076: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );

Line 3074: QP_PREQ_GRP.engine_debug('In Recurring Routine --- #1');

3070: -- Recurring flag check
3071: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND
3072: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_NO) THEN
3073: IF l_debug = FND_API.G_TRUE THEN
3074: QP_PREQ_GRP.engine_debug('In Recurring Routine --- #1');
3075: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );
3076: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );
3077: END IF;
3078: -- Call Recurring Routine

Line 3075: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );

3071: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND
3072: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_NO) THEN
3073: IF l_debug = FND_API.G_TRUE THEN
3074: QP_PREQ_GRP.engine_debug('In Recurring Routine --- #1');
3075: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );
3076: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );
3077: END IF;
3078: -- Call Recurring Routine
3079: QP_Process_Other_Benefits_PVT.Calculate_Recurring_Quantity(

Line 3076: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );

3072: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_NO) THEN
3073: IF l_debug = FND_API.G_TRUE THEN
3074: QP_PREQ_GRP.engine_debug('In Recurring Routine --- #1');
3075: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );
3076: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );
3077: END IF;
3078: -- Call Recurring Routine
3079: QP_Process_Other_Benefits_PVT.Calculate_Recurring_Quantity(
3080: p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID,

Line 3088: QP_PREQ_GRP.engine_debug('Return Status Text : ' || x_ret_status_txt);

3084: x_benefit_line_qty,
3085: x_ret_status,
3086: x_ret_status_txt);
3087: IF l_debug = FND_API.G_TRUE THEN
3088: QP_PREQ_GRP.engine_debug('Return Status Text : ' || x_ret_status_txt);
3089:
3090: END IF;
3091: IF(x_ret_status = FND_API.G_RET_STS_ERROR) THEN
3092: RAISE FND_API.G_EXC_ERROR;

Line 3097: QP_PREQ_GRP.engine_debug('Limits Code Not Executed.Did call Recurring Qty Routine');

3093: END IF;
3094: p_request_line_details(v_index).OPERAND_VALUE := x_benefit_line_qty;
3095:
3096: IF l_debug = FND_API.G_TRUE THEN
3097: QP_PREQ_GRP.engine_debug('Limits Code Not Executed.Did call Recurring Qty Routine');
3098: QP_PREQ_GRP.engine_debug('After Recurring Routine Value --- #2 : ' || x_benefit_line_qty);
3099:
3100: END IF;
3101: END IF;

Line 3098: QP_PREQ_GRP.engine_debug('After Recurring Routine Value --- #2 : ' || x_benefit_line_qty);

3094: p_request_line_details(v_index).OPERAND_VALUE := x_benefit_line_qty;
3095:
3096: IF l_debug = FND_API.G_TRUE THEN
3097: QP_PREQ_GRP.engine_debug('Limits Code Not Executed.Did call Recurring Qty Routine');
3098: QP_PREQ_GRP.engine_debug('After Recurring Routine Value --- #2 : ' || x_benefit_line_qty);
3099:
3100: END IF;
3101: END IF;
3102:

Line 3103: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND

3099:
3100: END IF;
3101: END IF;
3102:
3103: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND
3104: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_YES) THEN
3105: IF l_debug = FND_API.G_TRUE THEN
3106: QP_PREQ_GRP.engine_debug('Limits Code Executed.Do not calculate OPERAND value 2nd time.');
3107: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );

Line 3104: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_YES) THEN

3100: END IF;
3101: END IF;
3102:
3103: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND
3104: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_YES) THEN
3105: IF l_debug = FND_API.G_TRUE THEN
3106: QP_PREQ_GRP.engine_debug('Limits Code Executed.Do not calculate OPERAND value 2nd time.');
3107: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );
3108: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );

Line 3106: QP_PREQ_GRP.engine_debug('Limits Code Executed.Do not calculate OPERAND value 2nd time.');

3102:
3103: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND
3104: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_YES) THEN
3105: IF l_debug = FND_API.G_TRUE THEN
3106: QP_PREQ_GRP.engine_debug('Limits Code Executed.Do not calculate OPERAND value 2nd time.');
3107: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );
3108: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );
3109: QP_PREQ_GRP.engine_debug('Recurring Value: ' || p_request_line_details(v_index).OPERAND_VALUE );
3110: END IF;

Line 3107: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );

3103: IF (p_request_line_details(v_index).PRICE_BREAK_TYPE_CODE = QP_PREQ_GRP.G_RECURRING_BREAK AND
3104: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_YES) THEN
3105: IF l_debug = FND_API.G_TRUE THEN
3106: QP_PREQ_GRP.engine_debug('Limits Code Executed.Do not calculate OPERAND value 2nd time.');
3107: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );
3108: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );
3109: QP_PREQ_GRP.engine_debug('Recurring Value: ' || p_request_line_details(v_index).OPERAND_VALUE );
3110: END IF;
3111: END IF;

Line 3108: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );

3104: QP_PREQ_GRP.G_LIMITS_CODE_EXECUTED = QP_PREQ_GRP.G_YES) THEN
3105: IF l_debug = FND_API.G_TRUE THEN
3106: QP_PREQ_GRP.engine_debug('Limits Code Executed.Do not calculate OPERAND value 2nd time.');
3107: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );
3108: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );
3109: QP_PREQ_GRP.engine_debug('Recurring Value: ' || p_request_line_details(v_index).OPERAND_VALUE );
3110: END IF;
3111: END IF;
3112: */

Line 3109: QP_PREQ_GRP.engine_debug('Recurring Value: ' || p_request_line_details(v_index).OPERAND_VALUE );

3105: IF l_debug = FND_API.G_TRUE THEN
3106: QP_PREQ_GRP.engine_debug('Limits Code Executed.Do not calculate OPERAND value 2nd time.');
3107: QP_PREQ_GRP.engine_debug('List Line Id: ' || p_request_line_details(v_index).CREATED_FROM_LIST_LINE_ID );
3108: QP_PREQ_GRP.engine_debug('List Line Index: ' || p_request_line.LINE_INDEX );
3109: QP_PREQ_GRP.engine_debug('Recurring Value: ' || p_request_line_details(v_index).OPERAND_VALUE );
3110: END IF;
3111: END IF;
3112: */
3113:

Line 3114: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) = QP_PREQ_GRP.G_YES) THEN

3110: END IF;
3111: END IF;
3112: */
3113:
3114: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) = QP_PREQ_GRP.G_YES) THEN
3115: IF l_debug = FND_API.G_TRUE THEN
3116: QP_PREQ_GRP.engine_debug('OPERAND_CALCULATION_CODE is ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3117: QP_PREQ_GRP.engine_debug('v_ord_qty is ' || v_ord_qty);
3118: END IF;

Line 3116: QP_PREQ_GRP.engine_debug('OPERAND_CALCULATION_CODE is ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);

3112: */
3113:
3114: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) = QP_PREQ_GRP.G_YES) THEN
3115: IF l_debug = FND_API.G_TRUE THEN
3116: QP_PREQ_GRP.engine_debug('OPERAND_CALCULATION_CODE is ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3117: QP_PREQ_GRP.engine_debug('v_ord_qty is ' || v_ord_qty);
3118: END IF;
3119: -- bug 4002891 - benefit_qty should be multiplied by ordered_qty for application_method other than LUMPSUM
3120: IF p_request_line_details(v_index).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN

Line 3117: QP_PREQ_GRP.engine_debug('v_ord_qty is ' || v_ord_qty);

3113:
3114: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) = QP_PREQ_GRP.G_YES) THEN
3115: IF l_debug = FND_API.G_TRUE THEN
3116: QP_PREQ_GRP.engine_debug('OPERAND_CALCULATION_CODE is ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3117: QP_PREQ_GRP.engine_debug('v_ord_qty is ' || v_ord_qty);
3118: END IF;
3119: -- bug 4002891 - benefit_qty should be multiplied by ordered_qty for application_method other than LUMPSUM
3120: IF p_request_line_details(v_index).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN
3121: p_request_line_details(v_index).BENEFIT_QTY :=

Line 3120: IF p_request_line_details(v_index).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN

3116: QP_PREQ_GRP.engine_debug('OPERAND_CALCULATION_CODE is ' || p_request_line_details(v_index).OPERAND_CALCULATION_CODE);
3117: QP_PREQ_GRP.engine_debug('v_ord_qty is ' || v_ord_qty);
3118: END IF;
3119: -- bug 4002891 - benefit_qty should be multiplied by ordered_qty for application_method other than LUMPSUM
3120: IF p_request_line_details(v_index).OPERAND_CALCULATION_CODE = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN
3121: p_request_line_details(v_index).BENEFIT_QTY :=
3122: p_request_line_details(v_index).OPERAND_VALUE *
3123: 1 / nvl(p_request_line_details(v_index).ACCRUAL_CONVERSION_RATE, 1) *
3124: nvl(p_request_line_details(v_index).ESTIM_ACCRUAL_RATE, 100) / 100;

Line 3136: IN (QP_PREQ_GRP.G_LINE_LEVEL

3132:
3133: --4900095
3134: --calculate lumpsum qty for svc lines
3135: IF p_request_line_details(v_index).modifier_level_code
3136: IN (QP_PREQ_GRP.G_LINE_LEVEL
3137: , QP_PREQ_GRP.G_LINE_GROUP)
3138: AND p_request_line_details(v_index).operand_calculation_code
3139: = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN
3140: --G_Lumpsum_qty will be not null only for service items

Line 3137: , QP_PREQ_GRP.G_LINE_GROUP)

3133: --4900095
3134: --calculate lumpsum qty for svc lines
3135: IF p_request_line_details(v_index).modifier_level_code
3136: IN (QP_PREQ_GRP.G_LINE_LEVEL
3137: , QP_PREQ_GRP.G_LINE_GROUP)
3138: AND p_request_line_details(v_index).operand_calculation_code
3139: = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN
3140: --G_Lumpsum_qty will be not null only for service items
3141: --when uom_quantity is passed as null,

Line 3139: = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN

3135: IF p_request_line_details(v_index).modifier_level_code
3136: IN (QP_PREQ_GRP.G_LINE_LEVEL
3137: , QP_PREQ_GRP.G_LINE_GROUP)
3138: AND p_request_line_details(v_index).operand_calculation_code
3139: = QP_PREQ_GRP.G_LUMPSUM_DISCOUNT THEN
3140: --G_Lumpsum_qty will be not null only for service items
3141: --when uom_quantity is passed as null,
3142: -- and contract_start/end_dates are passed
3143: --and for a line/linegroup lumpsum DIS/PBH/SUR/FREIGHT

Line 3148: QP_PREQ_GRP.engine_debug('Lumpsum_qty '

3144: G_Lumpsum_qty := Get_lumpsum_qty(l_line_index,
3145: p_request_line_details(v_index).line_detail_index,
3146: p_request_line_details(v_index).modifier_level_code);
3147: IF l_debug = FND_API.G_TRUE THEN
3148: QP_PREQ_GRP.engine_debug('Lumpsum_qty '
3149: || G_Lumpsum_qty);
3150: END IF;
3151: END IF; --p_request_line_details(v_index).modifier_level_code
3152:

Line 3164: p_rounding_flag => nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y'), -- shu, aso debug 2457629

3160: p_list_line_type => p_request_line_details(v_index).CREATED_FROM_LIST_LINE_TYPE,
3161: p_request_qty => v_ord_qty,
3162: p_accrual_flag => p_request_line_details(v_index).ACCRUAL_FLAG,
3163: --p_rounding_flag => nvl(p_request_line.ROUNDING_FLAG,'Y'),
3164: p_rounding_flag => nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, 'Y'), -- shu, aso debug 2457629
3165: p_rounding_factor => ( - 1) * p_request_line.ROUNDING_FACTOR,
3166: p_orig_unit_price => p_request_line.UNIT_PRICE,
3167: x_discounted_price => x_discounted_price, -- Output Discounted Price
3168: x_adjusted_amount => x_adjusted_amount,

Line 3182: QP_PREQ_GRP.engine_debug('Adjusted Amount: ' || x_adjusted_amount);

3178: v_discounted_price := x_discounted_price;
3179: v_list_price := x_List_price;
3180:
3181: IF l_debug = FND_API.G_TRUE THEN
3182: QP_PREQ_GRP.engine_debug('Adjusted Amount: ' || x_adjusted_amount);
3183:
3184: END IF;
3185: -- Update the adjusted amount on the request line
3186: p_request_line_details(v_index).ADJUSTMENT_AMOUNT := nvl(x_adjusted_amount, 0);

Line 3195: QP_PREQ_GRP.G_CHARGES_HEADER) THEN

3191: -- is same as updating once, because the adjusted_unit_price value gets overwritten
3192: -- Total Adjustment amount is not calculated for freight charges
3193:
3194: IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE <>
3195: QP_PREQ_GRP.G_CHARGES_HEADER) THEN
3196: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES AND
3197: p_request_line_details(v_index).AUTOMATIC_FLAG <> QP_PREQ_GRP.G_NO) THEN
3198: v_total_adj_amt := nvl(v_total_adj_amt, 0) + nvl(x_adjusted_amount, 0);
3199: END IF;

Line 3196: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES AND

3192: -- Total Adjustment amount is not calculated for freight charges
3193:
3194: IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE <>
3195: QP_PREQ_GRP.G_CHARGES_HEADER) THEN
3196: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES AND
3197: p_request_line_details(v_index).AUTOMATIC_FLAG <> QP_PREQ_GRP.G_NO) THEN
3198: v_total_adj_amt := nvl(v_total_adj_amt, 0) + nvl(x_adjusted_amount, 0);
3199: END IF;
3200: --[prarasto:Post Round]removed rounding of unit selling price, the unrounded value will be

Line 3197: p_request_line_details(v_index).AUTOMATIC_FLAG <> QP_PREQ_GRP.G_NO) THEN

3193:
3194: IF (p_request_line_details(v_index).CREATED_FROM_LIST_TYPE <>
3195: QP_PREQ_GRP.G_CHARGES_HEADER) THEN
3196: IF (nvl(p_request_line_details(v_index).ACCRUAL_FLAG, QP_PREQ_GRP.G_NO) <> QP_PREQ_GRP.G_YES AND
3197: p_request_line_details(v_index).AUTOMATIC_FLAG <> QP_PREQ_GRP.G_NO) THEN
3198: v_total_adj_amt := nvl(v_total_adj_amt, 0) + nvl(x_adjusted_amount, 0);
3199: END IF;
3200: --[prarasto:Post Round]removed rounding of unit selling price, the unrounded value will be
3201: --sent from calculation engine and it will be rounded in QP_PREQ_GRP.Call_Calculation_Engine

Line 3201: --sent from calculation engine and it will be rounded in QP_PREQ_GRP.Call_Calculation_Engine

3197: p_request_line_details(v_index).AUTOMATIC_FLAG <> QP_PREQ_GRP.G_NO) THEN
3198: v_total_adj_amt := nvl(v_total_adj_amt, 0) + nvl(x_adjusted_amount, 0);
3199: END IF;
3200: --[prarasto:Post Round]removed rounding of unit selling price, the unrounded value will be
3201: --sent from calculation engine and it will be rounded in QP_PREQ_GRP.Call_Calculation_Engine
3202: /*
3203:
3204: -- DO UNIT SELLING PRICE ROUNDING HERE, shu
3205:

Line 3206: --IF (( nvl(p_request_line.rounding_flag, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES OR p_request_line.rounding_flag = G_CHAR_U) and p_request_line.rounding_factor IS NOT NULL) THEN -- shu

3202: /*
3203:
3204: -- DO UNIT SELLING PRICE ROUNDING HERE, shu
3205:
3206: --IF (( nvl(p_request_line.rounding_flag, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES OR p_request_line.rounding_flag = G_CHAR_U) and p_request_line.rounding_factor IS NOT NULL) THEN -- shu
3207: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG,'Y')='Y' OR QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_U) and p_request_line.rounding_factor IS NOT NULL THEN-- aso rounding, 2457629, shu
3208: p_request_line.ADJUSTED_UNIT_PRICE := ROUND ((p_request_line.UNIT_PRICE + nvl(v_total_adj_amt,0)), (-1) * p_request_line.rounding_factor);
3209: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile -- shu, new rounding
3210: IF ((v_price_round_options = G_ROUND_ADJ OR v_price_round_options = G_NO_ROUND_ADJ) AND p_request_line.rounding_factor IS NOT NULL) THEN -- do not round if profile is null

Line 3207: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG,'Y')='Y' OR QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_U) and p_request_line.rounding_factor IS NOT NULL THEN-- aso rounding, 2457629, shu

3203:
3204: -- DO UNIT SELLING PRICE ROUNDING HERE, shu
3205:
3206: --IF (( nvl(p_request_line.rounding_flag, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES OR p_request_line.rounding_flag = G_CHAR_U) and p_request_line.rounding_factor IS NOT NULL) THEN -- shu
3207: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG,'Y')='Y' OR QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_U) and p_request_line.rounding_factor IS NOT NULL THEN-- aso rounding, 2457629, shu
3208: p_request_line.ADJUSTED_UNIT_PRICE := ROUND ((p_request_line.UNIT_PRICE + nvl(v_total_adj_amt,0)), (-1) * p_request_line.rounding_factor);
3209: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile -- shu, new rounding
3210: IF ((v_price_round_options = G_ROUND_ADJ OR v_price_round_options = G_NO_ROUND_ADJ) AND p_request_line.rounding_factor IS NOT NULL) THEN -- do not round if profile is null
3211: p_request_line.ADJUSTED_UNIT_PRICE := ROUND ((p_request_line.UNIT_PRICE + nvl(v_total_adj_amt,0)), (-1) * p_request_line.rounding_factor);

Line 3209: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile -- shu, new rounding

3205:
3206: --IF (( nvl(p_request_line.rounding_flag, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES OR p_request_line.rounding_flag = G_CHAR_U) and p_request_line.rounding_factor IS NOT NULL) THEN -- shu
3207: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG,'Y')='Y' OR QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_U) and p_request_line.rounding_factor IS NOT NULL THEN-- aso rounding, 2457629, shu
3208: p_request_line.ADJUSTED_UNIT_PRICE := ROUND ((p_request_line.UNIT_PRICE + nvl(v_total_adj_amt,0)), (-1) * p_request_line.rounding_factor);
3209: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- check qp_selling_price_rounding_options profile -- shu, new rounding
3210: IF ((v_price_round_options = G_ROUND_ADJ OR v_price_round_options = G_NO_ROUND_ADJ) AND p_request_line.rounding_factor IS NOT NULL) THEN -- do not round if profile is null
3211: p_request_line.ADJUSTED_UNIT_PRICE := ROUND ((p_request_line.UNIT_PRICE + nvl(v_total_adj_amt,0)), (-1) * p_request_line.rounding_factor);
3212: ELSE -- NO_ROUND
3213: p_request_line.ADJUSTED_UNIT_PRICE := p_request_line.UNIT_PRICE + nvl(v_total_adj_amt,0);

Line 3227: QP_PREQ_GRP.engine_debug('The Adjusted Amount is: ' || v_total_adj_amt);

3223:
3224: END IF;
3225:
3226: IF l_debug = FND_API.G_TRUE THEN
3227: QP_PREQ_GRP.engine_debug('The Adjusted Amount is: ' || v_total_adj_amt);
3228: QP_PREQ_GRP.engine_debug('The Unit Price: ' || p_request_line.UNIT_PRICE );
3229: QP_PREQ_GRP.engine_debug('The Adjusted Price: ' || p_request_line.ADJUSTED_UNIT_PRICE );
3230:
3231: END IF;

Line 3228: QP_PREQ_GRP.engine_debug('The Unit Price: ' || p_request_line.UNIT_PRICE );

3224: END IF;
3225:
3226: IF l_debug = FND_API.G_TRUE THEN
3227: QP_PREQ_GRP.engine_debug('The Adjusted Amount is: ' || v_total_adj_amt);
3228: QP_PREQ_GRP.engine_debug('The Unit Price: ' || p_request_line.UNIT_PRICE );
3229: QP_PREQ_GRP.engine_debug('The Adjusted Price: ' || p_request_line.ADJUSTED_UNIT_PRICE );
3230:
3231: END IF;
3232: END IF;

Line 3229: QP_PREQ_GRP.engine_debug('The Adjusted Price: ' || p_request_line.ADJUSTED_UNIT_PRICE );

3225:
3226: IF l_debug = FND_API.G_TRUE THEN
3227: QP_PREQ_GRP.engine_debug('The Adjusted Amount is: ' || v_total_adj_amt);
3228: QP_PREQ_GRP.engine_debug('The Unit Price: ' || p_request_line.UNIT_PRICE );
3229: QP_PREQ_GRP.engine_debug('The Adjusted Price: ' || p_request_line.ADJUSTED_UNIT_PRICE );
3230:
3231: END IF;
3232: END IF;
3233: EXIT WHEN v_index = p_request_line_details.LAST;

Line 3240: QP_PREQ_GRP.engine_debug ('V_List_Price is null');

3236:
3237: -- If price list is not passed , round the unit price and adjusted unit price
3238: IF (v_list_price IS NULL) THEN
3239: IF l_debug = FND_API.G_TRUE THEN
3240: QP_PREQ_GRP.engine_debug ('V_List_Price is null');
3241: END IF;
3242: v_list_price := p_request_line.UNIT_PRICE ;
3243: IF l_debug = FND_API.G_TRUE THEN
3244: QP_PREQ_GRP.engine_debug ('List Price after rounding: ' || v_list_price);

Line 3244: QP_PREQ_GRP.engine_debug ('List Price after rounding: ' || v_list_price);

3240: QP_PREQ_GRP.engine_debug ('V_List_Price is null');
3241: END IF;
3242: v_list_price := p_request_line.UNIT_PRICE ;
3243: IF l_debug = FND_API.G_TRUE THEN
3244: QP_PREQ_GRP.engine_debug ('List Price after rounding: ' || v_list_price);
3245: END IF;
3246:
3247: -- shu new rounding
3248: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES -- aso rounding, shu, 2457629

Line 3248: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES -- aso rounding, shu, 2457629

3244: QP_PREQ_GRP.engine_debug ('List Price after rounding: ' || v_list_price);
3245: END IF;
3246:
3247: -- shu new rounding
3248: IF (nvl(QP_PREQ_GRP.G_ROUNDING_FLAG, QP_PREQ_GRP.G_YES) = QP_PREQ_GRP.G_YES -- aso rounding, shu, 2457629
3249: AND p_request_line.rounding_factor IS NOT NULL) THEN -- shu new rounding
3250:
3251: p_request_line.UNIT_PRICE := ROUND(v_list_price, p_request_line.ROUNDING_FACTOR * ( - 1));
3252: v_list_price := ROUND(v_list_price, p_request_line.ROUNDING_FACTOR * ( - 1));

Line 3254: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- aso rounding, shu, 2457629

3250:
3251: p_request_line.UNIT_PRICE := ROUND(v_list_price, p_request_line.ROUNDING_FACTOR * ( - 1));
3252: v_list_price := ROUND(v_list_price, p_request_line.ROUNDING_FACTOR * ( - 1));
3253:
3254: ELSIF (QP_PREQ_GRP.G_ROUNDING_FLAG = G_CHAR_Q) THEN -- aso rounding, shu, 2457629
3255: -- no round if rounding_flag is Q bug QP profile is null
3256: IF v_price_round_options = G_ROUND_ADJ AND p_request_line.rounding_factor IS NOT NULL THEN -- bug 2415571
3257: p_request_line.UNIT_PRICE := ROUND(v_list_price, p_request_line.ROUNDING_FACTOR * ( - 1));
3258: v_list_price := ROUND(v_list_price, p_request_line.ROUNDING_FACTOR * ( - 1));

Line 3264: QP_PREQ_GRP.engine_debug ('List Price after rounding1: ' || p_request_line.UNIT_PRICE);

3260:
3261: END IF;
3262:
3263: IF l_debug = FND_API.G_TRUE THEN
3264: QP_PREQ_GRP.engine_debug ('List Price after rounding1: ' || p_request_line.UNIT_PRICE);
3265: QP_PREQ_GRP.engine_debug ('List Price after rounding2: ' || v_list_price);
3266: END IF;
3267: v_discounted_price := nvl(p_request_line.ADJUSTED_UNIT_PRICE, v_list_price);
3268: END IF;

Line 3265: QP_PREQ_GRP.engine_debug ('List Price after rounding2: ' || v_list_price);

3261: END IF;
3262:
3263: IF l_debug = FND_API.G_TRUE THEN
3264: QP_PREQ_GRP.engine_debug ('List Price after rounding1: ' || p_request_line.UNIT_PRICE);
3265: QP_PREQ_GRP.engine_debug ('List Price after rounding2: ' || v_list_price);
3266: END IF;
3267: v_discounted_price := nvl(p_request_line.ADJUSTED_UNIT_PRICE, v_list_price);
3268: END IF;
3269:

Line 3271: IF (p_request_line.GSA_QUALIFIER_FLAG IS NULL AND nvl(QP_PREQ_GRP.G_GSA_CHECK_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND

3267: v_discounted_price := nvl(p_request_line.ADJUSTED_UNIT_PRICE, v_list_price);
3268: END IF;
3269:
3270: -- Call GSA Check only for non-gsa customers(where GSA_QUALIFIER_FLAG IS NULL)
3271: IF (p_request_line.GSA_QUALIFIER_FLAG IS NULL AND nvl(QP_PREQ_GRP.G_GSA_CHECK_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND
3272: p_request_line.GSA_ENABLED_FLAG = QP_PREQ_GRP.G_YES AND
3273: QP_PREQ_GRP.G_GSA_DUP_CHECK_FLAG = QP_PREQ_GRP.G_YES ) THEN
3274: GSA_Max_Discount_Check(p_request_line.ADJUSTED_UNIT_PRICE,
3275: p_request_line.LINE_INDEX,

Line 3272: p_request_line.GSA_ENABLED_FLAG = QP_PREQ_GRP.G_YES AND

3268: END IF;
3269:
3270: -- Call GSA Check only for non-gsa customers(where GSA_QUALIFIER_FLAG IS NULL)
3271: IF (p_request_line.GSA_QUALIFIER_FLAG IS NULL AND nvl(QP_PREQ_GRP.G_GSA_CHECK_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND
3272: p_request_line.GSA_ENABLED_FLAG = QP_PREQ_GRP.G_YES AND
3273: QP_PREQ_GRP.G_GSA_DUP_CHECK_FLAG = QP_PREQ_GRP.G_YES ) THEN
3274: GSA_Max_Discount_Check(p_request_line.ADJUSTED_UNIT_PRICE,
3275: p_request_line.LINE_INDEX,
3276: p_request_line.PRICING_EFFECTIVE_DATE,

Line 3273: QP_PREQ_GRP.G_GSA_DUP_CHECK_FLAG = QP_PREQ_GRP.G_YES ) THEN

3269:
3270: -- Call GSA Check only for non-gsa customers(where GSA_QUALIFIER_FLAG IS NULL)
3271: IF (p_request_line.GSA_QUALIFIER_FLAG IS NULL AND nvl(QP_PREQ_GRP.G_GSA_CHECK_FLAG, 'Y') = QP_PREQ_GRP.G_YES AND
3272: p_request_line.GSA_ENABLED_FLAG = QP_PREQ_GRP.G_YES AND
3273: QP_PREQ_GRP.G_GSA_DUP_CHECK_FLAG = QP_PREQ_GRP.G_YES ) THEN
3274: GSA_Max_Discount_Check(p_request_line.ADJUSTED_UNIT_PRICE,
3275: p_request_line.LINE_INDEX,
3276: p_request_line.PRICING_EFFECTIVE_DATE,
3277: x_ret_status,

Line 3279: IF(x_ret_status = QP_PREQ_GRP.G_STATUS_GSA_VIOLATION) THEN

3275: p_request_line.LINE_INDEX,
3276: p_request_line.PRICING_EFFECTIVE_DATE,
3277: x_ret_status,
3278: x_ret_status_txt);
3279: IF(x_ret_status = QP_PREQ_GRP.G_STATUS_GSA_VIOLATION) THEN
3280: x_return_status := QP_PREQ_GRP.G_STATUS_GSA_VIOLATION;
3281: x_return_status_txt := x_ret_status_txt;
3282: END IF;
3283: END IF;

Line 3280: x_return_status := QP_PREQ_GRP.G_STATUS_GSA_VIOLATION;

3276: p_request_line.PRICING_EFFECTIVE_DATE,
3277: x_ret_status,
3278: x_ret_status_txt);
3279: IF(x_ret_status = QP_PREQ_GRP.G_STATUS_GSA_VIOLATION) THEN
3280: x_return_status := QP_PREQ_GRP.G_STATUS_GSA_VIOLATION;
3281: x_return_status_txt := x_ret_status_txt;
3282: END IF;
3283: END IF;
3284: IF l_debug = FND_API.G_TRUE THEN

Line 3285: QP_PREQ_GRP.engine_debug ('Before Update List Price after rounding1: ' || p_request_line.UNIT_PRICE);

3281: x_return_status_txt := x_ret_status_txt;
3282: END IF;
3283: END IF;
3284: IF l_debug = FND_API.G_TRUE THEN
3285: QP_PREQ_GRP.engine_debug ('Before Update List Price after rounding1: ' || p_request_line.UNIT_PRICE);
3286:
3287: END IF;
3288: -- Populate the Output records
3289: --p_request_line := p_request_line;

Line 3295: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || x_ret_status_txt);

3291: --p_related_request_lines := p_related_request_lines;
3292: EXCEPTION
3293: WHEN FND_API.G_EXC_ERROR THEN
3294: IF l_debug = FND_API.G_TRUE THEN
3295: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || x_ret_status_txt);
3296: END IF;
3297: x_return_status := FND_API.G_RET_STS_ERROR;
3298: x_return_status_txt := v_routine_name || ' ' || x_ret_status_txt;
3299: WHEN OTHERS THEN

Line 3301: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);

3297: x_return_status := FND_API.G_RET_STS_ERROR;
3298: x_return_status_txt := v_routine_name || ' ' || x_ret_status_txt;
3299: WHEN OTHERS THEN
3300: IF l_debug = FND_API.G_TRUE THEN
3301: QP_PREQ_GRP.engine_debug(v_routine_name || ' ' || SQLERRM);
3302: END IF;
3303: x_return_status := FND_API.G_RET_STS_ERROR;
3304: x_return_status_txt := v_routine_name || ' ' || SQLERRM;
3305: