DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_TEMPLATE_CANVASES_API

Source


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