[Home] [Help]
PACKAGE BODY: APPS.MRP_DEFAULT_ASSIGNMENT
Source
1 PACKAGE BODY MRP_Default_Assignment AS
2 /* $Header: MRPDASNB.pls 115.2 99/07/16 12:18:34 porting ship $ */
3
4 -- Global constant holding the package name
5
6 G_PKG_NAME CONSTANT VARCHAR2(30) := 'MRP_Default_Assignment';
7
8 -- Boolean table type.
9
10 TYPE Boolean_Tbl_Type IS TABLE OF BOOLEAN
11 INDEX BY BINARY_INTEGER;
12
13 -- Package global used within the package.
14
15 g_Assignment_rec MRP_Src_Assignment_PUB.Assignment_Rec_Type;
16
17 -- Get functions.
18
19 FUNCTION Get_Assignment_Id
20 RETURN NUMBER
21 IS
22 l_Assignment_Id NUMBER;
23 BEGIN
24
25 SELECT mrp_sr_assignments_s.nextval
26 INTO l_Assignment_Id
27 FROM DUAL;
28
29 RETURN l_Assignment_Id;
30
31 END Get_Assignment_Id;
32
33 FUNCTION Get_Assignment_Set_Id
34 RETURN NUMBER
35 IS
36 BEGIN
37
38 RETURN NULL;
39
40 END Get_Assignment_Set_Id;
41
42 FUNCTION Get_Assignment_Type
43 RETURN NUMBER
44 IS
45 BEGIN
46
47 RETURN NULL;
48
49 END Get_Assignment_Type;
50
51 FUNCTION Get_Attribute1
52 RETURN VARCHAR2
53 IS
54 BEGIN
55
56 RETURN NULL;
57
58 END Get_Attribute1;
59
60 FUNCTION Get_Attribute10
61 RETURN VARCHAR2
62 IS
63 BEGIN
64
65 RETURN NULL;
66
67 END Get_Attribute10;
68
69 FUNCTION Get_Attribute11
70 RETURN VARCHAR2
71 IS
72 BEGIN
73
74 RETURN NULL;
75
76 END Get_Attribute11;
77
78 FUNCTION Get_Attribute12
79 RETURN VARCHAR2
80 IS
81 BEGIN
82
83 RETURN NULL;
84
85 END Get_Attribute12;
86
87 FUNCTION Get_Attribute13
88 RETURN VARCHAR2
89 IS
90 BEGIN
91
92 RETURN NULL;
93
94 END Get_Attribute13;
95
96 FUNCTION Get_Attribute14
97 RETURN VARCHAR2
98 IS
99 BEGIN
100
101 RETURN NULL;
102
103 END Get_Attribute14;
104
105 FUNCTION Get_Attribute15
106 RETURN VARCHAR2
107 IS
108 BEGIN
109
110 RETURN NULL;
111
112 END Get_Attribute15;
113
114 FUNCTION Get_Attribute2
115 RETURN VARCHAR2
116 IS
117 BEGIN
118
119 RETURN NULL;
120
121 END Get_Attribute2;
122
123 FUNCTION Get_Attribute3
124 RETURN VARCHAR2
125 IS
126 BEGIN
127
128 RETURN NULL;
129
130 END Get_Attribute3;
131
132 FUNCTION Get_Attribute4
133 RETURN VARCHAR2
134 IS
135 BEGIN
136
137 RETURN NULL;
138
139 END Get_Attribute4;
140
141 FUNCTION Get_Attribute5
142 RETURN VARCHAR2
143 IS
144 BEGIN
145
146 RETURN NULL;
147
148 END Get_Attribute5;
149
150 FUNCTION Get_Attribute6
151 RETURN VARCHAR2
152 IS
153 BEGIN
154
155 RETURN NULL;
156
157 END Get_Attribute6;
158
159 FUNCTION Get_Attribute7
160 RETURN VARCHAR2
161 IS
162 BEGIN
163
164 RETURN NULL;
165
166 END Get_Attribute7;
167
168 FUNCTION Get_Attribute8
169 RETURN VARCHAR2
170 IS
171 BEGIN
172
173 RETURN NULL;
174
175 END Get_Attribute8;
176
177 FUNCTION Get_Attribute9
178 RETURN VARCHAR2
179 IS
180 BEGIN
181
182 RETURN NULL;
183
184 END Get_Attribute9;
185
186 FUNCTION Get_Attribute_Category
187 RETURN VARCHAR2
188 IS
189 BEGIN
190
191 RETURN NULL;
192
193 END Get_Attribute_Category;
194
195 FUNCTION Get_Category_Id
196 RETURN NUMBER
197 IS
198 BEGIN
199
200 RETURN NULL;
201
202 END Get_Category_Id;
203
204 FUNCTION Get_Category_Set_Id
205 RETURN NUMBER
206 IS
207 l_category_set_id NUMBER := NULL;
208 BEGIN
209
210 l_category_set_id := FND_PROFILE.value('MRP_SRA_CATEGORY_SET');
211
212 RETURN l_category_set_id;
213
214 END Get_Category_Set_Id;
215
216 FUNCTION Get_Created_By
217 RETURN NUMBER
218 IS
219 BEGIN
220
221 RETURN NULL;
222
223 END Get_Created_By;
224
225 FUNCTION Get_Creation_Date
226 RETURN DATE
227 IS
228 BEGIN
229
230 RETURN NULL;
231
232 END Get_Creation_Date;
233
234 FUNCTION Get_Customer_Id
235 RETURN NUMBER
236 IS
237 BEGIN
238
239 RETURN NULL;
240
241 END Get_Customer_Id;
242
243 FUNCTION Get_Inventory_Item_Id
244 RETURN NUMBER
245 IS
246 BEGIN
247
248 RETURN NULL;
249
250 END Get_Inventory_Item_Id;
251
252 FUNCTION Get_Last_Updated_By
253 RETURN NUMBER
254 IS
255 BEGIN
256
257 RETURN NULL;
258
259 END Get_Last_Updated_By;
260
261 FUNCTION Get_Last_Update_Date
262 RETURN DATE
263 IS
264 BEGIN
265
266 RETURN NULL;
267
268 END Get_Last_Update_Date;
269
270 FUNCTION Get_Last_Update_Login
271 RETURN NUMBER
272 IS
273 BEGIN
274
275 RETURN NULL;
276
277 END Get_Last_Update_Login;
278
279 FUNCTION Get_Organization_Id
280 RETURN NUMBER
281 IS
282 BEGIN
283
284 RETURN NULL;
285
286 END Get_Organization_Id;
287
288 FUNCTION Get_Program_Application_Id
289 RETURN NUMBER
290 IS
291 BEGIN
292
293 RETURN NULL;
294
295 END Get_Program_Application_Id;
296
297 FUNCTION Get_Program_Id
298 RETURN NUMBER
299 IS
300 BEGIN
301
302 RETURN NULL;
303
304 END Get_Program_Id;
305
306 FUNCTION Get_Program_Update_Date
307 RETURN DATE
308 IS
309 BEGIN
310
311 RETURN NULL;
312
313 END Get_Program_Update_Date;
314
315 FUNCTION Get_Request_Id
316 RETURN NUMBER
317 IS
318 BEGIN
319
320 RETURN NULL;
321
322 END Get_Request_Id;
323
324 FUNCTION Get_Secondary_Inventory
325 RETURN VARCHAR2
326 IS
327 BEGIN
328
329 RETURN NULL;
330
331 END Get_Secondary_Inventory;
332
333 FUNCTION Get_Ship_To_Site_Id
334 RETURN NUMBER
335 IS
336 BEGIN
337
338 RETURN NULL;
339
340 END Get_Ship_To_Site_Id;
341
342 FUNCTION Get_Sourcing_Rule_Id
343 RETURN NUMBER
344 IS
345 BEGIN
346
347 RETURN NULL;
348
349 END Get_Sourcing_Rule_Id;
350
351 FUNCTION Get_Sourcing_Rule_Type
352 RETURN NUMBER
353 IS
354 BEGIN
355
356 RETURN NULL;
357
358 END Get_Sourcing_Rule_Type;
359
360 -- Procedure Attributes
361
362 PROCEDURE Attributes
363 ( p_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type :=
364 MRP_Src_Assignment_PUB.G_MISS_ASSIGNMENT_REC
365 , p_iteration IN NUMBER := 1
366 , x_Assignment_rec OUT MRP_Src_Assignment_PUB.Assignment_Rec_Type
367 )
368 IS
369 l_changed_column_tbl Boolean_Tbl_Type;
370 BEGIN
371
372 -- Check number of iterations.
373
374 IF p_iteration > MRP_Globals.G_MAX_DEF_ITERATIONS THEN
375
376 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
377 THEN
378
379 FND_MESSAGE.SET_NAME('MRP','BOI_DEF_MAX_ITERATION');
380 FND_MSG_PUB.Add;
381
382 END IF;
383
384 RAISE FND_API.G_EXC_ERROR;
385
386 END IF;
387
388 -- Initialize g_Assignment_rec
389
390 g_Assignment_rec := p_Assignment_rec;
391
392 -- Default missing attributes.
393
394
395 IF g_Assignment_rec.Assignment_Id = FND_API.G_MISS_NUM THEN
396
397 g_Assignment_rec.Assignment_Id := Get_Assignment_Id;
398
399 END IF;
400
401
402 IF g_Assignment_rec.Assignment_Set_Id = FND_API.G_MISS_NUM THEN
403
404 g_Assignment_rec.Assignment_Set_Id := Get_Assignment_Set_Id;
405
406 IF g_Assignment_rec.Assignment_Set_Id IS NOT NULL THEN
407
408 IF MRP_Validate_Assignment.Val_Assignment_Set_Id
409 ( g_Assignment_rec.Assignment_Set_Id )
410 THEN
411
412 MRP_Assignment_Util.Clear_Dependent_Attr
413 ( p_attr_id => MRP_Assignment_Util.G_ASSIGNMENT_SET_ID
414 , p_Assignment_rec => g_Assignment_rec
415 , x_Assignment_rec => g_Assignment_rec
416 );
417 ELSE
418 g_Assignment_rec.Assignment_Set_Id := NULL;
419 END IF;
420
421 END IF;
422
423 END IF;
424
425 IF g_Assignment_rec.Assignment_Type = FND_API.G_MISS_NUM THEN
426
427 g_Assignment_rec.Assignment_Type := Get_Assignment_Type;
428
429 IF g_Assignment_rec.Assignment_Type IS NOT NULL THEN
430
431 IF MRP_Validate_Assignment.Val_Assignment_Type
432 ( g_Assignment_rec.Assignment_Type )
433 THEN
434
435 MRP_Assignment_Util.Clear_Dependent_Attr
436 ( p_attr_id => MRP_Assignment_Util.G_ASSIGNMENT_TYPE
437 , p_Assignment_rec => g_Assignment_rec
438 , x_Assignment_rec => g_Assignment_rec
439 );
440 ELSE
441 g_Assignment_rec.Assignment_Type := NULL;
442 END IF;
443
444 END IF;
445
446 END IF;
447
448 IF g_Assignment_rec.Attribute1 = FND_API.G_MISS_CHAR THEN
449
450 g_Assignment_rec.Attribute1 := Get_Attribute1;
451
452 IF g_Assignment_rec.Attribute1 IS NOT NULL THEN
453
454 IF MRP_Validate_Assignment.Val_Attribute1
455 ( g_Assignment_rec.Attribute1 )
456 THEN
457
458 MRP_Assignment_Util.Clear_Dependent_Attr
459 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE1
460 , p_Assignment_rec => g_Assignment_rec
461 , x_Assignment_rec => g_Assignment_rec
462 );
463 ELSE
464 g_Assignment_rec.Attribute1 := NULL;
465 END IF;
466
467 END IF;
468
469 END IF;
470
471 IF g_Assignment_rec.Attribute10 = FND_API.G_MISS_CHAR THEN
472
473 g_Assignment_rec.Attribute10 := Get_Attribute10;
474
475 IF g_Assignment_rec.Attribute10 IS NOT NULL THEN
476
477 IF MRP_Validate_Assignment.Val_Attribute10
478 ( g_Assignment_rec.Attribute10 )
479 THEN
480
481 MRP_Assignment_Util.Clear_Dependent_Attr
482 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE10
483 , p_Assignment_rec => g_Assignment_rec
484 , x_Assignment_rec => g_Assignment_rec
485 );
486 ELSE
487 g_Assignment_rec.Attribute10 := NULL;
488 END IF;
489
490 END IF;
491
492 END IF;
493
494 IF g_Assignment_rec.Attribute11 = FND_API.G_MISS_CHAR THEN
495
496 g_Assignment_rec.Attribute11 := Get_Attribute11;
497
498 IF g_Assignment_rec.Attribute11 IS NOT NULL THEN
499
500 IF MRP_Validate_Assignment.Val_Attribute11
501 ( g_Assignment_rec.Attribute11 )
502 THEN
503
504 MRP_Assignment_Util.Clear_Dependent_Attr
505 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE11
506 , p_Assignment_rec => g_Assignment_rec
507 , x_Assignment_rec => g_Assignment_rec
508 );
509 ELSE
510 g_Assignment_rec.Attribute11 := NULL;
511 END IF;
512
513 END IF;
514
515 END IF;
516
517 IF g_Assignment_rec.Attribute12 = FND_API.G_MISS_CHAR THEN
518
519 g_Assignment_rec.Attribute12 := Get_Attribute12;
520
521 IF g_Assignment_rec.Attribute12 IS NOT NULL THEN
522
523 IF MRP_Validate_Assignment.Val_Attribute12
524 ( g_Assignment_rec.Attribute12 )
525 THEN
526
527 MRP_Assignment_Util.Clear_Dependent_Attr
528 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE12
529 , p_Assignment_rec => g_Assignment_rec
530 , x_Assignment_rec => g_Assignment_rec
531 );
532 ELSE
533 g_Assignment_rec.Attribute12 := NULL;
534 END IF;
535
536 END IF;
537
538 END IF;
539
540 IF g_Assignment_rec.Attribute13 = FND_API.G_MISS_CHAR THEN
541
542 g_Assignment_rec.Attribute13 := Get_Attribute13;
543
544 IF g_Assignment_rec.Attribute13 IS NOT NULL THEN
545
546 IF MRP_Validate_Assignment.Val_Attribute13
547 ( g_Assignment_rec.Attribute13 )
548 THEN
549
550 MRP_Assignment_Util.Clear_Dependent_Attr
551 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE13
552 , p_Assignment_rec => g_Assignment_rec
553 , x_Assignment_rec => g_Assignment_rec
554 );
555 ELSE
556 g_Assignment_rec.Attribute13 := NULL;
557 END IF;
558
559 END IF;
560
561 END IF;
562
563 IF g_Assignment_rec.Attribute14 = FND_API.G_MISS_CHAR THEN
564
565 g_Assignment_rec.Attribute14 := Get_Attribute14;
566
567 IF g_Assignment_rec.Attribute14 IS NOT NULL THEN
568
569 IF MRP_Validate_Assignment.Val_Attribute14
570 ( g_Assignment_rec.Attribute14 )
571 THEN
572
573 MRP_Assignment_Util.Clear_Dependent_Attr
574 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE14
575 , p_Assignment_rec => g_Assignment_rec
576 , x_Assignment_rec => g_Assignment_rec
577 );
578 ELSE
579 g_Assignment_rec.Attribute14 := NULL;
580 END IF;
581
582 END IF;
583
584 END IF;
585
586 IF g_Assignment_rec.Attribute15 = FND_API.G_MISS_CHAR THEN
587
588 g_Assignment_rec.Attribute15 := Get_Attribute15;
589
590 IF g_Assignment_rec.Attribute15 IS NOT NULL THEN
591
592 IF MRP_Validate_Assignment.Val_Attribute15
593 ( g_Assignment_rec.Attribute15 )
594 THEN
595
596 MRP_Assignment_Util.Clear_Dependent_Attr
597 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE15
598 , p_Assignment_rec => g_Assignment_rec
599 , x_Assignment_rec => g_Assignment_rec
600 );
601 ELSE
602 g_Assignment_rec.Attribute15 := NULL;
603 END IF;
604
605 END IF;
606
607 END IF;
608
609 IF g_Assignment_rec.Attribute2 = FND_API.G_MISS_CHAR THEN
610
611 g_Assignment_rec.Attribute2 := Get_Attribute2;
612
613 IF g_Assignment_rec.Attribute2 IS NOT NULL THEN
614
615 IF MRP_Validate_Assignment.Val_Attribute2
616 ( g_Assignment_rec.Attribute2 )
617 THEN
618
619 MRP_Assignment_Util.Clear_Dependent_Attr
620 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE2
621 , p_Assignment_rec => g_Assignment_rec
622 , x_Assignment_rec => g_Assignment_rec
623 );
624 ELSE
625 g_Assignment_rec.Attribute2 := NULL;
626 END IF;
627
628 END IF;
629
630 END IF;
631
632 IF g_Assignment_rec.Attribute3 = FND_API.G_MISS_CHAR THEN
633
634 g_Assignment_rec.Attribute3 := Get_Attribute3;
635
636 IF g_Assignment_rec.Attribute3 IS NOT NULL THEN
637
638 IF MRP_Validate_Assignment.Val_Attribute3
639 ( g_Assignment_rec.Attribute3 )
640 THEN
641
642 MRP_Assignment_Util.Clear_Dependent_Attr
643 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE3
644 , p_Assignment_rec => g_Assignment_rec
645 , x_Assignment_rec => g_Assignment_rec
646 );
647 ELSE
648 g_Assignment_rec.Attribute3 := NULL;
649 END IF;
650
651 END IF;
652
653 END IF;
654
655 IF g_Assignment_rec.Attribute4 = FND_API.G_MISS_CHAR THEN
656
657 g_Assignment_rec.Attribute4 := Get_Attribute4;
658
659 IF g_Assignment_rec.Attribute4 IS NOT NULL THEN
660
661 IF MRP_Validate_Assignment.Val_Attribute4
662 ( g_Assignment_rec.Attribute4 )
663 THEN
664
665 MRP_Assignment_Util.Clear_Dependent_Attr
666 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE4
667 , p_Assignment_rec => g_Assignment_rec
668 , x_Assignment_rec => g_Assignment_rec
669 );
670 ELSE
671 g_Assignment_rec.Attribute4 := NULL;
672 END IF;
673
674 END IF;
675
676 END IF;
677
678 IF g_Assignment_rec.Attribute5 = FND_API.G_MISS_CHAR THEN
679
680 g_Assignment_rec.Attribute5 := Get_Attribute5;
681
682 IF g_Assignment_rec.Attribute5 IS NOT NULL THEN
683
684 IF MRP_Validate_Assignment.Val_Attribute5
685 ( g_Assignment_rec.Attribute5 )
686 THEN
687
688 MRP_Assignment_Util.Clear_Dependent_Attr
689 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE5
690 , p_Assignment_rec => g_Assignment_rec
691 , x_Assignment_rec => g_Assignment_rec
692 );
693 ELSE
694 g_Assignment_rec.Attribute5 := NULL;
695 END IF;
696
697 END IF;
698
699 END IF;
700
701 IF g_Assignment_rec.Attribute6 = FND_API.G_MISS_CHAR THEN
702
703 g_Assignment_rec.Attribute6 := Get_Attribute6;
704
705 IF g_Assignment_rec.Attribute6 IS NOT NULL THEN
706
707 IF MRP_Validate_Assignment.Val_Attribute6
708 ( g_Assignment_rec.Attribute6 )
709 THEN
710
711 MRP_Assignment_Util.Clear_Dependent_Attr
712 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE6
713 , p_Assignment_rec => g_Assignment_rec
714 , x_Assignment_rec => g_Assignment_rec
715 );
716 ELSE
717 g_Assignment_rec.Attribute6 := NULL;
718 END IF;
719
720 END IF;
721
722 END IF;
723
724 IF g_Assignment_rec.Attribute7 = FND_API.G_MISS_CHAR THEN
725
726 g_Assignment_rec.Attribute7 := Get_Attribute7;
727
728 IF g_Assignment_rec.Attribute7 IS NOT NULL THEN
729
730 IF MRP_Validate_Assignment.Val_Attribute7
731 ( g_Assignment_rec.Attribute7 )
732 THEN
733
734 MRP_Assignment_Util.Clear_Dependent_Attr
735 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE7
736 , p_Assignment_rec => g_Assignment_rec
737 , x_Assignment_rec => g_Assignment_rec
738 );
739 ELSE
740 g_Assignment_rec.Attribute7 := NULL;
741 END IF;
742
743 END IF;
744
745 END IF;
746
747 IF g_Assignment_rec.Attribute8 = FND_API.G_MISS_CHAR THEN
748
749 g_Assignment_rec.Attribute8 := Get_Attribute8;
750
751 IF g_Assignment_rec.Attribute8 IS NOT NULL THEN
752
753 IF MRP_Validate_Assignment.Val_Attribute8
754 ( g_Assignment_rec.Attribute8 )
755 THEN
756
757 MRP_Assignment_Util.Clear_Dependent_Attr
758 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE8
759 , p_Assignment_rec => g_Assignment_rec
760 , x_Assignment_rec => g_Assignment_rec
761 );
762 ELSE
763 g_Assignment_rec.Attribute8 := NULL;
764 END IF;
765
766 END IF;
767
768 END IF;
769
770 IF g_Assignment_rec.Attribute9 = FND_API.G_MISS_CHAR THEN
771
772 g_Assignment_rec.Attribute9 := Get_Attribute9;
773
774 IF g_Assignment_rec.Attribute9 IS NOT NULL THEN
775
776 IF MRP_Validate_Assignment.Val_Attribute9
777 ( g_Assignment_rec.Attribute9 )
778 THEN
779
780 MRP_Assignment_Util.Clear_Dependent_Attr
781 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE9
782 , p_Assignment_rec => g_Assignment_rec
783 , x_Assignment_rec => g_Assignment_rec
784 );
785 ELSE
786 g_Assignment_rec.Attribute9 := NULL;
787 END IF;
788
789 END IF;
790
791 END IF;
792
793 IF g_Assignment_rec.Attribute_Category = FND_API.G_MISS_CHAR THEN
794
795 g_Assignment_rec.Attribute_Category := Get_Attribute_Category;
796
797 IF g_Assignment_rec.Attribute_Category IS NOT NULL THEN
798
799 IF MRP_Validate_Assignment.Val_Attribute_Category
800 ( g_Assignment_rec.Attribute_Category )
801 THEN
802
803 MRP_Assignment_Util.Clear_Dependent_Attr
804 ( p_attr_id => MRP_Assignment_Util.G_ATTRIBUTE_CATEGORY
805 , p_Assignment_rec => g_Assignment_rec
806 , x_Assignment_rec => g_Assignment_rec
807 );
808 ELSE
809 g_Assignment_rec.Attribute_Category := NULL;
810 END IF;
811
812 END IF;
813
814 END IF;
815
816 IF g_Assignment_rec.Category_Id = FND_API.G_MISS_NUM THEN
817
818 g_Assignment_rec.Category_Id := Get_Category_Id;
819
820 IF g_Assignment_rec.Category_Id IS NOT NULL THEN
821
822 IF MRP_Validate_Assignment.Val_Category_Id
823 ( g_Assignment_rec.Category_Set_Id,
824 g_Assignment_rec.Category_Id )
825 THEN
826
827 MRP_Assignment_Util.Clear_Dependent_Attr
828 ( p_attr_id => MRP_Assignment_Util.G_CATEGORY_ID
829 , p_Assignment_rec => g_Assignment_rec
830 , x_Assignment_rec => g_Assignment_rec
831 );
832 ELSE
833 g_Assignment_rec.Category_Id := NULL;
834 END IF;
835
836 END IF;
837
838 END IF;
839
840 IF g_Assignment_rec.Category_Set_Id = FND_API.G_MISS_NUM THEN
841
842 g_Assignment_rec.Category_Set_Id := Get_Category_Set_Id;
843
844 IF g_Assignment_rec.Category_Set_Id IS NOT NULL THEN
845
846 IF MRP_Validate_Assignment.Val_Category_Set_Id
847 ( g_Assignment_rec.Category_Set_Id )
848 THEN
849
850 MRP_Assignment_Util.Clear_Dependent_Attr
851 ( p_attr_id => MRP_Assignment_Util.G_CATEGORY_SET_ID
852 , p_Assignment_rec => g_Assignment_rec
853 , x_Assignment_rec => g_Assignment_rec
854 );
855 ELSE
856 g_Assignment_rec.Category_Set_Id := NULL;
857 END IF;
858
859 END IF;
860
861 END IF;
862
863 IF g_Assignment_rec.Created_By = FND_API.G_MISS_NUM THEN
864
865 g_Assignment_rec.Created_By := Get_Created_By;
866
867 IF g_Assignment_rec.Created_By IS NOT NULL THEN
868
869 IF MRP_Validate_Assignment.Val_Created_By
870 ( g_Assignment_rec.Created_By )
871 THEN
872
873 MRP_Assignment_Util.Clear_Dependent_Attr
874 ( p_attr_id => MRP_Assignment_Util.G_CREATED_BY
875 , p_Assignment_rec => g_Assignment_rec
876 , x_Assignment_rec => g_Assignment_rec
877 );
878 ELSE
879 g_Assignment_rec.Created_By := NULL;
880 END IF;
881
882 END IF;
883
884 END IF;
885
886 IF g_Assignment_rec.Creation_Date = FND_API.G_MISS_DATE THEN
887
888 g_Assignment_rec.Creation_Date := Get_Creation_Date;
889
890 IF g_Assignment_rec.Creation_Date IS NOT NULL THEN
891
892 IF MRP_Validate_Assignment.Val_Creation_Date
893 ( g_Assignment_rec.Creation_Date )
894 THEN
895
896 MRP_Assignment_Util.Clear_Dependent_Attr
897 ( p_attr_id => MRP_Assignment_Util.G_CREATION_DATE
898 , p_Assignment_rec => g_Assignment_rec
899 , x_Assignment_rec => g_Assignment_rec
900 );
901 ELSE
902 g_Assignment_rec.Creation_Date := NULL;
903 END IF;
904
905 END IF;
906
907 END IF;
908
909 IF g_Assignment_rec.Customer_Id = FND_API.G_MISS_NUM THEN
910
911 g_Assignment_rec.Customer_Id := Get_Customer_Id;
912
913 IF g_Assignment_rec.Customer_Id IS NOT NULL THEN
914
915 IF MRP_Validate_Assignment.Val_Customer_Id
916 ( g_Assignment_rec.Customer_Id )
917 THEN
918
919 MRP_Assignment_Util.Clear_Dependent_Attr
920 ( p_attr_id => MRP_Assignment_Util.G_CUSTOMER_ID
921 , p_Assignment_rec => g_Assignment_rec
922 , x_Assignment_rec => g_Assignment_rec
923 );
924 ELSE
925 g_Assignment_rec.Customer_Id := NULL;
926 END IF;
927
928 END IF;
929
930 END IF;
931
932 IF g_Assignment_rec.Inventory_Item_Id = FND_API.G_MISS_NUM THEN
933
934 g_Assignment_rec.Inventory_Item_Id := Get_Inventory_Item_Id;
935
936 IF g_Assignment_rec.Inventory_Item_Id IS NOT NULL THEN
937
938 IF MRP_Validate_Assignment.Val_Inventory_Item_Id
939 ( g_Assignment_rec.Organization_Id,
940 g_Assignment_rec.Inventory_Item_Id )
941 THEN
942
943 MRP_Assignment_Util.Clear_Dependent_Attr
944 ( p_attr_id => MRP_Assignment_Util.G_INVENTORY_ITEM_ID
945 , p_Assignment_rec => g_Assignment_rec
946 , x_Assignment_rec => g_Assignment_rec
947 );
948 ELSE
949 g_Assignment_rec.Inventory_Item_Id := NULL;
950 END IF;
951
952 END IF;
953
954 END IF;
955
956 IF g_Assignment_rec.Last_Updated_By = FND_API.G_MISS_NUM THEN
957
958 g_Assignment_rec.Last_Updated_By := Get_Last_Updated_By;
959
960 IF g_Assignment_rec.Last_Updated_By IS NOT NULL THEN
961
962 IF MRP_Validate_Assignment.Val_Last_Updated_By
963 ( g_Assignment_rec.Last_Updated_By )
964 THEN
965
966 MRP_Assignment_Util.Clear_Dependent_Attr
967 ( p_attr_id => MRP_Assignment_Util.G_LAST_UPDATED_BY
968 , p_Assignment_rec => g_Assignment_rec
969 , x_Assignment_rec => g_Assignment_rec
970 );
971 ELSE
972 g_Assignment_rec.Last_Updated_By := NULL;
973 END IF;
974
975 END IF;
976
977 END IF;
978
979 IF g_Assignment_rec.Last_Update_Date = FND_API.G_MISS_DATE THEN
980
981 g_Assignment_rec.Last_Update_Date := Get_Last_Update_Date;
982
983 IF g_Assignment_rec.Last_Update_Date IS NOT NULL THEN
984
985 IF MRP_Validate_Assignment.Val_Last_Update_Date
986 ( g_Assignment_rec.Last_Update_Date )
987 THEN
988
989 MRP_Assignment_Util.Clear_Dependent_Attr
990 ( p_attr_id => MRP_Assignment_Util.G_LAST_UPDATE_DATE
991 , p_Assignment_rec => g_Assignment_rec
992 , x_Assignment_rec => g_Assignment_rec
993 );
994 ELSE
995 g_Assignment_rec.Last_Update_Date := NULL;
996 END IF;
997
998 END IF;
999
1000 END IF;
1001
1002 IF g_Assignment_rec.Last_Update_Login = FND_API.G_MISS_NUM THEN
1003
1004 g_Assignment_rec.Last_Update_Login := Get_Last_Update_Login;
1005
1006 IF g_Assignment_rec.Last_Update_Login IS NOT NULL THEN
1007
1008 IF MRP_Validate_Assignment.Val_Last_Update_Login
1009 ( g_Assignment_rec.Last_Update_Login )
1010 THEN
1011
1012 MRP_Assignment_Util.Clear_Dependent_Attr
1013 ( p_attr_id => MRP_Assignment_Util.G_LAST_UPDATE_LOGIN
1014 , p_Assignment_rec => g_Assignment_rec
1015 , x_Assignment_rec => g_Assignment_rec
1016 );
1017 ELSE
1018 g_Assignment_rec.Last_Update_Login := NULL;
1019 END IF;
1020
1021 END IF;
1022
1023 END IF;
1024
1025 IF g_Assignment_rec.Organization_Id = FND_API.G_MISS_NUM THEN
1026
1027 g_Assignment_rec.Organization_Id := Get_Organization_Id;
1028
1029 IF g_Assignment_rec.Organization_Id IS NOT NULL THEN
1030
1031 IF MRP_Validate_Assignment.Val_Organization_Id
1032 ( g_Assignment_rec.Organization_Id )
1033 THEN
1034
1035 MRP_Assignment_Util.Clear_Dependent_Attr
1036 ( p_attr_id => MRP_Assignment_Util.G_ORGANIZATION_ID
1037 , p_Assignment_rec => g_Assignment_rec
1038 , x_Assignment_rec => g_Assignment_rec
1039 );
1040 ELSE
1041 g_Assignment_rec.Organization_Id := NULL;
1042 END IF;
1043
1044 END IF;
1045
1046 END IF;
1047
1048 IF g_Assignment_rec.Program_Application_Id = FND_API.G_MISS_NUM THEN
1049
1050 g_Assignment_rec.Program_Application_Id := Get_Program_Application_Id;
1051
1052 IF g_Assignment_rec.Program_Application_Id IS NOT NULL THEN
1053
1054 IF MRP_Validate_Assignment.Val_Program_Application_Id
1055 ( g_Assignment_rec.Program_Application_Id )
1056 THEN
1057
1058 MRP_Assignment_Util.Clear_Dependent_Attr
1059 ( p_attr_id => MRP_Assignment_Util.G_PROGRAM_APPLICATION_ID
1060 , p_Assignment_rec => g_Assignment_rec
1061 , x_Assignment_rec => g_Assignment_rec
1062 );
1063 ELSE
1064 g_Assignment_rec.Program_Application_Id := NULL;
1065 END IF;
1066
1067 END IF;
1068
1069 END IF;
1070
1071 IF g_Assignment_rec.Program_Id = FND_API.G_MISS_NUM THEN
1072
1073 g_Assignment_rec.Program_Id := Get_Program_Id;
1074
1075 IF g_Assignment_rec.Program_Id IS NOT NULL THEN
1076
1077 IF MRP_Validate_Assignment.Val_Program_Id
1078 ( g_Assignment_rec.Program_Id )
1079 THEN
1080
1081 MRP_Assignment_Util.Clear_Dependent_Attr
1082 ( p_attr_id => MRP_Assignment_Util.G_PROGRAM_ID
1083 , p_Assignment_rec => g_Assignment_rec
1084 , x_Assignment_rec => g_Assignment_rec
1085 );
1086 ELSE
1087 g_Assignment_rec.Program_Id := NULL;
1088 END IF;
1089
1090 END IF;
1091
1092 END IF;
1093
1094 IF g_Assignment_rec.Program_Update_Date = FND_API.G_MISS_DATE THEN
1095
1096 g_Assignment_rec.Program_Update_Date := Get_Program_Update_Date;
1097
1098 IF g_Assignment_rec.Program_Update_Date IS NOT NULL THEN
1099
1100 IF MRP_Validate_Assignment.Val_Program_Update_Date
1101 ( g_Assignment_rec.Program_Update_Date )
1102 THEN
1103
1104 MRP_Assignment_Util.Clear_Dependent_Attr
1105 ( p_attr_id => MRP_Assignment_Util.G_PROGRAM_UPDATE_DATE
1106 , p_Assignment_rec => g_Assignment_rec
1107 , x_Assignment_rec => g_Assignment_rec
1108 );
1109 ELSE
1110 g_Assignment_rec.Program_Update_Date := NULL;
1111 END IF;
1112
1113 END IF;
1114
1115 END IF;
1116
1117 IF g_Assignment_rec.Request_Id = FND_API.G_MISS_NUM THEN
1118
1119 g_Assignment_rec.Request_Id := Get_Request_Id;
1120
1121 IF g_Assignment_rec.Request_Id IS NOT NULL THEN
1122
1123 IF MRP_Validate_Assignment.Val_Request_Id
1124 ( g_Assignment_rec.Request_Id )
1125 THEN
1126
1127 MRP_Assignment_Util.Clear_Dependent_Attr
1128 ( p_attr_id => MRP_Assignment_Util.G_REQUEST_ID
1129 , p_Assignment_rec => g_Assignment_rec
1130 , x_Assignment_rec => g_Assignment_rec
1131 );
1132 ELSE
1133 g_Assignment_rec.Request_Id := NULL;
1134 END IF;
1135
1136 END IF;
1137
1138 END IF;
1139
1140 IF g_Assignment_rec.Secondary_Inventory = FND_API.G_MISS_CHAR THEN
1141
1142 g_Assignment_rec.Secondary_Inventory := Get_Secondary_Inventory;
1143
1144 IF g_Assignment_rec.Secondary_Inventory IS NOT NULL THEN
1145
1146 IF MRP_Validate_Assignment.Val_Secondary_Inventory
1147 ( g_Assignment_rec.Secondary_Inventory )
1148 THEN
1149
1150 MRP_Assignment_Util.Clear_Dependent_Attr
1151 ( p_attr_id => MRP_Assignment_Util.G_SECONDARY_INVENTORY
1152 , p_Assignment_rec => g_Assignment_rec
1153 , x_Assignment_rec => g_Assignment_rec
1154 );
1155 ELSE
1156 g_Assignment_rec.Secondary_Inventory := NULL;
1157 END IF;
1158
1159 END IF;
1160
1161 END IF;
1162
1163 IF g_Assignment_rec.Ship_To_Site_Id = FND_API.G_MISS_NUM THEN
1164
1165 g_Assignment_rec.Ship_To_Site_Id := Get_Ship_To_Site_Id;
1166
1167 IF g_Assignment_rec.Ship_To_Site_Id IS NOT NULL THEN
1168
1169 IF MRP_Validate_Assignment.Val_Ship_To_Site_Id
1170 ( g_Assignment_rec.Customer_Id,
1171 g_Assignment_rec.Ship_To_Site_Id )
1172 THEN
1173
1174 MRP_Assignment_Util.Clear_Dependent_Attr
1175 ( p_attr_id => MRP_Assignment_Util.G_SHIP_TO_SITE_ID
1176 , p_Assignment_rec => g_Assignment_rec
1177 , x_Assignment_rec => g_Assignment_rec
1178 );
1179 ELSE
1180 g_Assignment_rec.Ship_To_Site_Id := NULL;
1181 END IF;
1182
1183 END IF;
1184
1185 END IF;
1186
1187 IF g_Assignment_rec.Sourcing_Rule_Id = FND_API.G_MISS_NUM THEN
1188
1189 g_Assignment_rec.Sourcing_Rule_Id := Get_Sourcing_Rule_Id;
1190
1191 IF g_Assignment_rec.Sourcing_Rule_Id IS NOT NULL THEN
1192
1193 IF MRP_Validate_Assignment.Val_Sourcing_Rule_Id
1194 ( g_Assignment_rec.Sourcing_Rule_Id,
1195 g_Assignment_rec.Sourcing_Rule_Type )
1196 THEN
1197
1198 MRP_Assignment_Util.Clear_Dependent_Attr
1199 ( p_attr_id => MRP_Assignment_Util.G_SOURCING_RULE_ID
1200 , p_Assignment_rec => g_Assignment_rec
1201 , x_Assignment_rec => g_Assignment_rec
1202 );
1203 ELSE
1204 g_Assignment_rec.Sourcing_Rule_Id := NULL;
1205 END IF;
1206
1207 END IF;
1208
1209 END IF;
1210
1211 IF g_Assignment_rec.Sourcing_Rule_Type = FND_API.G_MISS_NUM THEN
1212
1213 g_Assignment_rec.Sourcing_Rule_Type := Get_Sourcing_Rule_Type;
1214
1215 IF g_Assignment_rec.Sourcing_Rule_Type IS NOT NULL THEN
1216
1217 IF MRP_Validate_Assignment.Val_Sourcing_Rule_Type
1218 ( g_Assignment_rec.Sourcing_Rule_Type )
1219 THEN
1220
1221 MRP_Assignment_Util.Clear_Dependent_Attr
1222 ( p_attr_id => MRP_Assignment_Util.G_SOURCING_RULE_TYPE
1223 , p_Assignment_rec => g_Assignment_rec
1224 , x_Assignment_rec => g_Assignment_rec
1225 );
1226 ELSE
1227 g_Assignment_rec.Sourcing_Rule_Type := NULL;
1228 END IF;
1229
1230 END IF;
1231
1232 END IF;
1233
1234 -- Redefault if there are any missing attributes.
1235
1236 IF g_Assignment_rec.Assignment_Id = FND_API.G_MISS_NUM
1237 OR g_Assignment_rec.Assignment_Set_Id = FND_API.G_MISS_NUM
1238 OR g_Assignment_rec.Assignment_Type = FND_API.G_MISS_NUM
1239 OR g_Assignment_rec.Attribute1 = FND_API.G_MISS_CHAR
1240 OR g_Assignment_rec.Attribute10 = FND_API.G_MISS_CHAR
1241 OR g_Assignment_rec.Attribute11 = FND_API.G_MISS_CHAR
1242 OR g_Assignment_rec.Attribute12 = FND_API.G_MISS_CHAR
1243 OR g_Assignment_rec.Attribute13 = FND_API.G_MISS_CHAR
1244 OR g_Assignment_rec.Attribute14 = FND_API.G_MISS_CHAR
1245 OR g_Assignment_rec.Attribute15 = FND_API.G_MISS_CHAR
1246 OR g_Assignment_rec.Attribute2 = FND_API.G_MISS_CHAR
1247 OR g_Assignment_rec.Attribute3 = FND_API.G_MISS_CHAR
1248 OR g_Assignment_rec.Attribute4 = FND_API.G_MISS_CHAR
1249 OR g_Assignment_rec.Attribute5 = FND_API.G_MISS_CHAR
1250 OR g_Assignment_rec.Attribute6 = FND_API.G_MISS_CHAR
1251 OR g_Assignment_rec.Attribute7 = FND_API.G_MISS_CHAR
1252 OR g_Assignment_rec.Attribute8 = FND_API.G_MISS_CHAR
1253 OR g_Assignment_rec.Attribute9 = FND_API.G_MISS_CHAR
1254 OR g_Assignment_rec.Attribute_Category = FND_API.G_MISS_CHAR
1255 OR g_Assignment_rec.Category_Id = FND_API.G_MISS_NUM
1256 OR g_Assignment_rec.Category_Set_Id = FND_API.G_MISS_NUM
1257 OR g_Assignment_rec.Created_By = FND_API.G_MISS_NUM
1258 OR g_Assignment_rec.Creation_Date = FND_API.G_MISS_DATE
1259 OR g_Assignment_rec.Customer_Id = FND_API.G_MISS_NUM
1260 OR g_Assignment_rec.Inventory_Item_Id = FND_API.G_MISS_NUM
1261 OR g_Assignment_rec.Last_Updated_By = FND_API.G_MISS_NUM
1262 OR g_Assignment_rec.Last_Update_Date = FND_API.G_MISS_DATE
1263 OR g_Assignment_rec.Last_Update_Login = FND_API.G_MISS_NUM
1264 OR g_Assignment_rec.Organization_Id = FND_API.G_MISS_NUM
1265 OR g_Assignment_rec.Program_Application_Id = FND_API.G_MISS_NUM
1266 OR g_Assignment_rec.Program_Id = FND_API.G_MISS_NUM
1267 OR g_Assignment_rec.Program_Update_Date = FND_API.G_MISS_DATE
1268 OR g_Assignment_rec.Request_Id = FND_API.G_MISS_NUM
1269 OR g_Assignment_rec.Secondary_Inventory = FND_API.G_MISS_CHAR
1270 OR g_Assignment_rec.Ship_To_Site_Id = FND_API.G_MISS_NUM
1271 OR g_Assignment_rec.Sourcing_Rule_Id = FND_API.G_MISS_NUM
1272 OR g_Assignment_rec.Sourcing_Rule_Type = FND_API.G_MISS_NUM
1273 THEN
1274
1275 MRP_Default_Assignment.Attributes
1276 ( p_Assignment_rec => g_Assignment_rec
1277 , p_iteration => p_iteration + 1
1278 , x_Assignment_rec => x_Assignment_rec
1279 );
1280
1281 ELSE
1282
1283 -- Done defaulting attributes
1284
1285 x_Assignment_rec := g_Assignment_rec;
1286
1287 END IF;
1288
1289 END Attributes;
1290
1291 END MRP_Default_Assignment;