DBA Data[Home] [Help]

PACKAGE BODY: APPS.JTF_PREFAB_CA_FILTERS_PKG

Source


1 package body JTF_PREFAB_CA_FILTERS_PKG as
2 /* $Header: jtfprecafiltertb.pls 120.1.12000000.3 2007/07/13 06:56:18 amaddula ship $ */
3 procedure INSERT_ROW (
4   X_CA_FILTER_ID in NUMBER,
5   X_CA_FILTER_NAME in VARCHAR2,
6   X_APPLICATION_ID in NUMBER,
7   X_SECURITY_GROUP_ID in NUMBER,
8   X_OBJECT_VERSION_NUMBER in NUMBER,
9   X_DESCRIPTION in VARCHAR2,
10   X_CREATION_DATE in DATE,
11   X_CREATED_BY in NUMBER,
12   X_LAST_UPDATE_DATE in DATE,
13   X_LAST_UPDATED_BY in NUMBER,
14   X_LAST_UPDATE_LOGIN in NUMBER
15 ) is
16 begin
17   insert into JTF_PREFAB_CA_FILTERS_B (
18     CA_FILTER_NAME,
19     APPLICATION_ID,
20     -- SECURITY_GROUP_ID,
21     OBJECT_VERSION_NUMBER,
22     CA_FILTER_ID,
23     CREATION_DATE,
24     CREATED_BY,
25     LAST_UPDATE_DATE,
26     LAST_UPDATED_BY,
27     LAST_UPDATE_LOGIN
28   ) values (
29     X_CA_FILTER_NAME,
30     X_APPLICATION_ID,
31     -- X_SECURITY_GROUP_ID,
32     X_OBJECT_VERSION_NUMBER,
33     X_CA_FILTER_ID,
34     X_CREATION_DATE,
35     X_CREATED_BY,
36     X_LAST_UPDATE_DATE,
37     X_LAST_UPDATED_BY,
38     X_LAST_UPDATE_LOGIN
39   );
40 
41   insert into JTF_PREFAB_CA_FILTERS_TL (
42     DESCRIPTION,
43     CREATED_BY,
44     CREATION_DATE,
45     LAST_UPDATED_BY,
46     LAST_UPDATE_DATE,
47     LAST_UPDATE_LOGIN,
48     -- SECURITY_GROUP_ID,
49     CA_FILTER_ID,
50     LANGUAGE,
51     SOURCE_LANG
52   ) select
53     X_DESCRIPTION,
54     X_CREATED_BY,
55     X_CREATION_DATE,
56     X_LAST_UPDATED_BY,
57     X_LAST_UPDATE_DATE,
58     X_LAST_UPDATE_LOGIN,
59     -- X_SECURITY_GROUP_ID,
60     X_CA_FILTER_ID,
61     L.LANGUAGE_CODE,
62     userenv('LANG')
63   from FND_LANGUAGES L
64   where L.INSTALLED_FLAG in ('I', 'B')
65   and not exists
66     (select NULL
67     from JTF_PREFAB_CA_FILTERS_TL T
68     where T.CA_FILTER_ID = X_CA_FILTER_ID
69     and T.LANGUAGE = L.LANGUAGE_CODE);
70 
71 end INSERT_ROW;
72 
73 procedure LOCK_ROW (
74   X_CA_FILTER_ID in NUMBER,
75   X_CA_FILTER_NAME in VARCHAR2,
76   X_APPLICATION_ID in NUMBER,
77   X_SECURITY_GROUP_ID in NUMBER,
78   X_OBJECT_VERSION_NUMBER in NUMBER,
79   X_DESCRIPTION in VARCHAR2
80 ) is
81   cursor c is select
82       CA_FILTER_NAME,
83       APPLICATION_ID,
84       SECURITY_GROUP_ID,
85       OBJECT_VERSION_NUMBER
86     from JTF_PREFAB_CA_FILTERS_B
87     where CA_FILTER_ID = X_CA_FILTER_ID
88     for update of CA_FILTER_ID nowait;
89   recinfo c%rowtype;
90 
91   cursor c1 is select
92       DESCRIPTION,
93       decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
94     from JTF_PREFAB_CA_FILTERS_TL
95     where CA_FILTER_ID = X_CA_FILTER_ID
96     and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
97     for update of CA_FILTER_ID nowait;
98 begin
99   open c;
100   fetch c into recinfo;
101   if (c%notfound) then
102     close c;
103     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
104     app_exception.raise_exception;
105   end if;
106   close c;
107   if (    (recinfo.CA_FILTER_NAME = X_CA_FILTER_NAME)
108       AND (recinfo.APPLICATION_ID = X_APPLICATION_ID)
109       -- AND ((recinfo.SECURITY_GROUP_ID = X_SECURITY_GROUP_ID)
110       --     OR ((recinfo.SECURITY_GROUP_ID is null) AND (X_SECURITY_GROUP_ID is null)))
111       AND (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
112   ) then
113     null;
114   else
115     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
116     app_exception.raise_exception;
117   end if;
118 
119   for tlinfo in c1 loop
120     if (tlinfo.BASELANG = 'Y') then
121       if (    (tlinfo.DESCRIPTION = X_DESCRIPTION)
122       ) then
123         null;
124       else
125         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
126         app_exception.raise_exception;
127       end if;
128     end if;
129   end loop;
130   return;
131 end LOCK_ROW;
132 
133 procedure UPDATE_ROW (
134   X_CA_FILTER_ID in NUMBER,
135   X_CA_FILTER_NAME in VARCHAR2,
136   X_APPLICATION_ID in NUMBER,
137   X_SECURITY_GROUP_ID in NUMBER,
138   X_OBJECT_VERSION_NUMBER in NUMBER,
139   X_DESCRIPTION in VARCHAR2,
140   X_LAST_UPDATE_DATE in DATE,
141   X_LAST_UPDATED_BY in NUMBER,
142   X_LAST_UPDATE_LOGIN in NUMBER
143 ) is
144 begin
145   update JTF_PREFAB_CA_FILTERS_B set
146     CA_FILTER_NAME = X_CA_FILTER_NAME,
147     APPLICATION_ID = X_APPLICATION_ID,
148     -- SECURITY_GROUP_ID = X_SECURITY_GROUP_ID,
149     OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
150     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
151     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
152     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
153   where CA_FILTER_ID = X_CA_FILTER_ID;
154 
155   if (sql%notfound) then
156     raise no_data_found;
157   end if;
158 
159   update JTF_PREFAB_CA_FILTERS_TL set
160     DESCRIPTION = X_DESCRIPTION,
161     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
162     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
163     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
164     SOURCE_LANG = userenv('LANG')
165   where CA_FILTER_ID = X_CA_FILTER_ID
166   and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
167 
168   if (sql%notfound) then
169     raise no_data_found;
170   end if;
171 end UPDATE_ROW;
172 
173 procedure DELETE_ROW (
174   X_CA_FILTER_ID in NUMBER
175 ) is
176 begin
177   delete from JTF_PREFAB_CA_FILTERS_TL
178   where CA_FILTER_ID = X_CA_FILTER_ID;
179 
180   if (sql%notfound) then
181     raise no_data_found;
182   end if;
183 
184   delete from JTF_PREFAB_CA_FILTERS_B
185   where CA_FILTER_ID = X_CA_FILTER_ID;
186 
187   if (sql%notfound) then
188     raise no_data_found;
189   end if;
190 end DELETE_ROW;
191 
192 procedure ADD_LANGUAGE
193 is
194 begin
195   delete from JTF_PREFAB_CA_FILTERS_TL T
196   where not exists
197     (select NULL
198     from JTF_PREFAB_CA_FILTERS_B B
199     where B.CA_FILTER_ID = T.CA_FILTER_ID
200     );
201 
202   update JTF_PREFAB_CA_FILTERS_TL T set (
203       DESCRIPTION
204     ) = (select
205       B.DESCRIPTION
206     from JTF_PREFAB_CA_FILTERS_TL B
207     where B.CA_FILTER_ID = T.CA_FILTER_ID
208     and B.LANGUAGE = T.SOURCE_LANG)
209   where (
210       T.CA_FILTER_ID,
211       T.LANGUAGE
212   ) in (select
213       SUBT.CA_FILTER_ID,
214       SUBT.LANGUAGE
215     from JTF_PREFAB_CA_FILTERS_TL SUBB, JTF_PREFAB_CA_FILTERS_TL SUBT
216     where SUBB.CA_FILTER_ID = SUBT.CA_FILTER_ID
217     and SUBB.LANGUAGE = SUBT.SOURCE_LANG
218     and (SUBB.DESCRIPTION <> SUBT.DESCRIPTION
219   ));
220 
221   insert into JTF_PREFAB_CA_FILTERS_TL (
222     DESCRIPTION,
223     CREATED_BY,
224     CREATION_DATE,
225     LAST_UPDATED_BY,
226     LAST_UPDATE_DATE,
227     LAST_UPDATE_LOGIN,
228     -- SECURITY_GROUP_ID,
229     CA_FILTER_ID,
230     LANGUAGE,
231     SOURCE_LANG
232   ) select
233     B.DESCRIPTION,
234     B.CREATED_BY,
235     B.CREATION_DATE,
236     B.LAST_UPDATED_BY,
237     B.LAST_UPDATE_DATE,
238     B.LAST_UPDATE_LOGIN,
239     -- B.SECURITY_GROUP_ID,
240     B.CA_FILTER_ID,
241     L.LANGUAGE_CODE,
242     B.SOURCE_LANG
243   from JTF_PREFAB_CA_FILTERS_TL B, FND_LANGUAGES L
244   where L.INSTALLED_FLAG in ('I', 'B')
245   and B.LANGUAGE = userenv('LANG')
246   and not exists
247     (select NULL
248     from JTF_PREFAB_CA_FILTERS_TL T
249     where T.CA_FILTER_ID = B.CA_FILTER_ID
250     and T.LANGUAGE = L.LANGUAGE_CODE);
251 end ADD_LANGUAGE;
252 
253 procedure LOAD_ROW (
254   X_CA_FILTER_NAME in VARCHAR2,
255   X_APPLICATION_ID in NUMBER,
256   X_SECURITY_GROUP_ID in NUMBER,
257   X_OBJECT_VERSION_NUMBER in NUMBER,
258   X_DESCRIPTION in VARCHAR2,
259   X_LAST_UPDATE_DATE in DATE,
260   X_OWNER in VARCHAR2,
261   X_CUSTOM_MODE in VARCHAR2
262 ) is
263    	--****** local variables ******
264     	f_luby		NUMBER;
265     	f_ludate    	DATE;
266     	db_luby		NUMBER;
267     	db_ludate	DATE;
268    	l_ca_filter_id  NUMBER;
269    	l_host_app_id   NUMBER;
270 
271 	cursor c is select nvl(max(CA_FILTER_ID), 0) from jtf_prefab_ca_filters_b where CA_FILTER_ID < 10000;
272 	cursor c_ha is select nvl(max(HA_FILTER_ID), 0) from jtf_prefab_ha_filters where HA_FILTER_ID < 10000;
273 	l_pseudo_seq	       NUMBER := NULL;
274 	l_pseudo_seq_ha	       NUMBER := NULL;
275 
276         CURSOR host_apps_cursor IS
277           SELECT host_app_id
278           FROM jtf_prefab_host_apps
279           WHERE application_id = X_APPLICATION_ID;
280 begin
281 
282       if (X_OWNER = 'SEED') then
283 	f_luby := 1;
284       else
285         f_luby := 0;
286       end if;
287 
288       f_ludate := X_LAST_UPDATE_DATE;
289 
290       begin
291 	  SELECT CA_FILTER_ID, LAST_UPDATED_BY, LAST_UPDATE_DATE
292 	  INTO l_ca_filter_id, db_luby, db_ludate
293 	  FROM JTF_PREFAB_CA_FILTERS_B
294 	  WHERE APPLICATION_ID = X_APPLICATION_ID AND
295                 CA_FILTER_NAME = X_CA_FILTER_NAME;
296 
297 	  -- **** Entry is there, check if it's legal to update ****
298 	  IF ((X_CUSTOM_MODE = 'FORCE') OR
299               ((f_luby = 0) AND (db_luby = 1)) OR
300               ((f_luby = db_luby) AND (f_ludate > db_ludate))
301              )
302 	  then
303 	      -- **** call Update row ****
304               JTF_PREFAB_CA_FILTERS_PKG.UPDATE_ROW (
305                   X_CA_FILTER_ID               =>   l_ca_filter_id,
306                   X_CA_FILTER_NAME             =>   X_CA_FILTER_NAME,
307                   X_APPLICATION_ID             =>   X_APPLICATION_ID,
308                   X_SECURITY_GROUP_ID          =>   X_SECURITY_GROUP_ID,
309                   X_OBJECT_VERSION_NUMBER      =>   X_OBJECT_VERSION_NUMBER,
310                   X_DESCRIPTION                =>   X_DESCRIPTION,
311                   X_LAST_UPDATE_DATE           =>   f_ludate,
312                   X_LAST_UPDATED_BY            =>   f_luby,
313                   X_LAST_UPDATE_LOGIN          =>   0);
314 
315               -- **** delete all the child entries ****
316               DELETE FROM jtf_prefab_ca_fl_resps
317               WHERE ca_filter_id = l_ca_filter_id;
318 
319               DELETE FROM jtf_prefab_ca_fl_langs
320               WHERE ca_filter_id = l_ca_filter_id;
321            end if;
322       exception
323   	   when no_data_found then
324 	      -- **** generate pseudo sequence ***
325 	      OPEN c;
326 	      FETCH c INTO l_pseudo_seq;
327 	      CLOSE c;
328 
329               l_pseudo_seq := l_pseudo_seq + 1;
330 
331               JTF_PREFAB_CA_FILTERS_PKG.INSERT_ROW (
332                   X_CA_FILTER_ID                =>   l_pseudo_seq,
333                   X_CA_FILTER_NAME              =>   X_CA_FILTER_NAME,
334                   X_APPLICATION_ID              =>   X_APPLICATION_ID,
335                   X_SECURITY_GROUP_ID           =>   X_SECURITY_GROUP_ID,
336                   X_OBJECT_VERSION_NUMBER       =>   X_OBJECT_VERSION_NUMBER,
337                   X_DESCRIPTION                 =>   X_DESCRIPTION,
338                   X_CREATION_DATE               =>   f_ludate,
339                   X_CREATED_BY                  =>   f_luby,
340                   X_LAST_UPDATE_DATE            =>   f_ludate,
341                   X_LAST_UPDATED_BY             =>   f_luby,
342                   X_LAST_UPDATE_LOGIN           =>   0);
343 
344               -- for each application/host pair that the filter belongs to,
345               -- add a row to ha_filters
346 	      OPEN c_ha;
347 	      FETCH c_ha INTO l_pseudo_seq_ha;
348 	      CLOSE c_ha;
349 
350               OPEN host_apps_cursor;
351               FETCH host_apps_cursor INTO l_host_app_id;
352 
353               WHILE host_apps_cursor%FOUND LOOP
354                 l_pseudo_seq_ha := l_pseudo_seq_ha + 1;
355 
356                 INSERT INTO jtf_prefab_ha_filters (ha_filter_id,
357                                                    object_version_number,
358                                                    created_by,
359                                                    creation_date,
360                                                    last_updated_by,
361                                                    last_update_date,
362                                                    last_update_login,
363                                                    -- security_group_id,
364                                                    host_app_id,
365                                                    ca_filter_id,
366                                                    cache_filter_enabled_flag)
367                 VALUES (l_pseudo_seq_ha,
368                         X_OBJECT_VERSION_NUMBER,
369                         f_luby,
370                         f_ludate,
371                         f_luby,
372                         f_ludate,
373                         0,
374                         -- X_SECURITY_GROUP_ID,
375                         l_host_app_id,
376                         l_pseudo_seq,
377                         't');
378                 FETCH host_apps_cursor INTO l_host_app_id;
379               END LOOP;
380 
381               CLOSE host_apps_cursor;
382       end;
383 
384 end LOAD_ROW;
385 
386 procedure TRANSLATE_ROW (
387   X_CA_FILTER_NAME in VARCHAR2,
388   X_APPLICATION_ID in NUMBER,
389   X_DESCRIPTION in VARCHAR2,
390   X_LAST_UPDATE_DATE in DATE,
391   X_OWNER in VARCHAR2,
392   X_CUSTOM_MODE in VARCHAR2
393 ) is
394     -- **** local variables *****
395     f_luby		NUMBER;
396     f_ludate    	DATE;
397     db_luby		NUMBER;
398     db_ludate		DATE;
399     l_ca_filter_id      NUMBER;
400 begin
401 
402   if (X_OWNER = 'SEED') then
403      f_luby := 1;
404   else
405      f_luby := 0;
406   end if;
407 
408   f_ludate := X_LAST_UPDATE_DATE;
409 
410   begin
411       SELECT tl.CA_FILTER_ID, tl.LAST_UPDATED_BY, tl.LAST_UPDATE_DATE
412       INTO l_ca_filter_id, db_luby, db_ludate
413       FROM JTF_PREFAB_CA_FILTERS_B b, JTF_PREFAB_CA_FILTERS_TL tl
414       WHERE b.CA_FILTER_ID = tl.CA_FILTER_ID AND
415             b.APPLICATION_ID = X_APPLICATION_ID AND
416             b.CA_FILTER_NAME = X_CA_FILTER_NAME AND
417             tl.LANGUAGE = userenv('LANG');
418 
419       if ((X_CUSTOM_MODE = 'FORCE') OR
420           ((f_luby = 0) AND (db_luby = 1)) OR
421           ((f_luby = db_luby) AND (f_ludate >= db_ludate))
422          )
423       then
424           update JTF_PREFAB_CA_FILTERS_TL set
425             DESCRIPTION = nvl(X_DESCRIPTION, DESCRIPTION),
426 	    LAST_UPDATE_DATE = f_ludate,
427 	    LAST_UPDATED_BY = f_luby,
428 	    LAST_UPDATE_LOGIN = 0,
429 	    SOURCE_LANG = userenv('LANG')
430           where userenv('LANG') in (LANGUAGE, SOURCE_LANG) and
431 	        CA_FILTER_ID = l_ca_filter_id;
432       end if;
433    exception
434 	when no_data_found then null;
435    end;
436 end TRANSLATE_ROW;
437 
438 procedure LOAD_RESP_ROW (
439   X_SECURITY_GROUP_ID in NUMBER,
440   X_APPLICATION_ID in NUMBER,
441   X_CA_FILTER_NAME in VARCHAR2,
442   X_RESPONSIBILITY_ID in NUMBER,
443   X_OBJECT_VERSION_NUMBER in NUMBER,
444   X_LAST_UPDATE_DATE in DATE,
445   X_OWNER in VARCHAR2,
446   X_CUSTOM_MODE in VARCHAR2
447 ) is
448    	--****** local variables ******
449     	f_luby		NUMBER;
450     	f_ludate    	DATE;
451     	db_luby		NUMBER;
455 	cursor c is select nvl(max(CA_FL_RESP_ID), 0) from jtf_prefab_ca_fl_resps where CA_FL_RESP_ID < 10000;
452     	db_ludate	DATE;
453    	l_ca_filter_id  NUMBER;
454 
456 	l_pseudo_seq	       NUMBER := NULL;
457 begin
458 
459       if (X_OWNER = 'SEED') then
460 	f_luby := 1;
461       else
462         f_luby := 0;
463       end if;
464 
465       f_ludate := X_LAST_UPDATE_DATE;
466 
467       begin
468 	  SELECT child.LAST_UPDATED_BY, child.LAST_UPDATE_DATE
469 	  INTO db_luby, db_ludate
470 	  FROM JTF_PREFAB_CA_FL_RESPS child, JTF_PREFAB_CA_FILTERS_B parent
471 	  WHERE child.ca_filter_id = parent.ca_filter_id
472           AND  parent.APPLICATION_ID = X_APPLICATION_ID
473 	  AND  parent.CA_FILTER_NAME = X_CA_FILTER_NAME
474           AND  child.RESPONSIBILITY_ID = X_RESPONSIBILITY_ID;
475 
476           /*
477 	  -- **** Entry is there, check if it's legal to update ****
478 	  IF ((X_CUSTOM_MODE = 'FORCE') OR
479               ((f_luby = 0) AND (db_luby = 1)) OR
480               ((f_luby = db_luby) AND (f_ludate > db_ludate))
481              )
482 	  then
483 	      -- **** do nothing ****
484           end if;
485            */
486       exception
487   	   when no_data_found then
488 	      -- **** generate pseudo sequence ***
489 	      OPEN c;
490 	      FETCH c INTO l_pseudo_seq;
491 	      CLOSE c;
492 
493               l_pseudo_seq := l_pseudo_seq + 1;
494 
495 	      -- **** get ca_filter_id ***
496               SELECT CA_FILTER_ID
497               INTO l_ca_filter_id
498               FROM JTF_PREFAB_CA_FILTERS_B
499               WHERE APPLICATION_ID = X_APPLICATION_ID
500               AND   CA_FILTER_NAME = X_CA_FILTER_NAME;
501 
502               INSERT INTO jtf_prefab_ca_fl_resps(ca_fl_resp_id,
503                                                  object_version_number,
504                                                  created_by,
505                                                  creation_date,
506                                                  last_updated_by,
507                                                  last_update_date,
508                                                  last_update_login,
509                                                  -- security_group_id,
510                                                  ca_filter_id,
511                                                  responsibility_id)
512               VALUES (l_pseudo_seq,
513                       X_OBJECT_VERSION_NUMBER,
514                       f_luby,
515                       f_ludate,
516                       f_luby,
517                       f_ludate,
518                       0,
519                       -- NULL,
520                       l_ca_filter_id,
521                       X_RESPONSIBILITY_ID);
522       end;
523 
524 end LOAD_RESP_ROW;
525 
526 procedure LOAD_LANG_ROW (
527   X_SECURITY_GROUP_ID in NUMBER,
528   X_APPLICATION_ID in NUMBER,
529   X_CA_FILTER_NAME in VARCHAR2,
530   X_LANGUAGE_CODE in VARCHAR2,
531   X_OBJECT_VERSION_NUMBER in NUMBER,
532   X_LAST_UPDATE_DATE in DATE,
533   X_OWNER in VARCHAR2,
534   X_CUSTOM_MODE in VARCHAR2
535 ) is
536    	--****** local variables ******
537     	f_luby		NUMBER;
538     	f_ludate    	DATE;
539     	db_luby		NUMBER;
540     	db_ludate	DATE;
541    	l_ca_filter_id  NUMBER;
542 
543 	cursor c is select nvl(max(CA_FL_LANG_ID), 0) from jtf_prefab_ca_fl_langs where CA_FL_LANG_ID < 10000;
544 	l_pseudo_seq	       NUMBER := NULL;
545 begin
546 
547       if (X_OWNER = 'SEED') then
548 	f_luby := 1;
549       else
550         f_luby := 0;
551       end if;
552 
553       f_ludate := X_LAST_UPDATE_DATE;
554 
555       begin
556 	  SELECT child.LAST_UPDATED_BY, child.LAST_UPDATE_DATE
557 	  INTO db_luby, db_ludate
558 	  FROM JTF_PREFAB_CA_FL_LANGS child, JTF_PREFAB_CA_FILTERS_B parent
559 	  WHERE child.ca_filter_id = parent.ca_filter_id
560           AND  parent.APPLICATION_ID = X_APPLICATION_ID
561 	  AND  parent.CA_FILTER_NAME = X_CA_FILTER_NAME
562           AND  child.LANGUAGE_CODE = X_LANGUAGE_CODE;
563 
564           /*
565 	  -- **** Entry is there, check if it's legal to update ****
566 	  IF ((X_CUSTOM_MODE = 'FORCE') OR
567               ((f_luby = 0) AND (db_luby = 1)) OR
568               ((f_luby = db_luby) AND (f_ludate > db_ludate))
569              )
570 	  then
571 	      -- **** do nothing ****
572           end if;
573            */
574       exception
575   	   when no_data_found then
576 	      -- **** generate pseudo sequence ***
577 	      OPEN c;
578 	      FETCH c INTO l_pseudo_seq;
579 	      CLOSE c;
580 
581               l_pseudo_seq := l_pseudo_seq + 1;
582 
583 	      -- **** get ca_filter_id ***
584               SELECT CA_FILTER_ID
585               INTO l_ca_filter_id
586               FROM JTF_PREFAB_CA_FILTERS_B
587               WHERE APPLICATION_ID = X_APPLICATION_ID
588               AND   CA_FILTER_NAME = X_CA_FILTER_NAME;
589 
590               INSERT INTO jtf_prefab_ca_fl_langs(ca_fl_lang_id,
591                                                  object_version_number,
592                                                  created_by,
593                                                  creation_date,
594                                                  last_updated_by,
595                                                  last_update_date,
596                                                  last_update_login,
597                                                  -- security_group_id,
598                                                  ca_filter_id,
599                                                  language_code)
600               VALUES (l_pseudo_seq,
601                       X_OBJECT_VERSION_NUMBER,
602                       f_luby,
603                       f_ludate,
604                       f_luby,
605                       f_ludate,
606                       0,
607                       -- NULL,
608                       l_ca_filter_id,
609                       X_LANGUAGE_CODE);
610       end;
611 
612 end LOAD_LANG_ROW;
613 
614 end JTF_PREFAB_CA_FILTERS_PKG;