13: , p_old_MODIFIER_LIST_rec IN QP_Modifiers_PUB.Modifier_List_Rec_Type :=
14: QP_Modifiers_PUB.G_MISS_MODIFIER_LIST_REC
15: )
16: IS
17: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
18: l_currency_code VARCHAR2(15);
19: l_qp_status VARCHAR2(1);
20: l_security_profile VARCHAR2(1);
21: BEGIN
36: IF p_MODIFIER_LIST_rec.list_header_id IS NULL
37: THEN
38:
39: oe_debug_pub.add('list header id is mandatory');
40: l_return_status := FND_API.G_RET_STS_ERROR;
41:
42: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
43: THEN
44:
57: IF p_MODIFIER_LIST_rec.operation = QP_GLOBALS.G_OPR_UPDATE
58: THEN
59:
60: IF p_old_MODIFIER_LIST_rec.list_type_code IS NOT NULL
61: AND p_old_MODIFIER_LIST_rec.list_type_code <> FND_API.G_MISS_CHAR
62: AND p_old_MODIFIER_LIST_rec.list_type_code <> p_MODIFIER_LIST_rec.list_type_code
63: THEN
64:
65: l_return_status := FND_API.G_RET_STS_ERROR;
61: AND p_old_MODIFIER_LIST_rec.list_type_code <> FND_API.G_MISS_CHAR
62: AND p_old_MODIFIER_LIST_rec.list_type_code <> p_MODIFIER_LIST_rec.list_type_code
63: THEN
64:
65: l_return_status := FND_API.G_RET_STS_ERROR;
66:
67: FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_LIST_TYPE');
68: OE_MSG_PUB.Add;
69:
72: IF nvl(p_old_MODIFIER_LIST_rec.list_source_code,'X') <>
73: nvl(p_MODIFIER_LIST_rec.list_source_code,'X')
74: THEN
75:
76: l_return_status := FND_API.G_RET_STS_ERROR;
77:
78: FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_ATTRIBUTE');
79: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','List Source Code');
80: OE_MSG_PUB.Add;
85: IF nvl(p_old_MODIFIER_LIST_rec.shareable_flag,'X') <>
86: nvl(p_MODIFIER_LIST_rec.shareable_flag,'X')
87: THEN
88:
89: l_return_status := FND_API.G_RET_STS_ERROR;
90:
91: FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_ATTRIBUTE');
92: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Shareable Flag');
93: OE_MSG_PUB.Add;
98: AND nvl(p_old_MODIFIER_LIST_rec.parent_list_header_id,0) <>
99: nvl(p_MODIFIER_LIST_rec.parent_list_header_id,0)
100: THEN
101:
102: l_return_status := FND_API.G_RET_STS_ERROR;
103:
104: FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_ATTRIBUTE');
105: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Parent List Header Id');
106: OE_MSG_PUB.Add;
110: IF nvl(p_old_MODIFIER_LIST_rec.source_system_code,'X') <>
111: nvl(p_MODIFIER_LIST_rec.source_system_code,'X')
112: THEN
113:
114: l_return_status := FND_API.G_RET_STS_ERROR;
115:
116: FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_ATTRIBUTE');
117: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Source System Code');
118: OE_MSG_PUB.Add;
122: IF nvl(p_old_MODIFIER_LIST_rec.pte_code,'X') <>
123: nvl(p_MODIFIER_LIST_rec.pte_code,'X')
124: THEN
125:
126: l_return_status := FND_API.G_RET_STS_ERROR;
127:
128: FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_ATTRIBUTE');
129: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Pricing Transaction Entity Code');
130: OE_MSG_PUB.Add;
134: /* IF nvl(p_old_MODIFIER_LIST_rec.ask_for_flag,'X') <>
135: nvl(p_MODIFIER_LIST_rec.ask_for_flag,'X')
136: THEN
137:
138: l_return_status := FND_API.G_RET_STS_ERROR;
139:
140: FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_ATTRIBUTE');
141: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Ask For Flag');
142: OE_MSG_PUB.Add;
145:
146: /* Commented for bug2516658
147:
148: IF p_old_MODIFIER_LIST_rec.name IS NOT NULL
149: AND p_old_MODIFIER_LIST_rec.name <> FND_API.G_MISS_CHAR
150: AND p_old_MODIFIER_LIST_rec.name <> p_MODIFIER_LIST_rec.name
151: THEN
152:
153: l_return_status := FND_API.G_RET_STS_ERROR;
149: AND p_old_MODIFIER_LIST_rec.name <> FND_API.G_MISS_CHAR
150: AND p_old_MODIFIER_LIST_rec.name <> p_MODIFIER_LIST_rec.name
151: THEN
152:
153: l_return_status := FND_API.G_RET_STS_ERROR;
154:
155: FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_NUMBER');
156: OE_MSG_PUB.Add;
157:
157:
158: END IF;
159:
160: IF p_old_MODIFIER_LIST_rec.description IS NOT NULL
161: AND p_old_MODIFIER_LIST_rec.description <> FND_API.G_MISS_CHAR
162: AND p_old_MODIFIER_LIST_rec.description <> p_MODIFIER_LIST_rec.description
163: THEN
164:
165: l_return_status := FND_API.G_RET_STS_ERROR;
161: AND p_old_MODIFIER_LIST_rec.description <> FND_API.G_MISS_CHAR
162: AND p_old_MODIFIER_LIST_rec.description <> p_MODIFIER_LIST_rec.description
163: THEN
164:
165: l_return_status := FND_API.G_RET_STS_ERROR;
166:
167: FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_NAME');
168: OE_MSG_PUB.Add;
169:
178: l_qp_status := QP_UTIL.GET_QP_STATUS;
179:
180: IF p_MODIFIER_LIST_rec.list_type_code IS NULL
181: THEN
182: l_return_status := FND_API.G_RET_STS_ERROR;
183:
184: oe_debug_pub.add('list type code is mandatory');
185: FND_MESSAGE.SET_NAME('QP','QP_ATTRIBUTE_REQUIRED');
186: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',QP_PRC_UTIL.Get_Attribute_Name('LIST_TYPE_CODE')); -- Fix For Bug-1974413
197: p_MODIFIER_LIST_rec.list_type_code <> 'SLT' )
198: THEN
199:
200: oe_debug_pub.add('invalid list type code ');
201: l_return_status := FND_API.G_RET_STS_ERROR;
202: FND_MESSAGE.SET_NAME('QP','QP_INVALID_LIST_TYPE');
203: OE_MSG_PUB.Add;
204:
205: END IF;
212: p_MODIFIER_LIST_rec.list_type_code <> 'SLT' )
213: THEN
214:
215: oe_debug_pub.add('invalid list type code ');
216: l_return_status := FND_API.G_RET_STS_ERROR;
217: FND_MESSAGE.SET_NAME('QP','QP_INVALID_LIST_TYPE');
218: OE_MSG_PUB.Add;
219:
220: END IF;
226:
227: IF p_MODIFIER_LIST_rec.gsa_indicator = 'Y'
228: AND p_MODIFIER_LIST_rec.list_type_code <> 'DLT'
229: THEN
230: l_return_status := FND_API.G_RET_STS_ERROR;
231: FND_MESSAGE.SET_NAME('QP','QP_INVALID_LIST_TYPE');
232: OE_MSG_PUB.Add;
233:
234:
236:
237: IF p_MODIFIER_LIST_rec.source_system_code IS NULL
238: THEN
239:
240: l_return_status := FND_API.G_RET_STS_ERROR;
241: FND_MESSAGE.SET_NAME('QP','QP_ATTRIBUTE_REQUIRED');
242: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',QP_PRC_UTIL.Get_Attribute_Name('SOURCE_SYSTEM_CODE')); -- Fix For Bug-1974413
243: OE_MSG_PUB.Add;
244:
248: IF qp_util.attrmgr_installed = 'Y' then
249: IF p_MODIFIER_LIST_rec.pte_code IS NULL
250: THEN
251:
252: l_return_status := FND_API.G_RET_STS_ERROR;
253: FND_MESSAGE.SET_NAME('QP','QP_ATTRIBUTE_REQUIRED');
254: FND_MESSAGE.SET_TOKEN('ATTRIBUTE', 'PTE_CODE');
255: OE_MSG_PUB.Add;
256:
267: Then
268: l_currency_code := NULL;
269: Else
270: oe_debug_pub.add('currency code is null ');
271: l_return_status := FND_API.G_RET_STS_ERROR;
272: FND_MESSAGE.SET_NAME('QP','QP_ATTRIBUTE_REQUIRED');
273: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',QP_PRC_UTIL.Get_Attribute_Name('CURRENCY_CODE')); -- Fix For Bug-1974413
274: OE_MSG_PUB.Add;
275: End If;
289:
290: EXCEPTION
291:
292: WHEN NO_DATA_FOUND THEN
293: l_return_status := FND_API.G_RET_STS_ERROR;
294:
295: FND_MESSAGE.SET_NAME('QP','QP_INVALID_CURRENCY');
296: OE_MSG_PUB.Add;
297:
304: nvl( p_MODIFIER_LIST_rec.end_date_active,to_date('12/31/9999','mm/dd/yyyy'))
305: THEN
306:
307: oe_debug_pub.add('start date after end date');
308: l_return_status := FND_API.G_RET_STS_ERROR;
309:
310: FND_MESSAGE.SET_NAME('QP','QP_STRT_DATE_BFR_END_DATE');
311: OE_MSG_PUB.Add;
312:
316: nvl( p_MODIFIER_LIST_rec.end_date_active_first,to_date('12/31/9999','mm/dd/yyyy'))
317: THEN
318:
319: oe_debug_pub.add('start date after end date');
320: l_return_status := FND_API.G_RET_STS_ERROR;
321:
322: FND_MESSAGE.SET_NAME('QP','QP_STRT_DATE_BFR_END_DATE');
323: OE_MSG_PUB.Add;
324:
328: nvl( p_MODIFIER_LIST_rec.end_date_active_second,to_date('12/31/9999','mm/dd/yyyy'))
329: THEN
330:
331: oe_debug_pub.add('start date after end date');
332: l_return_status := FND_API.G_RET_STS_ERROR;
333:
334: FND_MESSAGE.SET_NAME('QP','QP_STRT_DATE_BFR_END_DATE');
335: OE_MSG_PUB.Add;
336:
344: AND p_MODIFIER_LIST_rec.parent_list_header_id IS NULL
345: THEN
346:
347: oe_debug_pub.add('id deal, list header id is null');
348: l_return_status := FND_API.G_RET_STS_ERROR;
349:
350: FND_MESSAGE.SET_NAME('QP','QP_PARENT_REQUIRED');
351: OE_MSG_PUB.Add;
352:
358: IF p_MODIFIER_LIST_rec.description IS NULL
359: THEN
360:
361: oe_debug_pub.add('name is null');
362: l_return_status := FND_API.G_RET_STS_ERROR;
363:
364: FND_MESSAGE.SET_NAME('QP','QP_ATTRIBUTE_REQUIRED');
365: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',QP_PRC_UTIL.Get_Attribute_Name('NAME')); -- Fix For Bug-1974413
366: OE_MSG_PUB.Add;
375: p_MODIFIER_LIST_rec.active_date_second_type
376: THEN
377:
378: oe_debug_pub.add('name is null');
379: l_return_status := FND_API.G_RET_STS_ERROR;
380:
381: FND_MESSAGE.SET_NAME('QP','QP_DATE_TYPES_MUST_DIFFER');
382: OE_MSG_PUB.Add;
383:
386: END IF; --list_type_code is not 'PML'
387:
388: -- added for MOAC
389: IF ( p_MODIFIER_LIST_rec.global_flag IS NOT NULL
390: and p_MODIFIER_LIST_rec.global_flag <> FND_API.G_MISS_CHAR ) THEN
391:
392: IF p_MODIFIER_LIST_rec.global_flag not in ('Y', 'N', 'n') THEN
393:
394: l_return_status := FND_API.G_RET_STS_ERROR;
390: and p_MODIFIER_LIST_rec.global_flag <> FND_API.G_MISS_CHAR ) THEN
391:
392: IF p_MODIFIER_LIST_rec.global_flag not in ('Y', 'N', 'n') THEN
393:
394: l_return_status := FND_API.G_RET_STS_ERROR;
395:
396: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
397:
398: FND_MESSAGE.SET_NAME('QP','QP_INVALID_ATTRIBUTE');
410:
411: --if security is OFF, global_flag cannot be 'N'
412: IF (l_security_profile = 'N'
413: and p_MODIFIER_LIST_rec.global_flag in ('N', 'n')) THEN
414: l_return_status := FND_API.G_RET_STS_ERROR;
415: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
416: FND_MESSAGE.SET_NAME('QP','QP_INVALID_ATTRIBUTE');
417: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','global_flag');
418: oe_msg_pub.add;
422: IF l_security_profile = 'Y' THEN
423: --if security is ON and global_flag is 'N', org_id cannot be null
424: IF (p_MODIFIER_LIST_rec.global_flag in ('N', 'n')
425: and p_MODIFIER_LIST_rec.org_id is null) THEN
426: l_return_status := FND_API.G_RET_STS_ERROR;
427: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
428: FND_MESSAGE.SET_NAME('QP','QP_ATTRIBUTE_REQUIRED');
429: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','ORG_ID');
430: oe_msg_pub.add;
433:
434: --if org_id is not null and it is not a valid org
435: IF (p_MODIFIER_LIST_rec.org_id is not null
436: and QP_UTIL.validate_org_id(p_MODIFIER_LIST_rec.org_id) = 'N') THEN
437: l_return_status := FND_API.G_RET_STS_ERROR;
438: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
439: FND_MESSAGE.SET_NAME('FND','FND_MO_ORG_INVALID');
440: -- FND_MESSAGE.SET_TOKEN('ATTRIBUTE','ORG_ID');
441: oe_msg_pub.add;
445:
446: --global_flag 'Y', and org_id not null combination is invalid
447: IF ((p_MODIFIER_LIST_rec.global_flag = 'Y'
448: and p_MODIFIER_LIST_rec.org_id is not null) OR (p_MODIFIER_LIST_rec.global_flag = 'N' and p_MODIFIER_LIST_rec.org_id is null)) THEN
449: -- and p_MODIFIER_LIST_rec.org_id <> FND_API.G_MISS_NUM THEN
450: l_return_status := FND_API.G_RET_STS_ERROR;
451: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
452: FND_MESSAGE.SET_NAME('QP', 'QP_GLOBAL_OR_ORG');
453: oe_msg_pub.add;
446: --global_flag 'Y', and org_id not null combination is invalid
447: IF ((p_MODIFIER_LIST_rec.global_flag = 'Y'
448: and p_MODIFIER_LIST_rec.org_id is not null) OR (p_MODIFIER_LIST_rec.global_flag = 'N' and p_MODIFIER_LIST_rec.org_id is null)) THEN
449: -- and p_MODIFIER_LIST_rec.org_id <> FND_API.G_MISS_NUM THEN
450: l_return_status := FND_API.G_RET_STS_ERROR;
451: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
452: FND_MESSAGE.SET_NAME('QP', 'QP_GLOBAL_OR_ORG');
453: oe_msg_pub.add;
454: END IF;
457: --end validations for moac
458:
459: -- Return Error if a required attribute is missing.
460:
461: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
462:
463: RAISE FND_API.G_EXC_ERROR;
464:
465: END IF;
459: -- Return Error if a required attribute is missing.
460:
461: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
462:
463: RAISE FND_API.G_EXC_ERROR;
464:
465: END IF;
466:
467: --
481: oe_debug_pub.add('END entity in QPXLMLHB');
482:
483: EXCEPTION
484:
485: WHEN FND_API.G_EXC_ERROR THEN
486:
487: oe_debug_pub.add('here in G_EXC');
488: x_return_status := FND_API.G_RET_STS_ERROR;
489:
484:
485: WHEN FND_API.G_EXC_ERROR THEN
486:
487: oe_debug_pub.add('here in G_EXC');
488: x_return_status := FND_API.G_RET_STS_ERROR;
489:
490: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
491:
492: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
486:
487: oe_debug_pub.add('here in G_EXC');
488: x_return_status := FND_API.G_RET_STS_ERROR;
489:
490: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
491:
492: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
493:
494: WHEN OTHERS THEN
488: x_return_status := FND_API.G_RET_STS_ERROR;
489:
490: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
491:
492: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
493:
494: WHEN OTHERS THEN
495:
496: oe_debug_pub.add('others EXP');
493:
494: WHEN OTHERS THEN
495:
496: oe_debug_pub.add('others EXP');
497: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
498:
499: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
500: THEN
501: OE_MSG_PUB.Add_Exc_Msg
518: BEGIN
519:
520: oe_debug_pub.add('BEGIN attributes in QPXLMLHB');
521:
522: x_return_status := FND_API.G_RET_STS_SUCCESS;
523:
524: -- Validate MODIFIER_LIST attributes
525:
526: IF p_MODIFIER_LIST_rec.automatic_flag IS NOT NULL AND
528: p_old_MODIFIER_LIST_rec.automatic_flag OR
529: p_old_MODIFIER_LIST_rec.automatic_flag IS NULL )
530: THEN
531: IF NOT QP_Validate.Automatic(p_MODIFIER_LIST_rec.automatic_flag) THEN
532: x_return_status := FND_API.G_RET_STS_ERROR;
533: END IF;
534: END IF;
535:
536: oe_debug_pub.add('here1');
539: p_old_MODIFIER_LIST_rec.comments OR
540: p_old_MODIFIER_LIST_rec.comments IS NULL )
541: THEN
542: IF NOT QP_Validate.Comments(p_MODIFIER_LIST_rec.comments) THEN
543: x_return_status := FND_API.G_RET_STS_ERROR;
544: END IF;
545: END IF;
546:
547: IF p_MODIFIER_LIST_rec.created_by IS NOT NULL AND
549: p_old_MODIFIER_LIST_rec.created_by OR
550: p_old_MODIFIER_LIST_rec.created_by IS NULL )
551: THEN
552: IF NOT QP_Validate.Created_By(p_MODIFIER_LIST_rec.created_by) THEN
553: x_return_status := FND_API.G_RET_STS_ERROR;
554: END IF;
555: END IF;
556:
557: IF p_MODIFIER_LIST_rec.creation_date IS NOT NULL AND
559: p_old_MODIFIER_LIST_rec.creation_date OR
560: p_old_MODIFIER_LIST_rec.creation_date IS NULL )
561: THEN
562: IF NOT QP_Validate.Creation_Date(p_MODIFIER_LIST_rec.creation_date) THEN
563: x_return_status := FND_API.G_RET_STS_ERROR;
564: END IF;
565: END IF;
566:
567: IF p_MODIFIER_LIST_rec.currency_code IS NOT NULL AND
569: p_old_MODIFIER_LIST_rec.currency_code OR
570: p_old_MODIFIER_LIST_rec.currency_code IS NULL )
571: THEN
572: IF NOT QP_Validate.Currency(p_MODIFIER_LIST_rec.currency_code) THEN
573: x_return_status := FND_API.G_RET_STS_ERROR;
574: END IF;
575: END IF;
576:
577: IF p_MODIFIER_LIST_rec.discount_lines_flag IS NOT NULL AND
579: p_old_MODIFIER_LIST_rec.discount_lines_flag OR
580: p_old_MODIFIER_LIST_rec.discount_lines_flag IS NULL )
581: THEN
582: IF NOT QP_Validate.Discount_Lines(p_MODIFIER_LIST_rec.discount_lines_flag) THEN
583: x_return_status := FND_API.G_RET_STS_ERROR;
584: END IF;
585: END IF;
586:
587: oe_debug_pub.add('here6');
590: p_old_MODIFIER_LIST_rec.end_date_active OR
591: p_old_MODIFIER_LIST_rec.end_date_active IS NULL )
592: THEN
593: IF NOT QP_Validate.End_Date_Active(p_MODIFIER_LIST_rec.end_date_active) THEN
594: x_return_status := FND_API.G_RET_STS_ERROR;
595: END IF;
596: END IF;
597:
598: oe_debug_pub.add('here7');
601: p_old_MODIFIER_LIST_rec.freight_terms_code OR
602: p_old_MODIFIER_LIST_rec.freight_terms_code IS NULL )
603: THEN
604: IF NOT QP_Validate.Freight_Terms(p_MODIFIER_LIST_rec.freight_terms_code) THEN
605: x_return_status := FND_API.G_RET_STS_ERROR;
606: END IF;
607: END IF;
608:
609: oe_debug_pub.add('here8');
612: p_old_MODIFIER_LIST_rec.gsa_indicator OR
613: p_old_MODIFIER_LIST_rec.gsa_indicator IS NULL )
614: THEN
615: IF NOT QP_Validate.Gsa_Indicator(p_MODIFIER_LIST_rec.gsa_indicator) THEN
616: x_return_status := FND_API.G_RET_STS_ERROR;
617: END IF;
618: END IF;
619:
620: oe_debug_pub.add('here9');
623: p_old_MODIFIER_LIST_rec.last_updated_by OR
624: p_old_MODIFIER_LIST_rec.last_updated_by IS NULL )
625: THEN
626: IF NOT QP_Validate.Last_Updated_By(p_MODIFIER_LIST_rec.last_updated_by) THEN
627: x_return_status := FND_API.G_RET_STS_ERROR;
628: END IF;
629: END IF;
630:
631: oe_debug_pub.add('here10');
634: p_old_MODIFIER_LIST_rec.last_update_date OR
635: p_old_MODIFIER_LIST_rec.last_update_date IS NULL )
636: THEN
637: IF NOT QP_Validate.Last_Update_Date(p_MODIFIER_LIST_rec.last_update_date) THEN
638: x_return_status := FND_API.G_RET_STS_ERROR;
639: END IF;
640: END IF;
641:
642: oe_debug_pub.add('here11');
645: p_old_MODIFIER_LIST_rec.last_update_login OR
646: p_old_MODIFIER_LIST_rec.last_update_login IS NULL )
647: THEN
648: IF NOT QP_Validate.Last_Update_Login(p_MODIFIER_LIST_rec.last_update_login) THEN
649: x_return_status := FND_API.G_RET_STS_ERROR;
650: END IF;
651: END IF;
652:
653: oe_debug_pub.add('here12');
656: p_old_MODIFIER_LIST_rec.list_header_id OR
657: p_old_MODIFIER_LIST_rec.list_header_id IS NULL )
658: THEN
659: IF NOT QP_Validate.List_Header(p_MODIFIER_LIST_rec.list_header_id) THEN
660: x_return_status := FND_API.G_RET_STS_ERROR;
661: END IF;
662: END IF;
663:
664: oe_debug_pub.add('here13');
667: p_old_MODIFIER_LIST_rec.list_type_code OR
668: p_old_MODIFIER_LIST_rec.list_type_code IS NULL )
669: THEN
670: IF NOT QP_Validate.List_Type(p_MODIFIER_LIST_rec.list_type_code) THEN
671: x_return_status := FND_API.G_RET_STS_ERROR;
672: END IF;
673: END IF;
674:
675: oe_debug_pub.add('here14');
678: p_old_MODIFIER_LIST_rec.program_application_id OR
679: p_old_MODIFIER_LIST_rec.program_application_id IS NULL )
680: THEN
681: IF NOT QP_Validate.Program_Application(p_MODIFIER_LIST_rec.program_application_id) THEN
682: x_return_status := FND_API.G_RET_STS_ERROR;
683: END IF;
684: END IF;
685:
686: oe_debug_pub.add('here15');
689: p_old_MODIFIER_LIST_rec.program_id OR
690: p_old_MODIFIER_LIST_rec.program_id IS NULL )
691: THEN
692: IF NOT QP_Validate.Program(p_MODIFIER_LIST_rec.program_id) THEN
693: x_return_status := FND_API.G_RET_STS_ERROR;
694: END IF;
695: END IF;
696:
697: oe_debug_pub.add('here16');
700: p_old_MODIFIER_LIST_rec.program_update_date OR
701: p_old_MODIFIER_LIST_rec.program_update_date IS NULL )
702: THEN
703: IF NOT QP_Validate.Program_Update_Date(p_MODIFIER_LIST_rec.program_update_date) THEN
704: x_return_status := FND_API.G_RET_STS_ERROR;
705: END IF;
706: END IF;
707:
708: oe_debug_pub.add('here17');
711: p_old_MODIFIER_LIST_rec.prorate_flag OR
712: p_old_MODIFIER_LIST_rec.prorate_flag IS NULL )
713: THEN
714: IF NOT QP_Validate.Prorate(p_MODIFIER_LIST_rec.prorate_flag) THEN
715: x_return_status := FND_API.G_RET_STS_ERROR;
716: END IF;
717: END IF;
718:
719: oe_debug_pub.add('here18');
722: p_old_MODIFIER_LIST_rec.request_id OR
723: p_old_MODIFIER_LIST_rec.request_id IS NULL )
724: THEN
725: IF NOT QP_Validate.Request(p_MODIFIER_LIST_rec.request_id) THEN
726: x_return_status := FND_API.G_RET_STS_ERROR;
727: END IF;
728: END IF;
729:
730: oe_debug_pub.add('here19');
733: p_old_MODIFIER_LIST_rec.rounding_factor OR
734: p_old_MODIFIER_LIST_rec.rounding_factor IS NULL )
735: THEN
736: IF NOT QP_Validate.Rounding_Factor(p_MODIFIER_LIST_rec.rounding_factor) THEN
737: x_return_status := FND_API.G_RET_STS_ERROR;
738: END IF;
739: END IF;
740:
741: oe_debug_pub.add('here20');
744: p_old_MODIFIER_LIST_rec.ship_method_code OR
745: p_old_MODIFIER_LIST_rec.ship_method_code IS NULL )
746: THEN
747: IF NOT QP_Validate.Ship_Method(p_MODIFIER_LIST_rec.ship_method_code) THEN
748: x_return_status := FND_API.G_RET_STS_ERROR;
749: END IF;
750: END IF;
751:
752: oe_debug_pub.add('here21');
758: THEN
759: oe_debug_pub.add('here');
760: IF NOT QP_Validate.Start_Date_Active(p_MODIFIER_LIST_rec.start_date_active) THEN
761: oe_debug_pub.add('here');
762: x_return_status := FND_API.G_RET_STS_ERROR;
763: END IF;
764: END IF;
765:
766: oe_debug_pub.add('here22');
769: p_old_MODIFIER_LIST_rec.terms_id OR
770: p_old_MODIFIER_LIST_rec.terms_id IS NULL )
771: THEN
772: IF NOT QP_Validate.Terms(p_MODIFIER_LIST_rec.terms_id) THEN
773: x_return_status := FND_API.G_RET_STS_ERROR;
774: END IF;
775: END IF;
776:
777: oe_debug_pub.add('here23');
780: p_old_MODIFIER_LIST_rec.source_system_code OR
781: p_old_MODIFIER_LIST_rec.source_system_code IS NULL )
782: THEN
783: IF NOT QP_Validate.Source_System(p_MODIFIER_LIST_rec.source_system_code) THEN
784: x_return_status := FND_API.G_RET_STS_ERROR;
785: END IF;
786: END IF;
787:
788: IF p_MODIFIER_LIST_rec.pte_code IS NOT NULL AND
790: p_old_MODIFIER_LIST_rec.pte_code OR
791: p_old_MODIFIER_LIST_rec.pte_code IS NULL )
792: THEN
793: IF NOT QP_Validate.Pte_Code(p_MODIFIER_LIST_rec.pte_code) THEN
794: x_return_status := FND_API.G_RET_STS_ERROR;
795: END IF;
796: END IF;
797:
798: oe_debug_pub.add('here24');
801: p_old_MODIFIER_LIST_rec.active_flag OR
802: p_old_MODIFIER_LIST_rec.active_flag IS NULL )
803: THEN
804: IF NOT QP_Validate.Active(p_MODIFIER_LIST_rec.active_flag) THEN
805: x_return_status := FND_API.G_RET_STS_ERROR;
806: END IF;
807: END IF;
808:
809: oe_debug_pub.add('here25');
812: p_old_MODIFIER_LIST_rec.parent_list_header_id OR
813: p_old_MODIFIER_LIST_rec.parent_list_header_id IS NULL )
814: THEN
815: IF NOT QP_Validate.Parent_List_Header(p_MODIFIER_LIST_rec.parent_list_header_id) THEN
816: x_return_status := FND_API.G_RET_STS_ERROR;
817: END IF;
818: END IF;
819:
820: oe_debug_pub.add('here26');
823: p_old_MODIFIER_LIST_rec.start_date_active_first OR
824: p_old_MODIFIER_LIST_rec.start_date_active_first IS NULL )
825: THEN
826: IF NOT QP_Validate.Start_Date_Active_First(p_MODIFIER_LIST_rec.start_date_active_first) THEN
827: x_return_status := FND_API.G_RET_STS_ERROR;
828: END IF;
829: END IF;
830:
831: oe_debug_pub.add('here27');
834: p_old_MODIFIER_LIST_rec.end_date_active_first OR
835: p_old_MODIFIER_LIST_rec.end_date_active_first IS NULL )
836: THEN
837: IF NOT QP_Validate.End_Date_Active_First(p_MODIFIER_LIST_rec.end_date_active_first) THEN
838: x_return_status := FND_API.G_RET_STS_ERROR;
839: END IF;
840: END IF;
841:
842: oe_debug_pub.add('here28');
845: p_old_MODIFIER_LIST_rec.active_date_first_type OR
846: p_old_MODIFIER_LIST_rec.active_date_first_type IS NULL )
847: THEN
848: IF NOT QP_Validate.Active_Date_First_Type(p_MODIFIER_LIST_rec.active_date_first_type) THEN
849: x_return_status := FND_API.G_RET_STS_ERROR;
850: END IF;
851: END IF;
852:
853: oe_debug_pub.add('here29');
856: p_old_MODIFIER_LIST_rec.start_date_active_second OR
857: p_old_MODIFIER_LIST_rec.start_date_active_second IS NULL )
858: THEN
859: IF NOT QP_Validate.Start_Date_Active_Second(p_MODIFIER_LIST_rec.start_date_active_second) THEN
860: x_return_status := FND_API.G_RET_STS_ERROR;
861: END IF;
862: END IF;
863:
864: IF p_MODIFIER_LIST_rec.global_flag IS NOT NULL AND
866: p_old_MODIFIER_LIST_rec.global_flag OR
867: p_old_MODIFIER_LIST_rec.global_flag IS NULL )
868: THEN
869: IF NOT QP_Validate.Global_Flag(p_MODIFIER_LIST_rec.global_flag) THEN
870: x_return_status := FND_API.G_RET_STS_ERROR;
871: END IF;
872: END IF;
873:
874:
878: p_old_MODIFIER_LIST_rec.end_date_active_second OR
879: p_old_MODIFIER_LIST_rec.end_date_active_second IS NULL )
880: THEN
881: IF NOT QP_Validate.End_Date_Active_Second(p_MODIFIER_LIST_rec.end_date_active_second) THEN
882: x_return_status := FND_API.G_RET_STS_ERROR;
883: END IF;
884: END IF;
885:
886: oe_debug_pub.add('here31');
889: p_old_MODIFIER_LIST_rec.active_date_second_type OR
890: p_old_MODIFIER_LIST_rec.active_date_second_type IS NULL )
891: THEN
892: IF NOT QP_Validate.Active_Date_Second_Type(p_MODIFIER_LIST_rec.active_date_second_type) THEN
893: x_return_status := FND_API.G_RET_STS_ERROR;
894: END IF;
895: END IF;
896:
897: IF p_MODIFIER_LIST_rec.ask_for_flag IS NOT NULL AND
899: p_old_MODIFIER_LIST_rec.ask_for_flag OR
900: p_old_MODIFIER_LIST_rec.ask_for_flag IS NULL )
901: THEN
902: IF NOT QP_Validate.Ask_For(p_MODIFIER_LIST_rec.ask_for_flag) THEN
903: x_return_status := FND_API.G_RET_STS_ERROR;
904: END IF;
905: END IF;
906:
907: IF p_MODIFIER_LIST_rec.name IS NOT NULL AND
909: p_old_MODIFIER_LIST_rec.name OR
910: p_old_MODIFIER_LIST_rec.name IS NULL )
911: THEN
912: IF NOT QP_Validate.Name(p_MODIFIER_LIST_rec.name) THEN
913: x_return_status := FND_API.G_RET_STS_ERROR;
914: END IF;
915: END IF;
916:
917: IF p_MODIFIER_LIST_rec.description IS NOT NULL AND
919: p_old_MODIFIER_LIST_rec.description OR
920: p_old_MODIFIER_LIST_rec.description IS NULL )
921: THEN
922: IF NOT QP_Validate.Description(p_MODIFIER_LIST_rec.description) THEN
923: x_return_status := FND_API.G_RET_STS_ERROR;
924: END IF;
925: END IF;
926:
927: oe_debug_pub.add('here31 - blanket pricing');
930: p_old_MODIFIER_LIST_rec.LIST_SOURCE_CODE OR
931: p_old_MODIFIER_LIST_rec.LIST_SOURCE_CODE IS NULL)
932: THEN
933: IF NOT QP_Validate.list_source_code(p_MODIFIER_LIST_rec.LIST_SOURCE_CODE) THEN
934: x_return_status := FND_API.G_RET_STS_ERROR;
935: END IF;
936: END IF;
937:
938: IF p_MODIFIER_LIST_rec.ORIG_SYSTEM_HEADER_REF IS NOT NULL AND
941: p_old_MODIFIER_LIST_rec.ORIG_SYSTEM_HEADER_REF IS NULL)
942: THEN
943: IF NOT QP_Validate.orig_system_header_ref(p_MODIFIER_LIST_rec.ORIG_SYSTEM_HEADER_REF)
944: THEN
945: x_return_status := FND_API.G_RET_STS_ERROR;
946: END IF;
947: END IF;
948:
949: IF p_MODIFIER_LIST_rec.SHAREABLE_FLAG IS NOT NULL AND
951: p_old_MODIFIER_LIST_rec.SHAREABLE_FLAG OR
952: p_old_MODIFIER_LIST_rec.SHAREABLE_FLAG IS NULL)
953: THEN
954: IF NOT QP_Validate.shareable_flag(p_MODIFIER_LIST_rec.SHAREABLE_FLAG) THEN
955: x_return_status := FND_API.G_RET_STS_ERROR;
956: END IF;
957: END IF;
958:
959: --added for MOAC
962: p_old_MODIFIER_LIST_rec.ORG_ID OR
963: p_old_MODIFIER_LIST_rec.ORG_ID IS NULL)
964: THEN
965: IF NOT QP_Validate.ORG_ID(p_MODIFIER_LIST_rec.ORG_ID) THEN
966: x_return_status := FND_API.G_RET_STS_ERROR;
967: END IF;
968: END IF;
969:
970: oe_debug_pub.add('here32');
1105:
1106: -- Validate descriptive flexfield.
1107:
1108: IF NOT QP_Validate.Desc_Flex( 'MODIFIER_LIST' ) THEN
1109: x_return_status := FND_API.G_RET_STS_ERROR;
1110: END IF;
1111:
1112: END IF;
1113:
1115:
1116: oe_debug_pub.add('END attributes in QPXLMLHB');
1117: EXCEPTION
1118:
1119: WHEN FND_API.G_EXC_ERROR THEN
1120:
1121: x_return_status := FND_API.G_RET_STS_ERROR;
1122:
1123: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1117: EXCEPTION
1118:
1119: WHEN FND_API.G_EXC_ERROR THEN
1120:
1121: x_return_status := FND_API.G_RET_STS_ERROR;
1122:
1123: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1124:
1125: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1119: WHEN FND_API.G_EXC_ERROR THEN
1120:
1121: x_return_status := FND_API.G_RET_STS_ERROR;
1122:
1123: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1124:
1125: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1126:
1127: WHEN OTHERS THEN
1121: x_return_status := FND_API.G_RET_STS_ERROR;
1122:
1123: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1124:
1125: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1126:
1127: WHEN OTHERS THEN
1128:
1129: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1125: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1126:
1127: WHEN OTHERS THEN
1128:
1129: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1130:
1131: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1132: THEN
1133: OE_MSG_PUB.Add_Exc_Msg
1145: ( x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
1146: , p_MODIFIER_LIST_rec IN QP_Modifiers_PUB.Modifier_List_Rec_Type
1147: )
1148: IS
1149: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1150: BEGIN
1151:
1152: oe_debug_pub.add('BEGIN entity_delete in QPXLMLHB');
1153: -- Validate entity delete.
1159: x_return_status := l_return_status;
1160:
1161: EXCEPTION
1162:
1163: WHEN FND_API.G_EXC_ERROR THEN
1164:
1165: x_return_status := FND_API.G_RET_STS_ERROR;
1166:
1167: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1161: EXCEPTION
1162:
1163: WHEN FND_API.G_EXC_ERROR THEN
1164:
1165: x_return_status := FND_API.G_RET_STS_ERROR;
1166:
1167: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1168:
1169: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1163: WHEN FND_API.G_EXC_ERROR THEN
1164:
1165: x_return_status := FND_API.G_RET_STS_ERROR;
1166:
1167: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1168:
1169: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1170:
1171: WHEN OTHERS THEN
1165: x_return_status := FND_API.G_RET_STS_ERROR;
1166:
1167: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1168:
1169: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1170:
1171: WHEN OTHERS THEN
1172:
1173: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1169: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1170:
1171: WHEN OTHERS THEN
1172:
1173: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1174:
1175: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1176: THEN
1177: OE_MSG_PUB.Add_Exc_Msg