1: PACKAGE BODY OZF_QP_PRODUCTS_PVT AS
2: /* $Header: ozfvoqppb.pls 120.3 2005/08/25 04:19:26 rssharma noship $ */
3: -- ===============================================================
4: -- Start of Comments
5: -- Package name
10: -- Thu Jul 07 2005:7/12 PM RSSHARMA Created
11: -- NOTE
12: -- End of Comments
13: -- ===============================================================
14: G_PKG_NAME CONSTANT VARCHAR2(30):= 'OZF_QP_PRODUCTS_PVT';
15: G_FILE_NAME CONSTANT VARCHAR2(15) := 'ozfvoqppb.pls';
16:
17:
18:
69: BEGIN
70: x_return_status := FND_API.G_RET_STS_SUCCESS;
71: IF p_validation_mode = JTF_PLSQL_API.G_CREATE THEN
72: IF p_qp_product_rec.qp_product_id IS NOT NULL AND p_qp_product_rec.qp_product_id <> FND_API.G_MISS_NUM THEN
73: IF OZF_Utility_PVT.check_uniqueness('ozf_qp_products','qp_product_id = ''' || p_qp_product_rec.qp_product_id ||'''') = FND_API.g_false THEN
74: OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_QP_PROD_ID_DUP');
75: x_return_status := FND_API.g_ret_sts_error;
76: return;
77: END IF;
85: (
86: p_qp_product_rec.pricing_attribute_id IS NOT NULL AND p_qp_product_rec.pricing_attribute_id <> FND_API.G_MISS_NUM
87: )
88: THEN
89: IF OZF_Utility_PVT.check_uniqueness('ozf_qp_products','off_discount_product_id = ' || p_qp_product_rec.off_discount_product_id || ' AND pricing_attribute_id = ' ||p_qp_product_rec.pricing_attribute_id) = FND_API.g_false THEN
90: OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_QP_PROD_DUP');
91: x_return_status := FND_API.g_ret_sts_error;
92: return;
93: END IF;
211: */
212: END check_ozf_qp_prod_items;
213:
214:
215: PROCEDURE Validate_ozf_qp_products
216: (
217: p_api_version_number IN NUMBER,
218: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
219: p_commit IN VARCHAR2 := FND_API.G_FALSE,
226:
227: p_qp_product_rec IN qp_product_rec_type
228: )
229: IS
230: l_api_name CONSTANT VARCHAR2(30) := 'Validate_ozf_qp_products';
231: l_api_version_number CONSTANT NUMBER := 1.0;
232: l_object_version_number NUMBER;
233: l_qp_product_rec qp_product_rec_type;
234:
305: p_count => x_msg_count,
306: p_data => x_msg_data
307: );
308:
309: END Validate_ozf_qp_products;
310:
311: -- ==============================================================================
312: -- Start of Comments
313: -- ==============================================================================
360: l_object_version_number NUMBER;
361:
362: CURSOR c_id
363: IS
364: SELECT ozf_qp_products_s.nextval FROM dual;
365: CURSOR c_id_exists (p_id IN NUMBER) IS
366: SELECT 1
367: FROM ozf_qp_products
368: WHERE qp_product_id = p_id;
363: IS
364: SELECT ozf_qp_products_s.nextval FROM dual;
365: CURSOR c_id_exists (p_id IN NUMBER) IS
366: SELECT 1
367: FROM ozf_qp_products
368: WHERE qp_product_id = p_id;
369:
370: BEGIN
371: --INITIALIZE
411: l_qp_product_id := p_qp_product_rec.qp_product_id;
412: END IF;
413:
414: -- validate
415: validate_ozf_qp_products
416: (
417: p_api_version_number => p_api_version_number
418: , p_init_msg_list => p_init_msg_list
419: , p_validation_level => p_validation_level
426: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
427: RAISE FND_API.G_EXC_ERROR;
428: END IF;
429: -- insert
430: OZF_QP_PRODUCTS_PKG.Insert_row
431: (
432: px_qp_product_id => l_qp_product_id
433: , p_off_discount_product_id => l_qp_product_rec.off_discount_product_id
434: , p_pricing_attribute_id => l_qp_product_rec.pricing_attribute_id
470: , p_data => x_msg_data
471: );
472:
473: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
474: ROLLBACK TO create_ozf_qp_products_pvt;
475: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
476: FND_MSG_PUB.COUNT_AND_GET
477: (
478: p_encoded => FND_API.G_FALSE
480: , p_data => x_msg_data
481: );
482:
483: WHEN OTHERS THEN
484: ROLLBACK TO create_ozf_qp_products_pvt;
485: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
486: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
487: THEN
488: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
545:
546:
547: CURSOR c_get_qp_prod(p_qp_product_id NUMBER, p_object_version_number NUMBER) IS
548: SELECT *
549: FROM ozf_qp_products
550: WHERE qp_product_id = p_qp_product_id
551: AND object_version_number = p_object_version_number;
552: -- Hint: Developer need to provide Where clause
553:
603: , p_token_value => 'Ozf_Market_Options') ;
604: RAISE FND_API.G_EXC_ERROR;
605: End if;
606: -- validate
607: validate_ozf_qp_products
608: (
609: p_api_version_number => p_api_version_number
610: , p_init_msg_list => p_init_msg_list
611: , p_validation_level => p_validation_level
619: RAISE FND_API.G_EXC_ERROR;
620: END IF;
621:
622: -- update
623: OZF_QP_PRODUCTS_PKG.Update_Row(
624: p_qp_product_id => l_tar_qp_prod_rec.qp_product_id
625: , p_off_discount_product_id => l_tar_qp_prod_rec.off_discount_product_id
626: , p_pricing_attribute_id => l_tar_qp_prod_rec.pricing_attribute_id
627: , p_object_version_number => l_tar_qp_prod_rec.object_version_number
744: FND_MSG_PUB.initialize;
745: END IF;
746: x_return_status := FND_API.G_RET_STS_SUCCESS;
747: -- delete
748: OZF_QP_PRODUCTS_PKG.Delete_Row(
749: p_qp_product_id => p_qp_product_id
750: , p_object_version_number => p_object_version_number
751: );
752:
796:
797: END Delete_ozf_qp_product;
798:
799:
800: END OZF_QP_PRODUCTS_PVT;
801: