171: -- for customers, truncated start and end dates for products
172: -- Wed Feb 13 2008: nirprasa fixed bug 6813556
173: -- Tue Fev 19 2008: nirprasa Added SDR validations: do not create offer header if there are no vendor approved lines.
174: -- Do not create offer if OZF_SD_DEFAULT_BUDGET profile is not set.
175: -- Tue Apr 01 2008: nirprasa Added amount null check before calling qp_limits_pub.process_limits
176: -- Tue Apr 15 2008: nirprasa fixed bug 6968932
177: -- Wed Apr 16 2008: nirprasa fixed bug 6974091
178: -- Wed Apr 30 2008: nirprasa fixed bug 7004273
179: -- Tue Aug 12 2008: nirprasa fixed bug 7321745
2511:
2512: --nirprasa
2513: PROCEDURE populate_limits_rec(
2514: p_limit_type IN VARCHAR2,
2515: x_limits_rec OUT NOCOPY QP_Limits_PUB.Limits_Rec_Type,
2516: p_limit_exceed_action_code IN VARCHAR2 DEFAULT NULL) IS
2517: BEGIN
2518:
2519: IF p_limit_exceed_action_code IS NOT NULL AND p_limit_exceed_action_code <> FND_API.G_MISS_CHAR THEN
2585:
2586: l_limit_exists NUMBER;
2587: l_limit_number NUMBER;
2588:
2589: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2590: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2591: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
2592: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
2593: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
2586: l_limit_exists NUMBER;
2587: l_limit_number NUMBER;
2588:
2589: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2590: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2591: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
2592: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
2593: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
2594: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
2587: l_limit_number NUMBER;
2588:
2589: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2590: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2591: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
2592: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
2593: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
2594: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
2595: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
2588:
2589: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2590: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2591: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
2592: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
2593: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
2594: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
2595: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
2596:
2589: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2590: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2591: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
2592: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
2593: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
2594: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
2595: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
2596:
2597: BEGIN
2590: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
2591: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
2592: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
2593: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
2594: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
2595: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
2596:
2597: BEGIN
2598: x_return_status := fnd_api.g_ret_sts_success;
2591: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
2592: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
2593: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
2594: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
2595: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
2596:
2597: BEGIN
2598: x_return_status := fnd_api.g_ret_sts_success;
2599:
2645:
2646: IF l_limits_rec.amount IS NOT NULL AND
2647: l_limits_rec.amount <> FND_API.G_MISS_NUM THEN
2648:
2649: QP_Limits_PUB.Process_Limits
2650: ( p_init_msg_list => FND_API.g_true,
2651: p_api_version_number => 1.0,
2652: p_commit => FND_API.g_false,
2653: x_return_status => x_return_status,
4235: v_qualifiers_val_tbl qp_qualifier_rules_pub.qualifiers_val_tbl_type;
4236: v_pricing_attr_tbl qp_modifiers_pub.pricing_attr_tbl_type;
4237: v_pricing_attr_val_tbl qp_modifiers_pub.pricing_attr_val_tbl_type;
4238:
4239: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4240: temp_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4241: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4242: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
4243: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
4236: v_pricing_attr_tbl qp_modifiers_pub.pricing_attr_tbl_type;
4237: v_pricing_attr_val_tbl qp_modifiers_pub.pricing_attr_val_tbl_type;
4238:
4239: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4240: temp_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4241: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4242: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
4243: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
4244: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
4237: v_pricing_attr_val_tbl qp_modifiers_pub.pricing_attr_val_tbl_type;
4238:
4239: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4240: temp_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4241: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4242: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
4243: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
4244: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
4245: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
4238:
4239: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4240: temp_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4241: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4242: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
4243: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
4244: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
4245: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
4246: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
4239: l_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4240: temp_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4241: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4242: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
4243: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
4244: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
4245: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
4246: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
4247:
4240: temp_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4241: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4242: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
4243: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
4244: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
4245: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
4246: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
4247:
4248: l_uk_flag VARCHAR2(1);
4241: v_limits_rec QP_Limits_PUB.Limits_Rec_Type;
4242: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
4243: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
4244: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
4245: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
4246: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
4247:
4248: l_uk_flag VARCHAR2(1);
4249:
4242: v_limits_val_rec QP_Limits_PUB.Limits_Val_Rec_Type;
4243: v_limit_attrs_tbl QP_Limits_PUB.Limit_Attrs_Tbl_Type;
4244: v_limit_attrs_val_tbl QP_Limits_PUB.Limit_Attrs_Val_Tbl_Type;
4245: v_limit_balances_tbl QP_Limits_PUB.Limit_Balances_Tbl_Type;
4246: v_limit_balances_val_tbl QP_Limits_PUB.Limit_Balances_Val_Tbl_Type;
4247:
4248: l_uk_flag VARCHAR2(1);
4249:
4250:
4469: END IF;
4470: END IF;
4471:
4472:
4473: QP_Limits_PUB.Process_Limits
4474: ( p_init_msg_list => FND_API.g_true,
4475: p_api_version_number => 1.0,
4476: p_commit => FND_API.g_false,
4477: x_return_status => x_return_status,
4542: l_limits_rec.amount := p_modifier_list_rec.max_no_of_uses;
4543: END IF;
4544: END IF;
4545:
4546: QP_Limits_PUB.Process_Limits
4547: ( p_init_msg_list => FND_API.g_true,
4548: p_api_version_number => 1.0,
4549: p_commit => FND_API.g_false,
4550: x_return_status => x_return_status,