[Home] [Help]
PACKAGE BODY: APPS.FND_LOOKUP_TYPES_PKG
Source
1 package body FND_LOOKUP_TYPES_PKG as
2 /* $Header: AFLVMLTB.pls 120.2 2007/10/05 18:49:52 dggriffi ship $ */
3
4
5 X_LANG VARCHAR2(2);
6
7 procedure INSERT_ROW (
8 X_ROWID in out nocopy VARCHAR2,
9 X_LOOKUP_TYPE in VARCHAR2,
10 X_SECURITY_GROUP_ID in NUMBER,
11 X_VIEW_APPLICATION_ID in NUMBER,
12 X_APPLICATION_ID in NUMBER,
13 X_CUSTOMIZATION_LEVEL in VARCHAR2,
14 X_MEANING in VARCHAR2,
15 X_DESCRIPTION in VARCHAR2,
16 X_CREATION_DATE in DATE,
17 X_CREATED_BY in NUMBER,
18 X_LAST_UPDATE_DATE in DATE,
19 X_LAST_UPDATED_BY in NUMBER,
20 X_LAST_UPDATE_LOGIN in NUMBER
21 ) is
22 cursor C is select ROWID from FND_LOOKUP_TYPES
23 where LOOKUP_TYPE = X_LOOKUP_TYPE
24 and SECURITY_GROUP_ID = X_SECURITY_GROUP_ID
25 and VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID
26 ;
27
28
29 begin
30 insert into FND_LOOKUP_TYPES (
31 APPLICATION_ID,
32 LOOKUP_TYPE,
33 CUSTOMIZATION_LEVEL,
34 SECURITY_GROUP_ID,
35 VIEW_APPLICATION_ID,
36 CREATION_DATE,
37 CREATED_BY,
38 LAST_UPDATE_DATE,
39 LAST_UPDATED_BY,
40 LAST_UPDATE_LOGIN
41 ) values (
42 X_APPLICATION_ID,
43 X_LOOKUP_TYPE,
44 X_CUSTOMIZATION_LEVEL,
45 X_SECURITY_GROUP_ID,
46 X_VIEW_APPLICATION_ID,
47 X_CREATION_DATE,
48 X_CREATED_BY,
49 X_LAST_UPDATE_DATE,
50 X_LAST_UPDATED_BY,
51 X_LAST_UPDATE_LOGIN
52 );
53
54 insert into FND_LOOKUP_TYPES_TL (
55 LOOKUP_TYPE,
56 SECURITY_GROUP_ID,
57 VIEW_APPLICATION_ID,
58 MEANING,
59 DESCRIPTION,
60 CREATED_BY,
61 CREATION_DATE,
62 LAST_UPDATED_BY,
63 LAST_UPDATE_DATE,
64 LAST_UPDATE_LOGIN,
65 LANGUAGE,
66 SOURCE_LANG
67 ) select
68 X_LOOKUP_TYPE,
69 X_SECURITY_GROUP_ID,
70 X_VIEW_APPLICATION_ID,
71 X_MEANING,
72 X_DESCRIPTION,
73 X_CREATED_BY,
74 X_CREATION_DATE,
75 X_LAST_UPDATED_BY,
76 X_LAST_UPDATE_DATE,
77 X_LAST_UPDATE_LOGIN,
78 L.LANGUAGE_CODE,
79 userenv('LANG')
80 from FND_LANGUAGES L
81 where L.INSTALLED_FLAG in ('I', 'B')
82 and not exists
83 (select NULL
84 from FND_LOOKUP_TYPES_TL T
85 where T.LOOKUP_TYPE = X_LOOKUP_TYPE
86 and T.SECURITY_GROUP_ID = X_SECURITY_GROUP_ID
87 and T.VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID
88 and T.LANGUAGE = L.LANGUAGE_CODE);
89
90 open c;
91 fetch c into X_ROWID;
92 if (c%notfound) then
93 close c;
94 raise no_data_found;
95 end if;
96 close c;
97
98
99 begin
100
101
102 -- Calling WF_EVENT.RAISE per bug 3209508
103 -- Business Events need to be raised with any insert to the fnd lookups
104 -- Bug:6113227, added Lang Code parameter to key being used to raise the
105 -- workflow event.
106
107 select userenv('LANG')
108 into X_LANG
109 from dual;
110
111 wf_event.raise(p_event_name => 'oracle.apps.fnd.lookup.type.insert',
112 p_event_key => X_LOOKUP_TYPE||':'||X_VIEW_APPLICATION_ID||
113 ':'||X_SECURITY_GROUP_ID||':'||X_LANG,
114 p_event_data => NULL,
115 p_parameters => NULL,
116 p_send_date => Sysdate);
117 exception
118 when others then
119 null;
120 end;
121
122 end INSERT_ROW;
123
124 /* Overloaded */
125 procedure TRANSLATE_ROW (
126 X_LOOKUP_TYPE in VARCHAR2,
127 X_SECURITY_GROUP_ID in NUMBER,
128 X_VIEW_APPLICATION_ID in NUMBER,
129 X_OWNER in VARCHAR2,
130 X_MEANING in VARCHAR2,
131 X_DESCRIPTION in VARCHAR2) is
132 begin
133 TRANSLATE_ROW (
134 X_LOOKUP_TYPE => X_LOOKUP_TYPE,
135 X_SECURITY_GROUP_ID => X_SECURITY_GROUP_ID,
136 X_VIEW_APPLICATION_ID => X_VIEW_APPLICATION_ID,
137 X_OWNER => X_OWNER,
138 X_MEANING => X_MEANING,
139 X_DESCRIPTION => X_DESCRIPTION,
140 X_LAST_UPDATE_DATE => null,
141 X_CUSTOM_MODE => null);
142 end TRANSLATE_ROW;
143
144 /* Overloaded */
145 procedure TRANSLATE_ROW (
146 X_LOOKUP_TYPE in VARCHAR2,
147 X_SECURITY_GROUP_ID in NUMBER,
148 X_VIEW_APPLICATION_ID in NUMBER,
149 X_OWNER in VARCHAR2,
150 X_MEANING in VARCHAR2,
151 X_DESCRIPTION in VARCHAR2,
152 X_LAST_UPDATE_DATE in VARCHAR2,
153 X_CUSTOM_MODE in VARCHAR2)
154 is
155 f_luby number; -- entity owner in file
156 f_ludate date; -- entity update date in file
157 db_luby number; -- entity owner in db
158 db_ludate date; -- entity update date in db
159
160
161 begin
162 -- Translate owner to file_last_updated_by
163 f_luby := fnd_load_util.owner_id(x_owner);
164
165 -- Translate char last_update_date to date
166 f_ludate := nvl(to_date(X_LAST_UPDATE_DATE, 'YYYY/MM/DD'), sysdate);
167
168 select last_updated_by, last_update_date
169 into db_luby, db_ludate
170 from fnd_lookup_types_tl
171 where lookup_type = X_LOOKUP_TYPE
172 and security_group_id = X_SECURITY_GROUP_ID
173 and view_application_id = X_VIEW_APPLICATION_ID
174 and language = userenv('LANG');
175
176 if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
177 db_ludate, X_CUSTOM_MODE)) then
178 update fnd_lookup_types_tl set
179 meaning = nvl(X_MEANING, meaning),
180 description = nvl(X_DESCRIPTION, description),
181 last_update_date = f_ludate,
182 last_updated_by = f_luby,
183 last_update_login = 0,
184 source_lang = userenv('LANG')
185 where lookup_type = X_LOOKUP_TYPE
186 and security_group_id = X_SECURITY_GROUP_ID
187 and view_application_id = X_VIEW_APPLICATION_ID
188 and userenv('LANG') in (language, source_lang);
189
190 begin
191 -- Calling WF_EVENT.RAISE per bug 3209508
192 -- Business Events need to be raised with any updates to the fnd lookups
193 -- Bug:6113227, added Lang Code parameter to key being used to raise the
194 -- workflow event.
195
196 select userenv('LANG')
197 into X_LANG
198 from dual;
199
200 wf_event.raise(p_event_name => 'oracle.apps.fnd.lookup.type.update',
201 p_event_key => X_LOOKUP_TYPE||':'||X_VIEW_APPLICATION_ID||
202 ':'||X_SECURITY_GROUP_ID||':'||X_LANG,
203 p_event_data => NULL,
204 p_parameters => NULL,
205 p_send_date => Sysdate);
206 exception
207 when others then
208 null;
209 end;
210
211 end if;
212 end TRANSLATE_ROW;
213
214 procedure LOCK_ROW (
215 X_LOOKUP_TYPE in VARCHAR2,
216 X_SECURITY_GROUP_ID in NUMBER,
217 X_VIEW_APPLICATION_ID in NUMBER,
218 X_APPLICATION_ID in NUMBER,
219 X_CUSTOMIZATION_LEVEL in VARCHAR2,
220 X_MEANING in VARCHAR2,
221 X_DESCRIPTION in VARCHAR2
222 ) is
223 cursor c is select
224 APPLICATION_ID,
225 CUSTOMIZATION_LEVEL
226 from FND_LOOKUP_TYPES
227 where LOOKUP_TYPE = X_LOOKUP_TYPE
228 and SECURITY_GROUP_ID = X_SECURITY_GROUP_ID
229 and VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID
230 for update of LOOKUP_TYPE nowait;
231 recinfo c%rowtype;
232
233 cursor c1 is select
234 MEANING,
235 DESCRIPTION,
236 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
237 from FND_LOOKUP_TYPES_TL
238 where LOOKUP_TYPE = X_LOOKUP_TYPE
239 and SECURITY_GROUP_ID = X_SECURITY_GROUP_ID
240 and VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID
241 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
242 for update of LOOKUP_TYPE nowait;
243
244 begin
245 open c;
246 fetch c into recinfo;
247 if (c%notfound) then
248 close c;
249 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
250 app_exception.raise_exception;
251 end if;
252 close c;
253 if ( (recinfo.APPLICATION_ID = X_APPLICATION_ID)
254 AND (recinfo.CUSTOMIZATION_LEVEL = X_CUSTOMIZATION_LEVEL)
255 ) then
256 null;
257 else
258 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
259 app_exception.raise_exception;
260 end if;
261
262 for tlinfo in c1 loop
263 if (tlinfo.BASELANG = 'Y') then
264 if ( (tlinfo.MEANING = X_MEANING)
265 AND ((tlinfo.DESCRIPTION = X_DESCRIPTION)
266 OR ((tlinfo.DESCRIPTION is null) AND (X_DESCRIPTION is null)))
267 ) then
268 null;
269 else
270 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
271 app_exception.raise_exception;
272 end if;
273 end if;
274 end loop;
275 return;
276 end LOCK_ROW;
277
278 procedure UPDATE_ROW (
279 X_LOOKUP_TYPE in VARCHAR2,
280 X_SECURITY_GROUP_ID in NUMBER,
281 X_VIEW_APPLICATION_ID in NUMBER,
282 X_APPLICATION_ID in NUMBER,
283 X_CUSTOMIZATION_LEVEL in VARCHAR2,
284 X_MEANING in VARCHAR2,
285 X_DESCRIPTION in VARCHAR2,
286 X_LAST_UPDATE_DATE in DATE,
287 X_LAST_UPDATED_BY in NUMBER,
288 X_LAST_UPDATE_LOGIN in NUMBER
289 ) is
290
291
292 begin
293 update FND_LOOKUP_TYPES set
294 APPLICATION_ID = X_APPLICATION_ID,
295 CUSTOMIZATION_LEVEL = X_CUSTOMIZATION_LEVEL,
296 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
297 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
298 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
299 where LOOKUP_TYPE = X_LOOKUP_TYPE
300 and SECURITY_GROUP_ID = X_SECURITY_GROUP_ID
301 and VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID;
302
303 if (sql%notfound) then
304 raise no_data_found;
305 end if;
306
307 update FND_LOOKUP_TYPES_TL set
308 MEANING = X_MEANING,
309 DESCRIPTION = X_DESCRIPTION,
310 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
311 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
312 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
313 SOURCE_LANG = userenv('LANG')
314 where LOOKUP_TYPE = X_LOOKUP_TYPE
315 and SECURITY_GROUP_ID = X_SECURITY_GROUP_ID
316 and VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID
317 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
318
319 if (sql%notfound) then
320 raise no_data_found;
321 end if;
322
323 begin
324 -- Calling WF_EVENT.RAISE per bug 3209508
325 -- Business Events need to be raised with any updates to the fnd lookups
326 -- Bug:6113227, added Lang Code parameter to key being used to raise the
327 -- workflow event.
328 select userenv('LANG')
329 into X_LANG
330 from dual;
331
332 wf_event.raise(p_event_name => 'oracle.apps.fnd.lookup.type.update',
333 p_event_key => X_LOOKUP_TYPE||':'||X_VIEW_APPLICATION_ID||
334 ':'||X_SECURITY_GROUP_ID||':'||X_LANG,
335 p_event_data => NULL,
336 p_parameters => NULL,
337 p_send_date => Sysdate);
338 exception
339 when others then
340 null;
341 end;
342
343 end UPDATE_ROW;
344
345 procedure DELETE_ROW (
346 X_LOOKUP_TYPE in VARCHAR2,
347 X_SECURITY_GROUP_ID in NUMBER,
348 X_VIEW_APPLICATION_ID in NUMBER
349 ) is
350 begin
351 delete from FND_LOOKUP_TYPES_TL
352 where LOOKUP_TYPE = X_LOOKUP_TYPE
353 and SECURITY_GROUP_ID = X_SECURITY_GROUP_ID
354 and VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID;
355
356 if (sql%notfound) then
357 raise no_data_found;
358 end if;
359
360 delete from FND_LOOKUP_TYPES
361 where LOOKUP_TYPE = X_LOOKUP_TYPE
362 and SECURITY_GROUP_ID = X_SECURITY_GROUP_ID
363 and VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID;
364
365 if (sql%notfound) then
366 raise no_data_found;
367 end if;
368
369 begin
370 -- Calling WF_EVENT.RAISE per bug 3209508
371 -- Business Events need to be raised with any insert to the fnd lookups
372 -- Bug:6113227, added Lang Code parameter to key being used to raise the
373 -- workflow event.
374
375 select userenv('LANG')
376 into X_LANG
377 from dual;
378
379 wf_event.raise(p_event_name => 'oracle.apps.fnd.lookup.type.delete',
380 p_event_key => X_LOOKUP_TYPE||':'||X_VIEW_APPLICATION_ID||
381 ':'||X_SECURITY_GROUP_ID||':'||X_LANG,
382 p_event_data => NULL,
383 p_parameters => NULL,
384 p_send_date => Sysdate);
385 exception
386 when others then
387 null;
388 end;
389 end DELETE_ROW;
390
391 procedure ADD_LANGUAGE
392 is
393 begin
394 /* Mar/19/03 requested by Ric Ginsberg */
395 /* The following delete and update statements are commented out */
396 /* as a quick workaround to fix the time-consuming table handler issue */
397 /* Eventually we'll need to turn them into a separate fix_language procedure */
398 /*
399
400 delete from FND_LOOKUP_TYPES_TL T
401 where not exists
402 (select NULL
403 from FND_LOOKUP_TYPES B
404 where B.LOOKUP_TYPE = T.LOOKUP_TYPE
405 and B.SECURITY_GROUP_ID = T.SECURITY_GROUP_ID
406 and B.VIEW_APPLICATION_ID = T.VIEW_APPLICATION_ID
407 );
408
409 update FND_LOOKUP_TYPES_TL T set (
410 MEANING,
411 DESCRIPTION
412 ) = (select
413 B.MEANING,
414 B.DESCRIPTION
415 from FND_LOOKUP_TYPES_TL B
416 where B.LOOKUP_TYPE = T.LOOKUP_TYPE
417 and B.SECURITY_GROUP_ID = T.SECURITY_GROUP_ID
418 and B.VIEW_APPLICATION_ID = T.VIEW_APPLICATION_ID
419 and B.LANGUAGE = T.SOURCE_LANG)
420 where (
421 T.LOOKUP_TYPE,
422 T.SECURITY_GROUP_ID,
423 T.VIEW_APPLICATION_ID,
424 T.LANGUAGE
425 ) in (select
426 SUBT.LOOKUP_TYPE,
427 SUBT.SECURITY_GROUP_ID,
428 SUBT.VIEW_APPLICATION_ID,
429 SUBT.LANGUAGE
430 from FND_LOOKUP_TYPES_TL SUBB, FND_LOOKUP_TYPES_TL SUBT
431 where SUBB.LOOKUP_TYPE = SUBT.LOOKUP_TYPE
432 and SUBB.SECURITY_GROUP_ID = SUBT.SECURITY_GROUP_ID
433 and SUBB.VIEW_APPLICATION_ID = SUBT.VIEW_APPLICATION_ID
434 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
435 and (SUBB.MEANING <> SUBT.MEANING
436 or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
437 or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
438 or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
439 ))
440 -- ***** BEGIN NEW CLAUSE FOR UPDATE *****
441 and not exists
442 (select null
443 from FND_LOOKUP_TYPES_TL DUP
444 where DUP.VIEW_APPLICATION_ID = T.VIEW_APPLICATION_ID
445 and DUP.SECURITY_GROUP_ID = T.SECURITY_GROUP_ID
446 and DUP.LANGUAGE = T.LANGUAGE
447 and (DUP.MEANING) =
448 (select
449 B.MEANING
450 from FND_LOOKUP_TYPES_TL B
451 where B.LOOKUP_TYPE = T.LOOKUP_TYPE
452 and B.SECURITY_GROUP_ID = T.SECURITY_GROUP_ID
453 and B.VIEW_APPLICATION_ID = T.VIEW_APPLICATION_ID
454 and B.LANGUAGE = T.SOURCE_LANG));
455 -- ***** END NEW CLAUSE FOR UPDATE *****
456
457 -- ***** NEW CODE FOR INSERT HERE *****
458 loop
459 update FND_LOOKUP_TYPES_TL set
460 MEANING = '@'||MEANING
461 where (
462 MEANING,
463 VIEW_APPLICATION_ID,
464 SECURITY_GROUP_ID,
465 LANGUAGE) in
469 B.SECURITY_GROUP_ID,
466 (select
467 B.MEANING,
468 B.VIEW_APPLICATION_ID,
470 L.LANGUAGE_CODE
471 from FND_LOOKUP_TYPES_TL B, FND_LANGUAGES L
472 where L.INSTALLED_FLAG in ('I', 'B')
473 and B.LANGUAGE = userenv('LANG')
474 and not exists
475 (select NULL
476 from FND_LOOKUP_TYPES_TL T
477 where T.LOOKUP_TYPE = B.LOOKUP_TYPE
478 and T.SECURITY_GROUP_ID = B.SECURITY_GROUP_ID
479 and T.VIEW_APPLICATION_ID = B.VIEW_APPLICATION_ID
480 and T.LANGUAGE = L.LANGUAGE_CODE));
481
482 exit when SQL%ROWCOUNT = 0;
483 end loop;
484 -- ***** END CODE FOR INSERT HERE *****
485 */
486
487 insert into FND_LOOKUP_TYPES_TL (
488 LOOKUP_TYPE,
489 SECURITY_GROUP_ID,
490 VIEW_APPLICATION_ID,
491 MEANING,
492 DESCRIPTION,
493 CREATED_BY,
494 CREATION_DATE,
495 LAST_UPDATED_BY,
496 LAST_UPDATE_DATE,
497 LAST_UPDATE_LOGIN,
498 LANGUAGE,
499 SOURCE_LANG
500 ) select
501 B.LOOKUP_TYPE,
502 B.SECURITY_GROUP_ID,
503 B.VIEW_APPLICATION_ID,
504 B.MEANING,
505 B.DESCRIPTION,
506 B.CREATED_BY,
507 B.CREATION_DATE,
508 B.LAST_UPDATED_BY,
509 B.LAST_UPDATE_DATE,
510 B.LAST_UPDATE_LOGIN,
511 L.LANGUAGE_CODE,
512 B.SOURCE_LANG
513 from FND_LOOKUP_TYPES_TL B, FND_LANGUAGES L
514 where L.INSTALLED_FLAG in ('I', 'B')
515 and B.LANGUAGE = userenv('LANG')
516 and not exists
517 (select NULL
518 from FND_LOOKUP_TYPES_TL T
519 where T.LOOKUP_TYPE = B.LOOKUP_TYPE
520 and T.SECURITY_GROUP_ID = B.SECURITY_GROUP_ID
521 and T.VIEW_APPLICATION_ID = B.VIEW_APPLICATION_ID
522 and T.LANGUAGE = L.LANGUAGE_CODE);
523 end ADD_LANGUAGE;
524
525 procedure LOAD_ROW (
526 X_VIEW_APPSNAME IN VARCHAR2,
527 X_LOOKUP_TYPE IN VARCHAR2,
528 X_APPLICATION_SHORT_NAME IN VARCHAR2,
529 X_CUSTOMIZATION_LEVEL IN VARCHAR2,
530 X_OWNER IN VARCHAR2,
531 X_LAST_UPDATE_DATE IN VARCHAR2,
532 X_MEANING IN VARCHAR2,
533 X_DESCRIPTION IN VARCHAR2,
534 X_SECURITY_GROUP IN VARCHAR2,
535 X_CUSTOM_MODE IN VARCHAR2)
536 is
537 secgrp_id number;
538 view_appid number;
539 owner_appid number;
540 row_id varchar2(64);
541 f_luby number; -- entity owner in file
542 f_ludate date; -- entity update date in file
543 db_luby number; -- entity owner in db
544 db_ludate date; -- entity update date in db
545
546 cursor secgrp_curs is
547 select SG.SECURITY_GROUP_ID
548 from FND_LOOKUP_TYPES LT, FND_SECURITY_GROUPS SG
549 where LT.LOOKUP_TYPE = x_lookup_type
550 and LT.VIEW_APPLICATION_ID = view_appid
551 and LT.SECURITY_GROUP_ID = SG.SECURITY_GROUP_ID
552 and SG.SECURITY_GROUP_KEY like nvl(x_security_group, 'STANDARD');
553
554 begin
555
556 select APPLICATION_ID
557 into view_appid
558 from FND_APPLICATION
559 where APPLICATION_SHORT_NAME = x_view_appsname;
560
561 select APPLICATION_ID
562 into owner_appid
563 from FND_APPLICATION
564 where APPLICATION_SHORT_NAME = x_application_short_name;
565
566 -- Translate owner to file_last_updated_by
567 f_luby := fnd_load_util.owner_id(x_owner);
568
569 -- Translate char last_update_date to date
570 f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
571
572 open secgrp_curs;
573 fetch secgrp_curs into secgrp_id;
574
575 if (secgrp_curs%notfound) then
576 -- No matching rows in any security group.
577 -- Insert a single row in requested security group
578 select SECURITY_GROUP_ID
579 into secgrp_id
580 from FND_SECURITY_GROUPS
581 where SECURITY_GROUP_KEY = nvl(x_security_group, 'STANDARD');
582
583 Fnd_Lookup_Types_Pkg.Insert_Row(
584 x_rowid => row_id,
585 x_lookup_type => x_lookup_type,
586 x_security_group_id => secgrp_id,
587 x_view_application_id => view_appid,
588 x_application_id => owner_appid,
589 x_customization_level => x_customization_level,
590 x_meaning => x_meaning,
591 x_description => x_description,
592 x_creation_date => f_ludate,
593 x_created_by => f_luby,
594 x_last_update_date => f_ludate,
595 x_last_updated_by => f_luby,
596 x_last_update_login => 0);
597 else
598 loop
599 select LAST_UPDATED_BY, LAST_UPDATE_DATE
600 into db_luby, db_ludate
601 from FND_LOOKUP_TYPES_VL
602 where LOOKUP_TYPE = x_lookup_type
603 and SECURITY_GROUP_ID = secgrp_id
604 and VIEW_APPLICATION_ID = view_appid;
605
606 if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
607 db_ludate, X_CUSTOM_MODE)) then
608 -- Update row in all matching security groups.
609 Fnd_Lookup_Types_Pkg.Update_Row(
613 x_application_id => owner_appid,
610 x_lookup_type => x_lookup_type,
611 x_security_group_id => secgrp_id,
612 x_view_application_id => view_appid,
614 x_customization_level => x_customization_level,
615 x_meaning => x_meaning,
616 x_description => x_description,
617 x_last_update_date => f_ludate,
618 x_last_updated_by => f_luby,
619 x_last_update_login => 0);
620 end if;
621
622 fetch secgrp_curs into secgrp_id;
623 exit when secgrp_curs%notfound;
624 end loop;
625 end if;
626
627 close secgrp_curs;
628
629 end LOAD_ROW;
630
631 end FND_LOOKUP_TYPES_PKG;