1: PACKAGE BODY PO_VAL_PRICE_DIFFS2 AS
2: -- $Header: PO_VAL_PRICE_DIFFS2.plb 120.8 2006/08/02 23:14:51 jinwang noship $
3: c_entity_type_price_diff CONSTANT VARCHAR2(30) := PO_VALIDATIONS.c_entity_type_PRICE_DIFF;
4: -- The module base for this package.
5: d_package_base CONSTANT VARCHAR2(50) := po_log.get_package_base('PO_VAL_PRICE_DIFFS2');
6:
7: -- The module base for the subprogram.
8: d_price_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'PRICE_TYPE');
9: d_multiple_price_diff CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLE_PRICE_DIFF');
4: -- The module base for this package.
5: d_package_base CONSTANT VARCHAR2(50) := po_log.get_package_base('PO_VAL_PRICE_DIFFS2');
6:
7: -- The module base for the subprogram.
8: d_price_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'PRICE_TYPE');
9: d_multiple_price_diff CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLE_PRICE_DIFF');
10: d_entity_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'ENTITY_TYPE');
11: d_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLIER');
12: d_min_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MIN_MULTIPLIER');
5: d_package_base CONSTANT VARCHAR2(50) := po_log.get_package_base('PO_VAL_PRICE_DIFFS2');
6:
7: -- The module base for the subprogram.
8: d_price_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'PRICE_TYPE');
9: d_multiple_price_diff CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLE_PRICE_DIFF');
10: d_entity_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'ENTITY_TYPE');
11: d_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLIER');
12: d_min_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MIN_MULTIPLIER');
13: d_max_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MAX_MULTIPLIER');
6:
7: -- The module base for the subprogram.
8: d_price_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'PRICE_TYPE');
9: d_multiple_price_diff CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLE_PRICE_DIFF');
10: d_entity_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'ENTITY_TYPE');
11: d_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLIER');
12: d_min_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MIN_MULTIPLIER');
13: d_max_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MAX_MULTIPLIER');
14: d_style_related_info CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'STYLE_RELATED_INFO');
7: -- The module base for the subprogram.
8: d_price_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'PRICE_TYPE');
9: d_multiple_price_diff CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLE_PRICE_DIFF');
10: d_entity_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'ENTITY_TYPE');
11: d_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLIER');
12: d_min_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MIN_MULTIPLIER');
13: d_max_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MAX_MULTIPLIER');
14: d_style_related_info CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'STYLE_RELATED_INFO');
15:
8: d_price_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'PRICE_TYPE');
9: d_multiple_price_diff CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLE_PRICE_DIFF');
10: d_entity_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'ENTITY_TYPE');
11: d_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLIER');
12: d_min_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MIN_MULTIPLIER');
13: d_max_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MAX_MULTIPLIER');
14: d_style_related_info CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'STYLE_RELATED_INFO');
15:
16: -- Indicates that the calling program is PDOI.
9: d_multiple_price_diff CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLE_PRICE_DIFF');
10: d_entity_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'ENTITY_TYPE');
11: d_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLIER');
12: d_min_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MIN_MULTIPLIER');
13: d_max_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MAX_MULTIPLIER');
14: d_style_related_info CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'STYLE_RELATED_INFO');
15:
16: -- Indicates that the calling program is PDOI.
17: c_program_pdoi CONSTANT VARCHAR2(10) := 'PDOI';
10: d_entity_type CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'ENTITY_TYPE');
11: d_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MULTIPLIER');
12: d_min_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MIN_MULTIPLIER');
13: d_max_multiplier CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'MAX_MULTIPLIER');
14: d_style_related_info CONSTANT VARCHAR2(100) := po_log.get_subprogram_base(d_package_base, 'STYLE_RELATED_INFO');
15:
16: -- Indicates that the calling program is PDOI.
17: c_program_pdoi CONSTANT VARCHAR2(10) := 'PDOI';
18: -- The application name of PO.
34: END IF;
35:
36: x_result_type := po_validations.c_result_type_success;
37:
38: IF po_log.d_proc THEN
39: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
40: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
41: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
42: END IF;
35:
36: x_result_type := po_validations.c_result_type_success;
37:
38: IF po_log.d_proc THEN
39: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
40: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
41: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
42: END IF;
43:
36: x_result_type := po_validations.c_result_type_success;
37:
38: IF po_log.d_proc THEN
39: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
40: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
41: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
42: END IF;
43:
44: -- Price type cannot be Null and must be valid in PO_PRICE_DIFF_LOOKUPS_V
37:
38: IF po_log.d_proc THEN
39: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
40: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
41: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
42: END IF;
43:
44: -- Price type cannot be Null and must be valid in PO_PRICE_DIFF_LOOKUPS_V
45: FORALL i IN 1 .. p_id_tbl.COUNT
75: IF (SQL%ROWCOUNT > 0) THEN
76: x_result_type := po_validations.c_result_type_failure;
77: END IF;
78:
79: IF po_log.d_proc THEN
80: po_validations.log_validation_results_gt(d_mod, 9, x_result_set_id);
81: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
82: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
83: END IF;
77: END IF;
78:
79: IF po_log.d_proc THEN
80: po_validations.log_validation_results_gt(d_mod, 9, x_result_set_id);
81: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
82: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
83: END IF;
84: EXCEPTION
85: WHEN OTHERS THEN
78:
79: IF po_log.d_proc THEN
80: po_validations.log_validation_results_gt(d_mod, 9, x_result_set_id);
81: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
82: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
83: END IF;
84: EXCEPTION
85: WHEN OTHERS THEN
86: IF po_log.d_exc THEN
82: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
83: END IF;
84: EXCEPTION
85: WHEN OTHERS THEN
86: IF po_log.d_exc THEN
87: po_log.exc(d_mod, 0, NULL);
88: END IF;
89:
90: RAISE;
83: END IF;
84: EXCEPTION
85: WHEN OTHERS THEN
86: IF po_log.d_exc THEN
87: po_log.exc(d_mod, 0, NULL);
88: END IF;
89:
90: RAISE;
91: END price_type;
109: END IF;
110:
111: x_result_type := po_validations.c_result_type_success;
112:
113: IF po_log.d_proc THEN
114: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
115: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
116: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
117: po_log.proc_begin(d_mod, 'p_entity_id_tbl', p_entity_id_tbl);
110:
111: x_result_type := po_validations.c_result_type_success;
112:
113: IF po_log.d_proc THEN
114: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
115: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
116: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
117: po_log.proc_begin(d_mod, 'p_entity_id_tbl', p_entity_id_tbl);
118: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
111: x_result_type := po_validations.c_result_type_success;
112:
113: IF po_log.d_proc THEN
114: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
115: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
116: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
117: po_log.proc_begin(d_mod, 'p_entity_id_tbl', p_entity_id_tbl);
118: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
119: END IF;
112:
113: IF po_log.d_proc THEN
114: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
115: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
116: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
117: po_log.proc_begin(d_mod, 'p_entity_id_tbl', p_entity_id_tbl);
118: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
119: END IF;
120:
113: IF po_log.d_proc THEN
114: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
115: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
116: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
117: po_log.proc_begin(d_mod, 'p_entity_id_tbl', p_entity_id_tbl);
118: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
119: END IF;
120:
121: l_gt_key := PO_CORE_S.get_session_gt_nextval();
114: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
115: po_log.proc_begin(d_mod, 'p_price_type_tbl', p_price_type_tbl);
116: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
117: po_log.proc_begin(d_mod, 'p_entity_id_tbl', p_entity_id_tbl);
118: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
119: END IF;
120:
121: l_gt_key := PO_CORE_S.get_session_gt_nextval();
122: -- insert the data in current group into temp table for comparason
190: IF (SQL%ROWCOUNT > 0) THEN
191: x_result_type := po_validations.c_result_type_failure;
192: END IF;
193:
194: IF po_log.d_proc THEN
195: po_validations.log_validation_results_gt(d_mod, 9, x_result_set_id);
196: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
197: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
198: END IF;
192: END IF;
193:
194: IF po_log.d_proc THEN
195: po_validations.log_validation_results_gt(d_mod, 9, x_result_set_id);
196: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
197: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
198: END IF;
199: EXCEPTION
200: WHEN OTHERS THEN
193:
194: IF po_log.d_proc THEN
195: po_validations.log_validation_results_gt(d_mod, 9, x_result_set_id);
196: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
197: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
198: END IF;
199: EXCEPTION
200: WHEN OTHERS THEN
201: IF po_log.d_exc THEN
197: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
198: END IF;
199: EXCEPTION
200: WHEN OTHERS THEN
201: IF po_log.d_exc THEN
202: po_log.exc(d_mod, 0, NULL);
203: END IF;
204:
205: RAISE;
198: END IF;
199: EXCEPTION
200: WHEN OTHERS THEN
201: IF po_log.d_exc THEN
202: po_log.exc(d_mod, 0, NULL);
203: END IF;
204:
205: RAISE;
206:
224: END IF;
225:
226: x_result_type := po_validations.c_result_type_success;
227:
228: IF po_log.d_proc THEN
229: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
230: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
231: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
232: END IF;
225:
226: x_result_type := po_validations.c_result_type_success;
227:
228: IF po_log.d_proc THEN
229: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
230: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
231: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
232: END IF;
233:
226: x_result_type := po_validations.c_result_type_success;
227:
228: IF po_log.d_proc THEN
229: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
230: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
231: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
232: END IF;
233:
234: -- bug 4700377
227:
228: IF po_log.d_proc THEN
229: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
230: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
231: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
232: END IF;
233:
234: -- bug 4700377
235: -- validate entity_type value based on document types
246: x_result_type := po_validations.c_result_type_failure;
247: END IF;
248: END LOOP;
249:
250: IF po_log.d_proc THEN
251: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
252: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
253: END IF;
254: EXCEPTION
247: END IF;
248: END LOOP;
249:
250: IF po_log.d_proc THEN
251: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
252: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
253: END IF;
254: EXCEPTION
255: WHEN OTHERS THEN
248: END LOOP;
249:
250: IF po_log.d_proc THEN
251: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
252: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
253: END IF;
254: EXCEPTION
255: WHEN OTHERS THEN
256: IF po_log.d_exc THEN
252: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
253: END IF;
254: EXCEPTION
255: WHEN OTHERS THEN
256: IF po_log.d_exc THEN
257: po_log.exc(d_mod, 0, NULL);
258: END IF;
259:
260: RAISE;
253: END IF;
254: EXCEPTION
255: WHEN OTHERS THEN
256: IF po_log.d_exc THEN
257: po_log.exc(d_mod, 0, NULL);
258: END IF;
259:
260: RAISE;
261: END entity_type;
279: END IF;
280:
281: x_result_type := po_validations.c_result_type_success;
282:
283: IF po_log.d_proc THEN
284: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
285: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
286: po_log.proc_begin(d_mod, 'p_multiplier_tbl', p_multiplier_tbl);
287: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
280:
281: x_result_type := po_validations.c_result_type_success;
282:
283: IF po_log.d_proc THEN
284: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
285: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
286: po_log.proc_begin(d_mod, 'p_multiplier_tbl', p_multiplier_tbl);
287: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
288: END IF;
281: x_result_type := po_validations.c_result_type_success;
282:
283: IF po_log.d_proc THEN
284: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
285: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
286: po_log.proc_begin(d_mod, 'p_multiplier_tbl', p_multiplier_tbl);
287: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
288: END IF;
289:
282:
283: IF po_log.d_proc THEN
284: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
285: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
286: po_log.proc_begin(d_mod, 'p_multiplier_tbl', p_multiplier_tbl);
287: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
288: END IF;
289:
290: FOR i IN 1 .. p_id_tbl.COUNT LOOP
283: IF po_log.d_proc THEN
284: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
285: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
286: po_log.proc_begin(d_mod, 'p_multiplier_tbl', p_multiplier_tbl);
287: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
288: END IF;
289:
290: FOR i IN 1 .. p_id_tbl.COUNT LOOP
291: IF p_entity_type_tbl(i) = 'PO LINE' AND p_multiplier_tbl(i) IS NULL THEN
306: x_result_type := po_validations.c_result_type_failure;
307: END IF;
308: END LOOP;
309:
310: IF po_log.d_proc THEN
311: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
312: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
313: END IF;
314: EXCEPTION
307: END IF;
308: END LOOP;
309:
310: IF po_log.d_proc THEN
311: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
312: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
313: END IF;
314: EXCEPTION
315: WHEN OTHERS THEN
308: END LOOP;
309:
310: IF po_log.d_proc THEN
311: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
312: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
313: END IF;
314: EXCEPTION
315: WHEN OTHERS THEN
316: IF po_log.d_exc THEN
312: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
313: END IF;
314: EXCEPTION
315: WHEN OTHERS THEN
316: IF po_log.d_exc THEN
317: po_log.exc(d_mod, 0, NULL);
318: END IF;
319:
320: RAISE;
313: END IF;
314: EXCEPTION
315: WHEN OTHERS THEN
316: IF po_log.d_exc THEN
317: po_log.exc(d_mod, 0, NULL);
318: END IF;
319:
320: RAISE;
321: END multiplier;
339: END IF;
340:
341: x_result_type := po_validations.c_result_type_success;
342:
343: IF po_log.d_proc THEN
344: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
345: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
346: po_log.proc_begin(d_mod, 'p_min_multiplier_tbl', p_min_multiplier_tbl);
347: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
340:
341: x_result_type := po_validations.c_result_type_success;
342:
343: IF po_log.d_proc THEN
344: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
345: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
346: po_log.proc_begin(d_mod, 'p_min_multiplier_tbl', p_min_multiplier_tbl);
347: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
348: END IF;
341: x_result_type := po_validations.c_result_type_success;
342:
343: IF po_log.d_proc THEN
344: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
345: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
346: po_log.proc_begin(d_mod, 'p_min_multiplier_tbl', p_min_multiplier_tbl);
347: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
348: END IF;
349:
342:
343: IF po_log.d_proc THEN
344: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
345: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
346: po_log.proc_begin(d_mod, 'p_min_multiplier_tbl', p_min_multiplier_tbl);
347: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
348: END IF;
349:
350: FOR i IN 1 .. p_id_tbl.COUNT LOOP
343: IF po_log.d_proc THEN
344: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
345: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
346: po_log.proc_begin(d_mod, 'p_min_multiplier_tbl', p_min_multiplier_tbl);
347: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
348: END IF;
349:
350: FOR i IN 1 .. p_id_tbl.COUNT LOOP
351: IF p_entity_type_tbl(i) = 'PO LINE' AND p_min_multiplier_tbl(i) IS NOT NULL THEN
366: x_result_type := po_validations.c_result_type_failure;
367: END IF;
368: END LOOP;
369:
370: IF po_log.d_proc THEN
371: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
372: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
373: END IF;
374: EXCEPTION
367: END IF;
368: END LOOP;
369:
370: IF po_log.d_proc THEN
371: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
372: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
373: END IF;
374: EXCEPTION
375: WHEN OTHERS THEN
368: END LOOP;
369:
370: IF po_log.d_proc THEN
371: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
372: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
373: END IF;
374: EXCEPTION
375: WHEN OTHERS THEN
376: IF po_log.d_exc THEN
372: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
373: END IF;
374: EXCEPTION
375: WHEN OTHERS THEN
376: IF po_log.d_exc THEN
377: po_log.exc(d_mod, 0, NULL);
378: END IF;
379:
380: RAISE;
373: END IF;
374: EXCEPTION
375: WHEN OTHERS THEN
376: IF po_log.d_exc THEN
377: po_log.exc(d_mod, 0, NULL);
378: END IF;
379:
380: RAISE;
381: END min_multiplier;
399: END IF;
400:
401: x_result_type := po_validations.c_result_type_success;
402:
403: IF po_log.d_proc THEN
404: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
405: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
406: po_log.proc_begin(d_mod, 'p_max_multiplier_tbl', p_max_multiplier_tbl);
407: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
400:
401: x_result_type := po_validations.c_result_type_success;
402:
403: IF po_log.d_proc THEN
404: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
405: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
406: po_log.proc_begin(d_mod, 'p_max_multiplier_tbl', p_max_multiplier_tbl);
407: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
408: END IF;
401: x_result_type := po_validations.c_result_type_success;
402:
403: IF po_log.d_proc THEN
404: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
405: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
406: po_log.proc_begin(d_mod, 'p_max_multiplier_tbl', p_max_multiplier_tbl);
407: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
408: END IF;
409:
402:
403: IF po_log.d_proc THEN
404: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
405: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
406: po_log.proc_begin(d_mod, 'p_max_multiplier_tbl', p_max_multiplier_tbl);
407: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
408: END IF;
409:
410: FOR i IN 1 .. p_id_tbl.COUNT LOOP
403: IF po_log.d_proc THEN
404: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
405: po_log.proc_begin(d_mod, 'p_entity_type_tbl', p_entity_type_tbl);
406: po_log.proc_begin(d_mod, 'p_max_multiplier_tbl', p_max_multiplier_tbl);
407: po_log.LOG(po_log.c_proc_begin, d_mod, NULL, 'x_results', x_results);
408: END IF;
409:
410: FOR i IN 1 .. p_id_tbl.COUNT LOOP
411: IF p_entity_type_tbl(i) = 'PO LINE' AND p_max_multiplier_tbl(i) IS NOT NULL THEN
418: x_result_type := po_validations.c_result_type_failure;
419: END IF;
420: END LOOP;
421:
422: IF po_log.d_proc THEN
423: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
424: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
425: END IF;
426:
419: END IF;
420: END LOOP;
421:
422: IF po_log.d_proc THEN
423: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
424: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
425: END IF;
426:
427: EXCEPTION
420: END LOOP;
421:
422: IF po_log.d_proc THEN
423: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
424: po_log.LOG(po_log.c_proc_end, d_mod, NULL, 'x_results', x_results);
425: END IF;
426:
427: EXCEPTION
428: WHEN OTHERS THEN
425: END IF;
426:
427: EXCEPTION
428: WHEN OTHERS THEN
429: IF po_log.d_exc THEN
430: po_log.exc(d_mod, 0, NULL);
431: END IF;
432:
433: RAISE;
426:
427: EXCEPTION
428: WHEN OTHERS THEN
429: IF po_log.d_exc THEN
430: po_log.exc(d_mod, 0, NULL);
431: END IF;
432:
433: RAISE;
434: END max_multiplier;
447: IF x_result_set_id IS NULL THEN
448: x_result_set_id := po_validations.next_result_set_id();
449: END IF;
450:
451: IF po_log.d_proc THEN
452: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
453: po_log.proc_begin(d_mod, 'p_style_id_tbl', p_style_id_tbl);
454: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
455: END IF;
448: x_result_set_id := po_validations.next_result_set_id();
449: END IF;
450:
451: IF po_log.d_proc THEN
452: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
453: po_log.proc_begin(d_mod, 'p_style_id_tbl', p_style_id_tbl);
454: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
455: END IF;
456:
449: END IF;
450:
451: IF po_log.d_proc THEN
452: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
453: po_log.proc_begin(d_mod, 'p_style_id_tbl', p_style_id_tbl);
454: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
455: END IF;
456:
457: x_result_type := po_validations.c_result_type_success;
450:
451: IF po_log.d_proc THEN
452: po_log.proc_begin(d_mod, 'p_id_tbl', p_id_tbl);
453: po_log.proc_begin(d_mod, 'p_style_id_tbl', p_style_id_tbl);
454: po_log.proc_begin(d_mod, 'x_result_set_id', x_result_set_id);
455: END IF;
456:
457: x_result_type := po_validations.c_result_type_success;
458:
489: IF (SQL%ROWCOUNT > 0) THEN
490: x_result_type := po_validations.c_result_type_failure;
491: END IF;
492:
493: IF po_log.d_proc THEN
494: po_validations.log_validation_results_gt(d_mod, 9, x_result_set_id);
495: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
496: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
497: END IF;
491: END IF;
492:
493: IF po_log.d_proc THEN
494: po_validations.log_validation_results_gt(d_mod, 9, x_result_set_id);
495: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
496: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
497: END IF;
498: EXCEPTION
499: WHEN OTHERS THEN
492:
493: IF po_log.d_proc THEN
494: po_validations.log_validation_results_gt(d_mod, 9, x_result_set_id);
495: po_log.proc_end(d_mod, 'x_result_type', x_result_type);
496: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
497: END IF;
498: EXCEPTION
499: WHEN OTHERS THEN
500: IF po_log.d_exc THEN
496: po_log.proc_end(d_mod, 'x_result_set_id', x_result_set_id);
497: END IF;
498: EXCEPTION
499: WHEN OTHERS THEN
500: IF po_log.d_exc THEN
501: po_log.exc(d_mod, 0, NULL);
502: END IF;
503: RAISE;
504:
497: END IF;
498: EXCEPTION
499: WHEN OTHERS THEN
500: IF po_log.d_exc THEN
501: po_log.exc(d_mod, 0, NULL);
502: END IF;
503: RAISE;
504:
505: END style_related_info;