[Home] [Help]
PACKAGE BODY: APPS.JTF_TASK_TEMPLATES_PKG
Source
1 PACKAGE body JTF_TASK_TEMPLATES_PKG as
2 /* $Header: jtftkteb.pls 120.1 2005/07/02 01:28:17 appldev ship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out NOCOPY VARCHAR2,
5 X_TASK_TEMPLATE_ID in NUMBER,
6 X_ALARM_ON in VARCHAR2,
7 X_ALARM_COUNT in NUMBER,
8 X_ALARM_INTERVAL in NUMBER,
9 X_ALARM_INTERVAL_UOM in VARCHAR2,
10 X_DELETED_FLAG in VARCHAR2,
11 X_ATTRIBUTE1 in VARCHAR2,
12 X_ATTRIBUTE2 in VARCHAR2,
13 X_ATTRIBUTE3 in VARCHAR2,
14 X_ATTRIBUTE4 in VARCHAR2,
15 X_ATTRIBUTE5 in VARCHAR2,
16 X_ATTRIBUTE6 in VARCHAR2,
17 X_ATTRIBUTE7 in VARCHAR2,
18 X_ATTRIBUTE8 in VARCHAR2,
19 X_ATTRIBUTE9 in VARCHAR2,
20 X_ATTRIBUTE10 in VARCHAR2,
21 X_ATTRIBUTE11 in VARCHAR2,
22 X_ATTRIBUTE12 in VARCHAR2,
23 X_ATTRIBUTE13 in VARCHAR2,
24 X_ATTRIBUTE14 in VARCHAR2,
25 X_ATTRIBUTE15 in VARCHAR2,
26 X_ATTRIBUTE_CATEGORY in VARCHAR2,
27 X_HOLIDAY_FLAG in VARCHAR2,
28 X_BILLABLE_FLAG in VARCHAR2,
29 X_RECURRENCE_RULE_ID in NUMBER,
30 X_NOTIFICATION_FLAG in VARCHAR2,
31 X_NOTIFICATION_PERIOD in NUMBER,
32 X_NOTIFICATION_PERIOD_UOM in VARCHAR2,
33 X_ALARM_START in NUMBER,
34 X_ALARM_START_UOM in VARCHAR2,
35 X_PRIVATE_FLAG in VARCHAR2,
36 X_PUBLISH_FLAG in VARCHAR2,
37 X_RESTRICT_CLOSURE_FLAG in VARCHAR2,
38 X_MULTI_BOOKED_FLAG in VARCHAR2,
39 X_MILESTONE_FLAG in VARCHAR2,
40 X_TASK_GROUP_ID in NUMBER,
41 X_TASK_NUMBER in VARCHAR2,
42 X_TASK_TYPE_ID in NUMBER,
43 X_TASK_STATUS_ID in NUMBER,
44 X_TASK_PRIORITY_ID in NUMBER,
45 X_DURATION in NUMBER,
46 X_DURATION_UOM in VARCHAR2,
47 X_PLANNED_EFFORT in NUMBER,
48 X_PLANNED_EFFORT_UOM in VARCHAR2,
49 X_TASK_NAME in VARCHAR2,
50 X_DESCRIPTION in VARCHAR2,
51 X_TASK_CONFIRMATION_STATUS in VARCHAR2,
52 X_CREATION_DATE in DATE,
53 X_CREATED_BY in NUMBER,
54 X_LAST_UPDATE_DATE in DATE,
55 X_LAST_UPDATED_BY in NUMBER,
56 X_LAST_UPDATE_LOGIN in NUMBER
57 ) is
58 cursor C is select ROWID from JTF_TASK_TEMPLATES_B
59 where TASK_TEMPLATE_ID = X_TASK_TEMPLATE_ID
60 ;
61 begin
62 insert into JTF_TASK_TEMPLATES_B (
63 ALARM_ON,
64 ALARM_COUNT,
65 ALARM_INTERVAL,
66 ALARM_INTERVAL_UOM,
67 DELETED_FLAG,
68 ATTRIBUTE1,
69 ATTRIBUTE2,
70 ATTRIBUTE3,
71 ATTRIBUTE4,
72 ATTRIBUTE5,
73 ATTRIBUTE6,
74 ATTRIBUTE7,
75 ATTRIBUTE8,
76 ATTRIBUTE9,
77 ATTRIBUTE10,
78 ATTRIBUTE11,
79 ATTRIBUTE12,
80 ATTRIBUTE13,
81 ATTRIBUTE14,
82 ATTRIBUTE15,
83 ATTRIBUTE_CATEGORY,
84 HOLIDAY_FLAG,
85 BILLABLE_FLAG,
86 RECURRENCE_RULE_ID,
87 NOTIFICATION_FLAG,
88 NOTIFICATION_PERIOD,
89 NOTIFICATION_PERIOD_UOM,
90 ALARM_START,
91 ALARM_START_UOM,
92 PRIVATE_FLAG,
93 PUBLISH_FLAG,
94 RESTRICT_CLOSURE_FLAG,
95 MULTI_BOOKED_FLAG,
96 MILESTONE_FLAG,
97 TASK_GROUP_ID,
98 TASK_NUMBER,
99 TASK_TYPE_ID,
100 TASK_STATUS_ID,
101 TASK_PRIORITY_ID,
102 DURATION,
103 DURATION_UOM,
104 PLANNED_EFFORT,
105 PLANNED_EFFORT_UOM,
106 TASK_TEMPLATE_ID,
107 TASK_CONFIRMATION_STATUS,
108 CREATION_DATE,
109 CREATED_BY,
110 LAST_UPDATE_DATE,
111 LAST_UPDATED_BY,
112 LAST_UPDATE_LOGIN,
113 OBJECT_VERSION_NUMBER
114 ) values (
115 X_ALARM_ON,
116 X_ALARM_COUNT,
117 X_ALARM_INTERVAL,
118 X_ALARM_INTERVAL_UOM,
119 X_DELETED_FLAG,
120 X_ATTRIBUTE1,
121 X_ATTRIBUTE2,
122 X_ATTRIBUTE3,
123 X_ATTRIBUTE4,
124 X_ATTRIBUTE5,
125 X_ATTRIBUTE6,
126 X_ATTRIBUTE7,
127 X_ATTRIBUTE8,
128 X_ATTRIBUTE9,
129 X_ATTRIBUTE10,
130 X_ATTRIBUTE11,
131 X_ATTRIBUTE12,
132 X_ATTRIBUTE13,
133 X_ATTRIBUTE14,
134 X_ATTRIBUTE15,
135 X_ATTRIBUTE_CATEGORY,
136 X_HOLIDAY_FLAG,
137 X_BILLABLE_FLAG,
138 X_RECURRENCE_RULE_ID,
139 X_NOTIFICATION_FLAG,
140 X_NOTIFICATION_PERIOD,
141 X_NOTIFICATION_PERIOD_UOM,
142 X_ALARM_START,
143 X_ALARM_START_UOM,
144 X_PRIVATE_FLAG,
145 X_PUBLISH_FLAG,
146 X_RESTRICT_CLOSURE_FLAG,
147 X_MULTI_BOOKED_FLAG,
148 X_MILESTONE_FLAG,
149 X_TASK_GROUP_ID,
150 X_TASK_NUMBER,
151 X_TASK_TYPE_ID,
152 X_TASK_STATUS_ID,
153 X_TASK_PRIORITY_ID,
154 X_DURATION,
155 X_DURATION_UOM,
156 X_PLANNED_EFFORT,
157 X_PLANNED_EFFORT_UOM,
158 X_TASK_TEMPLATE_ID,
159 X_TASK_CONFIRMATION_STATUS,
160 X_CREATION_DATE,
161 X_CREATED_BY,
162 X_LAST_UPDATE_DATE,
163 X_LAST_UPDATED_BY,
164 X_LAST_UPDATE_LOGIN,
165 1
166 );
167
168 insert into JTF_TASK_TEMPLATES_TL (
169 TASK_TEMPLATE_ID,
170 TASK_NAME,
171 DESCRIPTION,
172 CREATED_BY,
173 CREATION_DATE,
174 LAST_UPDATED_BY,
175 LAST_UPDATE_DATE,
176 LAST_UPDATE_LOGIN,
177 LANGUAGE,
178 SOURCE_LANG
179 ) select
180 X_TASK_TEMPLATE_ID,
181 X_TASK_NAME,
182 X_DESCRIPTION,
183 X_CREATED_BY,
184 X_CREATION_DATE,
185 X_LAST_UPDATED_BY,
186 X_LAST_UPDATE_DATE,
187 X_LAST_UPDATE_LOGIN,
188 L.LANGUAGE_CODE,
189 userenv('LANG')
190 from FND_LANGUAGES L
191 where L.INSTALLED_FLAG in ('I', 'B')
192 and not exists
193 (select NULL
194 from JTF_TASK_TEMPLATES_TL T
195 where T.TASK_TEMPLATE_ID = X_TASK_TEMPLATE_ID
196 and T.LANGUAGE = L.LANGUAGE_CODE);
197
198 open c;
199 fetch c into X_ROWID;
200 if (c%notfound) then
201 close c;
202 raise no_data_found;
203 end if;
204 close c;
205
206 end INSERT_ROW;
207
208 procedure LOCK_ROW (
209 X_TASK_TEMPLATE_ID in NUMBER,
210 X_OBJECT_VERSION_NUMBER in NUMBER
211 ) is
212 cursor c is select
213 OBJECT_VERSION_NUMBER
214 from JTF_TASK_TEMPLATES_VL
215 where TASK_TEMPLATE_ID = X_TASK_TEMPLATE_ID
216 and OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER
217 for update of TASK_TEMPLATE_ID nowait;
218 recinfo c%rowtype;
219
220 begin
221 open c;
222 fetch c into recinfo;
223 if (c%notfound) then
224 close c;
225 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
226 app_exception.raise_exception;
227 end if;
228
229 close c;
230
231 if (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
232 then
233 null;
234 else
235 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
236 app_exception.raise_exception;
237 end if;
238 end LOCK_ROW;
239
240 procedure UPDATE_ROW (
241 X_TASK_TEMPLATE_ID in NUMBER,
242 X_OBJECT_VERSION_NUMBER in NUMBER,
243 X_ALARM_ON in VARCHAR2,
244 X_ALARM_COUNT in NUMBER,
245 X_ALARM_INTERVAL in NUMBER,
246 X_ALARM_INTERVAL_UOM in VARCHAR2,
247 X_DELETED_FLAG in VARCHAR2,
248 X_ATTRIBUTE1 in VARCHAR2,
249 X_ATTRIBUTE2 in VARCHAR2,
250 X_ATTRIBUTE3 in VARCHAR2,
251 X_ATTRIBUTE4 in VARCHAR2,
252 X_ATTRIBUTE5 in VARCHAR2,
253 X_ATTRIBUTE6 in VARCHAR2,
254 X_ATTRIBUTE7 in VARCHAR2,
255 X_ATTRIBUTE8 in VARCHAR2,
256 X_ATTRIBUTE9 in VARCHAR2,
257 X_ATTRIBUTE10 in VARCHAR2,
258 X_ATTRIBUTE11 in VARCHAR2,
259 X_ATTRIBUTE12 in VARCHAR2,
260 X_ATTRIBUTE13 in VARCHAR2,
261 X_ATTRIBUTE14 in VARCHAR2,
262 X_ATTRIBUTE15 in VARCHAR2,
263 X_ATTRIBUTE_CATEGORY in VARCHAR2,
264 X_HOLIDAY_FLAG in VARCHAR2,
265 X_BILLABLE_FLAG in VARCHAR2,
266 X_RECURRENCE_RULE_ID in NUMBER,
267 X_NOTIFICATION_FLAG in VARCHAR2,
268 X_NOTIFICATION_PERIOD in NUMBER,
269 X_NOTIFICATION_PERIOD_UOM in VARCHAR2,
270 X_ALARM_START in NUMBER,
271 X_ALARM_START_UOM in VARCHAR2,
272 X_PRIVATE_FLAG in VARCHAR2,
273 X_PUBLISH_FLAG in VARCHAR2,
274 X_RESTRICT_CLOSURE_FLAG in VARCHAR2,
275 X_MULTI_BOOKED_FLAG in VARCHAR2,
276 X_MILESTONE_FLAG in VARCHAR2,
277 X_TASK_GROUP_ID in NUMBER,
278 X_TASK_NUMBER in VARCHAR2,
279 X_TASK_TYPE_ID in NUMBER,
280 X_TASK_STATUS_ID in NUMBER,
281 X_TASK_PRIORITY_ID in NUMBER,
282 X_DURATION in NUMBER,
283 X_DURATION_UOM in VARCHAR2,
284 X_PLANNED_EFFORT in NUMBER,
285 X_PLANNED_EFFORT_UOM in VARCHAR2,
286 X_TASK_NAME in VARCHAR2,
287 X_DESCRIPTION in VARCHAR2,
288 X_TASK_CONFIRMATION_STATUS in VARCHAR2,
289 X_LAST_UPDATE_DATE in DATE,
290 X_LAST_UPDATED_BY in NUMBER,
291 X_LAST_UPDATE_LOGIN in NUMBER
292 ) is
293 begin
294 update JTF_TASK_TEMPLATES_B set
295 ALARM_ON = X_ALARM_ON,
296 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER + 1,
297 ALARM_COUNT = X_ALARM_COUNT,
298 ALARM_INTERVAL = X_ALARM_INTERVAL,
299 ALARM_INTERVAL_UOM = X_ALARM_INTERVAL_UOM,
300 DELETED_FLAG = X_DELETED_FLAG,
301 ATTRIBUTE1 = X_ATTRIBUTE1,
302 ATTRIBUTE2 = X_ATTRIBUTE2,
303 ATTRIBUTE3 = X_ATTRIBUTE3,
304 ATTRIBUTE4 = X_ATTRIBUTE4,
305 ATTRIBUTE5 = X_ATTRIBUTE5,
306 ATTRIBUTE6 = X_ATTRIBUTE6,
307 ATTRIBUTE7 = X_ATTRIBUTE7,
308 ATTRIBUTE8 = X_ATTRIBUTE8,
309 ATTRIBUTE9 = X_ATTRIBUTE9,
310 ATTRIBUTE10 = X_ATTRIBUTE10,
311 ATTRIBUTE11 = X_ATTRIBUTE11,
312 ATTRIBUTE12 = X_ATTRIBUTE12,
313 ATTRIBUTE13 = X_ATTRIBUTE13,
314 ATTRIBUTE14 = X_ATTRIBUTE14,
315 ATTRIBUTE15 = X_ATTRIBUTE15,
316 ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
317 HOLIDAY_FLAG = X_HOLIDAY_FLAG,
318 BILLABLE_FLAG = X_BILLABLE_FLAG,
319 RECURRENCE_RULE_ID = X_RECURRENCE_RULE_ID,
320 NOTIFICATION_FLAG = X_NOTIFICATION_FLAG,
321 NOTIFICATION_PERIOD = X_NOTIFICATION_PERIOD,
322 NOTIFICATION_PERIOD_UOM = X_NOTIFICATION_PERIOD_UOM,
323 ALARM_START = X_ALARM_START,
324 ALARM_START_UOM = X_ALARM_START_UOM,
325 PRIVATE_FLAG = X_PRIVATE_FLAG,
326 PUBLISH_FLAG = X_PUBLISH_FLAG,
327 RESTRICT_CLOSURE_FLAG = X_RESTRICT_CLOSURE_FLAG,
328 MULTI_BOOKED_FLAG = X_MULTI_BOOKED_FLAG,
329 MILESTONE_FLAG = X_MILESTONE_FLAG,
330 TASK_GROUP_ID = X_TASK_GROUP_ID,
331 TASK_NUMBER = X_TASK_NUMBER,
332 TASK_TYPE_ID = X_TASK_TYPE_ID,
333 TASK_STATUS_ID = X_TASK_STATUS_ID,
334 TASK_PRIORITY_ID = X_TASK_PRIORITY_ID,
335 DURATION = X_DURATION,
336 DURATION_UOM = X_DURATION_UOM,
337 PLANNED_EFFORT = X_PLANNED_EFFORT,
338 PLANNED_EFFORT_UOM = X_PLANNED_EFFORT_UOM,
339 TASK_CONFIRMATION_STATUS = X_TASK_CONFIRMATION_STATUS,
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 TASK_TEMPLATE_ID = X_TASK_TEMPLATE_ID ;
344
345 if (sql%notfound) then
346 raise no_data_found;
347 end if;
348
349 update JTF_TASK_TEMPLATES_TL set
350 TASK_NAME = X_TASK_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 TASK_TEMPLATE_ID = X_TASK_TEMPLATE_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_TASK_TEMPLATE_ID in NUMBER
366 ) is
367 begin
368 delete from JTF_TASK_TEMPLATES_TL
369 where TASK_TEMPLATE_ID = X_TASK_TEMPLATE_ID;
370
371 if (sql%notfound) then
372 raise no_data_found;
373 end if;
374
375 delete from JTF_TASK_TEMPLATES_B
376 where TASK_TEMPLATE_ID = X_TASK_TEMPLATE_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
387 /* Solving Perf. Bug 3723927*/
388 /* The following delete and update statements are commented out */
389 /* as a quick workaround to fix the time-consuming table handler issue */
390 /*
391
392 delete from JTF_TASK_TEMPLATES_TL T
393 where not exists
394 (select NULL
395 from JTF_TASK_TEMPLATES_B B
396 where B.TASK_TEMPLATE_ID = T.TASK_TEMPLATE_ID
397 );
398
399 update JTF_TASK_TEMPLATES_TL T set (
400 TASK_NAME,
401 DESCRIPTION
402 ) = (select
403 B.TASK_NAME,
404 B.DESCRIPTION
405 from JTF_TASK_TEMPLATES_TL B
406 where B.TASK_TEMPLATE_ID = T.TASK_TEMPLATE_ID
407 and B.LANGUAGE = T.SOURCE_LANG)
408 where (
409 T.TASK_TEMPLATE_ID,
410 T.LANGUAGE
411 ) in (select
412 SUBT.TASK_TEMPLATE_ID,
413 SUBT.LANGUAGE
414 from JTF_TASK_TEMPLATES_TL SUBB, JTF_TASK_TEMPLATES_TL SUBT
415 where SUBB.TASK_TEMPLATE_ID = SUBT.TASK_TEMPLATE_ID
416 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
417 and (SUBB.TASK_NAME <> SUBT.TASK_NAME
418 or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
419 or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
420 or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
421 )); */
422
423 insert into JTF_TASK_TEMPLATES_TL (
424 TASK_TEMPLATE_ID,
425 TASK_NAME,
426 DESCRIPTION,
427 CREATED_BY,
428 CREATION_DATE,
429 LAST_UPDATED_BY,
430 LAST_UPDATE_DATE,
431 LAST_UPDATE_LOGIN,
432 LANGUAGE,
433 SOURCE_LANG
434 ) select
435 B.TASK_TEMPLATE_ID,
436 B.TASK_NAME,
437 B.DESCRIPTION,
438 B.CREATED_BY,
439 B.CREATION_DATE,
440 B.LAST_UPDATED_BY,
441 B.LAST_UPDATE_DATE,
442 B.LAST_UPDATE_LOGIN,
443 L.LANGUAGE_CODE,
444 B.SOURCE_LANG
445 from JTF_TASK_TEMPLATES_TL B, FND_LANGUAGES L
446 where L.INSTALLED_FLAG in ('I', 'B')
447 and B.LANGUAGE = userenv('LANG')
448 and not exists
449 (select NULL
450 from JTF_TASK_TEMPLATES_TL T
451 where T.TASK_TEMPLATE_ID = B.TASK_TEMPLATE_ID
452 and T.LANGUAGE = L.LANGUAGE_CODE);
453 end ADD_LANGUAGE;
454
455 procedure TRANSLATE_ROW(
456 X_task_Template_ID in number,
457 X_task_NAME in varchar2,
458 X_DESCRIPTION in varchar2,
459 x_owner in varchar2) is
460 begin
461 update jtf_task_templates_tl set
462 task_NAME = nvl(X_task_NAME,task_name),
463 DESCRIPTION = nvl(X_DESCRIPTION,description),
464 LAST_UPDATE_DATE = sysdate,
465 last_updated_by = decode(X_OWNER, 'SEED', 1, 0),
466 LAST_UPDATE_LOGIN = 0,
467 SOURCE_LANG = userenv('LANG')
468 where task_Template_ID = X_task_Template_ID
469 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
470
471 if (sql%notfound) then
472 raise no_data_found;
473 end if;
474 end TRANSLATE_ROW;
475
476 end JTF_TASK_TEMPLATES_PKG;