[Home] [Help]
PACKAGE BODY: APPS.HR_TEMPLATE_WINDOWS_API
Source
1 Package Body hr_template_windows_api as
2 /* $Header: hrtwuapi.pkb 115.5 2003/03/06 17:15:52 adhunter noship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := ' hr_template_windows_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< copy_template_window >--------------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure copy_template_window
13 (p_validate in boolean default false
14 ,p_effective_date in date
15 ,p_language_code in varchar2 default hr_api.userenv_lang
16 ,p_template_window_id_from in number
17 ,p_form_template_id in number
18 ,p_template_window_id_to out nocopy number
19 ,p_object_version_number out nocopy number
20 ) is
21 --
22 -- Declare cursors and local variables
23 --
24
25 CURSOR cur_form_window
26 IS
27 SELECT twn.form_window_id
28 FROM hr_template_windows twn
29 WHERE twn.template_window_id = p_template_window_id_from;
30
31 CURSOR cur_tmplt_canvas
32 IS
33 SELECT tcn.template_canvas_id
34 FROM hr_template_canvases tcn
35 WHERE tcn.template_window_id = p_template_window_id_from;
36
37 l_temp number;
38
39 CURSOR cur_api_val
40 IS
41 SELECT 1 from dual where exists( --added line for 2832106
42 SELECT source_form_template_id
43 FROM hr_source_form_templates hsf
44 WHERE hsf.form_template_id_to = p_form_template_id);
45
46 l_template_canvas_id_to number;
47 l_ovn_canvas number;
48 l_form_window_id number;
49 l_window_property_id number;
50 l_template_window_id_to number;
51 l_object_version_number number;
52 l_language_code fnd_languages.language_code%TYPE;
53
54 l_proc varchar2(72) := g_package||'copy_template_window';
55 begin
56 hr_utility.set_location('Entering:'|| l_proc, 10);
57 --
58 -- Issue a savepoint
59 --
60 savepoint copy_template_window;
61 --
62 -- Truncate the time portion from all IN date parameters
63 --
64 -- p_effective_date := TRUNC(p_effective_date);
65 --
66 -- Validate the language parameter. l_language_code should be passed
67 -- instead of p_language_code from now on, to allow an IN OUT parameter to
68 -- be passed through.
69 --
70 l_language_code := p_language_code;
71 hr_api.validate_language_code(p_language_code => l_language_code);
72 --
73 hr_utility.set_location(l_proc, 20);
74 --
75 --
76 -- Call Before Process User Hook
77 --
78 begin
79 hr_template_windows_api_bk1.copy_template_window_b
80 (p_effective_date => TRUNC(p_effective_date)
81 ,p_language_code => l_language_code
82 ,p_template_window_id_from => p_template_window_id_from
83 ,p_form_template_id => p_form_template_id);
84 exception
85 when hr_api.cannot_find_prog_unit then
86 hr_api.cannot_find_prog_unit_error
87 (p_module_name => 'copy_template_window'
88 ,p_hook_type => 'BP'
89 );
90 end;
91 --
92 -- Validation in addition to Row Handlers
93 --
94 hr_utility.set_location('At:'|| l_proc, 15);
95
96 OPEN cur_api_val;
97 FETCH cur_api_val INTO l_temp;
98 IF (cur_api_val%NOTFOUND AND
99 hr_form_templates_api.g_session_mode <> 'SEED_DATA') THEN
100 CLOSE cur_api_val;
101 -- error message
102 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
103 fnd_message.set_token('PROCEDURE', l_proc);
104 fnd_message.set_token('STEP','10');
105 fnd_message.raise_error;
106 END IF;
107 CLOSE cur_api_val;
108 --
109 --
110 -- Process Logic
111
112 hr_utility.set_location('At:'|| l_proc, 20);
113
114 OPEN cur_form_window;
115 FETCH cur_form_window INTO l_form_window_id;
116 CLOSE cur_form_window;
117
118 hr_utility.set_location('At:'|| l_proc, 25);
119
120 hr_twn_ins.ins( p_form_template_id => p_form_template_id
121 ,p_form_window_id => l_form_window_id
122 ,p_template_window_id => l_template_window_id_to
123 ,p_object_version_number => l_object_version_number);
124
125 hr_utility.set_location('At:'|| l_proc, 30);
126
127 hr_window_properties_bsi.copy_window_property(
128 p_effective_date => TRUNC(p_effective_date)
129 ,p_language_code => l_language_code
130 ,p_template_window_id_from => p_template_window_id_from
131 ,p_template_window_id_to => l_template_window_id_to
132 ,p_window_property_id => l_window_property_id);
133
134 hr_utility.set_location('At:'|| l_proc, 35);
135
136 FOR cur_rec in cur_tmplt_canvas LOOP
137
138 hr_template_canvases_api.copy_template_canvas(
139 p_effective_date => TRUNC(p_effective_date)
140 ,p_language_code => l_language_code
141 ,p_template_canvas_id_from => cur_rec.template_canvas_id
142 ,p_template_window_id => l_template_window_id_to
143 ,p_template_canvas_id_to => l_template_canvas_id_to
144 ,p_object_version_number => l_ovn_canvas);
145 END LOOP;
146 --
147 -- Call After Process User Hook
148 --
149 hr_utility.set_location('At:'|| l_proc, 40);
150
151 begin
152 hr_template_windows_api_bk1.copy_template_window_a
153 (p_effective_date => TRUNC(p_effective_date)
154 ,p_language_code => l_language_code
155 ,p_template_window_id_from => p_template_window_id_from
156 ,p_form_template_id => p_form_template_id
157 ,p_template_window_id_to => l_template_window_id_to
158 ,p_object_version_number => l_object_version_number);
159 exception
160 when hr_api.cannot_find_prog_unit then
161 hr_api.cannot_find_prog_unit_error
162 (p_module_name => 'copy_template_window'
163 ,p_hook_type => 'AP'
164 );
165 end;
166 --
167 -- When in validation only mode raise the Validate_Enabled exception
168 --
169 if p_validate then
170 raise hr_api.validate_enabled;
171 end if;
172 --
173 -- Set all output arguments
174 --
175 p_template_window_id_to := l_template_window_id_to;
176 p_object_version_number := l_object_version_number;
177 --
178 hr_utility.set_location(' Leaving:'||l_proc, 70);
179 exception
180 when hr_api.validate_enabled then
181 --
182 -- As the Validate_Enabled exception has been raised
183 -- we must rollback to the savepoint
184 --
185 rollback to copy_template_window;
186 --
187 -- Only set output warning arguments
188 -- (Any key or derived arguments must be set to null
189 -- when validation only mode is being used.)
190 --
191 p_template_window_id_to := null;
192 p_object_version_number := null;
193 hr_utility.set_location(' Leaving:'||l_proc, 80);
194 when others then
195 --
196 -- A validation or unexpected error has occured
197 --
198 p_template_window_id_to := null;
199 p_object_version_number := null;
200
201 rollback to copy_template_window;
202 hr_utility.set_location(' Leaving:'||l_proc, 90);
203 raise;
204 end copy_template_window;
205 --
206 -- ----------------------------------------------------------------------------
207 -- |--------------------------< create_template_window >----------------------|
208 -- ----------------------------------------------------------------------------
209 --
210 procedure create_template_window
211 (p_validate in boolean default false
212 ,p_effective_date in date
213 ,p_language_code in varchar2 default hr_api.userenv_lang
214 ,p_form_template_id in number
215 ,p_form_window_id in number
216 ,p_height in number default hr_api.g_number
217 ,p_title in varchar2 default hr_api.g_varchar2
218 ,p_width in number default hr_api.g_number
219 ,p_x_position in number default hr_api.g_number
220 ,p_y_position in number default hr_api.g_number
221 ,p_information_category in varchar2 default hr_api.g_varchar2
222 ,p_information1 in varchar2 default hr_api.g_varchar2
223 ,p_information2 in varchar2 default hr_api.g_varchar2
224 ,p_information3 in varchar2 default hr_api.g_varchar2
225 ,p_information4 in varchar2 default hr_api.g_varchar2
226 ,p_information5 in varchar2 default hr_api.g_varchar2
227 ,p_information6 in varchar2 default hr_api.g_varchar2
228 ,p_information7 in varchar2 default hr_api.g_varchar2
229 ,p_information8 in varchar2 default hr_api.g_varchar2
230 ,p_information9 in varchar2 default hr_api.g_varchar2
231 ,p_information10 in varchar2 default hr_api.g_varchar2
232 ,p_information11 in varchar2 default hr_api.g_varchar2
233 ,p_information12 in varchar2 default hr_api.g_varchar2
234 ,p_information13 in varchar2 default hr_api.g_varchar2
235 ,p_information14 in varchar2 default hr_api.g_varchar2
236 ,p_information15 in varchar2 default hr_api.g_varchar2
237 ,p_information16 in varchar2 default hr_api.g_varchar2
238 ,p_information17 in varchar2 default hr_api.g_varchar2
239 ,p_information18 in varchar2 default hr_api.g_varchar2
240 ,p_information19 in varchar2 default hr_api.g_varchar2
241 ,p_information20 in varchar2 default hr_api.g_varchar2
242 ,p_information21 in varchar2 default hr_api.g_varchar2
243 ,p_information22 in varchar2 default hr_api.g_varchar2
244 ,p_information23 in varchar2 default hr_api.g_varchar2
245 ,p_information24 in varchar2 default hr_api.g_varchar2
246 ,p_information25 in varchar2 default hr_api.g_varchar2
247 ,p_information26 in varchar2 default hr_api.g_varchar2
248 ,p_information27 in varchar2 default hr_api.g_varchar2
249 ,p_information28 in varchar2 default hr_api.g_varchar2
250 ,p_information29 in varchar2 default hr_api.g_varchar2
251 ,p_information30 in varchar2 default hr_api.g_varchar2
252 ,p_template_window_id out nocopy number
253 ,p_object_version_number out nocopy number
254 ) is
255 --
256 -- Declare cursors and local variables
257 --
258 l_temp number;
259
260 CURSOR cur_api_val
261 IS
262 SELECT 1 from dual where exists( --added line for 2832106, removed unnecessary joins
263 SELECT source_form_template_id
264 FROM hr_source_form_templates hsf
265 -- ,hr_template_windows_b htw
266 -- ,hr_template_canvases_b htc
267 -- ,hr_template_tab_pages_b http
268 WHERE hsf.form_template_id_to = p_form_template_id);
269
270 CURSOR csr_form_canvases
271 (p_form_window_id IN NUMBER
272 )
273 IS
274 SELECT fcn.form_canvas_id
275 FROM hr_form_canvases_b fcn
276 WHERE fcn.canvas_type = 'CONTENT'
277 AND fcn.form_window_id = p_form_window_id;
278
279 l_window_property_id number;
280 l_template_window_id number;
281 l_object_version_number number;
282 l_proc varchar2(72) := g_package||'create_template_window';
283 l_language_code fnd_languages.language_code%TYPE;
284 l_template_canvas_id number;
285 l_tcn_object_version_number number;
286
287 begin
288 hr_utility.set_location('Entering:'|| l_proc, 10);
289 --
290 -- Issue a savepoint
291 --
292 savepoint create_template_window;
293 --
294 -- Truncate the time portion from all IN date parameters
295 --
296 -- p_effective_date := TRUNC(p_effective_date);
297 --
298 -- Validate the language parameter. l_language_code should be passed
299 -- instead of p_language_code from now on, to allow an IN OUT parameter to
300 -- be passed through.
301 --
302 l_language_code := p_language_code;
303 hr_api.validate_language_code(p_language_code => l_language_code);
304 --
305 hr_utility.set_location(l_proc, 20);
306 --
307 --
308 -- Call Before Process User Hook
309 --
310 begin
311 hr_template_windows_api_bk2.create_template_window_b
312 (p_effective_date => TRUNC(p_effective_date)
313 ,p_language_code => l_language_code
314 ,p_form_template_id => p_form_template_id
315 ,p_form_window_id => p_form_window_id
316 ,p_height => p_height
317 ,p_title => p_title
318 ,p_width => p_width
319 ,p_x_position => p_x_position
320 ,p_y_position => p_y_position
321 ,p_information_category => p_information_category
322 ,p_information1 => p_information1
323 ,p_information2 => p_information2
324 ,p_information3 => p_information3
325 ,p_information4 => p_information4
326 ,p_information5 => p_information5
327 ,p_information6 => p_information6
328 ,p_information7 => p_information7
329 ,p_information8 => p_information8
330 ,p_information9 => p_information9
331 ,p_information10 => p_information10
332 ,p_information11 => p_information11
333 ,p_information12 => p_information12
334 ,p_information13 => p_information13
335 ,p_information14 => p_information14
336 ,p_information15 => p_information15
337 ,p_information16 => p_information16
338 ,p_information17 => p_information17
339 ,p_information18 => p_information18
340 ,p_information19 => p_information19
341 ,p_information20 => p_information20
342 ,p_information21 => p_information21
343 ,p_information22 => p_information22
344 ,p_information23 => p_information23
345 ,p_information24 => p_information24
346 ,p_information25 => p_information25
347 ,p_information26 => p_information26
348 ,p_information27 => p_information27
349 ,p_information28 => p_information28
350 ,p_information29 => p_information29
351 ,p_information30 => p_information30);
352
353 exception
354 when hr_api.cannot_find_prog_unit then
355 hr_api.cannot_find_prog_unit_error
356 (p_module_name => 'create_template_window'
357 ,p_hook_type => 'BP'
358 );
359 end;
360 --
361 -- Validation in addition to Row Handlers
362 --
363 hr_utility.set_location('At:'|| l_proc, 15);
364
365 OPEN cur_api_val;
366 FETCH cur_api_val INTO l_temp;
367 IF (cur_api_val%NOTFOUND AND
368 hr_form_templates_api.g_session_mode <> 'SEED_DATA') THEN
369 CLOSE cur_api_val;
370 -- error message
371 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
372 fnd_message.set_token('PROCEDURE', l_proc);
373 fnd_message.set_token('STEP','10');
374 fnd_message.raise_error;
375 END IF;
376 CLOSE cur_api_val;
377 --
378 --
379 -- Process Logic
380 --
381 hr_utility.set_location('At:'|| l_proc, 20);
382
383 hr_twn_ins.ins( p_form_template_id => p_form_template_id
384 ,p_form_window_id => p_form_window_id
385 ,p_template_window_id => l_template_window_id
386 ,p_object_version_number => l_object_version_number);
387
388 hr_utility.set_location('At:'|| l_proc, 25);
389
390 hr_window_properties_bsi.copy_window_property(
391 p_effective_date => TRUNC(p_effective_date)
392 ,p_language_code => l_language_code
393 ,p_form_window_id => p_form_window_id
394 ,p_template_window_id => l_template_window_id
395 ,p_height => p_height
396 ,p_title => p_title
397 ,p_width => p_width
398 ,p_x_position => p_x_position
399 ,p_y_position => p_y_position
400 ,p_information_category => p_information_category
401 ,p_information1 => p_information1
402 ,p_information2 => p_information2
403 ,p_information3 => p_information3
404 ,p_information4 => p_information4
408 ,p_information8 => p_information8
405 ,p_information5 => p_information5
406 ,p_information6 => p_information6
407 ,p_information7 => p_information7
409 ,p_information9 => p_information9
410 ,p_information10 => p_information10
411 ,p_information11 => p_information11
412 ,p_information12 => p_information12
413 ,p_information13 => p_information13
414 ,p_information14 => p_information14
415 ,p_information15 => p_information15
416 ,p_information16 => p_information16
417 ,p_information17 => p_information17
418 ,p_information18 => p_information18
419 ,p_information19 => p_information19
420 ,p_information20 => p_information20
421 ,p_information21 => p_information21
422 ,p_information22 => p_information22
423 ,p_information23 => p_information23
424 ,p_information24 => p_information24
425 ,p_information25 => p_information25
426 ,p_information26 => p_information26
427 ,p_information27 => p_information27
428 ,p_information28 => p_information28
429 ,p_information29 => p_information29
430 ,p_information30 => p_information30
431 ,p_window_property_id => l_window_property_id);
432
433 --
434 -- Create content canvases
435 --
436 FOR l_form_canvas IN csr_form_canvases(p_form_window_id)
437 LOOP
438 hr_template_canvases_api.create_template_canvas
439 (p_effective_date => TRUNC(p_effective_date)
440 ,p_template_window_id => l_template_window_id
441 ,p_form_canvas_id => l_form_canvas.form_canvas_id
442 ,p_height => p_height
443 ,p_width => p_width
444 ,p_template_canvas_id => l_template_canvas_id
445 ,p_object_version_number => l_tcn_object_version_number
446 );
447 END LOOP;
448 --
449 -- Call After Process User Hook
450 --
451 hr_utility.set_location('At:'|| l_proc, 30);
452
453 begin
454 hr_template_windows_api_bk2.create_template_window_a
455 (p_effective_date => TRUNC(p_effective_date)
456 ,p_language_code => l_language_code
457 ,p_form_template_id => p_form_template_id
458 ,p_form_window_id => p_form_window_id
459 ,p_height => p_height
460 ,p_title => p_title
461 ,p_width => p_width
462 ,p_x_position => p_x_position
463 ,p_y_position => p_y_position
464 ,p_information_category => p_information_category
465 ,p_information1 => p_information1
466 ,p_information2 => p_information2
467 ,p_information3 => p_information3
468 ,p_information4 => p_information4
469 ,p_information5 => p_information5
470 ,p_information6 => p_information6
471 ,p_information7 => p_information7
472 ,p_information8 => p_information8
473 ,p_information9 => p_information9
474 ,p_information10 => p_information10
475 ,p_information11 => p_information11
476 ,p_information12 => p_information12
477 ,p_information13 => p_information13
478 ,p_information14 => p_information14
479 ,p_information15 => p_information15
480 ,p_information16 => p_information16
481 ,p_information17 => p_information17
482 ,p_information18 => p_information18
483 ,p_information19 => p_information19
484 ,p_information20 => p_information20
485 ,p_information21 => p_information21
486 ,p_information22 => p_information22
487 ,p_information23 => p_information23
488 ,p_information24 => p_information24
489 ,p_information25 => p_information25
490 ,p_information26 => p_information26
491 ,p_information27 => p_information27
492 ,p_information28 => p_information28
493 ,p_information29 => p_information29
494 ,p_information30 => p_information30
495 ,p_template_window_id => l_template_window_id
496 ,p_object_version_number => l_object_version_number);
497 exception
498 when hr_api.cannot_find_prog_unit then
499 hr_api.cannot_find_prog_unit_error
500 (p_module_name => 'create_template_window'
501 ,p_hook_type => 'AP'
502 );
503 end;
504 --
505 -- When in validation only mode raise the Validate_Enabled exception
506 --
507 if p_validate then
508 raise hr_api.validate_enabled;
509 end if;
510 --
511 -- Set all output arguments
512 --
513 p_template_window_id := l_template_window_id;
514 p_object_version_number := l_object_version_number;
518 when hr_api.validate_enabled then
515 --
516 hr_utility.set_location(' Leaving:'||l_proc, 70);
517 exception
519 --
520 -- As the Validate_Enabled exception has been raised
521 -- we must rollback to the savepoint
522 --
523 rollback to create_template_window;
524 --
525 -- Only set output warning arguments
526 -- (Any key or derived arguments must be set to null
527 -- when validation only mode is being used.)
528 --
529 p_template_window_id := null;
530 p_object_version_number := null;
531 hr_utility.set_location(' Leaving:'||l_proc, 80);
532 when others then
533 --
534 -- A validation or unexpected error has occured
535 --
536 p_template_window_id := null;
537 p_object_version_number := null;
538
539 rollback to create_template_window;
540 hr_utility.set_location(' Leaving:'||l_proc, 90);
541 raise;
542 end create_template_window;
543 --
544 -- ----------------------------------------------------------------------------
545 -- |--------------------------< delete_template_window >----------------------|
546 -- ----------------------------------------------------------------------------
547 --
548 procedure delete_template_window
549 (p_validate in boolean default false
550 ,p_template_window_id in number
551 ,p_object_version_number in number
552 ,p_delete_children_flag in varchar2 default 'N'
553 ) is
554 --
555 -- Declare cursors and local variables
556 --
557
558 CURSOR csr_template_canvases
559 IS
560 SELECT tcn.template_canvas_id
561 ,tcn.object_version_number
562 FROM hr_template_canvases_b tcn
563 ,hr_form_canvases_b fcn
564 WHERE tcn.template_window_id = p_template_window_id
565 AND tcn.form_canvas_id = fcn.form_canvas_id
566 AND fcn.canvas_type = 'CONTENT';
567
568 CURSOR cur_tmplt_canvas
569 IS
570 SELECT template_canvas_id
571 ,object_version_number
572 FROM hr_template_canvases
573 WHERE template_window_id = p_template_window_id;
574
575 l_temp number;
576
577 CURSOR cur_api_val
578 IS
579 SELECT 1 from dual where exists( --added line for 2832106
580 SELECT source_form_template_id
581 FROM hr_source_form_templates hsf
582 ,hr_template_windows_b htw
583 WHERE hsf.form_template_id_to = htw.form_template_id
584 AND htw.template_window_id = p_template_window_id);
585
586 l_proc varchar2(72) := g_package||'delete_template_window';
587 begin
588 hr_utility.set_location('Entering:'|| l_proc, 10);
589 --
590 -- Issue a savepoint
591 --
592 savepoint delete_template_window;
593 --
594 -- Call Before Process User Hook
595 --
596 begin
597 hr_template_windows_api_bk3.delete_template_window_b
598 (p_template_window_id => p_template_window_id
599 ,p_object_version_number => p_object_version_number
600 ,p_delete_children_flag => p_delete_children_flag);
601 exception
602 when hr_api.cannot_find_prog_unit then
603 hr_api.cannot_find_prog_unit_error
604 (p_module_name => 'delete_template_window'
605 ,p_hook_type => 'BP'
606 );
607 end;
608 --
609 -- Validation in addition to Row Handlers
610 --
611 hr_utility.set_location('At:'|| l_proc, 35);
612
613 OPEN cur_api_val;
614 FETCH cur_api_val INTO l_temp;
615 IF (cur_api_val%NOTFOUND AND
616 hr_form_templates_api.g_session_mode <> 'SEED_DATA') THEN
617 CLOSE cur_api_val;
618 -- error message
619 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
620 fnd_message.set_token('PROCEDURE', l_proc);
621 fnd_message.set_token('STEP','10');
622 fnd_message.raise_error;
623 END IF;
624 CLOSE cur_api_val;
625 --
626 --
627 -- Process Logic
628 --
629 hr_utility.set_location('At:'|| l_proc, 40);
630
631 hr_twn_shd.lck( p_template_window_id => p_template_window_id
632 ,p_object_version_number => p_object_version_number);
633
634 hr_utility.set_location('At:'|| l_proc, 45);
635
636 --
637 -- Delete content canvases
638 --
639 FOR l_template_canvas IN csr_template_canvases
640 LOOP
641 hr_template_canvases_api.delete_template_canvas
642 (p_template_canvas_id => l_template_canvas.template_canvas_id
643 ,p_object_version_number => l_template_canvas.object_version_number
644 ,p_delete_children_flag => p_delete_children_flag
645 );
646 END LOOP;
647 --
648 IF p_delete_children_flag = 'Y' THEN
649 FOR cur_rec IN cur_tmplt_canvas LOOP
650 hr_template_canvases_api.delete_template_canvas(
651 p_template_canvas_id => cur_rec.template_canvas_id
652 ,p_object_version_number => cur_rec.object_version_number
653 ,p_delete_children_flag => p_delete_children_flag);
654 END LOOP;
655 END IF;
656 hr_utility.set_location('At:'|| l_proc, 50);
657
658 hr_window_properties_bsi.delete_window_property(
659 p_template_window_id => p_template_window_id);
660
661 hr_utility.set_location('At:'|| l_proc, 55);
662
663 hr_twn_del.del( p_template_window_id => p_template_window_id
667
664 ,p_object_version_number => p_object_version_number);
665
666 hr_utility.set_location('At:'|| l_proc, 60);
668 --
669 -- Call After Process User Hook
670 --
671 begin
672 hr_template_windows_api_bk3.delete_template_window_a
673 (p_template_window_id => p_template_window_id
674 ,p_object_version_number => p_object_version_number
675 ,p_delete_children_flag => p_delete_children_flag);
676 exception
677 when hr_api.cannot_find_prog_unit then
678 hr_api.cannot_find_prog_unit_error
679 (p_module_name => 'delete_template_window'
680 ,p_hook_type => 'AP'
681 );
682 end;
683 --
684 -- When in validation only mode raise the Validate_Enabled exception
685 --
686 if p_validate then
687 raise hr_api.validate_enabled;
688 end if;
689 --
690 hr_utility.set_location(' Leaving:'||l_proc, 70);
691 exception
692 when hr_api.validate_enabled then
693 --
694 -- As the Validate_Enabled exception has been raised
695 -- we must rollback to the savepoint
696 --
697 rollback to delete_template_window;
698 --
699 -- Only set output warning arguments
700 -- (Any key or derived arguments must be set to null
701 -- when validation only mode is being used.)
702 --
703 hr_utility.set_location(' Leaving:'||l_proc, 80);
704 when others then
705 --
706 -- A validation or unexpected error has occured
707 --
708 rollback to delete_template_window;
709 hr_utility.set_location(' Leaving:'||l_proc, 90);
710 raise;
711 end delete_template_window;
712 --
713 -- ----------------------------------------------------------------------------
714 -- |--------------------------< update_template_window >----------------------|
715 -- ----------------------------------------------------------------------------
716 --
717 procedure update_template_window
718 (p_validate in boolean default false
719 ,p_effective_date in date
720 ,p_language_code in varchar2 default hr_api.userenv_lang
721 ,p_template_window_id in number
722 ,p_object_version_number in out nocopy number
723 ,p_height in number default hr_api.g_number
724 ,p_title in varchar2 default hr_api.g_varchar2
725 ,p_width in number default hr_api.g_number
726 ,p_x_position in number default hr_api.g_number
727 ,p_y_position in number default hr_api.g_number
728 ,p_information_category in varchar2 default hr_api.g_varchar2
729 ,p_information1 in varchar2 default hr_api.g_varchar2
730 ,p_information2 in varchar2 default hr_api.g_varchar2
731 ,p_information3 in varchar2 default hr_api.g_varchar2
732 ,p_information4 in varchar2 default hr_api.g_varchar2
733 ,p_information5 in varchar2 default hr_api.g_varchar2
734 ,p_information6 in varchar2 default hr_api.g_varchar2
735 ,p_information7 in varchar2 default hr_api.g_varchar2
736 ,p_information8 in varchar2 default hr_api.g_varchar2
737 ,p_information9 in varchar2 default hr_api.g_varchar2
738 ,p_information10 in varchar2 default hr_api.g_varchar2
739 ,p_information11 in varchar2 default hr_api.g_varchar2
740 ,p_information12 in varchar2 default hr_api.g_varchar2
741 ,p_information13 in varchar2 default hr_api.g_varchar2
742 ,p_information14 in varchar2 default hr_api.g_varchar2
743 ,p_information15 in varchar2 default hr_api.g_varchar2
744 ,p_information16 in varchar2 default hr_api.g_varchar2
745 ,p_information17 in varchar2 default hr_api.g_varchar2
746 ,p_information18 in varchar2 default hr_api.g_varchar2
747 ,p_information19 in varchar2 default hr_api.g_varchar2
748 ,p_information20 in varchar2 default hr_api.g_varchar2
749 ,p_information21 in varchar2 default hr_api.g_varchar2
750 ,p_information22 in varchar2 default hr_api.g_varchar2
751 ,p_information23 in varchar2 default hr_api.g_varchar2
752 ,p_information24 in varchar2 default hr_api.g_varchar2
753 ,p_information25 in varchar2 default hr_api.g_varchar2
754 ,p_information26 in varchar2 default hr_api.g_varchar2
755 ,p_information27 in varchar2 default hr_api.g_varchar2
756 ,p_information28 in varchar2 default hr_api.g_varchar2
757 ,p_information29 in varchar2 default hr_api.g_varchar2
758 ,p_information30 in varchar2 default hr_api.g_varchar2
759 ) is
760 --
761 -- Declare cursors and local variables
762 --
763
764 CURSOR cur_tmplt_canvas
765 IS
766 SELECT tcn.template_canvas_id
767 ,tcn.object_version_number
768 ,twn.height
769 ,twn.width
770 FROM hr_template_windows twn
771 ,hr_form_canvases fcn
772 ,hr_template_canvases tcn
773 WHERE twn.template_window_id = p_template_window_id
774 AND fcn.canvas_type = 'CONTENT'
775 AND fcn.form_canvas_id = tcn.form_canvas_id
776 AND tcn.template_window_id = p_template_window_id;
777
778 l_temp number;
779
780 CURSOR cur_api_val
781 IS
782 SELECT 1 from dual where exists( --added line for 2832106, removed unnecessary joins
783 SELECT source_form_template_id
784 FROM hr_source_form_templates hsf
785 ,hr_template_windows_b htw
786 -- ,hr_template_canvases_b htc
790
787 -- ,hr_template_tab_pages_b http
788 WHERE hsf.form_template_id_to = htw.form_template_id
789 AND htw.template_window_id = p_template_window_id);
791 l_proc varchar2(72) := g_package||'update_template_window';
792 l_object_version_number number;
793 l_language_code fnd_languages.language_code%TYPE;
794
795 begin
796 hr_utility.set_location('Entering:'|| l_proc, 10);
797 --
798 -- Issue a savepoint
799 --
800 savepoint update_template_window;
801 --
802 -- Truncate the time portion from all IN date parameters
803 --
804 -- p_effective_date := TRUNC(p_effective_date);
805 l_object_version_number := p_object_version_number;
806 --
807 -- Validate the language parameter. l_language_code should be passed
808 -- instead of p_language_code from now on, to allow an IN OUT parameter to
809 -- be passed through.
810 --
811 l_language_code := p_language_code;
812 hr_api.validate_language_code(p_language_code => l_language_code);
813 --
814 hr_utility.set_location(l_proc, 20);
815 --
816 --
817 -- Call Before Process User Hook
818 --
819 begin
820 hr_template_windows_api_bk4.update_template_window_b
821 (p_effective_date => TRUNC(p_effective_date)
822 ,p_language_code => l_language_code
823 ,p_template_window_id => p_template_window_id
824 ,p_object_version_number => l_object_version_number
825 ,p_height => p_height
826 ,p_title => p_title
827 ,p_width => p_width
828 ,p_x_position => p_x_position
829 ,p_y_position => p_y_position
830 ,p_information_category => p_information_category
831 ,p_information1 => p_information1
832 ,p_information2 => p_information2
833 ,p_information3 => p_information3
834 ,p_information4 => p_information4
835 ,p_information5 => p_information5
836 ,p_information6 => p_information6
837 ,p_information7 => p_information7
838 ,p_information8 => p_information8
839 ,p_information9 => p_information9
840 ,p_information10 => p_information10
841 ,p_information11 => p_information11
842 ,p_information12 => p_information12
843 ,p_information13 => p_information13
844 ,p_information14 => p_information14
845 ,p_information15 => p_information15
846 ,p_information16 => p_information16
847 ,p_information17 => p_information17
848 ,p_information18 => p_information18
849 ,p_information19 => p_information19
850 ,p_information20 => p_information20
851 ,p_information21 => p_information21
852 ,p_information22 => p_information22
853 ,p_information23 => p_information23
854 ,p_information24 => p_information24
855 ,p_information25 => p_information25
856 ,p_information26 => p_information26
857 ,p_information27 => p_information27
858 ,p_information28 => p_information28
859 ,p_information29 => p_information29
860 ,p_information30 => p_information30);
861 exception
862 when hr_api.cannot_find_prog_unit then
863 hr_api.cannot_find_prog_unit_error
864 (p_module_name => 'update_template_window'
865 ,p_hook_type => 'BP'
866 );
867 end;
868 --
869 -- Validation in addition to Row Handlers
870 --
871 hr_utility.set_location('At:'|| l_proc, 15);
872
873 OPEN cur_api_val;
874 FETCH cur_api_val INTO l_temp;
875 IF (cur_api_val%NOTFOUND AND
876 hr_form_templates_api.g_session_mode <> 'SEED_DATA') THEN
877 CLOSE cur_api_val;
878 -- error message
879 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
880 fnd_message.set_token('PROCEDURE', l_proc);
881 fnd_message.set_token('STEP','10');
882 fnd_message.raise_error;
883 END IF;
884 CLOSE cur_api_val;
885 --
886 --
887 -- Process Logic
888 --
889 hr_utility.set_location('At:'|| l_proc, 20);
890
891 hr_twn_shd.lck( p_template_window_id => p_template_window_id
892 ,p_object_version_number => p_object_version_number);
893
894 hr_utility.set_location('At:'|| l_proc, 25);
895
896 hr_window_properties_bsi.update_window_property(
897 p_effective_date => TRUNC(p_effective_date)
898 ,p_language_code => l_language_code
899 ,p_template_window_id => p_template_window_id
900 ,p_height => p_height
901 ,p_title => p_title
902 ,p_width => p_width
903 ,p_x_position => p_x_position
904 ,p_y_position => p_y_position
905 ,p_information_category => p_information_category
906 ,p_information1 => p_information1
910 ,p_information5 => p_information5
907 ,p_information2 => p_information2
908 ,p_information3 => p_information3
909 ,p_information4 => p_information4
911 ,p_information6 => p_information6
912 ,p_information7 => p_information7
913 ,p_information8 => p_information8
914 ,p_information9 => p_information9
915 ,p_information10 => p_information10
916 ,p_information11 => p_information11
917 ,p_information12 => p_information12
918 ,p_information13 => p_information13
919 ,p_information14 => p_information14
920 ,p_information15 => p_information15
921 ,p_information16 => p_information16
922 ,p_information17 => p_information17
923 ,p_information18 => p_information18
924 ,p_information19 => p_information19
925 ,p_information20 => p_information20
926 ,p_information21 => p_information21
927 ,p_information22 => p_information22
928 ,p_information23 => p_information23
929 ,p_information24 => p_information24
930 ,p_information25 => p_information25
931 ,p_information26 => p_information26
932 ,p_information27 => p_information27
933 ,p_information28 => p_information28
934 ,p_information29 => p_information29
935 ,p_information30 => p_information30);
936
937 hr_utility.set_location('At:'|| l_proc, 30);
938
939 FOR cur_rec IN cur_tmplt_canvas LOOP
940
941 hr_template_canvases_api.update_template_canvas(
942 p_effective_date => TRUNC(p_effective_date)
943 ,p_template_canvas_id => cur_rec.template_canvas_id
944 ,p_height => cur_rec.height
945 ,p_width => cur_rec.width
946 ,p_object_version_number => cur_rec.object_version_number);
947
948 END LOOP;
949
950 hr_utility.set_location('At:'|| l_proc, 35);
951
952 --
953 -- Call After Process User Hook
954 --
955 begin
956 hr_template_windows_api_bk4.update_template_window_a
957 (p_effective_date => TRUNC(p_effective_date)
958 ,p_language_code => l_language_code
959 ,p_template_window_id => p_template_window_id
960 ,p_object_version_number => l_object_version_number
961 ,p_height => p_height
962 ,p_title => p_title
963 ,p_width => p_width
964 ,p_x_position => p_x_position
965 ,p_y_position => p_y_position
966 ,p_information_category => p_information_category
967 ,p_information1 => p_information1
968 ,p_information2 => p_information2
969 ,p_information3 => p_information3
970 ,p_information4 => p_information4
971 ,p_information5 => p_information5
972 ,p_information6 => p_information6
973 ,p_information7 => p_information7
974 ,p_information8 => p_information8
975 ,p_information9 => p_information9
976 ,p_information10 => p_information10
977 ,p_information11 => p_information11
978 ,p_information12 => p_information12
979 ,p_information13 => p_information13
980 ,p_information14 => p_information14
981 ,p_information15 => p_information15
982 ,p_information16 => p_information16
983 ,p_information17 => p_information17
984 ,p_information18 => p_information18
985 ,p_information19 => p_information19
986 ,p_information20 => p_information20
987 ,p_information21 => p_information21
988 ,p_information22 => p_information22
989 ,p_information23 => p_information23
990 ,p_information24 => p_information24
991 ,p_information25 => p_information25
992 ,p_information26 => p_information26
993 ,p_information27 => p_information27
994 ,p_information28 => p_information28
995 ,p_information29 => p_information29
996 ,p_information30 => p_information30);
997 exception
998 when hr_api.cannot_find_prog_unit then
999 hr_api.cannot_find_prog_unit_error
1000 (p_module_name => 'update_template_window'
1001 ,p_hook_type => 'AP'
1002 );
1003 end;
1004 --
1005 -- When in validation only mode raise the Validate_Enabled exception
1006 --
1007 if p_validate then
1008 raise hr_api.validate_enabled;
1009 end if;
1010 --
1011 -- Set all output arguments
1012 --
1013 p_object_version_number := l_object_version_number;
1014 --
1015 hr_utility.set_location(' Leaving:'||l_proc, 70);
1016 exception
1017 when hr_api.validate_enabled then
1018 --
1019 -- As the Validate_Enabled exception has been raised
1020 -- we must rollback to the savepoint
1021 --
1022 rollback to update_template_window;
1023 --
1024 -- Only set output warning arguments
1025 -- (Any key or derived arguments must be set to null
1026 -- when validation only mode is being used.)
1027 --
1028 hr_utility.set_location(' Leaving:'||l_proc, 80);
1029 when others then
1030 --
1031 -- A validation or unexpected error has occured
1032 --
1033 rollback to update_template_window;
1034 hr_utility.set_location(' Leaving:'||l_proc, 90);
1035 raise;
1036 end update_template_window;
1037 --
1038 end hr_template_windows_api;