[Home] [Help]
PACKAGE BODY: APPS.QP_DEFAULT_QUALIFIERS
Source
1 PACKAGE BODY QP_Default_Qualifiers AS
2 /* $Header: QPXDQPQB.pls 120.3 2005/08/31 17:51:43 srashmi ship $ */
3
4 -- Global constant holding the package name
5
6 G_PKG_NAME CONSTANT VARCHAR2(30) := 'QP_Default_Qualifiers';
7
8 -- Package global used within the package.
9
10 g_QUALIFIERS_rec QP_Qualifier_Rules_PUB.Qualifiers_Rec_Type;
11 g_p_QUALIFIERS_rec QP_Qualifier_Rules_PUB.Qualifiers_Rec_Type;
12
13 -- Get functions.
14
15 FUNCTION Get_Comparison_Operator
16 RETURN VARCHAR2
17 IS
18 BEGIN
19
20 RETURN '=';
21
22 END Get_Comparison_Operator;
23
24 FUNCTION Get_Created_From_Rule
25 RETURN NUMBER
26 IS
27 BEGIN
28
29 RETURN NULL;
30
31 END Get_Created_From_Rule;
32
33 FUNCTION Get_End_Date_Active
34 RETURN DATE
35 IS
36 BEGIN
37
38 RETURN NULL;
39
40 END Get_End_Date_Active;
41
42 FUNCTION Get_Excluder
43 RETURN VARCHAR2
44 IS
45 BEGIN
46
47 RETURN 'N';
48
49 END Get_Excluder;
50
51 FUNCTION Get_List_Header
52 RETURN NUMBER
53 IS
54 BEGIN
55
56 RETURN NULL;
57
58 END Get_List_Header;
59
60 FUNCTION Get_List_Line
61 RETURN NUMBER
62 IS
63 BEGIN
64
65 RETURN -1;
66
67 END Get_List_Line;
68
69 FUNCTION Get_Qualifier_Attribute
70 RETURN VARCHAR2
71 IS
72 BEGIN
73
74 RETURN NULL;
75
76 END Get_Qualifier_Attribute;
77
78 FUNCTION Get_Qualifier_Attr_Value
79 RETURN VARCHAR2
80 IS
81 BEGIN
82
83 RETURN NULL;
84
85 END Get_Qualifier_Attr_Value;
86
87 FUNCTION Get_Qualifier_Attr_Value_To
88 RETURN VARCHAR2
89 IS
90 BEGIN
91
92 RETURN NULL;
93
94 END Get_Qualifier_Attr_Value_To;
95
96
97 FUNCTION Get_Qualifier_Context
98 RETURN VARCHAR2
99 IS
100 BEGIN
101
102 RETURN NULL;
103
104 END Get_Qualifier_Context;
105
106 FUNCTION Get_Qualifier_Datatype(p_qualifier_context IN VARCHAR2,
107 p_qualifier_attribute IN VARCHAR2,
108 p_qualifier_attribute_value IN VARCHAR2
109 )
110 RETURN VARCHAR2
111 IS
112 l_context_error VARCHAR2(1);
113 l_attribute_error VARCHAR2(1);
114 l_value_error VARCHAR2(1);
115 l_datatype VARCHAR2(1);
116 l_precedence NUMBER;
117 l_error_code NUMBER;
118
119 BEGIN
120
121
122 QP_UTIL.validate_qp_flexfield(flexfield_name =>'QP_ATTR_DEFNS_QUALIFIER'
123 ,context =>p_qualifier_context
124 ,attribute =>p_qualifier_attribute
125 ,value =>p_qualifier_attribute_value
126 ,application_short_name => 'QP'
127 ,context_flag =>l_context_error
128 ,attribute_flag =>l_attribute_error
129 ,value_flag =>l_value_error
130 ,datatype =>l_datatype
131 ,precedence =>l_precedence
132 ,error_code =>l_error_code
133 );
134
135 If l_error_code = 0 Then
136
137 RETURN l_datatype;
138 Else
139 RETURN NULL;
140 End If;
141
142 END Get_Qualifier_Datatype;
143
144 /*FUNCTION Get_Qualifier_Date_Format
145 RETURN VARCHAR2
146 IS
147 BEGIN
148
149 RETURN NULL;
150
151 END Get_Qualifier_Date_Format;*/
152
153 FUNCTION Get_Qualifier_Grouping_No
154 RETURN NUMBER
155 IS
156 BEGIN
157
158 RETURN -1;
159
160 END Get_Qualifier_Grouping_No;
161
162 FUNCTION Get_Qualifier
163 RETURN NUMBER
164 IS
165 l_qualifier_id NUMBER;
166 BEGIN
167
168 SELECT QP_QUALIFIERS_S.NEXTVAL
169 INTO l_qualifier_id
170 FROM DUAL;
171 RETURN l_qualifier_id;
172
173 END Get_Qualifier;
174
175 /*FUNCTION Get_Qualifier_Number_Format
176 RETURN VARCHAR2
177 IS
178 BEGIN
179
180 RETURN NULL;
181
182 END Get_Qualifier_Number_Format;*/
183
184 FUNCTION Get_Qualifier_Precedence(p_qualifier_context IN VARCHAR2,
185 p_qualifier_attribute IN VARCHAR2,
186 p_qualifier_attribute_value IN VARCHAR2
187 )
188 RETURN NUMBER
189 IS
190
191 l_context_error VARCHAR2(1);
192 l_attribute_error VARCHAR2(1);
193 l_value_error VARCHAR2(1);
194 l_datatype VARCHAR2(1);
195 l_precedence NUMBER;
196 l_error_code NUMBER;
197
198 BEGIN
199
200
201 QP_UTIL.validate_qp_flexfield(flexfield_name =>'QP_ATTR_DEFNS_QUALIFIER'
202 ,context =>p_qualifier_context
203 ,attribute =>p_qualifier_attribute
204 ,value =>p_qualifier_attribute_value
205 ,application_short_name => 'QP'
206 ,context_flag =>l_context_error
207 ,attribute_flag =>l_attribute_error
208 ,value_flag =>l_value_error
209 ,datatype =>l_datatype
210 ,precedence =>l_precedence
211 ,error_code =>l_error_code
212 );
213
214 If l_error_code = 0 Then
215
216 RETURN l_precedence;
217
218 Else
219 RETURN NULL;
220
221 End If;
222
223 END Get_Qualifier_Precedence;
224
225 FUNCTION Get_Qualifier_Rule
226 RETURN NUMBER
227 IS
228 BEGIN
229
230 RETURN NULL;
231
232 END Get_Qualifier_Rule;
233
234 FUNCTION Get_Start_Date_Active
235 RETURN DATE
236 IS
237 BEGIN
238
239 RETURN NULL;
240
241 END Get_Start_Date_Active;
242
243 --Added for TCA
244 FUNCTION Get_Qualify_Hier_Descendents
245 RETURN VARCHAR2
246 IS
247 BEGIN
248
249 RETURN NULL;
250
251 END Get_Qualify_Hier_Descendents;
252
253 PROCEDURE Get_Flex_Qualifiers
254 IS
255 BEGIN
256
257 -- In the future call Flex APIs for defaults
258
259 IF g_QUALIFIERS_rec.attribute1 = FND_API.G_MISS_CHAR THEN
260 g_QUALIFIERS_rec.attribute1 := NULL;
261 END IF;
262
263 IF g_QUALIFIERS_rec.attribute10 = FND_API.G_MISS_CHAR THEN
264 g_QUALIFIERS_rec.attribute10 := NULL;
265 END IF;
266
267 IF g_QUALIFIERS_rec.attribute11 = FND_API.G_MISS_CHAR THEN
268 g_QUALIFIERS_rec.attribute11 := NULL;
269 END IF;
270
271 IF g_QUALIFIERS_rec.attribute12 = FND_API.G_MISS_CHAR THEN
272 g_QUALIFIERS_rec.attribute12 := NULL;
273 END IF;
274
275 IF g_QUALIFIERS_rec.attribute13 = FND_API.G_MISS_CHAR THEN
276 g_QUALIFIERS_rec.attribute13 := NULL;
277 END IF;
278
279 IF g_QUALIFIERS_rec.attribute14 = FND_API.G_MISS_CHAR THEN
280 g_QUALIFIERS_rec.attribute14 := NULL;
281 END IF;
282
283 IF g_QUALIFIERS_rec.attribute15 = FND_API.G_MISS_CHAR THEN
284 g_QUALIFIERS_rec.attribute15 := NULL;
285 END IF;
286
287 IF g_QUALIFIERS_rec.attribute2 = FND_API.G_MISS_CHAR THEN
288 g_QUALIFIERS_rec.attribute2 := NULL;
289 END IF;
290
291 IF g_QUALIFIERS_rec.attribute3 = FND_API.G_MISS_CHAR THEN
292 g_QUALIFIERS_rec.attribute3 := NULL;
293 END IF;
294
295 IF g_QUALIFIERS_rec.attribute4 = FND_API.G_MISS_CHAR THEN
296 g_QUALIFIERS_rec.attribute4 := NULL;
297 END IF;
298
299 IF g_QUALIFIERS_rec.attribute5 = FND_API.G_MISS_CHAR THEN
300 g_QUALIFIERS_rec.attribute5 := NULL;
301 END IF;
302
303 IF g_QUALIFIERS_rec.attribute6 = FND_API.G_MISS_CHAR THEN
304 g_QUALIFIERS_rec.attribute6 := NULL;
305 END IF;
306
307 IF g_QUALIFIERS_rec.attribute7 = FND_API.G_MISS_CHAR THEN
308 g_QUALIFIERS_rec.attribute7 := NULL;
309 END IF;
310
311 IF g_QUALIFIERS_rec.attribute8 = FND_API.G_MISS_CHAR THEN
312 g_QUALIFIERS_rec.attribute8 := NULL;
313 END IF;
314
315 IF g_QUALIFIERS_rec.attribute9 = FND_API.G_MISS_CHAR THEN
316 g_QUALIFIERS_rec.attribute9 := NULL;
317 END IF;
318
319 IF g_QUALIFIERS_rec.context = FND_API.G_MISS_CHAR THEN
320 g_QUALIFIERS_rec.context := NULL;
321 END IF;
322
323 END Get_Flex_Qualifiers;
324
325 -- Procedure Attributes
326
327 PROCEDURE Attributes
328 ( p_QUALIFIERS_rec IN QP_Qualifier_Rules_PUB.Qualifiers_Rec_Type :=
329 QP_Qualifier_Rules_PUB.G_MISS_QUALIFIERS_REC
330 , p_iteration IN NUMBER := 1
331 , x_QUALIFIERS_rec OUT NOCOPY /* file.sql.39 change */ QP_Qualifier_Rules_PUB.Qualifiers_Rec_Type
332 )
333 IS
334 BEGIN
335
336
337 --dbms_output.put_line('entering default attributes');
338
339
340 -- Check number of iterations.
341
342 IF p_iteration > QP_GLOBALS.G_MAX_DEF_ITERATIONS THEN
343
344 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
345 THEN
346
347 FND_MESSAGE.SET_NAME('QP','OE_DEF_MAX_ITERATION');
348 OE_MSG_PUB.Add;
349
350 END IF;
351
352 RAISE FND_API.G_EXC_ERROR;
353
354 END IF;
355
356 -- Initialize g_QUALIFIERS_rec
357
358 g_QUALIFIERS_rec := p_QUALIFIERS_rec;
359
360 -- Default missing attributes.
361
362 IF g_QUALIFIERS_rec.comparison_operator_code = FND_API.G_MISS_CHAR THEN
363
364 g_QUALIFIERS_rec.comparison_operator_code := Get_Comparison_Operator;
365
366 IF g_QUALIFIERS_rec.comparison_operator_code IS NOT NULL THEN
367
368 IF QP_Validate.Comparison_Operator(g_QUALIFIERS_rec.comparison_operator_code)
369 THEN
370 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
371 QP_Qualifiers_Util.Clear_Dependent_Attr
372 ( p_attr_id => QP_Qualifiers_Util.G_COMPARISON_OPERATOR
373 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
374 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
375 );
376 ELSE
377 g_QUALIFIERS_rec.comparison_operator_code := NULL;
378 END IF;
379
380 END IF;
381
382 END IF;
383
384 IF g_QUALIFIERS_rec.created_from_rule_id = FND_API.G_MISS_NUM THEN
385
386 g_QUALIFIERS_rec.created_from_rule_id := Get_Created_From_Rule;
387
388 IF g_QUALIFIERS_rec.created_from_rule_id IS NOT NULL THEN
389
390 IF QP_Validate.Created_From_Rule(g_QUALIFIERS_rec.created_from_rule_id)
391 THEN
392 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
393 QP_Qualifiers_Util.Clear_Dependent_Attr
394 ( p_attr_id => QP_Qualifiers_Util.G_CREATED_FROM_RULE
395 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
396 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
397 );
398 ELSE
399 g_QUALIFIERS_rec.created_from_rule_id := NULL;
400 END IF;
401
402 END IF;
403
404 END IF;
405
406 IF g_QUALIFIERS_rec.end_date_active = FND_API.G_MISS_DATE THEN
407
408 g_QUALIFIERS_rec.end_date_active := Get_End_Date_Active;
409
410 IF g_QUALIFIERS_rec.end_date_active IS NOT NULL THEN
411
412 IF QP_Validate.End_Date_Active(g_QUALIFIERS_rec.end_date_active)
413 THEN
414 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
415 QP_Qualifiers_Util.Clear_Dependent_Attr
416 ( p_attr_id => QP_Qualifiers_Util.G_END_DATE_ACTIVE
417 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
418 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
419 );
420 ELSE
421 g_QUALIFIERS_rec.end_date_active := NULL;
422 END IF;
423
424 END IF;
425
426 END IF;
427
428 IF g_QUALIFIERS_rec.excluder_flag = FND_API.G_MISS_CHAR THEN
429
430 g_QUALIFIERS_rec.excluder_flag := Get_Excluder;
431
432 IF g_QUALIFIERS_rec.excluder_flag IS NOT NULL THEN
433
434 IF QP_Validate.Excluder(g_QUALIFIERS_rec.excluder_flag)
435 THEN
436 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
437 QP_Qualifiers_Util.Clear_Dependent_Attr
438 ( p_attr_id => QP_Qualifiers_Util.G_EXCLUDER
439 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
440 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
441 );
442 ELSE
443 g_QUALIFIERS_rec.excluder_flag := NULL;
444 END IF;
445
446 END IF;
447
448 END IF;
449
450 IF g_QUALIFIERS_rec.list_header_id = FND_API.G_MISS_NUM THEN
451
452 g_QUALIFIERS_rec.list_header_id := Get_List_Header;
453
454 IF g_QUALIFIERS_rec.list_header_id IS NOT NULL THEN
455
456 IF QP_Validate.List_Header(g_QUALIFIERS_rec.list_header_id)
457 THEN
458 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
459 QP_Qualifiers_Util.Clear_Dependent_Attr
460 ( p_attr_id => QP_Qualifiers_Util.G_LIST_HEADER
461 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
462 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
463 );
464 ELSE
465 g_QUALIFIERS_rec.list_header_id := NULL;
466 END IF;
467
468 END IF;
469
470 END IF;
471
472 IF g_QUALIFIERS_rec.list_line_id = FND_API.G_MISS_NUM THEN
473
474 g_QUALIFIERS_rec.list_line_id := Get_List_Line;
475
476 IF g_QUALIFIERS_rec.list_line_id IS NOT NULL THEN
477
478 IF QP_Validate.List_Line(g_QUALIFIERS_rec.list_line_id)
479 THEN
480 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
481 QP_Qualifiers_Util.Clear_Dependent_Attr
482 ( p_attr_id => QP_Qualifiers_Util.G_LIST_LINE
483 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
484 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
485 );
486 ELSE
487 g_QUALIFIERS_rec.list_line_id := NULL;
488 END IF;
489
490 END IF;
491
492 END IF;
493
494 IF g_QUALIFIERS_rec.qualifier_attribute = FND_API.G_MISS_CHAR THEN
495
496 g_QUALIFIERS_rec.qualifier_attribute := Get_Qualifier_Attribute;
497
498 IF g_QUALIFIERS_rec.qualifier_attribute IS NOT NULL THEN
499
500 IF QP_Validate.Qualifier_Attribute(g_QUALIFIERS_rec.qualifier_attribute)
501 THEN
502 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
506 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
503 QP_Qualifiers_Util.Clear_Dependent_Attr
504 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_ATTRIBUTE
505 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
507 );
508 ELSE
509 g_QUALIFIERS_rec.qualifier_attribute := NULL;
510 END IF;
511
512 END IF;
513
514 END IF;
515
516 IF g_QUALIFIERS_rec.qualifier_attr_value = FND_API.G_MISS_CHAR THEN
517
518 g_QUALIFIERS_rec.qualifier_attr_value := Get_Qualifier_Attr_Value;
519
520 IF g_QUALIFIERS_rec.qualifier_attr_value IS NOT NULL THEN
521
522 IF QP_Validate.Qualifier_Attr_Value(g_QUALIFIERS_rec.qualifier_attr_value)
523 THEN
524 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
525 QP_Qualifiers_Util.Clear_Dependent_Attr
526 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_ATTR_VALUE
527 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
528 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
529 );
530 ELSE
531 g_QUALIFIERS_rec.qualifier_attr_value := NULL;
532 END IF;
533
534 END IF;
535
536 END IF;
537
538 IF g_QUALIFIERS_rec.qualifier_attr_value_to = FND_API.G_MISS_CHAR THEN
539
540 g_QUALIFIERS_rec.qualifier_attr_value_to := Get_Qualifier_Attr_Value_to;
541
542 IF g_QUALIFIERS_rec.qualifier_attr_value_to IS NOT NULL THEN
543
544 IF QP_Validate.Qualifier_Attr_Value_to(g_QUALIFIERS_rec.qualifier_attr_value_to)
545 THEN
546 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
547 QP_Qualifiers_Util.Clear_Dependent_Attr
548 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_ATTR_VALUE_TO
549 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
550 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
551 );
552 ELSE
553 g_QUALIFIERS_rec.qualifier_attr_value_to := NULL;
554 END IF;
555 --null;
556
557 END IF;
558
559 END IF;
560
561 IF g_QUALIFIERS_rec.qualifier_context = FND_API.G_MISS_CHAR THEN
562
563 g_QUALIFIERS_rec.qualifier_context := Get_Qualifier_Context;
564
565 IF g_QUALIFIERS_rec.qualifier_context IS NOT NULL THEN
566
567 IF QP_Validate.Qualifier_Context(g_QUALIFIERS_rec.qualifier_context)
568 THEN
569 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
570 QP_Qualifiers_Util.Clear_Dependent_Attr
571 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_CONTEXT
572 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
573 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
574 );
575 ELSE
576 g_QUALIFIERS_rec.qualifier_context := NULL;
577 END IF;
578
579 END IF;
580
581 END IF;
582
583 IF g_QUALIFIERS_rec.qualifier_datatype = FND_API.G_MISS_CHAR THEN
584
585 g_QUALIFIERS_rec.qualifier_datatype := Get_Qualifier_Datatype(
586 p_QUALIFIERS_rec.qualifier_context
587 , p_QUALIFIERS_rec.qualifier_attribute
588 ,p_QUALIFIERS_rec.qualifier_attr_value
589 );
590
591 IF g_QUALIFIERS_rec.qualifier_datatype IS NOT NULL THEN
592
593 IF QP_Validate.Qualifier_Datatype(g_QUALIFIERS_rec.qualifier_datatype)
594 THEN
595 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
596 QP_Qualifiers_Util.Clear_Dependent_Attr
597 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_DATATYPE
598 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
599 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
600 );
601 ELSE
602 g_QUALIFIERS_rec.qualifier_datatype := NULL;
603 END IF;
604
605 END IF;
606
607 END IF;
608
609 /*IF g_QUALIFIERS_rec.qualifier_date_format = FND_API.G_MISS_CHAR THEN
610
611 g_QUALIFIERS_rec.qualifier_date_format := Get_Qualifier_Date_Format;
612
613 IF g_QUALIFIERS_rec.qualifier_date_format IS NOT NULL THEN
614
615 IF QP_Validate.Qualifier_Date_Format(g_QUALIFIERS_rec.qualifier_date_format)
616 THEN
617 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
618 QP_Qualifiers_Util.Clear_Dependent_Attr
619 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_DATE_FORMAT
620 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
621 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
622 );
623 ELSE
624 g_QUALIFIERS_rec.qualifier_date_format := NULL;
625 END IF;
626
630
627 END IF;
628
629 END IF;*/
631 IF g_QUALIFIERS_rec.qualifier_grouping_no = FND_API.G_MISS_NUM THEN
632
633 g_QUALIFIERS_rec.qualifier_grouping_no := Get_Qualifier_Grouping_No;
634
635 IF g_QUALIFIERS_rec.qualifier_grouping_no IS NOT NULL THEN
636
637 IF QP_Validate.Qualifier_Grouping_No(g_QUALIFIERS_rec.qualifier_grouping_no)
638 THEN
639 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
640 QP_Qualifiers_Util.Clear_Dependent_Attr
641 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_GROUPING_NO
642 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
643 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
644 );
645 ELSE
646 g_QUALIFIERS_rec.qualifier_grouping_no := NULL;
647 END IF;
648
649 END IF;
650
651 END IF;
652
653 IF g_QUALIFIERS_rec.qualifier_id = FND_API.G_MISS_NUM THEN
654
655 g_QUALIFIERS_rec.qualifier_id := Get_Qualifier;
656
657 IF g_QUALIFIERS_rec.qualifier_id IS NOT NULL THEN
658
659 IF QP_Validate.Qualifier(g_QUALIFIERS_rec.qualifier_id)
660 THEN
661 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
662 QP_Qualifiers_Util.Clear_Dependent_Attr
663 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER
664 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
665 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
666 );
667 ELSE
668 g_QUALIFIERS_rec.qualifier_id := NULL;
669 END IF;
670
671 END IF;
672
673 END IF;
674
675 /*IF g_QUALIFIERS_rec.qualifier_number_format = FND_API.G_MISS_CHAR THEN
676
677 g_QUALIFIERS_rec.qualifier_number_format := Get_Qualifier_Number_Format;
678
679 IF g_QUALIFIERS_rec.qualifier_number_format IS NOT NULL THEN
680
681 IF QP_Validate.Qualifier_Number_Format(g_QUALIFIERS_rec.qualifier_number_format)
682 THEN
683 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
684 QP_Qualifiers_Util.Clear_Dependent_Attr
685 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_NUMBER_FORMAT
686 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
687 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
688 );
689 ELSE
690 g_QUALIFIERS_rec.qualifier_number_format := NULL;
691 END IF;
692
693 END IF;
694
695 END IF;*/
696
697 --dbms_output.put_line('chekcing for precedence');
698
699 IF g_QUALIFIERS_rec.qualifier_precedence = FND_API.G_MISS_NUM THEN
700
701 g_QUALIFIERS_rec.qualifier_precedence := Get_Qualifier_Precedence(
702 p_QUALIFIERS_rec.qualifier_context
703 , p_QUALIFIERS_rec.qualifier_attribute
704 ,p_QUALIFIERS_rec.qualifier_attr_value
705 );
706
707 IF g_QUALIFIERS_rec.qualifier_precedence IS NOT NULL THEN
708
709 IF QP_Validate.Qualifier_Precedence(g_QUALIFIERS_rec.qualifier_precedence)
710 THEN
711 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
712 QP_Qualifiers_Util.Clear_Dependent_Attr
713 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_PRECEDENCE
714 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
715 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
716 );
717 ELSE
718 g_QUALIFIERS_rec.qualifier_precedence := NULL;
719 END IF;
720
721 END IF;
722
723 END IF;
724
725
726 oe_debug_pub.add('checking qualifier rule id in QPXDQPQB '|| g_QUALIFIERS_rec.qualifier_rule_id);
727
728
729 IF g_QUALIFIERS_rec.qualifier_rule_id = FND_API.G_MISS_NUM THEN
730
731 oe_debug_pub.add('atteching qualifier rule id by calling get_qualifier_rule');
732
733 g_QUALIFIERS_rec.qualifier_rule_id := Get_Qualifier_Rule;
734
735 IF g_QUALIFIERS_rec.qualifier_rule_id IS NOT NULL THEN
736
737 IF QP_Validate.Qualifier_Rule(g_QUALIFIERS_rec.qualifier_rule_id)
738 THEN
739 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
740 QP_Qualifiers_Util.Clear_Dependent_Attr
741 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFIER_RULE
742 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
743 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
744 );
745 ELSE
746 g_QUALIFIERS_rec.qualifier_rule_id := NULL;
747 END IF;
748
749 END IF;
750
751 END IF;
752
753 IF g_QUALIFIERS_rec.start_date_active = FND_API.G_MISS_DATE THEN
754
758
755 g_QUALIFIERS_rec.start_date_active := Get_Start_Date_Active;
756
757 IF g_QUALIFIERS_rec.start_date_active IS NOT NULL THEN
759 IF QP_Validate.Start_Date_Active(g_QUALIFIERS_rec.start_date_active)
760 THEN
761 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec; -- added for nocopy hint
762 QP_Qualifiers_Util.Clear_Dependent_Attr
763 ( p_attr_id => QP_Qualifiers_Util.G_START_DATE_ACTIVE
764 , p_QUALIFIERS_rec => g_p_QUALIFIERS_rec
765 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
766 );
767 ELSE
768 g_QUALIFIERS_rec.start_date_active := NULL;
769 END IF;
770
771 END IF;
772
773 END IF;
774
775 -- Added for TCA
776
777 IF g_QUALIFIERS_rec.qualify_hier_descendent_flag = FND_API.G_MISS_CHAR THEN
778
779 g_QUALIFIERS_rec.qualify_hier_descendent_flag := Get_Qualify_Hier_Descendents;
780
781 IF g_QUALIFIERS_rec.qualify_hier_descendent_flag IS NOT NULL THEN
782
783 IF QP_Validate.Qualify_Hier_Descendent_Flag(g_QUALIFIERS_rec.qualify_hier_descendent_flag)
784 THEN
785 g_p_QUALIFIERS_rec := g_QUALIFIERS_rec;
786 QP_Qualifiers_Util.Clear_Dependent_Attr
787 ( p_attr_id => QP_Qualifiers_Util.G_QUALIFY_HIER_DESCENDENT_FLAG
788 , p_QUALIFIERS_rec => g_QUALIFIERS_rec
789 , x_QUALIFIERS_rec => g_QUALIFIERS_rec
790 );
791 ELSE
792 g_QUALIFIERS_rec.qualify_hier_descendent_flag := NULL;
793 END IF;
794
795 END IF;
796
797 END IF;
798
799 IF g_QUALIFIERS_rec.attribute1 = FND_API.G_MISS_CHAR
800 OR g_QUALIFIERS_rec.attribute10 = FND_API.G_MISS_CHAR
801 OR g_QUALIFIERS_rec.attribute11 = FND_API.G_MISS_CHAR
802 OR g_QUALIFIERS_rec.attribute12 = FND_API.G_MISS_CHAR
803 OR g_QUALIFIERS_rec.attribute13 = FND_API.G_MISS_CHAR
804 OR g_QUALIFIERS_rec.attribute14 = FND_API.G_MISS_CHAR
805 OR g_QUALIFIERS_rec.attribute15 = FND_API.G_MISS_CHAR
806 OR g_QUALIFIERS_rec.attribute2 = FND_API.G_MISS_CHAR
807 OR g_QUALIFIERS_rec.attribute3 = FND_API.G_MISS_CHAR
808 OR g_QUALIFIERS_rec.attribute4 = FND_API.G_MISS_CHAR
809 OR g_QUALIFIERS_rec.attribute5 = FND_API.G_MISS_CHAR
810 OR g_QUALIFIERS_rec.attribute6 = FND_API.G_MISS_CHAR
811 OR g_QUALIFIERS_rec.attribute7 = FND_API.G_MISS_CHAR
812 OR g_QUALIFIERS_rec.attribute8 = FND_API.G_MISS_CHAR
813 OR g_QUALIFIERS_rec.attribute9 = FND_API.G_MISS_CHAR
814 OR g_QUALIFIERS_rec.context = FND_API.G_MISS_CHAR
815 THEN
816
817 Get_Flex_Qualifiers;
818
819 END IF;
820
821 IF g_QUALIFIERS_rec.created_by = FND_API.G_MISS_NUM THEN
822
823 g_QUALIFIERS_rec.created_by := NULL;
824
825 END IF;
826
827 IF g_QUALIFIERS_rec.creation_date = FND_API.G_MISS_DATE THEN
828
829 g_QUALIFIERS_rec.creation_date := NULL;
830
831 END IF;
832
833 IF g_QUALIFIERS_rec.last_updated_by = FND_API.G_MISS_NUM THEN
834
835 g_QUALIFIERS_rec.last_updated_by := NULL;
836
837 END IF;
838
839 IF g_QUALIFIERS_rec.last_update_date = FND_API.G_MISS_DATE THEN
840
841 g_QUALIFIERS_rec.last_update_date := NULL;
842
843 END IF;
844
845 IF g_QUALIFIERS_rec.last_update_login = FND_API.G_MISS_NUM THEN
846
847 g_QUALIFIERS_rec.last_update_login := NULL;
848
849 END IF;
850
851 IF g_QUALIFIERS_rec.program_application_id = FND_API.G_MISS_NUM THEN
852
853 g_QUALIFIERS_rec.program_application_id := NULL;
854
855 END IF;
856
857 IF g_QUALIFIERS_rec.program_id = FND_API.G_MISS_NUM THEN
858
859 g_QUALIFIERS_rec.program_id := NULL;
860
861 END IF;
862
863 IF g_QUALIFIERS_rec.program_update_date = FND_API.G_MISS_DATE THEN
864
865 g_QUALIFIERS_rec.program_update_date := NULL;
866
867 END IF;
868
869 IF g_QUALIFIERS_rec.request_id = FND_API.G_MISS_NUM THEN
870
871 g_QUALIFIERS_rec.request_id := NULL;
872
873 END IF;
874
875 -- Redefault if there are any missing attributes.
876
877 IF g_QUALIFIERS_rec.attribute1 = FND_API.G_MISS_CHAR
878 OR g_QUALIFIERS_rec.attribute10 = FND_API.G_MISS_CHAR
879 OR g_QUALIFIERS_rec.attribute11 = FND_API.G_MISS_CHAR
880 OR g_QUALIFIERS_rec.attribute12 = FND_API.G_MISS_CHAR
881 OR g_QUALIFIERS_rec.attribute13 = FND_API.G_MISS_CHAR
882 OR g_QUALIFIERS_rec.attribute14 = FND_API.G_MISS_CHAR
883 OR g_QUALIFIERS_rec.attribute15 = FND_API.G_MISS_CHAR
884 OR g_QUALIFIERS_rec.attribute2 = FND_API.G_MISS_CHAR
885 OR g_QUALIFIERS_rec.attribute3 = FND_API.G_MISS_CHAR
886 OR g_QUALIFIERS_rec.attribute4 = FND_API.G_MISS_CHAR
887 OR g_QUALIFIERS_rec.attribute5 = FND_API.G_MISS_CHAR
888 OR g_QUALIFIERS_rec.attribute6 = FND_API.G_MISS_CHAR
889 OR g_QUALIFIERS_rec.attribute7 = FND_API.G_MISS_CHAR
890 OR g_QUALIFIERS_rec.attribute8 = FND_API.G_MISS_CHAR
891 OR g_QUALIFIERS_rec.attribute9 = FND_API.G_MISS_CHAR
892 OR g_QUALIFIERS_rec.comparison_operator_code = FND_API.G_MISS_CHAR
893 OR g_QUALIFIERS_rec.context = FND_API.G_MISS_CHAR
894 OR g_QUALIFIERS_rec.created_by = FND_API.G_MISS_NUM
895 OR g_QUALIFIERS_rec.created_from_rule_id = FND_API.G_MISS_NUM
896 OR g_QUALIFIERS_rec.creation_date = FND_API.G_MISS_DATE
897 OR g_QUALIFIERS_rec.end_date_active = FND_API.G_MISS_DATE
898 OR g_QUALIFIERS_rec.excluder_flag = FND_API.G_MISS_CHAR
899 OR g_QUALIFIERS_rec.last_updated_by = FND_API.G_MISS_NUM
900 OR g_QUALIFIERS_rec.last_update_date = FND_API.G_MISS_DATE
901 OR g_QUALIFIERS_rec.last_update_login = FND_API.G_MISS_NUM
902 OR g_QUALIFIERS_rec.list_header_id = FND_API.G_MISS_NUM
903 OR g_QUALIFIERS_rec.list_line_id = FND_API.G_MISS_NUM
904 OR g_QUALIFIERS_rec.program_application_id = FND_API.G_MISS_NUM
905 OR g_QUALIFIERS_rec.program_id = FND_API.G_MISS_NUM
906 OR g_QUALIFIERS_rec.program_update_date = FND_API.G_MISS_DATE
907 OR g_QUALIFIERS_rec.qualifier_attribute = FND_API.G_MISS_CHAR
908 OR g_QUALIFIERS_rec.qualifier_attr_value = FND_API.G_MISS_CHAR
909 OR g_QUALIFIERS_rec.qualifier_attr_value_to = FND_API.G_MISS_CHAR
910 OR g_QUALIFIERS_rec.qualifier_context = FND_API.G_MISS_CHAR
911 OR g_QUALIFIERS_rec.qualifier_datatype = FND_API.G_MISS_CHAR
912 --OR g_QUALIFIERS_rec.qualifier_date_format = FND_API.G_MISS_CHAR
913 OR g_QUALIFIERS_rec.qualifier_grouping_no = FND_API.G_MISS_NUM
914 OR g_QUALIFIERS_rec.qualifier_id = FND_API.G_MISS_NUM
915 --OR g_QUALIFIERS_rec.qualifier_number_format = FND_API.G_MISS_CHAR
916 OR g_QUALIFIERS_rec.qualifier_precedence = FND_API.G_MISS_NUM
917 OR g_QUALIFIERS_rec.qualifier_rule_id = FND_API.G_MISS_NUM
918 OR g_QUALIFIERS_rec.request_id = FND_API.G_MISS_NUM
919 OR g_QUALIFIERS_rec.start_date_active = FND_API.G_MISS_DATE
920 -- Added for TCA
921 OR g_QUALIFIERS_rec.qualify_hier_descendent_flag = FND_API.G_MISS_CHAR
922 THEN
923
924 QP_Default_Qualifiers.Attributes
925 ( p_QUALIFIERS_rec => g_QUALIFIERS_rec
926 , p_iteration => p_iteration + 1
927 , x_QUALIFIERS_rec => x_QUALIFIERS_rec
928 );
929
930 ELSE
931
932 -- Done defaulting attributes
933
934 x_QUALIFIERS_rec := g_QUALIFIERS_rec;
935
936 END IF;
937
938 END Attributes;
939
940 END QP_Default_Qualifiers;