1 package body CS_INCIDENT_URGENCIES_PKG as
2 /* $Header: csvidiub.pls 115.5 2002/11/28 21:01:47 pkesani ship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out NOCOPY VARCHAR2,
5 X_INCIDENT_URGENCY_ID in NUMBER,
6 X_ATTRIBUTE13 in VARCHAR2,
7 X_ATTRIBUTE14 in VARCHAR2,
8 X_ATTRIBUTE15 in VARCHAR2,
9 X_CONTEXT in VARCHAR2,
10 X_OBJECT_VERSION_NUMBER in NUMBER,
11 X_ATTRIBUTE12 in VARCHAR2,
12 X_ATTRIBUTE11 in VARCHAR2,
13 X_ATTRIBUTE9 in VARCHAR2,
14 X_ATTRIBUTE10 in VARCHAR2,
15 -- X_SEEDED_FLAG in VARCHAR2,
16 X_IMPORTANCE_LEVEL in NUMBER,
17 X_DISPLAY_COLOR in VARCHAR2,
18 X_RGB_COLOR in VARCHAR2,
19 X_START_DATE_ACTIVE in DATE,
20 X_END_DATE_ACTIVE in DATE,
21 X_ATTRIBUTE1 in VARCHAR2,
22 X_ATTRIBUTE2 in VARCHAR2,
23 X_ATTRIBUTE3 in VARCHAR2,
24 X_ATTRIBUTE4 in VARCHAR2,
25 X_ATTRIBUTE5 in VARCHAR2,
26 X_ATTRIBUTE6 in VARCHAR2,
27 X_ATTRIBUTE7 in VARCHAR2,
28 X_ATTRIBUTE8 in VARCHAR2,
29 X_NAME in VARCHAR2,
30 X_DESCRIPTION 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 CS_INCIDENT_URGENCIES_B
38 where INCIDENT_URGENCY_ID = X_INCIDENT_URGENCY_ID
39 ;
40 begin
41 insert into CS_INCIDENT_URGENCIES_B (
42 ATTRIBUTE13,
43 ATTRIBUTE14,
44 ATTRIBUTE15,
45 CONTEXT,
46 OBJECT_VERSION_NUMBER,
47 ATTRIBUTE12,
48 ATTRIBUTE11,
49 ATTRIBUTE9,
50 ATTRIBUTE10,
51 INCIDENT_URGENCY_ID,
52 -- SEEDED_FLAG,
53 IMPORTANCE_LEVEL,
54 DISPLAY_COLOR,
55 RGB_COLOR,
56 START_DATE_ACTIVE,
57 END_DATE_ACTIVE,
58 ATTRIBUTE1,
59 ATTRIBUTE2,
60 ATTRIBUTE3,
61 ATTRIBUTE4,
62 ATTRIBUTE5,
63 ATTRIBUTE6,
64 ATTRIBUTE7,
65 ATTRIBUTE8,
66 CREATION_DATE,
67 CREATED_BY,
68 LAST_UPDATE_DATE,
69 LAST_UPDATED_BY,
70 LAST_UPDATE_LOGIN
71 ) values (
72 X_ATTRIBUTE13,
73 X_ATTRIBUTE14,
74 X_ATTRIBUTE15,
75 X_CONTEXT,
76 X_OBJECT_VERSION_NUMBER,
77 X_ATTRIBUTE12,
78 X_ATTRIBUTE11,
79 X_ATTRIBUTE9,
80 X_ATTRIBUTE10,
81 X_INCIDENT_URGENCY_ID,
82 --X_SEEDED_FLAG,
83 X_IMPORTANCE_LEVEL,
84 X_DISPLAY_COLOR,
85 X_RGB_COLOR,
86 X_START_DATE_ACTIVE,
87 X_END_DATE_ACTIVE,
88 X_ATTRIBUTE1,
89 X_ATTRIBUTE2,
90 X_ATTRIBUTE3,
91 X_ATTRIBUTE4,
92 X_ATTRIBUTE5,
93 X_ATTRIBUTE6,
94 X_ATTRIBUTE7,
95 X_ATTRIBUTE8,
96 X_CREATION_DATE,
97 X_CREATED_BY,
98 X_LAST_UPDATE_DATE,
99 X_LAST_UPDATED_BY,
100 X_LAST_UPDATE_LOGIN
101 );
102
103 insert into CS_INCIDENT_URGENCIES_TL (
104 INCIDENT_URGENCY_ID,
105 CREATION_DATE,
106 CREATED_BY,
107 LAST_UPDATE_LOGIN,
108 NAME,
109 DESCRIPTION,
110 LAST_UPDATE_DATE,
111 LAST_UPDATED_BY,
112 LANGUAGE,
113 SOURCE_LANG
114 ) select
115 X_INCIDENT_URGENCY_ID,
116 X_CREATION_DATE,
117 X_CREATED_BY,
118 X_LAST_UPDATE_LOGIN,
119 X_NAME,
120 X_DESCRIPTION,
121 X_LAST_UPDATE_DATE,
122 X_LAST_UPDATED_BY,
123 L.LANGUAGE_CODE,
124 userenv('LANG')
125 from FND_LANGUAGES L
126 where L.INSTALLED_FLAG in ('I', 'B')
127 and not exists
128 (select NULL
129 from CS_INCIDENT_URGENCIES_TL T
130 where T.INCIDENT_URGENCY_ID = X_INCIDENT_URGENCY_ID
131 and T.LANGUAGE = L.LANGUAGE_CODE);
132
133 open c;
134 fetch c into X_ROWID;
135 if (c%notfound) then
136 close c;
137 raise no_data_found;
138 end if;
139 close c;
140
141 end INSERT_ROW;
142
143 procedure LOCK_ROW (
144 X_INCIDENT_URGENCY_ID in NUMBER,
145 X_ATTRIBUTE13 in VARCHAR2,
146 X_ATTRIBUTE14 in VARCHAR2,
147 X_ATTRIBUTE15 in VARCHAR2,
148 X_CONTEXT in VARCHAR2,
149 X_OBJECT_VERSION_NUMBER in NUMBER,
150 X_ATTRIBUTE12 in VARCHAR2,
151 X_ATTRIBUTE11 in VARCHAR2,
152 X_ATTRIBUTE9 in VARCHAR2,
153 X_ATTRIBUTE10 in VARCHAR2,
154 -- X_SEEDED_FLAG in VARCHAR2,
155 X_IMPORTANCE_LEVEL in NUMBER,
156 X_DISPLAY_COLOR in VARCHAR2,
157 X_RGB_COLOR in VARCHAR2,
158 X_START_DATE_ACTIVE in DATE,
159 X_END_DATE_ACTIVE in DATE,
160 X_ATTRIBUTE1 in VARCHAR2,
161 X_ATTRIBUTE2 in VARCHAR2,
162 X_ATTRIBUTE3 in VARCHAR2,
163 X_ATTRIBUTE4 in VARCHAR2,
164 X_ATTRIBUTE5 in VARCHAR2,
165 X_ATTRIBUTE6 in VARCHAR2,
166 X_ATTRIBUTE7 in VARCHAR2,
167 X_ATTRIBUTE8 in VARCHAR2,
168 X_NAME in VARCHAR2,
169 X_DESCRIPTION in VARCHAR2
170 ) is
171 cursor c is select
172 ATTRIBUTE13,
173 ATTRIBUTE14,
174 ATTRIBUTE15,
175 CONTEXT,
176 OBJECT_VERSION_NUMBER,
177 ATTRIBUTE12,
178 ATTRIBUTE11,
179 ATTRIBUTE9,
180 ATTRIBUTE10,
181 --SEEDED_FLAG,
182 IMPORTANCE_LEVEL,
183 DISPLAY_COLOR,
184 RGB_COLOR,
185 START_DATE_ACTIVE,
186 END_DATE_ACTIVE,
187 ATTRIBUTE1,
188 ATTRIBUTE2,
189 ATTRIBUTE3,
190 ATTRIBUTE4,
191 ATTRIBUTE5,
192 ATTRIBUTE6,
193 ATTRIBUTE7,
194 ATTRIBUTE8
195 from CS_INCIDENT_URGENCIES_B
196 where INCIDENT_URGENCY_ID = X_INCIDENT_URGENCY_ID
197 for update of INCIDENT_URGENCY_ID nowait;
198 recinfo c%rowtype;
199
200 cursor c1 is select
201 NAME,
202 DESCRIPTION,
203 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
204 from CS_INCIDENT_URGENCIES_TL
205 where INCIDENT_URGENCY_ID = X_INCIDENT_URGENCY_ID
206 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
207 for update of INCIDENT_URGENCY_ID nowait;
208 begin
209 open c;
210 fetch c into recinfo;
211 if (c%notfound) then
212 close c;
213 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
214 app_exception.raise_exception;
215 end if;
216 close c;
217 if ( ((recinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
218 OR ((recinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null)))
219 AND ((recinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
220 OR ((recinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null)))
221 AND ((recinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
222 OR ((recinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null)))
223 AND ((recinfo.CONTEXT = X_CONTEXT)
224 OR ((recinfo.CONTEXT is null) AND (X_CONTEXT is null)))
225 AND (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
226 AND ((recinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
227 OR ((recinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null)))
228 AND ((recinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
229 OR ((recinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null)))
230 AND ((recinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
231 OR ((recinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null)))
232 AND ((recinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
233 OR ((recinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null)))
234 --AND ((recinfo.SEEDED_FLAG = X_SEEDED_FLAG)
235 -- OR ((recinfo.SEEDED_FLAG is null) AND (X_SEEDED_FLAG is null)))
236 AND (recinfo.IMPORTANCE_LEVEL = X_IMPORTANCE_LEVEL)
237 AND ((recinfo.DISPLAY_COLOR = X_DISPLAY_COLOR)
238 OR ((recinfo.DISPLAY_COLOR is null) AND (X_DISPLAY_COLOR is null)))
239 AND ((recinfo.RGB_COLOR = X_RGB_COLOR)
240 OR ((recinfo.RGB_COLOR is null) AND (X_RGB_COLOR is null)))
241 AND ((recinfo.START_DATE_ACTIVE = X_START_DATE_ACTIVE)
242 OR ((recinfo.START_DATE_ACTIVE is null) AND (X_START_DATE_ACTIVE is null)))
243 AND ((recinfo.END_DATE_ACTIVE = X_END_DATE_ACTIVE)
244 OR ((recinfo.END_DATE_ACTIVE is null) AND (X_END_DATE_ACTIVE is null)))
245 AND ((recinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
246 OR ((recinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null)))
247 AND ((recinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
248 OR ((recinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null)))
249 AND ((recinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
250 OR ((recinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null)))
251 AND ((recinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
252 OR ((recinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null)))
253 AND ((recinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
254 OR ((recinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null)))
255 AND ((recinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
256 OR ((recinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null)))
257 AND ((recinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
258 OR ((recinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null)))
259 AND ((recinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
260 OR ((recinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null)))
261 ) then
262 null;
263 else
264 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
265 app_exception.raise_exception;
266 end if;
267
268 for tlinfo in c1 loop
269 if (tlinfo.BASELANG = 'Y') then
270 if ( (tlinfo.NAME = X_NAME)
271 AND ((tlinfo.DESCRIPTION = X_DESCRIPTION)
272 OR ((tlinfo.DESCRIPTION is null) AND (X_DESCRIPTION is null)))
273 ) then
274 null;
275 else
276 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
277 app_exception.raise_exception;
278 end if;
279 end if;
280 end loop;
281 return;
282 end LOCK_ROW;
283
284 procedure UPDATE_ROW (
285 X_INCIDENT_URGENCY_ID in NUMBER,
286 X_ATTRIBUTE13 in VARCHAR2,
287 X_ATTRIBUTE14 in VARCHAR2,
288 X_ATTRIBUTE15 in VARCHAR2,
289 X_CONTEXT in VARCHAR2,
290 X_OBJECT_VERSION_NUMBER in NUMBER,
291 X_ATTRIBUTE12 in VARCHAR2,
292 X_ATTRIBUTE11 in VARCHAR2,
293 X_ATTRIBUTE9 in VARCHAR2,
294 X_ATTRIBUTE10 in VARCHAR2,
295 --X_SEEDED_FLAG in VARCHAR2,
296 X_IMPORTANCE_LEVEL in NUMBER,
297 X_DISPLAY_COLOR in VARCHAR2,
298 X_RGB_COLOR in VARCHAR2,
299 X_START_DATE_ACTIVE in DATE,
300 X_END_DATE_ACTIVE in DATE,
301 X_ATTRIBUTE1 in VARCHAR2,
302 X_ATTRIBUTE2 in VARCHAR2,
303 X_ATTRIBUTE3 in VARCHAR2,
304 X_ATTRIBUTE4 in VARCHAR2,
305 X_ATTRIBUTE5 in VARCHAR2,
306 X_ATTRIBUTE6 in VARCHAR2,
307 X_ATTRIBUTE7 in VARCHAR2,
308 X_ATTRIBUTE8 in VARCHAR2,
309 X_NAME in VARCHAR2,
310 X_DESCRIPTION in VARCHAR2,
311 X_LAST_UPDATE_DATE in DATE,
312 X_LAST_UPDATED_BY in NUMBER,
313 X_LAST_UPDATE_LOGIN in NUMBER
314 ) is
315 begin
316 update CS_INCIDENT_URGENCIES_B set
317 ATTRIBUTE13 = X_ATTRIBUTE13,
318 ATTRIBUTE14 = X_ATTRIBUTE14,
319 ATTRIBUTE15 = X_ATTRIBUTE15,
320 CONTEXT = X_CONTEXT,
321 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
322 ATTRIBUTE12 = X_ATTRIBUTE12,
323 ATTRIBUTE11 = X_ATTRIBUTE11,
324 ATTRIBUTE9 = X_ATTRIBUTE9,
325 ATTRIBUTE10 = X_ATTRIBUTE10,
326 --SEEDED_FLAG = X_SEEDED_FLAG,
327 IMPORTANCE_LEVEL = X_IMPORTANCE_LEVEL,
328 DISPLAY_COLOR = X_DISPLAY_COLOR,
329 RGB_COLOR = X_RGB_COLOR,
330 START_DATE_ACTIVE = X_START_DATE_ACTIVE,
331 END_DATE_ACTIVE = X_END_DATE_ACTIVE,
332 ATTRIBUTE1 = X_ATTRIBUTE1,
333 ATTRIBUTE2 = X_ATTRIBUTE2,
334 ATTRIBUTE3 = X_ATTRIBUTE3,
335 ATTRIBUTE4 = X_ATTRIBUTE4,
336 ATTRIBUTE5 = X_ATTRIBUTE5,
337 ATTRIBUTE6 = X_ATTRIBUTE6,
338 ATTRIBUTE7 = X_ATTRIBUTE7,
339 ATTRIBUTE8 = X_ATTRIBUTE8,
340 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
341 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
342 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
343 where INCIDENT_URGENCY_ID = X_INCIDENT_URGENCY_ID;
344
345 if (sql%notfound) then
346 raise no_data_found;
347 end if;
348
349 update CS_INCIDENT_URGENCIES_TL set
350 NAME = X_NAME,
351 DESCRIPTION = X_DESCRIPTION,
352 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
353 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
354 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
355 SOURCE_LANG = userenv('LANG')
356 where INCIDENT_URGENCY_ID = X_INCIDENT_URGENCY_ID
357 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
358
359 if (sql%notfound) then
360 raise no_data_found;
361 end if;
362 end UPDATE_ROW;
363
364 procedure DELETE_ROW (
365 X_INCIDENT_URGENCY_ID in NUMBER
366 ) is
367 begin
368 delete from CS_INCIDENT_URGENCIES_TL
369 where INCIDENT_URGENCY_ID = X_INCIDENT_URGENCY_ID;
370
371 if (sql%notfound) then
372 raise no_data_found;
373 end if;
374
375 delete from CS_INCIDENT_URGENCIES_B
376 where INCIDENT_URGENCY_ID = X_INCIDENT_URGENCY_ID;
377
378 if (sql%notfound) then
379 raise no_data_found;
380 end if;
381 end DELETE_ROW;
382
383 procedure ADD_LANGUAGE
384 is
385 begin
386 delete from CS_INCIDENT_URGENCIES_TL T
387 where not exists
388 (select NULL
389 from CS_INCIDENT_URGENCIES_B B
390 where B.INCIDENT_URGENCY_ID = T.INCIDENT_URGENCY_ID
391 );
392
393 update CS_INCIDENT_URGENCIES_TL T set (
394 NAME,
395 DESCRIPTION
396 ) = (select
397 B.NAME,
398 B.DESCRIPTION
399 from CS_INCIDENT_URGENCIES_TL B
400 where B.INCIDENT_URGENCY_ID = T.INCIDENT_URGENCY_ID
401 and B.LANGUAGE = T.SOURCE_LANG)
402 where (
403 T.INCIDENT_URGENCY_ID,
404 T.LANGUAGE
405 ) in (select
406 SUBT.INCIDENT_URGENCY_ID,
407 SUBT.LANGUAGE
408 from CS_INCIDENT_URGENCIES_TL SUBB, CS_INCIDENT_URGENCIES_TL SUBT
409 where SUBB.INCIDENT_URGENCY_ID = SUBT.INCIDENT_URGENCY_ID
410 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
411 and (SUBB.NAME <> SUBT.NAME
412 or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
413 or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
414 or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
415 ));
416
417 insert into CS_INCIDENT_URGENCIES_TL (
418 INCIDENT_URGENCY_ID,
419 CREATION_DATE,
420 CREATED_BY,
421 LAST_UPDATE_LOGIN,
422 NAME,
423 DESCRIPTION,
424 LAST_UPDATE_DATE,
425 LAST_UPDATED_BY,
426 LANGUAGE,
427 SOURCE_LANG
428 ) select
429 B.INCIDENT_URGENCY_ID,
430 B.CREATION_DATE,
431 B.CREATED_BY,
432 B.LAST_UPDATE_LOGIN,
433 B.NAME,
434 B.DESCRIPTION,
435 B.LAST_UPDATE_DATE,
436 B.LAST_UPDATED_BY,
437 L.LANGUAGE_CODE,
438 B.SOURCE_LANG
439 from CS_INCIDENT_URGENCIES_TL B, FND_LANGUAGES L
440 where L.INSTALLED_FLAG in ('I', 'B')
441 and B.LANGUAGE = userenv('LANG')
442 and not exists
443 (select NULL
444 from CS_INCIDENT_URGENCIES_TL T
445 where T.INCIDENT_URGENCY_ID = B.INCIDENT_URGENCY_ID
446 and T.LANGUAGE = L.LANGUAGE_CODE);
447 end ADD_LANGUAGE;
448
449 end CS_INCIDENT_URGENCIES_PKG;