[Home] [Help]
PACKAGE BODY: APPS.WMS_TASK_FILTER_PKG
Source
1 package body WMS_TASK_FILTER_PKG as
2 /* $Header: WMSTFTHB.pls 115.0 2003/10/29 21:05:56 sthamman noship $ */
3
4 procedure INSERT_ROW (
5 X_ROWID in out nocopy VARCHAR2,
6 X_TASK_FILTER_ID in NUMBER,
7 X_TASK_FILTER_NAME in VARCHAR2,
8 X_ATTRIBUTE_CATEGORY in VARCHAR2,
9 X_ATTRIBUTE1 in VARCHAR2,
10 X_ATTRIBUTE2 in VARCHAR2,
11 X_ATTRIBUTE3 in VARCHAR2,
12 X_ATTRIBUTE4 in VARCHAR2,
13 X_ATTRIBUTE5 in VARCHAR2,
14 X_ATTRIBUTE6 in VARCHAR2,
15 X_ATTRIBUTE7 in VARCHAR2,
16 X_ATTRIBUTE8 in VARCHAR2,
17 X_ATTRIBUTE9 in VARCHAR2,
18 X_ATTRIBUTE10 in VARCHAR2,
19 X_ATTRIBUTE11 in VARCHAR2,
20 X_ATTRIBUTE12 in VARCHAR2,
21 X_ATTRIBUTE13 in VARCHAR2,
22 X_ATTRIBUTE14 in VARCHAR2,
23 X_ATTRIBUTE15 in VARCHAR2,
24 X_USER_TASK_FILTER_NAME in VARCHAR2,
25 X_TASK_FILTER_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 WMS_TASK_FILTER_B
33 where TASK_FILTER_ID = X_TASK_FILTER_ID
34 ;
35 begin
36 insert into WMS_TASK_FILTER_B (
37 TASK_FILTER_ID,
38 TASK_FILTER_NAME,
39 ATTRIBUTE_CATEGORY,
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 CREATION_DATE,
56 CREATED_BY,
57 LAST_UPDATE_DATE,
58 LAST_UPDATED_BY,
59 LAST_UPDATE_LOGIN
60 ) values (
61 X_TASK_FILTER_ID,
62 X_TASK_FILTER_NAME,
63 X_ATTRIBUTE_CATEGORY,
64 X_ATTRIBUTE1,
65 X_ATTRIBUTE2,
66 X_ATTRIBUTE3,
67 X_ATTRIBUTE4,
68 X_ATTRIBUTE5,
69 X_ATTRIBUTE6,
70 X_ATTRIBUTE7,
71 X_ATTRIBUTE8,
72 X_ATTRIBUTE9,
73 X_ATTRIBUTE10,
74 X_ATTRIBUTE11,
75 X_ATTRIBUTE12,
76 X_ATTRIBUTE13,
77 X_ATTRIBUTE14,
78 X_ATTRIBUTE15,
79 X_CREATION_DATE,
80 X_CREATED_BY,
81 X_LAST_UPDATE_DATE,
82 X_LAST_UPDATED_BY,
83 X_LAST_UPDATE_LOGIN
84 );
85
86 insert into WMS_TASK_FILTER_TL (
87 TASK_FILTER_ID,
88 USER_TASK_FILTER_NAME,
89 LAST_UPDATE_DATE,
90 LAST_UPDATED_BY,
91 CREATION_DATE,
92 CREATED_BY,
93 LAST_UPDATE_LOGIN,
94 TASK_FILTER_DESCRIPTION,
95 LANGUAGE,
96 SOURCE_LANG
97 ) select
98 X_TASK_FILTER_ID,
99 X_USER_TASK_FILTER_NAME,
100 X_LAST_UPDATE_DATE,
101 X_LAST_UPDATED_BY,
102 X_CREATION_DATE,
103 X_CREATED_BY,
104 X_LAST_UPDATE_LOGIN,
105 X_TASK_FILTER_DESCRIPTION,
106 L.LANGUAGE_CODE,
107 userenv('LANG')
108 from FND_LANGUAGES L
109 where L.INSTALLED_FLAG in ('I', 'B')
110 and not exists
111 (select NULL
112 from WMS_TASK_FILTER_TL T
113 where T.TASK_FILTER_ID = X_TASK_FILTER_ID
114 and T.LANGUAGE = L.LANGUAGE_CODE);
115
116 open c;
117 fetch c into X_ROWID;
118 if (c%notfound) then
119 close c;
120 raise no_data_found;
121 end if;
122 close c;
123
124 end INSERT_ROW;
125
126 procedure LOCK_ROW (
127 X_TASK_FILTER_ID in NUMBER,
128 X_TASK_FILTER_NAME in VARCHAR2,
129 X_ATTRIBUTE_CATEGORY in VARCHAR2,
130 X_ATTRIBUTE1 in VARCHAR2,
131 X_ATTRIBUTE2 in VARCHAR2,
132 X_ATTRIBUTE3 in VARCHAR2,
133 X_ATTRIBUTE4 in VARCHAR2,
134 X_ATTRIBUTE5 in VARCHAR2,
135 X_ATTRIBUTE6 in VARCHAR2,
136 X_ATTRIBUTE7 in VARCHAR2,
137 X_ATTRIBUTE8 in VARCHAR2,
138 X_ATTRIBUTE9 in VARCHAR2,
139 X_ATTRIBUTE10 in VARCHAR2,
140 X_ATTRIBUTE11 in VARCHAR2,
141 X_ATTRIBUTE12 in VARCHAR2,
142 X_ATTRIBUTE13 in VARCHAR2,
143 X_ATTRIBUTE14 in VARCHAR2,
144 X_ATTRIBUTE15 in VARCHAR2,
145 X_USER_TASK_FILTER_NAME in VARCHAR2,
146 X_TASK_FILTER_DESCRIPTION in VARCHAR2
147 ) is
148 cursor c is select
149 TASK_FILTER_NAME,
150 ATTRIBUTE_CATEGORY,
151 ATTRIBUTE1,
152 ATTRIBUTE2,
153 ATTRIBUTE3,
154 ATTRIBUTE4,
155 ATTRIBUTE5,
156 ATTRIBUTE6,
157 ATTRIBUTE7,
158 ATTRIBUTE8,
159 ATTRIBUTE9,
160 ATTRIBUTE10,
161 ATTRIBUTE11,
162 ATTRIBUTE12,
163 ATTRIBUTE13,
164 ATTRIBUTE14,
165 ATTRIBUTE15
166 from WMS_TASK_FILTER_B
167 where TASK_FILTER_ID = X_TASK_FILTER_ID
168 for update of TASK_FILTER_ID nowait;
169 recinfo c%rowtype;
170
171 cursor c1 is select
172 USER_TASK_FILTER_NAME,
173 TASK_FILTER_DESCRIPTION,
174 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
175 from WMS_TASK_FILTER_TL
176 where TASK_FILTER_ID = X_TASK_FILTER_ID
177 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
178 for update of TASK_FILTER_ID nowait;
179 begin
180 open c;
181 fetch c into recinfo;
182 if (c%notfound) then
183 close c;
184 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
185 app_exception.raise_exception;
186 end if;
187 close c;
188 if ( (recinfo.TASK_FILTER_NAME = X_TASK_FILTER_NAME)
189 AND ((recinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
190 OR ((recinfo.ATTRIBUTE_CATEGORY is null) AND (X_ATTRIBUTE_CATEGORY is null)))
191 AND ((recinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
192 OR ((recinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null)))
193 AND ((recinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
194 OR ((recinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null)))
195 AND ((recinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
196 OR ((recinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null)))
197 AND ((recinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
198 OR ((recinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null)))
199 AND ((recinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
200 OR ((recinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null)))
201 AND ((recinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
202 OR ((recinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null)))
203 AND ((recinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
204 OR ((recinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null)))
205 AND ((recinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
206 OR ((recinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null)))
207 AND ((recinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
208 OR ((recinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null)))
209 AND ((recinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
210 OR ((recinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null)))
211 AND ((recinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
212 OR ((recinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null)))
213 AND ((recinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
214 OR ((recinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null)))
215 AND ((recinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
216 OR ((recinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null)))
217 AND ((recinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
218 OR ((recinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null)))
219 AND ((recinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
220 OR ((recinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null)))
221 ) then
222 null;
223 else
224 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
225 app_exception.raise_exception;
226 end if;
227
228 for tlinfo in c1 loop
229 if (tlinfo.BASELANG = 'Y') then
230 if ( (tlinfo.USER_TASK_FILTER_NAME = X_USER_TASK_FILTER_NAME)
231 AND ((tlinfo.TASK_FILTER_DESCRIPTION = X_TASK_FILTER_DESCRIPTION)
232 OR ((tlinfo.TASK_FILTER_DESCRIPTION is null) AND (X_TASK_FILTER_DESCRIPTION is null)))
233 ) then
234 null;
235 else
236 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
237 app_exception.raise_exception;
238 end if;
239 end if;
240 end loop;
241 return;
242 end LOCK_ROW;
243
244 procedure UPDATE_ROW (
245 X_TASK_FILTER_ID in NUMBER,
246 X_TASK_FILTER_NAME in VARCHAR2,
247 X_ATTRIBUTE_CATEGORY 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_USER_TASK_FILTER_NAME in VARCHAR2,
264 X_TASK_FILTER_DESCRIPTION in VARCHAR2,
265 X_LAST_UPDATE_DATE in DATE,
266 X_LAST_UPDATED_BY in NUMBER,
267 X_LAST_UPDATE_LOGIN in NUMBER
268 ) is
269 begin
270 update WMS_TASK_FILTER_B set
271 TASK_FILTER_NAME = X_TASK_FILTER_NAME,
272 ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
273 ATTRIBUTE1 = X_ATTRIBUTE1,
274 ATTRIBUTE2 = X_ATTRIBUTE2,
275 ATTRIBUTE3 = X_ATTRIBUTE3,
276 ATTRIBUTE4 = X_ATTRIBUTE4,
277 ATTRIBUTE5 = X_ATTRIBUTE5,
278 ATTRIBUTE6 = X_ATTRIBUTE6,
279 ATTRIBUTE7 = X_ATTRIBUTE7,
280 ATTRIBUTE8 = X_ATTRIBUTE8,
281 ATTRIBUTE9 = X_ATTRIBUTE9,
282 ATTRIBUTE10 = X_ATTRIBUTE10,
283 ATTRIBUTE11 = X_ATTRIBUTE11,
284 ATTRIBUTE12 = X_ATTRIBUTE12,
285 ATTRIBUTE13 = X_ATTRIBUTE13,
286 ATTRIBUTE14 = X_ATTRIBUTE14,
287 ATTRIBUTE15 = X_ATTRIBUTE15,
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 TASK_FILTER_ID = X_TASK_FILTER_ID;
292
293 if (sql%notfound) then
294 raise no_data_found;
295 end if;
296
297 update WMS_TASK_FILTER_TL set
298 USER_TASK_FILTER_NAME = X_USER_TASK_FILTER_NAME,
299 TASK_FILTER_DESCRIPTION = X_TASK_FILTER_DESCRIPTION,
300 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
301 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
302 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
303 SOURCE_LANG = userenv('LANG')
304 where TASK_FILTER_ID = X_TASK_FILTER_ID
305 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
306
307 if (sql%notfound) then
308 raise no_data_found;
309 end if;
310 end UPDATE_ROW;
311
312 procedure DELETE_ROW (
313 X_TASK_FILTER_ID in NUMBER
314 ) is
315 begin
316 delete from WMS_TASK_FILTER_TL
317 where TASK_FILTER_ID = X_TASK_FILTER_ID;
318
319 if (sql%notfound) then
320 raise no_data_found;
321 end if;
322
323 delete from WMS_TASK_FILTER_B
324 where TASK_FILTER_ID = X_TASK_FILTER_ID;
325
326 if (sql%notfound) then
327 raise no_data_found;
328 end if;
329 end DELETE_ROW;
330
331 procedure ADD_LANGUAGE
332 is
333 begin
334 delete from WMS_TASK_FILTER_TL T
335 where not exists
336 (select NULL
337 from WMS_TASK_FILTER_B B
338 where B.TASK_FILTER_ID = T.TASK_FILTER_ID
339 );
340
341 update WMS_TASK_FILTER_TL T set (
342 USER_TASK_FILTER_NAME,
343 TASK_FILTER_DESCRIPTION
344 ) = (select
345 B.USER_TASK_FILTER_NAME,
346 B.TASK_FILTER_DESCRIPTION
347 from WMS_TASK_FILTER_TL B
348 where B.TASK_FILTER_ID = T.TASK_FILTER_ID
349 and B.LANGUAGE = T.SOURCE_LANG)
350 where (
351 T.TASK_FILTER_ID,
352 T.LANGUAGE
353 ) in (select
354 SUBT.TASK_FILTER_ID,
355 SUBT.LANGUAGE
356 from WMS_TASK_FILTER_TL SUBB, WMS_TASK_FILTER_TL SUBT
357 where SUBB.TASK_FILTER_ID = SUBT.TASK_FILTER_ID
358 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
359 and (SUBB.USER_TASK_FILTER_NAME <> SUBT.USER_TASK_FILTER_NAME
360 or SUBB.TASK_FILTER_DESCRIPTION <> SUBT.TASK_FILTER_DESCRIPTION
361 or (SUBB.TASK_FILTER_DESCRIPTION is null and SUBT.TASK_FILTER_DESCRIPTION is not null)
362 or (SUBB.TASK_FILTER_DESCRIPTION is not null and SUBT.TASK_FILTER_DESCRIPTION is null)
363 ));
364
365 insert into WMS_TASK_FILTER_TL (
366 TASK_FILTER_ID,
367 USER_TASK_FILTER_NAME,
368 LAST_UPDATE_DATE,
369 LAST_UPDATED_BY,
370 CREATION_DATE,
371 CREATED_BY,
372 LAST_UPDATE_LOGIN,
373 TASK_FILTER_DESCRIPTION,
374 LANGUAGE,
375 SOURCE_LANG
376 ) select /*+ ORDERED */
377 B.TASK_FILTER_ID,
378 B.USER_TASK_FILTER_NAME,
379 B.LAST_UPDATE_DATE,
380 B.LAST_UPDATED_BY,
381 B.CREATION_DATE,
382 B.CREATED_BY,
383 B.LAST_UPDATE_LOGIN,
384 B.TASK_FILTER_DESCRIPTION,
385 L.LANGUAGE_CODE,
386 B.SOURCE_LANG
387 from WMS_TASK_FILTER_TL B, FND_LANGUAGES L
388 where L.INSTALLED_FLAG in ('I', 'B')
389 and B.LANGUAGE = userenv('LANG')
390 and not exists
391 (select NULL
392 from WMS_TASK_FILTER_TL T
393 where T.TASK_FILTER_ID = B.TASK_FILTER_ID
394 and T.LANGUAGE = L.LANGUAGE_CODE);
395 end ADD_LANGUAGE;
396
397
398 PROCEDURE LOAD_ROW(
399 X_TASK_FILTER_NAME in VARCHAR2,
400 X_OWNER in VARCHAR2,
401 X_ATTRIBUTE_CATEGORY in VARCHAR2,
402 X_ATTRIBUTE1 in VARCHAR2,
403 X_ATTRIBUTE2 in VARCHAR2,
404 X_ATTRIBUTE3 in VARCHAR2,
405 X_ATTRIBUTE4 in VARCHAR2,
406 X_ATTRIBUTE5 in VARCHAR2,
407 X_ATTRIBUTE6 in VARCHAR2,
408 X_ATTRIBUTE7 in VARCHAR2,
409 X_ATTRIBUTE8 in VARCHAR2,
410 X_ATTRIBUTE9 in VARCHAR2,
411 X_ATTRIBUTE10 in VARCHAR2,
412 X_ATTRIBUTE11 in VARCHAR2,
413 X_ATTRIBUTE12 in VARCHAR2,
414 X_ATTRIBUTE13 in VARCHAR2,
415 X_ATTRIBUTE14 in VARCHAR2,
416 X_ATTRIBUTE15 in VARCHAR2,
417 X_USER_TASK_FILTER_NAME in VARCHAR2,
418 X_TASK_FILTER_DESCRIPTION in VARCHAR2,
419 X_LAST_UPDATE_DATE in VARCHAR2,
420 x_custom_mode in varchar2) is
421
422 l_TASK_FILTER_ID number;
423 L_TASK_FILTER_DESCRIPTION WMS_TASK_FILTER_TL.TASK_FILTER_DESCRIPTION%TYPE;
424 row_id varchar2(64);
425 f_luby number; -- entity owner in file
426 f_ludate date; -- entity update date in file
427 db_luby number; -- entity owner in db
428 db_ludate date; -- entity update date in db
429
430 begin
431
432 -- Translate a true null value to fnd_api.g_miss_char
433 -- Note table handler apis should be coded to treat
434 -- fnd_api.g_miss_* as true nulls, and not as no-change.
435 if (X_TASK_FILTER_DESCRIPTION = fnd_load_util.null_value) then
436 L_TASK_FILTER_DESCRIPTION := fnd_api.g_miss_char;
437 else
438 L_TASK_FILTER_DESCRIPTION := X_TASK_FILTER_DESCRIPTION;
439 end if;
440
441 -- Translate owner to file_last_updated_by
442 f_luby := fnd_load_util.owner_id(X_OWNER);
443
444 -- Translate char last_update_date to date
445 f_ludate := nvl(to_date(X_LAST_UPDATE_DATE, 'YYYY/MM/DD'), sysdate);
446
447 begin
448 -- translate values to IDs
449 select TASK_FILTER_ID, LAST_UPDATED_BY, LAST_UPDATE_DATE
450 into l_TASK_FILTER_ID, db_luby, db_ludate
451 from WMS_TASK_FILTER_B
452 where TASK_FILTER_NAME = X_TASK_FILTER_NAME;
453
454 -- Test for customization and version
455 if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
456 db_ludate, X_CUSTOM_MODE)) then
457 -- Update existing row
458 WMS_TASK_FILTER_PKG.UPDATE_ROW(
459 X_TASK_FILTER_ID => l_TASK_FILTER_ID,
460 X_TASK_FILTER_NAME => X_TASK_FILTER_NAME,
461 X_ATTRIBUTE_CATEGORY => X_ATTRIBUTE_CATEGORY,
462 X_ATTRIBUTE1 => X_ATTRIBUTE1,
463 X_ATTRIBUTE2 => X_ATTRIBUTE2,
464 X_ATTRIBUTE3 => X_ATTRIBUTE3,
465 X_ATTRIBUTE4 => X_ATTRIBUTE4,
466 X_ATTRIBUTE5 => X_ATTRIBUTE5,
467 X_ATTRIBUTE6 => X_ATTRIBUTE6,
468 X_ATTRIBUTE7 => X_ATTRIBUTE7,
469 X_ATTRIBUTE8 => X_ATTRIBUTE8,
470 X_ATTRIBUTE9 => X_ATTRIBUTE9,
471 X_ATTRIBUTE10 => X_ATTRIBUTE10,
472 X_ATTRIBUTE11 => X_ATTRIBUTE11,
473 X_ATTRIBUTE12 => X_ATTRIBUTE12,
474 X_ATTRIBUTE13 => X_ATTRIBUTE13,
475 X_ATTRIBUTE14 => X_ATTRIBUTE14,
476 X_ATTRIBUTE15 => X_ATTRIBUTE15,
477 X_USER_TASK_FILTER_NAME => X_USER_TASK_FILTER_NAME,
478 X_TASK_FILTER_DESCRIPTION => L_TASK_FILTER_DESCRIPTION,
479 X_LAST_UPDATE_DATE => f_ludate,
480 X_LAST_UPDATED_BY => f_luby,
481 X_LAST_UPDATE_LOGIN => 0);
482 end if;
483
484 exception
485 when no_data_found then
486
487 -- Record doesn't exist - insert in all cases
488 select WMS_PAGE_TEMPLATES_S.nextval into l_TASK_FILTER_ID
492 X_ROWID => row_id,
489 from dual;
490
491 WMS_TASK_FILTER_PKG.INSERT_ROW(
493 X_TASK_FILTER_ID => l_TASK_FILTER_ID,
494 X_TASK_FILTER_NAME => X_TASK_FILTER_NAME,
495 X_ATTRIBUTE_CATEGORY => X_ATTRIBUTE_CATEGORY,
496 X_ATTRIBUTE1 => X_ATTRIBUTE1,
497 X_ATTRIBUTE2 => X_ATTRIBUTE2,
498 X_ATTRIBUTE3 => X_ATTRIBUTE3,
499 X_ATTRIBUTE4 => X_ATTRIBUTE4,
500 X_ATTRIBUTE5 => X_ATTRIBUTE5,
501 X_ATTRIBUTE6 => X_ATTRIBUTE6,
502 X_ATTRIBUTE7 => X_ATTRIBUTE7,
503 X_ATTRIBUTE8 => X_ATTRIBUTE8,
504 X_ATTRIBUTE9 => X_ATTRIBUTE9,
505 X_ATTRIBUTE10 => X_ATTRIBUTE10,
506 X_ATTRIBUTE11 => X_ATTRIBUTE11,
507 X_ATTRIBUTE12 => X_ATTRIBUTE12,
508 X_ATTRIBUTE13 => X_ATTRIBUTE13,
509 X_ATTRIBUTE14 => X_ATTRIBUTE14,
510 X_ATTRIBUTE15 => X_ATTRIBUTE15,
511 X_USER_TASK_FILTER_NAME => X_USER_TASK_FILTER_NAME,
512 X_TASK_FILTER_DESCRIPTION => L_TASK_FILTER_DESCRIPTION,
513 X_CREATION_DATE => f_ludate,
514 X_CREATED_BY => f_luby,
515 X_LAST_UPDATE_DATE => f_ludate,
516 X_LAST_UPDATED_BY => f_luby,
517 X_LAST_UPDATE_LOGIN => 0);
518 end;
519
520 end LOAD_ROW;
521
522 PROCEDURE TRANSLATE_ROW(
523 X_TASK_FILTER_NAME in VARCHAR2,
524 X_OWNER in VARCHAR2,
525 X_USER_TASK_FILTER_NAME in VARCHAR2,
526 X_TASK_FILTER_DESCRIPTION in VARCHAR2,
527 x_last_update_date in varchar2,
528 x_custom_mode in varchar2) is
529
530 l_TASK_FILTER_ID number;
531 owner_id number;
532 ludate date;
533 row_id varchar2(64);
534 f_luby number; -- entity owner in file
535 f_ludate date; -- entity update date in file
536 db_luby number; -- entity owner in db
537 db_ludate date; -- entity update date in db
538
539 begin
540
541 -- Translate owner to file_last_updated_by
542 f_luby := fnd_load_util.owner_id(X_OWNER);
543
544 -- Translate char last_update_date to date
545 f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
546
547 begin
548
549 -- translate values to IDs
550 select TASK_FILTER_ID, LAST_UPDATED_BY, LAST_UPDATE_DATE
551 into l_TASK_FILTER_ID, db_luby, db_ludate
552 from WMS_TASK_FILTER_B
553 where TASK_FILTER_NAME = X_TASK_FILTER_NAME;
554
555 -- Test for customization and version
556 if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
557 db_ludate, x_custom_mode)) then
558
559 -- Update translations for this language
560 update WMS_TASK_FILTER_TL set
561 USER_TASK_FILTER_NAME = X_USER_TASK_FILTER_NAME,
562 TASK_FILTER_DESCRIPTION = nvl(X_TASK_FILTER_DESCRIPTION, TASK_FILTER_DESCRIPTION),
563 LAST_UPDATE_DATE = f_ludate,
564 LAST_UPDATED_BY = f_luby,
565 LAST_UPDATE_LOGIN = 0,
566 SOURCE_LANG = userenv('LANG')
567 where TASK_FILTER_ID = l_TASK_FILTER_ID
568 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
569
570 end if;
571
572 exception
573 when no_data_found then
574
575 -- Do not insert missing translations, skip this row
576 null;
577
578 end;
579
580 end TRANSLATE_ROW;
581
582 end WMS_TASK_FILTER_PKG;