DBA Data[Home] [Help]

PACKAGE BODY: APPS.AML_RULE_APPLIED_ATTRS_PKG

Source


1 PACKAGE BODY AML_RULE_APPLIED_ATTRS_PKG as
2 /* $Header: amltrlgb.pls 115.3 2004/04/28 22:53:13 ckapoor noship $ */
3 -- Start of Comments
4 -- Package name     : AML_RULE_APPLIED_ATTRS_PKG
5 -- Purpose          :
6 -- History          :
7 -- NOTE             :
8 -- End of Comments
9 
10 
11 G_PKG_NAME CONSTANT VARCHAR2(30):= 'AML_RULE_APPLIED_ATTRS_PKG';
12 G_FILE_NAME CONSTANT VARCHAR2(12) := 'amltrlgb.pls';
13 
14 PROCEDURE Insert_Row(
15           px_RULE_APPLIED_ATTR_ID   IN OUT NOCOPY  NUMBER
16          ,p_LAST_UPDATE_DATE    DATE
17          ,p_LAST_UPDATED_BY    NUMBER
18          ,p_CREATION_DATE    DATE
19          ,p_CREATED_BY    NUMBER
20          ,p_LAST_UPDATE_LOGIN    NUMBER
21          ,p_OBJECT_VERSION_NUMBER    NUMBER
22          ,p_REQUEST_ID    NUMBER
23          ,p_PROGRAM_APPLICATION_ID    NUMBER
24          ,p_PROGRAM_ID    NUMBER
25          ,p_PROGRAM_UPDATE_DATE    DATE
26          ,p_ENTITY_RULE_APPLIED_ID    NUMBER
27          ,p_ATTRIBUTE_ID    NUMBER
28          ,p_OPERATOR    VARCHAR2
29          ,p_ATTRIBUTE_VALUE    VARCHAR2
30          ,p_ATTRIBUTE_TO_VALUE    VARCHAR2
31          ,p_LEAD_VALUE    VARCHAR2
32 )
33  IS
34    CURSOR C2 IS SELECT AML_RULE_APPLIED_ATTRS_S.nextval FROM sys.dual;
35 BEGIN
36    If (px_RULE_APPLIED_ATTR_ID IS NULL) OR (px_RULE_APPLIED_ATTR_ID = FND_API.G_MISS_NUM) then
37        OPEN C2;
38        FETCH C2 INTO px_RULE_APPLIED_ATTR_ID;
39        CLOSE C2;
40    End If;
41 
42  IF NVL(fnd_profile.value('AS_ENABLE_RULE_ENGINE_LOG'), 'Y') = 'N'
43    THEN
44        RETURN;
45    END IF;
46 
47    INSERT INTO AML_RULE_APPLIED_ATTRS(
48            RULE_APPLIED_ATTR_ID
49           ,LAST_UPDATE_DATE
50           ,LAST_UPDATED_BY
51           ,CREATION_DATE
52           ,CREATED_BY
53           ,LAST_UPDATE_LOGIN
54           ,OBJECT_VERSION_NUMBER
55           ,REQUEST_ID
56           ,PROGRAM_APPLICATION_ID
57           ,PROGRAM_ID
58           ,PROGRAM_UPDATE_DATE
59           ,ENTITY_RULE_APPLIED_ID
60           ,ATTRIBUTE_ID
61           ,OPERATOR
62           ,ATTRIBUTE_VALUE
63           ,ATTRIBUTE_TO_VALUE
64           ,LEAD_VALUE
65           ) VALUES (
66            px_RULE_APPLIED_ATTR_ID
67           ,decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_LAST_UPDATE_DATE)
68           ,decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATED_BY)
69           ,decode( p_CREATION_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_CREATION_DATE)
70           ,decode( p_CREATED_BY, FND_API.G_MISS_NUM, NULL, p_CREATED_BY)
71           ,decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATE_LOGIN)
72           , 1
73           --,decode( p_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, p_OBJECT_VERSION_NUMBER)
74           ,decode( p_REQUEST_ID, FND_API.G_MISS_NUM, NULL, p_REQUEST_ID)
75           ,decode( p_PROGRAM_APPLICATION_ID, FND_API.G_MISS_NUM, NULL, p_PROGRAM_APPLICATION_ID)
76           ,decode( p_PROGRAM_ID, FND_API.G_MISS_NUM, NULL, p_PROGRAM_ID)
77           ,decode( p_PROGRAM_UPDATE_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_PROGRAM_UPDATE_DATE)
78           ,decode( p_ENTITY_RULE_APPLIED_ID, FND_API.G_MISS_NUM, NULL, p_ENTITY_RULE_APPLIED_ID)
79           ,decode( p_ATTRIBUTE_ID, FND_API.G_MISS_NUM, NULL, p_ATTRIBUTE_ID)
80           ,decode( p_OPERATOR, FND_API.G_MISS_CHAR, NULL, p_OPERATOR)
81           ,decode( p_ATTRIBUTE_VALUE, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE_VALUE)
82           ,decode( p_ATTRIBUTE_TO_VALUE, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE_TO_VALUE)
83           ,decode( p_LEAD_VALUE, FND_API.G_MISS_CHAR, NULL, p_LEAD_VALUE)
84 );
85 End Insert_Row;
86 
87 PROCEDURE Update_Row(
88           p_RULE_APPLIED_ATTR_ID    NUMBER
89          ,p_LAST_UPDATE_DATE    DATE
90          ,p_LAST_UPDATED_BY    NUMBER
91          ,p_CREATION_DATE    DATE
92          ,p_CREATED_BY    NUMBER
93          ,p_LAST_UPDATE_LOGIN    NUMBER
94          ,p_OBJECT_VERSION_NUMBER    NUMBER
95          ,p_REQUEST_ID    NUMBER
96          ,p_PROGRAM_APPLICATION_ID    NUMBER
97          ,p_PROGRAM_ID    NUMBER
98          ,p_PROGRAM_UPDATE_DATE    DATE
99          ,p_ENTITY_RULE_APPLIED_ID    NUMBER
100          ,p_ATTRIBUTE_ID    NUMBER
101          ,p_OPERATOR    VARCHAR2
102          ,p_ATTRIBUTE_VALUE    VARCHAR2
103          ,p_ATTRIBUTE_TO_VALUE    VARCHAR2
104          ,p_LEAD_VALUE    VARCHAR2
105 )
106 IS
107 BEGIN
108     Update AML_RULE_APPLIED_ATTRS
109     SET
110         LAST_UPDATE_DATE = decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, LAST_UPDATE_DATE, p_LAST_UPDATE_DATE)
111        ,LAST_UPDATED_BY = decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, LAST_UPDATED_BY, p_LAST_UPDATED_BY)
112        ,CREATION_DATE = decode( p_CREATION_DATE, FND_API.G_MISS_DATE, CREATION_DATE, p_CREATION_DATE)
113        ,CREATED_BY = decode( p_CREATED_BY, FND_API.G_MISS_NUM, CREATED_BY, p_CREATED_BY)
114        ,LAST_UPDATE_LOGIN = decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, LAST_UPDATE_LOGIN, p_LAST_UPDATE_LOGIN)
115        --,OBJECT_VERSION_NUMBER +1
116         , OBJECT_VERSION_NUMBER = decode( p_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, OBJECT_VERSION_NUMBER, p_OBJECT_VERSION_NUMBER)
117        ,REQUEST_ID = decode( p_REQUEST_ID, FND_API.G_MISS_NUM, REQUEST_ID, p_REQUEST_ID)
118        ,PROGRAM_APPLICATION_ID = decode( p_PROGRAM_APPLICATION_ID, FND_API.G_MISS_NUM, PROGRAM_APPLICATION_ID, p_PROGRAM_APPLICATION_ID)
119        ,PROGRAM_ID = decode( p_PROGRAM_ID, FND_API.G_MISS_NUM, PROGRAM_ID, p_PROGRAM_ID)
120        ,PROGRAM_UPDATE_DATE = decode( p_PROGRAM_UPDATE_DATE, FND_API.G_MISS_DATE, PROGRAM_UPDATE_DATE, p_PROGRAM_UPDATE_DATE)
121        ,ENTITY_RULE_APPLIED_ID = decode( p_ENTITY_RULE_APPLIED_ID, FND_API.G_MISS_NUM, ENTITY_RULE_APPLIED_ID, p_ENTITY_RULE_APPLIED_ID)
122        ,ATTRIBUTE_ID = decode( p_ATTRIBUTE_ID, FND_API.G_MISS_NUM, ATTRIBUTE_ID, p_ATTRIBUTE_ID)
123        ,OPERATOR = decode( p_OPERATOR, FND_API.G_MISS_CHAR, OPERATOR, p_OPERATOR)
124        ,ATTRIBUTE_VALUE = decode( p_ATTRIBUTE_VALUE, FND_API.G_MISS_CHAR, ATTRIBUTE_VALUE, p_ATTRIBUTE_VALUE)
125        ,ATTRIBUTE_TO_VALUE = decode( p_ATTRIBUTE_TO_VALUE, FND_API.G_MISS_CHAR, ATTRIBUTE_TO_VALUE, p_ATTRIBUTE_TO_VALUE)
126        ,LEAD_VALUE = decode( p_LEAD_VALUE, FND_API.G_MISS_CHAR, LEAD_VALUE, p_LEAD_VALUE)
127     where RULE_APPLIED_ATTR_ID = p_RULE_APPLIED_ATTR_ID;
128 
129     If (SQL%NOTFOUND) then
130         RAISE NO_DATA_FOUND;
131     End If;
132 END Update_Row;
133 
134 PROCEDURE Delete_Row(
135     p_RULE_APPLIED_ATTR_ID  NUMBER)
136 IS
137 BEGIN
138     DELETE FROM AML_RULE_APPLIED_ATTRS
139     WHERE RULE_APPLIED_ATTR_ID = p_RULE_APPLIED_ATTR_ID;
140     If (SQL%NOTFOUND) then
141         RAISE NO_DATA_FOUND;
142     End If;
143 END Delete_Row;
144 
145 PROCEDURE Lock_Row(
146           p_RULE_APPLIED_ATTR_ID    NUMBER
147          ,p_LAST_UPDATE_DATE    DATE
148          ,p_LAST_UPDATED_BY    NUMBER
149          ,p_CREATION_DATE    DATE
150          ,p_CREATED_BY    NUMBER
151          ,p_LAST_UPDATE_LOGIN    NUMBER
152          ,p_OBJECT_VERSION_NUMBER    NUMBER
153          ,p_REQUEST_ID    NUMBER
154          ,p_PROGRAM_APPLICATION_ID    NUMBER
155          ,p_PROGRAM_ID    NUMBER
156          ,p_PROGRAM_UPDATE_DATE    DATE
157          ,p_ENTITY_RULE_APPLIED_ID    NUMBER
158          ,p_ATTRIBUTE_ID    NUMBER
159          ,p_OPERATOR    VARCHAR2
160          ,p_ATTRIBUTE_VALUE    VARCHAR2
161          ,p_ATTRIBUTE_TO_VALUE    VARCHAR2
162          ,p_LEAD_VALUE    VARCHAR2
163 )
164  IS
165    CURSOR C IS
166        SELECT *
167        FROM AML_RULE_APPLIED_ATTRS
168        WHERE RULE_APPLIED_ATTR_ID =  p_RULE_APPLIED_ATTR_ID
169        FOR UPDATE of RULE_APPLIED_ATTR_ID NOWAIT;
170    Recinfo C%ROWTYPE;
171 BEGIN
172     OPEN C;
173     FETCH C INTO Recinfo;
174     If (C%NOTFOUND) then
175         CLOSE C;
176         FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
177         APP_EXCEPTION.RAISE_EXCEPTION;
178     End If;
179     CLOSE C;
180     if (
181            (      Recinfo.RULE_APPLIED_ATTR_ID = p_RULE_APPLIED_ATTR_ID)
182        AND (    ( Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
183             OR (    ( Recinfo.LAST_UPDATE_DATE IS NULL )
184                 AND (  p_LAST_UPDATE_DATE IS NULL )))
185        AND (    ( Recinfo.LAST_UPDATED_BY = p_LAST_UPDATED_BY)
186             OR (    ( Recinfo.LAST_UPDATED_BY IS NULL )
187                 AND (  p_LAST_UPDATED_BY IS NULL )))
188        AND (    ( Recinfo.CREATION_DATE = p_CREATION_DATE)
189             OR (    ( Recinfo.CREATION_DATE IS NULL )
190                 AND (  p_CREATION_DATE IS NULL )))
191        AND (    ( Recinfo.CREATED_BY = p_CREATED_BY)
192             OR (    ( Recinfo.CREATED_BY IS NULL )
193                 AND (  p_CREATED_BY IS NULL )))
194        AND (    ( Recinfo.LAST_UPDATE_LOGIN = p_LAST_UPDATE_LOGIN)
195             OR (    ( Recinfo.LAST_UPDATE_LOGIN IS NULL )
196                 AND (  p_LAST_UPDATE_LOGIN IS NULL )))
197        AND (    ( Recinfo.OBJECT_VERSION_NUMBER = p_OBJECT_VERSION_NUMBER)
198             OR (    ( Recinfo.OBJECT_VERSION_NUMBER IS NULL )
199                 AND (  p_OBJECT_VERSION_NUMBER IS NULL )))
200        AND (    ( Recinfo.REQUEST_ID = p_REQUEST_ID)
201             OR (    ( Recinfo.REQUEST_ID IS NULL )
202                 AND (  p_REQUEST_ID IS NULL )))
203        AND (    ( Recinfo.PROGRAM_APPLICATION_ID = p_PROGRAM_APPLICATION_ID)
204             OR (    ( Recinfo.PROGRAM_APPLICATION_ID IS NULL )
205                 AND (  p_PROGRAM_APPLICATION_ID IS NULL )))
206        AND (    ( Recinfo.PROGRAM_ID = p_PROGRAM_ID)
207             OR (    ( Recinfo.PROGRAM_ID IS NULL )
208                 AND (  p_PROGRAM_ID IS NULL )))
209        AND (    ( Recinfo.PROGRAM_UPDATE_DATE = p_PROGRAM_UPDATE_DATE)
210             OR (    ( Recinfo.PROGRAM_UPDATE_DATE IS NULL )
211                 AND (  p_PROGRAM_UPDATE_DATE IS NULL )))
212        AND (    ( Recinfo.ENTITY_RULE_APPLIED_ID = p_ENTITY_RULE_APPLIED_ID)
213             OR (    ( Recinfo.ENTITY_RULE_APPLIED_ID IS NULL )
214                 AND (  p_ENTITY_RULE_APPLIED_ID IS NULL )))
215        AND (    ( Recinfo.ATTRIBUTE_ID = p_ATTRIBUTE_ID)
216             OR (    ( Recinfo.ATTRIBUTE_ID IS NULL )
217                 AND (  p_ATTRIBUTE_ID IS NULL )))
218        AND (    ( Recinfo.OPERATOR = p_OPERATOR)
219             OR (    ( Recinfo.OPERATOR IS NULL )
220                 AND (  p_OPERATOR IS NULL )))
221        AND (    ( Recinfo.ATTRIBUTE_VALUE = p_ATTRIBUTE_VALUE)
222             OR (    ( Recinfo.ATTRIBUTE_VALUE IS NULL )
223                 AND (  p_ATTRIBUTE_VALUE IS NULL )))
224        AND (    ( Recinfo.ATTRIBUTE_TO_VALUE = p_ATTRIBUTE_TO_VALUE)
225             OR (    ( Recinfo.ATTRIBUTE_TO_VALUE IS NULL )
226                 AND (  p_ATTRIBUTE_TO_VALUE IS NULL )))
227        AND (    ( Recinfo.LEAD_VALUE = p_LEAD_VALUE)
228             OR (    ( Recinfo.LEAD_VALUE IS NULL )
229                 AND (  p_LEAD_VALUE IS NULL )))
230         ) then
231         return;
232     else
233         FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
234         APP_EXCEPTION.RAISE_EXCEPTION;
235     End If;
236 END Lock_Row;
237 
238 End AML_RULE_APPLIED_ATTRS_PKG;