DBA Data[Home] [Help]

PACKAGE BODY: APPS.QP_VALIDATE_MODIFIER_LIST

Source


1 PACKAGE BODY QP_Validate_Modifier_List AS
2 /* $Header: QPXLMLHB.pls 120.8.12020000.2 2012/12/11 11:07:11 dnema ship $ */
3 
4 --  Global constant holding the package name
5 
6 G_PKG_NAME                    CONSTANT VARCHAR2(30) := 'QP_Validate_Modifier_List';
7 
8 --  Procedure Entity
9 
10 PROCEDURE Entity
11 (   x_return_status                 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
12 ,   p_MODIFIER_LIST_rec             IN  QP_Modifiers_PUB.Modifier_List_Rec_Type
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
22 
23 
24     oe_debug_pub.add('BEGIN entity in QPXLMLHB');
25 
26     -- Check whether Source System Code matches
27     -- mkarya for bug 1728764, Prevent update of Trade Management Data in QP
28     QP_UTIL.Check_Source_System_Code
29                             (p_list_header_id => p_MODIFIER_LIST_rec.list_header_id,
30                              p_list_line_id   => NULL,
31                              x_return_status  => l_return_status
32                             );
33 
34     --  Check required attributes.
35 
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 
45             FND_MESSAGE.SET_NAME('QP','QP_ATTRIBUTE_REQUIRED');
46             FND_MESSAGE.SET_TOKEN('ATTRIBUTE','List Header Id');
47             OE_MSG_PUB.Add;
48 
49         END IF;
50 
51     END IF;
52 
53     --
54     --  Check rest of required attributes here.
55     --
56 
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;
66 
67         FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_LIST_TYPE');
68         OE_MSG_PUB.Add;
69 
70        END IF;
71 
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;
81 
82        END IF;
83 
84 
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;
94 
95        END IF;
96 
97       IF  p_old_MODIFIER_LIST_rec.list_type_code NOT IN ('DEL')
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;
107 
108        END IF;
109 
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;
119 
120        END IF;
121 
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;
131 
132        END IF;
133 
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;
143 
144        END IF; Bug 5503831 */
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;
154 
155         FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_NUMBER');
156         OE_MSG_PUB.Add;
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;
166 
167         FND_MESSAGE.SET_NAME('QP','QP_CANNOT_UPDATE_NAME');
168         OE_MSG_PUB.Add;
169 
170        END IF;
171 */
172    END IF;
173 
174 
175   IF  p_MODIFIER_LIST_rec.gsa_indicator IS NULL
176   THEN
177 
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
187         OE_MSG_PUB.Add;
188 
189      END IF;
190 
191 	IF     ( l_qp_status = 'I' AND
192 	         p_MODIFIER_LIST_rec.list_type_code <> 'PRO' AND
193               p_MODIFIER_LIST_rec.list_type_code <> 'DEL' AND
194               p_MODIFIER_LIST_rec.list_type_code <> 'DLT' AND
195               p_MODIFIER_LIST_rec.list_type_code <> 'PML' AND
196               p_MODIFIER_LIST_rec.list_type_code <> 'CHARGES' AND
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;
206 -- For bug 2363065, raise the error in basic pricing if not called from FTE
207 	IF  p_MODIFIER_LIST_rec.list_type_code <> 'PML' THEN
208 	  IF     ( l_qp_status = 'S' AND
209                 QP_MOD_LOADER_PUB.G_PROCESS_LST_REQ_TYPE <> 'FTE' AND
210                 p_MODIFIER_LIST_rec.list_type_code <> 'DLT' AND
211                 p_MODIFIER_LIST_rec.list_type_code <> 'CHARGES' AND
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;
221      END IF;
222 
223   END IF;
224 
225   IF  p_MODIFIER_LIST_rec.list_type_code <> 'PML' THEN
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 
235     END IF;
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 
245     END IF;
246 
247    -- Bug 2351145 - pte_code is mandatory only when attribute manager is installed
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 
257     END IF;
258    END IF;
259 
260   END IF;
261 
262   IF  p_MODIFIER_LIST_rec.list_type_code <> 'PML' THEN
263 
264        IF  p_MODIFIER_LIST_rec.currency_code IS NULL
265        THEN
266          If QP_Code_Control.Get_Code_Release_Level >  '110509'
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;
276        ELSE
277 
278      	BEGIN
279 
280 	     select currency_code
281 		into   l_currency_code
282 		from   fnd_currencies_vl
283 		where  enabled_flag = 'Y'
284 		and    currency_flag = 'Y'
285 		and    currency_code = p_MODIFIER_LIST_rec.currency_code;
286 /*		and    trunc(sysdate) between nvl(start_date_active,trunc(sysdate))
287 		and    nvl(end_date_active,trunc(sysdate));
288 		*/
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 
298        END;
299 
300      END IF;
301    END IF;
302 
303       IF  nvl( p_MODIFIER_LIST_rec.start_date_active,to_date('01/01/1951','mm/dd/yyyy')) >
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 
313       END IF;
314 
315       IF  nvl( p_MODIFIER_LIST_rec.start_date_active_first,to_date('01/01/1951','mm/dd/yyyy')) >
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 
325       END IF;
326 
327       IF  nvl( p_MODIFIER_LIST_rec.start_date_active_second,to_date('01/01/1951','mm/dd/yyyy')) >
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 
337       END IF;
338 
339      oe_debug_pub.add('list type code = '||p_MODIFIER_LIST_rec.list_type_code);
340      oe_debug_pub.add('parent list header id = '||
341 	to_char(p_MODIFIER_LIST_rec.parent_list_header_id));
342 
343 	IF  p_MODIFIER_LIST_rec.list_type_code = 'DEL'
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 
353      END IF;
354 
355      IF  p_MODIFIER_LIST_rec.list_type_code <> 'PML' THEN
356        IF  p_MODIFIER_LIST_rec.list_type_code <> 'CHARGES'
357 	  THEN
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;
367 
368          END IF;
369        END IF;
370 
371        IF  p_MODIFIER_LIST_rec.active_date_first_type IS NOT NULL
372 	  AND p_MODIFIER_LIST_rec.active_date_second_type IS NOT NULL
373 	  THEN
374          IF  p_MODIFIER_LIST_rec.active_date_first_type =
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 
384          END IF;
385        END IF;
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;
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');
399 		FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Global_flag');
400 		oe_msg_pub.add;
401          END IF;
402      END IF;
403   END IF;
404 
405     --added for MOAC
406     l_security_profile := QP_SECURITY.security_on;
407 
408     --IF ( p_MODIFIER_LIST_rec.global_flag IS NOT NULL)
409     IF (NVL(p_MODIFIER_LIST_rec.global_flag, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR)  --bug14758481
410     THEN
411 
412                 --if security is OFF, global_flag cannot be 'N'
413                 IF (l_security_profile = 'N'
414                 and p_MODIFIER_LIST_rec.global_flag in ('N', 'n')) THEN
415 	          l_return_status := FND_API.G_RET_STS_ERROR;
416 	          IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
417 		    FND_MESSAGE.SET_NAME('QP','QP_INVALID_ATTRIBUTE');
418 		    FND_MESSAGE.SET_TOKEN('ATTRIBUTE','global_flag');
419 		    oe_msg_pub.add;
420                   END IF;
421         	END IF;
422 
423                 IF l_security_profile = 'Y' THEN
424                   --if security is ON and global_flag is 'N', org_id cannot be null
425                   IF  (p_MODIFIER_LIST_rec.global_flag in ('N', 'n')
426                   and p_MODIFIER_LIST_rec.org_id is null) THEN
427 	            l_return_status := FND_API.G_RET_STS_ERROR;
428 	            IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
429 		      FND_MESSAGE.SET_NAME('QP','QP_ATTRIBUTE_REQUIRED');
430                       FND_MESSAGE.SET_TOKEN('ATTRIBUTE','ORG_ID');
431 		      oe_msg_pub.add;
432                     END IF;
433                   END IF;
434 
435                   --if org_id is not null and it is not a valid org
436                   IF (p_MODIFIER_LIST_rec.org_id is not null
437                   and QP_UTIL.validate_org_id(p_MODIFIER_LIST_rec.org_id) = 'N') THEN
438 	            l_return_status := FND_API.G_RET_STS_ERROR;
439 	            IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
440                       FND_MESSAGE.SET_NAME('FND','FND_MO_ORG_INVALID');
441 --		      FND_MESSAGE.SET_TOKEN('ATTRIBUTE','ORG_ID');
442 		      oe_msg_pub.add;
443                     END IF;
444                   END IF;
445                 END IF; --IF l_security_profile = 'Y'
446 
447                 --global_flag 'Y', and org_id not null combination is invalid
448                 IF ((p_MODIFIER_LIST_rec.global_flag = 'Y'
449                 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
450 --                and p_MODIFIER_LIST_rec.org_id <> FND_API.G_MISS_NUM THEN
451 	          l_return_status := FND_API.G_RET_STS_ERROR;
452 	          IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
453                     FND_MESSAGE.SET_NAME('QP', 'QP_GLOBAL_OR_ORG');
454 		    oe_msg_pub.add;
455                   END IF;
456                 END IF;--p_header_rec.global_flag
457       ELSE --bug14758481
458        -- QP Security is ON and Global Flag is null then throw required error for Global Flag
459        IF (l_security_profile = 'Y')
460        THEN
461             l_return_status := FND_API.G_RET_STS_ERROR;
462 	    IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR) THEN
463 	      FND_MESSAGE.SET_NAME('QP','QP_ATTRIBUTE_REQUIRED');
464               FND_MESSAGE.SET_TOKEN('ATTRIBUTE','GLOBAL_FLAG');
465 	      oe_msg_pub.add;
466             END IF;
467        END IF;
468     END IF;
469     --end validations for moac
470 
471     --  Return Error if a required attribute is missing.
472 
473     IF l_return_status = FND_API.G_RET_STS_ERROR THEN
474 
475         RAISE FND_API.G_EXC_ERROR;
476 
477     END IF;
478 
479     --
480     --  Check conditionally required attributes here.
481     --
482 
483 
484     --
485     --  Validate attribute dependencies here.
486     --
487 
488 
489     --  Done validating entity
490 
491     x_return_status := l_return_status;
492 
493     oe_debug_pub.add('END entity in QPXLMLHB');
494 
495 EXCEPTION
496 
497     WHEN FND_API.G_EXC_ERROR THEN
498 
499 oe_debug_pub.add('here in G_EXC');
500         x_return_status := FND_API.G_RET_STS_ERROR;
501 
502     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
503 
504         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
505 
506     WHEN OTHERS THEN
507 
508 oe_debug_pub.add('others EXP');
509         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
510 
511         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
512         THEN
513             OE_MSG_PUB.Add_Exc_Msg
514             (   G_PKG_NAME
515             ,   'Entity'
516             );
517         END IF;
518 
519 END Entity;
520 
521 --  Procedure Attributes
522 
523 PROCEDURE Attributes
524 (   x_return_status                 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
525 ,   p_MODIFIER_LIST_rec             IN  QP_Modifiers_PUB.Modifier_List_Rec_Type
526 ,   p_old_MODIFIER_LIST_rec         IN  QP_Modifiers_PUB.Modifier_List_Rec_Type :=
527                                         QP_Modifiers_PUB.G_MISS_MODIFIER_LIST_REC
528 )
529 IS
530 BEGIN
531 
532     oe_debug_pub.add('BEGIN attributes in QPXLMLHB');
533 
534     x_return_status := FND_API.G_RET_STS_SUCCESS;
535 
536     --  Validate MODIFIER_LIST attributes
537 
538     IF  p_MODIFIER_LIST_rec.automatic_flag IS NOT NULL AND
539         (   p_MODIFIER_LIST_rec.automatic_flag <>
540             p_old_MODIFIER_LIST_rec.automatic_flag OR
541             p_old_MODIFIER_LIST_rec.automatic_flag IS NULL )
542     THEN
543         IF NOT QP_Validate.Automatic(p_MODIFIER_LIST_rec.automatic_flag) THEN
544             x_return_status := FND_API.G_RET_STS_ERROR;
545         END IF;
546     END IF;
547 
548 oe_debug_pub.add('here1');
549     IF  p_MODIFIER_LIST_rec.comments IS NOT NULL AND
550         (   p_MODIFIER_LIST_rec.comments <>
551             p_old_MODIFIER_LIST_rec.comments OR
552             p_old_MODIFIER_LIST_rec.comments IS NULL )
553     THEN
554         IF NOT QP_Validate.Comments(p_MODIFIER_LIST_rec.comments) THEN
555             x_return_status := FND_API.G_RET_STS_ERROR;
556         END IF;
557     END IF;
558 
559     IF  p_MODIFIER_LIST_rec.created_by IS NOT NULL AND
560         (   p_MODIFIER_LIST_rec.created_by <>
561             p_old_MODIFIER_LIST_rec.created_by OR
562             p_old_MODIFIER_LIST_rec.created_by IS NULL )
563     THEN
564         IF NOT QP_Validate.Created_By(p_MODIFIER_LIST_rec.created_by) THEN
565             x_return_status := FND_API.G_RET_STS_ERROR;
566         END IF;
567     END IF;
568 
569     IF  p_MODIFIER_LIST_rec.creation_date IS NOT NULL AND
570         (   p_MODIFIER_LIST_rec.creation_date <>
571             p_old_MODIFIER_LIST_rec.creation_date OR
572             p_old_MODIFIER_LIST_rec.creation_date IS NULL )
573     THEN
574         IF NOT QP_Validate.Creation_Date(p_MODIFIER_LIST_rec.creation_date) THEN
575             x_return_status := FND_API.G_RET_STS_ERROR;
576         END IF;
577     END IF;
578 
579     IF  p_MODIFIER_LIST_rec.currency_code IS NOT NULL AND
580         (   p_MODIFIER_LIST_rec.currency_code <>
581             p_old_MODIFIER_LIST_rec.currency_code OR
582             p_old_MODIFIER_LIST_rec.currency_code IS NULL )
583     THEN
584         IF NOT QP_Validate.Currency(p_MODIFIER_LIST_rec.currency_code) THEN
585             x_return_status := FND_API.G_RET_STS_ERROR;
586         END IF;
587     END IF;
588 
589     IF  p_MODIFIER_LIST_rec.discount_lines_flag IS NOT NULL AND
590         (   p_MODIFIER_LIST_rec.discount_lines_flag <>
591             p_old_MODIFIER_LIST_rec.discount_lines_flag OR
592             p_old_MODIFIER_LIST_rec.discount_lines_flag IS NULL )
593     THEN
594         IF NOT QP_Validate.Discount_Lines(p_MODIFIER_LIST_rec.discount_lines_flag) THEN
595             x_return_status := FND_API.G_RET_STS_ERROR;
596         END IF;
597     END IF;
598 
599 oe_debug_pub.add('here6');
600     IF  p_MODIFIER_LIST_rec.end_date_active IS NOT NULL AND
601         (   p_MODIFIER_LIST_rec.end_date_active <>
602             p_old_MODIFIER_LIST_rec.end_date_active OR
603             p_old_MODIFIER_LIST_rec.end_date_active IS NULL )
604     THEN
605         IF NOT QP_Validate.End_Date_Active(p_MODIFIER_LIST_rec.end_date_active) THEN
606             x_return_status := FND_API.G_RET_STS_ERROR;
607         END IF;
608     END IF;
609 
610 oe_debug_pub.add('here7');
611     IF  p_MODIFIER_LIST_rec.freight_terms_code IS NOT NULL AND
612         (   p_MODIFIER_LIST_rec.freight_terms_code <>
613             p_old_MODIFIER_LIST_rec.freight_terms_code OR
614             p_old_MODIFIER_LIST_rec.freight_terms_code IS NULL )
615     THEN
616         IF NOT QP_Validate.Freight_Terms(p_MODIFIER_LIST_rec.freight_terms_code) THEN
617             x_return_status := FND_API.G_RET_STS_ERROR;
618         END IF;
619     END IF;
620 
621 oe_debug_pub.add('here8');
622     IF  p_MODIFIER_LIST_rec.gsa_indicator IS NOT NULL AND
623         (   p_MODIFIER_LIST_rec.gsa_indicator <>
624             p_old_MODIFIER_LIST_rec.gsa_indicator OR
625             p_old_MODIFIER_LIST_rec.gsa_indicator IS NULL )
626     THEN
627         IF NOT QP_Validate.Gsa_Indicator(p_MODIFIER_LIST_rec.gsa_indicator) THEN
628             x_return_status := FND_API.G_RET_STS_ERROR;
629         END IF;
630     END IF;
631 
632 oe_debug_pub.add('here9');
633     IF  p_MODIFIER_LIST_rec.last_updated_by IS NOT NULL AND
634         (   p_MODIFIER_LIST_rec.last_updated_by <>
635             p_old_MODIFIER_LIST_rec.last_updated_by OR
636             p_old_MODIFIER_LIST_rec.last_updated_by IS NULL )
637     THEN
638         IF NOT QP_Validate.Last_Updated_By(p_MODIFIER_LIST_rec.last_updated_by) THEN
639             x_return_status := FND_API.G_RET_STS_ERROR;
640         END IF;
641     END IF;
642 
643 oe_debug_pub.add('here10');
644     IF  p_MODIFIER_LIST_rec.last_update_date IS NOT NULL AND
645         (   p_MODIFIER_LIST_rec.last_update_date <>
646             p_old_MODIFIER_LIST_rec.last_update_date OR
647             p_old_MODIFIER_LIST_rec.last_update_date IS NULL )
648     THEN
649         IF NOT QP_Validate.Last_Update_Date(p_MODIFIER_LIST_rec.last_update_date) THEN
650             x_return_status := FND_API.G_RET_STS_ERROR;
651         END IF;
652     END IF;
653 
654 oe_debug_pub.add('here11');
655     IF  p_MODIFIER_LIST_rec.last_update_login IS NOT NULL AND
656         (   p_MODIFIER_LIST_rec.last_update_login <>
657             p_old_MODIFIER_LIST_rec.last_update_login OR
658             p_old_MODIFIER_LIST_rec.last_update_login IS NULL )
659     THEN
660         IF NOT QP_Validate.Last_Update_Login(p_MODIFIER_LIST_rec.last_update_login) THEN
661             x_return_status := FND_API.G_RET_STS_ERROR;
662         END IF;
663     END IF;
664 
665 oe_debug_pub.add('here12');
666     IF  p_MODIFIER_LIST_rec.list_header_id IS NOT NULL AND
667         (   p_MODIFIER_LIST_rec.list_header_id <>
668             p_old_MODIFIER_LIST_rec.list_header_id OR
669             p_old_MODIFIER_LIST_rec.list_header_id IS NULL )
670     THEN
671         IF NOT QP_Validate.List_Header(p_MODIFIER_LIST_rec.list_header_id) THEN
672             x_return_status := FND_API.G_RET_STS_ERROR;
673         END IF;
674     END IF;
675 
676 oe_debug_pub.add('here13');
677     IF  p_MODIFIER_LIST_rec.list_type_code IS NOT NULL AND
678         (   p_MODIFIER_LIST_rec.list_type_code <>
679             p_old_MODIFIER_LIST_rec.list_type_code OR
680             p_old_MODIFIER_LIST_rec.list_type_code IS NULL )
681     THEN
682         IF NOT QP_Validate.List_Type(p_MODIFIER_LIST_rec.list_type_code) THEN
683             x_return_status := FND_API.G_RET_STS_ERROR;
684         END IF;
685     END IF;
686 
687 oe_debug_pub.add('here14');
688     IF  p_MODIFIER_LIST_rec.program_application_id IS NOT NULL AND
689         (   p_MODIFIER_LIST_rec.program_application_id <>
690             p_old_MODIFIER_LIST_rec.program_application_id OR
691             p_old_MODIFIER_LIST_rec.program_application_id IS NULL )
692     THEN
693         IF NOT QP_Validate.Program_Application(p_MODIFIER_LIST_rec.program_application_id) THEN
694             x_return_status := FND_API.G_RET_STS_ERROR;
695         END IF;
696     END IF;
697 
698 oe_debug_pub.add('here15');
699     IF  p_MODIFIER_LIST_rec.program_id IS NOT NULL AND
700         (   p_MODIFIER_LIST_rec.program_id <>
701             p_old_MODIFIER_LIST_rec.program_id OR
702             p_old_MODIFIER_LIST_rec.program_id IS NULL )
703     THEN
704         IF NOT QP_Validate.Program(p_MODIFIER_LIST_rec.program_id) THEN
705             x_return_status := FND_API.G_RET_STS_ERROR;
706         END IF;
707     END IF;
708 
709 oe_debug_pub.add('here16');
710     IF  p_MODIFIER_LIST_rec.program_update_date IS NOT NULL AND
711         (   p_MODIFIER_LIST_rec.program_update_date <>
712             p_old_MODIFIER_LIST_rec.program_update_date OR
713             p_old_MODIFIER_LIST_rec.program_update_date IS NULL )
714     THEN
715         IF NOT QP_Validate.Program_Update_Date(p_MODIFIER_LIST_rec.program_update_date) THEN
716             x_return_status := FND_API.G_RET_STS_ERROR;
717         END IF;
718     END IF;
719 
720 oe_debug_pub.add('here17');
721     IF  p_MODIFIER_LIST_rec.prorate_flag IS NOT NULL AND
722         (   p_MODIFIER_LIST_rec.prorate_flag <>
723             p_old_MODIFIER_LIST_rec.prorate_flag OR
724             p_old_MODIFIER_LIST_rec.prorate_flag IS NULL )
725     THEN
726         IF NOT QP_Validate.Prorate(p_MODIFIER_LIST_rec.prorate_flag) THEN
727             x_return_status := FND_API.G_RET_STS_ERROR;
728         END IF;
729     END IF;
730 
731 oe_debug_pub.add('here18');
732     IF  p_MODIFIER_LIST_rec.request_id IS NOT NULL AND
733         (   p_MODIFIER_LIST_rec.request_id <>
734             p_old_MODIFIER_LIST_rec.request_id OR
735             p_old_MODIFIER_LIST_rec.request_id IS NULL )
736     THEN
737         IF NOT QP_Validate.Request(p_MODIFIER_LIST_rec.request_id) THEN
738             x_return_status := FND_API.G_RET_STS_ERROR;
739         END IF;
740     END IF;
741 
742 oe_debug_pub.add('here19');
743     IF  p_MODIFIER_LIST_rec.rounding_factor IS NOT NULL AND
744         (   p_MODIFIER_LIST_rec.rounding_factor <>
745             p_old_MODIFIER_LIST_rec.rounding_factor OR
746             p_old_MODIFIER_LIST_rec.rounding_factor IS NULL )
747     THEN
748         IF NOT QP_Validate.Rounding_Factor(p_MODIFIER_LIST_rec.rounding_factor) THEN
749             x_return_status := FND_API.G_RET_STS_ERROR;
750         END IF;
751     END IF;
752 
753 oe_debug_pub.add('here20');
754     IF  p_MODIFIER_LIST_rec.ship_method_code IS NOT NULL AND
755         (   p_MODIFIER_LIST_rec.ship_method_code <>
756             p_old_MODIFIER_LIST_rec.ship_method_code OR
757             p_old_MODIFIER_LIST_rec.ship_method_code IS NULL )
758     THEN
759         IF NOT QP_Validate.Ship_Method(p_MODIFIER_LIST_rec.ship_method_code) THEN
760             x_return_status := FND_API.G_RET_STS_ERROR;
761         END IF;
762     END IF;
763 
764 oe_debug_pub.add('here21');
765 oe_debug_pub.add(to_char(p_MODIFIER_LIST_rec.start_date_active)||'start_date');
766     IF  p_MODIFIER_LIST_rec.start_date_active IS NOT NULL AND
767         (   p_MODIFIER_LIST_rec.start_date_active <>
768             p_old_MODIFIER_LIST_rec.start_date_active OR
769             p_old_MODIFIER_LIST_rec.start_date_active IS NULL )
770     THEN
771     oe_debug_pub.add('here');
772         IF NOT QP_Validate.Start_Date_Active(p_MODIFIER_LIST_rec.start_date_active) THEN
773     oe_debug_pub.add('here');
774             x_return_status := FND_API.G_RET_STS_ERROR;
775         END IF;
776     END IF;
777 
778 oe_debug_pub.add('here22');
779     IF  p_MODIFIER_LIST_rec.terms_id IS NOT NULL AND
780         (   p_MODIFIER_LIST_rec.terms_id <>
781             p_old_MODIFIER_LIST_rec.terms_id OR
782             p_old_MODIFIER_LIST_rec.terms_id IS NULL )
783     THEN
784         IF NOT QP_Validate.Terms(p_MODIFIER_LIST_rec.terms_id) THEN
785             x_return_status := FND_API.G_RET_STS_ERROR;
786         END IF;
787     END IF;
788 
789 oe_debug_pub.add('here23');
790     IF  p_MODIFIER_LIST_rec.source_system_code IS NOT NULL AND
791         (   p_MODIFIER_LIST_rec.source_system_code <>
792             p_old_MODIFIER_LIST_rec.source_system_code OR
793             p_old_MODIFIER_LIST_rec.source_system_code IS NULL )
794     THEN
795         IF NOT QP_Validate.Source_System(p_MODIFIER_LIST_rec.source_system_code) THEN
796             x_return_status := FND_API.G_RET_STS_ERROR;
797         END IF;
798     END IF;
799 
800     IF  p_MODIFIER_LIST_rec.pte_code IS NOT NULL AND
801         (   p_MODIFIER_LIST_rec.pte_code <>
802             p_old_MODIFIER_LIST_rec.pte_code OR
803             p_old_MODIFIER_LIST_rec.pte_code IS NULL )
804     THEN
805         IF NOT QP_Validate.Pte_Code(p_MODIFIER_LIST_rec.pte_code) THEN
806             x_return_status := FND_API.G_RET_STS_ERROR;
807         END IF;
808     END IF;
809 
810 oe_debug_pub.add('here24');
811     IF  p_MODIFIER_LIST_rec.active_flag IS NOT NULL AND
812         (   p_MODIFIER_LIST_rec.active_flag <>
813             p_old_MODIFIER_LIST_rec.active_flag OR
814             p_old_MODIFIER_LIST_rec.active_flag IS NULL )
815     THEN
816         IF NOT QP_Validate.Active(p_MODIFIER_LIST_rec.active_flag) THEN
817             x_return_status := FND_API.G_RET_STS_ERROR;
818         END IF;
819     END IF;
820 
821 oe_debug_pub.add('here25');
822     IF  p_MODIFIER_LIST_rec.parent_list_header_id IS NOT NULL AND
823         (   p_MODIFIER_LIST_rec.parent_list_header_id <>
824             p_old_MODIFIER_LIST_rec.parent_list_header_id OR
825             p_old_MODIFIER_LIST_rec.parent_list_header_id IS NULL )
826     THEN
827         IF NOT QP_Validate.Parent_List_Header(p_MODIFIER_LIST_rec.parent_list_header_id) THEN
828             x_return_status := FND_API.G_RET_STS_ERROR;
829         END IF;
830     END IF;
831 
832 oe_debug_pub.add('here26');
833     IF  p_MODIFIER_LIST_rec.start_date_active_first IS NOT NULL AND
834         (   p_MODIFIER_LIST_rec.start_date_active_first <>
835             p_old_MODIFIER_LIST_rec.start_date_active_first OR
836             p_old_MODIFIER_LIST_rec.start_date_active_first IS NULL )
837     THEN
838         IF NOT QP_Validate.Start_Date_Active_First(p_MODIFIER_LIST_rec.start_date_active_first) THEN
839             x_return_status := FND_API.G_RET_STS_ERROR;
840         END IF;
841     END IF;
842 
843 oe_debug_pub.add('here27');
844     IF  p_MODIFIER_LIST_rec.end_date_active_first IS NOT NULL AND
845         (   p_MODIFIER_LIST_rec.end_date_active_first <>
846             p_old_MODIFIER_LIST_rec.end_date_active_first OR
847             p_old_MODIFIER_LIST_rec.end_date_active_first IS NULL )
848     THEN
849         IF NOT QP_Validate.End_Date_Active_First(p_MODIFIER_LIST_rec.end_date_active_first) THEN
850             x_return_status := FND_API.G_RET_STS_ERROR;
851         END IF;
852     END IF;
853 
854 oe_debug_pub.add('here28');
855     IF  p_MODIFIER_LIST_rec.active_date_first_type IS NOT NULL AND
856         (   p_MODIFIER_LIST_rec.active_date_first_type <>
857             p_old_MODIFIER_LIST_rec.active_date_first_type OR
858             p_old_MODIFIER_LIST_rec.active_date_first_type IS NULL )
859     THEN
860         IF NOT QP_Validate.Active_Date_First_Type(p_MODIFIER_LIST_rec.active_date_first_type) THEN
861             x_return_status := FND_API.G_RET_STS_ERROR;
862         END IF;
863     END IF;
864 
865 oe_debug_pub.add('here29');
866     IF  p_MODIFIER_LIST_rec.start_date_active_second IS NOT NULL AND
867         (   p_MODIFIER_LIST_rec.start_date_active_second <>
868             p_old_MODIFIER_LIST_rec.start_date_active_second OR
869             p_old_MODIFIER_LIST_rec.start_date_active_second IS NULL )
870     THEN
871         IF NOT QP_Validate.Start_Date_Active_Second(p_MODIFIER_LIST_rec.start_date_active_second) THEN
872             x_return_status := FND_API.G_RET_STS_ERROR;
873         END IF;
874     END IF;
875 
876     IF  p_MODIFIER_LIST_rec.global_flag IS NOT NULL AND
877         (   p_MODIFIER_LIST_rec.global_flag <>
878             p_old_MODIFIER_LIST_rec.global_flag OR
879             p_old_MODIFIER_LIST_rec.global_flag IS NULL )
880     THEN
881         IF NOT QP_Validate.Global_Flag(p_MODIFIER_LIST_rec.global_flag) THEN
882             x_return_status := FND_API.G_RET_STS_ERROR;
883         END IF;
884     END IF;
885 
886 
887 oe_debug_pub.add('here30');
888     IF  p_MODIFIER_LIST_rec.end_date_active_second IS NOT NULL AND
889         (   p_MODIFIER_LIST_rec.end_date_active_second <>
890             p_old_MODIFIER_LIST_rec.end_date_active_second OR
891             p_old_MODIFIER_LIST_rec.end_date_active_second IS NULL )
892     THEN
893         IF NOT QP_Validate.End_Date_Active_Second(p_MODIFIER_LIST_rec.end_date_active_second) THEN
894             x_return_status := FND_API.G_RET_STS_ERROR;
895         END IF;
896     END IF;
897 
898 oe_debug_pub.add('here31');
899     IF  p_MODIFIER_LIST_rec.active_date_second_type IS NOT NULL AND
900         (   p_MODIFIER_LIST_rec.active_date_second_type <>
901             p_old_MODIFIER_LIST_rec.active_date_second_type OR
902             p_old_MODIFIER_LIST_rec.active_date_second_type IS NULL )
903     THEN
904         IF NOT QP_Validate.Active_Date_Second_Type(p_MODIFIER_LIST_rec.active_date_second_type) THEN
905             x_return_status := FND_API.G_RET_STS_ERROR;
906         END IF;
907     END IF;
908 
909     IF  p_MODIFIER_LIST_rec.ask_for_flag IS NOT NULL AND
910         (   p_MODIFIER_LIST_rec.ask_for_flag <>
911             p_old_MODIFIER_LIST_rec.ask_for_flag OR
912             p_old_MODIFIER_LIST_rec.ask_for_flag IS NULL )
913     THEN
914         IF NOT QP_Validate.Ask_For(p_MODIFIER_LIST_rec.ask_for_flag) THEN
915             x_return_status := FND_API.G_RET_STS_ERROR;
916         END IF;
917     END IF;
918 
919     IF  p_MODIFIER_LIST_rec.name IS NOT NULL AND
920         (   p_MODIFIER_LIST_rec.name <>
921             p_old_MODIFIER_LIST_rec.name OR
922             p_old_MODIFIER_LIST_rec.name IS NULL )
923     THEN
924         IF NOT QP_Validate.Name(p_MODIFIER_LIST_rec.name) THEN
925             x_return_status := FND_API.G_RET_STS_ERROR;
926         END IF;
927     END IF;
928 
929     IF  p_MODIFIER_LIST_rec.description IS NOT NULL AND
930         (   p_MODIFIER_LIST_rec.description <>
931             p_old_MODIFIER_LIST_rec.description OR
932             p_old_MODIFIER_LIST_rec.description IS NULL )
933     THEN
934         IF NOT QP_Validate.Description(p_MODIFIER_LIST_rec.description) THEN
935             x_return_status := FND_API.G_RET_STS_ERROR;
936         END IF;
937     END IF;
938 
939 oe_debug_pub.add('here31 - blanket pricing');
940     IF p_MODIFIER_LIST_rec.LIST_SOURCE_CODE IS NOT NULL AND
941        (    p_MODIFIER_LIST_rec.LIST_SOURCE_CODE <>
942             p_old_MODIFIER_LIST_rec.LIST_SOURCE_CODE OR
943             p_old_MODIFIER_LIST_rec.LIST_SOURCE_CODE IS NULL)
944     THEN
945        IF NOT QP_Validate.list_source_code(p_MODIFIER_LIST_rec.LIST_SOURCE_CODE) THEN
946            x_return_status := FND_API.G_RET_STS_ERROR;
947        END IF;
948     END IF;
949 
950     IF p_MODIFIER_LIST_rec.ORIG_SYSTEM_HEADER_REF IS NOT NULL AND
951        (    p_MODIFIER_LIST_rec.ORIG_SYSTEM_HEADER_REF <>
952             p_old_MODIFIER_LIST_rec.ORIG_SYSTEM_HEADER_REF OR
953             p_old_MODIFIER_LIST_rec.ORIG_SYSTEM_HEADER_REF IS NULL)
954     THEN
955        IF NOT QP_Validate.orig_system_header_ref(p_MODIFIER_LIST_rec.ORIG_SYSTEM_HEADER_REF)
956        THEN
957            x_return_status := FND_API.G_RET_STS_ERROR;
958        END IF;
959     END IF;
960 
961     IF p_MODIFIER_LIST_rec.SHAREABLE_FLAG IS NOT NULL AND
962        (    p_MODIFIER_LIST_rec.SHAREABLE_FLAG <>
963             p_old_MODIFIER_LIST_rec.SHAREABLE_FLAG OR
964             p_old_MODIFIER_LIST_rec.SHAREABLE_FLAG IS NULL)
965     THEN
966        IF NOT QP_Validate.shareable_flag(p_MODIFIER_LIST_rec.SHAREABLE_FLAG) THEN
967            x_return_status := FND_API.G_RET_STS_ERROR;
968        END IF;
969     END IF;
970 
971     --added for MOAC
972     IF p_MODIFIER_LIST_rec.ORG_ID IS NOT NULL AND
973        (    p_MODIFIER_LIST_rec.ORG_ID <>
974             p_old_MODIFIER_LIST_rec.ORG_ID OR
975             p_old_MODIFIER_LIST_rec.ORG_ID IS NULL)
976     THEN
977        IF NOT QP_Validate.ORG_ID(p_MODIFIER_LIST_rec.ORG_ID) THEN
978            x_return_status := FND_API.G_RET_STS_ERROR;
979        END IF;
980     END IF;
981 
982 oe_debug_pub.add('here32');
983     IF  (p_MODIFIER_LIST_rec.attribute1 IS NOT NULL AND
984         (   p_MODIFIER_LIST_rec.attribute1 <>
985             p_old_MODIFIER_LIST_rec.attribute1 OR
986             p_old_MODIFIER_LIST_rec.attribute1 IS NULL ))
987     OR  (p_MODIFIER_LIST_rec.attribute10 IS NOT NULL AND
988         (   p_MODIFIER_LIST_rec.attribute10 <>
989             p_old_MODIFIER_LIST_rec.attribute10 OR
990             p_old_MODIFIER_LIST_rec.attribute10 IS NULL ))
991     OR  (p_MODIFIER_LIST_rec.attribute11 IS NOT NULL AND
992         (   p_MODIFIER_LIST_rec.attribute11 <>
993             p_old_MODIFIER_LIST_rec.attribute11 OR
994             p_old_MODIFIER_LIST_rec.attribute11 IS NULL ))
995     OR  (p_MODIFIER_LIST_rec.attribute12 IS NOT NULL AND
996         (   p_MODIFIER_LIST_rec.attribute12 <>
997             p_old_MODIFIER_LIST_rec.attribute12 OR
998             p_old_MODIFIER_LIST_rec.attribute12 IS NULL ))
999     OR  (p_MODIFIER_LIST_rec.attribute13 IS NOT NULL AND
1000         (   p_MODIFIER_LIST_rec.attribute13 <>
1001             p_old_MODIFIER_LIST_rec.attribute13 OR
1002             p_old_MODIFIER_LIST_rec.attribute13 IS NULL ))
1003     OR  (p_MODIFIER_LIST_rec.attribute14 IS NOT NULL AND
1004         (   p_MODIFIER_LIST_rec.attribute14 <>
1005             p_old_MODIFIER_LIST_rec.attribute14 OR
1006             p_old_MODIFIER_LIST_rec.attribute14 IS NULL ))
1007     OR  (p_MODIFIER_LIST_rec.attribute15 IS NOT NULL AND
1008         (   p_MODIFIER_LIST_rec.attribute15 <>
1009             p_old_MODIFIER_LIST_rec.attribute15 OR
1010             p_old_MODIFIER_LIST_rec.attribute15 IS NULL ))
1011     OR  (p_MODIFIER_LIST_rec.attribute2 IS NOT NULL AND
1012         (   p_MODIFIER_LIST_rec.attribute2 <>
1013             p_old_MODIFIER_LIST_rec.attribute2 OR
1014             p_old_MODIFIER_LIST_rec.attribute2 IS NULL ))
1015     OR  (p_MODIFIER_LIST_rec.attribute3 IS NOT NULL AND
1016         (   p_MODIFIER_LIST_rec.attribute3 <>
1017             p_old_MODIFIER_LIST_rec.attribute3 OR
1018             p_old_MODIFIER_LIST_rec.attribute3 IS NULL ))
1019     OR  (p_MODIFIER_LIST_rec.attribute4 IS NOT NULL AND
1020         (   p_MODIFIER_LIST_rec.attribute4 <>
1021             p_old_MODIFIER_LIST_rec.attribute4 OR
1022             p_old_MODIFIER_LIST_rec.attribute4 IS NULL ))
1023     OR  (p_MODIFIER_LIST_rec.attribute5 IS NOT NULL AND
1024         (   p_MODIFIER_LIST_rec.attribute5 <>
1025             p_old_MODIFIER_LIST_rec.attribute5 OR
1026             p_old_MODIFIER_LIST_rec.attribute5 IS NULL ))
1027     OR  (p_MODIFIER_LIST_rec.attribute6 IS NOT NULL AND
1028         (   p_MODIFIER_LIST_rec.attribute6 <>
1029             p_old_MODIFIER_LIST_rec.attribute6 OR
1030             p_old_MODIFIER_LIST_rec.attribute6 IS NULL ))
1031     OR  (p_MODIFIER_LIST_rec.attribute7 IS NOT NULL AND
1032         (   p_MODIFIER_LIST_rec.attribute7 <>
1033             p_old_MODIFIER_LIST_rec.attribute7 OR
1034             p_old_MODIFIER_LIST_rec.attribute7 IS NULL ))
1035     OR  (p_MODIFIER_LIST_rec.attribute8 IS NOT NULL AND
1036         (   p_MODIFIER_LIST_rec.attribute8 <>
1037             p_old_MODIFIER_LIST_rec.attribute8 OR
1038             p_old_MODIFIER_LIST_rec.attribute8 IS NULL ))
1039     OR  (p_MODIFIER_LIST_rec.attribute9 IS NOT NULL AND
1040         (   p_MODIFIER_LIST_rec.attribute9 <>
1041             p_old_MODIFIER_LIST_rec.attribute9 OR
1042             p_old_MODIFIER_LIST_rec.attribute9 IS NULL ))
1043     OR  (p_MODIFIER_LIST_rec.context IS NOT NULL AND
1044         (   p_MODIFIER_LIST_rec.context <>
1045             p_old_MODIFIER_LIST_rec.context OR
1046             p_old_MODIFIER_LIST_rec.context IS NULL ))
1047     THEN
1048 
1049     --  These calls are temporarily commented out
1050 
1051 /*
1052         FND_FLEX_DESC_VAL.Set_Column_Value
1053         (   column_name                   => 'ATTRIBUTE1'
1054         ,   column_value                  => p_MODIFIER_LIST_rec.attribute1
1055         );
1056         FND_FLEX_DESC_VAL.Set_Column_Value
1057         (   column_name                   => 'ATTRIBUTE10'
1058         ,   column_value                  => p_MODIFIER_LIST_rec.attribute10
1059         );
1060         FND_FLEX_DESC_VAL.Set_Column_Value
1061         (   column_name                   => 'ATTRIBUTE11'
1062         ,   column_value                  => p_MODIFIER_LIST_rec.attribute11
1063         );
1064         FND_FLEX_DESC_VAL.Set_Column_Value
1065         (   column_name                   => 'ATTRIBUTE12'
1066         ,   column_value                  => p_MODIFIER_LIST_rec.attribute12
1067         );
1068         FND_FLEX_DESC_VAL.Set_Column_Value
1069         (   column_name                   => 'ATTRIBUTE13'
1070         ,   column_value                  => p_MODIFIER_LIST_rec.attribute13
1071         );
1072         FND_FLEX_DESC_VAL.Set_Column_Value
1073         (   column_name                   => 'ATTRIBUTE14'
1074         ,   column_value                  => p_MODIFIER_LIST_rec.attribute14
1075         );
1076         FND_FLEX_DESC_VAL.Set_Column_Value
1077         (   column_name                   => 'ATTRIBUTE15'
1078         ,   column_value                  => p_MODIFIER_LIST_rec.attribute15
1079         );
1080         FND_FLEX_DESC_VAL.Set_Column_Value
1081         (   column_name                   => 'ATTRIBUTE2'
1082         ,   column_value                  => p_MODIFIER_LIST_rec.attribute2
1083         );
1084         FND_FLEX_DESC_VAL.Set_Column_Value
1085         (   column_name                   => 'ATTRIBUTE3'
1086         ,   column_value                  => p_MODIFIER_LIST_rec.attribute3
1087         );
1088         FND_FLEX_DESC_VAL.Set_Column_Value
1089         (   column_name                   => 'ATTRIBUTE4'
1090         ,   column_value                  => p_MODIFIER_LIST_rec.attribute4
1091         );
1092         FND_FLEX_DESC_VAL.Set_Column_Value
1093         (   column_name                   => 'ATTRIBUTE5'
1094         ,   column_value                  => p_MODIFIER_LIST_rec.attribute5
1095         );
1096         FND_FLEX_DESC_VAL.Set_Column_Value
1097         (   column_name                   => 'ATTRIBUTE6'
1098         ,   column_value                  => p_MODIFIER_LIST_rec.attribute6
1099         );
1100         FND_FLEX_DESC_VAL.Set_Column_Value
1101         (   column_name                   => 'ATTRIBUTE7'
1102         ,   column_value                  => p_MODIFIER_LIST_rec.attribute7
1103         );
1104         FND_FLEX_DESC_VAL.Set_Column_Value
1105         (   column_name                   => 'ATTRIBUTE8'
1106         ,   column_value                  => p_MODIFIER_LIST_rec.attribute8
1107         );
1108         FND_FLEX_DESC_VAL.Set_Column_Value
1109         (   column_name                   => 'ATTRIBUTE9'
1110         ,   column_value                  => p_MODIFIER_LIST_rec.attribute9
1111         );
1112         FND_FLEX_DESC_VAL.Set_Column_Value
1113         (   column_name                   => 'CONTEXT'
1114         ,   column_value                  => p_MODIFIER_LIST_rec.context
1115         );
1116 */
1117 
1118         --  Validate descriptive flexfield.
1119 
1120         IF NOT QP_Validate.Desc_Flex( 'MODIFIER_LIST' ) THEN
1121             x_return_status := FND_API.G_RET_STS_ERROR;
1122         END IF;
1123 
1124     END IF;
1125 
1126     --  Done validating attributes
1127 
1128     oe_debug_pub.add('END attributes in QPXLMLHB');
1129 EXCEPTION
1130 
1131     WHEN FND_API.G_EXC_ERROR THEN
1132 
1133         x_return_status := FND_API.G_RET_STS_ERROR;
1134 
1135     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1136 
1137         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1138 
1139     WHEN OTHERS THEN
1140 
1141         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1142 
1143         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1144         THEN
1145             OE_MSG_PUB.Add_Exc_Msg
1146             (   G_PKG_NAME
1147             ,   'Attributes'
1148             );
1149         END IF;
1150 
1151 
1152 END Attributes;
1153 
1154 --  Procedure Entity_Delete
1155 
1156 PROCEDURE Entity_Delete
1157 (   x_return_status                 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
1158 ,   p_MODIFIER_LIST_rec             IN  QP_Modifiers_PUB.Modifier_List_Rec_Type
1159 )
1160 IS
1161 l_return_status               VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1162 BEGIN
1163 
1164     oe_debug_pub.add('BEGIN entity_delete in QPXLMLHB');
1165     --  Validate entity delete.
1166 
1167     NULL;
1168 
1169     --  Done.
1170 
1171     x_return_status := l_return_status;
1172 
1173 EXCEPTION
1174 
1175     WHEN FND_API.G_EXC_ERROR THEN
1176 
1177         x_return_status := FND_API.G_RET_STS_ERROR;
1178 
1179     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1180 
1181         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1182 
1183     WHEN OTHERS THEN
1184 
1185         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1186 
1187         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1188         THEN
1189             OE_MSG_PUB.Add_Exc_Msg
1190             (   G_PKG_NAME
1191             ,   'Entity_Delete'
1192             );
1193         END IF;
1194 
1195     oe_debug_pub.add('END entity_delete in QPXLMLHB');
1196 END Entity_Delete;
1197 
1198 END QP_Validate_Modifier_List;