[Home] [Help]
PACKAGE BODY: APPS.JTF_AM_SKILL_RULE_DTLS_PKG
Source
1 package body JTF_AM_SKILL_RULE_DTLS_PKG as
2 /* $Header: jtfamtdb.pls 115.0 2003/01/30 23:58:25 nsinghai noship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out NOCOPY VARCHAR2,
5 X_DETAIL_ID in NUMBER,
6 X_ATTRIBUTE6 in VARCHAR2,
7 X_ATTRIBUTE12 in VARCHAR2,
8 X_RULE_ID in NUMBER,
9 X_RANK in NUMBER,
10 X_CHECK_PRODUCT_ID in NUMBER,
11 X_CHECK_CATEGORY_ID in NUMBER,
12 X_CHECK_PROBLEM_CODE in NUMBER,
13 X_CHECK_COMPONENT_ID in NUMBER,
14 X_ACTIVE_FLAG in VARCHAR2,
15 X_ATTRIBUTE15 in VARCHAR2,
16 X_SECURITY_GROUP_ID in NUMBER,
17 X_ATTRIBUTE3 in VARCHAR2,
18 X_ATTRIBUTE4 in VARCHAR2,
19 X_ATTRIBUTE5 in VARCHAR2,
20 X_OBJECT_VERSION_NUMBER in NUMBER,
21 X_ATTRIBUTE_CATEGORY in VARCHAR2,
22 X_ATTRIBUTE1 in VARCHAR2,
23 X_ATTRIBUTE2 in VARCHAR2,
24 X_ATTRIBUTE13 in VARCHAR2,
25 X_ATTRIBUTE7 in VARCHAR2,
26 X_ATTRIBUTE8 in VARCHAR2,
27 X_ATTRIBUTE9 in VARCHAR2,
28 X_ATTRIBUTE10 in VARCHAR2,
29 X_ATTRIBUTE11 in VARCHAR2,
30 X_ATTRIBUTE14 in VARCHAR2,
31 X_CREATION_DATE in DATE,
32 X_CREATED_BY in NUMBER,
33 X_LAST_UPDATE_DATE in DATE,
34 X_LAST_UPDATED_BY in NUMBER,
35 X_LAST_UPDATE_LOGIN in NUMBER
36 ) is
37 cursor C is select ROWID from JTF_AM_SKILL_RULE_DTLS
38 where DETAIL_ID = X_DETAIL_ID
39 ;
40 begin
41 insert into JTF_AM_SKILL_RULE_DTLS (
42 ATTRIBUTE6,
43 ATTRIBUTE12,
44 DETAIL_ID,
45 RULE_ID,
46 RANK,
47 CHECK_PRODUCT_ID,
48 CHECK_CATEGORY_ID,
49 CHECK_PROBLEM_CODE,
50 CHECK_COMPONENT_ID,
51 ACTIVE_FLAG,
52 CREATED_BY,
53 CREATION_DATE,
54 ATTRIBUTE15,
55 SECURITY_GROUP_ID,
56 ATTRIBUTE3,
57 ATTRIBUTE4,
58 ATTRIBUTE5,
59 OBJECT_VERSION_NUMBER,
60 ATTRIBUTE_CATEGORY,
61 ATTRIBUTE1,
62 ATTRIBUTE2,
63 ATTRIBUTE13,
64 ATTRIBUTE7,
65 ATTRIBUTE8,
66 ATTRIBUTE9,
67 ATTRIBUTE10,
68 ATTRIBUTE11,
69 LAST_UPDATE_LOGIN,
70 LAST_UPDATED_BY,
71 LAST_UPDATE_DATE,
72 ATTRIBUTE14
73 ) values (
74 X_ATTRIBUTE6,
75 X_ATTRIBUTE12,
76 X_DETAIL_ID,
77 X_RULE_ID,
78 X_RANK,
79 X_CHECK_PRODUCT_ID,
80 X_CHECK_CATEGORY_ID,
81 X_CHECK_PROBLEM_CODE,
82 X_CHECK_COMPONENT_ID,
83 X_ACTIVE_FLAG,
84 X_CREATED_BY,
85 X_CREATION_DATE,
86 X_ATTRIBUTE15,
87 X_SECURITY_GROUP_ID,
88 X_ATTRIBUTE3,
89 X_ATTRIBUTE4,
90 X_ATTRIBUTE5,
91 X_OBJECT_VERSION_NUMBER,
92 X_ATTRIBUTE_CATEGORY,
93 X_ATTRIBUTE1,
94 X_ATTRIBUTE2,
95 X_ATTRIBUTE13,
96 X_ATTRIBUTE7,
97 X_ATTRIBUTE8,
98 X_ATTRIBUTE9,
99 X_ATTRIBUTE10,
100 X_ATTRIBUTE11,
101 X_LAST_UPDATE_LOGIN,
102 X_LAST_UPDATED_BY,
103 X_LAST_UPDATE_DATE,
104 X_ATTRIBUTE14
105 );
106
107 open c;
108 fetch c into X_ROWID;
109 if (c%notfound) then
110 close c;
111 raise no_data_found;
112 end if;
113 close c;
114
115 end INSERT_ROW;
116
117 procedure LOCK_ROW (
118 X_DETAIL_ID in NUMBER,
119 X_ATTRIBUTE6 in VARCHAR2,
120 X_ATTRIBUTE12 in VARCHAR2,
121 X_RULE_ID in NUMBER,
122 X_RANK in NUMBER,
123 X_CHECK_PRODUCT_ID in NUMBER,
124 X_CHECK_CATEGORY_ID in NUMBER,
125 X_CHECK_PROBLEM_CODE in NUMBER,
126 X_CHECK_COMPONENT_ID in NUMBER,
127 X_ACTIVE_FLAG in VARCHAR2,
128 X_ATTRIBUTE15 in VARCHAR2,
129 X_SECURITY_GROUP_ID in NUMBER,
130 X_ATTRIBUTE3 in VARCHAR2,
131 X_ATTRIBUTE4 in VARCHAR2,
132 X_ATTRIBUTE5 in VARCHAR2,
133 X_OBJECT_VERSION_NUMBER in NUMBER,
134 X_ATTRIBUTE_CATEGORY in VARCHAR2,
135 X_ATTRIBUTE1 in VARCHAR2,
136 X_ATTRIBUTE2 in VARCHAR2,
137 X_ATTRIBUTE13 in VARCHAR2,
138 X_ATTRIBUTE7 in VARCHAR2,
139 X_ATTRIBUTE8 in VARCHAR2,
140 X_ATTRIBUTE9 in VARCHAR2,
141 X_ATTRIBUTE10 in VARCHAR2,
142 X_ATTRIBUTE11 in VARCHAR2,
143 X_ATTRIBUTE14 in VARCHAR2
144 ) is
145 cursor c1 is select
146 ATTRIBUTE6,
147 ATTRIBUTE12,
148 RULE_ID,
149 RANK,
150 CHECK_PRODUCT_ID,
151 CHECK_CATEGORY_ID,
152 CHECK_PROBLEM_CODE,
153 CHECK_COMPONENT_ID,
154 ACTIVE_FLAG,
155 ATTRIBUTE15,
156 SECURITY_GROUP_ID,
157 ATTRIBUTE3,
158 ATTRIBUTE4,
159 ATTRIBUTE5,
160 OBJECT_VERSION_NUMBER,
161 ATTRIBUTE_CATEGORY,
162 ATTRIBUTE1,
163 ATTRIBUTE2,
164 ATTRIBUTE13,
165 ATTRIBUTE7,
166 ATTRIBUTE8,
167 ATTRIBUTE9,
168 ATTRIBUTE10,
169 ATTRIBUTE11,
170 ATTRIBUTE14,
171 DETAIL_ID
172 from JTF_AM_SKILL_RULE_DTLS
173 where DETAIL_ID = X_DETAIL_ID
174 for update of DETAIL_ID nowait;
175 begin
176 for tlinfo in c1 loop
177 if ( (tlinfo.DETAIL_ID = X_DETAIL_ID)
178 AND ((tlinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
179 OR ((tlinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null)))
180 AND ((tlinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
181 OR ((tlinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null)))
182 AND (tlinfo.RULE_ID = X_RULE_ID)
183 AND (tlinfo.RANK = X_RANK)
184 AND (tlinfo.CHECK_PRODUCT_ID = X_CHECK_PRODUCT_ID)
185 AND (tlinfo.CHECK_CATEGORY_ID = X_CHECK_CATEGORY_ID)
186 AND (tlinfo.CHECK_PROBLEM_CODE = X_CHECK_PROBLEM_CODE)
187 AND (tlinfo.CHECK_COMPONENT_ID = X_CHECK_COMPONENT_ID)
188 AND (tlinfo.ACTIVE_FLAG = X_ACTIVE_FLAG)
189 AND ((tlinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
190 OR ((tlinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null)))
191 AND ((tlinfo.SECURITY_GROUP_ID = X_SECURITY_GROUP_ID)
192 OR ((tlinfo.SECURITY_GROUP_ID is null) AND (X_SECURITY_GROUP_ID is null)))
193 AND ((tlinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
194 OR ((tlinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null)))
195 AND ((tlinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
196 OR ((tlinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null)))
197 AND ((tlinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
198 OR ((tlinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null)))
199 AND (tlinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
200 AND ((tlinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
201 OR ((tlinfo.ATTRIBUTE_CATEGORY is null) AND (X_ATTRIBUTE_CATEGORY is null)))
202 AND ((tlinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
203 OR ((tlinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null)))
204 AND ((tlinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
205 OR ((tlinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null)))
206 AND ((tlinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
207 OR ((tlinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null)))
208 AND ((tlinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
209 OR ((tlinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null)))
210 AND ((tlinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
211 OR ((tlinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null)))
212 AND ((tlinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
213 OR ((tlinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null)))
214 AND ((tlinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
215 OR ((tlinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null)))
216 AND ((tlinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
217 OR ((tlinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null)))
218 AND ((tlinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
219 OR ((tlinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null)))
220 ) then
221 null;
222 else
223 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
224 app_exception.raise_exception;
225 end if;
226 end loop;
227 return;
228 end LOCK_ROW;
229
230 procedure UPDATE_ROW (
231 X_DETAIL_ID in NUMBER,
232 X_ATTRIBUTE6 in VARCHAR2,
233 X_ATTRIBUTE12 in VARCHAR2,
234 X_RULE_ID in NUMBER,
235 X_RANK in NUMBER,
236 X_CHECK_PRODUCT_ID in NUMBER,
237 X_CHECK_CATEGORY_ID in NUMBER,
238 X_CHECK_PROBLEM_CODE in NUMBER,
239 X_CHECK_COMPONENT_ID in NUMBER,
240 X_ACTIVE_FLAG in VARCHAR2,
241 X_ATTRIBUTE15 in VARCHAR2,
242 X_SECURITY_GROUP_ID in NUMBER,
243 X_ATTRIBUTE3 in VARCHAR2,
244 X_ATTRIBUTE4 in VARCHAR2,
245 X_ATTRIBUTE5 in VARCHAR2,
246 X_OBJECT_VERSION_NUMBER in NUMBER,
247 X_ATTRIBUTE_CATEGORY in VARCHAR2,
248 X_ATTRIBUTE1 in VARCHAR2,
249 X_ATTRIBUTE2 in VARCHAR2,
250 X_ATTRIBUTE13 in VARCHAR2,
251 X_ATTRIBUTE7 in VARCHAR2,
252 X_ATTRIBUTE8 in VARCHAR2,
253 X_ATTRIBUTE9 in VARCHAR2,
254 X_ATTRIBUTE10 in VARCHAR2,
255 X_ATTRIBUTE11 in VARCHAR2,
256 X_ATTRIBUTE14 in VARCHAR2,
257 X_LAST_UPDATE_DATE in DATE,
258 X_LAST_UPDATED_BY in NUMBER,
259 X_LAST_UPDATE_LOGIN in NUMBER
260 ) is
261 begin
262 update JTF_AM_SKILL_RULE_DTLS set
263 ATTRIBUTE6 = X_ATTRIBUTE6,
264 ATTRIBUTE12 = X_ATTRIBUTE12,
265 RULE_ID = X_RULE_ID,
266 RANK = X_RANK,
267 CHECK_PRODUCT_ID = X_CHECK_PRODUCT_ID,
268 CHECK_CATEGORY_ID = X_CHECK_CATEGORY_ID,
269 CHECK_PROBLEM_CODE = X_CHECK_PROBLEM_CODE,
270 CHECK_COMPONENT_ID = X_CHECK_COMPONENT_ID,
271 ACTIVE_FLAG = X_ACTIVE_FLAG,
272 ATTRIBUTE15 = X_ATTRIBUTE15,
273 SECURITY_GROUP_ID = X_SECURITY_GROUP_ID,
274 ATTRIBUTE3 = X_ATTRIBUTE3,
275 ATTRIBUTE4 = X_ATTRIBUTE4,
276 ATTRIBUTE5 = X_ATTRIBUTE5,
277 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
278 ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
279 ATTRIBUTE1 = X_ATTRIBUTE1,
280 ATTRIBUTE2 = X_ATTRIBUTE2,
281 ATTRIBUTE13 = X_ATTRIBUTE13,
282 ATTRIBUTE7 = X_ATTRIBUTE7,
283 ATTRIBUTE8 = X_ATTRIBUTE8,
284 ATTRIBUTE9 = X_ATTRIBUTE9,
285 ATTRIBUTE10 = X_ATTRIBUTE10,
286 ATTRIBUTE11 = X_ATTRIBUTE11,
287 ATTRIBUTE14 = X_ATTRIBUTE14,
288 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
289 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
290 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
291 where DETAIL_ID = X_DETAIL_ID
292 ;
293
294 if (sql%notfound) then
295 raise no_data_found;
296 end if;
297 end UPDATE_ROW;
298
299 procedure DELETE_ROW (
300 X_DETAIL_ID in NUMBER
301 ) is
302 begin
303 delete from JTF_AM_SKILL_RULE_DTLS
304 where DETAIL_ID = X_DETAIL_ID;
305
306 if (sql%notfound) then
307 raise no_data_found;
308 end if;
309
310 end DELETE_ROW;
311
312 procedure LOAD_ROW (
313 X_OWNER in VARCHAR2,
314 X_DETAIL_ID in NUMBER,
315 X_RULE_ID in NUMBER,
316 X_RANK in NUMBER,
317 X_CHECK_PRODUCT_ID in NUMBER,
318 X_CHECK_CATEGORY_ID in NUMBER,
319 X_CHECK_PROBLEM_CODE in NUMBER,
320 X_CHECK_COMPONENT_ID in NUMBER,
321 X_ACTIVE_FLAG in VARCHAR2,
322 X_OBJECT_VERSION_NUMBER in NUMBER,
323 X_ATTRIBUTE1 in VARCHAR2,
324 X_ATTRIBUTE2 in VARCHAR2,
325 X_ATTRIBUTE3 in VARCHAR2,
326 X_ATTRIBUTE4 in VARCHAR2,
327 X_ATTRIBUTE5 in VARCHAR2,
328 X_ATTRIBUTE6 in VARCHAR2,
329 X_ATTRIBUTE7 in VARCHAR2,
330 X_ATTRIBUTE8 in VARCHAR2,
331 X_ATTRIBUTE9 in VARCHAR2,
332 X_ATTRIBUTE10 in VARCHAR2,
333 X_ATTRIBUTE11 in VARCHAR2,
334 X_ATTRIBUTE12 in VARCHAR2,
335 X_ATTRIBUTE13 in VARCHAR2,
336 X_ATTRIBUTE14 in VARCHAR2,
337 X_ATTRIBUTE15 in VARCHAR2,
338 X_ATTRIBUTE_CATEGORY in VARCHAR2,
339 X_SECURITY_GROUP_ID in NUMBER) is
340
341 l_row_id rowid;
342 l_last_updated_by number := -1;
343 l_object_version_number number := 1;
344 l_user_id number ;
345
346 CURSOR c_last_updated IS
347 SELECT last_updated_by,
348 object_version_number
349 from JTF_AM_SKILL_RULE_DTLS
350 WHERE detail_id = x_detail_id;
351
352 begin
353 if (X_OWNER = 'SEED') then
354 l_user_id := 1;
355 else
356 l_user_id := 0;
357 end if;
358
359 OPEN c_last_updated;
360 FETCH c_last_updated into l_last_updated_by, l_object_version_number ;
361 IF c_last_updated%NOTFOUND THEN
362 l_object_version_number := 1;
363 jtf_am_skill_rule_dtls_pkg.insert_row(
364 X_ROWID => l_row_id ,
365 X_DETAIL_ID => X_DETAIL_ID,
366 X_RULE_ID => X_RULE_ID,
367 X_RANK => X_RANK,
368 X_CHECK_PRODUCT_ID => X_CHECK_PRODUCT_ID,
369 X_CHECK_CATEGORY_ID => X_CHECK_CATEGORY_ID,
370 X_CHECK_PROBLEM_CODE => X_CHECK_PROBLEM_CODE,
371 X_CHECK_COMPONENT_ID => X_CHECK_COMPONENT_ID,
372 X_ACTIVE_FLAG => X_ACTIVE_FLAG,
373 X_ATTRIBUTE1 => X_ATTRIBUTE1 ,
374 X_ATTRIBUTE2 => X_ATTRIBUTE2 ,
375 X_ATTRIBUTE3 => X_ATTRIBUTE3 ,
376 X_ATTRIBUTE4 => X_ATTRIBUTE4 ,
377 X_ATTRIBUTE5 => X_ATTRIBUTE5 ,
378 X_ATTRIBUTE6 => X_ATTRIBUTE6 ,
379 X_ATTRIBUTE7 => X_ATTRIBUTE7 ,
380 X_ATTRIBUTE8 => X_ATTRIBUTE8 ,
381 X_ATTRIBUTE9 => X_ATTRIBUTE9 ,
382 X_ATTRIBUTE10 => X_ATTRIBUTE10 ,
383 X_ATTRIBUTE11 => X_ATTRIBUTE11 ,
384 X_ATTRIBUTE12 => X_ATTRIBUTE12 ,
385 X_ATTRIBUTE13 => X_ATTRIBUTE13 ,
386 X_ATTRIBUTE14 => X_ATTRIBUTE14 ,
387 X_ATTRIBUTE15 => X_ATTRIBUTE15 ,
388 X_ATTRIBUTE_CATEGORY => X_ATTRIBUTE_CATEGORY ,
389 X_SECURITY_GROUP_ID => X_SECURITY_GROUP_ID,
390 X_OBJECT_VERSION_NUMBER => l_object_version_number ,
391 X_CREATION_DATE => sysdate ,
392 X_CREATED_BY => l_user_id ,
393 X_LAST_UPDATE_DATE => sysdate ,
394 X_LAST_UPDATED_BY => l_user_id ,
395 X_LAST_UPDATE_LOGIN => 0 );
396 ELSIF c_last_updated%FOUND THEN
397 IF l_last_updated_by IN (1,0) THEN
398 l_object_version_number := l_object_version_number + 1;
399 jtf_am_skill_rule_dtls_pkg.update_row(
400 X_DETAIL_ID => X_DETAIL_ID,
401 X_RULE_ID => X_RULE_ID,
402 X_RANK => X_RANK,
403 X_CHECK_PRODUCT_ID => X_CHECK_PRODUCT_ID,
404 X_CHECK_CATEGORY_ID => X_CHECK_CATEGORY_ID,
405 X_CHECK_PROBLEM_CODE => X_CHECK_PROBLEM_CODE,
406 X_CHECK_COMPONENT_ID => X_CHECK_COMPONENT_ID,
407 X_ACTIVE_FLAG => X_ACTIVE_FLAG,
408 X_ATTRIBUTE1 => X_ATTRIBUTE1 ,
409 X_ATTRIBUTE2 => X_ATTRIBUTE2 ,
410 X_ATTRIBUTE3 => X_ATTRIBUTE3 ,
411 X_ATTRIBUTE4 => X_ATTRIBUTE4 ,
412 X_ATTRIBUTE5 => X_ATTRIBUTE5 ,
413 X_ATTRIBUTE6 => X_ATTRIBUTE6 ,
414 X_ATTRIBUTE7 => X_ATTRIBUTE7 ,
415 X_ATTRIBUTE8 => X_ATTRIBUTE8 ,
416 X_ATTRIBUTE9 => X_ATTRIBUTE9 ,
417 X_ATTRIBUTE10 => X_ATTRIBUTE10 ,
418 X_ATTRIBUTE11 => X_ATTRIBUTE11 ,
419 X_ATTRIBUTE12 => X_ATTRIBUTE12 ,
420 X_ATTRIBUTE13 => X_ATTRIBUTE13 ,
421 X_ATTRIBUTE14 => X_ATTRIBUTE14 ,
422 X_ATTRIBUTE15 => X_ATTRIBUTE15 ,
423 X_ATTRIBUTE_CATEGORY => X_ATTRIBUTE_CATEGORY ,
424 X_SECURITY_GROUP_ID => X_SECURITY_GROUP_ID,
425 X_OBJECT_VERSION_NUMBER => l_object_version_number,
426 X_LAST_UPDATE_DATE => sysdate ,
427 X_LAST_UPDATED_BY => l_user_id ,
428 X_LAST_UPDATE_LOGIN => 0 );
429 END IF;
430 END IF;
431 CLOSE c_last_updated;
432
433 end LOAD_ROW;
434
435 end JTF_AM_SKILL_RULE_DTLS_PKG;