DBA Data[Home] [Help]

PACKAGE BODY: APPS.ITA_SETUP_PARAMETERS_PKG

Source


1 package body ITA_SETUP_PARAMETERS_PKG as
2 /* $Header: itastprb.pls 120.4 2005/09/22 17:02:54 cpetriuc noship $ */
3 procedure INSERT_ROW (
4   X_ROWID in out nocopy VARCHAR2,
5   X_PARAMETER_CODE in VARCHAR2,
6   X_SELECT_CLAUSE in VARCHAR2,
7   X_FROM_CLAUSE in VARCHAR2,
8   X_WHERE_CLAUSE in VARCHAR2,
9   X_END_DATE in DATE,
10   X_MIGRATED_FLAG in VARCHAR2,
11   X_OBJECT_VERSION_NUMBER in NUMBER,
12   X_FK_COLUMN_ID in NUMBER,
13   X_CONTEXT_SEQUENCE_NUM in NUMBER,
14   X_AUDIT_ENABLED_FLAG in VARCHAR2,
15   X_FK_TABLE_ID in NUMBER,
16   X_FK_TABLE_APP_ID in NUMBER,
17   X_SETUP_GROUP_CODE in VARCHAR2,
18   X_COLUMN_ID in NUMBER,
19   X_CONTEXT_PREDICATE_FLAG in VARCHAR2,
20   X_PARAMETER_NAME in VARCHAR2,
21   X_CREATION_DATE in DATE,
22   X_CREATED_BY in NUMBER,
23   X_LAST_UPDATE_DATE in DATE,
24   X_LAST_UPDATED_BY in NUMBER,
25   X_LAST_UPDATE_LOGIN in NUMBER,
26   X_COLUMN_REFERENCE1  in VARCHAR2,
27   X_COLUMN_REFERENCE2  in VARCHAR2
28 ) is
29   cursor C is select ROWID from ITA_SETUP_PARAMETERS_B
30     where PARAMETER_CODE = X_PARAMETER_CODE
31     ;
32 begin
33   insert into ITA_SETUP_PARAMETERS_B (
34     SELECT_CLAUSE,
35     FROM_CLAUSE,
36     WHERE_CLAUSE,
37     END_DATE,
38     MIGRATED_FLAG,
39     OBJECT_VERSION_NUMBER,
40     FK_COLUMN_ID,
41     CONTEXT_SEQUENCE_NUM,
42     AUDIT_ENABLED_FLAG,
43     FK_TABLE_ID,
44     FK_TABLE_APP_ID,
45     SETUP_GROUP_CODE,
46     COLUMN_ID,
47     CONTEXT_PREDICATE_FLAG,
48     PARAMETER_CODE,
49     CREATION_DATE,
50     CREATED_BY,
51     LAST_UPDATE_DATE,
52     LAST_UPDATED_BY,
53     LAST_UPDATE_LOGIN,
54     COLUMN_REFERENCE1,
55     COLUMN_REFERENCE2
56   ) values (
57     X_SELECT_CLAUSE,
58     X_FROM_CLAUSE,
59     X_WHERE_CLAUSE,
60     X_END_DATE,
61     X_MIGRATED_FLAG,
62     X_OBJECT_VERSION_NUMBER,
63     X_FK_COLUMN_ID,
64     X_CONTEXT_SEQUENCE_NUM,
65     X_AUDIT_ENABLED_FLAG,
66     X_FK_TABLE_ID,
67     X_FK_TABLE_APP_ID,
68     X_SETUP_GROUP_CODE,
69     X_COLUMN_ID,
70     X_CONTEXT_PREDICATE_FLAG,
71     X_PARAMETER_CODE,
72     X_CREATION_DATE,
73     X_CREATED_BY,
74     X_LAST_UPDATE_DATE,
75     X_LAST_UPDATED_BY,
76     X_LAST_UPDATE_LOGIN,
77     X_COLUMN_REFERENCE1,
78     X_COLUMN_REFERENCE2
79   );
80 
81   insert into ITA_SETUP_PARAMETERS_TL (
82     PARAMETER_CODE,
83     PARAMETER_NAME,
84     CREATED_BY,
85     CREATION_DATE,
86     LAST_UPDATED_BY,
87     LAST_UPDATE_DATE,
88     LAST_UPDATE_LOGIN,
89     OBJECT_VERSION_NUMBER,
90     LANGUAGE,
91     SOURCE_LANG
92   ) select
93     X_PARAMETER_CODE,
94     X_PARAMETER_NAME,
95     X_CREATED_BY,
96     X_CREATION_DATE,
97     X_LAST_UPDATED_BY,
98     X_LAST_UPDATE_DATE,
99     X_LAST_UPDATE_LOGIN,
100     X_OBJECT_VERSION_NUMBER,
101     L.LANGUAGE_CODE,
102     userenv('LANG')
103   from FND_LANGUAGES L
104   where L.INSTALLED_FLAG in ('I', 'B')
105   and not exists
106     (select NULL
107     from ITA_SETUP_PARAMETERS_TL T
108     where T.PARAMETER_CODE = X_PARAMETER_CODE
109     and T.LANGUAGE = L.LANGUAGE_CODE);
110 
111   open c;
112   fetch c into X_ROWID;
113   if (c%notfound) then
114     close c;
115     raise no_data_found;
116   end if;
117   close c;
118 
119 end INSERT_ROW;
120 
121 procedure LOCK_ROW (
122   X_PARAMETER_CODE in VARCHAR2,
123   X_SELECT_CLAUSE in VARCHAR2,
124   X_FROM_CLAUSE in VARCHAR2,
125   X_WHERE_CLAUSE in VARCHAR2,
126   X_END_DATE in DATE,
127   X_MIGRATED_FLAG in VARCHAR2,
128   X_OBJECT_VERSION_NUMBER in NUMBER,
129   X_FK_COLUMN_ID in NUMBER,
130   X_CONTEXT_SEQUENCE_NUM in NUMBER,
131   X_AUDIT_ENABLED_FLAG in VARCHAR2,
132   X_FK_TABLE_ID in NUMBER,
133   X_FK_TABLE_APP_ID in NUMBER,
134   X_SETUP_GROUP_CODE in VARCHAR2,
135   X_COLUMN_ID in NUMBER,
136   X_CONTEXT_PREDICATE_FLAG in VARCHAR2,
137   X_PARAMETER_NAME in VARCHAR2,
138   X_COLUMN_REFERENCE1  in VARCHAR2,
139   X_COLUMN_REFERENCE2  in VARCHAR2
140 ) is
141   cursor c is select
142       SELECT_CLAUSE,
143       FROM_CLAUSE,
144       WHERE_CLAUSE,
145 	END_DATE,
146 	MIGRATED_FLAG,
147       OBJECT_VERSION_NUMBER,
148       FK_COLUMN_ID,
149       CONTEXT_SEQUENCE_NUM,
150       AUDIT_ENABLED_FLAG,
151       FK_TABLE_ID,
152       FK_TABLE_APP_ID,
153       SETUP_GROUP_CODE,
154       COLUMN_ID,
155       CONTEXT_PREDICATE_FLAG,
156       COLUMN_REFERENCE1,
157       COLUMN_REFERENCE2
158     from ITA_SETUP_PARAMETERS_B
159     where PARAMETER_CODE = X_PARAMETER_CODE
160     for update of PARAMETER_CODE nowait;
161   recinfo c%rowtype;
162 
163   cursor c1 is select
164       PARAMETER_NAME,
165       decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
166     from ITA_SETUP_PARAMETERS_TL
167     where PARAMETER_CODE = X_PARAMETER_CODE
168     and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
169     for update of PARAMETER_CODE nowait;
170 begin
171   open c;
172   fetch c into recinfo;
173   if (c%notfound) then
174     close c;
175     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
176     app_exception.raise_exception;
177   end if;
178   close c;
179   if (    ((recinfo.SELECT_CLAUSE = X_SELECT_CLAUSE)
180            OR ((recinfo.SELECT_CLAUSE is null) AND (X_SELECT_CLAUSE is null)))
181       AND ((recinfo.FROM_CLAUSE = X_FROM_CLAUSE)
182            OR ((recinfo.FROM_CLAUSE is null) AND (X_FROM_CLAUSE is null)))
183       AND ((recinfo.WHERE_CLAUSE = X_WHERE_CLAUSE)
184            OR ((recinfo.WHERE_CLAUSE is null) AND (X_WHERE_CLAUSE is null)))
185       AND ((recinfo.END_DATE = X_END_DATE)
186            OR ((recinfo.END_DATE is null) AND (X_END_DATE is null)))
187       AND ((recinfo.MIGRATED_FLAG = X_MIGRATED_FLAG)
188            OR ((recinfo.MIGRATED_FLAG is null) AND (X_MIGRATED_FLAG is null)))
189       AND ((recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
190            OR ((recinfo.OBJECT_VERSION_NUMBER is null) AND (X_OBJECT_VERSION_NUMBER is null)))
191       AND ((recinfo.FK_COLUMN_ID = X_FK_COLUMN_ID)
192            OR ((recinfo.FK_COLUMN_ID is null) AND (X_FK_COLUMN_ID is null)))
193       AND ((recinfo.CONTEXT_SEQUENCE_NUM = X_CONTEXT_SEQUENCE_NUM)
194            OR ((recinfo.CONTEXT_SEQUENCE_NUM is null) AND (X_CONTEXT_SEQUENCE_NUM is null)))
195       AND ((recinfo.AUDIT_ENABLED_FLAG = X_AUDIT_ENABLED_FLAG)
196            OR ((recinfo.AUDIT_ENABLED_FLAG is null) AND (X_AUDIT_ENABLED_FLAG is null)))
197       AND ((recinfo.FK_TABLE_ID = X_FK_TABLE_ID)
198            OR ((recinfo.FK_TABLE_ID is null) AND (X_FK_TABLE_ID is null)))
199       AND ((recinfo.FK_TABLE_APP_ID = X_FK_TABLE_APP_ID)
200            OR ((recinfo.FK_TABLE_APP_ID is null) AND (X_FK_TABLE_APP_ID is null)))
201       AND ((recinfo.SETUP_GROUP_CODE = X_SETUP_GROUP_CODE)
202            OR ((recinfo.SETUP_GROUP_CODE is null) AND (X_SETUP_GROUP_CODE is null)))
203       AND ((recinfo.COLUMN_ID = X_COLUMN_ID)
204            OR ((recinfo.COLUMN_ID is null) AND (X_COLUMN_ID is null)))
205       AND ((recinfo.CONTEXT_PREDICATE_FLAG = X_CONTEXT_PREDICATE_FLAG)
206            OR ((recinfo.CONTEXT_PREDICATE_FLAG is null) AND (X_CONTEXT_PREDICATE_FLAG is null)))
207       AND ((recinfo.COLUMN_REFERENCE1 = X_COLUMN_REFERENCE1)
208            OR ((recinfo.COLUMN_REFERENCE1 is null) AND (X_COLUMN_REFERENCE1 is null)))
209       AND ((recinfo.COLUMN_REFERENCE2 = X_COLUMN_REFERENCE2)
210            OR ((recinfo.COLUMN_REFERENCE2 is null) AND (X_COLUMN_REFERENCE2 is null)))
211 
212   ) then
213     null;
214   else
215     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
216     app_exception.raise_exception;
217   end if;
218 
219   for tlinfo in c1 loop
220     if (tlinfo.BASELANG = 'Y') then
221       if (    ((tlinfo.PARAMETER_NAME = X_PARAMETER_NAME)
222                OR ((tlinfo.PARAMETER_NAME is null) AND (X_PARAMETER_NAME is null)))
223       ) then
224         null;
225       else
226         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
227         app_exception.raise_exception;
228       end if;
229     end if;
230   end loop;
231   return;
232 end LOCK_ROW;
233 
234 procedure UPDATE_ROW (
235   X_PARAMETER_CODE in VARCHAR2,
236   X_SELECT_CLAUSE in VARCHAR2,
237   X_FROM_CLAUSE in VARCHAR2,
238   X_WHERE_CLAUSE in VARCHAR2,
239   X_END_DATE in DATE,
240   X_MIGRATED_FLAG in VARCHAR2,
241   X_OBJECT_VERSION_NUMBER in NUMBER,
242   X_FK_COLUMN_ID in NUMBER,
243   X_CONTEXT_SEQUENCE_NUM in NUMBER,
244   X_AUDIT_ENABLED_FLAG in VARCHAR2,
245   X_FK_TABLE_ID in NUMBER,
246   X_FK_TABLE_APP_ID in NUMBER,
247   X_SETUP_GROUP_CODE in VARCHAR2,
248   X_COLUMN_ID in NUMBER,
249   X_CONTEXT_PREDICATE_FLAG in VARCHAR2,
250   X_PARAMETER_NAME in VARCHAR2,
251   X_LAST_UPDATE_DATE in DATE,
252   X_LAST_UPDATED_BY in NUMBER,
253   X_LAST_UPDATE_LOGIN in NUMBER,
254   X_COLUMN_REFERENCE1  in VARCHAR2,
255   X_COLUMN_REFERENCE2  in VARCHAR2
256 ) is
257 begin
258   update ITA_SETUP_PARAMETERS_B set
259     SELECT_CLAUSE = X_SELECT_CLAUSE,
260     FROM_CLAUSE = X_FROM_CLAUSE,
261     WHERE_CLAUSE = X_WHERE_CLAUSE,
262     END_DATE = nvl(END_DATE, X_END_DATE),
263     MIGRATED_FLAG = X_MIGRATED_FLAG,
264     OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
265     FK_COLUMN_ID = X_FK_COLUMN_ID,
266     CONTEXT_SEQUENCE_NUM = X_CONTEXT_SEQUENCE_NUM,
267     AUDIT_ENABLED_FLAG = X_AUDIT_ENABLED_FLAG,
268     FK_TABLE_ID = X_FK_TABLE_ID,
269     FK_TABLE_APP_ID = X_FK_TABLE_APP_ID,
270     SETUP_GROUP_CODE = X_SETUP_GROUP_CODE,
271     COLUMN_ID = X_COLUMN_ID,
272     CONTEXT_PREDICATE_FLAG = X_CONTEXT_PREDICATE_FLAG,
273     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
274     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
275     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
276     COLUMN_REFERENCE1 = X_COLUMN_REFERENCE1,
277     COLUMN_REFERENCE2 = X_COLUMN_REFERENCE2
278   where PARAMETER_CODE = X_PARAMETER_CODE;
279 
280   if (sql%notfound) then
281     raise no_data_found;
282   end if;
283 
284   update ITA_SETUP_PARAMETERS_TL set
285     PARAMETER_NAME = X_PARAMETER_NAME,
286     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
287     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
288     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
289     SOURCE_LANG = userenv('LANG')
290   where PARAMETER_CODE = X_PARAMETER_CODE
291   and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
292 
293   if (sql%notfound) then
294     raise no_data_found;
295   end if;
296 end UPDATE_ROW;
297 
298 procedure DELETE_ROW (
299   X_PARAMETER_CODE in VARCHAR2
300 ) is
301 begin
302   delete from ITA_SETUP_PARAMETERS_TL
303   where PARAMETER_CODE = X_PARAMETER_CODE;
304 
305   if (sql%notfound) then
306     raise no_data_found;
307   end if;
308 
309   delete from ITA_SETUP_PARAMETERS_B
310   where PARAMETER_CODE = X_PARAMETER_CODE;
311 
312   if (sql%notfound) then
313     raise no_data_found;
314   end if;
315 end DELETE_ROW;
316 
317 procedure ADD_LANGUAGE
318 is
319 begin
320   delete from ITA_SETUP_PARAMETERS_TL T
321   where not exists
322     (select NULL
323     from ITA_SETUP_PARAMETERS_B B
324     where B.PARAMETER_CODE = T.PARAMETER_CODE
325     );
326 
327   update ITA_SETUP_PARAMETERS_TL T set (
328       PARAMETER_NAME
329     ) = (select
330       B.PARAMETER_NAME
331     from ITA_SETUP_PARAMETERS_TL B
332     where B.PARAMETER_CODE = T.PARAMETER_CODE
333     and B.LANGUAGE = T.SOURCE_LANG)
334   where (
335       T.PARAMETER_CODE,
336       T.LANGUAGE
337   ) in (select
338       SUBT.PARAMETER_CODE,
339       SUBT.LANGUAGE
340     from ITA_SETUP_PARAMETERS_TL SUBB, ITA_SETUP_PARAMETERS_TL SUBT
341     where SUBB.PARAMETER_CODE = SUBT.PARAMETER_CODE
342     and SUBB.LANGUAGE = SUBT.SOURCE_LANG
343     and (SUBB.PARAMETER_NAME <> SUBT.PARAMETER_NAME
344       or (SUBB.PARAMETER_NAME is null and SUBT.PARAMETER_NAME is not null)
345       or (SUBB.PARAMETER_NAME is not null and SUBT.PARAMETER_NAME is null)
346   ));
347 
348   insert into ITA_SETUP_PARAMETERS_TL (
349     PARAMETER_CODE,
350     PARAMETER_NAME,
351     CREATED_BY,
352     CREATION_DATE,
353     LAST_UPDATED_BY,
354     LAST_UPDATE_DATE,
355     LAST_UPDATE_LOGIN,
356     OBJECT_VERSION_NUMBER,
357     LANGUAGE,
358     SOURCE_LANG
359   ) select /*+ ORDERED */
360     B.PARAMETER_CODE,
361     B.PARAMETER_NAME,
362     B.CREATED_BY,
363     B.CREATION_DATE,
364     B.LAST_UPDATED_BY,
365     B.LAST_UPDATE_DATE,
366     B.LAST_UPDATE_LOGIN,
367     B.OBJECT_VERSION_NUMBER,
368     L.LANGUAGE_CODE,
369     B.SOURCE_LANG
370   from ITA_SETUP_PARAMETERS_TL B, FND_LANGUAGES L
371   where L.INSTALLED_FLAG in ('I', 'B')
372   and B.LANGUAGE = userenv('LANG')
373   and not exists
374     (select NULL
375     from ITA_SETUP_PARAMETERS_TL T
376     where T.PARAMETER_CODE = B.PARAMETER_CODE
377     and T.LANGUAGE = L.LANGUAGE_CODE);
378 end ADD_LANGUAGE;
379 
380 
381 procedure LOAD_ROW (
382   X_PARAMETER_CODE in VARCHAR2,
383   X_SELECT_CLAUSE in VARCHAR2,
384   X_FROM_CLAUSE in VARCHAR2,
385   X_WHERE_CLAUSE in VARCHAR2,
386   X_END_DATE in DATE,
387   X_MIGRATED_FLAG in VARCHAR2,
388   X_OBJECT_VERSION_NUMBER in NUMBER,
389   X_CONTEXT_SEQUENCE_NUM in NUMBER,
390   X_AUDIT_ENABLED_FLAG in VARCHAR2,
391   X_SETUP_GROUP_CODE in VARCHAR2,
395   X_LAST_UPDATE_DATE in VARCHAR2,
392   X_COLUMN_NAME in VARCHAR2,
393   X_CONTEXT_PREDICATE_FLAG in VARCHAR2,
394   X_PARAMETER_NAME in VARCHAR2,
396   X_OWNER in VARCHAR2,
397   X_CUSTOM_MODE IN VARCHAR2,
398   X_COLUMN_REFERENCE1  in VARCHAR2,
399   X_COLUMN_REFERENCE2  in VARCHAR2) is
400 
401       view_appid number;
402       view_table_id number;
403       view_column_id number;
404       row_id varchar2(64);
405       f_luby    number;  -- entity owner in file
406       f_ludate  date;    -- entity update date in file
407       db_luby   number;  -- entity owner in db
408       db_ludate date;    -- entity update date in db
409 			flag varchar2(1);		 -- flag will determine if the column is part of schema or not
410   begin
411 		flag := 'Y';
412       -- translate values to IDs
413 		select table_app_id, table_id
414 		into view_appid, view_table_id
415 		from ITA_SETUP_GROUPS_B
416 		where SETUP_GROUP_CODE = X_SETUP_GROUP_CODE;
417 
418 		--insert into dummy_log values (391,'flag val bfr select column_id ' || flag || ' :: column name :: ' || X_column_NAME);
419 
420 		begin
421 			select column_id
422 			into view_column_id
423 			from fnd_columns
424 			where APPLICATION_id = view_appid and
425 			table_id = view_table_id and
426 			column_name = X_column_NAME;
427 			flag := 'Y' ;
428 		exception
429 		when no_data_found then
430 			flag := 'N' ; -- flag='N' means its not part of schema so the entry for this parameter should not be created
431 		end;
432 
433 
434 		-- Translate owner to file_last_updated_by
435 		f_luby := fnd_load_util.owner_id(X_OWNER);
436 		-- Translate char last_update_date to date
437 		f_ludate := nvl(to_date(X_LAST_UPDATE_DATE, 'YYYY/MM/DD'), sysdate);
438 
439 		begin
440 
441 
442 			select LAST_UPDATED_BY, LAST_UPDATE_DATE
443 			into db_luby, db_ludate
444 			from ITA_SETUP_PARAMETERS_B
445 			where parameter_code = X_parameter_code;
446 
447 
448 
449 
450 		-- Test for customization and version
451 			if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
452 									db_ludate, x_CUSTOM_MODE)) then
453 
454 				-- Update existing row
455 				ITA_SETUP_PARAMETERS_PKG.UPDATE_ROW(
456 					X_PARAMETER_CODE => x_PARAMETER_CODE,
457 					X_SELECT_CLAUSE => x_SELECT_CLAUSE,
458 					X_FROM_CLAUSE => x_FROM_CLAUSE,
459 					X_WHERE_CLAUSE => x_WHERE_CLAUSE,
460 					X_END_DATE => x_END_DATE,
461 					X_MIGRATED_FLAG => x_MIGRATED_FLAG,
462 					X_OBJECT_VERSION_NUMBER => x_OBJECT_VERSION_NUMBER,
463 					X_FK_COLUMN_ID => null,
464 					X_CONTEXT_SEQUENCE_NUM => x_CONTEXT_SEQUENCE_NUM,
465 					X_AUDIT_ENABLED_FLAG => x_AUDIT_ENABLED_FLAG,
466 					X_FK_TABLE_ID => null,
467 					X_FK_TABLE_APP_ID => null,
468 					X_SETUP_GROUP_CODE => x_SETUP_GROUP_CODE,
469 					X_COLUMN_ID => view_COLUMN_ID,
470 					X_CONTEXT_PREDICATE_FLAG => x_CONTEXT_PREDICATE_FLAG,
471 					X_PARAMETER_NAME => x_PARAMETER_NAME,
472 					X_LAST_UPDATE_DATE => f_ludate,
473 					X_LAST_UPDATED_BY => f_luby,
474 					X_LAST_UPDATE_LOGIN => 0,
475  				        X_COLUMN_REFERENCE1  => X_COLUMN_REFERENCE1,
476 					X_COLUMN_REFERENCE2  => X_COLUMN_REFERENCE2  );
477 			end if;
478 					exception
479 			when no_data_found then
480 				-- Record doesn't exist - insert in all cases
481  			  -- Inserting records into the ITA_SETUP_PARAMETERS_B and ITA_SETUP_PARAMETERS_TL
482 				-- in and only if the parameter is part of the schema.
483 					if flag = 'Y' then
484 						ITA_SETUP_PARAMETERS_PKG.INSERT_ROW(
485 							X_ROWID => ROW_ID,
486 							X_PARAMETER_CODE => x_PARAMETER_CODE,
487 							X_SELECT_CLAUSE => x_SELECT_CLAUSE,
488 							X_FROM_CLAUSE => x_FROM_CLAUSE,
489 							X_WHERE_CLAUSE => x_WHERE_CLAUSE,
490 							X_END_DATE => x_END_DATE,
491 							X_MIGRATED_FLAG => x_MIGRATED_FLAG,
492 							X_OBJECT_VERSION_NUMBER => x_OBJECT_VERSION_NUMBER,
493 							X_FK_COLUMN_ID => null,
494 							X_CONTEXT_SEQUENCE_NUM => x_CONTEXT_SEQUENCE_NUM,
495 							X_AUDIT_ENABLED_FLAG => x_AUDIT_ENABLED_FLAG,
496 							X_FK_TABLE_ID => null,
497 							X_FK_TABLE_APP_ID => null,
498 							X_SETUP_GROUP_CODE => x_SETUP_GROUP_CODE,
499 							X_COLUMN_ID => view_COLUMN_ID,
500 							X_CONTEXT_PREDICATE_FLAG => x_CONTEXT_PREDICATE_FLAG,
501 							X_PARAMETER_NAME => x_PARAMETER_NAME,
502 							x_creation_date => f_ludate,
503 							x_created_by => f_luby,
504 							X_LAST_UPDATE_DATE => f_ludate,
505 							X_LAST_UPDATED_BY => f_luby,
506 							X_LAST_UPDATE_LOGIN => 0,
507 							X_COLUMN_REFERENCE1  => X_COLUMN_REFERENCE1,
508 							X_COLUMN_REFERENCE2  => X_COLUMN_REFERENCE2
509 							);
510 					end if;
511 
512 		end;
513 end LOAD_ROW;
514 
515 procedure TRANSLATE_ROW (
516   X_PARAMETER_CODE in VARCHAR2,
517   X_SELECT_CLAUSE in VARCHAR2,
518   X_FROM_CLAUSE in VARCHAR2,
519   X_WHERE_CLAUSE in VARCHAR2,
520   X_END_DATE in DATE,
521   X_MIGRATED_FLAG in VARCHAR2,
522   X_OBJECT_VERSION_NUMBER in NUMBER,
523   X_CONTEXT_SEQUENCE_NUM in NUMBER,
524   X_AUDIT_ENABLED_FLAG in VARCHAR2,
525   X_SETUP_GROUP_CODE in VARCHAR2,
526   X_COLUMN_NAME in VARCHAR2,
527   X_CONTEXT_PREDICATE_FLAG in VARCHAR2,
528   X_PARAMETER_NAME in VARCHAR2,
529   X_LAST_UPDATE_DATE in VARCHAR2,
530   X_OWNER in VARCHAR2,
531   X_CUSTOM_MODE IN VARCHAR2,
532   X_COLUMN_REFERENCE1  in VARCHAR2,
533   X_COLUMN_REFERENCE2  in VARCHAR2
534   ) is
535 
536 
537       view_appid number;
538       view_table_id number;
539       view_column_id 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   begin
546 
547       -- Translate owner to file_last_updated_by
548       f_luby := fnd_load_util.owner_id(X_OWNER);
549 
550       -- Translate char last_update_date to date
551       f_ludate := nvl(to_date(X_LAST_UPDATE_DATE, 'YYYY/MM/DD'), sysdate);
552 
553       begin
554 	select LAST_UPDATED_BY, LAST_UPDATE_DATE
555 	into db_luby, db_ludate
556 	from ITA_SETUP_PARAMETERS_TL
557 	where PARAMETER_CODE = X_PARAMETER_CODE
558           and LANGUAGE = userenv('LANG');
559 
560         -- Test for customization and version
561 	if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
562 				      db_ludate, x_CUSTOM_MODE)) then
563 	   -- Update translations for this language
564 	   update ITA_SETUP_PARAMETERS_TL set
565 	     PARAMETER_NAME = decode(x_PARAMETER_NAME,
566 			      fnd_load_util.null_value, null, -- Real null
567 			      null, x_PARAMETER_NAME,       -- No change
568 			      x_PARAMETER_NAME),
569 	     LAST_UPDATE_DATE = f_ludate,
570 	     LAST_UPDATED_BY = f_luby,
571 	     LAST_UPDATE_LOGIN = 0,
572 	     SOURCE_LANG = userenv('LANG')
573 	   where PARAMETER_CODE = X_PARAMETER_CODE
574 	     and LANGUAGE = userenv('LANG');
575 	 end if;
576       exception
577 	when no_data_found then
578 	  -- Do not insert missing translations, skip this row
579 	  null;
580       end;
581 
582 end TRANSLATE_ROW;
583 
584 end ITA_SETUP_PARAMETERS_PKG;