43: initialize record
44: populate the record
45: update VO discount tiers
46: */
47: x_return_status := FND_API.G_RET_STS_SUCCESS;
48: FOR l_discountLine IN c_discountLine(cp_offerDiscountLineId => p_offerDiscountLineId , cp_offerAdjustmentId => p_offerAdjustmentId )
49: LOOP
50: l_vo_disc_rec := null;
51: l_vo_disc_rec.offer_discount_line_id := p_offerDiscountLineId;
54: l_vo_disc_rec.discount := l_discountLine.modified_discount;
55: END LOOP;
56: OZF_Volume_Offer_disc_PVT.Update_vo_discount(
57: p_api_version_number => 1.0
58: , p_init_msg_list => FND_API.G_FALSE
59: , p_commit => FND_API.G_FALSE
60: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
61: , x_return_status => x_return_status
62: , x_msg_count => x_msg_count
55: END LOOP;
56: OZF_Volume_Offer_disc_PVT.Update_vo_discount(
57: p_api_version_number => 1.0
58: , p_init_msg_list => FND_API.G_FALSE
59: , p_commit => FND_API.G_FALSE
60: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
61: , x_return_status => x_return_status
62: , x_msg_count => x_msg_count
63: , x_msg_data => x_msg_data
56: OZF_Volume_Offer_disc_PVT.Update_vo_discount(
57: p_api_version_number => 1.0
58: , p_init_msg_list => FND_API.G_FALSE
59: , p_commit => FND_API.G_FALSE
60: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
61: , x_return_status => x_return_status
62: , x_msg_count => x_msg_count
63: , x_msg_data => x_msg_data
64: , p_vo_disc_rec => l_vo_disc_rec
81: BEGIN
82: -- initialize return status
83: -- loop thru. all adjustment tiers
84: -- for each adjustment tier update the discount line and handle exception
85: x_return_status := FND_API.G_RET_STS_SUCCESS;
86: FOR l_adjustmentTiers IN c_adjustmentTiers(cp_offerAdjustmentId => p_offerAdjustmentId)
87: LOOP
88: update_vo_tier
89: (
92: , x_msg_data => x_msg_data
93: , p_offerDiscountLineId => l_adjustmentTiers.offer_discount_line_id
94: , p_offerAdjustmentId => p_offerAdjustmentId
95: );
96: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
97: RAISE FND_API.G_EXC_ERROR;
98: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
99: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
100: END IF;
93: , p_offerDiscountLineId => l_adjustmentTiers.offer_discount_line_id
94: , p_offerAdjustmentId => p_offerAdjustmentId
95: );
96: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
97: RAISE FND_API.G_EXC_ERROR;
98: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
99: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
100: END IF;
101: END LOOP;
94: , p_offerAdjustmentId => p_offerAdjustmentId
95: );
96: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
97: RAISE FND_API.G_EXC_ERROR;
98: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
99: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
100: END IF;
101: END LOOP;
102: END update_adj_vo_tiers;
95: );
96: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
97: RAISE FND_API.G_EXC_ERROR;
98: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
99: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
100: END IF;
101: END LOOP;
102: END update_adj_vo_tiers;
103:
150: V_PRICING_ATTR_tbl QP_MODIFIERS_PUB.Pricing_Attr_Tbl_Type;
151: V_PRICING_ATTR_val_tbl QP_MODIFIERS_PUB.Pricing_Attr_Val_Tbl_Type;
152:
153: BEGIN
154: x_return_status := FND_API.G_RET_STS_SUCCESS;
155: -- retrieve end_date into local record
156: -- initialize record
157: -- populate record
158: -- call process_qp_list_lines
171: l_modifier_line_tbl(1).price_break_type_code:= l_listLines.price_break_type_code;
172: END LOOP;
173: QP_Modifiers_PUB.process_modifiers(
174: p_api_version_number => 1.0,
175: p_init_msg_list => FND_API.G_FALSE,
176: p_return_values => FND_API.G_FALSE,
177: x_return_status => x_return_status,
178: x_msg_count => x_msg_count,
179: x_msg_data => x_msg_data,
172: END LOOP;
173: QP_Modifiers_PUB.process_modifiers(
174: p_api_version_number => 1.0,
175: p_init_msg_list => FND_API.G_FALSE,
176: p_return_values => FND_API.G_FALSE,
177: x_return_status => x_return_status,
178: x_msg_count => x_msg_count,
179: x_msg_data => x_msg_data,
180: p_modifiers_tbl => l_modifier_line_tbl,
204: WHERE a.offer_discount_line_id = b.offer_discount_line_id
205: AND b.parent_discount_line_id = c.offer_discount_line_id
206: AND a.offer_adjustment_id = cp_offerAdjustmentId;
207: BEGIN
208: x_return_status := FND_API.G_RET_STS_SUCCESS;
209: FOR l_qpListLines IN c_qpListLines(cp_offerAdjustmentId => p_offerAdjustmentId) LOOP
210: end_qp_line
211: (
212: x_return_status => x_return_status
214: ,x_msg_data => x_msg_data
215: ,p_listLineId => l_qpListLines.list_line_id
216: ,p_offerAdjustmentId => p_offerAdjustmentId
217: );
218: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
219: RAISE FND_API.G_EXC_ERROR;
220: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
221: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
222: END IF;
215: ,p_listLineId => l_qpListLines.list_line_id
216: ,p_offerAdjustmentId => p_offerAdjustmentId
217: );
218: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
219: RAISE FND_API.G_EXC_ERROR;
220: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
221: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
222: END IF;
223: END LOOP;
216: ,p_offerAdjustmentId => p_offerAdjustmentId
217: );
218: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
219: RAISE FND_API.G_EXC_ERROR;
220: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
221: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
222: END IF;
223: END LOOP;
224: END end_date_qp_lines;
217: );
218: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
219: RAISE FND_API.G_EXC_ERROR;
220: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
221: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
222: END IF;
223: END LOOP;
224: END end_date_qp_lines;
225:
353: FROM qp_pricing_attributes a
354: WHERE a.list_line_id = cp_listLineId;
355: i NUMBER := null;
356: BEGIN
357: --x_return_status := FND_API.G_RET_STS_SUCCESS;
358: x_pricing_attr_tbl.delete;
359: i := 1;
360: FOR l_pricingAttributes in c_pricingAttributes(cp_listLineId => p_list_line_id) LOOP
361: --dbms_output.put_line('ist line id :'||p_list_line_id||' :index :'||P_INDEX||' : Attr Value :'||l_pricingAttributes.product_attr_value||': Excluder :'||l_pricingAttributes.excluder_flag);
387: )
388: IS
389: BEGIN
390: --dbms_output.put_line('IN populate pbh line');
391: x_return_status := FND_API.G_RET_STS_SUCCESS;
392: x_modifier_line_tbl.delete;
393: x_pricing_attr_tbl.delete;
394: x_modifier_line_tbl(1).operation := QP_GLOBALS.G_OPR_CREATE;
395: x_modifier_line_tbl(1).list_line_type_code := 'PBH';
516: */
517: i NUMBER;
518: l_pricingAttrTbl QP_MODIFIERS_PUB.Pricing_Attr_Tbl_Type;
519: BEGIN
520: x_return_status := FND_API.G_RET_STS_SUCCESS;
521: x_modifier_line_tbl.delete;
522: x_pricing_attr_tbl.delete;
523: l_pricingAttrTbl.delete;
524:
576: FROM ozf_offer_adjustments_b a
577: WHERE a.offer_adjustment_id = cp_offerAdjustmentId;
578: l_additionalDetails c_additionalDetails%ROWTYPE;
579: BEGIN
580: x_return_status := FND_API.G_RET_STS_SUCCESS;
581: -- initialize table
582: -- populate pbh line
583: -- populate dis lines
584: -- merge the dis lines with pbh lines
595: , p_listLineId => p_listLineId
596: , x_modifier_line_tbl => pbh_modifier_line_tbl
597: , x_pricing_attr_tbl => pbh_pricing_attr_tbl
598: );
599: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
600: RAISE FND_API.G_EXC_ERROR;
601: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
602: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
603: END IF;
596: , x_modifier_line_tbl => pbh_modifier_line_tbl
597: , x_pricing_attr_tbl => pbh_pricing_attr_tbl
598: );
599: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
600: RAISE FND_API.G_EXC_ERROR;
601: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
602: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
603: END IF;
604: OPEN c_additionalDetails(cp_offerAdjustmentId => p_offerAdjustmentId);
597: , x_pricing_attr_tbl => pbh_pricing_attr_tbl
598: );
599: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
600: RAISE FND_API.G_EXC_ERROR;
601: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
602: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
603: END IF;
604: OPEN c_additionalDetails(cp_offerAdjustmentId => p_offerAdjustmentId);
605: FETCH c_additionalDetails INTO l_additionalDetails;
598: );
599: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
600: RAISE FND_API.G_EXC_ERROR;
601: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
602: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
603: END IF;
604: OPEN c_additionalDetails(cp_offerAdjustmentId => p_offerAdjustmentId);
605: FETCH c_additionalDetails INTO l_additionalDetails;
606: CLOSE c_additionalDetails;
615: , p_offerAdjustmentId => p_offerAdjustmentId
616: , x_modifier_line_tbl => dis_modifier_line_tbl
617: , x_pricing_attr_tbl => dis_pricing_attr_tbl
618: );
619: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
620: RAISE FND_API.G_EXC_ERROR;
621: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
623: END IF;
616: , x_modifier_line_tbl => dis_modifier_line_tbl
617: , x_pricing_attr_tbl => dis_pricing_attr_tbl
618: );
619: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
620: RAISE FND_API.G_EXC_ERROR;
621: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
623: END IF;
624: merge_modifiers
617: , x_pricing_attr_tbl => dis_pricing_attr_tbl
618: );
619: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
620: RAISE FND_API.G_EXC_ERROR;
621: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
623: END IF;
624: merge_modifiers
625: (
618: );
619: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
620: RAISE FND_API.G_EXC_ERROR;
621: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
623: END IF;
624: merge_modifiers
625: (
626: p_to_modifier_line_tbl => pbh_modifier_line_tbl
684: -- initialize return status, nested tables
685: -- for given adjustment id get the adjustment tiers
686: -- populate the qp_list_lines using the tiers and adjustment tiers
687: -- create the QP list lines
688: x_return_status := FND_API.G_RET_STS_SUCCESS;
689: x_modifier_line_tbl.delete;
690: x_pricing_attr_tbl.delete;
691: l_modifier_line_tbl.delete;
692: l_pricing_attr_tbl.delete;
699: , p_listLineId => p_listLineId --l_tierHeader.list_line_id
700: , x_modifier_line_tbl => l_modifier_line_tbl
701: , x_pricing_attr_tbl => l_pricing_attr_tbl
702: );
703: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
704: RAISE FND_API.G_EXC_ERROR;
705: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
706: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
707: END IF;
700: , x_modifier_line_tbl => l_modifier_line_tbl
701: , x_pricing_attr_tbl => l_pricing_attr_tbl
702: );
703: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
704: RAISE FND_API.G_EXC_ERROR;
705: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
706: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
707: END IF;
708: QP_Modifiers_PUB.process_modifiers(
701: , x_pricing_attr_tbl => l_pricing_attr_tbl
702: );
703: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
704: RAISE FND_API.G_EXC_ERROR;
705: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
706: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
707: END IF;
708: QP_Modifiers_PUB.process_modifiers(
709: p_api_version_number => 1.0,
702: );
703: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
704: RAISE FND_API.G_EXC_ERROR;
705: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
706: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
707: END IF;
708: QP_Modifiers_PUB.process_modifiers(
709: p_api_version_number => 1.0,
710: p_init_msg_list => FND_API.G_FALSE,
706: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
707: END IF;
708: QP_Modifiers_PUB.process_modifiers(
709: p_api_version_number => 1.0,
710: p_init_msg_list => FND_API.G_FALSE,
711: p_return_values => FND_API.G_FALSE,
712: x_return_status => x_return_status,
713: x_msg_count => x_msg_count,
714: x_msg_data => x_msg_data,
707: END IF;
708: QP_Modifiers_PUB.process_modifiers(
709: p_api_version_number => 1.0,
710: p_init_msg_list => FND_API.G_FALSE,
711: p_return_values => FND_API.G_FALSE,
712: x_return_status => x_return_status,
713: x_msg_count => x_msg_count,
714: x_msg_data => x_msg_data,
715: p_modifiers_tbl => l_modifier_line_tbl,
722: x_qualifiers_val_tbl => v_qualifiers_val_tbl,
723: x_pricing_attr_tbl => v_pricing_attr_tbl,
724: x_pricing_attr_val_tbl => v_pricing_attr_val_tbl
725: );
726: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
727: RAISE FND_API.G_EXC_ERROR;
728: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
729: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
730: END IF;
723: x_pricing_attr_tbl => v_pricing_attr_tbl,
724: x_pricing_attr_val_tbl => v_pricing_attr_val_tbl
725: );
726: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
727: RAISE FND_API.G_EXC_ERROR;
728: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
729: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
730: END IF;
731: x_modifier_line_tbl := v_modifiers_tbl;
724: x_pricing_attr_val_tbl => v_pricing_attr_val_tbl
725: );
726: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
727: RAISE FND_API.G_EXC_ERROR;
728: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
729: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
730: END IF;
731: x_modifier_line_tbl := v_modifiers_tbl;
732: x_pricing_attr_tbl := v_pricing_attr_tbl;
725: );
726: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
727: RAISE FND_API.G_EXC_ERROR;
728: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
729: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
730: END IF;
731: x_modifier_line_tbl := v_modifiers_tbl;
732: x_pricing_attr_tbl := v_pricing_attr_tbl;
733: --dbms_output.put_line('Table sizes 1 are :'||v_modifiers_tbl.count||' : '||v_pricing_attr_tbl.count);
775: -- loop thru the Discount Structure
776: -- for each discount line loop thru. the qp_modifiers table
777: -- check for discount equality, in case yes insert into ozf_qp_discounts table
778: -- similar thing for relating products
779: x_return_status := FND_API.G_RET_STS_SUCCESS;
780: --dbms_output.put_line('Map Ozf qp lines');
781: --dbms_output.put_line('Table counts are :'||p_modifier_line_tbl.count||' : '||p_pricing_attr_tbl.count);
782: FOR l_discounts in c_discounts(cp_offerDiscountLineId => p_offerDiscountLineId , cp_offerAdjustmentId => p_offerAdjustmentId)
783: LOOP
797: l_qpDiscountsRec.start_date := sysdate;
798: OZF_QP_DISCOUNTS_PVT. Create_ozf_qp_discount
799: (
800: p_api_version_number => 1.0
801: , p_init_msg_list => FND_API.G_FALSE
802: , p_commit => FND_API.G_FALSE
803: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
804: , x_return_status => x_return_status
805: , x_msg_count => x_msg_count
798: OZF_QP_DISCOUNTS_PVT. Create_ozf_qp_discount
799: (
800: p_api_version_number => 1.0
801: , p_init_msg_list => FND_API.G_FALSE
802: , p_commit => FND_API.G_FALSE
803: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
804: , x_return_status => x_return_status
805: , x_msg_count => x_msg_count
806: , x_msg_data => x_msg_data
799: (
800: p_api_version_number => 1.0
801: , p_init_msg_list => FND_API.G_FALSE
802: , p_commit => FND_API.G_FALSE
803: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
804: , x_return_status => x_return_status
805: , x_msg_count => x_msg_count
806: , x_msg_data => x_msg_data
807: , p_qp_disc_rec => l_qpDiscountsRec
806: , x_msg_data => x_msg_data
807: , p_qp_disc_rec => l_qpDiscountsRec
808: , x_qp_discount_id => l_qpDiscountId
809: );
810: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
811: RAISE FND_API.G_EXC_ERROR;
812: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
813: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
814: END IF;
807: , p_qp_disc_rec => l_qpDiscountsRec
808: , x_qp_discount_id => l_qpDiscountId
809: );
810: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
811: RAISE FND_API.G_EXC_ERROR;
812: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
813: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
814: END IF;
815: ELSE
808: , x_qp_discount_id => l_qpDiscountId
809: );
810: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
811: RAISE FND_API.G_EXC_ERROR;
812: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
813: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
814: END IF;
815: ELSE
816: null;
809: );
810: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
811: RAISE FND_API.G_EXC_ERROR;
812: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
813: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
814: END IF;
815: ELSE
816: null;
817: --dbms_output.put_line('No Discounts found for list line id:'||p_modifier_line_tbl(i).list_line_id||':'||l_discounts.offer_discount_line_id);
834: l_qpProductsRec.off_discount_product_id := l_products.off_discount_product_id;
835: l_qpProductsRec.pricing_attribute_id := p_pricing_attr_tbl(i).pricing_attribute_id;
836: OZF_QP_PRODUCTS_PVT.Create_ozf_qp_product(
837: p_api_version_number => 1.0
838: , p_init_msg_list => FND_API.G_FALSE
839: , p_commit => FND_API.G_FALSE
840: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
841: , x_return_status => x_return_status
842: , x_msg_count => x_msg_count
835: l_qpProductsRec.pricing_attribute_id := p_pricing_attr_tbl(i).pricing_attribute_id;
836: OZF_QP_PRODUCTS_PVT.Create_ozf_qp_product(
837: p_api_version_number => 1.0
838: , p_init_msg_list => FND_API.G_FALSE
839: , p_commit => FND_API.G_FALSE
840: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
841: , x_return_status => x_return_status
842: , x_msg_count => x_msg_count
843: , x_msg_data => x_msg_data
836: OZF_QP_PRODUCTS_PVT.Create_ozf_qp_product(
837: p_api_version_number => 1.0
838: , p_init_msg_list => FND_API.G_FALSE
839: , p_commit => FND_API.G_FALSE
840: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
841: , x_return_status => x_return_status
842: , x_msg_count => x_msg_count
843: , x_msg_data => x_msg_data
844: , p_qp_product_rec => l_qpProductsRec
843: , x_msg_data => x_msg_data
844: , p_qp_product_rec => l_qpProductsRec
845: , x_qp_product_id => l_qpProductId
846: );
847: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
848: RAISE FND_API.G_EXC_ERROR;
849: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
850: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
851: END IF;
844: , p_qp_product_rec => l_qpProductsRec
845: , x_qp_product_id => l_qpProductId
846: );
847: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
848: RAISE FND_API.G_EXC_ERROR;
849: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
850: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
851: END IF;
852: ELSE
845: , x_qp_product_id => l_qpProductId
846: );
847: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
848: RAISE FND_API.G_EXC_ERROR;
849: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
850: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
851: END IF;
852: ELSE
853: null;
846: );
847: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
848: RAISE FND_API.G_EXC_ERROR;
849: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
850: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
851: END IF;
852: ELSE
853: null;
854: --dbms_output.put_line('No Products found for pricing_attribute :'||p_pricing_attr_tbl(i).pricing_attribute_id||' : '||l_products.off_discount_product_id);
887: -- initialize
888: -- get all the tier Headers for which adjustments have been entered
889: -- for each tier header create QP Data, corresponding to data already entered in QP
890: -- merge the modifier tables created for each discount
891: x_return_status := FND_API.G_RET_STS_SUCCESS;
892: x_modifier_line_tbl.delete;
893: x_pricing_attr_tbl.delete;
894: FOR l_tierHeader in c_tierHeader(cp_offerAdjustmentId => p_offerAdjustmentId)
895: LOOP
905: , x_modifier_line_tbl => l_modifier_line_tbl
906: , x_pricing_attr_tbl => l_pricing_attr_tbl
907: );
908: --dbms_output.put_line('Table sizes 3 are :'||l_modifier_line_tbl.count||' : '||l_pricing_attr_tbl.count);
909: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
910: RAISE FND_API.G_EXC_ERROR;
911: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
912: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
913: END IF;
906: , x_pricing_attr_tbl => l_pricing_attr_tbl
907: );
908: --dbms_output.put_line('Table sizes 3 are :'||l_modifier_line_tbl.count||' : '||l_pricing_attr_tbl.count);
909: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
910: RAISE FND_API.G_EXC_ERROR;
911: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
912: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
913: END IF;
914: map_ozf_qp_lines
907: );
908: --dbms_output.put_line('Table sizes 3 are :'||l_modifier_line_tbl.count||' : '||l_pricing_attr_tbl.count);
909: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
910: RAISE FND_API.G_EXC_ERROR;
911: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
912: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
913: END IF;
914: map_ozf_qp_lines
915: (
908: --dbms_output.put_line('Table sizes 3 are :'||l_modifier_line_tbl.count||' : '||l_pricing_attr_tbl.count);
909: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
910: RAISE FND_API.G_EXC_ERROR;
911: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
912: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
913: END IF;
914: map_ozf_qp_lines
915: (
916: x_return_status => x_return_status
958: , x_msg_data OUT NOCOPY VARCHAR2
959: )
960: IS
961: BEGIN
962: x_return_status := FND_API.G_RET_STS_SUCCESS;
963: INSERT INTO ozf_offer_adj_rltd_lines
964: (
965: OFFER_ADJ_RLTD_LINE_ID
966: , OFFER_ADJUSTMENT_ID
989: , null
990: );
991: EXCEPTION
992: WHEN OTHERS THEN
993: x_return_status := Fnd_Api.g_ret_sts_error ;
994: END relate_lines;
995:
996: PROCEDURE relate_lines
997: (
1002: , x_msg_data OUT NOCOPY VARCHAR2
1003: )
1004: IS
1005: BEGIN
1006: x_return_status := FND_API.G_RET_STS_SUCCESS;
1007: IF nvl(p_modifiers_tbl.count,0) > 0 THEN
1008: FOR k IN p_modifiers_tbl.first .. p_modifiers_tbl.last LOOP
1009: IF p_modifiers_tbl.exists(k) THEN
1010: IF p_modifiers_tbl(k).operation <> 'CREATE' THEN
1009: IF p_modifiers_tbl.exists(k) THEN
1010: IF p_modifiers_tbl(k).operation <> 'CREATE' THEN
1011: null;
1012: ELSE
1013: IF p_modifiers_tbl(k).comments IS NULL OR p_modifiers_tbl(k).comments = FND_API.G_MISS_CHAR THEN
1014: x_return_status := FND_API.G_RET_STS_ERROR;
1015: return;
1016: ELSE
1017: relate_lines
1010: IF p_modifiers_tbl(k).operation <> 'CREATE' THEN
1011: null;
1012: ELSE
1013: IF p_modifiers_tbl(k).comments IS NULL OR p_modifiers_tbl(k).comments = FND_API.G_MISS_CHAR THEN
1014: x_return_status := FND_API.G_RET_STS_ERROR;
1015: return;
1016: ELSE
1017: relate_lines
1018: (
1022: , x_return_status => x_return_status
1023: , x_msg_count => x_return_status
1024: , x_msg_data => x_return_status
1025: );
1026: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1027: return;
1028: END IF;
1029: END IF;
1030: END IF;
1032: END LOOP;
1033: END IF;
1034: EXCEPTION
1035: WHEN OTHERS THEN
1036: x_return_status := FND_API.G_RET_STS_ERROR;
1037: return;
1038: END relate_lines;
1039:
1040:
1048: IS
1049: l_modifier_line_tbl QP_MODIFIERS_PUB.Modifiers_Tbl_Type;
1050: l_pricing_attr_tbl QP_MODIFIERS_PUB.Pricing_Attr_Tbl_Type;
1051: BEGIN
1052: x_return_status := FND_API.G_RET_STS_SUCCESS;
1053: /*
1054: Corresponding to the discount changes, update the tier definitions.
1055: End Date the QP List lines corresponding to the tier definitions changed.
1056: Create new QP List lines with the updated tier definitions.(1)[1]
1063: ,x_msg_count => x_msg_count
1064: ,x_msg_data => x_msg_data
1065: ,p_offerAdjustmentId => p_offerAdjustmentId
1066: );
1067: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1068: RAISE FND_API.G_EXC_ERROR;
1069: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1070: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1071: END IF;
1064: ,x_msg_data => x_msg_data
1065: ,p_offerAdjustmentId => p_offerAdjustmentId
1066: );
1067: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1068: RAISE FND_API.G_EXC_ERROR;
1069: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1070: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1071: END IF;
1072: end_date_qp_lines
1065: ,p_offerAdjustmentId => p_offerAdjustmentId
1066: );
1067: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1068: RAISE FND_API.G_EXC_ERROR;
1069: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1070: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1071: END IF;
1072: end_date_qp_lines
1073: (
1066: );
1067: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1068: RAISE FND_API.G_EXC_ERROR;
1069: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1070: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1071: END IF;
1072: end_date_qp_lines
1073: (
1074: x_return_status => x_return_status
1075: ,x_msg_count => x_msg_count
1076: ,x_msg_data => x_msg_data
1077: ,p_offerAdjustmentId => p_offerAdjustmentId
1078: );
1079: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1080: RAISE FND_API.G_EXC_ERROR;
1081: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1082: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1083: END IF;
1076: ,x_msg_data => x_msg_data
1077: ,p_offerAdjustmentId => p_offerAdjustmentId
1078: );
1079: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1080: RAISE FND_API.G_EXC_ERROR;
1081: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1082: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1083: END IF;
1084: create_new_qp_lines
1077: ,p_offerAdjustmentId => p_offerAdjustmentId
1078: );
1079: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1080: RAISE FND_API.G_EXC_ERROR;
1081: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1082: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1083: END IF;
1084: create_new_qp_lines
1085: (
1078: );
1079: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1080: RAISE FND_API.G_EXC_ERROR;
1081: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1082: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1083: END IF;
1084: create_new_qp_lines
1085: (
1086: x_return_status => x_return_status
1089: ,p_offerAdjustmentId => p_offerAdjustmentId
1090: , x_modifier_line_tbl => l_modifier_line_tbl
1091: , x_pricing_attr_tbl => l_pricing_attr_tbl
1092: );
1093: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1094: RAISE FND_API.G_EXC_ERROR;
1095: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1096: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1097: END IF;
1090: , x_modifier_line_tbl => l_modifier_line_tbl
1091: , x_pricing_attr_tbl => l_pricing_attr_tbl
1092: );
1093: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1094: RAISE FND_API.G_EXC_ERROR;
1095: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1096: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1097: END IF;
1098: relate_lines
1091: , x_pricing_attr_tbl => l_pricing_attr_tbl
1092: );
1093: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1094: RAISE FND_API.G_EXC_ERROR;
1095: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1096: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1097: END IF;
1098: relate_lines
1099: (
1092: );
1093: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1094: RAISE FND_API.G_EXC_ERROR;
1095: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1096: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1097: END IF;
1098: relate_lines
1099: (
1100: p_modifiers_tbl => l_modifier_line_tbl
1102: , x_return_status => x_return_status
1103: ,x_msg_count => x_msg_count
1104: , x_msg_data => x_msg_data
1105: );
1106: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1107: RAISE FND_API.G_EXC_ERROR;
1108: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1110: END IF;
1103: ,x_msg_count => x_msg_count
1104: , x_msg_data => x_msg_data
1105: );
1106: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1107: RAISE FND_API.G_EXC_ERROR;
1108: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1110: END IF;
1111: EXCEPTION
1104: , x_msg_data => x_msg_data
1105: );
1106: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1107: RAISE FND_API.G_EXC_ERROR;
1108: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1110: END IF;
1111: EXCEPTION
1112: WHEN FND_API.G_EXC_ERROR THEN
1105: );
1106: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1107: RAISE FND_API.G_EXC_ERROR;
1108: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1110: END IF;
1111: EXCEPTION
1112: WHEN FND_API.G_EXC_ERROR THEN
1113: x_return_status := FND_API.G_RET_STS_ERROR;
1108: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1110: END IF;
1111: EXCEPTION
1112: WHEN FND_API.G_EXC_ERROR THEN
1113: x_return_status := FND_API.G_RET_STS_ERROR;
1114: -- Standard call to get message count and if count=1, get the message
1115: FND_MSG_PUB.Count_And_Get (
1116: p_encoded => FND_API.G_FALSE,
1109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1110: END IF;
1111: EXCEPTION
1112: WHEN FND_API.G_EXC_ERROR THEN
1113: x_return_status := FND_API.G_RET_STS_ERROR;
1114: -- Standard call to get message count and if count=1, get the message
1115: FND_MSG_PUB.Count_And_Get (
1116: p_encoded => FND_API.G_FALSE,
1117: p_count => x_msg_count,
1112: WHEN FND_API.G_EXC_ERROR THEN
1113: x_return_status := FND_API.G_RET_STS_ERROR;
1114: -- Standard call to get message count and if count=1, get the message
1115: FND_MSG_PUB.Count_And_Get (
1116: p_encoded => FND_API.G_FALSE,
1117: p_count => x_msg_count,
1118: p_data => x_msg_data
1119: );
1120: OE_MSG_PUB.Count_And_Get (
1117: p_count => x_msg_count,
1118: p_data => x_msg_data
1119: );
1120: OE_MSG_PUB.Count_And_Get (
1121: p_encoded => FND_API.G_FALSE,
1122: p_count => x_msg_count,
1123: p_data => x_msg_data
1124: );
1125: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1121: p_encoded => FND_API.G_FALSE,
1122: p_count => x_msg_count,
1123: p_data => x_msg_data
1124: );
1125: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1126: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1127: -- Standard call to get message count and if count=1, get the message
1128: FND_MSG_PUB.Count_And_Get (
1129: p_encoded => FND_API.G_FALSE,
1122: p_count => x_msg_count,
1123: p_data => x_msg_data
1124: );
1125: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1126: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1127: -- Standard call to get message count and if count=1, get the message
1128: FND_MSG_PUB.Count_And_Get (
1129: p_encoded => FND_API.G_FALSE,
1130: p_count => x_msg_count,
1125: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1126: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1127: -- Standard call to get message count and if count=1, get the message
1128: FND_MSG_PUB.Count_And_Get (
1129: p_encoded => FND_API.G_FALSE,
1130: p_count => x_msg_count,
1131: p_data => x_msg_data
1132: );
1133: OE_MSG_PUB.Count_And_Get (
1130: p_count => x_msg_count,
1131: p_data => x_msg_data
1132: );
1133: OE_MSG_PUB.Count_And_Get (
1134: p_encoded => FND_API.G_FALSE,
1135: p_count => x_msg_count,
1136: p_data => x_msg_data
1137: );
1138: WHEN OTHERS THEN
1135: p_count => x_msg_count,
1136: p_data => x_msg_data
1137: );
1138: WHEN OTHERS THEN
1139: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1140: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1141: THEN
1142: FND_MSG_PUB.Add_Exc_Msg( 'VOLUME_OFFER_ADJ','adjust_old_discounts');
1143: END IF;
1142: FND_MSG_PUB.Add_Exc_Msg( 'VOLUME_OFFER_ADJ','adjust_old_discounts');
1143: END IF;
1144: -- Standard call to get message count and if count=1, get the message
1145: FND_MSG_PUB.Count_And_Get (
1146: p_encoded => FND_API.G_FALSE,
1147: p_count => x_msg_count,
1148: p_data => x_msg_data
1149: );
1150: OE_MSG_PUB.Count_And_Get (
1147: p_count => x_msg_count,
1148: p_data => x_msg_data
1149: );
1150: OE_MSG_PUB.Count_And_Get (
1151: p_encoded => FND_API.G_FALSE,
1152: p_count => x_msg_count,
1153: p_data => x_msg_data
1154: );
1155:
1186:
1187: l_productsRec OZF_Volume_Offer_disc_PVT.vo_prod_rec_type;
1188: l_objId NUMBER;
1189: BEGIN
1190: x_return_status := FND_API.G_RET_STS_SUCCESS;
1191: FOR l_products in c_products(cp_offerAdjustmentId => p_offerAdjustmentId) LOOP
1192: l_productsRec := null;
1193: l_productsRec.excluder_flag := l_products.excluder_flag;
1194: l_productsRec.offer_discount_line_id := l_products.offer_discount_line_id;
1200: l_productsRec.include_volume_flag := l_products.include_volume_flag;
1201:
1202: OZF_Volume_Offer_disc_PVT.Create_vo_Product(
1203: p_api_version_number => 1.0
1204: , p_init_msg_list => FND_API.G_FALSE
1205: , p_commit => FND_API.G_FALSE
1206: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1207: , x_return_status => x_return_status
1208: , x_msg_count => x_msg_count
1201:
1202: OZF_Volume_Offer_disc_PVT.Create_vo_Product(
1203: p_api_version_number => 1.0
1204: , p_init_msg_list => FND_API.G_FALSE
1205: , p_commit => FND_API.G_FALSE
1206: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1207: , x_return_status => x_return_status
1208: , x_msg_count => x_msg_count
1209: , x_msg_data => x_msg_data
1202: OZF_Volume_Offer_disc_PVT.Create_vo_Product(
1203: p_api_version_number => 1.0
1204: , p_init_msg_list => FND_API.G_FALSE
1205: , p_commit => FND_API.G_FALSE
1206: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1207: , x_return_status => x_return_status
1208: , x_msg_count => x_msg_count
1209: , x_msg_data => x_msg_data
1210: , p_vo_prod_rec => l_productsRec
1209: , x_msg_data => x_msg_data
1210: , p_vo_prod_rec => l_productsRec
1211: , x_off_discount_product_id => l_objId
1212: );
1213: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1214: RAISE FND_API.G_EXC_ERROR;
1215: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1216: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1217: END IF;
1210: , p_vo_prod_rec => l_productsRec
1211: , x_off_discount_product_id => l_objId
1212: );
1213: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1214: RAISE FND_API.G_EXC_ERROR;
1215: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1216: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1217: END IF;
1218: --dbms_output.put_line('Created Product successfully:'||l_objId);
1211: , x_off_discount_product_id => l_objId
1212: );
1213: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1214: RAISE FND_API.G_EXC_ERROR;
1215: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1216: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1217: END IF;
1218: --dbms_output.put_line('Created Product successfully:'||l_objId);
1219: --dbms_output.put_line('Updating :'||l_products.offer_adjustment_product_id);
1212: );
1213: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1214: RAISE FND_API.G_EXC_ERROR;
1215: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1216: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1217: END IF;
1218: --dbms_output.put_line('Created Product successfully:'||l_objId);
1219: --dbms_output.put_line('Updating :'||l_products.offer_adjustment_product_id);
1220: UPDATE ozf_offer_adjustment_products
1224:
1225: END LOOP;
1226: EXCEPTION
1227: WHEN OTHERS THEN
1228: x_return_status := FND_API.G_RET_STS_ERROR;
1229: -- Standard call to get message count and if count=1, get the message
1230: FND_MSG_PUB.Count_And_Get (
1231: p_encoded => FND_API.G_FALSE,
1232: p_count => x_msg_count,
1227: WHEN OTHERS THEN
1228: x_return_status := FND_API.G_RET_STS_ERROR;
1229: -- Standard call to get message count and if count=1, get the message
1230: FND_MSG_PUB.Count_And_Get (
1231: p_encoded => FND_API.G_FALSE,
1232: p_count => x_msg_count,
1233: p_data => x_msg_data
1234: );
1235:
1259: FROM qp_list_lines
1260: WHERE list_header_id = cp_listHeaderId
1261: AND rownum < 2;
1262: BEGIN
1263: --x_return_status := FND_API.G_RET_STS_SUCCESS;
1264: FOR l_advOptions IN c_advOptions(cp_listHeaderId => p_listHeaderId ) LOOP
1265: x_modifiers_rec.print_on_invoice_flag := l_advOptions.print_on_invoice_flag;
1266: x_modifiers_rec.accrual_flag := l_advOptions.accrual_flag;
1267: x_modifiers_rec.pricing_phase_id := l_advOptions.pricing_phase_id;
1307: AND a.offer_id = b.offer_id
1308: AND b.qp_list_header_id = c.list_header_id
1309: AND a.parent_discount_line_id = d.offer_discount_line_id(+);
1310: BEGIN
1311: --x_return_status := FND_API.G_RET_STS_SUCCESS;
1312: FOR l_discountDetails IN c_discountDetails(cp_offerDiscountLineId => p_offerDiscountLineId) LOOP
1313: x_modifiers_rec.list_header_id := l_discountDetails.list_header_id;
1314: x_modifiers_rec.end_date_active := null;
1315: x_modifiers_rec.arithmetic_operator := l_discountDetails.discount_type;
1346: )
1347: IS
1348: BEGIN
1349: --dbms_output.put_line('IN populate pbh line');
1350: x_return_status := FND_API.G_RET_STS_SUCCESS;
1351: x_modifier_line_tbl.delete;
1352: --dbms_output.put_line('Before populate discounts1');
1353: x_modifier_line_tbl(1).operation := QP_GLOBALS.G_OPR_CREATE;
1354: x_modifier_line_tbl(1).list_line_type_code := 'PBH';
1382: FROM ozf_offer_discount_lines b , ozf_offer_discount_lines a
1383: WHERE b.offer_discount_line_id = cp_offerDiscountLineId
1384: AND b.parent_discount_line_id = a.offer_discount_line_id(+);
1385: BEGIN
1386: x_return_status := FND_API.G_RET_STS_SUCCESS;
1387: for l_pricingAttr in c_pricingAttr(cp_offerDiscountLineId => p_offerDiscountLineId) LOOP
1388: x_pricing_attr_rec.product_uom_code := l_pricingAttr.uom_code;
1389: x_pricing_attr_rec.pricing_attr_value_from := l_pricingAttr.volume_from;
1390: x_pricing_attr_rec.pricing_attr_value_to := l_pricingAttr.volume_to;
1444: , p_offerDiscountLineId => p_offerDiscountLineId
1445: , x_pricing_attr_rec => x_pricing_attr_rec
1446: , p_index => 2
1447: );
1448: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1449: RAISE FND_API.G_EXC_ERROR;
1450: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1451: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1452: END IF;
1445: , x_pricing_attr_rec => x_pricing_attr_rec
1446: , p_index => 2
1447: );
1448: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1449: RAISE FND_API.G_EXC_ERROR;
1450: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1451: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1452: END IF;
1453: x_modifier_line_rec.operand := 0;
1446: , p_index => 2
1447: );
1448: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1449: RAISE FND_API.G_EXC_ERROR;
1450: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1451: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1452: END IF;
1453: x_modifier_line_rec.operand := 0;
1454: x_modifier_line_rec.comments:= -1;
1447: );
1448: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1449: RAISE FND_API.G_EXC_ERROR;
1450: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1451: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1452: END IF;
1453: x_modifier_line_rec.operand := 0;
1454: x_modifier_line_rec.comments:= -1;
1455: x_pricing_attr_rec.pricing_attr_value_from := '0';
1477: AND b.off_discount_product_id = cp_offDiscountProductId;
1478:
1479: i NUMBER;
1480: BEGIN
1481: x_return_status := FND_API.G_RET_STS_SUCCESS;
1482: x_modifier_line_tbl.delete;
1483: x_pricing_attr_tbl.delete;
1484: i := 2;
1485: IF getMinVolumeFrom(p_offDiscountProductId => p_offDiscountProductId) IS NOT NULL AND getMinVolumeFrom(p_offDiscountProductId => p_offDiscountProductId) > 0 THEN
1550: l_pbh_modifier_line_tbl QP_MODIFIERS_PUB.Modifiers_Tbl_Type;
1551: l_dis_pricing_attr_tbl Qp_Modifiers_Pub.pricing_attr_Tbl_type;
1552: l_pbh_pricing_attr_tbl Qp_Modifiers_Pub.pricing_attr_Tbl_type;
1553: BEGIN
1554: x_return_status := FND_API.G_RET_STS_SUCCESS;
1555: x_modifier_line_tbl.delete;
1556: x_pricing_attr_tbl.delete;
1557: l_dis_modifier_line_tbl.delete;
1558: l_pbh_modifier_line_tbl.delete;
1565: , x_msg_data => x_msg_data
1566: , p_offerDiscountLineId => p_offerDiscountLineId
1567: , x_modifier_line_tbl => l_pbh_modifier_line_tbl
1568: );
1569: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1570: RAISE FND_API.G_EXC_ERROR;
1571: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1572: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1573: END IF;
1566: , p_offerDiscountLineId => p_offerDiscountLineId
1567: , x_modifier_line_tbl => l_pbh_modifier_line_tbl
1568: );
1569: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1570: RAISE FND_API.G_EXC_ERROR;
1571: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1572: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1573: END IF;
1574: l_pbh_pricing_attr_tbl(1) := p_pricing_attr_rec;
1567: , x_modifier_line_tbl => l_pbh_modifier_line_tbl
1568: );
1569: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1570: RAISE FND_API.G_EXC_ERROR;
1571: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1572: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1573: END IF;
1574: l_pbh_pricing_attr_tbl(1) := p_pricing_attr_rec;
1575: --dbms_output.put_line('l_pbh_pricing_attr_tbl(1) := p_pricing_attr_rec;'||l_pbh_pricing_attr_tbl(1).product_attr_value);
1568: );
1569: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1570: RAISE FND_API.G_EXC_ERROR;
1571: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1572: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1573: END IF;
1574: l_pbh_pricing_attr_tbl(1) := p_pricing_attr_rec;
1575: --dbms_output.put_line('l_pbh_pricing_attr_tbl(1) := p_pricing_attr_rec;'||l_pbh_pricing_attr_tbl(1).product_attr_value);
1576: l_pbh_pricing_attr_tbl(1).modifiers_index := 1;
1594: , x_modifier_line_tbl => l_dis_modifier_line_tbl
1595: , p_pricing_attr_rec => p_pricing_attr_rec
1596: , x_pricing_attr_tbl => l_dis_pricing_attr_tbl
1597: );
1598: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1599: RAISE FND_API.G_EXC_ERROR;
1600: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1602: END IF;
1595: , p_pricing_attr_rec => p_pricing_attr_rec
1596: , x_pricing_attr_tbl => l_dis_pricing_attr_tbl
1597: );
1598: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1599: RAISE FND_API.G_EXC_ERROR;
1600: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1602: END IF;
1603: --dbms_output.put_line('After populate_dis_line');
1596: , x_pricing_attr_tbl => l_dis_pricing_attr_tbl
1597: );
1598: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1599: RAISE FND_API.G_EXC_ERROR;
1600: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1602: END IF;
1603: --dbms_output.put_line('After populate_dis_line');
1604: merge_modifiers
1597: );
1598: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1599: RAISE FND_API.G_EXC_ERROR;
1600: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1602: END IF;
1603: --dbms_output.put_line('After populate_dis_line');
1604: merge_modifiers
1605: (
1643: FROM
1644: ozf_offer_discount_products
1645: WHERE off_discount_product_id = cp_offDiscountProductId;
1646: BEGIN
1647: --x_return_status := FND_API.G_RET_STS_SUCCESS;
1648: x_pricing_attr_rec := null;
1649: --dbms_output.put_line('Product Id :'||p_offDiscountProductId);
1650: FOR l_productAttributes IN c_productAttributes(cp_offDiscountProductId => p_offDiscountProductId) LOOP
1651: x_pricing_attr_rec := null;
1648: x_pricing_attr_rec := null;
1649: --dbms_output.put_line('Product Id :'||p_offDiscountProductId);
1650: FOR l_productAttributes IN c_productAttributes(cp_offDiscountProductId => p_offDiscountProductId) LOOP
1651: x_pricing_attr_rec := null;
1652: x_pricing_attr_rec.pricing_attribute_id := FND_API.G_MISS_NUM;
1653: x_pricing_attr_rec.attribute_grouping_no := FND_API.G_MISS_NUM;
1654: x_pricing_attr_rec.product_attribute_context := l_productAttributes.product_context;
1655: x_pricing_attr_rec.product_attribute := l_productAttributes.product_attribute;
1656: x_pricing_attr_rec.product_attr_value := l_productAttributes.product_attr_value;
1649: --dbms_output.put_line('Product Id :'||p_offDiscountProductId);
1650: FOR l_productAttributes IN c_productAttributes(cp_offDiscountProductId => p_offDiscountProductId) LOOP
1651: x_pricing_attr_rec := null;
1652: x_pricing_attr_rec.pricing_attribute_id := FND_API.G_MISS_NUM;
1653: x_pricing_attr_rec.attribute_grouping_no := FND_API.G_MISS_NUM;
1654: x_pricing_attr_rec.product_attribute_context := l_productAttributes.product_context;
1655: x_pricing_attr_rec.product_attribute := l_productAttributes.product_attribute;
1656: x_pricing_attr_rec.product_attr_value := l_productAttributes.product_attr_value;
1657: -- x_pricing_attr_rec.product_uom_code := l_pricingAttributes.product_uom_code;
1693: l_objectVersion NUMBER;
1694: l_prodObjectVersion NUMBER;
1695:
1696: BEGIN
1697: x_return_status := FND_API.G_RET_STS_SUCCESS;
1698: FOR i IN p_modifiers_tbl.first .. p_modifiers_tbl.last LOOP
1699: IF p_modifiers_tbl.exists(i) THEN
1700: IF p_modifiers_tbl(i).comments <> -1 THEN
1701: --dbms_output.put_line('Disocunt Mapping:'||i||' : '||p_modifiers_tbl(i).comments||' : '||p_modifiers_tbl(i).list_line_id);
1705: l_qpDiscountsRec.start_date := sysdate;
1706: OZF_QP_DISCOUNTS_PVT.Create_ozf_qp_discount
1707: (
1708: p_api_version_number => 1.0
1709: , p_init_msg_list => FND_API.G_FALSE
1710: , p_commit => FND_API.G_FALSE
1711: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1712: , x_return_status => x_return_status
1713: , x_msg_count => x_msg_count
1706: OZF_QP_DISCOUNTS_PVT.Create_ozf_qp_discount
1707: (
1708: p_api_version_number => 1.0
1709: , p_init_msg_list => FND_API.G_FALSE
1710: , p_commit => FND_API.G_FALSE
1711: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1712: , x_return_status => x_return_status
1713: , x_msg_count => x_msg_count
1714: , x_msg_data => x_msg_data
1707: (
1708: p_api_version_number => 1.0
1709: , p_init_msg_list => FND_API.G_FALSE
1710: , p_commit => FND_API.G_FALSE
1711: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1712: , x_return_status => x_return_status
1713: , x_msg_count => x_msg_count
1714: , x_msg_data => x_msg_data
1715: , p_qp_disc_rec => l_qpDiscountsRec
1714: , x_msg_data => x_msg_data
1715: , p_qp_disc_rec => l_qpDiscountsRec
1716: , x_qp_discount_id => l_qpDiscountId
1717: );
1718: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1719: RAISE FND_API.G_EXC_ERROR;
1720: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1721: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1722: END IF;
1715: , p_qp_disc_rec => l_qpDiscountsRec
1716: , x_qp_discount_id => l_qpDiscountId
1717: );
1718: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1719: RAISE FND_API.G_EXC_ERROR;
1720: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1721: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1722: END IF;
1723: END IF;
1716: , x_qp_discount_id => l_qpDiscountId
1717: );
1718: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1719: RAISE FND_API.G_EXC_ERROR;
1720: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1721: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1722: END IF;
1723: END IF;
1724: END IF;
1717: );
1718: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1719: RAISE FND_API.G_EXC_ERROR;
1720: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1721: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1722: END IF;
1723: END IF;
1724: END IF;
1725: END LOOP;
1730: l_qpProductsRec.off_discount_product_id := p_offDiscountProductId;
1731: l_qpProductsRec.pricing_attribute_id := p_pricing_attr_tbl(i).pricing_attribute_id;
1732: OZF_QP_PRODUCTS_PVT.Create_ozf_qp_product(
1733: p_api_version_number => 1.0
1734: , p_init_msg_list => FND_API.G_FALSE
1735: , p_commit => FND_API.G_FALSE
1736: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1737: , x_return_status => x_return_status
1738: , x_msg_count => x_msg_count
1731: l_qpProductsRec.pricing_attribute_id := p_pricing_attr_tbl(i).pricing_attribute_id;
1732: OZF_QP_PRODUCTS_PVT.Create_ozf_qp_product(
1733: p_api_version_number => 1.0
1734: , p_init_msg_list => FND_API.G_FALSE
1735: , p_commit => FND_API.G_FALSE
1736: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1737: , x_return_status => x_return_status
1738: , x_msg_count => x_msg_count
1739: , x_msg_data => x_msg_data
1732: OZF_QP_PRODUCTS_PVT.Create_ozf_qp_product(
1733: p_api_version_number => 1.0
1734: , p_init_msg_list => FND_API.G_FALSE
1735: , p_commit => FND_API.G_FALSE
1736: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1737: , x_return_status => x_return_status
1738: , x_msg_count => x_msg_count
1739: , x_msg_data => x_msg_data
1740: , p_qp_product_rec => l_qpProductsRec
1739: , x_msg_data => x_msg_data
1740: , p_qp_product_rec => l_qpProductsRec
1741: , x_qp_product_id => l_qpProductId
1742: );
1743: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1744: RAISE FND_API.G_EXC_ERROR;
1745: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1746: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1747: END IF;
1740: , p_qp_product_rec => l_qpProductsRec
1741: , x_qp_product_id => l_qpProductId
1742: );
1743: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1744: RAISE FND_API.G_EXC_ERROR;
1745: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1746: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1747: END IF;
1748: END IF;
1741: , x_qp_product_id => l_qpProductId
1742: );
1743: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1744: RAISE FND_API.G_EXC_ERROR;
1745: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1746: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1747: END IF;
1748: END IF;
1749: END LOOP;
1742: );
1743: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1744: RAISE FND_API.G_EXC_ERROR;
1745: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1746: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1747: END IF;
1748: END IF;
1749: END LOOP;
1750: END map_ozf_qp_data;
1764: l_qpProductsRec OZF_QP_PRODUCTS_PVT.qp_product_rec_type;
1765: l_qpProductId NUMBER;
1766: l_prodObjectVersion NUMBER;
1767: BEGIN
1768: x_return_status := FND_API.G_RET_STS_SUCCESS;
1769: FOR i in p_pricing_attr_tbl.first .. p_pricing_attr_tbl.last LOOP
1770: IF p_pricing_attr_tbl.exists(i) THEN
1771: l_qpProductsRec := null;
1772: l_qpProductsRec.off_discount_product_id := p_offDiscountProductId;
1772: l_qpProductsRec.off_discount_product_id := p_offDiscountProductId;
1773: l_qpProductsRec.pricing_attribute_id := p_pricing_attr_tbl(i).pricing_attribute_id;
1774: OZF_QP_PRODUCTS_PVT.Create_ozf_qp_product(
1775: p_api_version_number => 1.0
1776: , p_init_msg_list => FND_API.G_FALSE
1777: , p_commit => FND_API.G_FALSE
1778: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1779: , x_return_status => x_return_status
1780: , x_msg_count => x_msg_count
1773: l_qpProductsRec.pricing_attribute_id := p_pricing_attr_tbl(i).pricing_attribute_id;
1774: OZF_QP_PRODUCTS_PVT.Create_ozf_qp_product(
1775: p_api_version_number => 1.0
1776: , p_init_msg_list => FND_API.G_FALSE
1777: , p_commit => FND_API.G_FALSE
1778: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1779: , x_return_status => x_return_status
1780: , x_msg_count => x_msg_count
1781: , x_msg_data => x_msg_data
1774: OZF_QP_PRODUCTS_PVT.Create_ozf_qp_product(
1775: p_api_version_number => 1.0
1776: , p_init_msg_list => FND_API.G_FALSE
1777: , p_commit => FND_API.G_FALSE
1778: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
1779: , x_return_status => x_return_status
1780: , x_msg_count => x_msg_count
1781: , x_msg_data => x_msg_data
1782: , p_qp_product_rec => l_qpProductsRec
1781: , x_msg_data => x_msg_data
1782: , p_qp_product_rec => l_qpProductsRec
1783: , x_qp_product_id => l_qpProductId
1784: );
1785: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1786: RAISE FND_API.G_EXC_ERROR;
1787: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1788: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1789: END IF;
1782: , p_qp_product_rec => l_qpProductsRec
1783: , x_qp_product_id => l_qpProductId
1784: );
1785: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1786: RAISE FND_API.G_EXC_ERROR;
1787: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1788: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1789: END IF;
1790: END IF;
1783: , x_qp_product_id => l_qpProductId
1784: );
1785: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1786: RAISE FND_API.G_EXC_ERROR;
1787: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1788: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1789: END IF;
1790: END IF;
1791: END LOOP;
1784: );
1785: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1786: RAISE FND_API.G_EXC_ERROR;
1787: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1788: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1789: END IF;
1790: END IF;
1791: END LOOP;
1792: END map_ozf_qp_products;
1825: -- initialize
1826: -- retrieve all the qp_list_lines corresponding to the discount structure to which the exclusion is added.
1827: -- exclude this new product from all the qp discount structures.
1828: -- map the newly created qp_pricing_attributes to this exclusion product.
1829: x_return_status := FND_API.G_RET_STS_SUCCESS;
1830: l_pricing_attr_tbl.delete;
1831: i := 1;
1832: FOR l_qpListLines IN c_qpListLines(cp_offDiscountProductId => p_offDiscountProductId) LOOP
1833: l_pricing_attr_tbl(i).product_attribute_context := 'ITEM';
1841: i := i + 1;
1842: END LOOP;
1843: QP_Modifiers_PUB.process_modifiers(
1844: p_api_version_number => 1.0,
1845: p_init_msg_list => FND_API.G_TRUE,
1846: p_return_values => FND_API.G_TRUE,
1847: x_return_status => x_return_status,
1848: x_msg_count => x_msg_count,
1849: x_msg_data => x_msg_data,
1842: END LOOP;
1843: QP_Modifiers_PUB.process_modifiers(
1844: p_api_version_number => 1.0,
1845: p_init_msg_list => FND_API.G_TRUE,
1846: p_return_values => FND_API.G_TRUE,
1847: x_return_status => x_return_status,
1848: x_msg_count => x_msg_count,
1849: x_msg_data => x_msg_data,
1850: p_pricing_attr_tbl => l_pricing_attr_tbl,
1856: x_qualifiers_val_tbl => v_qualifiers_val_tbl,
1857: x_pricing_attr_tbl => v_pricing_attr_tbl,
1858: x_pricing_attr_val_tbl => v_pricing_attr_val_tbl
1859: );
1860: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1861: RAISE FND_API.G_EXC_ERROR;
1862: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1863: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1864: END IF;
1857: x_pricing_attr_tbl => v_pricing_attr_tbl,
1858: x_pricing_attr_val_tbl => v_pricing_attr_val_tbl
1859: );
1860: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1861: RAISE FND_API.G_EXC_ERROR;
1862: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1863: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1864: END IF;
1865: map_ozf_qp_products
1858: x_pricing_attr_val_tbl => v_pricing_attr_val_tbl
1859: );
1860: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1861: RAISE FND_API.G_EXC_ERROR;
1862: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1863: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1864: END IF;
1865: map_ozf_qp_products
1866: (
1859: );
1860: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1861: RAISE FND_API.G_EXC_ERROR;
1862: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1863: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1864: END IF;
1865: map_ozf_qp_products
1866: (
1867: p_offDiscountProductId => p_offDiscountProductId
1869: , x_return_status => x_return_status
1870: , x_msg_count => x_msg_count
1871: , x_msg_data => x_msg_data
1872: );
1873: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1874: RAISE FND_API.G_EXC_ERROR;
1875: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1876: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1877: END IF;
1870: , x_msg_count => x_msg_count
1871: , x_msg_data => x_msg_data
1872: );
1873: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1874: RAISE FND_API.G_EXC_ERROR;
1875: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1876: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1877: END IF;
1878: END create_new_exclusions;
1871: , x_msg_data => x_msg_data
1872: );
1873: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1874: RAISE FND_API.G_EXC_ERROR;
1875: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1876: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1877: END IF;
1878: END create_new_exclusions;
1879:
1872: );
1873: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1874: RAISE FND_API.G_EXC_ERROR;
1875: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1876: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1877: END IF;
1878: END create_new_exclusions;
1879:
1880: /**
1898: FROM ozf_offer_adjustments_b
1899: WHERE offer_adjustment_id = cp_offerAdjustmentId;
1900: l_adjDetails c_adjDetails%ROWTYPE;
1901: BEGIN
1902: x_return_status := FND_API.G_RET_STS_SUCCESS;
1903: OPEN c_adjDetails(cp_offerAdjustmentId => p_offerAdjustmentId);
1904: FETCH c_adjDetails INTO l_adjDetails;
1905: CLOSE c_adjDetails;
1906: IF nvl(px_modifier_line_tbl.count,0) > 0 THEN
1964: -- query new products entered using adjustments.
1965: -- for each new product id get the offer_discount_line_id
1966: -- create the whole discount structure for the product
1967: -- map the new ozf_qp lines and products
1968: x_return_status := FND_API.G_RET_STS_SUCCESS;
1969: i := 1;
1970: l_modifier_line_tbl.delete;
1971: l_pricing_attr_tbl.delete;
1972: FOR l_products IN c_products(cp_offerAdjustmentId => p_offerAdjustmentId) LOOP
1980: x_pricing_attr_rec => l_pricing_attr_rec
1981: , p_offDiscountProductId => l_products.off_discount_product_id
1982: -- , p_index IN NUMBER
1983: );
1984: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1985: RAISE FND_API.G_EXC_ERROR;
1986: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1988: END IF;
1981: , p_offDiscountProductId => l_products.off_discount_product_id
1982: -- , p_index IN NUMBER
1983: );
1984: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1985: RAISE FND_API.G_EXC_ERROR;
1986: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1988: END IF;
1989: populate_discounts
1982: -- , p_index IN NUMBER
1983: );
1984: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1985: RAISE FND_API.G_EXC_ERROR;
1986: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1988: END IF;
1989: populate_discounts
1990: (
1983: );
1984: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1985: RAISE FND_API.G_EXC_ERROR;
1986: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1988: END IF;
1989: populate_discounts
1990: (
1991: x_return_status => x_return_status
1996: , x_modifier_line_tbl => l_modifier_line_tbl
1997: , x_pricing_attr_tbl => l_pricing_attr_tbl
1998: , p_pricing_attr_rec => l_pricing_attr_rec
1999: );
2000: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2001: RAISE FND_API.G_EXC_ERROR;
2002: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2003: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2004: END IF;
1997: , x_pricing_attr_tbl => l_pricing_attr_tbl
1998: , p_pricing_attr_rec => l_pricing_attr_rec
1999: );
2000: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2001: RAISE FND_API.G_EXC_ERROR;
2002: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2003: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2004: END IF;
2005: process_modifiers_for_adj
1998: , p_pricing_attr_rec => l_pricing_attr_rec
1999: );
2000: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2001: RAISE FND_API.G_EXC_ERROR;
2002: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2003: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2004: END IF;
2005: process_modifiers_for_adj
2006: (
1999: );
2000: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2001: RAISE FND_API.G_EXC_ERROR;
2002: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2003: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2004: END IF;
2005: process_modifiers_for_adj
2006: (
2007: x_return_status => x_return_status
2009: , x_msg_data => x_msg_data
2010: , px_modifier_line_tbl => l_modifier_line_tbl
2011: , p_offerAdjustmentId => p_offerAdjustmentId
2012: );
2013: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2014: RAISE FND_API.G_EXC_ERROR;
2015: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2017: END IF;
2010: , px_modifier_line_tbl => l_modifier_line_tbl
2011: , p_offerAdjustmentId => p_offerAdjustmentId
2012: );
2013: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2014: RAISE FND_API.G_EXC_ERROR;
2015: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2017: END IF;
2018: QP_Modifiers_PUB.process_modifiers(
2011: , p_offerAdjustmentId => p_offerAdjustmentId
2012: );
2013: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2014: RAISE FND_API.G_EXC_ERROR;
2015: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2017: END IF;
2018: QP_Modifiers_PUB.process_modifiers(
2019: p_api_version_number => 1.0,
2012: );
2013: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2014: RAISE FND_API.G_EXC_ERROR;
2015: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2017: END IF;
2018: QP_Modifiers_PUB.process_modifiers(
2019: p_api_version_number => 1.0,
2020: p_init_msg_list => FND_API.G_TRUE,
2016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2017: END IF;
2018: QP_Modifiers_PUB.process_modifiers(
2019: p_api_version_number => 1.0,
2020: p_init_msg_list => FND_API.G_TRUE,
2021: p_return_values => FND_API.G_TRUE,
2022: x_return_status => x_return_status,
2023: x_msg_count => x_msg_count,
2024: x_msg_data => x_msg_data,
2017: END IF;
2018: QP_Modifiers_PUB.process_modifiers(
2019: p_api_version_number => 1.0,
2020: p_init_msg_list => FND_API.G_TRUE,
2021: p_return_values => FND_API.G_TRUE,
2022: x_return_status => x_return_status,
2023: x_msg_count => x_msg_count,
2024: x_msg_data => x_msg_data,
2025: p_modifiers_tbl => l_modifier_line_tbl,
2032: x_qualifiers_val_tbl => v_qualifiers_val_tbl,
2033: x_pricing_attr_tbl => v_pricing_attr_tbl,
2034: x_pricing_attr_val_tbl => v_pricing_attr_val_tbl
2035: );
2036: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2037: RAISE FND_API.G_EXC_ERROR;
2038: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2039: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2040: END IF;
2033: x_pricing_attr_tbl => v_pricing_attr_tbl,
2034: x_pricing_attr_val_tbl => v_pricing_attr_val_tbl
2035: );
2036: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2037: RAISE FND_API.G_EXC_ERROR;
2038: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2039: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2040: END IF;
2041: --dbms_output.put_line('After Create QP Data');
2034: x_pricing_attr_val_tbl => v_pricing_attr_val_tbl
2035: );
2036: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2037: RAISE FND_API.G_EXC_ERROR;
2038: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2039: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2040: END IF;
2041: --dbms_output.put_line('After Create QP Data');
2042:
2035: );
2036: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2037: RAISE FND_API.G_EXC_ERROR;
2038: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2039: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2040: END IF;
2041: --dbms_output.put_line('After Create QP Data');
2042:
2043: map_ozf_qp_data
2059: , x_return_status => x_return_status
2060: , x_msg_count => x_msg_count
2061: , x_msg_data => x_msg_data
2062: );
2063: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2064: RAISE FND_API.G_EXC_ERROR;
2065: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2066: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2067: END IF;
2060: , x_msg_count => x_msg_count
2061: , x_msg_data => x_msg_data
2062: );
2063: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2064: RAISE FND_API.G_EXC_ERROR;
2065: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2066: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2067: END IF;
2068: END LOOP;
2061: , x_msg_data => x_msg_data
2062: );
2063: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2064: RAISE FND_API.G_EXC_ERROR;
2065: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2066: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2067: END IF;
2068: END LOOP;
2069: --dbms_output.put_line('End Create new qp products');
2062: );
2063: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2064: RAISE FND_API.G_EXC_ERROR;
2065: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2066: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2067: END IF;
2068: END LOOP;
2069: --dbms_output.put_line('End Create new qp products');
2070:
2083: IS
2084: l_modifier_line_tbl QP_MODIFIERS_PUB.Modifiers_Tbl_Type;
2085: l_pricing_attr_tbl QP_MODIFIERS_PUB.Pricing_Attr_Tbl_Type;
2086: BEGIN
2087: x_return_status := FND_API.G_RET_STS_SUCCESS;
2088: /*
2089: New Products are added to Particular discount tables, so discount table id is stored .
2090: Create new Product in OZF Tables
2091: Get the Discount table id for the new product and create QP list lines using the Discount table.(1)[1]
2097: ,x_msg_count => x_msg_count
2098: ,x_msg_data => x_msg_data
2099: ,p_offerAdjustmentId => p_offerAdjustmentId
2100: );
2101: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2102: RAISE FND_API.G_EXC_ERROR;
2103: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2104: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2105: END IF;
2098: ,x_msg_data => x_msg_data
2099: ,p_offerAdjustmentId => p_offerAdjustmentId
2100: );
2101: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2102: RAISE FND_API.G_EXC_ERROR;
2103: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2104: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2105: END IF;
2106: create_new_qp_products
2099: ,p_offerAdjustmentId => p_offerAdjustmentId
2100: );
2101: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2102: RAISE FND_API.G_EXC_ERROR;
2103: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2104: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2105: END IF;
2106: create_new_qp_products
2107: (
2100: );
2101: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2102: RAISE FND_API.G_EXC_ERROR;
2103: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2104: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2105: END IF;
2106: create_new_qp_products
2107: (
2108: x_return_status => x_return_status
2111: ,p_offerAdjustmentId => p_offerAdjustmentId
2112: , x_modifier_line_tbl => l_modifier_line_tbl
2113: , x_pricing_attr_tbl => l_pricing_attr_tbl
2114: );
2115: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2116: RAISE FND_API.G_EXC_ERROR;
2117: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2118: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2119: END IF;
2112: , x_modifier_line_tbl => l_modifier_line_tbl
2113: , x_pricing_attr_tbl => l_pricing_attr_tbl
2114: );
2115: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2116: RAISE FND_API.G_EXC_ERROR;
2117: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2118: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2119: END IF;
2120: EXCEPTION
2113: , x_pricing_attr_tbl => l_pricing_attr_tbl
2114: );
2115: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2116: RAISE FND_API.G_EXC_ERROR;
2117: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2118: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2119: END IF;
2120: EXCEPTION
2121: WHEN FND_API.G_EXC_ERROR THEN
2114: );
2115: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2116: RAISE FND_API.G_EXC_ERROR;
2117: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2118: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2119: END IF;
2120: EXCEPTION
2121: WHEN FND_API.G_EXC_ERROR THEN
2122: x_return_status := FND_API.G_RET_STS_ERROR;
2117: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2118: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2119: END IF;
2120: EXCEPTION
2121: WHEN FND_API.G_EXC_ERROR THEN
2122: x_return_status := FND_API.G_RET_STS_ERROR;
2123: -- Standard call to get message count and if count=1, get the message
2124: FND_MSG_PUB.Count_And_Get (
2125: p_encoded => FND_API.G_FALSE,
2118: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2119: END IF;
2120: EXCEPTION
2121: WHEN FND_API.G_EXC_ERROR THEN
2122: x_return_status := FND_API.G_RET_STS_ERROR;
2123: -- Standard call to get message count and if count=1, get the message
2124: FND_MSG_PUB.Count_And_Get (
2125: p_encoded => FND_API.G_FALSE,
2126: p_count => x_msg_count,
2121: WHEN FND_API.G_EXC_ERROR THEN
2122: x_return_status := FND_API.G_RET_STS_ERROR;
2123: -- Standard call to get message count and if count=1, get the message
2124: FND_MSG_PUB.Count_And_Get (
2125: p_encoded => FND_API.G_FALSE,
2126: p_count => x_msg_count,
2127: p_data => x_msg_data
2128: );
2129:
2126: p_count => x_msg_count,
2127: p_data => x_msg_data
2128: );
2129:
2130: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2131: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2132: -- Standard call to get message count and if count=1, get the message
2133: FND_MSG_PUB.Count_And_Get (
2134: p_encoded => FND_API.G_FALSE,
2127: p_data => x_msg_data
2128: );
2129:
2130: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2131: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2132: -- Standard call to get message count and if count=1, get the message
2133: FND_MSG_PUB.Count_And_Get (
2134: p_encoded => FND_API.G_FALSE,
2135: p_count => x_msg_count,
2130: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2131: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2132: -- Standard call to get message count and if count=1, get the message
2133: FND_MSG_PUB.Count_And_Get (
2134: p_encoded => FND_API.G_FALSE,
2135: p_count => x_msg_count,
2136: p_data => x_msg_data
2137: );
2138:
2136: p_data => x_msg_data
2137: );
2138:
2139: WHEN OTHERS THEN
2140: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2141: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2142: THEN
2143: FND_MSG_PUB.Add_Exc_Msg( 'VOLUME_OFFER_ADJ','adjust_new_products');
2144: END IF;
2143: FND_MSG_PUB.Add_Exc_Msg( 'VOLUME_OFFER_ADJ','adjust_new_products');
2144: END IF;
2145: -- Standard call to get message count and if count=1, get the message
2146: FND_MSG_PUB.Count_And_Get (
2147: p_encoded => FND_API.G_FALSE,
2148: p_count => x_msg_count,
2149: p_data => x_msg_data
2150: );
2151: END adjust_new_products;
2157: Then it processes the new products added thru. the adjustment.
2158: */
2159: PROCEDURE process_vo_adjustments
2160: (
2161: p_init_msg_list IN VARCHAR2 := FND_API.g_false
2162: ,p_api_version IN NUMBER
2163: ,p_commit IN VARCHAR2 := FND_API.g_false
2164: ,x_return_status OUT NOCOPY VARCHAR2
2165: ,x_msg_count OUT NOCOPY NUMBER
2159: PROCEDURE process_vo_adjustments
2160: (
2161: p_init_msg_list IN VARCHAR2 := FND_API.g_false
2162: ,p_api_version IN NUMBER
2163: ,p_commit IN VARCHAR2 := FND_API.g_false
2164: ,x_return_status OUT NOCOPY VARCHAR2
2165: ,x_msg_count OUT NOCOPY NUMBER
2166: ,x_msg_data OUT NOCOPY VARCHAR2
2167: ,p_offerAdjustmentId IN NUMBER
2170: BEGIN
2171: -- initialize
2172: -- process discount changes
2173: -- process product additions.
2174: x_return_status := FND_API.G_RET_STS_SUCCESS;
2175:
2176: adjust_old_discounts
2177: (
2178: x_return_status => x_return_status
2179: ,x_msg_count => x_msg_count
2180: ,x_msg_data => x_msg_data
2181: ,p_offerAdjustmentId => p_offerAdjustmentId
2182: );
2183: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2184: RAISE FND_API.G_EXC_ERROR;
2185: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2186: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2187: END IF;
2180: ,x_msg_data => x_msg_data
2181: ,p_offerAdjustmentId => p_offerAdjustmentId
2182: );
2183: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2184: RAISE FND_API.G_EXC_ERROR;
2185: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2186: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2187: END IF;
2188: adjust_new_products
2181: ,p_offerAdjustmentId => p_offerAdjustmentId
2182: );
2183: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2184: RAISE FND_API.G_EXC_ERROR;
2185: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2186: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2187: END IF;
2188: adjust_new_products
2189: (
2182: );
2183: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2184: RAISE FND_API.G_EXC_ERROR;
2185: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2186: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2187: END IF;
2188: adjust_new_products
2189: (
2190: x_return_status => x_return_status
2191: ,x_msg_count => x_msg_count
2192: ,x_msg_data => x_msg_data
2193: ,p_offerAdjustmentId => p_offerAdjustmentId
2194: );
2195: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2196: RAISE FND_API.G_EXC_ERROR;
2197: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2198: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2199: END IF;
2192: ,x_msg_data => x_msg_data
2193: ,p_offerAdjustmentId => p_offerAdjustmentId
2194: );
2195: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2196: RAISE FND_API.G_EXC_ERROR;
2197: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2198: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2199: END IF;
2200: END process_vo_adjustments;
2193: ,p_offerAdjustmentId => p_offerAdjustmentId
2194: );
2195: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2196: RAISE FND_API.G_EXC_ERROR;
2197: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2198: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2199: END IF;
2200: END process_vo_adjustments;
2201: END OZF_VOLUME_OFFER_ADJ;
2194: );
2195: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2196: RAISE FND_API.G_EXC_ERROR;
2197: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2198: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2199: END IF;
2200: END process_vo_adjustments;
2201: END OZF_VOLUME_OFFER_ADJ;