[Home] [Help]
PACKAGE BODY: APPS.JTF_TASK_DATE_TYPES_PKG
Source
1 PACKAGE body JTF_TASK_DATE_TYPES_PKG as
2 /* $Header: jtftkdtb.pls 115.17 2004/08/30 23:40:53 sachoudh ship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out nocopy VARCHAR2,
5 X_DATE_TYPE_ID in NUMBER,
6 X_SEQUENCE in NUMBER,
7 X_APPLICATION_REFERENCE in VARCHAR2,
8 X_ATTRIBUTE1 in VARCHAR2,
9 X_ATTRIBUTE2 in VARCHAR2,
10 X_ATTRIBUTE3 in VARCHAR2,
11 X_ATTRIBUTE4 in VARCHAR2,
12 X_ATTRIBUTE5 in VARCHAR2,
13 X_ATTRIBUTE6 in VARCHAR2,
14 X_ATTRIBUTE7 in VARCHAR2,
15 X_ATTRIBUTE8 in VARCHAR2,
16 X_ATTRIBUTE9 in VARCHAR2,
17 X_ATTRIBUTE10 in VARCHAR2,
18 X_ATTRIBUTE11 in VARCHAR2,
19 X_ATTRIBUTE12 in VARCHAR2,
20 X_ATTRIBUTE13 in VARCHAR2,
21 X_ATTRIBUTE14 in VARCHAR2,
22 X_ATTRIBUTE15 in VARCHAR2,
23 X_ATTRIBUTE_CATEGORY in VARCHAR2,
24 X_DATE_TYPE in VARCHAR2,
25 X_DESCRIPTION in VARCHAR2,
26 X_CREATION_DATE in DATE,
27 X_CREATED_BY in NUMBER,
28 X_LAST_UPDATE_DATE in DATE,
29 X_LAST_UPDATED_BY in NUMBER,
30 X_LAST_UPDATE_LOGIN in NUMBER
31 ) is
32 cursor C is select ROWID from JTF_TASK_DATE_TYPES_B
33 where DATE_TYPE_ID = X_DATE_TYPE_ID
34 ;
35 begin
36 insert into JTF_TASK_DATE_TYPES_B (
37 DATE_TYPE_ID,
38 SEQUENCE,
39 APPLICATION_REFERENCE,
40 ATTRIBUTE1,
41 ATTRIBUTE2,
42 ATTRIBUTE3,
43 ATTRIBUTE4,
44 ATTRIBUTE5,
45 ATTRIBUTE6,
46 ATTRIBUTE7,
47 ATTRIBUTE8,
48 ATTRIBUTE9,
49 ATTRIBUTE10,
50 ATTRIBUTE11,
51 ATTRIBUTE12,
52 ATTRIBUTE13,
53 ATTRIBUTE14,
54 ATTRIBUTE15,
55 ATTRIBUTE_CATEGORY,
56 CREATION_DATE,
57 CREATED_BY,
58 LAST_UPDATE_DATE,
59 LAST_UPDATED_BY,
60 LAST_UPDATE_LOGIN,
61 OBJECT_VERSION_NUMBER
62 ) values (
63 X_DATE_TYPE_ID,
64 X_SEQUENCE,
65 X_APPLICATION_REFERENCE,
66 X_ATTRIBUTE1,
67 X_ATTRIBUTE2,
68 X_ATTRIBUTE3,
69 X_ATTRIBUTE4,
70 X_ATTRIBUTE5,
71 X_ATTRIBUTE6,
72 X_ATTRIBUTE7,
73 X_ATTRIBUTE8,
74 X_ATTRIBUTE9,
75 X_ATTRIBUTE10,
76 X_ATTRIBUTE11,
77 X_ATTRIBUTE12,
78 X_ATTRIBUTE13,
79 X_ATTRIBUTE14,
80 X_ATTRIBUTE15,
81 X_ATTRIBUTE_CATEGORY,
82 X_CREATION_DATE,
83 X_CREATED_BY,
84 X_LAST_UPDATE_DATE,
85 X_LAST_UPDATED_BY,
86 X_LAST_UPDATE_LOGIN,
87 1
88 );
89
90 insert into JTF_TASK_DATE_TYPES_TL (
91 DATE_TYPE_ID,
92 DATE_TYPE,
93 DESCRIPTION,
94 CREATED_BY,
95 CREATION_DATE,
96 LAST_UPDATED_BY,
97 LAST_UPDATE_DATE,
98 LAST_UPDATE_LOGIN,
99 LANGUAGE,
100 SOURCE_LANG
101 ) select
102 X_DATE_TYPE_ID,
103 X_DATE_TYPE,
104 X_DESCRIPTION,
105 X_CREATED_BY,
106 X_CREATION_DATE,
107 X_LAST_UPDATED_BY,
108 X_LAST_UPDATE_DATE,
109 X_LAST_UPDATE_LOGIN,
110 L.LANGUAGE_CODE,
111 userenv('LANG')
112 from FND_LANGUAGES L
113 where L.INSTALLED_FLAG in ('I', 'B')
114 and not exists
115 (select NULL
116 from JTF_TASK_DATE_TYPES_TL T
117 where T.DATE_TYPE_ID = X_DATE_TYPE_ID
118 and T.LANGUAGE = L.LANGUAGE_CODE);
119
120 open c;
121 fetch c into X_ROWID;
122 if (c%notfound) then
123 close c;
124 raise no_data_found;
125 end if;
126 close c;
127
128 end INSERT_ROW;
129
130 procedure LOCK_ROW (
131 X_DATE_TYPE_ID in NUMBER,
132 X_OBJECT_VERSION_NUMBER in NUMBER
133 ) is
134 cursor c is select
135 OBJECT_VERSION_NUMBER
136 from JTF_TASK_DATE_TYPES_VL
137 where DATE_TYPE_ID = X_DATE_TYPE_ID
138 for update of DATE_TYPE_ID nowait;
139 recinfo c%rowtype;
140
141 begin
142 open c;
143 fetch c into recinfo;
144 if (c%notfound) then
145 close c;
146 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
147 app_exception.raise_exception;
148 end if;
149 close c;
150 if (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
151 then
152 null;
153 else
154 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
155 app_exception.raise_exception;
156 end if;
157
158
159 end LOCK_ROW;
160
161 procedure UPDATE_ROW (
162 X_DATE_TYPE_ID in NUMBER,
163 X_OBJECT_VERSION_NUMBER in NUMBER,
164 X_SEQUENCE in NUMBER,
165 X_APPLICATION_REFERENCE in VARCHAR2,
166 X_ATTRIBUTE1 in VARCHAR2,
167 X_ATTRIBUTE2 in VARCHAR2,
168 X_ATTRIBUTE3 in VARCHAR2,
169 X_ATTRIBUTE4 in VARCHAR2,
170 X_ATTRIBUTE5 in VARCHAR2,
171 X_ATTRIBUTE6 in VARCHAR2,
172 X_ATTRIBUTE7 in VARCHAR2,
173 X_ATTRIBUTE8 in VARCHAR2,
174 X_ATTRIBUTE9 in VARCHAR2,
175 X_ATTRIBUTE10 in VARCHAR2,
176 X_ATTRIBUTE11 in VARCHAR2,
177 X_ATTRIBUTE12 in VARCHAR2,
178 X_ATTRIBUTE13 in VARCHAR2,
179 X_ATTRIBUTE14 in VARCHAR2,
180 X_ATTRIBUTE15 in VARCHAR2,
181 X_ATTRIBUTE_CATEGORY in VARCHAR2,
182 X_DATE_TYPE in VARCHAR2,
183 X_DESCRIPTION in VARCHAR2,
184 X_LAST_UPDATE_DATE in DATE,
185 X_LAST_UPDATED_BY in NUMBER,
186 X_LAST_UPDATE_LOGIN in NUMBER
187 ) is
188 begin
189 update JTF_TASK_DATE_TYPES_B set
190 SEQUENCE = X_SEQUENCE,
191 /*changed from X_OBJECT_VERSION_NUMBER TO X_OBJECT_VERSION_NUMBER +1 */
192 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER+1,
193 APPLICATION_REFERENCE = X_APPLICATION_REFERENCE,
194 ATTRIBUTE1 = X_ATTRIBUTE1,
195 ATTRIBUTE2 = X_ATTRIBUTE2,
196 ATTRIBUTE3 = X_ATTRIBUTE3,
197 ATTRIBUTE4 = X_ATTRIBUTE4,
198 ATTRIBUTE5 = X_ATTRIBUTE5,
199 ATTRIBUTE6 = X_ATTRIBUTE6,
200 ATTRIBUTE7 = X_ATTRIBUTE7,
201 ATTRIBUTE8 = X_ATTRIBUTE8,
202 ATTRIBUTE9 = X_ATTRIBUTE9,
203 ATTRIBUTE10 = X_ATTRIBUTE10,
204 ATTRIBUTE11 = X_ATTRIBUTE11,
205 ATTRIBUTE12 = X_ATTRIBUTE12,
206 ATTRIBUTE13 = X_ATTRIBUTE13,
207 ATTRIBUTE14 = X_ATTRIBUTE14,
208 ATTRIBUTE15 = X_ATTRIBUTE15,
209 ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
210 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
211 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
212 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
213 where DATE_TYPE_ID = X_DATE_TYPE_ID ;
214
215 if (sql%notfound) then
216 raise no_data_found;
217 end if;
218
219 update JTF_TASK_DATE_TYPES_TL set
220 DATE_TYPE = X_DATE_TYPE,
221 DESCRIPTION = X_DESCRIPTION,
222 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
223 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
224 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
225 SOURCE_LANG = userenv('LANG')
226 where DATE_TYPE_ID = X_DATE_TYPE_ID
227 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
228
229 if (sql%notfound) then
230 raise no_data_found;
231 end if;
232 end UPDATE_ROW;
233
234 procedure DELETE_ROW (
235 X_DATE_TYPE_ID in NUMBER
236 ) is
237 begin
238 delete from JTF_TASK_DATE_TYPES_TL
239 where DATE_TYPE_ID = X_DATE_TYPE_ID;
240
241 if (sql%notfound) then
242 raise no_data_found;
243 end if;
244
245 delete from JTF_TASK_DATE_TYPES_B
246 where DATE_TYPE_ID = X_DATE_TYPE_ID ;
247
248 if (sql%notfound) then
249 raise no_data_found;
250 end if;
251 end DELETE_ROW;
252
253 procedure ADD_LANGUAGE
254 is
255 begin
256
257 /* Solving Perf. Bug 3723927*/
258 /* The following delete and update statements are commented out */
259 /* as a quick workaround to fix the time-consuming table handler issue */
260 /*
261
262 delete from JTF_TASK_DATE_TYPES_TL T
263 where not exists
264 (select NULL
265 from JTF_TASK_DATE_TYPES_B B
266 where B.DATE_TYPE_ID = T.DATE_TYPE_ID
267 );
268
269 update JTF_TASK_DATE_TYPES_TL T set (
270 DATE_TYPE,
271 DESCRIPTION
272 ) = (select
273 B.DATE_TYPE,
274 B.DESCRIPTION
275 from JTF_TASK_DATE_TYPES_TL B
276 where B.DATE_TYPE_ID = T.DATE_TYPE_ID
277 and B.LANGUAGE = T.SOURCE_LANG)
278 where (
279 T.DATE_TYPE_ID,
280 T.LANGUAGE
281 ) in (select
282 SUBT.DATE_TYPE_ID,
283 SUBT.LANGUAGE
284 from JTF_TASK_DATE_TYPES_TL SUBB, JTF_TASK_DATE_TYPES_TL SUBT
285 where SUBB.DATE_TYPE_ID = SUBT.DATE_TYPE_ID
286 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
287 and (SUBB.DATE_TYPE <> SUBT.DATE_TYPE
288 or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
289 or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
290 or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
291 )); */
292
293 insert into JTF_TASK_DATE_TYPES_TL (
294 DATE_TYPE_ID,
295 DATE_TYPE,
296 DESCRIPTION,
297 CREATED_BY,
298 CREATION_DATE,
299 LAST_UPDATED_BY,
300 LAST_UPDATE_DATE,
301 LAST_UPDATE_LOGIN,
302 LANGUAGE,
303 SOURCE_LANG
304 ) select
305 B.DATE_TYPE_ID,
306 B.DATE_TYPE,
307 B.DESCRIPTION,
308 B.CREATED_BY,
309 B.CREATION_DATE,
310 B.LAST_UPDATED_BY,
311 B.LAST_UPDATE_DATE,
312 B.LAST_UPDATE_LOGIN,
313 L.LANGUAGE_CODE,
314 B.SOURCE_LANG
315 from JTF_TASK_DATE_TYPES_TL B, FND_LANGUAGES L
316 where L.INSTALLED_FLAG in ('I', 'B')
317 and B.LANGUAGE = userenv('LANG')
318 and not exists
319 (select NULL
320 from JTF_TASK_DATE_TYPES_TL T
321 where T.DATE_TYPE_ID = B.DATE_TYPE_ID
322 and T.LANGUAGE = L.LANGUAGE_CODE);
323 end ADD_LANGUAGE;
324
325
326 procedure translate_row(
327 x_date_type_id in number,
328 x_date_type in varchar2,
329 x_description in varchar2,
330 x_owner in varchar2 )
331 as
332 begin
333 update jtf_task_date_types_tl set
334 date_type = nvl(x_date_type,date_type),
335 description = nvl(x_description,description ),
336 LAST_UPDATE_DATE = sysdate,
337 LAST_UPDATEd_by = decode(x_owner,'SEED',1,0),
338 LAST_UPDATE_LOGIN = 0,
339 SOURCE_LANG = userenv('LANG')
340 where date_type_id = X_date_type_id
341 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
342
343 if (sql%notfound) then
344 raise no_data_found;
345 end if;
346
347 end ;
348
349 end JTF_TASK_DATE_TYPES_PKG;