[Home] [Help]
PACKAGE BODY: APPS.HR_FORM_ITEMS_PKG
Source
1 package body HR_FORM_ITEMS_PKG as
2 /* $Header: hrfitlct.pkb 120.2 2011/06/15 08:01:03 sidsaxen ship $ */
3 procedure OWNER_TO_WHO (
4 X_OWNER in VARCHAR2,
5 X_CREATION_DATE out nocopy DATE,
6 X_CREATED_BY out nocopy NUMBER,
7 X_LAST_UPDATE_DATE out nocopy DATE,
8 X_LAST_UPDATED_BY out nocopy NUMBER,
9 X_LAST_UPDATE_LOGIN out nocopy NUMBER
10 ) is
11 begin
12 if X_OWNER = 'SEED' then
13 X_CREATED_BY := 1;
14 X_LAST_UPDATED_BY := 1;
15 else
16 X_CREATED_BY := 0;
17 X_LAST_UPDATED_BY := 0;
18 end if;
19 X_CREATION_DATE := sysdate;
20 X_LAST_UPDATE_DATE := sysdate;
21 X_LAST_UPDATE_LOGIN := 0;
22 end OWNER_TO_WHO;
23 procedure INSERT_ROW (
24 X_ROWID in out nocopy VARCHAR2,
25 X_FORM_ITEM_ID in NUMBER,
26 X_OBJECT_VERSION_NUMBER in NUMBER,
27 X_APPLICATION_ID in NUMBER,
28 X_FORM_ID in NUMBER,
29 X_FORM_CANVAS_ID in NUMBER,
30 X_FULL_ITEM_NAME in VARCHAR2,
31 X_ITEM_TYPE in VARCHAR2,
32 X_FORM_TAB_PAGE_ID in NUMBER,
33 X_RADIO_BUTTON_NAME in VARCHAR2,
34 X_REQUIRED_OVERRIDE in NUMBER,
35 X_FORM_TAB_PAGE_ID_OVERRIDE in NUMBER,
36 X_VISIBLE_OVERRIDE in NUMBER,
37 X_USER_ITEM_NAME in VARCHAR2,
38 X_DESCRIPTION in VARCHAR2,
39 X_CREATION_DATE in DATE,
40 X_CREATED_BY in NUMBER,
41 X_LAST_UPDATE_DATE in DATE,
42 X_LAST_UPDATED_BY in NUMBER,
43 X_LAST_UPDATE_LOGIN in NUMBER
44 ) is
45 cursor C is select ROWID from HR_FORM_ITEMS_B
46 where FORM_ITEM_ID = X_FORM_ITEM_ID
47 ;
48 begin
49
50 --
51 -- Added the following code as a part of Zero Downtime Patching Project.
52 -- Code Starts Here.
53 --
54
55 BEGIN
56 PER_RIC_PKG.chk_integrity (
57 p_entity_name => 'HR_FORM_ITEMS_B',
58 p_ref_entity_info => PER_RIC_PKG.ref_entity_tbl(
59 PER_RIC_PKG.ref_info_rec('HR_FORM_CANVASES_B', PER_RIC_PKG.column_info_tbl(
60 PER_RIC_PKG.col_info_rec('FORM_CANVAS_ID',NULL,X_FORM_CANVAS_ID,NULL))),
61 PER_RIC_PKG.ref_info_rec('HR_FORM_TAB_PAGES_B', PER_RIC_PKG.column_info_tbl(
62 PER_RIC_PKG.col_info_rec('FORM_TAB_PAGE_ID',NULL,X_FORM_TAB_PAGE_ID,NULL))), --12637368
63 PER_RIC_PKG.ref_info_rec('HR_FORM_TAB_PAGES_B', PER_RIC_PKG.column_info_tbl(
64 PER_RIC_PKG.col_info_rec('FORM_TAB_PAGE_ID',NULL,X_FORM_TAB_PAGE_ID_OVERRIDE,NULL)))
65 ),
66 p_ref_type => 'INS');
67
68 END;
69 --
70 -- Code Ends Here.
71 --
72 insert into HR_FORM_ITEMS_B (
73 FORM_ITEM_ID,
74 OBJECT_VERSION_NUMBER,
75 APPLICATION_ID,
76 FORM_ID,
77 FORM_CANVAS_ID,
78 FULL_ITEM_NAME,
79 ITEM_TYPE,
80 FORM_TAB_PAGE_ID,
81 RADIO_BUTTON_NAME,
82 REQUIRED_OVERRIDE,
83 FORM_TAB_PAGE_ID_OVERRIDE,
84 VISIBLE_OVERRIDE,
85 CREATION_DATE,
86 CREATED_BY,
87 LAST_UPDATE_DATE,
88 LAST_UPDATED_BY,
89 LAST_UPDATE_LOGIN
90 ) values (
91 X_FORM_ITEM_ID,
92 X_OBJECT_VERSION_NUMBER,
93 X_APPLICATION_ID,
94 X_FORM_ID,
95 X_FORM_CANVAS_ID,
96 X_FULL_ITEM_NAME,
97 X_ITEM_TYPE,
98 X_FORM_TAB_PAGE_ID,
99 X_RADIO_BUTTON_NAME,
100 X_REQUIRED_OVERRIDE,
101 X_FORM_TAB_PAGE_ID_OVERRIDE,
102 X_VISIBLE_OVERRIDE,
103 X_CREATION_DATE,
104 X_CREATED_BY,
105 X_LAST_UPDATE_DATE,
106 X_LAST_UPDATED_BY,
107 X_LAST_UPDATE_LOGIN
108 );
109
110 --
111 -- Added the following code as a part of Zero Downtime Patching Project.
112 -- Code Starts Here.
113 --
114
115 BEGIN
116 PER_RIC_PKG.chk_integrity (
117 p_entity_name => 'HR_FORM_ITEMS_TL',
118 p_ref_entity => 'HR_FORM_ITEMS_B',
119 p_ref_column_name => 'FORM_ITEM_ID',
120 p_ref_col_value_number => X_FORM_ITEM_ID,
121 p_ref_col_value_varchar => NULL,
122 p_ref_col_value_date => NULL,
123 p_ref_type => 'INS');
124
125 END;
126 --
127 -- Code Ends Here.
128 --
129 insert into HR_FORM_ITEMS_TL (
130 LAST_UPDATE_LOGIN,
131 CREATED_BY,
132 CREATION_DATE,
133 LAST_UPDATE_DATE,
134 LAST_UPDATED_BY,
135 FORM_ITEM_ID,
136 USER_ITEM_NAME,
137 DESCRIPTION,
138 LANGUAGE,
139 SOURCE_LANG
140 ) select
141 X_LAST_UPDATE_LOGIN,
142 X_CREATED_BY,
143 X_CREATION_DATE,
144 X_LAST_UPDATE_DATE,
145 X_LAST_UPDATED_BY,
146 X_FORM_ITEM_ID,
147 X_USER_ITEM_NAME,
148 X_DESCRIPTION,
149 L.LANGUAGE_CODE,
150 userenv('LANG')
151 from FND_LANGUAGES L
152 where L.INSTALLED_FLAG in ('I', 'B')
153 and not exists
154 (select NULL
155 from HR_FORM_ITEMS_TL T
156 where T.FORM_ITEM_ID = X_FORM_ITEM_ID
157 and T.LANGUAGE = L.LANGUAGE_CODE);
158
159 open c;
160 fetch c into X_ROWID;
161 if (c%notfound) then
162 close c;
163 raise no_data_found;
164 end if;
165 close c;
166
167 end INSERT_ROW;
168
169 procedure LOCK_ROW (
170 X_FORM_ITEM_ID in NUMBER,
171 X_OBJECT_VERSION_NUMBER in NUMBER,
172 X_APPLICATION_ID in NUMBER,
173 X_FORM_ID in NUMBER,
174 X_FORM_CANVAS_ID in NUMBER,
175 X_FULL_ITEM_NAME in VARCHAR2,
176 X_ITEM_TYPE in VARCHAR2,
177 X_FORM_TAB_PAGE_ID in NUMBER,
178 X_RADIO_BUTTON_NAME in VARCHAR2,
179 X_REQUIRED_OVERRIDE in NUMBER,
180 X_FORM_TAB_PAGE_ID_OVERRIDE in NUMBER,
181 X_VISIBLE_OVERRIDE in NUMBER,
182 X_USER_ITEM_NAME in VARCHAR2,
183 X_DESCRIPTION in VARCHAR2
184 ) is
185 cursor c is select
186 OBJECT_VERSION_NUMBER,
187 APPLICATION_ID,
188 FORM_ID,
189 FORM_CANVAS_ID,
190 FULL_ITEM_NAME,
191 ITEM_TYPE,
192 FORM_TAB_PAGE_ID,
193 RADIO_BUTTON_NAME,
194 REQUIRED_OVERRIDE,
195 FORM_TAB_PAGE_ID_OVERRIDE,
196 VISIBLE_OVERRIDE
197 from HR_FORM_ITEMS_B
198 where FORM_ITEM_ID = X_FORM_ITEM_ID
199 for update of FORM_ITEM_ID nowait;
200 recinfo c%rowtype;
201
202 cursor c1 is select
203 USER_ITEM_NAME,
204 DESCRIPTION,
205 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
206 from HR_FORM_ITEMS_TL
207 where FORM_ITEM_ID = X_FORM_ITEM_ID
208 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
209 for update of FORM_ITEM_ID nowait;
210 begin
211 open c;
212 fetch c into recinfo;
213 if (c%notfound) then
214 close c;
215 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
216 app_exception.raise_exception;
217 end if;
218 close c;
219 if ( (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
220 AND (recinfo.APPLICATION_ID = X_APPLICATION_ID)
221 AND (recinfo.FORM_ID = X_FORM_ID)
222 AND (recinfo.FORM_CANVAS_ID = X_FORM_CANVAS_ID)
223 AND (recinfo.FULL_ITEM_NAME = X_FULL_ITEM_NAME)
224 AND (recinfo.ITEM_TYPE = X_ITEM_TYPE)
225 AND ((recinfo.FORM_TAB_PAGE_ID = X_FORM_TAB_PAGE_ID)
226 OR ((recinfo.FORM_TAB_PAGE_ID is null) AND (X_FORM_TAB_PAGE_ID is null)))
227 AND ((recinfo.RADIO_BUTTON_NAME = X_RADIO_BUTTON_NAME)
228 OR ((recinfo.RADIO_BUTTON_NAME is null) AND (X_RADIO_BUTTON_NAME is null)))
229 AND ((recinfo.REQUIRED_OVERRIDE = X_REQUIRED_OVERRIDE)
230 OR ((recinfo.REQUIRED_OVERRIDE is null) AND (X_REQUIRED_OVERRIDE is null)))
231 AND ((recinfo.FORM_TAB_PAGE_ID_OVERRIDE = X_FORM_TAB_PAGE_ID_OVERRIDE)
232 OR ((recinfo.FORM_TAB_PAGE_ID_OVERRIDE is null) AND (X_FORM_TAB_PAGE_ID_OVERRIDE is null)))
233 AND ((recinfo.VISIBLE_OVERRIDE = X_VISIBLE_OVERRIDE)
234 OR ((recinfo.VISIBLE_OVERRIDE is null) AND (X_VISIBLE_OVERRIDE is null)))
235 ) then
236 null;
237 else
238 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
239 app_exception.raise_exception;
240 end if;
241
242 for tlinfo in c1 loop
243 if (tlinfo.BASELANG = 'Y') then
244 if ( (tlinfo.USER_ITEM_NAME = X_USER_ITEM_NAME)
245 AND ((tlinfo.DESCRIPTION = X_DESCRIPTION)
246 OR ((tlinfo.DESCRIPTION is null) AND (X_DESCRIPTION is null)))
247 ) then
248 null;
249 else
250 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
251 app_exception.raise_exception;
252 end if;
253 end if;
254 end loop;
255 return;
256 end LOCK_ROW;
257
258 procedure UPDATE_ROW (
259 X_FORM_ITEM_ID in NUMBER,
260 X_OBJECT_VERSION_NUMBER in NUMBER,
261 X_APPLICATION_ID in NUMBER,
262 X_FORM_ID in NUMBER,
263 X_FORM_CANVAS_ID in NUMBER,
264 X_FULL_ITEM_NAME in VARCHAR2,
265 X_ITEM_TYPE in VARCHAR2,
266 X_FORM_TAB_PAGE_ID in NUMBER,
267 X_RADIO_BUTTON_NAME in VARCHAR2,
268 X_REQUIRED_OVERRIDE in NUMBER,
269 X_FORM_TAB_PAGE_ID_OVERRIDE in NUMBER,
270 X_VISIBLE_OVERRIDE in NUMBER,
271 X_USER_ITEM_NAME in VARCHAR2,
272 X_DESCRIPTION in VARCHAR2,
273 X_LAST_UPDATE_DATE in DATE,
274 X_LAST_UPDATED_BY in NUMBER,
275 X_LAST_UPDATE_LOGIN in NUMBER
276 ) is
277 begin
278 update HR_FORM_ITEMS_B set
279 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
280 APPLICATION_ID = X_APPLICATION_ID,
281 FORM_ID = X_FORM_ID,
282 FORM_CANVAS_ID = X_FORM_CANVAS_ID,
283 FULL_ITEM_NAME = X_FULL_ITEM_NAME,
284 ITEM_TYPE = X_ITEM_TYPE,
285 FORM_TAB_PAGE_ID = X_FORM_TAB_PAGE_ID,
286 RADIO_BUTTON_NAME = X_RADIO_BUTTON_NAME,
287 REQUIRED_OVERRIDE = X_REQUIRED_OVERRIDE,
288 FORM_TAB_PAGE_ID_OVERRIDE = X_FORM_TAB_PAGE_ID_OVERRIDE,
289 VISIBLE_OVERRIDE = X_VISIBLE_OVERRIDE,
290 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
291 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
292 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
293 where FORM_ITEM_ID = X_FORM_ITEM_ID;
294
295 if (sql%notfound) then
296 raise no_data_found;
297 end if;
298
299 update HR_FORM_ITEMS_TL set
300 USER_ITEM_NAME = X_USER_ITEM_NAME,
301 DESCRIPTION = X_DESCRIPTION,
302 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
303 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
304 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
305 SOURCE_LANG = userenv('LANG')
306 where FORM_ITEM_ID = X_FORM_ITEM_ID
307 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
308
309 if (sql%notfound) then
310 raise no_data_found;
311 end if;
312 end UPDATE_ROW;
313
314 procedure DELETE_ROW (
315 X_FORM_ITEM_ID in NUMBER
316 ) is
317 begin
318 delete from HR_FORM_ITEMS_TL
319 where FORM_ITEM_ID = X_FORM_ITEM_ID;
320
321 if (sql%notfound) then
322 raise no_data_found;
323 end if;
324 --
325 -- Added the following code as a part of Zero Downtime Patching Project.
326 -- Code Starts Here.
327 --
328
329 BEGIN
330 PER_RIC_PKG.chk_integrity (
331 p_entity_name => 'HR_FORM_ITEMS_B',
332 p_ref_entity_info => PER_RIC_PKG.ref_entity_tbl(
333 PER_RIC_PKG.ref_info_rec('HR_FORM_DATA_GROUP_ITEMS', PER_RIC_PKG.column_info_tbl(
334 PER_RIC_PKG.col_info_rec('FORM_ITEM_ID',NULL,X_FORM_ITEM_ID,NULL))),
335 PER_RIC_PKG.ref_info_rec('HR_FORM_ITEMS_TL', PER_RIC_PKG.column_info_tbl(
336 PER_RIC_PKG.col_info_rec('FORM_ITEM_ID',NULL,X_FORM_ITEM_ID,NULL))),
337 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
338 PER_RIC_PKG.col_info_rec('FORM_ITEM_ID',NULL,X_FORM_ITEM_ID,NULL))),
339 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
340 PER_RIC_PKG.col_info_rec('VALIDATION_PARAMETER_ITEM_ID1',NULL,X_FORM_ITEM_ID,NULL))),
341 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
342 PER_RIC_PKG.col_info_rec('VALIDATION_PARAMETER_ITEM_ID2',NULL,X_FORM_ITEM_ID,NULL))),
343 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
344 PER_RIC_PKG.col_info_rec('VALIDATION_PARAMETER_ITEM_ID3',NULL,X_FORM_ITEM_ID,NULL))),
345 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
346 PER_RIC_PKG.col_info_rec('VALIDATION_PARAMETER_ITEM_ID4',NULL,X_FORM_ITEM_ID,NULL))),
347 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
348 PER_RIC_PKG.col_info_rec('VALIDATION_PARAMETER_ITEM_ID5',NULL,X_FORM_ITEM_ID,NULL))),
349 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
350 PER_RIC_PKG.col_info_rec('NEXT_NAVIGATION_ITEM_ID',NULL,X_FORM_ITEM_ID,NULL))),
351 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
352 PER_RIC_PKG.col_info_rec('PREVIOUS_NAVIGATION_ITEM_ID',NULL,X_FORM_ITEM_ID,NULL))),
353 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
354 PER_RIC_PKG.col_info_rec('INFORMATION_PARAMETER_ITEM_ID1',NULL,X_FORM_ITEM_ID,NULL))),
355 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
356 PER_RIC_PKG.col_info_rec('INFORMATION_PARAMETER_ITEM_ID2',NULL,X_FORM_ITEM_ID,NULL))),
357 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
358 PER_RIC_PKG.col_info_rec('INFORMATION_PARAMETER_ITEM_ID3',NULL,X_FORM_ITEM_ID,NULL))),
359 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
360 PER_RIC_PKG.col_info_rec('INFORMATION_PARAMETER_ITEM_ID4',NULL,X_FORM_ITEM_ID,NULL))),
361 PER_RIC_PKG.ref_info_rec('HR_ITEM_PROPERTIES_B', PER_RIC_PKG.column_info_tbl(
362 PER_RIC_PKG.col_info_rec('INFORMATION_PARAMETER_ITEM_ID5',NULL,X_FORM_ITEM_ID,NULL))),
363 PER_RIC_PKG.ref_info_rec('HR_TEMPLATE_ITEMS_B', PER_RIC_PKG.column_info_tbl(
364 PER_RIC_PKG.col_info_rec('FORM_ITEM_ID',NULL,X_FORM_ITEM_ID,NULL)))
365 ),
366 p_ref_type => 'DEL');
367
368 END;
369 --
370 -- Code Ends Here.
371 --
372
373 delete from HR_FORM_ITEMS_B
374 where FORM_ITEM_ID = X_FORM_ITEM_ID;
375
376 if (sql%notfound) then
377 raise no_data_found;
378 end if;
379 end DELETE_ROW;
380
381 procedure ADD_LANGUAGE
382 is
383 begin
384 delete from HR_FORM_ITEMS_TL T
385 where not exists
386 (select NULL
387 from HR_FORM_ITEMS_B B
388 where B.FORM_ITEM_ID = T.FORM_ITEM_ID
389 );
390
391 update HR_FORM_ITEMS_TL T set (
392 USER_ITEM_NAME,
393 DESCRIPTION
394 ) = (select
395 B.USER_ITEM_NAME,
396 B.DESCRIPTION
397 from HR_FORM_ITEMS_TL B
398 where B.FORM_ITEM_ID = T.FORM_ITEM_ID
399 and B.LANGUAGE = T.SOURCE_LANG)
400 where (
401 T.FORM_ITEM_ID,
402 T.LANGUAGE
403 ) in (select
404 SUBT.FORM_ITEM_ID,
405 SUBT.LANGUAGE
406 from HR_FORM_ITEMS_TL SUBB, HR_FORM_ITEMS_TL SUBT
407 where SUBB.FORM_ITEM_ID = SUBT.FORM_ITEM_ID
408 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
409 and (SUBB.USER_ITEM_NAME <> SUBT.USER_ITEM_NAME
410 or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
411 or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
412 or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
413 ));
414
415 insert into HR_FORM_ITEMS_TL (
416 LAST_UPDATE_LOGIN,
417 CREATED_BY,
418 CREATION_DATE,
419 LAST_UPDATE_DATE,
420 LAST_UPDATED_BY,
421 FORM_ITEM_ID,
422 USER_ITEM_NAME,
423 DESCRIPTION,
424 LANGUAGE,
425 SOURCE_LANG
426 ) select
427 B.LAST_UPDATE_LOGIN,
428 B.CREATED_BY,
429 B.CREATION_DATE,
430 B.LAST_UPDATE_DATE,
431 B.LAST_UPDATED_BY,
432 B.FORM_ITEM_ID,
433 B.USER_ITEM_NAME,
434 B.DESCRIPTION,
435 L.LANGUAGE_CODE,
436 B.SOURCE_LANG
437 from HR_FORM_ITEMS_TL B, FND_LANGUAGES L
438 where L.INSTALLED_FLAG in ('I', 'B')
439 and B.LANGUAGE = userenv('LANG')
440 and not exists
441 (select NULL
442 from HR_FORM_ITEMS_TL T
443 where T.FORM_ITEM_ID = B.FORM_ITEM_ID
444 and T.LANGUAGE = L.LANGUAGE_CODE);
445 end ADD_LANGUAGE;
446 procedure TRANSLATE_ROW (
450 X_RADIO_BUTTON_NAME in VARCHAR2,
447 X_APPLICATION_SHORT_NAME in VARCHAR2,
448 X_FORM_NAME in VARCHAR2,
449 X_FULL_ITEM_NAME in VARCHAR2,
451 X_OWNER in VARCHAR2,
452 X_USER_ITEM_NAME in VARCHAR2,
453 X_DESCRIPTION in VARCHAR2) is
454 X_ROWID ROWID;
455 X_CREATION_DATE DATE;
456 X_CREATED_BY NUMBER;
457 X_LAST_UPDATE_DATE DATE;
458 X_LAST_UPDATED_BY NUMBER;
459 X_LAST_UPDATE_LOGIN NUMBER;
460 X_FORM_ID NUMBER;
461 X_APPLICATION_ID NUMBER;
462 X_FORM_WINDOW_ID NUMBER;
463 X_FORM_CANVAS_ID NUMBER;
464 X_FORM_TAB_PAGE_ID NUMBER;
465 X_FORM_TAB_PAGE_ID_OVERRIDE NUMBER;
466 X_FORM_ITEM_ID NUMBER;
467 begin
468
469 OWNER_TO_WHO (
470 X_OWNER,
471 X_CREATION_DATE,
472 X_CREATED_BY,
473 X_LAST_UPDATE_DATE,
474 X_LAST_UPDATED_BY,
475 X_LAST_UPDATE_LOGIN
476 );
477
478 select application_id
479 into x_application_id
480 from fnd_application
481 where application_short_name = x_application_short_name;
482
483 select form_id
484 into x_form_id
485 from fnd_form
486 where form_name = x_form_name
487 and application_id = x_application_id;
488
489 select form_item_id
490 into x_form_item_id
491 from hr_form_items_b
492 where full_item_name = x_full_item_name
493 and application_id = x_application_id
494 and form_id = x_form_id
495 and ( radio_button_name = x_radio_button_name
496 or (radio_button_name is null and x_radio_button_name is null) );
497
498 update HR_FORM_ITEMS_TL set
499 DESCRIPTION = X_DESCRIPTION,
500 USER_ITEM_NAME = X_USER_ITEM_NAME,
501 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
502 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
503 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
504 SOURCE_LANG = userenv('LANG')
505 where userenv('LANG') in (LANGUAGE,SOURCE_LANG)
506 and form_item_id = x_form_item_id;
507
508 end TRANSLATE_ROW;
509
510 procedure LOAD_ROW (
511 X_APPLICATION_SHORT_NAME in VARCHAR2,
512 X_FORM_NAME in VARCHAR2,
513 X_FULL_ITEM_NAME in VARCHAR2,
514 X_RADIO_BUTTON_NAME in VARCHAR2,
515 X_OWNER in VARCHAR2,
516 X_CANVAS_NAME in VARCHAR2,
517 X_WINDOW_NAME in VARCHAR2,
518 X_TAB_PAGE_NAME_1 in VARCHAR2,
519 X_TAB_PAGE_NAME_2 in VARCHAR2,
520 X_OBJECT_VERSION_NUMBER in VARCHAR2,
521 X_ITEM_TYPE in VARCHAR2,
522 X_REQUIRED_OVERRIDE in VARCHAR2,
523 X_VISIBLE_OVERRIDE in VARCHAR2,
524 X_USER_ITEM_NAME in VARCHAR2,
525 X_DESCRIPTION in VARCHAR2) is
526 X_ROWID ROWID;
527 X_CREATION_DATE DATE;
528 X_CREATED_BY NUMBER;
529 X_LAST_UPDATE_DATE DATE;
530 X_LAST_UPDATED_BY NUMBER;
531 X_LAST_UPDATE_LOGIN NUMBER;
532 X_FORM_ID NUMBER;
533 X_APPLICATION_ID NUMBER;
534 X_FORM_WINDOW_ID NUMBER;
535 X_FORM_CANVAS_ID NUMBER;
536 X_FORM_TAB_PAGE_ID NUMBER;
537 X_FORM_TAB_PAGE_ID_OVERRIDE NUMBER;
538 X_FORM_ITEM_ID NUMBER;
539 begin
540
541 OWNER_TO_WHO (
542 X_OWNER,
543 X_CREATION_DATE,
544 X_CREATED_BY,
545 X_LAST_UPDATE_DATE,
546 X_LAST_UPDATED_BY,
547 X_LAST_UPDATE_LOGIN
548 );
549
550 select application_id
551 into x_application_id
552 from fnd_application
553 where application_short_name = x_application_short_name;
554
555 select form_id
556 into x_form_id
557 from fnd_form
558 where form_name = x_form_name
559 and application_id = x_application_id;
560
561 select hfc.form_canvas_id
562 into x_form_canvas_id
563 from hr_form_canvases_b hfc
564 ,hr_form_windows_b hfw
565 where hfc.canvas_name = x_canvas_name
566 and hfw.application_id = x_application_id
567 and hfw.form_id = x_form_id
568 and hfw.window_name = x_window_name;
569
570 IF ltrim(rtrim(x_tab_page_name_1)) IS NOT NULL THEN
571
572 select form_tab_page_id
573 into x_form_tab_page_id
574 from hr_form_tab_pages_b
575 where form_canvas_id = x_form_canvas_id
576 and tab_page_name = x_tab_page_name_1;
577
578 ELSE
579 x_form_tab_page_id := null;
580
581 END IF;
582
583
584 IF ltrim(rtrim(x_tab_page_name_2)) IS NOT NULL THEN
585
586 select form_tab_page_id
587 into x_form_tab_page_id_override
588 from hr_form_tab_pages_b
589 where form_canvas_id = x_form_canvas_id
590 and tab_page_name = x_tab_page_name_2;
591
592 ELSE
593 x_form_tab_page_id_override := null;
594
595 END IF;
596
597 begin
598 select form_item_id
599 into x_form_item_id
600 from hr_form_items_b
601 where full_item_name = x_full_item_name
602 and application_id = x_application_id
603 and form_id = x_form_id
604 and ( radio_button_name = x_radio_button_name
605 or (radio_button_name is null and x_radio_button_name is null) );
606 exception
607 when no_data_found then
608 select hr_form_items_b_s.nextval
609 into x_form_item_id
610 from dual;
611 end;
612 begin
613 UPDATE_ROW (
614 X_FORM_ITEM_ID,
615 to_number(X_OBJECT_VERSION_NUMBER),
616 X_APPLICATION_ID,
617 X_FORM_ID,
618 X_FORM_CANVAS_ID,
619 X_FULL_ITEM_NAME,
620 X_ITEM_TYPE,
621 X_FORM_TAB_PAGE_ID,
622 X_RADIO_BUTTON_NAME,
623 to_number(X_REQUIRED_OVERRIDE),
624 X_FORM_TAB_PAGE_ID_OVERRIDE,
625 to_number(X_VISIBLE_OVERRIDE),
626 X_USER_ITEM_NAME,
627 X_DESCRIPTION,
628 X_LAST_UPDATE_DATE,
629 X_LAST_UPDATED_BY,
633 when no_data_found then
630 X_LAST_UPDATE_LOGIN
631 );
632 exception
634 INSERT_ROW (
635 X_ROWID,
636 X_FORM_ITEM_ID,
637 to_number(X_OBJECT_VERSION_NUMBER),
638 X_APPLICATION_ID,
639 X_FORM_ID,
640 X_FORM_CANVAS_ID,
641 X_FULL_ITEM_NAME,
642 X_ITEM_TYPE,
643 X_FORM_TAB_PAGE_ID,
644 X_RADIO_BUTTON_NAME,
645 to_number(X_REQUIRED_OVERRIDE),
646 X_FORM_TAB_PAGE_ID_OVERRIDE,
647 to_number(X_VISIBLE_OVERRIDE),
648 X_USER_ITEM_NAME,
649 X_DESCRIPTION,
650 X_CREATION_DATE,
651 X_CREATED_BY,
652 X_LAST_UPDATE_DATE,
653 X_LAST_UPDATED_BY,
654 X_LAST_UPDATE_LOGIN);
655 end;
656 end LOAD_ROW;
657 end HR_FORM_ITEMS_PKG;