[Home] [Help]
PACKAGE BODY: APPS.HR_TCP_PKG
Source
1 package body HR_TCP_PKG as
2 /* $Header: hrtcplct.pkb 115.4 2002/12/11 06:57:36 raranjan noship $ */
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_TEMPLATE_ITEM_CONTEXT_ID in NUMBER,
26 X_TEMPLATE_ITEM_CONTEXT_PAGE_I in NUMBER,
27 X_OBJECT_VERSION_NUMBER in NUMBER,
28 X_TEMPLATE_TAB_PAGE_ID in NUMBER,
29 X_CREATION_DATE in DATE,
30 X_CREATED_BY in NUMBER,
31 X_LAST_UPDATE_DATE in DATE,
32 X_LAST_UPDATED_BY in NUMBER,
33 X_LAST_UPDATE_LOGIN in NUMBER
34 ) is
35 cursor C is select ROWID from HR_TEMPLATE_ITEM_CONTEXT_PAGES
36 where TEMPLATE_ITEM_CONTEXT_ID = X_TEMPLATE_ITEM_CONTEXT_ID
37 ;
38 begin
39 insert into HR_TEMPLATE_ITEM_CONTEXT_PAGES (
40 CREATION_DATE,
41 TEMPLATE_ITEM_CONTEXT_PAGE_ID,
42 OBJECT_VERSION_NUMBER,
43 TEMPLATE_ITEM_CONTEXT_ID,
44 TEMPLATE_TAB_PAGE_ID,
45 LAST_UPDATE_DATE,
46 LAST_UPDATED_BY,
47 LAST_UPDATE_LOGIN,
48 CREATED_BY
49 ) values(
50 X_CREATION_DATE,
51 X_TEMPLATE_ITEM_CONTEXT_PAGE_I,
52 X_OBJECT_VERSION_NUMBER,
53 X_TEMPLATE_ITEM_CONTEXT_ID,
54 X_TEMPLATE_TAB_PAGE_ID,
55 X_LAST_UPDATE_DATE,
56 X_LAST_UPDATED_BY,
57 X_LAST_UPDATE_LOGIN,
58 X_CREATED_BY);
59
60 open c;
61 fetch c into X_ROWID;
62 if (c%notfound) then
63 close c;
64 raise no_data_found;
65 end if;
66 close c;
67
68 end INSERT_ROW;
69
70 procedure LOCK_ROW (
71 X_TEMPLATE_ITEM_CONTEXT_ID in NUMBER,
72 X_TEMPLATE_ITEM_CONTEXT_PAGE_I in NUMBER,
73 X_OBJECT_VERSION_NUMBER in NUMBER,
74 X_TEMPLATE_TAB_PAGE_ID in NUMBER
75 ) is
76 cursor c1 is select
77 TEMPLATE_ITEM_CONTEXT_PAGE_ID,
78 OBJECT_VERSION_NUMBER,
79 TEMPLATE_TAB_PAGE_ID
80 from HR_TEMPLATE_ITEM_CONTEXT_PAGES
81 where TEMPLATE_ITEM_CONTEXT_ID = X_TEMPLATE_ITEM_CONTEXT_ID
82 for update of TEMPLATE_ITEM_CONTEXT_ID nowait;
83 begin
84 for tlinfo in c1 loop
85 if (tlinfo.TEMPLATE_ITEM_CONTEXT_PAGE_ID = X_TEMPLATE_ITEM_CONTEXT_PAGE_I)
86 AND (tlinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
87 AND (tlinfo.TEMPLATE_TAB_PAGE_ID = X_TEMPLATE_TAB_PAGE_ID)
88 then
89 null;
90 else
91 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
92 app_exception.raise_exception;
93 end if;
94 end loop;
95 return;
96 end LOCK_ROW;
97
98 procedure UPDATE_ROW (
99 X_TEMPLATE_ITEM_CONTEXT_ID in NUMBER,
100 X_TEMPLATE_ITEM_CONTEXT_PAGE_I in NUMBER,
101 X_OBJECT_VERSION_NUMBER in NUMBER,
102 X_TEMPLATE_TAB_PAGE_ID in NUMBER,
103 X_LAST_UPDATE_DATE in DATE,
104 X_LAST_UPDATED_BY in NUMBER,
105 X_LAST_UPDATE_LOGIN in NUMBER
106 ) is
107 begin
108 update HR_TEMPLATE_ITEM_CONTEXT_PAGES set
109 TEMPLATE_ITEM_CONTEXT_PAGE_ID = X_TEMPLATE_ITEM_CONTEXT_PAGE_I,
110 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
111 TEMPLATE_TAB_PAGE_ID = X_TEMPLATE_TAB_PAGE_ID,
112 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
113 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
114 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
115 where TEMPLATE_ITEM_CONTEXT_ID = X_TEMPLATE_ITEM_CONTEXT_ID;
116
117 if (sql%notfound) then
118 raise no_data_found;
119 end if;
120 end UPDATE_ROW;
121
122 procedure DELETE_ROW (
123 X_TEMPLATE_ITEM_CONTEXT_ID in NUMBER
124 ) is
125 begin
126 delete from HR_TEMPLATE_ITEM_CONTEXT_PAGES
127 where TEMPLATE_ITEM_CONTEXT_ID = X_TEMPLATE_ITEM_CONTEXT_ID;
128
129 if (sql%notfound) then
130 raise no_data_found;
131 end if;
132
133 end DELETE_ROW;
134 procedure LOAD_ROW (
135 X_APPLICATION_SHORT_NAME in VARCHAR2,
136 X_FORM_NAME in VARCHAR2,
137 X_TEMPLATE_NAME in VARCHAR2,
138 X_TERRITORY_SHORT_NAME in VARCHAR2,
139 X_FULL_ITEM_NAME in VARCHAR2,
140 X_RADIO_BUTTON_NAME in VARCHAR2,
141 X_SEGMENT1 in VARCHAR2,
142 X_SEGMENT2 in VARCHAR2,
143 X_SEGMENT3 in VARCHAR2,
144 X_SEGMENT4 in VARCHAR2,
145 X_SEGMENT5 in VARCHAR2,
146 X_SEGMENT6 in VARCHAR2,
147 X_SEGMENT7 in VARCHAR2,
148 X_SEGMENT8 in VARCHAR2,
149 X_SEGMENT9 in VARCHAR2,
150 X_SEGMENT10 in VARCHAR2,
151 X_SEGMENT11 in VARCHAR2,
152 X_SEGMENT12 in VARCHAR2,
153 X_SEGMENT13 in VARCHAR2,
154 X_SEGMENT14 in VARCHAR2,
155 X_SEGMENT15 in VARCHAR2,
156 X_SEGMENT16 in VARCHAR2,
157 X_SEGMENT17 in VARCHAR2,
158 X_SEGMENT18 in VARCHAR2,
159 X_SEGMENT19 in VARCHAR2,
160 X_SEGMENT20 in VARCHAR2,
161 X_SEGMENT21 in VARCHAR2,
162 X_SEGMENT22 in VARCHAR2,
163 X_SEGMENT23 in VARCHAR2,
164 X_SEGMENT24 in VARCHAR2,
165 X_SEGMENT25 in VARCHAR2,
166 X_SEGMENT26 in VARCHAR2,
167 X_SEGMENT27 in VARCHAR2,
168 X_SEGMENT28 in VARCHAR2,
169 X_SEGMENT29 in VARCHAR2,
170 X_SEGMENT30 in VARCHAR2,
171 X_ID_FLEX_STRUCTURE_CODE in VARCHAR2,
172 X_CONTEXT_TYPE in VARCHAR2,
173 X_ID_FLEX_CODE in VARCHAR2,
174 X_CANVAS_NAME in VARCHAR2,
175 X_WINDOW_NAME in VARCHAR2,
176 X_FORM_TAB_PAGE_NAME in VARCHAR2,
177 X_OWNER in VARCHAR2,
178 X_OBJECT_VERSION_NUMBER in VARCHAR2) is
179 X_ROWID ROWID;
180 X_CREATION_DATE DATE;
181 X_CREATED_BY NUMBER;
182 X_LAST_UPDATE_DATE DATE;
183 X_LAST_UPDATED_BY NUMBER;
184 X_LAST_UPDATE_LOGIN NUMBER;
185 X_FORM_ID NUMBER;
186 X_APPLICATION_ID NUMBER;
187 X_FORM_ITEM_ID NUMBER;
188 X_TEMPLATE_ITEM_ID NUMBER;
189 X_TEMPLATE_ITEM_CONTEXT_ID NUMBER;
190 X_ITEM_PROPERTY_ID NUMBER;
191 X_ITEM_CONTEXT_ID NUMBER;
192 X_FORM_WINDOW_ID NUMBER;
193 X_FORM_TEMPLATE_ID NUMBER;
194 X_TEMPLATE_WINDOW_ID NUMBER;
195 X_TCP_ID NUMBER;
196 X_FORM_CANVAS_ID NUMBER;
197 X_TEMPLATE_CANVAS_ID NUMBER;
198 X_FORM_TAB_PAGE_ID NUMBER;
199 X_TEMPLATE_TAB_PAGE_ID NUMBER;
200 begin
201 OWNER_TO_WHO (
202 X_OWNER,
203 X_CREATION_DATE,
204 X_CREATED_BY,
205 X_LAST_UPDATE_DATE,
206 X_LAST_UPDATED_BY,
207 X_LAST_UPDATE_LOGIN
208 );
209
210 /* adhunter jun-2002, bug 2183600
211 merged the following 3 SELECT into one, after this commented section
212
213 select application_id
214 into x_application_id
215 from fnd_application
216 where application_short_name = x_application_short_name;
217
218 select form_id
219 into x_form_id
220 from fnd_form
221 where form_name = x_form_name
222 and application_id = x_application_id;
223
224 select form_item_id
225 into x_form_item_id
226 from hr_form_items_b
227 where full_item_name = x_full_item_name
228 and application_id = x_application_id
229 and form_id = x_form_id
230 and ( radio_button_name = x_radio_button_name
231 or (radio_button_name is null and x_radio_button_name is null) );
232 */
233
234 select a.application_id,
235 f.form_id,
236 fi.form_item_id
237 into x_application_id,
238 x_form_id,
239 x_form_item_id
240 from fnd_application a,
241 fnd_form f,
242 hr_form_items_b fi
243 where a.application_short_name = x_application_short_name
244 and f.form_name = x_form_name
245 and f.application_id = a.application_id
246 and fi.full_item_name = x_full_item_name
247 and fi.application_id = f.application_id
248 and fi.form_id = f.form_id
249 and (fi.radio_button_name = x_radio_button_name
250 or (fi.radio_button_name is null and x_radio_button_name is null));
251
252
253 select hti.template_item_id
254 into x_template_item_id
255 from hr_form_templates_b hft
256 ,hr_template_items_b hti
257 where hti.form_item_id = x_form_item_id
258 and hti.form_template_id = hft.form_template_id
259 and hft.form_id = x_form_id
260 and hft.application_id = x_application_id
261 and ( (hft.legislation_code is null and x_territory_short_name is null)
262 or (hft.legislation_code = x_territory_short_name) )
263 and hft.template_name = x_template_name;
264
265 select item_context_id
266 into x_item_context_id
267 from hr_item_contexts hic
268 ,fnd_id_flex_structures fifs
269 where nvl(hic.segment1,hr_api.g_varchar2) = nvl(x_segment1,hr_api.g_varchar2)
270 and nvl(hic.segment2,hr_api.g_varchar2) = nvl(x_segment2,hr_api.g_varchar2)
271 and nvl(hic.segment3,hr_api.g_varchar2) = nvl(x_segment3,hr_api.g_varchar2)
272 and nvl(hic.segment4,hr_api.g_varchar2) = nvl(x_segment4,hr_api.g_varchar2)
273 and nvl(hic.segment5,hr_api.g_varchar2) = nvl(x_segment5,hr_api.g_varchar2)
274 and nvl(hic.segment6,hr_api.g_varchar2) = nvl(x_segment6,hr_api.g_varchar2)
275 and nvl(hic.segment7,hr_api.g_varchar2) = nvl(x_segment7,hr_api.g_varchar2)
276 and nvl(hic.segment8,hr_api.g_varchar2) = nvl(x_segment8,hr_api.g_varchar2)
277 and nvl(hic.segment9,hr_api.g_varchar2) = nvl(x_segment9,hr_api.g_varchar2)
278 and nvl(hic.segment10,hr_api.g_varchar2) = nvl(x_segment10,hr_api.g_varchar2)
279 and nvl(hic.segment11,hr_api.g_varchar2) = nvl(x_segment11,hr_api.g_varchar2)
280 and nvl(hic.segment12,hr_api.g_varchar2) = nvl(x_segment12,hr_api.g_varchar2)
281 and nvl(hic.segment13,hr_api.g_varchar2) = nvl(x_segment13,hr_api.g_varchar2)
282 and nvl(hic.segment14,hr_api.g_varchar2) = nvl(x_segment14,hr_api.g_varchar2)
283 and nvl(hic.segment15,hr_api.g_varchar2) = nvl(x_segment15,hr_api.g_varchar2)
284 and nvl(hic.segment16,hr_api.g_varchar2) = nvl(x_segment16,hr_api.g_varchar2)
285 and nvl(hic.segment17,hr_api.g_varchar2) = nvl(x_segment17,hr_api.g_varchar2)
286 and nvl(hic.segment18,hr_api.g_varchar2) = nvl(x_segment18,hr_api.g_varchar2)
287 and nvl(hic.segment19,hr_api.g_varchar2) = nvl(x_segment19,hr_api.g_varchar2)
288 and nvl(hic.segment20,hr_api.g_varchar2) = nvl(x_segment20,hr_api.g_varchar2)
289 and nvl(hic.segment21,hr_api.g_varchar2) = nvl(x_segment21,hr_api.g_varchar2)
290 and nvl(hic.segment22,hr_api.g_varchar2) = nvl(x_segment22,hr_api.g_varchar2)
291 and nvl(hic.segment23,hr_api.g_varchar2) = nvl(x_segment23,hr_api.g_varchar2)
292 and nvl(hic.segment24,hr_api.g_varchar2) = nvl(x_segment24,hr_api.g_varchar2)
293 and nvl(hic.segment25,hr_api.g_varchar2) = nvl(x_segment25,hr_api.g_varchar2)
294 and nvl(hic.segment26,hr_api.g_varchar2) = nvl(x_segment26,hr_api.g_varchar2)
295 and nvl(hic.segment27,hr_api.g_varchar2) = nvl(x_segment27,hr_api.g_varchar2)
296 and nvl(hic.segment28,hr_api.g_varchar2) = nvl(x_segment28,hr_api.g_varchar2)
297 and nvl(hic.segment29,hr_api.g_varchar2) = nvl(x_segment29,hr_api.g_varchar2)
298 and nvl(hic.segment30,hr_api.g_varchar2) = nvl(x_segment30,hr_api.g_varchar2)
299 and hic.id_flex_num = fifs.id_flex_num
300 and fifs.application_id = x_application_id
301 and fifs.id_flex_structure_code = x_id_flex_structure_code
302 and fifs.id_flex_code = x_id_flex_code;
303
304 select template_item_context_id
305 into x_template_item_context_id
306 from hr_template_item_contexts_b ticb
307 where ticb.template_item_id = x_template_item_id
308 and ticb.context_type = x_context_type
309 and ticb.item_context_id = x_item_context_id;
310
311 /* adhunter jun-2002, bug 2183600
312 merged the following 7 SELECT into one, after this commented section
313
314 select form_window_id
315 into x_form_window_id
316 from hr_form_windows_b
317 where window_name = x_window_name
318 and application_id = x_application_id
319 and form_id = x_form_id;
320
321 select form_template_id
322 into x_form_template_id
323 from hr_form_templates_b
324 where ( (legislation_code is null and x_territory_short_name is null)
325 or (legislation_code = x_territory_short_name) )
326 and template_name = x_template_name
327 and application_id = x_application_id
328 and form_id = x_form_id;
329
330 select template_window_id
331 into x_template_window_id
332 from hr_template_windows_b
333 where form_template_id = x_form_template_id
334 and form_window_id = x_form_window_id;
335
336 select form_canvas_id
337 into x_form_canvas_id
338 from hr_form_canvases_b
339 where canvas_name = x_canvas_name
340 and form_window_id = x_form_window_id;
341
342 select template_canvas_id
343 into x_template_canvas_id
344 from hr_template_canvases_b
345 where form_canvas_id = x_form_canvas_id
346 and template_window_id = x_template_window_id;
347
348 select form_tab_page_id
349 into x_form_tab_page_id
350 from hr_form_tab_pages_b
351 where tab_page_name = x_form_tab_page_name
352 and form_canvas_id = x_form_canvas_id;
353
354 select template_tab_page_id
355 into x_template_tab_page_id
356 from hr_template_tab_pages_b
357 where template_canvas_id = x_template_canvas_id
358 and form_tab_page_id = x_form_tab_page_id;
359 */
360
361 select hfw.form_window_id,
362 hft.form_template_id,
363 htw.template_window_id,
364 hfc.form_canvas_id,
365 htc.template_canvas_id,
366 hftp.form_tab_page_id,
367 htpb.template_tab_page_id
368 into x_form_window_id,
369 x_form_template_id,
370 x_template_window_id,
371 x_form_canvas_id,
372 x_template_canvas_id,
373 x_form_tab_page_id,
374 x_template_tab_page_id
375 from hr_form_windows_b hfw,
376 hr_form_templates_b hft,
377 hr_template_windows_b htw,
378 hr_form_canvases_b hfc,
379 hr_template_canvases_b htc,
380 hr_form_tab_pages_b hftp,
381 hr_template_tab_pages_b htpb
382 where hfw.window_name = x_window_name
383 and hfw.application_id = x_application_id
384 and hfw.form_id = x_form_id
385 and hft.application_id = hfw.application_id
386 and hft.form_id = hfw.form_id
387 and hft.template_name = x_template_name
388 and ((hft.legislation_code = x_territory_short_name)
389 or (hft.legislation_code is null and x_territory_short_name is null))
390 and htw.form_template_id = hft.form_template_id
391 and htw.form_window_id = hfw.form_window_id
392 and hfc.canvas_name = x_canvas_name
393 and hfc.form_window_id = hfw.form_window_id
394 and htc.form_canvas_id = hfc.form_canvas_id
395 and htc.template_window_id = htw.template_window_id
396 and hftp.tab_page_name = x_form_tab_page_name
397 and hftp.form_canvas_id = htc.form_canvas_id
398 and htpb.template_canvas_id = htc.template_canvas_id
399 and htpb.form_tab_page_id = hftp.form_tab_page_id;
400
401 begin
402
403 select template_item_context_page_id
404 into x_tcp_id
405 from hr_template_item_context_pages
406 where template_tab_page_id = x_template_tab_page_id
407 and template_item_context_id = x_template_item_context_id;
408 -- row has been found so perform update
409 update HR_TEMPLATE_ITEM_CONTEXT_PAGES
410 set TEMPLATE_ITEM_CONTEXT_PAGE_ID = x_tcp_id,
411 OBJECT_VERSION_NUMBER = TO_NUMBER (x_object_version_number),
412 TEMPLATE_TAB_PAGE_ID = X_TEMPLATE_TAB_PAGE_ID,
413 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
414 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
415 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
416 where TEMPLATE_ITEM_CONTEXT_ID = X_TEMPLATE_ITEM_CONTEXT_ID;
417 exception
418 when no_data_found then
419 -- insert row
420 insert into HR_TEMPLATE_ITEM_CONTEXT_PAGES (
421 CREATION_DATE,
422 TEMPLATE_ITEM_CONTEXT_PAGE_ID,
423 OBJECT_VERSION_NUMBER,
424 TEMPLATE_ITEM_CONTEXT_ID,
425 TEMPLATE_TAB_PAGE_ID,
426 LAST_UPDATE_DATE,
427 LAST_UPDATED_BY,
428 LAST_UPDATE_LOGIN,
429 CREATED_BY)
430 values(
431 X_CREATION_DATE,
432 hr_tcp_s.nextval,
433 TO_NUMBER(x_object_version_number),
434 X_TEMPLATE_ITEM_CONTEXT_ID,
435 X_TEMPLATE_TAB_PAGE_ID,
436 X_LAST_UPDATE_DATE,
437 X_LAST_UPDATED_BY,
438 X_LAST_UPDATE_LOGIN,
439 X_CREATED_BY);
440 end;
441
442 /* adhunter jun-2002, bug 2183600
443 this has been absorbed into preceding statement.
444
445 begin
446 UPDATE_ROW (
447 X_TEMPLATE_ITEM_CONTEXT_ID,
448 X_TCP_ID,
449 to_number(X_OBJECT_VERSION_NUMBER),
450 X_TEMPLATE_TAB_PAGE_ID,
451 X_LAST_UPDATE_DATE,
452 X_LAST_UPDATED_BY,
453 X_LAST_UPDATE_LOGIN
454 );
455 exception
456 when no_data_found then
457 INSERT_ROW (
458 X_ROWID,
459 X_TEMPLATE_ITEM_CONTEXT_ID,
460 X_TCP_ID,
461 to_number(X_OBJECT_VERSION_NUMBER),
462 X_TEMPLATE_TAB_PAGE_ID,
463 X_CREATION_DATE,
464 X_CREATED_BY,
465 X_LAST_UPDATE_DATE,
466 X_LAST_UPDATED_BY,
467 X_LAST_UPDATE_LOGIN );
468 end;
469 */
470 end LOAD_ROW;
471 end HR_TCP_PKG;