[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;