48: X_LAST_UPDATED_BY,
49: X_LAST_UPDATE_LOGIN
50: );
51:
52: insert into FEM_CAL_PERIODS_TL (
53: DIMENSION_GROUP_ID,
54: CALENDAR_ID,
55: CAL_PERIOD_ID,
56: CAL_PERIOD_NAME,
78: from FND_LANGUAGES L
79: where L.INSTALLED_FLAG in ('I', 'B')
80: and not exists
81: (select NULL
82: from FEM_CAL_PERIODS_TL T
83: where T.CAL_PERIOD_ID = X_CAL_PERIOD_ID
84: and T.LANGUAGE = L.LANGUAGE_CODE);
85:
86: open c;
119: cursor c1 is select
120: CAL_PERIOD_NAME,
121: DESCRIPTION,
122: decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
123: from FEM_CAL_PERIODS_TL
124: where CAL_PERIOD_ID = X_CAL_PERIOD_ID
125: and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
126: for update of CAL_PERIOD_ID nowait;
127: begin
192: if (sql%notfound) then
193: raise no_data_found;
194: end if;
195:
196: update FEM_CAL_PERIODS_TL set
197: CAL_PERIOD_NAME = X_CAL_PERIOD_NAME,
198: DESCRIPTION = X_DESCRIPTION,
199: LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
200: LAST_UPDATED_BY = X_LAST_UPDATED_BY,
211: procedure DELETE_ROW (
212: X_CAL_PERIOD_ID in NUMBER
213: ) is
214: begin
215: delete from FEM_CAL_PERIODS_TL
216: where CAL_PERIOD_ID = X_CAL_PERIOD_ID;
217:
218: if (sql%notfound) then
219: raise no_data_found;
229:
230: procedure ADD_LANGUAGE
231: is
232: begin
233: delete from FEM_CAL_PERIODS_TL T
234: where not exists
235: (select NULL
236: from FEM_CAL_PERIODS_B B
237: where B.CAL_PERIOD_ID = T.CAL_PERIOD_ID
236: from FEM_CAL_PERIODS_B B
237: where B.CAL_PERIOD_ID = T.CAL_PERIOD_ID
238: );
239:
240: update FEM_CAL_PERIODS_TL T set (
241: CAL_PERIOD_NAME,
242: DESCRIPTION
243: ) = (select
244: B.CAL_PERIOD_NAME,
242: DESCRIPTION
243: ) = (select
244: B.CAL_PERIOD_NAME,
245: B.DESCRIPTION
246: from FEM_CAL_PERIODS_TL B
247: where B.CAL_PERIOD_ID = T.CAL_PERIOD_ID
248: and B.LANGUAGE = T.SOURCE_LANG)
249: where (
250: T.CAL_PERIOD_ID,
251: T.LANGUAGE
252: ) in (select
253: SUBT.CAL_PERIOD_ID,
254: SUBT.LANGUAGE
255: from FEM_CAL_PERIODS_TL SUBB, FEM_CAL_PERIODS_TL SUBT
256: where SUBB.CAL_PERIOD_ID = SUBT.CAL_PERIOD_ID
257: and SUBB.LANGUAGE = SUBT.SOURCE_LANG
258: and (SUBB.CAL_PERIOD_NAME <> SUBT.CAL_PERIOD_NAME
259: or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
260: or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
261: or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
262: ));
263:
264: insert into FEM_CAL_PERIODS_TL (
265: DIMENSION_GROUP_ID,
266: CALENDAR_ID,
267: CAL_PERIOD_ID,
268: CAL_PERIOD_NAME,
286: B.LAST_UPDATE_DATE,
287: B.LAST_UPDATE_LOGIN,
288: L.LANGUAGE_CODE,
289: B.SOURCE_LANG
290: from FEM_CAL_PERIODS_TL B, FND_LANGUAGES L
291: where L.INSTALLED_FLAG in ('I', 'B')
292: and B.LANGUAGE = userenv('LANG')
293: and not exists
294: (select NULL
291: where L.INSTALLED_FLAG in ('I', 'B')
292: and B.LANGUAGE = userenv('LANG')
293: and not exists
294: (select NULL
295: from FEM_CAL_PERIODS_TL T
296: where T.CAL_PERIOD_ID = B.CAL_PERIOD_ID
297: and T.LANGUAGE = L.LANGUAGE_CODE);
298: end ADD_LANGUAGE;
299: PROCEDURE TRANSLATE_ROW(
321: f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
322: begin
323: select LAST_UPDATED_BY, LAST_UPDATE_DATE
324: into db_luby, db_ludate
325: from FEM_CAL_PERIODS_TL
326: where CAL_PERIOD_ID = x_CAL_PERIOD_ID
327: and LANGUAGE = userenv('LANG');
328:
329: -- Test for customization and version
329: -- Test for customization and version
330: if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
331: db_ludate, x_custom_mode)) then
332: -- Update translations for this language
333: update FEM_CAL_PERIODS_TL set
334: CAL_PERIOD_NAME = decode(x_CAL_PERIOD_NAME,
335: fnd_load_util.null_value, null, -- Real null
336: null, x_CAL_PERIOD_NAME, -- No change
337: x_CAL_PERIOD_NAME),