DBA Data[Home] [Help]

PACKAGE BODY: APPS.QP_DEFAULT_MODIFIERS

Source


1 PACKAGE BODY QP_Default_Modifiers AS
2 /* $Header: QPXDMLLB.pls 120.2 2005/07/07 04:29:01 appldev ship $ */
3 
4 --  Global constant holding the package name
5 
6 G_PKG_NAME                    CONSTANT VARCHAR2(30) := 'QP_Default_Modifiers';
7 
8 --  Package global used within the package.
9 
10 g_MODIFIERS_rec               QP_Modifiers_PUB.Modifiers_Rec_Type;
11 
12 --  Get functions.
13 
14 
15 
16 FUNCTION Get_Arithmetic_Operator
17 RETURN VARCHAR2
18 IS
19 BEGIN
20 
21     RETURN NULL;
22 
23 END Get_Arithmetic_Operator;
24 
25 FUNCTION Get_Automatic
26 RETURN VARCHAR2
27 IS
28 BEGIN
29 
30     RETURN 'Y';
31 
32 END Get_Automatic;
33 
34 /* FUNCTION Get_Base_Qty
35 RETURN NUMBER
36 IS
37 BEGIN
38 
39     RETURN NULL;
40 
41 END Get_Base_Qty;
42 */
43 FUNCTION Get_Pricing_Phase
44 RETURN NUMBER
45 IS
46 BEGIN
47 
48     RETURN NULL;
49 
50 END Get_Pricing_Phase;
51 
52 /* FUNCTION Get_Base_Uom
53 RETURN VARCHAR2
54 IS
55 BEGIN
56 
57     RETURN NULL;
58 
59 END Get_Base_Uom;
60 */
61 FUNCTION Get_Comments
62 RETURN VARCHAR2
63 IS
64 BEGIN
65 
66     RETURN NULL;
67 
68 END Get_Comments;
69 
70 FUNCTION Get_Effective_Period_Uom
71 RETURN VARCHAR2
72 IS
73 BEGIN
74 
75     RETURN NULL;
76 
77 END Get_Effective_Period_Uom;
78 
79 FUNCTION Get_End_Date_Active
80 RETURN DATE
81 IS
82 BEGIN
83 
84     RETURN NULL;
85 
86 END Get_End_Date_Active;
87 
88 FUNCTION Get_Estim_Accrual_Rate
89 RETURN NUMBER
90 IS
91 l_estim_accrual_rate NUMBER := FND_API.G_MISS_NUM;
92 BEGIN
93 
94 l_estim_accrual_rate := 100;
95 
96     RETURN l_estim_accrual_rate;
97 
98 END Get_Estim_Accrual_Rate;
99 
100 FUNCTION Get_Generate_Using_Formula
101 RETURN NUMBER
102 IS
103 BEGIN
104 
105     RETURN NULL;
106 
107 END Get_Generate_Using_Formula;
108 
109 /* FUNCTION Get_Gl_Class
110 RETURN NUMBER
111 IS
112 BEGIN
113 
114     RETURN NULL;
115 
116 END Get_Gl_Class; */
117 
118 FUNCTION Get_Inventory_Item
119 RETURN NUMBER
120 IS
121 BEGIN
122 
123     RETURN NULL;
124 
125 END Get_Inventory_Item;
126 
127 FUNCTION Get_List_Header
128 RETURN NUMBER
129 IS
130 -- l_list_header_id NUMBER := FND_API.G_MISS_NUM;
131 BEGIN
132 
133 --    l_list_header_id := QP_Default_Modifier_List.Get_List_Header;
134 --    RETURN l_list_header_id;
135 
136     RETURN NULL;
137 
138 END Get_List_Header;
139 
140 FUNCTION Get_List_Line
141 RETURN NUMBER
142 IS
143 l_list_line_id NUMBER := FND_API.G_MISS_NUM;
144 BEGIN
145 
146     select QP_LIST_LINES_S.nextval
147     into   l_list_line_id
148     from   dual;
149 
150     RETURN l_list_line_id;
151 
152 END Get_List_Line;
153 
154 FUNCTION Get_List_Line_Type
155 RETURN VARCHAR2
156 IS
157 BEGIN
158 
159     RETURN NULL;
160 
161 END Get_List_Line_Type;
162 
163 FUNCTION Get_List_Price
164 RETURN NUMBER
165 IS
166 BEGIN
167 
168     RETURN NULL;
169 
170 END Get_List_Price;
171 
172 /* FUNCTION Get_List_Price_Uom
173 RETURN VARCHAR2
174 IS
175 BEGIN
176 
177     RETURN NULL;
178 
179 END Get_List_Price_Uom;  */
180 
181 FUNCTION Get_Modifier_Level
182 RETURN VARCHAR2
183 IS
184 BEGIN
185 
186     RETURN NULL;
187 
188 END Get_Modifier_Level;
189 
190 /* FUNCTION Get_New_Price
191 RETURN NUMBER
192 IS
193 BEGIN
194 
195     RETURN NULL;
196 
197 END Get_New_Price; */
198 
199 FUNCTION Get_Number_Effective_Periods
200 RETURN NUMBER
201 IS
202 BEGIN
203 
204     RETURN NULL;
205 
206 END Get_Number_Effective_Periods;
207 
208 FUNCTION Get_Operand
209 RETURN NUMBER
210 IS
211 BEGIN
212 
213     RETURN NULL;
214 
215 END Get_Operand;
216 
217 FUNCTION Get_Organization
218 RETURN NUMBER
219 IS
220 BEGIN
221 
222     RETURN NULL;
223 
224 END Get_Organization;
225 
226 FUNCTION Get_Override
227 RETURN VARCHAR2
228 IS
229 BEGIN
230 
231     RETURN 'N';
232 
233 END Get_Override;
234 
235 FUNCTION Get_Percent_Price
236 RETURN NUMBER
237 IS
238 BEGIN
239 
240     RETURN NULL;
241 
242 END Get_Percent_Price;
243 
244 FUNCTION Get_Price_Break_Type
245 RETURN VARCHAR2
246 IS
247 BEGIN
248 
249     RETURN NULL;
250 
251 END Get_Price_Break_Type;
252 
253 FUNCTION Get_Price_By_Formula
254 RETURN NUMBER
255 IS
256 BEGIN
257 
258     RETURN NULL;
259 
260 END Get_Price_By_Formula;
261 
262 FUNCTION Get_Primary_Uom
263 RETURN VARCHAR2
264 IS
265 BEGIN
266 
267     RETURN NULL;
268 
269 END Get_Primary_Uom;
270 
271 FUNCTION Get_Print_On_Invoice
272 RETURN VARCHAR2
273 IS
274 BEGIN
275 
276     RETURN 'Y';
277 
278 END Get_Print_On_Invoice;
279 
280 /* FUNCTION Get_Rebate_Subtype
281 RETURN VARCHAR2
282 IS
283 BEGIN
284 
285     RETURN NULL;
286 
287 END Get_Rebate_Subtype; */
288 
289 FUNCTION Get_Rebate_Transaction_Type
290 RETURN VARCHAR2
291 IS
292 BEGIN
293 
294     RETURN NULL;
295 
296 END Get_Rebate_Transaction_Type;
297 
298 FUNCTION Get_Related_Item
299 RETURN NUMBER
300 IS
301 BEGIN
302 
303     RETURN NULL;
304 
305 END Get_Related_Item;
306 
307 FUNCTION Get_Relationship_Type
308 RETURN NUMBER
309 IS
310 BEGIN
311 
312     RETURN NULL;
313 
314 END Get_Relationship_Type;
315 
316 FUNCTION Get_Reprice
317 RETURN VARCHAR2
318 IS
319 BEGIN
320 
321     RETURN NULL;
322 
323 END Get_Reprice;
324 
325 FUNCTION Get_Revision
326 RETURN VARCHAR2
327 IS
328 BEGIN
329 
330     RETURN NULL;
331 
332 END Get_Revision;
333 
334 FUNCTION Get_Revision_Date
335 RETURN DATE
336 IS
337 BEGIN
338 
339     RETURN NULL;
340 
341 END Get_Revision_Date;
342 
343 FUNCTION Get_Revision_Reason
344 RETURN VARCHAR2
345 IS
346 BEGIN
347 
348     RETURN NULL;
349 
350 END Get_Revision_Reason;
351 
352 FUNCTION Get_Start_Date_Active
353 RETURN DATE
354 IS
355 BEGIN
356 
357     RETURN NULL;
358 
359 END Get_Start_Date_Active;
360 
361 FUNCTION Get_Substitution_Attribute
362 RETURN VARCHAR2
363 IS
364 BEGIN
365 
366     RETURN NULL;
367 
368 END Get_Substitution_Attribute;
369 
370 FUNCTION Get_Substitution_Context
371 RETURN VARCHAR2
372 IS
373 BEGIN
374 
375     RETURN NULL;
376 
377 END Get_Substitution_Context;
378 
379 FUNCTION Get_Substitution_Value
380 RETURN VARCHAR2
381 IS
382 BEGIN
383 
384     RETURN NULL;
385 
386 END Get_Substitution_Value;
387 
388 FUNCTION Get_Product_Precedence
389 RETURN NUMBER
390 IS
391 BEGIN
392 
393        RETURN NULL;
394 
395 END Get_Product_Precedence;
396 
397 FUNCTION Get_Exp_Period_Start_Date
398 RETURN DATE
399 IS
400 BEGIN
401 
402     RETURN NULL;
403 
404 END Get_Exp_Period_Start_Date;
405 
406 FUNCTION Get_Number_Expiration_Periods
407 RETURN NUMBER
408 IS
409 BEGIN
410 
411     RETURN NULL;
412 
413 END Get_Number_Expiration_Periods;
414 
415 FUNCTION Get_Expiration_Period_Uom
416 RETURN VARCHAR2
417 IS
418 BEGIN
419 
420     RETURN NULL;
421 
422 END Get_Expiration_Period_Uom;
423 
424 FUNCTION Get_Expiration_Date
425 RETURN DATE
426 IS
427 BEGIN
428 
429     RETURN NULL;
430 
431 END Get_Expiration_Date;
432 
433 FUNCTION Get_Estim_Gl_Value
434 RETURN NUMBER
435 IS
436 BEGIN
437 
438     RETURN NULL;
439 
440 END Get_Estim_Gl_Value;
441 
442 FUNCTION Get_Ben_Price_List_Line
443 RETURN NUMBER
444 IS
445 BEGIN
446 
447     RETURN NULL;
448 
449 END Get_Ben_Price_List_Line;
450 
451 /* FUNCTION Get_Recurring
452 RETURN VARCHAR2
453 IS
454 BEGIN
455 
456     RETURN 'N';
457 
458 END Get_Recurring;
459 */
460 FUNCTION Get_Benefit_Limit
461 RETURN NUMBER
462 IS
463 BEGIN
464 
465     RETURN NULL;
466 
467 END Get_Benefit_Limit;
468 
469 FUNCTION Get_Charge_Type
470 RETURN VARCHAR2
471 IS
472 BEGIN
473 
474     RETURN NULL;
475 
476 END Get_Charge_Type;
477 
478 FUNCTION Get_Charge_Subtype
479 RETURN VARCHAR2
480 IS
481 BEGIN
482 
483     RETURN NULL;
484 
485 END Get_Charge_Subtype;
486 
487 FUNCTION Get_Benefit_Qty
488 RETURN NUMBER
489 IS
490 BEGIN
491 
492     RETURN NULL;
493 
494 END Get_Benefit_Qty;
495 
496 FUNCTION Get_Benefit_Uom
497 RETURN VARCHAR2
498 IS
499 BEGIN
500 
501     RETURN NULL;
502 
503 END Get_Benefit_Uom;
504 
505 FUNCTION Get_Accrual_Conversion_Rate
506 RETURN NUMBER
507 IS
508 BEGIN
509 
510     RETURN NULL;
511 
512 END Get_Accrual_Conversion_Rate;
513 
514 FUNCTION Get_Include_On_Returns_Flag
515 RETURN VARCHAR2
516 IS
517 BEGIN
518 
519     RETURN NULL;
520 
521 END Get_Include_On_Returns_Flag;
522 
523 FUNCTION Get_Proration_Type
524 RETURN VARCHAR2
525 IS
526 BEGIN
527 
528     RETURN 'N';
529 
530 END Get_Proration_Type;
531 
532 FUNCTION Get_From_Rltd_Modifier
533 RETURN NUMBER
534 IS
535 BEGIN
536 
537     RETURN NULL;
538 
539 END Get_From_Rltd_Modifier;
540 
541 FUNCTION Get_To_Rltd_Modifier
542 RETURN NUMBER
543 IS
544 BEGIN
545 
546     RETURN NULL;
547 
548 END Get_To_Rltd_Modifier;
549 
550 FUNCTION Get_Rltd_Modifier_Grp_No
551 RETURN NUMBER
552 IS
553 BEGIN
554 
555     RETURN NULL;
556 
557 END Get_Rltd_Modifier_Grp_No;
558 
559 FUNCTION Get_Rltd_Modifier_Grp_Type
560 RETURN VARCHAR2
561 IS
562 BEGIN
563 
564     RETURN NULL;
565 
566 END Get_Rltd_Modifier_Grp_Type;
567 
568 FUNCTION Get_Accrual
569 RETURN VARCHAR2
570 IS
571 BEGIN
572 
573     RETURN 'N';
574 
575 END Get_Accrual;
576 
577 FUNCTION Get_Pricing_Group_Sequence( p_automatic_flag VARCHAR2)
578 RETURN NUMBER
579 IS
580 l_qp_status                   VARCHAR2(1);
581 BEGIN
582  l_qp_status := QP_UTIL.GET_QP_STATUS;
583 
584  IF l_qp_status in ('N','S') and p_automatic_flag ='Y' THEN
585     RETURN '1';
586  END IF;
587 
588     RETURN NULL;
589 END Get_Pricing_Group_Sequence;
590 
591 FUNCTION Get_Incompatibility_Grp( p_automatic_flag VARCHAR2)
592 RETURN VARCHAR2
593 IS
594 l_qp_status                   VARCHAR2(1);
595 BEGIN
596  l_qp_status := QP_UTIL.GET_QP_STATUS;
597 
598  IF l_qp_status in ('N','S') and p_automatic_flag ='Y' THEN
599     RETURN 'LVL 1';
600  END IF;
601 
602     RETURN NULL;
603 
604 END Get_Incompatibility_Grp;
605 
606 FUNCTION Get_List_Line_No
607 RETURN VARCHAR2
608 IS
609 BEGIN
610 
611     RETURN NULL;
612 
613 END Get_List_Line_No;
614 
615 FUNCTION get_qualification_ind
616 RETURN NUMBER
617 IS
618 BEGIN
619 
620     RETURN NULL;
621 
622 END Get_qualification_ind;
623 
624 FUNCTION Get_accum_attribute
625 RETURN NUMBER
626 IS
627 BEGIN
628 
629     RETURN NULL;
630 
631 END Get_accum_attribute;
632 
633 
634 FUNCTION Get_Net_Amount
635 RETURN VARCHAR2
636 IS
637 BEGIN
638 
639     RETURN NULL;
640 
641 END Get_Net_Amount;
642 
643 PROCEDURE Get_Flex_Modifiers
644 IS
645 BEGIN
646 
647 oe_debug_pub.add('BEGIN Get_Flex_Modifiers in QPXDMLLB');
648 
649     --  In the future call Flex APIs for defaults
650 
651     IF g_MODIFIERS_rec.attribute1 = FND_API.G_MISS_CHAR THEN
652         g_MODIFIERS_rec.attribute1     := NULL;
653     END IF;
654 
655     IF g_MODIFIERS_rec.attribute10 = FND_API.G_MISS_CHAR THEN
656         g_MODIFIERS_rec.attribute10    := NULL;
657     END IF;
658 
659     IF g_MODIFIERS_rec.attribute11 = FND_API.G_MISS_CHAR THEN
660         g_MODIFIERS_rec.attribute11    := NULL;
661     END IF;
662 
663     IF g_MODIFIERS_rec.attribute12 = FND_API.G_MISS_CHAR THEN
664         g_MODIFIERS_rec.attribute12    := NULL;
665     END IF;
666 
667     IF g_MODIFIERS_rec.attribute13 = FND_API.G_MISS_CHAR THEN
668         g_MODIFIERS_rec.attribute13    := NULL;
669     END IF;
670 
671     IF g_MODIFIERS_rec.attribute14 = FND_API.G_MISS_CHAR THEN
672         g_MODIFIERS_rec.attribute14    := NULL;
673     END IF;
674 
675     IF g_MODIFIERS_rec.attribute15 = FND_API.G_MISS_CHAR THEN
676         g_MODIFIERS_rec.attribute15    := NULL;
677     END IF;
678 
679     IF g_MODIFIERS_rec.attribute2 = FND_API.G_MISS_CHAR THEN
680         g_MODIFIERS_rec.attribute2     := NULL;
681     END IF;
682 
683     IF g_MODIFIERS_rec.attribute3 = FND_API.G_MISS_CHAR THEN
684         g_MODIFIERS_rec.attribute3     := NULL;
685     END IF;
686 
687     IF g_MODIFIERS_rec.attribute4 = FND_API.G_MISS_CHAR THEN
688         g_MODIFIERS_rec.attribute4     := NULL;
689     END IF;
690 
691     IF g_MODIFIERS_rec.attribute5 = FND_API.G_MISS_CHAR THEN
692         g_MODIFIERS_rec.attribute5     := NULL;
693     END IF;
694 
695     IF g_MODIFIERS_rec.attribute6 = FND_API.G_MISS_CHAR THEN
696         g_MODIFIERS_rec.attribute6     := NULL;
697     END IF;
698 
699     IF g_MODIFIERS_rec.attribute7 = FND_API.G_MISS_CHAR THEN
700         g_MODIFIERS_rec.attribute7     := NULL;
701     END IF;
702 
703     IF g_MODIFIERS_rec.attribute8 = FND_API.G_MISS_CHAR THEN
704         g_MODIFIERS_rec.attribute8     := NULL;
705     END IF;
706 
707     IF g_MODIFIERS_rec.attribute9 = FND_API.G_MISS_CHAR THEN
708         g_MODIFIERS_rec.attribute9     := NULL;
709     END IF;
710 
711     IF g_MODIFIERS_rec.context = FND_API.G_MISS_CHAR THEN
712         g_MODIFIERS_rec.context        := NULL;
713     END IF;
714 
715 oe_debug_pub.add('END Get_Flex_Modifiers in QPXDMLLB');
716 
717 END Get_Flex_Modifiers;
718 
719 --  Procedure Attributes
720 
721 PROCEDURE Attributes
722 (   p_MODIFIERS_rec                 IN  QP_Modifiers_PUB.Modifiers_Rec_Type :=
723                                         QP_Modifiers_PUB.G_MISS_MODIFIERS_REC
724 ,   p_iteration                     IN  NUMBER := 1
725 ,   x_MODIFIERS_rec                 OUT NOCOPY /* file.sql.39 change */ QP_Modifiers_PUB.Modifiers_Rec_Type
726 )
727 IS
728 l_MODIFIERS_rec		QP_Modifiers_PUB.Modifiers_Rec_Type; --[prarasto]
729 BEGIN
730 
731 
732 oe_debug_pub.add('BEGIN Attributes in QPXDMLLB');
733 
734     --  Check number of iterations.
735 
736     IF p_iteration > QP_GLOBALS.G_MAX_DEF_ITERATIONS THEN
737 
738         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
739         THEN
740 
741             FND_MESSAGE.SET_NAME('QP','OE_DEF_MAX_ITERATION');
742             OE_MSG_PUB.Add;
743 
744         END IF;
745 
746         RAISE FND_API.G_EXC_ERROR;
747 
748     END IF;
749 
750     --  Initialize g_MODIFIERS_rec
751 
752     g_MODIFIERS_rec := p_MODIFIERS_rec;
753 
754     --  Default missing attributes.
755 
756     IF g_MODIFIERS_rec.arithmetic_operator = FND_API.G_MISS_CHAR THEN
757 
758         g_MODIFIERS_rec.arithmetic_operator := Get_Arithmetic_Operator;
759 
760         IF g_MODIFIERS_rec.arithmetic_operator IS NOT NULL THEN
761 
762             IF QP_Validate.Arithmetic_Operator(g_MODIFIERS_rec.arithmetic_operator)
763             THEN
764 
765 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
766 
767                 QP_Modifiers_Util.Clear_Dependent_Attr
768                 (   p_attr_id                     => QP_Modifiers_Util.G_ARITHMETIC_OPERATOR
769                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
770                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
771                 );
772             ELSE
773                 g_MODIFIERS_rec.arithmetic_operator := NULL;
774             END IF;
775 
776         END IF;
777 
778     END IF;
779 
780     IF g_MODIFIERS_rec.automatic_flag = FND_API.G_MISS_CHAR THEN
781 
782         g_MODIFIERS_rec.automatic_flag := Get_Automatic;
783 
784         IF g_MODIFIERS_rec.automatic_flag IS NOT NULL THEN
785 
786             IF QP_Validate.Automatic(g_MODIFIERS_rec.automatic_flag)
787             THEN
788 
789 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
790 
791                 QP_Modifiers_Util.Clear_Dependent_Attr
792                 (   p_attr_id                     => QP_Modifiers_Util.G_AUTOMATIC
793                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
794                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
795                 );
796             ELSE
797                 g_MODIFIERS_rec.automatic_flag := NULL;
798             END IF;
799 
800         END IF;
801 
802     END IF;
803 
804 /*    IF g_MODIFIERS_rec.base_qty = FND_API.G_MISS_NUM THEN
805 
806         g_MODIFIERS_rec.base_qty := Get_Base_Qty;
807 
808         IF g_MODIFIERS_rec.base_qty IS NOT NULL THEN
809 
810             IF QP_Validate.Base_Qty(g_MODIFIERS_rec.base_qty)
811             THEN
812 
813 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
814 
815                 QP_Modifiers_Util.Clear_Dependent_Attr
816                 (   p_attr_id                     => QP_Modifiers_Util.G_BASE_QTY
817                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
818                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
819                 );
820             ELSE
821                 g_MODIFIERS_rec.base_qty := NULL;
822             END IF;
823 
824         END IF;
825 
826     END IF;
827 */
828     IF g_MODIFIERS_rec.pricing_phase_id = FND_API.G_MISS_NUM THEN
829 
830         g_MODIFIERS_rec.pricing_phase_id := Get_Pricing_Phase;
831 
832         IF g_MODIFIERS_rec.pricing_phase_id IS NOT NULL THEN
833 
834             IF QP_Validate.Pricing_Phase(g_MODIFIERS_rec.pricing_phase_id)
835             THEN
836 
837 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
838 
839                 QP_Modifiers_Util.Clear_Dependent_Attr
840                 (   p_attr_id                     => QP_Modifiers_Util.G_PRICING_PHASE
841                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
842                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
843                 );
844             ELSE
845                 g_MODIFIERS_rec.pricing_phase_id := NULL;
846             END IF;
847 
848         END IF;
849 
850     END IF;
851 
852 /*    IF g_MODIFIERS_rec.base_uom_code = FND_API.G_MISS_CHAR THEN
853 
854         g_MODIFIERS_rec.base_uom_code := Get_Base_Uom;
855 
856         IF g_MODIFIERS_rec.base_uom_code IS NOT NULL THEN
857 
858             IF QP_Validate.Base_Uom(g_MODIFIERS_rec.base_uom_code)
859             THEN
860 
861 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
862 
863                 QP_Modifiers_Util.Clear_Dependent_Attr
864                 (   p_attr_id                     => QP_Modifiers_Util.G_BASE_UOM
865                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
866                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
867                 );
868             ELSE
869                 g_MODIFIERS_rec.base_uom_code := NULL;
870             END IF;
871 
872         END IF;
873 
874     END IF;
875 */
876     IF g_MODIFIERS_rec.comments = FND_API.G_MISS_CHAR THEN
877 
878         g_MODIFIERS_rec.comments := Get_Comments;
879 
880         IF g_MODIFIERS_rec.comments IS NOT NULL THEN
881 
882             IF QP_Validate.Comments(g_MODIFIERS_rec.comments)
883             THEN
884 
885 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
886 
887                 QP_Modifiers_Util.Clear_Dependent_Attr
888                 (   p_attr_id                     => QP_Modifiers_Util.G_COMMENTS
889                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
890                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
891                 );
892             ELSE
893                 g_MODIFIERS_rec.comments := NULL;
894             END IF;
895 
896         END IF;
897 
898     END IF;
899 
900     IF g_MODIFIERS_rec.effective_period_uom = FND_API.G_MISS_CHAR THEN
901 
902         g_MODIFIERS_rec.effective_period_uom := Get_Effective_Period_Uom;
903 
904         IF g_MODIFIERS_rec.effective_period_uom IS NOT NULL THEN
905 
906             IF QP_Validate.Effective_Period_Uom(g_MODIFIERS_rec.effective_period_uom)
907             THEN
908 
909 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
910 
911                 QP_Modifiers_Util.Clear_Dependent_Attr
912                 (   p_attr_id                     => QP_Modifiers_Util.G_EFFECTIVE_PERIOD_UOM
913                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
914                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
915                 );
916             ELSE
917                 g_MODIFIERS_rec.effective_period_uom := NULL;
918             END IF;
919 
920         END IF;
921 
922     END IF;
923 
924     IF g_MODIFIERS_rec.end_date_active = FND_API.G_MISS_DATE THEN
925 
926         g_MODIFIERS_rec.end_date_active := Get_End_Date_Active;
927 
928         IF g_MODIFIERS_rec.end_date_active IS NOT NULL THEN
929 
930             IF QP_Validate.End_Date_Active(g_MODIFIERS_rec.end_date_active)
931             THEN
932 
933 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
934 
935                 QP_Modifiers_Util.Clear_Dependent_Attr
936                 (   p_attr_id                     => QP_Modifiers_Util.G_END_DATE_ACTIVE
937                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
938                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
939                 );
940             ELSE
941                 g_MODIFIERS_rec.end_date_active := NULL;
942             END IF;
943 
944         END IF;
945 
946     END IF;
947 
948     IF g_MODIFIERS_rec.estim_accrual_rate = FND_API.G_MISS_NUM THEN
949 
950         g_MODIFIERS_rec.estim_accrual_rate := Get_Estim_Accrual_Rate;
951 
952         IF g_MODIFIERS_rec.estim_accrual_rate IS NOT NULL THEN
953 
954             IF QP_Validate.Estim_Accrual_Rate(g_MODIFIERS_rec.estim_accrual_rate)
955             THEN
956 
957 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
958 
959                 QP_Modifiers_Util.Clear_Dependent_Attr
960                 (   p_attr_id                     => QP_Modifiers_Util.G_ESTIM_ACCRUAL_RATE
961                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
962                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
963                 );
964             ELSE
965                 g_MODIFIERS_rec.estim_accrual_rate := NULL;
966             END IF;
967 
968         END IF;
969 
970     END IF;
971 
972     IF g_MODIFIERS_rec.generate_using_formula_id = FND_API.G_MISS_NUM THEN
973 
974         g_MODIFIERS_rec.generate_using_formula_id := Get_Generate_Using_Formula;
975 
976         IF g_MODIFIERS_rec.generate_using_formula_id IS NOT NULL THEN
977 
978             IF QP_Validate.Generate_Using_Formula(g_MODIFIERS_rec.generate_using_formula_id)
979             THEN
980 
981 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
982 
983                 QP_Modifiers_Util.Clear_Dependent_Attr
984                 (   p_attr_id                     => QP_Modifiers_Util.G_GENERATE_USING_FORMULA
985                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
986                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
987                 );
988             ELSE
989                 g_MODIFIERS_rec.generate_using_formula_id := NULL;
990             END IF;
991 
992         END IF;
993 
994     END IF;
995 
996 /*    IF g_MODIFIERS_rec.gl_class_id = FND_API.G_MISS_NUM THEN
997 
998         g_MODIFIERS_rec.gl_class_id := Get_Gl_Class;
999 
1000         IF g_MODIFIERS_rec.gl_class_id IS NOT NULL THEN
1001 
1002             IF QP_Validate.Gl_Class(g_MODIFIERS_rec.gl_class_id)
1003             THEN
1004 
1005 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1006 
1007                 QP_Modifiers_Util.Clear_Dependent_Attr
1008                 (   p_attr_id                     => QP_Modifiers_Util.G_GL_CLASS
1009                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1010                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1011                 );
1012             ELSE
1013                 g_MODIFIERS_rec.gl_class_id := NULL;
1014             END IF;
1015 
1016         END IF;
1017 
1018     END IF;
1019 */
1020     IF g_MODIFIERS_rec.inventory_item_id = FND_API.G_MISS_NUM THEN
1021 
1022         g_MODIFIERS_rec.inventory_item_id := Get_Inventory_Item;
1023 
1024         IF g_MODIFIERS_rec.inventory_item_id IS NOT NULL THEN
1025 
1026             IF QP_Validate.Inventory_Item(g_MODIFIERS_rec.inventory_item_id)
1027             THEN
1028 
1029 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1030 
1031                 QP_Modifiers_Util.Clear_Dependent_Attr
1032                 (   p_attr_id                     => QP_Modifiers_Util.G_INVENTORY_ITEM
1033                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1034                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1035                 );
1036             ELSE
1037                 g_MODIFIERS_rec.inventory_item_id := NULL;
1038             END IF;
1039 
1040         END IF;
1041 
1042     END IF;
1043 
1044     IF g_MODIFIERS_rec.list_header_id = FND_API.G_MISS_NUM THEN
1045 
1046         g_MODIFIERS_rec.list_header_id := Get_List_Header;
1047 
1048         IF g_MODIFIERS_rec.list_header_id IS NOT NULL THEN
1049 
1050             IF QP_Validate.List_Header(g_MODIFIERS_rec.list_header_id)
1051             THEN
1052 
1053 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1054 
1055                 QP_Modifiers_Util.Clear_Dependent_Attr
1056                 (   p_attr_id                     => QP_Modifiers_Util.G_LIST_HEADER
1057                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1058                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1059                 );
1060             ELSE
1061                 g_MODIFIERS_rec.list_header_id := NULL;
1062             END IF;
1063 
1064         END IF;
1065 
1066     END IF;
1067 
1068     IF g_MODIFIERS_rec.list_line_id = FND_API.G_MISS_NUM THEN
1069 
1070         g_MODIFIERS_rec.list_line_id := Get_List_Line;
1071 
1072         IF g_MODIFIERS_rec.list_line_id IS NOT NULL THEN
1073 
1074             IF QP_Validate.List_Line(g_MODIFIERS_rec.list_line_id)
1075             THEN
1076 
1077 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1078 
1079                 QP_Modifiers_Util.Clear_Dependent_Attr
1080                 (   p_attr_id                     => QP_Modifiers_Util.G_LIST_LINE
1081                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1082                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1083                 );
1084             ELSE
1085                 g_MODIFIERS_rec.list_line_id := NULL;
1086             END IF;
1087 
1088         END IF;
1089 
1090     END IF;
1091 
1092     IF g_MODIFIERS_rec.list_line_type_code = FND_API.G_MISS_CHAR THEN
1093 
1094         g_MODIFIERS_rec.list_line_type_code := Get_List_Line_Type;
1095 
1096         IF g_MODIFIERS_rec.list_line_type_code IS NOT NULL THEN
1097 
1098             IF QP_Validate.List_Line_Type(g_MODIFIERS_rec.list_line_type_code)
1099             THEN
1100 
1101 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1102 
1103                 QP_Modifiers_Util.Clear_Dependent_Attr
1104                 (   p_attr_id                     => QP_Modifiers_Util.G_LIST_LINE_TYPE
1105                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1106                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1107                 );
1108             ELSE
1109                 g_MODIFIERS_rec.list_line_type_code := NULL;
1110             END IF;
1111 
1112         END IF;
1113 
1114     END IF;
1115 
1116     IF g_MODIFIERS_rec.list_price = FND_API.G_MISS_NUM THEN
1117 
1118         g_MODIFIERS_rec.list_price := Get_List_Price;
1119 
1120         IF g_MODIFIERS_rec.list_price IS NOT NULL THEN
1121 
1122             IF QP_Validate.List_Price(g_MODIFIERS_rec.list_price)
1123             THEN
1124 
1125 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1126 
1127                 QP_Modifiers_Util.Clear_Dependent_Attr
1128                 (   p_attr_id                     => QP_Modifiers_Util.G_LIST_PRICE
1129                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1130                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1131                 );
1132             ELSE
1133                 g_MODIFIERS_rec.list_price := NULL;
1134             END IF;
1135 
1136         END IF;
1137 
1138     END IF;
1139 
1140 /*    IF g_MODIFIERS_rec.list_price_uom_code = FND_API.G_MISS_CHAR THEN
1141 
1142         g_MODIFIERS_rec.list_price_uom_code := Get_List_Price_Uom;
1143 
1144         IF g_MODIFIERS_rec.list_price_uom_code IS NOT NULL THEN
1145 
1146             IF QP_Validate.List_Price_Uom(g_MODIFIERS_rec.list_price_uom_code)
1147             THEN
1148 
1149 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1150 
1151                 QP_Modifiers_Util.Clear_Dependent_Attr
1152                 (   p_attr_id                     => QP_Modifiers_Util.G_LIST_PRICE_UOM
1153                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1154                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1155                 );
1156             ELSE
1157                 g_MODIFIERS_rec.list_price_uom_code := NULL;
1158             END IF;
1159 
1160         END IF;
1161 
1162     END IF;
1163 */
1164     IF g_MODIFIERS_rec.modifier_level_code = FND_API.G_MISS_CHAR THEN
1165 
1166         g_MODIFIERS_rec.modifier_level_code := Get_Modifier_Level;
1167 
1168         IF g_MODIFIERS_rec.modifier_level_code IS NOT NULL THEN
1169 
1170             IF QP_Validate.Modifier_Level(g_MODIFIERS_rec.modifier_level_code)
1171             THEN
1172 
1173 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1174 
1175                 QP_Modifiers_Util.Clear_Dependent_Attr
1176                 (   p_attr_id                     => QP_Modifiers_Util.G_MODIFIER_LEVEL
1177                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1178                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1179                 );
1180             ELSE
1181                 g_MODIFIERS_rec.modifier_level_code := NULL;
1182             END IF;
1183 
1184         END IF;
1185 
1186     END IF;
1187 
1188 /*    IF g_MODIFIERS_rec.new_price = FND_API.G_MISS_NUM THEN
1189 
1190         g_MODIFIERS_rec.new_price := Get_New_Price;
1191 
1192         IF g_MODIFIERS_rec.new_price IS NOT NULL THEN
1193 
1194             IF QP_Validate.New_Price(g_MODIFIERS_rec.new_price)
1195             THEN
1196 
1197 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1198 
1199                 QP_Modifiers_Util.Clear_Dependent_Attr
1200                 (   p_attr_id                     => QP_Modifiers_Util.G_NEW_PRICE
1201                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1202                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1203                 );
1204             ELSE
1205                 g_MODIFIERS_rec.new_price := NULL;
1206             END IF;
1207 
1208         END IF;
1209 
1210     END IF;
1211 */
1212     IF g_MODIFIERS_rec.number_effective_periods = FND_API.G_MISS_NUM THEN
1213 
1214         g_MODIFIERS_rec.number_effective_periods := Get_Number_Effective_Periods;
1215 
1216         IF g_MODIFIERS_rec.number_effective_periods IS NOT NULL THEN
1217 
1218             IF QP_Validate.Number_Effective_Periods(g_MODIFIERS_rec.number_effective_periods)
1219             THEN
1220 
1221 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1222 
1223                 QP_Modifiers_Util.Clear_Dependent_Attr
1224                 (   p_attr_id                     => QP_Modifiers_Util.G_NUMBER_EFFECTIVE_PERIODS
1225                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1226                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1227                 );
1228             ELSE
1229                 g_MODIFIERS_rec.number_effective_periods := NULL;
1230             END IF;
1231 
1232         END IF;
1233 
1234     END IF;
1235 
1236     IF g_MODIFIERS_rec.operand = FND_API.G_MISS_NUM THEN
1237 
1238         g_MODIFIERS_rec.operand := Get_Operand;
1239 
1240         IF g_MODIFIERS_rec.operand IS NOT NULL THEN
1241 
1242             IF QP_Validate.Operand(g_MODIFIERS_rec.operand)
1243             THEN
1244 
1245 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1246 
1247                 QP_Modifiers_Util.Clear_Dependent_Attr
1248                 (   p_attr_id                     => QP_Modifiers_Util.G_OPERAND
1249                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1250                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1251                 );
1252             ELSE
1253                 g_MODIFIERS_rec.operand := NULL;
1254             END IF;
1255 
1256         END IF;
1257 
1258     END IF;
1259 
1260     IF g_MODIFIERS_rec.organization_id = FND_API.G_MISS_NUM THEN
1261 
1262         g_MODIFIERS_rec.organization_id := Get_Organization;
1263 
1264         IF g_MODIFIERS_rec.organization_id IS NOT NULL THEN
1265 
1266             IF QP_Validate.Organization(g_MODIFIERS_rec.organization_id)
1267             THEN
1268 
1269 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1270 
1271                 QP_Modifiers_Util.Clear_Dependent_Attr
1272                 (   p_attr_id                     => QP_Modifiers_Util.G_ORGANIZATION
1273                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1274                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1275                 );
1276             ELSE
1277                 g_MODIFIERS_rec.organization_id := NULL;
1278             END IF;
1279 
1280         END IF;
1281 
1282     END IF;
1283 
1284     IF g_MODIFIERS_rec.override_flag = FND_API.G_MISS_CHAR THEN
1285 
1286         g_MODIFIERS_rec.override_flag := Get_Override;
1287 
1288         IF g_MODIFIERS_rec.override_flag IS NOT NULL THEN
1289 
1290             IF QP_Validate.Override(g_MODIFIERS_rec.override_flag)
1291             THEN
1292 
1293 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1294 
1295                 QP_Modifiers_Util.Clear_Dependent_Attr
1296                 (   p_attr_id                     => QP_Modifiers_Util.G_OVERRIDE
1297                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1298                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1299                 );
1300             ELSE
1301                 g_MODIFIERS_rec.override_flag := NULL;
1302             END IF;
1303 
1304         END IF;
1305 
1306     END IF;
1307 
1308     IF g_MODIFIERS_rec.percent_price = FND_API.G_MISS_NUM THEN
1309 
1310         g_MODIFIERS_rec.percent_price := Get_Percent_Price;
1311 
1312         IF g_MODIFIERS_rec.percent_price IS NOT NULL THEN
1313 
1314             IF QP_Validate.Percent_Price(g_MODIFIERS_rec.percent_price)
1315             THEN
1316 
1317 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1318 
1319                 QP_Modifiers_Util.Clear_Dependent_Attr
1320                 (   p_attr_id                     => QP_Modifiers_Util.G_PERCENT_PRICE
1321                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1322                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1323                 );
1324             ELSE
1325                 g_MODIFIERS_rec.percent_price := NULL;
1326             END IF;
1327 
1328         END IF;
1329 
1330     END IF;
1331 
1332     IF g_MODIFIERS_rec.price_break_type_code = FND_API.G_MISS_CHAR THEN
1333 
1334         g_MODIFIERS_rec.price_break_type_code := Get_Price_Break_Type;
1335 
1336         IF g_MODIFIERS_rec.price_break_type_code IS NOT NULL THEN
1337 
1338             IF QP_Validate.Price_Break_Type(g_MODIFIERS_rec.price_break_type_code)
1339             THEN
1340 
1341 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1342 
1343                 QP_Modifiers_Util.Clear_Dependent_Attr
1344                 (   p_attr_id                     => QP_Modifiers_Util.G_PRICE_BREAK_TYPE
1345                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1346                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1347                 );
1348             ELSE
1349                 g_MODIFIERS_rec.price_break_type_code := NULL;
1350             END IF;
1351 
1352         END IF;
1353 
1354     END IF;
1355 
1356     IF g_MODIFIERS_rec.price_by_formula_id = FND_API.G_MISS_NUM THEN
1357 
1358         g_MODIFIERS_rec.price_by_formula_id := Get_Price_By_Formula;
1359 
1360         IF g_MODIFIERS_rec.price_by_formula_id IS NOT NULL THEN
1361 
1362             IF QP_Validate.Price_By_Formula(g_MODIFIERS_rec.price_by_formula_id)
1363             THEN
1364 
1365 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1366 
1367                 QP_Modifiers_Util.Clear_Dependent_Attr
1368                 (   p_attr_id                     => QP_Modifiers_Util.G_PRICE_BY_FORMULA
1369                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1370                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1371                 );
1372             ELSE
1373                 g_MODIFIERS_rec.price_by_formula_id := NULL;
1374             END IF;
1375 
1376         END IF;
1377 
1378     END IF;
1379 
1380     IF g_MODIFIERS_rec.primary_uom_flag = FND_API.G_MISS_CHAR THEN
1381 
1382         g_MODIFIERS_rec.primary_uom_flag := Get_Primary_Uom;
1383 
1384         IF g_MODIFIERS_rec.primary_uom_flag IS NOT NULL THEN
1385 
1386             IF QP_Validate.Primary_Uom(g_MODIFIERS_rec.primary_uom_flag)
1387             THEN
1388 
1389 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1390 
1391                 QP_Modifiers_Util.Clear_Dependent_Attr
1392                 (   p_attr_id                     => QP_Modifiers_Util.G_PRIMARY_UOM
1393                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1394                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1395                 );
1396             ELSE
1397                 g_MODIFIERS_rec.primary_uom_flag := NULL;
1398             END IF;
1399 
1400         END IF;
1401 
1402     END IF;
1403 
1404     IF g_MODIFIERS_rec.print_on_invoice_flag = FND_API.G_MISS_CHAR THEN
1405 
1406         g_MODIFIERS_rec.print_on_invoice_flag := Get_Print_On_Invoice;
1407 
1408         IF g_MODIFIERS_rec.print_on_invoice_flag IS NOT NULL THEN
1409 
1410             IF QP_Validate.Print_On_Invoice(g_MODIFIERS_rec.print_on_invoice_flag)
1411             THEN
1412 
1413 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1414 
1415                 QP_Modifiers_Util.Clear_Dependent_Attr
1416                 (   p_attr_id                     => QP_Modifiers_Util.G_PRINT_ON_INVOICE
1417                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1418                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1419                 );
1420             ELSE
1421                 g_MODIFIERS_rec.print_on_invoice_flag := NULL;
1422             END IF;
1423 
1424         END IF;
1425 
1426     END IF;
1427 
1428 /*    IF g_MODIFIERS_rec.rebate_subtype_code = FND_API.G_MISS_CHAR THEN
1429 
1430         g_MODIFIERS_rec.rebate_subtype_code := Get_Rebate_Subtype;
1431 
1432         IF g_MODIFIERS_rec.rebate_subtype_code IS NOT NULL THEN
1433 
1434             IF QP_Validate.Rebate_Subtype(g_MODIFIERS_rec.rebate_subtype_code)
1435             THEN
1436 
1437 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1438 
1439                 QP_Modifiers_Util.Clear_Dependent_Attr
1440                 (   p_attr_id                     => QP_Modifiers_Util.G_REBATE_SUBTYPE
1441                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1442                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1443                 );
1444             ELSE
1445                 g_MODIFIERS_rec.rebate_subtype_code := NULL;
1446             END IF;
1447 
1448         END IF;
1449 
1450     END IF;
1451 */
1452     IF g_MODIFIERS_rec.rebate_trxn_type_code = FND_API.G_MISS_CHAR THEN
1453 
1454         g_MODIFIERS_rec.rebate_trxn_type_code := Get_Rebate_Transaction_Type;
1455 
1456         IF g_MODIFIERS_rec.rebate_trxn_type_code IS NOT NULL THEN
1457 
1458             IF QP_Validate.Rebate_Transaction_Type(g_MODIFIERS_rec.rebate_trxn_type_code)
1459             THEN
1460 
1461 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1462 
1463                 QP_Modifiers_Util.Clear_Dependent_Attr
1464                 (   p_attr_id                     => QP_Modifiers_Util.G_REBATE_TRANSACTION_TYPE
1465                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1466                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1467                 );
1468             ELSE
1469                 g_MODIFIERS_rec.rebate_trxn_type_code := NULL;
1470             END IF;
1471 
1472         END IF;
1473 
1474     END IF;
1475 
1476     IF g_MODIFIERS_rec.related_item_id = FND_API.G_MISS_NUM THEN
1477 
1478         g_MODIFIERS_rec.related_item_id := Get_Related_Item;
1479 
1480         IF g_MODIFIERS_rec.related_item_id IS NOT NULL THEN
1481 
1482             IF QP_Validate.Related_Item(g_MODIFIERS_rec.related_item_id)
1483             THEN
1484 
1485 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1486 
1487                 QP_Modifiers_Util.Clear_Dependent_Attr
1488                 (   p_attr_id                     => QP_Modifiers_Util.G_RELATED_ITEM
1489                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1490                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1491                 );
1492             ELSE
1493                 g_MODIFIERS_rec.related_item_id := NULL;
1494             END IF;
1495 
1496         END IF;
1497 
1498     END IF;
1499 
1500     IF g_MODIFIERS_rec.relationship_type_id = FND_API.G_MISS_NUM THEN
1501 
1502         g_MODIFIERS_rec.relationship_type_id := Get_Relationship_Type;
1503 
1504         IF g_MODIFIERS_rec.relationship_type_id IS NOT NULL THEN
1505 
1506             IF QP_Validate.Relationship_Type(g_MODIFIERS_rec.relationship_type_id)
1507             THEN
1508 
1509 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1510 
1511                 QP_Modifiers_Util.Clear_Dependent_Attr
1512                 (   p_attr_id                     => QP_Modifiers_Util.G_RELATIONSHIP_TYPE
1513                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1514                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1515                 );
1516             ELSE
1517                 g_MODIFIERS_rec.relationship_type_id := NULL;
1518             END IF;
1519 
1520         END IF;
1521 
1522     END IF;
1523 
1524     IF g_MODIFIERS_rec.reprice_flag = FND_API.G_MISS_CHAR THEN
1525 
1526         g_MODIFIERS_rec.reprice_flag := Get_Reprice;
1527 
1528         IF g_MODIFIERS_rec.reprice_flag IS NOT NULL THEN
1529 
1530             IF QP_Validate.Reprice(g_MODIFIERS_rec.reprice_flag)
1531             THEN
1532 
1533 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1534 
1535                 QP_Modifiers_Util.Clear_Dependent_Attr
1536                 (   p_attr_id                     => QP_Modifiers_Util.G_REPRICE
1537                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1538                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1539                 );
1540             ELSE
1541                 g_MODIFIERS_rec.reprice_flag := NULL;
1542             END IF;
1543 
1544         END IF;
1545 
1546     END IF;
1547 
1548     IF g_MODIFIERS_rec.revision = FND_API.G_MISS_CHAR THEN
1549 
1550         g_MODIFIERS_rec.revision := Get_Revision;
1551 
1552         IF g_MODIFIERS_rec.revision IS NOT NULL THEN
1553 
1554             IF QP_Validate.Revision(g_MODIFIERS_rec.revision)
1555             THEN
1556 
1557 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1558 
1559                 QP_Modifiers_Util.Clear_Dependent_Attr
1560                 (   p_attr_id                     => QP_Modifiers_Util.G_REVISION
1561                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1562                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1563                 );
1564             ELSE
1565                 g_MODIFIERS_rec.revision := NULL;
1566             END IF;
1567 
1568         END IF;
1569 
1570     END IF;
1571 
1572     IF g_MODIFIERS_rec.revision_date = FND_API.G_MISS_DATE THEN
1573 
1574         g_MODIFIERS_rec.revision_date := Get_Revision_Date;
1575 
1576         IF g_MODIFIERS_rec.revision_date IS NOT NULL THEN
1577 
1578             IF QP_Validate.Revision_Date(g_MODIFIERS_rec.revision_date)
1579             THEN
1580 
1581 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1582 
1583                 QP_Modifiers_Util.Clear_Dependent_Attr
1584                 (   p_attr_id                     => QP_Modifiers_Util.G_REVISION_DATE
1585                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1586                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1587                 );
1588             ELSE
1589                 g_MODIFIERS_rec.revision_date := NULL;
1590             END IF;
1591 
1592         END IF;
1593 
1594     END IF;
1595 
1596     IF g_MODIFIERS_rec.revision_reason_code = FND_API.G_MISS_CHAR THEN
1597 
1598         g_MODIFIERS_rec.revision_reason_code := Get_Revision_Reason;
1599 
1600         IF g_MODIFIERS_rec.revision_reason_code IS NOT NULL THEN
1601 
1602             IF QP_Validate.Revision_Reason(g_MODIFIERS_rec.revision_reason_code)
1603             THEN
1604 
1605 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1606 
1607                 QP_Modifiers_Util.Clear_Dependent_Attr
1608                 (   p_attr_id                     => QP_Modifiers_Util.G_REVISION_REASON
1609                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1610                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1611                 );
1612             ELSE
1613                 g_MODIFIERS_rec.revision_reason_code := NULL;
1614             END IF;
1615 
1616         END IF;
1617 
1618     END IF;
1619 
1620     IF g_MODIFIERS_rec.start_date_active = FND_API.G_MISS_DATE THEN
1621 
1622         g_MODIFIERS_rec.start_date_active := Get_Start_Date_Active;
1623 
1624         IF g_MODIFIERS_rec.start_date_active IS NOT NULL THEN
1625 
1626             IF QP_Validate.Start_Date_Active(g_MODIFIERS_rec.start_date_active)
1627             THEN
1628 
1629 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1630 
1631                 QP_Modifiers_Util.Clear_Dependent_Attr
1632                 (   p_attr_id                     => QP_Modifiers_Util.G_START_DATE_ACTIVE
1633                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1634                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1635                 );
1636             ELSE
1637                 g_MODIFIERS_rec.start_date_active := NULL;
1638             END IF;
1639 
1640         END IF;
1641 
1642     END IF;
1643 
1644     IF g_MODIFIERS_rec.substitution_attribute = FND_API.G_MISS_CHAR THEN
1645 
1646         g_MODIFIERS_rec.substitution_attribute := Get_Substitution_Attribute;
1647 
1648         IF g_MODIFIERS_rec.substitution_attribute IS NOT NULL THEN
1649 
1650             IF QP_Validate.Substitution_Attribute(g_MODIFIERS_rec.substitution_attribute)
1651             THEN
1652 
1653 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1654 
1655                 QP_Modifiers_Util.Clear_Dependent_Attr
1656                 (   p_attr_id                     => QP_Modifiers_Util.G_SUBSTITUTION_ATTRIBUTE
1657                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1658                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1659                 );
1660             ELSE
1661                 g_MODIFIERS_rec.substitution_attribute := NULL;
1662             END IF;
1663 
1664         END IF;
1665 
1666     END IF;
1667 
1668     IF g_MODIFIERS_rec.substitution_context = FND_API.G_MISS_CHAR THEN
1669 
1670         g_MODIFIERS_rec.substitution_context := Get_Substitution_Context;
1671 
1672         IF g_MODIFIERS_rec.substitution_context IS NOT NULL THEN
1673 
1674             IF QP_Validate.Substitution_Context(g_MODIFIERS_rec.substitution_context)
1675             THEN
1676 
1677 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1678 
1679                 QP_Modifiers_Util.Clear_Dependent_Attr
1680                 (   p_attr_id                     => QP_Modifiers_Util.G_SUBSTITUTION_CONTEXT
1681                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1682                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1683                 );
1684             ELSE
1685                 g_MODIFIERS_rec.substitution_context := NULL;
1686             END IF;
1687 
1688         END IF;
1689 
1690     END IF;
1691 
1692     IF g_MODIFIERS_rec.substitution_value = FND_API.G_MISS_CHAR THEN
1693 
1694         g_MODIFIERS_rec.substitution_value := Get_Substitution_Value;
1695 
1696         IF g_MODIFIERS_rec.substitution_value IS NOT NULL THEN
1697 
1698             IF QP_Validate.Substitution_Value(g_MODIFIERS_rec.substitution_value)
1699             THEN
1700 
1701 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1702 
1703                 QP_Modifiers_Util.Clear_Dependent_Attr
1704                 (   p_attr_id                     => QP_Modifiers_Util.G_SUBSTITUTION_VALUE
1705                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1706                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1707                 );
1708             ELSE
1709                 g_MODIFIERS_rec.substitution_value := NULL;
1710             END IF;
1711 
1712         END IF;
1713 
1714     END IF;
1715 
1716     IF g_MODIFIERS_rec.product_precedence = FND_API.G_MISS_NUM THEN
1717 
1718         g_MODIFIERS_rec.product_precedence := Get_Product_Precedence;
1719 
1720         IF g_MODIFIERS_rec.product_precedence IS NOT NULL THEN
1721 
1722             IF QP_Validate.Product_Precedence(g_MODIFIERS_rec.product_precedence)
1723             THEN
1724 
1725 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1726 
1727                 QP_Modifiers_Util.Clear_Dependent_Attr
1728                 (   p_attr_id                     => QP_Modifiers_Util.G_PRODUCT_PRECEDENCE
1729                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1730                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1731                 );
1732             ELSE
1733                 g_MODIFIERS_rec.product_precedence := NULL;
1734             END IF;
1735 
1736         END IF;
1737 
1738     END IF;
1739 
1740     IF g_MODIFIERS_rec.expiration_period_start_date = FND_API.G_MISS_DATE THEN
1741 
1742         g_MODIFIERS_rec.expiration_period_start_date := Get_Exp_Period_Start_Date;
1743 
1744         IF g_MODIFIERS_rec.expiration_period_start_date IS NOT NULL THEN
1745 
1746             IF QP_Validate.Exp_Period_Start_Date(g_MODIFIERS_rec.expiration_period_start_date)
1747             THEN
1748 
1749 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1750 
1751                 QP_Modifiers_Util.Clear_Dependent_Attr
1752                 (   p_attr_id                     => QP_Modifiers_Util.G_EXPIRATION_PERIOD_START_DATE
1753                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1754                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1755                 );
1756             ELSE
1757                 g_MODIFIERS_rec.expiration_period_start_date := NULL;
1758             END IF;
1759 
1760         END IF;
1761 
1762     END IF;
1763 
1764     IF g_MODIFIERS_rec.number_expiration_periods = FND_API.G_MISS_NUM THEN
1765 
1766         g_MODIFIERS_rec.number_expiration_periods := Get_Number_Expiration_Periods;
1767 
1768         IF g_MODIFIERS_rec.number_expiration_periods IS NOT NULL THEN
1769 
1770             IF QP_Validate.Number_Expiration_Periods(g_MODIFIERS_rec.number_expiration_periods)
1771             THEN
1772 
1773 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1774 
1775                 QP_Modifiers_Util.Clear_Dependent_Attr
1776                 (   p_attr_id                     => QP_Modifiers_Util.G_NUMBER_EXPIRATION_PERIODS
1777                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1778                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1779                 );
1780             ELSE
1781                 g_MODIFIERS_rec.number_expiration_periods := NULL;
1782             END IF;
1783 
1784         END IF;
1785 
1786     END IF;
1787 
1788     IF g_MODIFIERS_rec.expiration_period_uom = FND_API.G_MISS_CHAR THEN
1789 
1790         g_MODIFIERS_rec.expiration_period_uom := Get_Expiration_Period_Uom;
1791 
1792         IF g_MODIFIERS_rec.expiration_period_uom IS NOT NULL THEN
1793 
1794             IF QP_Validate.Expiration_Period_Uom(g_MODIFIERS_rec.expiration_period_uom)
1795             THEN
1796 
1797 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1798 
1799                 QP_Modifiers_Util.Clear_Dependent_Attr
1800                 (   p_attr_id                     => QP_Modifiers_Util.G_EXPIRATION_PERIOD_UOM
1801                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1802                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1803                 );
1804             ELSE
1805                 g_MODIFIERS_rec.expiration_period_uom := NULL;
1806             END IF;
1807 
1808         END IF;
1809 
1810     END IF;
1811 
1812     IF g_MODIFIERS_rec.expiration_date = FND_API.G_MISS_DATE THEN
1813 
1814         g_MODIFIERS_rec.expiration_date := Get_Expiration_Date;
1815 
1816         IF g_MODIFIERS_rec.expiration_date IS NOT NULL THEN
1817 
1818             IF QP_Validate.Expiration_Date(g_MODIFIERS_rec.expiration_date)
1819             THEN
1820 
1821 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1822 
1823                 QP_Modifiers_Util.Clear_Dependent_Attr
1824                 (   p_attr_id                     => QP_Modifiers_Util.G_EXPIRATION_DATE
1825                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1826                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1827                 );
1828             ELSE
1829                 g_MODIFIERS_rec.expiration_date := NULL;
1830             END IF;
1831 
1832         END IF;
1833 
1834     END IF;
1835 
1836     IF g_MODIFIERS_rec.estim_gl_value = FND_API.G_MISS_NUM THEN
1837 
1838         g_MODIFIERS_rec.estim_gl_value := Get_Estim_Gl_Value;
1839 
1840         IF g_MODIFIERS_rec.estim_gl_value IS NOT NULL THEN
1841 
1842             IF QP_Validate.Estim_Gl_Value(g_MODIFIERS_rec.estim_gl_value)
1843             THEN
1844 
1845 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1846 
1847                 QP_Modifiers_Util.Clear_Dependent_Attr
1848                 (   p_attr_id                     => QP_Modifiers_Util.G_ESTIM_GL_VALUE
1849                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1850                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1851                 );
1852             ELSE
1853                 g_MODIFIERS_rec.estim_gl_value := NULL;
1854             END IF;
1855 
1856         END IF;
1857 
1858     END IF;
1859 
1860     IF g_MODIFIERS_rec.benefit_price_list_line_id = FND_API.G_MISS_NUM THEN
1861 
1862         g_MODIFIERS_rec.benefit_price_list_line_id := Get_Ben_Price_List_Line;
1863 
1864         IF g_MODIFIERS_rec.benefit_price_list_line_id IS NOT NULL THEN
1865 
1866             IF QP_Validate.Ben_Price_List_Line(g_MODIFIERS_rec.benefit_price_list_line_id)
1867             THEN
1868 
1869 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1870 
1871                 QP_Modifiers_Util.Clear_Dependent_Attr
1872                 (   p_attr_id                     => QP_Modifiers_Util.G_BENEFIT_PRICE_LIST_LINE
1873                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1874                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1875                 );
1876             ELSE
1877                 g_MODIFIERS_rec.benefit_price_list_line_id := NULL;
1878             END IF;
1879 
1880         END IF;
1881 
1882     END IF;
1883 
1884 /*    IF g_MODIFIERS_rec.recurring_flag = FND_API.G_MISS_CHAR THEN
1885 
1886         g_MODIFIERS_rec.recurring_flag := Get_Recurring;
1887 
1888         IF g_MODIFIERS_rec.recurring_flag IS NOT NULL THEN
1889 
1890             IF QP_Validate.Recurring(g_MODIFIERS_rec.recurring_flag)
1891             THEN
1892 
1893 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1894 
1895                 QP_Modifiers_Util.Clear_Dependent_Attr
1896                 (   p_attr_id                     => QP_Modifiers_Util.G_RECURRING_FLAG
1897                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1898                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1899                 );
1900             ELSE
1901                 g_MODIFIERS_rec.recurring_flag := NULL;
1902             END IF;
1903 
1904         END IF;
1905 
1906     END IF;
1907 */
1908     IF g_MODIFIERS_rec.benefit_limit = FND_API.G_MISS_NUM THEN
1909 
1910         g_MODIFIERS_rec.benefit_limit := Get_Benefit_Limit;
1911 
1912         IF g_MODIFIERS_rec.benefit_limit IS NOT NULL THEN
1913 
1914             IF QP_Validate.Benefit_Limit(g_MODIFIERS_rec.benefit_limit)
1915             THEN
1916 
1917 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1918 
1919                 QP_Modifiers_Util.Clear_Dependent_Attr
1920                 (   p_attr_id                     => QP_Modifiers_Util.G_BENEFIT_LIMIT
1921                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1922                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1923                 );
1924             ELSE
1925                 g_MODIFIERS_rec.benefit_limit := NULL;
1926             END IF;
1927 
1928         END IF;
1929 
1930     END IF;
1931 
1932     IF g_MODIFIERS_rec.charge_type_code = FND_API.G_MISS_CHAR THEN
1933 
1934         g_MODIFIERS_rec.charge_type_code := Get_Charge_Type;
1935 
1936         IF g_MODIFIERS_rec.charge_type_code IS NOT NULL THEN
1937 
1938             IF QP_Validate.Charge_Type(g_MODIFIERS_rec.charge_type_code)
1939             THEN
1940 
1941 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1942 
1943                 QP_Modifiers_Util.Clear_Dependent_Attr
1944                 (   p_attr_id                     => QP_Modifiers_Util.G_CHARGE_TYPE
1945                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1946                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1947                 );
1948             ELSE
1949                 g_MODIFIERS_rec.charge_type_code := NULL;
1950             END IF;
1951 
1952         END IF;
1953 
1954     END IF;
1955 
1956     IF g_MODIFIERS_rec.charge_subtype_code = FND_API.G_MISS_CHAR THEN
1957 
1958         g_MODIFIERS_rec.charge_subtype_code := Get_Charge_Subtype;
1959 
1960         IF g_MODIFIERS_rec.charge_subtype_code IS NOT NULL THEN
1961 
1962             IF QP_Validate.Charge_Subtype(g_MODIFIERS_rec.charge_subtype_code)
1963             THEN
1964 
1965 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1966 
1967                 QP_Modifiers_Util.Clear_Dependent_Attr
1968                 (   p_attr_id                     => QP_Modifiers_Util.G_CHARGE_SUBTYPE
1969                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1970                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1971                 );
1972             ELSE
1973                 g_MODIFIERS_rec.charge_subtype_code := NULL;
1974             END IF;
1975 
1976         END IF;
1977 
1978     END IF;
1979 
1980     IF g_MODIFIERS_rec.benefit_qty = FND_API.G_MISS_NUM THEN
1981 
1982         g_MODIFIERS_rec.benefit_qty := Get_Benefit_Qty;
1983 
1984         IF g_MODIFIERS_rec.benefit_qty IS NOT NULL THEN
1985 
1986             IF QP_Validate.Benefit_Qty(g_MODIFIERS_rec.benefit_qty)
1987             THEN
1988 
1989 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
1990 
1991                 QP_Modifiers_Util.Clear_Dependent_Attr
1992                 (   p_attr_id                     => QP_Modifiers_Util.G_BENEFIT_QTY
1993                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
1994                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
1995                 );
1996             ELSE
1997                 g_MODIFIERS_rec.benefit_qty := NULL;
1998             END IF;
1999 
2000         END IF;
2001 
2002     END IF;
2003 
2004     IF g_MODIFIERS_rec.benefit_uom_code = FND_API.G_MISS_CHAR THEN
2005 
2006         g_MODIFIERS_rec.benefit_uom_code := Get_Benefit_Uom;
2007 
2008         IF g_MODIFIERS_rec.benefit_uom_code IS NOT NULL THEN
2009 
2010             IF QP_Validate.Benefit_Uom(g_MODIFIERS_rec.benefit_uom_code)
2011             THEN
2012 
2013 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2014 
2015                 QP_Modifiers_Util.Clear_Dependent_Attr
2016                 (   p_attr_id                     => QP_Modifiers_Util.G_BENEFIT_UOM
2017                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2018                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2019                 );
2020             ELSE
2021                 g_MODIFIERS_rec.benefit_uom_code := NULL;
2022             END IF;
2023 
2024         END IF;
2025 
2026     END IF;
2027 
2028     IF g_MODIFIERS_rec.accrual_conversion_rate = FND_API.G_MISS_NUM THEN
2029 
2030         g_MODIFIERS_rec.accrual_conversion_rate := Get_Accrual_Conversion_Rate;
2031 
2032         IF g_MODIFIERS_rec.accrual_conversion_rate IS NOT NULL THEN
2033 
2034             IF QP_Validate.Accrual_Conversion_Rate(g_MODIFIERS_rec.accrual_conversion_rate)
2035             THEN
2036 
2037 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2038 
2039                 QP_Modifiers_Util.Clear_Dependent_Attr
2040                 (   p_attr_id                     => QP_Modifiers_Util.G_ACCRUAL_CONVERSION_RATE
2041                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2042                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2043                 );
2044             ELSE
2045                 g_MODIFIERS_rec.accrual_conversion_rate := NULL;
2046             END IF;
2047 
2048         END IF;
2049 
2050     END IF;
2051 
2052     IF g_MODIFIERS_rec.include_on_returns_flag = FND_API.G_MISS_CHAR THEN
2053 
2054         g_MODIFIERS_rec.include_on_returns_flag := Get_Include_On_Returns_Flag;
2055 
2056         IF g_MODIFIERS_rec.include_on_returns_flag IS NOT NULL THEN
2057 
2058             IF QP_Validate.Include_On_Returns_Flag(g_MODIFIERS_rec.include_on_returns_flag)
2059             THEN
2060 
2061 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2062 
2063                 QP_Modifiers_Util.Clear_Dependent_Attr
2064                 (   p_attr_id                     => QP_Modifiers_Util.G_INCLUDE_ON_RETURNS_FLAG
2065                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2066                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2067                 );
2068             ELSE
2069                 g_MODIFIERS_rec.include_on_returns_flag := NULL;
2070             END IF;
2071 
2072         END IF;
2073 
2074     END IF;
2075 
2076     IF g_MODIFIERS_rec.proration_type_code = FND_API.G_MISS_CHAR THEN
2077 
2078         g_MODIFIERS_rec.proration_type_code := Get_Proration_Type;
2079 
2080         IF g_MODIFIERS_rec.proration_type_code IS NOT NULL THEN
2081 
2082             IF QP_Validate.Proration_Type(g_MODIFIERS_rec.proration_type_code)
2083             THEN
2084 
2085 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2086 
2087                 QP_Modifiers_Util.Clear_Dependent_Attr
2088                 (   p_attr_id                     => QP_Modifiers_Util.G_PRORATION_TYPE
2089                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2090                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2091                 );
2092             ELSE
2093                 g_MODIFIERS_rec.proration_type_code := NULL;
2094             END IF;
2095 
2096         END IF;
2097 
2098     END IF;
2099 
2100     IF g_MODIFIERS_rec.from_rltd_modifier_id = FND_API.G_MISS_NUM THEN
2101 
2102         g_MODIFIERS_rec.from_rltd_modifier_id := Get_From_Rltd_Modifier;
2103 
2104         IF g_MODIFIERS_rec.from_rltd_modifier_id IS NOT NULL THEN
2105 
2106             IF QP_Validate.From_Rltd_Modifier(g_MODIFIERS_rec.from_rltd_modifier_id)
2107             THEN
2108 
2109 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2110 
2111                 QP_Modifiers_Util.Clear_Dependent_Attr
2112                 (   p_attr_id                     => QP_Modifiers_Util.G_FROM_RLTD_MODIFIER
2113                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2114                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2115                 );
2116             ELSE
2117                 g_MODIFIERS_rec.from_rltd_modifier_id := NULL;
2118             END IF;
2119 
2120         END IF;
2121 
2122     END IF;
2123 
2124     IF g_MODIFIERS_rec.to_rltd_modifier_id = FND_API.G_MISS_NUM THEN
2125 
2126         g_MODIFIERS_rec.to_rltd_modifier_id := Get_To_Rltd_Modifier;
2127 
2128         IF g_MODIFIERS_rec.to_rltd_modifier_id IS NOT NULL THEN
2129 
2130             IF QP_Validate.To_Rltd_Modifier(g_MODIFIERS_rec.to_rltd_modifier_id)
2131             THEN
2132 
2133 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2134 
2135                 QP_Modifiers_Util.Clear_Dependent_Attr
2136                 (   p_attr_id                     => QP_Modifiers_Util.G_TO_RLTD_MODIFIER
2137                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2138                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2139                 );
2140             ELSE
2141                 g_MODIFIERS_rec.to_rltd_modifier_id := NULL;
2142             END IF;
2143 
2144         END IF;
2145 
2146     END IF;
2147 
2148     IF g_MODIFIERS_rec.rltd_modifier_grp_no = FND_API.G_MISS_NUM THEN
2149 
2150         g_MODIFIERS_rec.rltd_modifier_grp_no := Get_Rltd_Modifier_Grp_No;
2151 
2152         IF g_MODIFIERS_rec.rltd_modifier_grp_no IS NOT NULL THEN
2153 
2154             IF QP_Validate.Rltd_Modifier_Grp_No(g_MODIFIERS_rec.rltd_modifier_grp_no)
2155             THEN
2156 
2157 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2158 
2159                 QP_Modifiers_Util.Clear_Dependent_Attr
2160                 (   p_attr_id                     => QP_Modifiers_Util.G_RLTD_MODIFIER_GRP_NO
2161                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2162                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2163                 );
2164             ELSE
2165                 g_MODIFIERS_rec.rltd_modifier_grp_no := NULL;
2166             END IF;
2167 
2168         END IF;
2169 
2170     END IF;
2171 
2172     IF g_MODIFIERS_rec.rltd_modifier_grp_type = FND_API.G_MISS_CHAR THEN
2173 
2174         g_MODIFIERS_rec.rltd_modifier_grp_type := Get_Rltd_Modifier_Grp_Type;
2175 
2176         IF g_MODIFIERS_rec.rltd_modifier_grp_type IS NOT NULL THEN
2177 
2178             IF QP_Validate.Rltd_Modifier_Grp_Type(g_MODIFIERS_rec.rltd_modifier_grp_type)
2179             THEN
2180 
2181 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2182 
2183                 QP_Modifiers_Util.Clear_Dependent_Attr
2184                 (   p_attr_id                     => QP_Modifiers_Util.G_RLTD_MODIFIER_GRP_TYPE
2185                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2186                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2187                 );
2188             ELSE
2189                 g_MODIFIERS_rec.rltd_modifier_grp_type := NULL;
2190             END IF;
2191 
2192         END IF;
2193 
2194     END IF;
2195 
2196     IF g_MODIFIERS_rec.accrual_flag = FND_API.G_MISS_CHAR THEN
2197 
2198         g_MODIFIERS_rec.accrual_flag := Get_Accrual;
2199 
2200         IF g_MODIFIERS_rec.accrual_flag IS NOT NULL THEN
2201 
2202             IF QP_Validate.Accrual_Flag(g_MODIFIERS_rec.accrual_flag)
2203             THEN
2204 
2205 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2206 
2207                 QP_Modifiers_Util.Clear_Dependent_Attr
2208                 (   p_attr_id                     => QP_Modifiers_Util.G_ACCRUAL_FLAG
2209                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2210                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2211                 );
2212             ELSE
2213                 g_MODIFIERS_rec.accrual_flag := NULL;
2214             END IF;
2215 
2216         END IF;
2217 
2218     END IF;
2219 
2220     IF g_MODIFIERS_rec.pricing_group_sequence = FND_API.G_MISS_NUM THEN
2221 
2222         g_MODIFIERS_rec.pricing_group_sequence :=
2223 Get_Pricing_Group_Sequence(g_MODIFIERS_rec.automatic_flag);
2224 
2225         IF g_MODIFIERS_rec.pricing_group_sequence IS NOT NULL THEN
2226 
2227             IF QP_Validate.Pricing_Group_Sequence(g_MODIFIERS_rec.pricing_group_sequence)
2228             THEN
2229 
2230 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2231 
2232                 QP_Modifiers_Util.Clear_Dependent_Attr
2233                 (   p_attr_id                     => QP_Modifiers_Util.G_PRICING_GROUP_SEQUENCE
2234                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2235                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2236                 );
2237             ELSE
2238                 g_MODIFIERS_rec.pricing_group_sequence := NULL;
2239             END IF;
2240 
2241         END IF;
2242 
2243     END IF;
2244 
2245     IF g_MODIFIERS_rec.incompatibility_grp_code = FND_API.G_MISS_CHAR THEN
2246 
2247         g_MODIFIERS_rec.incompatibility_grp_code :=
2248 Get_Incompatibility_Grp(g_MODIFIERS_rec.automatic_flag);
2249 
2250         IF g_MODIFIERS_rec.incompatibility_grp_code IS NOT NULL THEN
2251 
2252             IF QP_Validate.Incompatibility_Grp_Code(g_MODIFIERS_rec.incompatibility_grp_code)
2253             THEN
2254 
2255 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2256 
2257                 QP_Modifiers_Util.Clear_Dependent_Attr
2258                 (   p_attr_id                     => QP_Modifiers_Util.G_INCOMPATIBILITY_GRP_CODE
2259                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2260                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2261                 );
2262             ELSE
2263                 g_MODIFIERS_rec.incompatibility_grp_code := NULL;
2264             END IF;
2265 
2266         END IF;
2267 
2268     END IF;
2269 
2270     IF g_MODIFIERS_rec.list_line_no = FND_API.G_MISS_CHAR THEN
2271 -- changes for making the modifier no unique for logistics requirement
2272 -- defaulting the list_line_id for list_line_no
2273         g_MODIFIERS_rec.list_line_no := g_MODIFIERS_rec.list_line_id;
2274 
2275         IF g_MODIFIERS_rec.list_line_no IS NOT NULL THEN
2276 
2277             IF QP_Validate.List_Line_No(g_MODIFIERS_rec.list_line_no)
2278             THEN
2279 
2280 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2281 
2282                 QP_Modifiers_Util.Clear_Dependent_Attr
2283                 (   p_attr_id                     => QP_Modifiers_Util.G_LIST_LINE_NO
2284                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2285                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2286                 );
2287             ELSE
2288                 g_MODIFIERS_rec.list_line_no := NULL;
2289             END IF;
2290 
2291         END IF;
2292 
2293     END IF;
2294 
2295     IF g_MODIFIERS_rec.qualification_ind = FND_API.G_MISS_NUM THEN
2296 
2297         g_MODIFIERS_rec.qualification_ind := Get_qualification_ind;
2298 
2299 	oe_debug_pub.add('get_qualification_ind');
2300 
2301     END IF;
2302 
2303     /*
2304     IF g_MODIFIERS_rec.qualification_ind = FND_API.G_MISS_NUM THEN
2305 
2306         g_MODIFIERS_rec.qualification_ind := Get_qualification_ind;
2307 
2308         IF g_MODIFIERS_rec.qualification_ind IS NOT NULL THEN
2309 
2310             IF QP_Validate.qualification_ind(g_MODIFIERS_rec.qualification_ind)
2311             THEN
2312 
2313 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2314 
2315                 QP_Modifiers_Util.Clear_Dependent_Attr
2316                 (   p_attr_id                     => QP_Modifiers_Util.G_QUALIFICATION_IND
2317                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2318                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2319                 );
2320             ELSE
2321                 g_MODIFIERS_rec.qualification_ind := NULL;
2322             END IF;
2323 
2324         END IF;
2325 
2326     END IF;
2327     */
2328 
2329    IF g_MODIFIERS_rec.accum_attribute = FND_API.G_MISS_CHAR THEN
2330 
2331         g_MODIFIERS_rec.accum_attribute := Get_Accum_Attribute;
2332 
2333         IF g_MODIFIERS_rec.accum_attribute IS NOT NULL THEN
2334 
2335             IF QP_Validate.Accum_Attribute(g_MODIFIERS_rec.accum_attribute)
2336             THEN
2337 
2338 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2339 
2340                 QP_Modifiers_Util.Clear_Dependent_Attr
2341                 (   p_attr_id                     => QP_Modifiers_Util.G_ACCUM_ATTRIBUTE
2342                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2343                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2344                 );
2345             ELSE
2346                 g_MODIFIERS_rec.accum_attribute := NULL;
2347             END IF;
2348 
2349         END IF;
2350 
2351     END IF;
2352 
2353 IF g_MODIFIERS_rec.net_amount_flag = FND_API.G_MISS_CHAR THEN
2354 
2355         g_MODIFIERS_rec.net_amount_flag := Get_Net_Amount;
2356 
2357         IF g_MODIFIERS_rec.net_amount_flag IS NOT NULL THEN
2358 
2359             IF QP_Validate.Net_Amount(g_MODIFIERS_rec.net_amount_flag)
2360             THEN
2361 
2362 	        l_MODIFIERS_rec := g_MODIFIERS_rec; --[prarasto]
2363 
2364                 QP_Modifiers_Util.Clear_Dependent_Attr
2365                 (   p_attr_id                     => QP_Modifiers_Util.G_NET_AMOUNT
2366                 ,   p_MODIFIERS_rec               => l_MODIFIERS_rec
2367                 ,   x_MODIFIERS_rec               => g_MODIFIERS_rec
2368                 );
2369             ELSE
2370                 g_MODIFIERS_rec.net_amount_flag := NULL;
2371             END IF;
2372 
2373         END IF;
2374 
2375     END IF;
2376 
2377 
2378 
2379     IF g_MODIFIERS_rec.attribute1 = FND_API.G_MISS_CHAR
2380     OR  g_MODIFIERS_rec.attribute10 = FND_API.G_MISS_CHAR
2381     OR  g_MODIFIERS_rec.attribute11 = FND_API.G_MISS_CHAR
2382     OR  g_MODIFIERS_rec.attribute12 = FND_API.G_MISS_CHAR
2383     OR  g_MODIFIERS_rec.attribute13 = FND_API.G_MISS_CHAR
2384     OR  g_MODIFIERS_rec.attribute14 = FND_API.G_MISS_CHAR
2385     OR  g_MODIFIERS_rec.attribute15 = FND_API.G_MISS_CHAR
2386     OR  g_MODIFIERS_rec.attribute2 = FND_API.G_MISS_CHAR
2387     OR  g_MODIFIERS_rec.attribute3 = FND_API.G_MISS_CHAR
2388     OR  g_MODIFIERS_rec.attribute4 = FND_API.G_MISS_CHAR
2389     OR  g_MODIFIERS_rec.attribute5 = FND_API.G_MISS_CHAR
2390     OR  g_MODIFIERS_rec.attribute6 = FND_API.G_MISS_CHAR
2391     OR  g_MODIFIERS_rec.attribute7 = FND_API.G_MISS_CHAR
2392     OR  g_MODIFIERS_rec.attribute8 = FND_API.G_MISS_CHAR
2393     OR  g_MODIFIERS_rec.attribute9 = FND_API.G_MISS_CHAR
2394     OR  g_MODIFIERS_rec.context = FND_API.G_MISS_CHAR
2395     THEN
2396 
2397         Get_Flex_Modifiers;
2398 
2399     END IF;
2400 
2401     IF g_MODIFIERS_rec.created_by = FND_API.G_MISS_NUM THEN
2402 
2403         g_MODIFIERS_rec.created_by := NULL;
2404 
2405     END IF;
2406 
2407     IF g_MODIFIERS_rec.creation_date = FND_API.G_MISS_DATE THEN
2408 
2409         g_MODIFIERS_rec.creation_date := NULL;
2410 
2411     END IF;
2412 
2413     IF g_MODIFIERS_rec.last_updated_by = FND_API.G_MISS_NUM THEN
2414 
2415         g_MODIFIERS_rec.last_updated_by := NULL;
2416 
2417     END IF;
2418 
2419     IF g_MODIFIERS_rec.last_update_date = FND_API.G_MISS_DATE THEN
2420 
2421         g_MODIFIERS_rec.last_update_date := NULL;
2422 
2423     END IF;
2424 
2425     IF g_MODIFIERS_rec.last_update_login = FND_API.G_MISS_NUM THEN
2426 
2427         g_MODIFIERS_rec.last_update_login := NULL;
2428 
2429     END IF;
2430 
2431     IF g_MODIFIERS_rec.program_application_id = FND_API.G_MISS_NUM THEN
2432 
2433         g_MODIFIERS_rec.program_application_id := NULL;
2434 
2435     END IF;
2436 
2437     IF g_MODIFIERS_rec.program_id = FND_API.G_MISS_NUM THEN
2438 
2439         g_MODIFIERS_rec.program_id := NULL;
2440 
2441     END IF;
2442 
2443     IF g_MODIFIERS_rec.program_update_date = FND_API.G_MISS_DATE THEN
2444 
2445         g_MODIFIERS_rec.program_update_date := NULL;
2446 
2447     END IF;
2448 
2449     IF g_MODIFIERS_rec.request_id = FND_API.G_MISS_NUM THEN
2450 
2451         g_MODIFIERS_rec.request_id := NULL;
2452 
2453     END IF;
2454 
2455     --  Redefault if there are any missing attributes.
2456 
2457     IF  g_MODIFIERS_rec.arithmetic_operator = FND_API.G_MISS_CHAR
2458     OR  g_MODIFIERS_rec.attribute1 = FND_API.G_MISS_CHAR
2459     OR  g_MODIFIERS_rec.attribute10 = FND_API.G_MISS_CHAR
2460     OR  g_MODIFIERS_rec.attribute11 = FND_API.G_MISS_CHAR
2461     OR  g_MODIFIERS_rec.attribute12 = FND_API.G_MISS_CHAR
2462     OR  g_MODIFIERS_rec.attribute13 = FND_API.G_MISS_CHAR
2463     OR  g_MODIFIERS_rec.attribute14 = FND_API.G_MISS_CHAR
2464     OR  g_MODIFIERS_rec.attribute15 = FND_API.G_MISS_CHAR
2465     OR  g_MODIFIERS_rec.attribute2 = FND_API.G_MISS_CHAR
2466     OR  g_MODIFIERS_rec.attribute3 = FND_API.G_MISS_CHAR
2467     OR  g_MODIFIERS_rec.attribute4 = FND_API.G_MISS_CHAR
2468     OR  g_MODIFIERS_rec.attribute5 = FND_API.G_MISS_CHAR
2469     OR  g_MODIFIERS_rec.attribute6 = FND_API.G_MISS_CHAR
2470     OR  g_MODIFIERS_rec.attribute7 = FND_API.G_MISS_CHAR
2471     OR  g_MODIFIERS_rec.attribute8 = FND_API.G_MISS_CHAR
2472     OR  g_MODIFIERS_rec.attribute9 = FND_API.G_MISS_CHAR
2473     OR  g_MODIFIERS_rec.automatic_flag = FND_API.G_MISS_CHAR
2474 --    OR  g_MODIFIERS_rec.base_qty = FND_API.G_MISS_NUM
2475     OR  g_MODIFIERS_rec.pricing_phase_id = FND_API.G_MISS_NUM
2476 --    OR  g_MODIFIERS_rec.base_uom_code = FND_API.G_MISS_CHAR
2477     OR  g_MODIFIERS_rec.comments = FND_API.G_MISS_CHAR
2478     OR  g_MODIFIERS_rec.context = FND_API.G_MISS_CHAR
2479     OR  g_MODIFIERS_rec.created_by = FND_API.G_MISS_NUM
2480     OR  g_MODIFIERS_rec.creation_date = FND_API.G_MISS_DATE
2481     OR  g_MODIFIERS_rec.effective_period_uom = FND_API.G_MISS_CHAR
2482     OR  g_MODIFIERS_rec.end_date_active = FND_API.G_MISS_DATE
2483     OR  g_MODIFIERS_rec.estim_accrual_rate = FND_API.G_MISS_NUM
2484     OR  g_MODIFIERS_rec.generate_using_formula_id = FND_API.G_MISS_NUM
2485 --    OR  g_MODIFIERS_rec.gl_class_id = FND_API.G_MISS_NUM
2486     OR  g_MODIFIERS_rec.inventory_item_id = FND_API.G_MISS_NUM
2487     OR  g_MODIFIERS_rec.last_updated_by = FND_API.G_MISS_NUM
2488     OR  g_MODIFIERS_rec.last_update_date = FND_API.G_MISS_DATE
2489     OR  g_MODIFIERS_rec.last_update_login = FND_API.G_MISS_NUM
2490     OR  g_MODIFIERS_rec.list_header_id = FND_API.G_MISS_NUM
2491     OR  g_MODIFIERS_rec.list_line_id = FND_API.G_MISS_NUM
2492     OR  g_MODIFIERS_rec.list_line_type_code = FND_API.G_MISS_CHAR
2493     OR  g_MODIFIERS_rec.list_price = FND_API.G_MISS_NUM
2494 --    OR  g_MODIFIERS_rec.list_price_uom_code = FND_API.G_MISS_CHAR
2495     OR  g_MODIFIERS_rec.modifier_level_code = FND_API.G_MISS_CHAR
2496 --    OR  g_MODIFIERS_rec.new_price = FND_API.G_MISS_NUM
2497     OR  g_MODIFIERS_rec.number_effective_periods = FND_API.G_MISS_NUM
2498     OR  g_MODIFIERS_rec.operand = FND_API.G_MISS_NUM
2499     OR  g_MODIFIERS_rec.organization_id = FND_API.G_MISS_NUM
2500     OR  g_MODIFIERS_rec.override_flag = FND_API.G_MISS_CHAR
2501     OR  g_MODIFIERS_rec.percent_price = FND_API.G_MISS_NUM
2502     OR  g_MODIFIERS_rec.price_break_type_code = FND_API.G_MISS_CHAR
2503     OR  g_MODIFIERS_rec.price_by_formula_id = FND_API.G_MISS_NUM
2504     OR  g_MODIFIERS_rec.primary_uom_flag = FND_API.G_MISS_CHAR
2505     OR  g_MODIFIERS_rec.print_on_invoice_flag = FND_API.G_MISS_CHAR
2506     OR  g_MODIFIERS_rec.program_application_id = FND_API.G_MISS_NUM
2507     OR  g_MODIFIERS_rec.program_id = FND_API.G_MISS_NUM
2508     OR  g_MODIFIERS_rec.program_update_date = FND_API.G_MISS_DATE
2509 --    OR  g_MODIFIERS_rec.rebate_subtype_code = FND_API.G_MISS_CHAR
2510     OR  g_MODIFIERS_rec.rebate_trxn_type_code = FND_API.G_MISS_CHAR
2511     OR  g_MODIFIERS_rec.related_item_id = FND_API.G_MISS_NUM
2512     OR  g_MODIFIERS_rec.relationship_type_id = FND_API.G_MISS_NUM
2513     OR  g_MODIFIERS_rec.reprice_flag = FND_API.G_MISS_CHAR
2514     OR  g_MODIFIERS_rec.request_id = FND_API.G_MISS_NUM
2515     OR  g_MODIFIERS_rec.revision = FND_API.G_MISS_CHAR
2516     OR  g_MODIFIERS_rec.revision_date = FND_API.G_MISS_DATE
2517     OR  g_MODIFIERS_rec.revision_reason_code = FND_API.G_MISS_CHAR
2518     OR  g_MODIFIERS_rec.start_date_active = FND_API.G_MISS_DATE
2519     OR  g_MODIFIERS_rec.substitution_attribute = FND_API.G_MISS_CHAR
2520     OR  g_MODIFIERS_rec.substitution_context = FND_API.G_MISS_CHAR
2521     OR  g_MODIFIERS_rec.substitution_value = FND_API.G_MISS_CHAR
2522     OR  g_MODIFIERS_rec.product_precedence = FND_API.G_MISS_NUM
2523     OR  g_MODIFIERS_rec.expiration_period_start_date = FND_API.G_MISS_DATE
2524     OR  g_MODIFIERS_rec.number_expiration_periods = FND_API.G_MISS_NUM
2525     OR  g_MODIFIERS_rec.expiration_period_uom = FND_API.G_MISS_CHAR
2526     OR  g_MODIFIERS_rec.expiration_date = FND_API.G_MISS_DATE
2527     OR  g_MODIFIERS_rec.estim_gl_value = FND_API.G_MISS_NUM
2528     OR  g_MODIFIERS_rec.benefit_price_list_line_id = FND_API.G_MISS_NUM
2529 --    OR  g_MODIFIERS_rec.recurring_flag = FND_API.G_MISS_CHAR
2530     OR  g_MODIFIERS_rec.benefit_limit = FND_API.G_MISS_NUM
2531     OR  g_MODIFIERS_rec.charge_type_code = FND_API.G_MISS_CHAR
2532     OR  g_MODIFIERS_rec.charge_subtype_code = FND_API.G_MISS_CHAR
2533     OR  g_MODIFIERS_rec.benefit_qty = FND_API.G_MISS_NUM
2534     OR  g_MODIFIERS_rec.benefit_uom_code = FND_API.G_MISS_CHAR
2535     OR  g_MODIFIERS_rec.accrual_conversion_rate = FND_API.G_MISS_NUM
2536     OR  g_MODIFIERS_rec.include_on_returns_flag = FND_API.G_MISS_CHAR
2537     OR  g_MODIFIERS_rec.proration_type_code = FND_API.G_MISS_CHAR
2538     OR  g_MODIFIERS_rec.accrual_flag = FND_API.G_MISS_CHAR
2539     OR  g_MODIFIERS_rec.pricing_group_sequence = FND_API.G_MISS_NUM
2540     OR  g_MODIFIERS_rec.incompatibility_grp_code = FND_API.G_MISS_CHAR
2541     OR  g_MODIFIERS_rec.list_line_no = FND_API.G_MISS_CHAR
2542     OR  g_MODIFIERS_rec.from_rltd_modifier_id = FND_API.G_MISS_NUM
2543     OR  g_MODIFIERS_rec.to_rltd_modifier_id = FND_API.G_MISS_NUM
2544     OR  g_MODIFIERS_rec.rltd_modifier_grp_no = FND_API.G_MISS_NUM
2545     OR  g_MODIFIERS_rec.rltd_modifier_grp_type = FND_API.G_MISS_CHAR
2546     OR  g_MODIFIERS_rec.net_amount_flag = FND_API.G_MISS_CHAR
2547     THEN
2548 
2549         QP_Default_Modifiers.Attributes
2550         (   p_MODIFIERS_rec               => g_MODIFIERS_rec
2551         ,   p_iteration                   => p_iteration + 1
2552         ,   x_MODIFIERS_rec               => x_MODIFIERS_rec
2553         );
2554 
2555     ELSE
2556 
2557         --  Done defaulting attributes
2558 
2559         x_MODIFIERS_rec := g_MODIFIERS_rec;
2560 
2561     END IF;
2562 
2563 oe_debug_pub.add('END Attributes in QPXDMLLB');
2564 
2565 END Attributes;
2566 
2567 END QP_Default_Modifiers;