DBA Data[Home] [Help]

PACKAGE BODY: APPS.OE_HEADER_PAYMENT_SECURITY

Source


1 PACKAGE BODY OE_Header_Payment_Security AS
2 /* $Header: OEXXHPMB.pls 120.1 2005/09/16 11:06:53 ksurendr noship $ */
3 
4 
5 --  Global constant holding the package name
6 
7 G_PKG_NAME                    CONSTANT VARCHAR2(30) := 'OE_Header_Payment_Security';
8 
9 g_header_id                   NUMBER := FND_API.G_MISS_NUM;
10 
11 -- LOCAL PROCEDURES
12 
13 FUNCTION Is_Op_Constrained
14 (  p_operation           IN VARCHAR2
15  , p_column_name         IN VARCHAR2 DEFAULT NULL
16  , p_record              IN OE_AK_HEADER_PAYMENTS_V%ROWTYPE
17 , x_on_operation_action OUT NOCOPY NUMBER
18 
19 ) RETURN NUMBER IS
20 l_constraint_id	      NUMBER;
21 l_grp	              NUMBER;
22 l_result	      NUMBER;
23 l_constrained_column  VARCHAR2(30);
24 l_code_level varchar2(6) := OE_CODE_CONTROL.GET_CODE_RELEASE_LEVEL;
25 l_transaction_phase_code VARCHAR2(30);
26        --
27        l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
28        --
29 BEGIN
30 
31 IF p_record.header_id <> g_header_id THEN
32    OE_PC_Constraints_Admin_Pvt.Clear_Cached_Results;
33    g_header_id := p_record.header_id;
34 END IF;
35 
36 IF l_code_level >= '110510' THEN
37    OE_Order_Cache.Load_Order_Header(p_record.header_id);
38    l_transaction_phase_code := oe_order_cache.g_header_rec.transaction_phase_code;
39 END IF;
40 
41 l_result := OE_PC_Constraints_Admin_PVT.Is_OP_constrained
42     ( p_responsibility_id     => nvl(fnd_global.resp_id, -1)
43     , p_application_id          => nvl(fnd_global.resp_appl_id,-1) --added for bug3631547
44     , p_operation   => p_operation
45     , p_qualifier_attribute => l_transaction_phase_code
46     , p_entity_id   => OE_PC_GLOBALS.G_ENTITY_HEADER_PAYMENT
47     , p_column_name => p_column_name
48     , p_check_all_cols_constraint  => g_check_all_cols_constraint
49     , p_is_caller_defaulting  => g_is_caller_defaulting
50     , p_use_cached_results    => 'Y'
51     , x_constraint_id    => l_constraint_id
52     , x_constraining_conditions_grp     => l_grp
53     , x_on_operation_action   => x_on_operation_action
54     );
55 
56 if l_result = OE_PC_GLOBALS.YES then
57 
58     IF g_check_all_cols_constraint = 'Y' AND (p_operation = OE_PC_GLOBALS.UPDATE_OP
59        OR p_operation = OE_PC_GLOBALS.CREATE_OP) AND p_column_name IS NOT NULL THEN
60           SELECT column_name
61           INTO   l_constrained_column
62           FROM   oe_pc_constraints
63           WHERE  constraint_id = l_constraint_id;
64           if l_constrained_column is null AND x_on_operation_action = 0  then
65              oe_debug_pub.add('There is an UPDATE constraint on all columns - Error',1);
66              RAISE FND_API.G_EXC_ERROR;
67           end if;
68     END IF;
69 
70 elsif l_result = OE_PC_GLOBALS.ERROR then
71 
72     raise FND_API.G_EXC_UNEXPECTED_ERROR;
73 
74 end if;
75 
76 g_check_all_cols_constraint := 'N';
77 
78 IF x_on_operation_action > 0 THEN
79    l_result := OE_PC_GLOBALS.NO;
80 END IF;
81 
82 RETURN l_result;
83 
84 END Is_Op_Constrained;
85 
86 
87 -- PUBLIC PROCEDURES
88 
89 -- Start of fix #1459428  for function definition
90 
91 FUNCTION ATTRIBUTE1
92 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
93 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
94 , x_on_operation_action OUT NOCOPY NUMBER
95 
96 ) RETURN NUMBER
97 IS
98 l_result 	NUMBER;
99 --
100 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
101 --
102 BEGIN
103 
104     l_result := Is_OP_constrained
105         (p_operation	=> p_operation
106         ,p_column_name	=> 'ATTRIBUTE1'
107         ,p_record	=> p_record
108         ,x_on_operation_action	=> x_on_operation_action
109         );
110 
111 RETURN(l_result);
112 
113 END ATTRIBUTE1;
114 
115 
116 FUNCTION ATTRIBUTE10
117 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
118 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
119 , x_on_operation_action OUT NOCOPY NUMBER
120 
121 ) RETURN NUMBER
122 IS
123 l_result 	NUMBER;
124 --
125 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
126 --
127 BEGIN
128 
129     l_result := Is_OP_constrained
130         (p_operation	=> p_operation
131         ,p_column_name	=> 'ATTRIBUTE10'
132         ,p_record	=> p_record
133         ,x_on_operation_action	=> x_on_operation_action
134         );
135 
136 RETURN(l_result);
137 
138 END ATTRIBUTE10;
139 
140 
141 FUNCTION ATTRIBUTE11
142 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
143 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
144 , x_on_operation_action OUT NOCOPY NUMBER
145 
146 ) RETURN NUMBER
147 IS
148 l_result 	NUMBER;
149 --
150 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
151 --
152 BEGIN
153 
154     l_result := Is_OP_constrained
155         (p_operation	=> p_operation
156         ,p_column_name	=> 'ATTRIBUTE11'
157         ,p_record	=> p_record
158         ,x_on_operation_action	=> x_on_operation_action
159         );
160 
161 RETURN(l_result);
162 
163 END ATTRIBUTE11;
164 
165 
166 FUNCTION ATTRIBUTE12
167 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
168 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
169 , x_on_operation_action OUT NOCOPY NUMBER
170 
171 ) RETURN NUMBER
172 IS
173 l_result 	NUMBER;
174 --
175 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
176 --
177 BEGIN
178 
179     l_result := Is_OP_constrained
180         (p_operation	=> p_operation
181         ,p_column_name	=> 'ATTRIBUTE12'
182         ,p_record	=> p_record
183         ,x_on_operation_action	=> x_on_operation_action
184         );
185 
186 RETURN(l_result);
187 
188 END ATTRIBUTE12;
189 
190 
191 FUNCTION ATTRIBUTE13
192 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
193 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
194 , x_on_operation_action OUT NOCOPY NUMBER
195 
196 ) RETURN NUMBER
197 IS
198 l_result 	NUMBER;
199 --
200 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
201 --
202 BEGIN
203 
204     l_result := Is_OP_constrained
205         (p_operation	=> p_operation
206         ,p_column_name	=> 'ATTRIBUTE13'
207         ,p_record	=> p_record
208         ,x_on_operation_action	=> x_on_operation_action
209         );
210 
211 RETURN(l_result);
212 
213 END ATTRIBUTE13;
214 
215 
216 FUNCTION ATTRIBUTE14
217 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
218 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
219 , x_on_operation_action OUT NOCOPY NUMBER
220 
221 ) RETURN NUMBER
222 IS
223 l_result 	NUMBER;
224 --
225 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
226 --
227 BEGIN
228 
229     l_result := Is_OP_constrained
230         (p_operation	=> p_operation
231         ,p_column_name	=> 'ATTRIBUTE14'
232         ,p_record	=> p_record
233         ,x_on_operation_action	=> x_on_operation_action
234         );
235 
236 RETURN(l_result);
237 
238 END ATTRIBUTE14;
239 
240 
241 FUNCTION ATTRIBUTE15
242 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
243 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
244 , x_on_operation_action OUT NOCOPY NUMBER
245 
246 ) RETURN NUMBER
247 IS
248 l_result 	NUMBER;
249 --
250 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
251 --
252 BEGIN
253 
254     l_result := Is_OP_constrained
255         (p_operation	=> p_operation
256         ,p_column_name	=> 'ATTRIBUTE15'
257         ,p_record	=> p_record
258         ,x_on_operation_action	=> x_on_operation_action
259         );
260 
261 RETURN(l_result);
262 
263 END ATTRIBUTE15;
264 
265 
266 FUNCTION ATTRIBUTE2
267 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
268 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
269 , x_on_operation_action OUT NOCOPY NUMBER
270 
271 ) RETURN NUMBER
272 IS
273 l_result 	NUMBER;
274 --
275 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
276 --
277 BEGIN
278 
279     l_result := Is_OP_constrained
280         (p_operation	=> p_operation
281         ,p_column_name	=> 'ATTRIBUTE2'
282         ,p_record	=> p_record
283         ,x_on_operation_action	=> x_on_operation_action
284         );
285 
286 RETURN(l_result);
287 
288 END ATTRIBUTE2;
289 
290 
291 FUNCTION ATTRIBUTE3
292 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
293 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
294 , x_on_operation_action OUT NOCOPY NUMBER
295 
296 ) RETURN NUMBER
297 IS
298 l_result 	NUMBER;
299 --
300 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
301 --
302 BEGIN
303 
304     l_result := Is_OP_constrained
305         (p_operation	=> p_operation
306         ,p_column_name	=> 'ATTRIBUTE3'
307         ,p_record	=> p_record
308         ,x_on_operation_action	=> x_on_operation_action
309         );
310 
311 RETURN(l_result);
312 
313 END ATTRIBUTE3;
314 
315 
316 FUNCTION ATTRIBUTE4
317 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
318 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
319 , x_on_operation_action OUT NOCOPY NUMBER
320 
321 ) RETURN NUMBER
322 IS
323 l_result 	NUMBER;
324 --
325 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
326 --
327 BEGIN
328 
329     l_result := Is_OP_constrained
330         (p_operation	=> p_operation
331         ,p_column_name	=> 'ATTRIBUTE4'
332         ,p_record	=> p_record
333         ,x_on_operation_action	=> x_on_operation_action
334         );
335 
336 RETURN(l_result);
337 
338 END ATTRIBUTE4;
339 
340 
341 FUNCTION ATTRIBUTE5
342 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
343 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
344 , x_on_operation_action OUT NOCOPY NUMBER
345 
346 ) RETURN NUMBER
347 IS
348 l_result 	NUMBER;
349 --
350 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
351 --
352 BEGIN
353 
354     l_result := Is_OP_constrained
355         (p_operation	=> p_operation
356         ,p_column_name	=> 'ATTRIBUTE5'
357         ,p_record	=> p_record
358         ,x_on_operation_action	=> x_on_operation_action
359         );
360 
361 RETURN(l_result);
362 
363 END ATTRIBUTE5;
364 
365 
366 FUNCTION ATTRIBUTE6
367 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
368 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
369 , x_on_operation_action OUT NOCOPY NUMBER
370 
371 ) RETURN NUMBER
372 IS
373 l_result 	NUMBER;
374 --
375 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
376 --
377 BEGIN
378 
379     l_result := Is_OP_constrained
380         (p_operation	=> p_operation
381         ,p_column_name	=> 'ATTRIBUTE6'
382         ,p_record	=> p_record
383         ,x_on_operation_action	=> x_on_operation_action
384         );
385 
386 RETURN(l_result);
387 
388 END ATTRIBUTE6;
389 
390 
391 FUNCTION ATTRIBUTE7
392 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
393 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
394 , x_on_operation_action OUT NOCOPY NUMBER
395 
396 ) RETURN NUMBER
397 IS
398 l_result 	NUMBER;
399 --
400 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
401 --
402 BEGIN
403 
404     l_result := Is_OP_constrained
405         (p_operation	=> p_operation
406         ,p_column_name	=> 'ATTRIBUTE7'
407         ,p_record	=> p_record
408         ,x_on_operation_action	=> x_on_operation_action
409         );
410 
411 RETURN(l_result);
412 
413 END ATTRIBUTE7;
414 
415 
416 FUNCTION ATTRIBUTE8
417 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
418 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
419 , x_on_operation_action OUT NOCOPY NUMBER
420 
421 ) RETURN NUMBER
422 IS
423 l_result 	NUMBER;
424 --
425 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
426 --
427 BEGIN
428 
429     l_result := Is_OP_constrained
430         (p_operation	=> p_operation
431         ,p_column_name	=> 'ATTRIBUTE8'
432         ,p_record	=> p_record
433         ,x_on_operation_action	=> x_on_operation_action
434         );
435 
436 RETURN(l_result);
437 
438 END ATTRIBUTE8;
439 
440 
441 FUNCTION ATTRIBUTE9
442 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
443 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
444 , x_on_operation_action OUT NOCOPY NUMBER
445 
446 ) RETURN NUMBER
447 IS
448 l_result 	NUMBER;
449 --
450 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
451 --
452 BEGIN
453 
454     l_result := Is_OP_constrained
455         (p_operation	=> p_operation
456         ,p_column_name	=> 'ATTRIBUTE9'
457         ,p_record	=> p_record
458         ,x_on_operation_action	=> x_on_operation_action
459         );
460 
461 RETURN(l_result);
462 
463 END ATTRIBUTE9;
464 
465 
466 FUNCTION CONTEXT
467 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
468 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
469 , x_on_operation_action OUT NOCOPY NUMBER
470 
471 ) RETURN NUMBER
472 IS
473 l_result 	NUMBER;
474 --
475 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
476 --
477 BEGIN
478 
479     l_result := Is_OP_constrained
480         (p_operation	=> p_operation
481         ,p_column_name	=> 'CONTEXT'
482         ,p_record	=> p_record
483         ,x_on_operation_action	=> x_on_operation_action
484         );
485 
486 RETURN(l_result);
487 
488 END CONTEXT;
489 
490 -- End  of fix #1459428  for function definition
491 
492 FUNCTION CREATED_BY
493 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
494 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
495 , x_on_operation_action OUT NOCOPY NUMBER
496 
497 ) RETURN NUMBER
498 IS
499 l_result 	NUMBER;
500 --
501 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
502 --
503 BEGIN
504 
505     l_result := Is_OP_constrained
506         (p_operation	=> p_operation
507         ,p_column_name	=> 'CREATED_BY'
508         ,p_record	=> p_record
509         ,x_on_operation_action	=> x_on_operation_action
510         );
511 
512 RETURN(l_result);
513 
514 END CREATED_BY;
515 
516 
517 FUNCTION PAYMENT_LEVEL_CODE
518 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
519 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
520 , x_on_operation_action OUT NOCOPY NUMBER
521 
522 ) RETURN NUMBER
523 IS
524 l_result 	NUMBER;
525 --
526 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
527 --
528 BEGIN
529 
530     l_result := Is_OP_constrained
531         (p_operation	=> p_operation
532         ,p_column_name	=> 'PAYMENT_LEVEL_CODE'
533         ,p_record	=> p_record
534         ,x_on_operation_action	=> x_on_operation_action
535         );
536 
537 RETURN(l_result);
538 
539 END PAYMENT_LEVEL_CODE;
540 
541 
542 FUNCTION PAYMENT_TYPE_CODE
543 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
544 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
545 , x_on_operation_action OUT NOCOPY NUMBER
546 
547 ) RETURN NUMBER
548 IS
549 l_result 	NUMBER;
550 --
551 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
552 --
553 BEGIN
554 
555     l_result := Is_OP_constrained
556         (p_operation	=> p_operation
557         ,p_column_name	=> 'PAYMENT_TYPE_CODE'
558         ,p_record	=> p_record
559         ,x_on_operation_action	=> x_on_operation_action
560         );
561 
562 RETURN(l_result);
563 
564 END PAYMENT_TYPE_CODE;
565 
566 
567 
568 FUNCTION PAYMENT_TRX
569 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
570 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
571 , x_on_operation_action OUT NOCOPY NUMBER
572 
573 ) RETURN NUMBER
574 IS
575 l_result 	NUMBER;
576 --
577 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
578 --
579 BEGIN
580 
581     l_result := Is_OP_constrained
582         (p_operation	=> p_operation
583         ,p_column_name	=> 'PAYMENT_TRX_ID'
584         ,p_record	=> p_record
585         ,x_on_operation_action	=> x_on_operation_action
586         );
587 
588 RETURN(l_result);
589 
590 END PAYMENT_TRX;
591 
592 FUNCTION RECEIPT_METHOD
593 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
594 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
595 , x_on_operation_action OUT NOCOPY NUMBER
596 
597 ) RETURN NUMBER
598 IS
599 l_result 	NUMBER;
600 --
601 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
602 --
603 BEGIN
604 
605     l_result := Is_OP_constrained
606         (p_operation	=> p_operation
607         ,p_column_name	=> 'RECEIPT_METHOD_ID'
608         ,p_record	=> p_record
609         ,x_on_operation_action	=> x_on_operation_action
610         );
611 
612 RETURN(l_result);
613 
614 END RECEIPT_METHOD;
615 
616 FUNCTION PAYMENT_COLLECTION_EVENT
617 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
618 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
619 , x_on_operation_action OUT NOCOPY NUMBER
620 
621 ) RETURN NUMBER
622 IS
623 l_result 	NUMBER;
624 --
625 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
626 --
627 BEGIN
628 
629     l_result := Is_OP_constrained
630         (p_operation	=> p_operation
631         ,p_column_name	=> 'PAYMENT_COLLECTION_EVENT'
632         ,p_record	=> p_record
633         ,x_on_operation_action	=> x_on_operation_action
634         );
635 
636 RETURN(l_result);
637 
638 END PAYMENT_COLLECTION_EVENT;
639 
640 
641 FUNCTION CHECK_NUMBER
642 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
643 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
644 , x_on_operation_action OUT NOCOPY NUMBER
645 
646 ) RETURN NUMBER
647 IS
648 l_result 	NUMBER;
649 --
650 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
651 --
652 BEGIN
653 
654     l_result := Is_OP_constrained
655         (p_operation	=> p_operation
656         ,p_column_name	=> 'CHECK_NUMBER'
657         ,p_record	=> p_record
658         ,x_on_operation_action	=> x_on_operation_action
659         );
660 
661 RETURN(l_result);
662 
663 END CHECK_NUMBER;
664 
665 FUNCTION COMMITMENT_APPLIED_AMOUNT
666 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
667 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
668 , x_on_operation_action OUT NOCOPY NUMBER
669 
670 ) RETURN NUMBER
671 IS
672 l_result 	NUMBER;
673 --
674 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
675 --
676 BEGIN
677 
678     l_result := Is_OP_constrained
679         (p_operation	=> p_operation
680         ,p_column_name	=> 'COMMITMENT_APPLIED_AMOUNT'
681         ,p_record	=> p_record
682         ,x_on_operation_action	=> x_on_operation_action
683         );
684 
685 RETURN(l_result);
686 
687 END COMMITMENT_APPLIED_AMOUNT;
688 
689 FUNCTION CREDIT_CARD
690 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
691 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
692 , x_on_operation_action OUT NOCOPY NUMBER
693 
694 ) RETURN NUMBER
695 IS
696 l_result 	NUMBER;
697 --
698 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
699 --
700 BEGIN
701 
702     l_result := Is_OP_constrained
703         (p_operation	=> p_operation
704         ,p_column_name	=> 'CREDIT_CARD_CODE'
705         ,p_record	=> p_record
706         ,x_on_operation_action	=> x_on_operation_action
707         );
708 
709 RETURN(l_result);
710 
711 END CREDIT_CARD;
712 
713 FUNCTION CREDIT_CARD_NUMBER
714 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
715 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
716 , x_on_operation_action OUT NOCOPY NUMBER
717 
718 ) RETURN NUMBER
719 IS
720 l_result 	NUMBER;
721 --
722 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
723 --
724 BEGIN
725 
726     l_result := Is_OP_constrained
727         (p_operation	=> p_operation
728         ,p_column_name	=> 'CREDIT_CARD_NUMBER'
729         ,p_record	=> p_record
730         ,x_on_operation_action	=> x_on_operation_action
731         );
732 
733 RETURN(l_result);
734 
735 END CREDIT_CARD_NUMBER;
736 
737 FUNCTION CREDIT_CARD_HOLDER_NAME
738 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
739 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
740 , x_on_operation_action OUT NOCOPY NUMBER
741 
742 ) RETURN NUMBER
743 IS
744 l_result 	NUMBER;
745 --
746 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
747 --
748 BEGIN
749 
750     l_result := Is_OP_constrained
751         (p_operation	=> p_operation
752         ,p_column_name	=> 'CREDIT_CARD_HOLDER_NAME'
753         ,p_record	=> p_record
754         ,x_on_operation_action	=> x_on_operation_action
755         );
756 
757 RETURN(l_result);
758 
759 END CREDIT_CARD_HOLDER_NAME;
760 
761 FUNCTION CREDIT_CARD_EXPIRATION_DATE
762 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
763 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
764 , x_on_operation_action OUT NOCOPY NUMBER
765 
766 ) RETURN NUMBER
767 IS
768 l_result 	NUMBER;
769 --
770 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
771 --
772 BEGIN
773 
774     l_result := Is_OP_constrained
775         (p_operation	=> p_operation
776         ,p_column_name	=> 'CREDIT_CARD_EXPIRATION_DATE'
777         ,p_record	=> p_record
778         ,x_on_operation_action	=> x_on_operation_action
779         );
780 
781 RETURN(l_result);
782 
783 END CREDIT_CARD_EXPIRATION_DATE;
784 
785 FUNCTION CREDIT_CARD_APPROVAL
786 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
787 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
788 , x_on_operation_action OUT NOCOPY NUMBER
789 
790 ) RETURN NUMBER
791 IS
792 l_result 	NUMBER;
793 --
794 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
795 --
796 BEGIN
797 
798     l_result := Is_OP_constrained
799         (p_operation	=> p_operation
800         ,p_column_name	=> 'CREDIT_CARD_APPROVAL_CODE'
801         ,p_record	=> p_record
802         ,x_on_operation_action	=> x_on_operation_action
803         );
804 
805 RETURN(l_result);
806 
807 END CREDIT_CARD_APPROVAL;
808 
809 FUNCTION CREDIT_CARD_APPROVAL_DATE
810 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
811 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
812 , x_on_operation_action OUT NOCOPY NUMBER
813 
814 ) RETURN NUMBER
815 IS
816 l_result 	NUMBER;
817 --
818 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
819 --
820 BEGIN
821 
822     l_result := Is_OP_constrained
823         (p_operation	=> p_operation
824         ,p_column_name	=> 'CREDIT_CARD_APPROVAL_DATE'
825         ,p_record	=> p_record
826         ,x_on_operation_action	=> x_on_operation_action
827         );
828 
829 RETURN(l_result);
830 
831 END CREDIT_CARD_APPROVAL_DATE;
832 
833 FUNCTION PAYMENT_AMOUNT
834 (   p_operation                     IN  VARCHAR2 DEFAULT OE_PC_GLOBALS.UPDATE_OP
835 ,   p_record                        IN  OE_AK_HEADER_PAYMENTS_V%ROWTYPE
836 , x_on_operation_action OUT NOCOPY NUMBER
837 
838 ) RETURN NUMBER
839 IS
840 l_result 	NUMBER;
841 --
842 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
843 --
844 BEGIN
845 
846     l_result := Is_OP_constrained
847         (p_operation	=> p_operation
848         ,p_column_name	=> 'PAYMENT_AMOUNT'
849         ,p_record	=> p_record
850         ,x_on_operation_action	=> x_on_operation_action
851         );
852 
853 RETURN(l_result);
854 
855 END PAYMENT_AMOUNT;
856 
857 PROCEDURE Entity
858 (   p_HEADER_PAYMENT_rec            IN  OE_Order_PUB.HEADER_PAYMENT_Rec_Type
859 , x_result OUT NOCOPY NUMBER
860 
861 , x_return_status OUT NOCOPY VARCHAR2
862 
863 ) IS
864 l_operation	VARCHAR2(1);
865 l_on_operation_action	NUMBER;
866 l_rowtype_rec	OE_AK_HEADER_PAYMENTS_V%ROWTYPE;
867 --
868 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
869 --
870 BEGIN
871 
872 IF l_debug_level  > 0 THEN
873     oe_debug_pub.add(  'ENTER OE_HEADER_PAYMENT_SECURITY.ENTITY' , 1 ) ;
874 END IF;
875 
876 -- Initializing return status to SUCCESS
877 x_return_status := FND_API.G_RET_STS_SUCCESS;
878 
879 IF p_HEADER_PAYMENT_rec.operation = OE_GLOBALS.G_OPR_CREATE THEN
880     l_operation := OE_PC_GLOBALS.CREATE_OP;
881 ELSIF p_HEADER_PAYMENT_rec.operation = OE_GLOBALS.G_OPR_UPDATE THEN
882     l_operation := OE_PC_GLOBALS.UPDATE_OP;
883 ELSIF p_HEADER_PAYMENT_rec.operation = OE_GLOBALS.G_OPR_DELETE THEN
884     l_operation := OE_PC_GLOBALS.DELETE_OP;
885 ELSE
886     IF l_debug_level  > 0 THEN
887         oe_debug_pub.add(  'INVALID OPERATION' , 1 ) ;
888     END IF;
889     RAISE FND_API.G_EXC_ERROR;
890 END IF;
891 
892 OE_Header_Payment_Util.API_Rec_To_Rowtype_Rec
893 	(p_HEADER_PAYMENT_rec,
894 	l_rowtype_rec);
895 
896 -- Initialize security global record
897 OE_Header_Payment_SECURITY.g_record := l_rowtype_rec;
898 
899 x_result := Is_OP_constrained
900     (p_operation	=> l_operation
901     ,p_record	=> l_rowtype_rec
902     ,x_on_operation_action	=> l_on_operation_action
903     );
904 
905 IF l_debug_level  > 0 THEN
906     oe_debug_pub.add(  'EXIT OE_HEADER_PAYMENT_SECURITY.ENTITY' , 1 ) ;
907 END IF;
908 
909 EXCEPTION
910     WHEN OTHERS THEN
911     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
912     IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
913         OE_MSG_PUB.Add_Exc_Msg
914         (   G_PKG_NAME
915         ,   'Entity'
916         );
917     END IF;
918 
919 END Entity;
920 
921 
922 PROCEDURE Attributes
923 (   p_HEADER_PAYMENT_rec            IN  OE_Order_PUB.HEADER_PAYMENT_Rec_Type
924 ,   p_old_HEADER_PAYMENT_rec        IN  OE_Order_PUB.HEADER_PAYMENT_Rec_Type := OE_Order_PUB.G_MISS_HEADER_PAYMENT_REC
925 , x_result OUT NOCOPY NUMBER
926 
927 , x_return_status OUT NOCOPY VARCHAR2
928 
929 ) IS
930 l_operation	VARCHAR2(1);
931 l_on_operation_action  NUMBER;
932 l_result		NUMBER;
933 l_rowtype_rec	OE_AK_HEADER_PAYMENTS_V%ROWTYPE;
934 l_column_name	VARCHAR2(30);
935 l_check_all_cols_constraint VARCHAR2(1);
936 --
937 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
938 --
939 BEGIN
940 IF l_debug_level  > 0 THEN
941     oe_debug_pub.add(  'ENTER OE_HEADER_PAYMENT_SECURITY.ATTRIBUTES' , 1 ) ;
942 END IF;
943 
944 -- Initializing return status to SUCCESS
945 x_return_status := FND_API.G_RET_STS_SUCCESS;
946 
947 -- Initializing out result to NOT CONSTRAINED
948 x_result := OE_PC_GLOBALS.NO;
949 
950  -- Get the operation code to be passed to the security framework API
951 IF p_HEADER_PAYMENT_rec.operation = OE_GLOBALS.G_OPR_CREATE THEN
952 
953     l_operation := OE_PC_GLOBALS.CREATE_OP;
954 
955     -- Bug 1755817: if there are no attribute-specific insert
956     -- constraints, then no need to go further. Entity level
957     -- security check for CREATE will be called again from
958     -- process order after defaulting.
959     IF NOT OE_PC_Constraints_Admin_PVT.Check_On_Insert_Exists
960            (p_entity_id   => OE_PC_GLOBALS.G_ENTITY_HEADER_PAYMENT
961            ,p_responsibility_id     => nvl(fnd_global.resp_id, -1)
962            , p_application_id          => nvl(fnd_global.resp_appl_id,-1) --added for bug3631547
963            )
964     THEN
965        RETURN;
966     END IF;
967 
968 ELSIF p_HEADER_PAYMENT_rec.operation = OE_GLOBALS.G_OPR_UPDATE THEN
969     l_operation := OE_PC_GLOBALS.UPDATE_OP;
970 ELSE
971     IF l_debug_level  > 0 THEN
972         oe_debug_pub.add(  'INVALID OPERATION' , 1 ) ;
973     END IF;
974     RAISE FND_API.G_EXC_ERROR;
975 END IF;
976 
977 OE_Header_Payment_Util.API_Rec_To_Rowtype_Rec
978 	(p_HEADER_PAYMENT_rec,
979 	l_rowtype_rec);
980 
981 -- Initialize security global record
982 OE_Header_Payment_SECURITY.g_record := l_rowtype_rec;
983 
984 -- Compare the new and old entity records and
985 -- check constraints for all the changed attributes.
986 
987     IF p_header_payment_rec.payment_level_code = FND_API.G_MISS_CHAR THEN NULL;
988     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.payment_level_code,p_old_header_payment_rec.payment_level_code) THEN
989 
990         l_result := PAYMENT_LEVEL_CODE
991             (p_operation        => l_operation
992             ,p_record   => l_rowtype_rec
993             ,x_on_operation_action => l_on_operation_action
994             );
995 
996         IF l_result = OE_PC_GLOBALS.YES THEN
997             -- set OUT result to CONSTRAINED
998             x_result := OE_PC_GLOBALS.YES;
999         END IF;
1000 
1001     END IF;
1002 
1003     IF p_header_payment_rec.commitment_applied_amount = FND_API.G_MISS_NUM THEN NULL;
1004     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.commitment_applied_amount,p_old_header_payment_rec.commitment_applied_amount) THEN
1005 
1006         l_result := COMMITMENT_APPLIED_AMOUNT
1007             (p_operation        => l_operation
1008             ,p_record   => l_rowtype_rec
1009             ,x_on_operation_action => l_on_operation_action
1010             );
1011 
1012         IF l_result = OE_PC_GLOBALS.YES THEN
1013             -- set OUT result to CONSTRAINED
1014             x_result := OE_PC_GLOBALS.YES;
1015         END IF;
1016 
1017     END IF;
1018 
1019     IF p_header_payment_rec.credit_card_code = FND_API.G_MISS_CHAR THEN NULL;
1020     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.credit_card_code,p_old_header_payment_rec.credit_card_code) THEN
1021 
1022         l_result := CREDIT_CARD
1023             (p_operation        => l_operation
1024             ,p_record   => l_rowtype_rec
1025             ,x_on_operation_action => l_on_operation_action
1026             );
1027 
1028         IF l_result = OE_PC_GLOBALS.YES THEN
1029             -- set OUT result to CONSTRAINED
1030             x_result := OE_PC_GLOBALS.YES;
1031         END IF;
1032 
1033     END IF;
1034     --R12 CC Encryption
1035     --Since the credit card numbers are encrypted, calling
1036     --the function same credit card to determine whether the old
1037     --and new card numbers are equal.
1038 
1039     IF p_header_payment_rec.credit_card_number = FND_API.G_MISS_CHAR THEN NULL;
1040     ELSIF NOT OE_GLOBALS.Is_Same_Credit_Card(p_old_header_payment_rec.credit_card_number,
1041 					    p_header_payment_rec.credit_card_number,
1042 					    p_old_header_payment_rec.cc_instrument_id,
1043 					    p_header_payment_rec.cc_instrument_id)
1044     THEN
1045 	l_result := CREDIT_CARD_NUMBER
1046             (p_operation        => l_operation
1047             ,p_record   => l_rowtype_rec
1048             ,x_on_operation_action => l_on_operation_action
1049             );
1050 
1051         IF l_result = OE_PC_GLOBALS.YES THEN
1052             -- set OUT result to CONSTRAINED
1053             x_result := OE_PC_GLOBALS.YES;
1054         END IF;
1055 
1056     END IF;
1057 
1058     IF p_header_payment_rec.credit_card_holder_name = FND_API.G_MISS_CHAR THEN NULL;
1059     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.credit_card_holder_name,p_old_header_payment_rec.credit_card_holder_name) THEN
1060 
1061         l_result := CREDIT_CARD_HOLDER_NAME
1062             (p_operation        => l_operation
1063             ,p_record   => l_rowtype_rec
1064             ,x_on_operation_action => l_on_operation_action
1065             );
1066 
1067         IF l_result = OE_PC_GLOBALS.YES THEN
1068             -- set OUT result to CONSTRAINED
1069             x_result := OE_PC_GLOBALS.YES;
1070         END IF;
1071 
1072     END IF;
1073 
1074     IF p_header_payment_rec.credit_card_expiration_date = FND_API.G_MISS_DATE THEN NULL;
1075     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.credit_card_expiration_date,p_old_header_payment_rec.credit_card_expiration_date) THEN
1076 
1077         l_result := CREDIT_CARD_EXPIRATION_DATE
1078             (p_operation        => l_operation
1079             ,p_record   => l_rowtype_rec
1080             ,x_on_operation_action => l_on_operation_action
1081             );
1082 
1083         IF l_result = OE_PC_GLOBALS.YES THEN
1084             -- set OUT result to CONSTRAINED
1085             x_result := OE_PC_GLOBALS.YES;
1086         END IF;
1087 
1088     END IF;
1089 
1090     IF p_header_payment_rec.credit_card_approval_code = FND_API.G_MISS_CHAR THEN NULL;
1091     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.credit_card_approval_code,p_old_header_payment_rec.credit_card_approval_code) THEN
1092 
1093         l_result := CREDIT_CARD_APPROVAL
1094             (p_operation        => l_operation
1095             ,p_record   => l_rowtype_rec
1096             ,x_on_operation_action => l_on_operation_action
1097             );
1098 
1099         IF l_result = OE_PC_GLOBALS.YES THEN
1100             -- set OUT result to CONSTRAINED
1101             x_result := OE_PC_GLOBALS.YES;
1102         END IF;
1103 
1104     END IF;
1105 
1106     IF p_header_payment_rec.credit_card_approval_date = FND_API.G_MISS_DATE THEN NULL;
1107     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.credit_card_approval_date,p_old_header_payment_rec.credit_card_approval_date) THEN
1108 
1109         l_result := CREDIT_CARD_APPROVAL_DATE
1110             (p_operation        => l_operation
1111             ,p_record   => l_rowtype_rec
1112             ,x_on_operation_action => l_on_operation_action
1113             );
1114 
1115         IF l_result = OE_PC_GLOBALS.YES THEN
1116             -- set OUT result to CONSTRAINED
1117             x_result := OE_PC_GLOBALS.YES;
1118         END IF;
1119 
1120     END IF;
1121 
1122     IF p_header_payment_rec.payment_amount = FND_API.G_MISS_NUM THEN NULL;
1123     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.payment_amount,p_old_header_payment_rec.payment_amount) THEN
1124 
1125         l_result := PAYMENT_AMOUNT
1126             (p_operation        => l_operation
1127             ,p_record   => l_rowtype_rec
1128             ,x_on_operation_action => l_on_operation_action
1129             );
1130 
1131         IF l_result = OE_PC_GLOBALS.YES THEN
1132             -- set OUT result to CONSTRAINED
1133             x_result := OE_PC_GLOBALS.YES;
1134         END IF;
1135 
1136     END IF;
1137 
1138     IF p_header_payment_rec.payment_type_code = FND_API.G_MISS_CHAR THEN NULL;
1139     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.payment_type_code,p_old_header_payment_rec.payment_type_code) THEN
1140 
1141         l_result := PAYMENT_TYPE_CODE
1142             (p_operation        => l_operation
1143             ,p_record   => l_rowtype_rec
1144             ,x_on_operation_action => l_on_operation_action
1145             );
1146 
1147         IF l_result = OE_PC_GLOBALS.YES THEN
1148             -- set OUT result to CONSTRAINED
1149             x_result := OE_PC_GLOBALS.YES;
1150         END IF;
1151 
1152     END IF;
1153 
1154   IF p_header_payment_rec.payment_trx_id = FND_API.G_MISS_NUM THEN NULL;
1155     ELSIF NOT OE_GLOBALS.Equal(p_header_payment_rec.payment_trx_id, p_old_header_payment_rec.payment_trx_id) THEN
1156 
1157         l_result := PAYMENT_TRX
1158             (p_operation	=> l_operation
1159             ,p_record	=> l_rowtype_rec
1160             ,x_on_operation_action => l_on_operation_action
1161             );
1162         IF l_result = OE_PC_GLOBALS.YES THEN
1163             -- set OUT result to CONSTRAINED
1164             x_result := OE_PC_GLOBALS.YES;
1165         END IF;
1166 
1167     END IF;
1168 
1169 
1170     IF p_header_payment_rec.receipt_method_id = FND_API.G_MISS_NUM THEN NULL;
1171       ELSIF NOT OE_GLOBALS.Equal(p_header_payment_rec.receipt_method_id, p_old_header_payment_rec.receipt_method_id) THEN
1172 
1173         l_result := RECEIPT_METHOD
1174             (p_operation	=> l_operation
1175             ,p_record	=> l_rowtype_rec
1176             ,x_on_operation_action => l_on_operation_action
1177             );
1178         IF l_result = OE_PC_GLOBALS.YES THEN
1179             -- set OUT result to CONSTRAINED
1180             x_result := OE_PC_GLOBALS.YES;
1181         END IF;
1182 
1183     END IF;
1184 
1185 
1186     IF p_header_payment_rec.payment_collection_event = FND_API.G_MISS_CHAR THEN NULL;
1187       ELSIF NOT OE_GLOBALS.Equal(p_header_payment_rec.payment_collection_event, p_old_header_payment_rec.payment_collection_event) THEN
1188 
1189         l_result := PAYMENT_COLLECTION_EVENT
1190             (p_operation	=> l_operation
1191             ,p_record	=> l_rowtype_rec
1192             ,x_on_operation_action => l_on_operation_action
1193             );
1194         IF l_result = OE_PC_GLOBALS.YES THEN
1195             -- set OUT result to CONSTRAINED
1196             x_result := OE_PC_GLOBALS.YES;
1197         END IF;
1198 
1199     END IF;
1200 
1201     IF p_header_payment_rec.check_number = FND_API.G_MISS_CHAR THEN NULL;
1202       ELSIF NOT OE_GLOBALS.Equal(p_header_payment_rec.check_number, p_old_header_payment_rec.check_number) THEN
1203 
1204         l_result := CHECK_NUMBER
1205             (p_operation	=> l_operation
1206             ,p_record	=> l_rowtype_rec
1207             ,x_on_operation_action => l_on_operation_action
1208             );
1209         IF l_result = OE_PC_GLOBALS.YES THEN
1210             -- set OUT result to CONSTRAINED
1211             x_result := OE_PC_GLOBALS.YES;
1212         END IF;
1213 
1214     END IF;
1215 
1216     -- BEGIN: CHECK FOR CONSTRAINTS ON DESC FLEXFIELD ATTRIBUTES
1217     -- Bug 2003823:
1218     -- If profile indicates that generic update constraints (e.g. seeded
1219     -- closed order condition) should not be checked for DFF, then
1220     -- set the global to 'N'.
1221     -- Also, store the current value of global in a local variable and
1222     -- re-set it after DFF check. If DFF were the only fields being
1223     -- updated and profile was set to 'N', global at the end should
1224     -- be re-set to 'Y' - this indicates to process order that no
1225     -- constrainable attributes were updated and thus, it would
1226     -- suppress entity level security check also.
1227     IF OE_PC_GLOBALS.G_CHECK_UPDATE_ALL_FOR_DFF = 'N' THEN
1228        l_check_all_cols_constraint := g_check_all_cols_constraint;
1229        g_check_all_cols_constraint := 'N';
1230     END IF;
1231 
1232     IF p_header_payment_rec.context = FND_API.G_MISS_CHAR THEN NULL;
1233     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.context,p_old_header_payment_rec.context) THEN
1234 
1235         l_result := CONTEXT
1236             (p_operation        => l_operation
1237             ,p_record   => l_rowtype_rec
1238             ,x_on_operation_action => l_on_operation_action
1239             );
1240 
1241         IF l_result = OE_PC_GLOBALS.YES THEN
1242             -- set OUT result to CONSTRAINED
1243             x_result := OE_PC_GLOBALS.YES;
1244         END IF;
1245 
1246     END IF;
1247 
1248    IF p_header_payment_rec.attribute1 = FND_API.G_MISS_CHAR THEN NULL;
1249     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute1,p_old_header_payment_rec.attribute1) THEN
1250 
1251         l_result := ATTRIBUTE1
1252             (p_operation        => l_operation
1253             ,p_record   => l_rowtype_rec
1254             ,x_on_operation_action => l_on_operation_action
1255             );
1256 
1257         IF l_result = OE_PC_GLOBALS.YES THEN
1258             -- set OUT result to CONSTRAINED
1259             x_result := OE_PC_GLOBALS.YES;
1260         END IF;
1261 
1262     END IF;
1263 
1264     IF p_header_payment_rec.attribute10 = FND_API.G_MISS_CHAR THEN NULL;
1265     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute10,p_old_header_payment_rec.attribute10) THEN
1266 
1267         l_result := ATTRIBUTE10
1268             (p_operation        => l_operation
1269             ,p_record   => l_rowtype_rec
1270             ,x_on_operation_action => l_on_operation_action
1271             );
1272 
1273         IF l_result = OE_PC_GLOBALS.YES THEN
1274             -- set OUT result to CONSTRAINED
1275             x_result := OE_PC_GLOBALS.YES;
1276         END IF;
1277 
1278     END IF;
1279 
1280     IF p_header_payment_rec.attribute11 = FND_API.G_MISS_CHAR THEN NULL;
1281     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute11,p_old_header_payment_rec.attribute11) THEN
1282 
1283         l_result := ATTRIBUTE11
1284             (p_operation        => l_operation
1285             ,p_record   => l_rowtype_rec
1286             ,x_on_operation_action => l_on_operation_action
1287             );
1288 
1289         IF l_result = OE_PC_GLOBALS.YES THEN
1290             -- set OUT result to CONSTRAINED
1291             x_result := OE_PC_GLOBALS.YES;
1292         END IF;
1293 
1294     END IF;
1295 
1296     IF p_header_payment_rec.attribute12 = FND_API.G_MISS_CHAR THEN NULL;
1297     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute12,p_old_header_payment_rec.attribute12) THEN
1298 
1299         l_result := ATTRIBUTE12
1300             (p_operation        => l_operation
1301             ,p_record   => l_rowtype_rec
1302             ,x_on_operation_action => l_on_operation_action
1303             );
1304 
1305         IF l_result = OE_PC_GLOBALS.YES THEN
1306             -- set OUT result to CONSTRAINED
1307             x_result := OE_PC_GLOBALS.YES;
1308         END IF;
1309 
1310     END IF;
1311 
1312     IF p_header_payment_rec.attribute13 = FND_API.G_MISS_CHAR THEN NULL;
1313     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute13,p_old_header_payment_rec.attribute13) THEN
1314 
1315         l_result := ATTRIBUTE13
1316             (p_operation        => l_operation
1317             ,p_record   => l_rowtype_rec
1318             ,x_on_operation_action => l_on_operation_action
1319             );
1320 
1321         IF l_result = OE_PC_GLOBALS.YES THEN
1322             -- set OUT result to CONSTRAINED
1323             x_result := OE_PC_GLOBALS.YES;
1324         END IF;
1325 
1326     END IF;
1327 
1328     IF p_header_payment_rec.attribute14 = FND_API.G_MISS_CHAR THEN NULL;
1329     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute14,p_old_header_payment_rec.attribute14) THEN
1330 
1331         l_result := ATTRIBUTE14
1332             (p_operation        => l_operation
1333             ,p_record   => l_rowtype_rec
1334             ,x_on_operation_action => l_on_operation_action
1335             );
1336 
1337         IF l_result = OE_PC_GLOBALS.YES THEN
1338             -- set OUT result to CONSTRAINED
1339             x_result := OE_PC_GLOBALS.YES;
1340         END IF;
1341 
1342     END IF;
1343 
1344     IF p_header_payment_rec.attribute15 = FND_API.G_MISS_CHAR THEN NULL;
1345     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute15,p_old_header_payment_rec.attribute15) THEN
1346 
1347         l_result := ATTRIBUTE15
1348             (p_operation        => l_operation
1349             ,p_record   => l_rowtype_rec
1350             ,x_on_operation_action => l_on_operation_action
1351             );
1352 
1353         IF l_result = OE_PC_GLOBALS.YES THEN
1354             -- set OUT result to CONSTRAINED
1355             x_result := OE_PC_GLOBALS.YES;
1356         END IF;
1357 
1358     END IF;
1359 
1360     IF p_header_payment_rec.attribute2 = FND_API.G_MISS_CHAR THEN NULL;
1361     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute2,p_old_header_payment_rec.attribute2) THEN
1362 
1363         l_result := ATTRIBUTE2
1364             (p_operation        => l_operation
1365             ,p_record   => l_rowtype_rec
1366             ,x_on_operation_action => l_on_operation_action
1367             );
1368 
1369         IF l_result = OE_PC_GLOBALS.YES THEN
1370             -- set OUT result to CONSTRAINED
1371             x_result := OE_PC_GLOBALS.YES;
1372         END IF;
1373 
1374     END IF;
1375 
1376     IF p_header_payment_rec.attribute3 = FND_API.G_MISS_CHAR THEN NULL;
1377     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute3,p_old_header_payment_rec.attribute3) THEN
1378 
1379         l_result := ATTRIBUTE3
1380             (p_operation        => l_operation
1381             ,p_record   => l_rowtype_rec
1382             ,x_on_operation_action => l_on_operation_action
1383             );
1384 
1385         IF l_result = OE_PC_GLOBALS.YES THEN
1386             -- set OUT result to CONSTRAINED
1387             x_result := OE_PC_GLOBALS.YES;
1388         END IF;
1389 
1390     END IF;
1391 
1392     IF p_header_payment_rec.attribute4 = FND_API.G_MISS_CHAR THEN NULL;
1393     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute4,p_old_header_payment_rec.attribute4) THEN
1394 
1395         l_result := ATTRIBUTE4
1396             (p_operation        => l_operation
1397             ,p_record   => l_rowtype_rec
1398             ,x_on_operation_action => l_on_operation_action
1399             );
1400 
1401         IF l_result = OE_PC_GLOBALS.YES THEN
1402             -- set OUT result to CONSTRAINED
1403             x_result := OE_PC_GLOBALS.YES;
1404         END IF;
1405 
1406     END IF;
1407 
1408     IF p_header_payment_rec.attribute5 = FND_API.G_MISS_CHAR THEN NULL;
1409     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute5,p_old_header_payment_rec.attribute5) THEN
1410 
1411         l_result := ATTRIBUTE5
1412             (p_operation        => l_operation
1413             ,p_record   => l_rowtype_rec
1414             ,x_on_operation_action => l_on_operation_action
1415             );
1416 
1417         IF l_result = OE_PC_GLOBALS.YES THEN
1418             -- set OUT result to CONSTRAINED
1419             x_result := OE_PC_GLOBALS.YES;
1420         END IF;
1421 
1422     END IF;
1423 
1424     IF p_header_payment_rec.attribute6 = FND_API.G_MISS_CHAR THEN NULL;
1425     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute6,p_old_header_payment_rec.attribute6) THEN
1426 
1427         l_result := ATTRIBUTE6
1428             (p_operation        => l_operation
1429             ,p_record   => l_rowtype_rec
1430             ,x_on_operation_action => l_on_operation_action
1431             );
1432 
1433         IF l_result = OE_PC_GLOBALS.YES THEN
1434             -- set OUT result to CONSTRAINED
1435             x_result := OE_PC_GLOBALS.YES;
1436         END IF;
1437 
1438     END IF;
1439 
1440     IF p_header_payment_rec.attribute7 = FND_API.G_MISS_CHAR THEN NULL;
1441     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute7,p_old_header_payment_rec.attribute7) THEN
1442 
1443         l_result := ATTRIBUTE7
1444             (p_operation        => l_operation
1445             ,p_record   => l_rowtype_rec
1446             ,x_on_operation_action => l_on_operation_action
1447             );
1448 
1449         IF l_result = OE_PC_GLOBALS.YES THEN
1450             -- set OUT result to CONSTRAINED
1451             x_result := OE_PC_GLOBALS.YES;
1452         END IF;
1453 
1454     END IF;
1455 
1456     IF p_header_payment_rec.attribute8 = FND_API.G_MISS_CHAR THEN NULL;
1457     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute8,p_old_header_payment_rec.attribute8) THEN
1458 
1459         l_result := ATTRIBUTE8
1460             (p_operation        => l_operation
1461             ,p_record   => l_rowtype_rec
1462             ,x_on_operation_action => l_on_operation_action
1463             );
1464 
1465         IF l_result = OE_PC_GLOBALS.YES THEN
1466             -- set OUT result to CONSTRAINED
1467             x_result := OE_PC_GLOBALS.YES;
1468         END IF;
1469 
1470     END IF;
1471 
1472     IF p_header_payment_rec.attribute9 = FND_API.G_MISS_CHAR THEN NULL;
1473     ELSIF NOT OE_GLOBALS.EQUAL(p_header_payment_rec.attribute9,p_old_header_payment_rec.attribute9) THEN
1474 
1475         l_result := ATTRIBUTE9
1476             (p_operation        => l_operation
1477             ,p_record   => l_rowtype_rec
1478             ,x_on_operation_action => l_on_operation_action
1479             );
1480 
1481         IF l_result = OE_PC_GLOBALS.YES THEN
1482             -- set OUT result to CONSTRAINED
1483             x_result := OE_PC_GLOBALS.YES;
1484         END IF;
1485 
1486     END IF;
1487 
1488     IF OE_PC_GLOBALS.G_CHECK_UPDATE_ALL_FOR_DFF = 'N' THEN
1489        IF l_debug_level  > 0 THEN
1490            oe_debug_pub.add(  'SETTING CHECK ALL COLS CONSTRAINT TO:'||L_CHECK_ALL_COLS_CONSTRAINT ) ;
1491        END IF;
1492        g_check_all_cols_constraint := l_check_all_cols_constraint;
1493     END IF;
1494 
1495     -- END: CHECK FOR CONSTRAINTS ON DESC FLEXFIELD ATTRIBUTES
1496     -- NOTE: Please add constraints check for new attributes before the
1497     -- descriptive flexfield attributes check.
1498 
1499 IF l_debug_level  > 0 THEN
1500     oe_debug_pub.add(  'EXIT OE_HEADER_PAYMENT_SECURITY.ATTRIBUTES' , 1 ) ;
1501 END IF;
1502 
1503 EXCEPTION
1504     WHEN FND_API.G_EXC_ERROR THEN
1505     x_return_status := FND_API.G_RET_STS_ERROR;
1506     WHEN OTHERS THEN
1507     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1508     IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1509         OE_MSG_PUB.Add_Exc_Msg
1510         (   G_PKG_NAME
1511         ,   'Attributes'
1512         );
1513     END IF;
1514 
1515 END Attributes;
1516 
1517 END OE_Header_Payment_Security;