1 PACKAGE BODY MRP_Assignment_Util AS
2 /* $Header: MRPUASNB.pls 115.2 99/07/16 12:38:32 porting ship $ */
3
4 -- Global constant holding the package name
5
6 G_PKG_NAME CONSTANT VARCHAR2(30) := 'MRP_Assignment_Util';
7
8 -- Procedure Clear_Dependent_Attr
9
10 PROCEDURE Clear_Dependent_Attr
11 ( p_attr_id IN NUMBER := FND_API.G_MISS_NUM
12 , p_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type
13 , p_old_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type :=
14 MRP_Src_Assignment_PUB.G_MISS_ASSIGNMENT_REC
15 , x_Assignment_rec OUT MRP_Src_Assignment_PUB.Assignment_Rec_Type
16 )
17 IS
18 BEGIN
19
20 -- Load out record
21
22 x_Assignment_rec := p_Assignment_rec;
23
24 -- If attr_id is missing compare old and new records and for
25 -- every changed attribute clear its dependent fields.
26
27 IF p_attr_id = FND_API.G_MISS_NUM THEN
28
29 IF NOT MRP_Globals.Equal(p_Assignment_rec.Assignment_Id,p_old_Assignment_rec.Assignment_Id)
30 THEN
31 NULL;
32 END IF;
33
34 IF NOT MRP_Globals.Equal(p_Assignment_rec.Assignment_Set_Id,p_old_Assignment_rec.Assignment_Set_Id)
35 THEN
36 NULL;
37 END IF;
38
39 IF NOT MRP_Globals.Equal(p_Assignment_rec.Assignment_Type,p_old_Assignment_rec.Assignment_Type)
40 THEN
41 NULL;
42 END IF;
43
44 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute1,p_old_Assignment_rec.Attribute1)
45 THEN
46 NULL;
47 END IF;
48
49 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute10,p_old_Assignment_rec.Attribute10)
50 THEN
51 NULL;
52 END IF;
53
54 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute11,p_old_Assignment_rec.Attribute11)
55 THEN
56 NULL;
57 END IF;
58
59 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute12,p_old_Assignment_rec.Attribute12)
60 THEN
61 NULL;
62 END IF;
63
64 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute13,p_old_Assignment_rec.Attribute13)
65 THEN
66 NULL;
67 END IF;
68
69 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute14,p_old_Assignment_rec.Attribute14)
70 THEN
71 NULL;
72 END IF;
73
74 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute15,p_old_Assignment_rec.Attribute15)
75 THEN
76 NULL;
77 END IF;
78
79 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute2,p_old_Assignment_rec.Attribute2)
80 THEN
81 NULL;
82 END IF;
83
84 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute3,p_old_Assignment_rec.Attribute3)
85 THEN
86 NULL;
87 END IF;
88
89 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute4,p_old_Assignment_rec.Attribute4)
90 THEN
91 NULL;
92 END IF;
93
94 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute5,p_old_Assignment_rec.Attribute5)
95 THEN
96 NULL;
97 END IF;
98
99 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute6,p_old_Assignment_rec.Attribute6)
100 THEN
101 NULL;
102 END IF;
103
104 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute7,p_old_Assignment_rec.Attribute7)
105 THEN
106 NULL;
107 END IF;
108
109 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute8,p_old_Assignment_rec.Attribute8)
110 THEN
111 NULL;
112 END IF;
113
114 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute9,p_old_Assignment_rec.Attribute9)
115 THEN
116 NULL;
117 END IF;
118
119 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute_Category,p_old_Assignment_rec.Attribute_Category)
120 THEN
121 NULL;
122 END IF;
123
124 IF NOT MRP_Globals.Equal(p_Assignment_rec.Category_Id,p_old_Assignment_rec.Category_Id)
125 THEN
126 NULL;
127 END IF;
128
129 IF NOT MRP_Globals.Equal(p_Assignment_rec.Category_Set_Id,p_old_Assignment_rec.Category_Set_Id)
130 THEN
131 NULL;
132 END IF;
133
134 IF NOT MRP_Globals.Equal(p_Assignment_rec.Created_By,p_old_Assignment_rec.Created_By)
135 THEN
136 NULL;
137 END IF;
138
139 IF NOT MRP_Globals.Equal(p_Assignment_rec.Creation_Date,p_old_Assignment_rec.Creation_Date)
140 THEN
141 NULL;
142 END IF;
143
144 IF NOT MRP_Globals.Equal(p_Assignment_rec.Customer_Id,p_old_Assignment_rec.Customer_Id)
145 THEN
146 NULL;
147 END IF;
148
149 IF NOT MRP_Globals.Equal(p_Assignment_rec.Inventory_Item_Id,p_old_Assignment_rec.Inventory_Item_Id)
150 THEN
151 NULL;
152 END IF;
153
154 IF NOT MRP_Globals.Equal(p_Assignment_rec.Last_Updated_By,p_old_Assignment_rec.Last_Updated_By)
158
155 THEN
156 NULL;
157 END IF;
159 IF NOT MRP_Globals.Equal(p_Assignment_rec.Last_Update_Date,p_old_Assignment_rec.Last_Update_Date)
160 THEN
161 NULL;
162 END IF;
163
164 IF NOT MRP_Globals.Equal(p_Assignment_rec.Last_Update_Login,p_old_Assignment_rec.Last_Update_Login)
165 THEN
166 NULL;
167 END IF;
168
169 IF NOT MRP_Globals.Equal(p_Assignment_rec.Organization_Id,p_old_Assignment_rec.Organization_Id)
170 THEN
171 NULL;
172 END IF;
173
174 IF NOT MRP_Globals.Equal(p_Assignment_rec.Program_Application_Id,p_old_Assignment_rec.Program_Application_Id)
175 THEN
176 NULL;
177 END IF;
178
179 IF NOT MRP_Globals.Equal(p_Assignment_rec.Program_Id,p_old_Assignment_rec.Program_Id)
180 THEN
181 NULL;
182 END IF;
183
184 IF NOT MRP_Globals.Equal(p_Assignment_rec.Program_Update_Date,p_old_Assignment_rec.Program_Update_Date)
185 THEN
186 NULL;
187 END IF;
188
189 IF NOT MRP_Globals.Equal(p_Assignment_rec.Request_Id,p_old_Assignment_rec.Request_Id)
190 THEN
191 NULL;
192 END IF;
193
194 IF NOT MRP_Globals.Equal(p_Assignment_rec.Secondary_Inventory,p_old_Assignment_rec.Secondary_Inventory)
195 THEN
196 NULL;
197 END IF;
198
199 IF NOT MRP_Globals.Equal(p_Assignment_rec.Ship_To_Site_Id,p_old_Assignment_rec.Ship_To_Site_Id)
200 THEN
201 NULL;
202 END IF;
203
207 END IF;
204 IF NOT MRP_Globals.Equal(p_Assignment_rec.Sourcing_Rule_Id,p_old_Assignment_rec.Sourcing_Rule_Id)
205 THEN
206 NULL;
208
209 IF NOT MRP_Globals.Equal(p_Assignment_rec.Sourcing_Rule_Type,p_old_Assignment_rec.Sourcing_Rule_Type)
210 THEN
211 NULL;
212 END IF;
213
214 ELSIF p_attr_id = G_ASSIGNMENT_ID THEN
215 NULL;
216 ELSIF p_attr_id = G_ASSIGNMENT_SET_ID THEN
217 NULL;
218 ELSIF p_attr_id = G_ASSIGNMENT_TYPE THEN
222 ELSIF p_attr_id = G_ATTRIBUTE10 THEN
219 NULL;
220 ELSIF p_attr_id = G_ATTRIBUTE1 THEN
221 NULL;
223 NULL;
224 ELSIF p_attr_id = G_ATTRIBUTE11 THEN
225 NULL;
226 ELSIF p_attr_id = G_ATTRIBUTE12 THEN
227 NULL;
228 ELSIF p_attr_id = G_ATTRIBUTE13 THEN
229 NULL;
230 ELSIF p_attr_id = G_ATTRIBUTE14 THEN
231 NULL;
232 ELSIF p_attr_id = G_ATTRIBUTE15 THEN
233 NULL;
234 ELSIF p_attr_id = G_ATTRIBUTE2 THEN
235 NULL;
236 ELSIF p_attr_id = G_ATTRIBUTE3 THEN
237 NULL;
238 ELSIF p_attr_id = G_ATTRIBUTE4 THEN
239 NULL;
240 ELSIF p_attr_id = G_ATTRIBUTE5 THEN
241 NULL;
242 ELSIF p_attr_id = G_ATTRIBUTE6 THEN
243 NULL;
244 ELSIF p_attr_id = G_ATTRIBUTE7 THEN
245 NULL;
246 ELSIF p_attr_id = G_ATTRIBUTE8 THEN
247 NULL;
248 ELSIF p_attr_id = G_ATTRIBUTE9 THEN
249 NULL;
250 ELSIF p_attr_id = G_ATTRIBUTE_CATEGORY THEN
251 NULL;
252 ELSIF p_attr_id = G_CATEGORY_ID THEN
253 NULL;
254 ELSIF p_attr_id = G_CATEGORY_SET_ID THEN
255 NULL;
256 ELSIF p_attr_id = G_CREATED_BY THEN
257 NULL;
258 ELSIF p_attr_id = G_CREATION_DATE THEN
259 NULL;
260 ELSIF p_attr_id = G_CUSTOMER_ID THEN
261 NULL;
262 ELSIF p_attr_id = G_INVENTORY_ITEM_ID THEN
263 NULL;
264 ELSIF p_attr_id = G_LAST_UPDATED_BY THEN
265 NULL;
266 ELSIF p_attr_id = G_LAST_UPDATE_DATE THEN
267 NULL;
268 ELSIF p_attr_id = G_LAST_UPDATE_LOGIN THEN
269 NULL;
270 ELSIF p_attr_id = G_ORGANIZATION_ID THEN
271 NULL;
275 NULL;
272 ELSIF p_attr_id = G_PROGRAM_APPLICATION_ID THEN
273 NULL;
274 ELSIF p_attr_id = G_PROGRAM_ID THEN
276 ELSIF p_attr_id = G_PROGRAM_UPDATE_DATE THEN
277 NULL;
278 ELSIF p_attr_id = G_REQUEST_ID THEN
279 NULL;
280 ELSIF p_attr_id = G_SECONDARY_INVENTORY THEN
281 NULL;
282 ELSIF p_attr_id = G_SHIP_TO_SITE_ID THEN
283 NULL;
284 ELSIF p_attr_id = G_SOURCING_RULE_ID THEN
285 NULL;
286 ELSIF p_attr_id = G_SOURCING_RULE_TYPE THEN
287 NULL;
288 END IF;
289
290 --Irrespective of whether old/new record values are equal or
291 --not, I want to clear these fields.
292 --Depending on the Assignment Type, clear the dependent Attributes
293 IF p_Assignment_rec.Assignment_Type = 1 THEN
294 x_Assignment_rec.Organization_Id := NULL;
295 x_Assignment_rec.Customer_Id := NULL;
296 x_Assignment_rec.Ship_To_Site_Id := NULL;
297 x_Assignment_rec.Inventory_Item_Id := NULL;
298 x_Assignment_rec.Category_Id := NULL;
299 x_Assignment_rec.Category_Set_Id := NULL;
300 ELSIF p_Assignment_rec.Assignment_Type = 2 THEN
301 x_Assignment_rec.Organization_Id := NULL;
302 x_Assignment_rec.Customer_Id := NULL;
303 x_Assignment_rec.Ship_To_Site_Id := NULL;
304 x_Assignment_rec.Inventory_Item_Id := NULL;
305 ELSIF p_Assignment_rec.Assignment_Type = 3 THEN
306 x_Assignment_rec.Organization_Id := NULL;
307 x_Assignment_rec.Customer_Id := NULL;
308 x_Assignment_rec.Ship_To_Site_Id := NULL;
309 x_Assignment_rec.Category_Id := NULL;
310 x_Assignment_rec.Category_Set_Id := NULL;
311 ELSIF p_Assignment_rec.Assignment_Type = 4 THEN
312 IF p_Assignment_rec.Organization_Id IS NOT NULL AND
313 p_Assignment_rec.Organization_Id <> FND_API.G_MISS_NUM THEN
314 x_Assignment_rec.Customer_Id := NULL;
315 x_Assignment_rec.Ship_To_Site_Id := NULL;
316 ELSIF p_Assignment_rec.Customer_Id IS NOT NULL AND
317 p_Assignment_rec.Customer_Id <> FND_API.G_MISS_NUM THEN
318 x_Assignment_rec.Organization_Id := NULL;
319 END IF;
320 ELSIF p_Assignment_rec.Assignment_Type = 5 THEN
321 IF p_Assignment_rec.Organization_Id IS NOT NULL AND
322 p_Assignment_rec.Organization_Id <> FND_API.G_MISS_NUM THEN
323 x_Assignment_rec.Customer_Id := NULL;
324 x_Assignment_rec.Ship_To_Site_Id := NULL;
325 ELSIF p_Assignment_rec.Customer_Id IS NOT NULL AND
326 p_Assignment_rec.Customer_Id <> FND_API.G_MISS_NUM THEN
327 x_Assignment_rec.Organization_Id := NULL;
328 END IF;
329 x_Assignment_rec.Inventory_Item_Id := NULL;
330 ELSIF p_Assignment_rec.Assignment_Type = 6 THEN
331 IF p_Assignment_rec.Organization_Id IS NOT NULL AND
332 p_Assignment_rec.Organization_Id <> FND_API.G_MISS_NUM THEN
333 x_Assignment_rec.Customer_Id := NULL;
334 x_Assignment_rec.Ship_To_Site_Id := NULL;
335 ELSIF p_Assignment_rec.Customer_Id IS NOT NULL AND
336 p_Assignment_rec.Customer_Id <> FND_API.G_MISS_NUM THEN
337 x_Assignment_rec.Organization_Id := NULL;
338 END IF;
339 x_Assignment_rec.Category_Id := NULL;
340 x_Assignment_rec.Category_Set_Id := NULL;
341 END IF;
342
343 END Clear_Dependent_Attr;
344
345 -- Procedure Apply_Attribute_Changes
346
347 PROCEDURE Apply_Attribute_Changes
348 ( p_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type
349 , p_old_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type :=
350 MRP_Src_Assignment_PUB.G_MISS_ASSIGNMENT_REC
351 , x_Assignment_rec OUT MRP_Src_Assignment_PUB.Assignment_Rec_Type
352 )
353 IS
354 BEGIN
355
356 -- Load out record
357
358 x_Assignment_rec := p_Assignment_rec;
359
360 IF NOT MRP_Globals.Equal(p_Assignment_rec.Assignment_Id,p_old_Assignment_rec.Assignment_Id)
361 THEN
362 NULL;
363 END IF;
364
365 IF NOT MRP_Globals.Equal(p_Assignment_rec.Assignment_Set_Id,p_old_Assignment_rec.Assignment_Set_Id)
366 THEN
367 NULL;
368 END IF;
369
370 IF NOT MRP_Globals.Equal(p_Assignment_rec.Assignment_Type,p_old_Assignment_rec.Assignment_Type)
371 THEN
372 NULL;
373 END IF;
374
375 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute1,p_old_Assignment_rec.Attribute1)
376 THEN
377 NULL;
378 END IF;
379
380 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute10,p_old_Assignment_rec.Attribute10)
381 THEN
382 NULL;
383 END IF;
384
385 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute11,p_old_Assignment_rec.Attribute11)
386 THEN
387 NULL;
388 END IF;
389
390 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute12,p_old_Assignment_rec.Attribute12)
391 THEN
392 NULL;
393 END IF;
394
395 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute13,p_old_Assignment_rec.Attribute13)
396 THEN
397 NULL;
398 END IF;
399
400 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute14,p_old_Assignment_rec.Attribute14)
401 THEN
402 NULL;
403 END IF;
404
405 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute15,p_old_Assignment_rec.Attribute15)
406 THEN
407 NULL;
408 END IF;
409
410 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute2,p_old_Assignment_rec.Attribute2)
411 THEN
412 NULL;
413 END IF;
414
415 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute3,p_old_Assignment_rec.Attribute3)
416 THEN
417 NULL;
418 END IF;
419
420 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute4,p_old_Assignment_rec.Attribute4)
421 THEN
422 NULL;
423 END IF;
424
425 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute5,p_old_Assignment_rec.Attribute5)
426 THEN
427 NULL;
428 END IF;
429
430 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute6,p_old_Assignment_rec.Attribute6)
431 THEN
432 NULL;
433 END IF;
434
435 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute7,p_old_Assignment_rec.Attribute7)
436 THEN
437 NULL;
438 END IF;
439
440 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute8,p_old_Assignment_rec.Attribute8)
441 THEN
442 NULL;
443 END IF;
444
445 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute9,p_old_Assignment_rec.Attribute9)
446 THEN
447 NULL;
448 END IF;
449
450 IF NOT MRP_Globals.Equal(p_Assignment_rec.Attribute_Category,p_old_Assignment_rec.Attribute_Category)
451 THEN
452 NULL;
453 END IF;
454
455 IF NOT MRP_Globals.Equal(p_Assignment_rec.Category_Id,p_old_Assignment_rec.Category_Id)
456 THEN
457 NULL;
458 END IF;
459
460 IF NOT MRP_Globals.Equal(p_Assignment_rec.Category_Set_Id,p_old_Assignment_rec.Category_Set_Id)
461 THEN
462 NULL;
463 END IF;
464
465 IF NOT MRP_Globals.Equal(p_Assignment_rec.Created_By,p_old_Assignment_rec.Created_By)
466 THEN
467 NULL;
468 END IF;
469
470 IF NOT MRP_Globals.Equal(p_Assignment_rec.Creation_Date,p_old_Assignment_rec.Creation_Date)
471 THEN
472 NULL;
473 END IF;
474
475 IF NOT MRP_Globals.Equal(p_Assignment_rec.Customer_Id,p_old_Assignment_rec.Customer_Id)
476 THEN
477 NULL;
478 END IF;
479
480 IF NOT MRP_Globals.Equal(p_Assignment_rec.Inventory_Item_Id,p_old_Assignment_rec.Inventory_Item_Id)
481 THEN
482 NULL;
483 END IF;
484
485 IF NOT MRP_Globals.Equal(p_Assignment_rec.Last_Updated_By,p_old_Assignment_rec.Last_Updated_By)
486 THEN
487 NULL;
488 END IF;
489
490 IF NOT MRP_Globals.Equal(p_Assignment_rec.Last_Update_Date,p_old_Assignment_rec.Last_Update_Date)
491 THEN
492 NULL;
493 END IF;
494
495 IF NOT MRP_Globals.Equal(p_Assignment_rec.Last_Update_Login,p_old_Assignment_rec.Last_Update_Login)
496 THEN
497 NULL;
498 END IF;
499
500 IF NOT MRP_Globals.Equal(p_Assignment_rec.Organization_Id,p_old_Assignment_rec.Organization_Id)
501 THEN
502 NULL;
503 END IF;
504
505 IF NOT MRP_Globals.Equal(p_Assignment_rec.Program_Application_Id,p_old_Assignment_rec.Program_Application_Id)
506 THEN
507 NULL;
508 END IF;
509
510 IF NOT MRP_Globals.Equal(p_Assignment_rec.Program_Id,p_old_Assignment_rec.Program_Id)
511 THEN
512 NULL;
513 END IF;
514
515 IF NOT MRP_Globals.Equal(p_Assignment_rec.Program_Update_Date,p_old_Assignment_rec.Program_Update_Date)
516 THEN
517 NULL;
518 END IF;
519
520 IF NOT MRP_Globals.Equal(p_Assignment_rec.Request_Id,p_old_Assignment_rec.Request_Id)
521 THEN
522 NULL;
523 END IF;
524
525 IF NOT MRP_Globals.Equal(p_Assignment_rec.Secondary_Inventory,p_old_Assignment_rec.Secondary_Inventory)
526 THEN
527 NULL;
528 END IF;
529
530 IF NOT MRP_Globals.Equal(p_Assignment_rec.Ship_To_Site_Id,p_old_Assignment_rec.Ship_To_Site_Id)
531 THEN
532 NULL;
533 END IF;
534
535 IF NOT MRP_Globals.Equal(p_Assignment_rec.Sourcing_Rule_Id,p_old_Assignment_rec.Sourcing_Rule_Id)
536 THEN
537 NULL;
538 END IF;
539
540 IF NOT MRP_Globals.Equal(p_Assignment_rec.Sourcing_Rule_Type,p_old_Assignment_rec.Sourcing_Rule_Type)
541 THEN
542 NULL;
543 END IF;
544
545 END Apply_Attribute_Changes;
546
547 -- Function Complete_Record
548
549 FUNCTION Complete_Record
550 ( p_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type
551 , p_old_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type
552 ) RETURN MRP_Src_Assignment_PUB.Assignment_Rec_Type
553 IS
554 l_Assignment_rec MRP_Src_Assignment_PUB.Assignment_Rec_Type := p_Assignment_rec;
555 BEGIN
556
557 IF l_Assignment_rec.Assignment_Id = FND_API.G_MISS_NUM THEN
558 l_Assignment_rec.Assignment_Id := p_old_Assignment_rec.Assignment_Id;
559 END IF;
560
561 IF l_Assignment_rec.Assignment_Set_Id = FND_API.G_MISS_NUM THEN
562 l_Assignment_rec.Assignment_Set_Id := p_old_Assignment_rec.Assignment_Set_Id;
563 END IF;
564
565 IF l_Assignment_rec.Assignment_Type = FND_API.G_MISS_NUM THEN
566 l_Assignment_rec.Assignment_Type := p_old_Assignment_rec.Assignment_Type;
567 END IF;
568
569 IF l_Assignment_rec.Attribute1 = FND_API.G_MISS_CHAR THEN
570 l_Assignment_rec.Attribute1 := p_old_Assignment_rec.Attribute1;
571 END IF;
572
573 IF l_Assignment_rec.Attribute10 = FND_API.G_MISS_CHAR THEN
574 l_Assignment_rec.Attribute10 := p_old_Assignment_rec.Attribute10;
575 END IF;
576
577 IF l_Assignment_rec.Attribute11 = FND_API.G_MISS_CHAR THEN
578 l_Assignment_rec.Attribute11 := p_old_Assignment_rec.Attribute11;
579 END IF;
580
581 IF l_Assignment_rec.Attribute12 = FND_API.G_MISS_CHAR THEN
582 l_Assignment_rec.Attribute12 := p_old_Assignment_rec.Attribute12;
583 END IF;
584
585 IF l_Assignment_rec.Attribute13 = FND_API.G_MISS_CHAR THEN
586 l_Assignment_rec.Attribute13 := p_old_Assignment_rec.Attribute13;
587 END IF;
588
589 IF l_Assignment_rec.Attribute14 = FND_API.G_MISS_CHAR THEN
590 l_Assignment_rec.Attribute14 := p_old_Assignment_rec.Attribute14;
591 END IF;
592
593 IF l_Assignment_rec.Attribute15 = FND_API.G_MISS_CHAR THEN
594 l_Assignment_rec.Attribute15 := p_old_Assignment_rec.Attribute15;
595 END IF;
596
597 IF l_Assignment_rec.Attribute2 = FND_API.G_MISS_CHAR THEN
598 l_Assignment_rec.Attribute2 := p_old_Assignment_rec.Attribute2;
599 END IF;
603 END IF;
600
601 IF l_Assignment_rec.Attribute3 = FND_API.G_MISS_CHAR THEN
602 l_Assignment_rec.Attribute3 := p_old_Assignment_rec.Attribute3;
604
605 IF l_Assignment_rec.Attribute4 = FND_API.G_MISS_CHAR THEN
606 l_Assignment_rec.Attribute4 := p_old_Assignment_rec.Attribute4;
607 END IF;
608
609 IF l_Assignment_rec.Attribute5 = FND_API.G_MISS_CHAR THEN
610 l_Assignment_rec.Attribute5 := p_old_Assignment_rec.Attribute5;
611 END IF;
612
613 IF l_Assignment_rec.Attribute6 = FND_API.G_MISS_CHAR THEN
614 l_Assignment_rec.Attribute6 := p_old_Assignment_rec.Attribute6;
615 END IF;
616
617 IF l_Assignment_rec.Attribute7 = FND_API.G_MISS_CHAR THEN
618 l_Assignment_rec.Attribute7 := p_old_Assignment_rec.Attribute7;
619 END IF;
620
621 IF l_Assignment_rec.Attribute8 = FND_API.G_MISS_CHAR THEN
622 l_Assignment_rec.Attribute8 := p_old_Assignment_rec.Attribute8;
623 END IF;
624
625 IF l_Assignment_rec.Attribute9 = FND_API.G_MISS_CHAR THEN
626 l_Assignment_rec.Attribute9 := p_old_Assignment_rec.Attribute9;
627 END IF;
628
629 IF l_Assignment_rec.Attribute_Category = FND_API.G_MISS_CHAR THEN
630 l_Assignment_rec.Attribute_Category := p_old_Assignment_rec.Attribute_Category;
631 END IF;
632
633 IF l_Assignment_rec.Category_Id = FND_API.G_MISS_NUM THEN
634 l_Assignment_rec.Category_Id := p_old_Assignment_rec.Category_Id;
635 END IF;
636
637 IF l_Assignment_rec.Category_Set_Id = FND_API.G_MISS_NUM THEN
638 l_Assignment_rec.Category_Set_Id := p_old_Assignment_rec.Category_Set_Id;
639 END IF;
640
641 IF l_Assignment_rec.Created_By = FND_API.G_MISS_NUM THEN
642 l_Assignment_rec.Created_By := p_old_Assignment_rec.Created_By;
643 END IF;
644
645 IF l_Assignment_rec.Creation_Date = FND_API.G_MISS_DATE THEN
646 l_Assignment_rec.Creation_Date := p_old_Assignment_rec.Creation_Date;
647 END IF;
648
649 IF l_Assignment_rec.Customer_Id = FND_API.G_MISS_NUM THEN
650 l_Assignment_rec.Customer_Id := p_old_Assignment_rec.Customer_Id;
651 END IF;
652
653 IF l_Assignment_rec.Inventory_Item_Id = FND_API.G_MISS_NUM THEN
654 l_Assignment_rec.Inventory_Item_Id := p_old_Assignment_rec.Inventory_Item_Id;
655 END IF;
656
657 IF l_Assignment_rec.Last_Updated_By = FND_API.G_MISS_NUM THEN
658 l_Assignment_rec.Last_Updated_By := p_old_Assignment_rec.Last_Updated_By;
659 END IF;
660
661 IF l_Assignment_rec.Last_Update_Date = FND_API.G_MISS_DATE THEN
662 l_Assignment_rec.Last_Update_Date := p_old_Assignment_rec.Last_Update_Date;
663 END IF;
664
665 IF l_Assignment_rec.Last_Update_Login = FND_API.G_MISS_NUM THEN
666 l_Assignment_rec.Last_Update_Login := p_old_Assignment_rec.Last_Update_Login;
667 END IF;
668
669 IF l_Assignment_rec.Organization_Id = FND_API.G_MISS_NUM THEN
670 l_Assignment_rec.Organization_Id := p_old_Assignment_rec.Organization_Id;
671 END IF;
672
673 IF l_Assignment_rec.Program_Application_Id = FND_API.G_MISS_NUM THEN
674 l_Assignment_rec.Program_Application_Id := p_old_Assignment_rec.Program_Application_Id;
675 END IF;
676
677 IF l_Assignment_rec.Program_Id = FND_API.G_MISS_NUM THEN
678 l_Assignment_rec.Program_Id := p_old_Assignment_rec.Program_Id;
679 END IF;
680
681 IF l_Assignment_rec.Program_Update_Date = FND_API.G_MISS_DATE THEN
682 l_Assignment_rec.Program_Update_Date := p_old_Assignment_rec.Program_Update_Date;
683 END IF;
684
685 IF l_Assignment_rec.Request_Id = FND_API.G_MISS_NUM THEN
686 l_Assignment_rec.Request_Id := p_old_Assignment_rec.Request_Id;
687 END IF;
688
689 IF l_Assignment_rec.Secondary_Inventory = FND_API.G_MISS_CHAR THEN
690 l_Assignment_rec.Secondary_Inventory := p_old_Assignment_rec.Secondary_Inventory;
691 END IF;
692
693 IF l_Assignment_rec.Ship_To_Site_Id = FND_API.G_MISS_NUM THEN
694 l_Assignment_rec.Ship_To_Site_Id := p_old_Assignment_rec.Ship_To_Site_Id;
695 END IF;
696
697 IF l_Assignment_rec.Sourcing_Rule_Id = FND_API.G_MISS_NUM THEN
698 l_Assignment_rec.Sourcing_Rule_Id := p_old_Assignment_rec.Sourcing_Rule_Id;
699 END IF;
700
701 IF l_Assignment_rec.Sourcing_Rule_Type = FND_API.G_MISS_NUM THEN
702 l_Assignment_rec.Sourcing_Rule_Type := p_old_Assignment_rec.Sourcing_Rule_Type;
703 END IF;
704
705 RETURN l_Assignment_rec;
706
707 END Complete_Record;
708
709 -- Function Convert_Miss_To_Null
710
711 FUNCTION Convert_Miss_To_Null
712 ( p_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type
713 ) RETURN MRP_Src_Assignment_PUB.Assignment_Rec_Type
714 IS
715 l_Assignment_rec MRP_Src_Assignment_PUB.Assignment_Rec_Type := p_Assignment_rec;
716 BEGIN
717
718 IF l_Assignment_rec.Assignment_Id = FND_API.G_MISS_NUM THEN
719 l_Assignment_rec.Assignment_Id := NULL;
720 END IF;
721
722 IF l_Assignment_rec.Assignment_Set_Id = FND_API.G_MISS_NUM THEN
723 l_Assignment_rec.Assignment_Set_Id := NULL;
724 END IF;
725
726 IF l_Assignment_rec.Assignment_Type = FND_API.G_MISS_NUM THEN
727 l_Assignment_rec.Assignment_Type := NULL;
728 END IF;
729
730 IF l_Assignment_rec.Attribute1 = FND_API.G_MISS_CHAR THEN
731 l_Assignment_rec.Attribute1 := NULL;
732 END IF;
733
734 IF l_Assignment_rec.Attribute10 = FND_API.G_MISS_CHAR THEN
735 l_Assignment_rec.Attribute10 := NULL;
736 END IF;
737
738 IF l_Assignment_rec.Attribute11 = FND_API.G_MISS_CHAR THEN
739 l_Assignment_rec.Attribute11 := NULL;
740 END IF;
741
742 IF l_Assignment_rec.Attribute12 = FND_API.G_MISS_CHAR THEN
743 l_Assignment_rec.Attribute12 := NULL;
744 END IF;
745
746 IF l_Assignment_rec.Attribute13 = FND_API.G_MISS_CHAR THEN
747 l_Assignment_rec.Attribute13 := NULL;
748 END IF;
749
750 IF l_Assignment_rec.Attribute14 = FND_API.G_MISS_CHAR THEN
751 l_Assignment_rec.Attribute14 := NULL;
752 END IF;
753
754 IF l_Assignment_rec.Attribute15 = FND_API.G_MISS_CHAR THEN
755 l_Assignment_rec.Attribute15 := NULL;
756 END IF;
757
758 IF l_Assignment_rec.Attribute2 = FND_API.G_MISS_CHAR THEN
759 l_Assignment_rec.Attribute2 := NULL;
760 END IF;
761
762 IF l_Assignment_rec.Attribute3 = FND_API.G_MISS_CHAR THEN
763 l_Assignment_rec.Attribute3 := NULL;
764 END IF;
765
766 IF l_Assignment_rec.Attribute4 = FND_API.G_MISS_CHAR THEN
767 l_Assignment_rec.Attribute4 := NULL;
768 END IF;
769
770 IF l_Assignment_rec.Attribute5 = FND_API.G_MISS_CHAR THEN
771 l_Assignment_rec.Attribute5 := NULL;
772 END IF;
773
774 IF l_Assignment_rec.Attribute6 = FND_API.G_MISS_CHAR THEN
775 l_Assignment_rec.Attribute6 := NULL;
776 END IF;
777
778 IF l_Assignment_rec.Attribute7 = FND_API.G_MISS_CHAR THEN
779 l_Assignment_rec.Attribute7 := NULL;
780 END IF;
781
782 IF l_Assignment_rec.Attribute8 = FND_API.G_MISS_CHAR THEN
783 l_Assignment_rec.Attribute8 := NULL;
784 END IF;
785
786 IF l_Assignment_rec.Attribute9 = FND_API.G_MISS_CHAR THEN
787 l_Assignment_rec.Attribute9 := NULL;
788 END IF;
789
790 IF l_Assignment_rec.Attribute_Category = FND_API.G_MISS_CHAR THEN
791 l_Assignment_rec.Attribute_Category := NULL;
792 END IF;
793
794 IF l_Assignment_rec.Category_Id = FND_API.G_MISS_NUM THEN
795 l_Assignment_rec.Category_Id := NULL;
796 END IF;
797
798 IF l_Assignment_rec.Category_Set_Id = FND_API.G_MISS_NUM THEN
799 l_Assignment_rec.Category_Set_Id := NULL;
800 END IF;
801
802 IF l_Assignment_rec.Created_By = FND_API.G_MISS_NUM THEN
803 l_Assignment_rec.Created_By := NULL;
804 END IF;
805
806 IF l_Assignment_rec.Creation_Date = FND_API.G_MISS_DATE THEN
807 l_Assignment_rec.Creation_Date := NULL;
808 END IF;
809
810 IF l_Assignment_rec.Customer_Id = FND_API.G_MISS_NUM THEN
811 l_Assignment_rec.Customer_Id := NULL;
812 END IF;
813
814 IF l_Assignment_rec.Inventory_Item_Id = FND_API.G_MISS_NUM THEN
815 l_Assignment_rec.Inventory_Item_Id := NULL;
816 END IF;
817
818 IF l_Assignment_rec.Last_Updated_By = FND_API.G_MISS_NUM THEN
819 l_Assignment_rec.Last_Updated_By := NULL;
820 END IF;
821
822 IF l_Assignment_rec.Last_Update_Date = FND_API.G_MISS_DATE THEN
823 l_Assignment_rec.Last_Update_Date := NULL;
824 END IF;
825
826 IF l_Assignment_rec.Last_Update_Login = FND_API.G_MISS_NUM THEN
827 l_Assignment_rec.Last_Update_Login := NULL;
828 END IF;
829
830 IF l_Assignment_rec.Organization_Id = FND_API.G_MISS_NUM THEN
831 l_Assignment_rec.Organization_Id := NULL;
832 END IF;
833
834 IF l_Assignment_rec.Program_Application_Id = FND_API.G_MISS_NUM THEN
835 l_Assignment_rec.Program_Application_Id := NULL;
836 END IF;
837
838 IF l_Assignment_rec.Program_Id = FND_API.G_MISS_NUM THEN
839 l_Assignment_rec.Program_Id := NULL;
840 END IF;
841
842 IF l_Assignment_rec.Program_Update_Date = FND_API.G_MISS_DATE THEN
843 l_Assignment_rec.Program_Update_Date := NULL;
844 END IF;
845
846 IF l_Assignment_rec.Request_Id = FND_API.G_MISS_NUM THEN
847 l_Assignment_rec.Request_Id := NULL;
848 END IF;
849
850 IF l_Assignment_rec.Secondary_Inventory = FND_API.G_MISS_CHAR THEN
851 l_Assignment_rec.Secondary_Inventory := NULL;
852 END IF;
853
854 IF l_Assignment_rec.Ship_To_Site_Id = FND_API.G_MISS_NUM THEN
855 l_Assignment_rec.Ship_To_Site_Id := NULL;
856 END IF;
857
858 IF l_Assignment_rec.Sourcing_Rule_Id = FND_API.G_MISS_NUM THEN
859 l_Assignment_rec.Sourcing_Rule_Id := NULL;
860 END IF;
861
862 IF l_Assignment_rec.Sourcing_Rule_Type = FND_API.G_MISS_NUM THEN
863 l_Assignment_rec.Sourcing_Rule_Type := NULL;
864 END IF;
865
866 RETURN l_Assignment_rec;
867
868 END Convert_Miss_To_Null;
869
870 -- Function Get_Values
871
872 FUNCTION Get_Values
873 ( p_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type
874 , p_old_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type :=
875 MRP_Src_Assignment_PUB.G_MISS_ASSIGNMENT_REC
876 ) RETURN MRP_Src_Assignment_PUB.Assignment_Val_Rec_Type
877 IS
878 l_Assignment_val_rec MRP_Src_Assignment_PUB.Assignment_Val_Rec_Type;
879 BEGIN
880
881 RETURN l_Assignment_val_rec;
882
883 END Get_Values;
884
885 -- Function Get_Ids
886
887 FUNCTION Get_Ids
888 ( p_Assignment_rec IN MRP_Src_Assignment_PUB.Assignment_Rec_Type
889 , p_Assignment_val_rec IN MRP_Src_Assignment_PUB.Assignment_Val_Rec_Type
890 ) RETURN MRP_Src_Assignment_PUB.Assignment_Rec_Type
891 IS
892 l_Assignment_rec MRP_Src_Assignment_PUB.Assignment_Rec_Type;
893 BEGIN
894
895 -- initialize return_status.
896
897 l_Assignment_rec.return_status := FND_API.G_RET_STS_SUCCESS;
898
899 -- initialize l_Assignment_rec.
900
901 l_Assignment_rec := p_Assignment_rec;
902
903
904 RETURN l_Assignment_rec;
905
906 END Get_Ids;
907
908 END MRP_Assignment_Util;