DBA Data[Home] [Help]

PACKAGE BODY: APPS.OE_LINE_PAYMENT_SECURITY

Source


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