DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_TEMPLATE_ITEMS_API

Source


1 Package Body hr_template_items_api as
2 /* $Header: hrtimapi.pkb 120.1 2007/11/26 05:58:17 ktithy ship $ */
3   --
4   -- Package Variables
5   --
6   g_package  varchar2(33) := '  hr_template_items_api.';
7 --
8 PROCEDURE update_template_item_contexts
9   (p_effective_date               IN     DATE
10   ,p_language_code                IN     VARCHAR2 DEFAULT hr_api.userenv_lang
11   ,p_template_item_id             IN     NUMBER
12   ,p_alignment                    IN     NUMBER   DEFAULT hr_api.g_number
13   ,p_bevel                        IN     NUMBER   DEFAULT hr_api.g_number
14   ,p_case_restriction             IN     NUMBER   DEFAULT hr_api.g_number
15   ,p_default_value                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
16   ,p_enabled                      IN     NUMBER   DEFAULT hr_api.g_number
17   ,p_format_mask                  IN     VARCHAR2 DEFAULT hr_api.g_varchar2
18   ,p_height                       IN     NUMBER   DEFAULT hr_api.g_number
19   ,p_information_formula_id       IN     NUMBER   DEFAULT hr_api.g_number
20   ,p_information_param_item_id1   IN     NUMBER   DEFAULT hr_api.g_number
21   ,p_information_param_item_id2   IN     NUMBER   DEFAULT hr_api.g_number
22   ,p_information_param_item_id3   IN     NUMBER   DEFAULT hr_api.g_number
23   ,p_information_param_item_id4   IN     NUMBER   DEFAULT hr_api.g_number
24   ,p_information_param_item_id5   IN     NUMBER   DEFAULT hr_api.g_number
25   ,p_information_prompt           IN     VARCHAR2 DEFAULT hr_api.g_varchar2
26   ,p_insert_allowed               IN     NUMBER   DEFAULT hr_api.g_number
27   ,p_label                        IN     VARCHAR2 DEFAULT hr_api.g_varchar2
28   ,p_next_navigation_item_id      IN     NUMBER   DEFAULT hr_api.g_number
29   ,p_previous_navigation_item_id  IN     NUMBER   DEFAULT hr_api.g_number
30   ,p_prompt_text                  IN     VARCHAR2 DEFAULT hr_api.g_varchar2
31   ,p_prompt_alignment_offset      IN     NUMBER   DEFAULT hr_api.g_number
32   ,p_prompt_display_style         IN     NUMBER   DEFAULT hr_api.g_number
33   ,p_prompt_edge                  IN     NUMBER   DEFAULT hr_api.g_number
34   ,p_prompt_edge_alignment        IN     NUMBER   DEFAULT hr_api.g_number
35   ,p_prompt_edge_offset           IN     NUMBER   DEFAULT hr_api.g_number
36   ,p_prompt_text_alignment        IN     NUMBER   DEFAULT hr_api.g_number
37   ,p_query_allowed                IN     NUMBER   DEFAULT hr_api.g_number
38   ,p_required                     IN     NUMBER   DEFAULT hr_api.g_number
39   ,p_tooltip_text                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
40   ,p_update_allowed               IN     NUMBER   DEFAULT hr_api.g_number
41   ,p_validation_formula_id        IN     NUMBER   DEFAULT hr_api.g_number
42   ,p_validation_param_item_id1    IN     NUMBER   DEFAULT hr_api.g_number
43   ,p_validation_param_item_id2    IN     NUMBER   DEFAULT hr_api.g_number
44   ,p_validation_param_item_id3    IN     NUMBER   DEFAULT hr_api.g_number
45   ,p_validation_param_item_id4    IN     NUMBER   DEFAULT hr_api.g_number
46   ,p_validation_param_item_id5    IN     NUMBER   DEFAULT hr_api.g_number
47   ,p_visible                      IN     NUMBER   DEFAULT hr_api.g_number
48   ,p_width                        IN     NUMBER   DEFAULT hr_api.g_number
49   ,p_x_position                   IN     NUMBER   DEFAULT hr_api.g_number
50   ,p_y_position                   IN     NUMBER   DEFAULT hr_api.g_number
51   ,p_information_category         IN     VARCHAR2 DEFAULT hr_api.g_varchar2
52   ,p_information1                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
53   ,p_information2                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
54   ,p_information3                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
55   ,p_information4                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
56   ,p_information5                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
57   ,p_information6                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
58   ,p_information7                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
59   ,p_information8                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
60   ,p_information9                 IN     VARCHAR2 DEFAULT hr_api.g_varchar2
61   ,p_information10                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
62   ,p_information11                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
63   ,p_information12                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
64   ,p_information13                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
65   ,p_information14                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
66   ,p_information15                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
67   ,p_information16                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
68   ,p_information17                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
69   ,p_information18                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
70   ,p_information19                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
71   ,p_information20                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
72   ,p_information21                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
73   ,p_information22                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
74   ,p_information23                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
75   ,p_information24                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
76   ,p_information25                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
77   ,p_information26                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
78   ,p_information27                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
79   ,p_information28                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
80   ,p_information29                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
81   ,p_information30                IN     VARCHAR2 DEFAULT hr_api.g_varchar2
82   )
83 IS
84   --
85   CURSOR csr_template_item_contexts
86     (p_language_code                IN     VARCHAR2
87     ,p_template_item_id             IN     NUMBER
88     )
89   IS
90     SELECT tic.template_item_context_id
91           ,tic.object_version_number
92           ,itp.alignment
93           ,itp.bevel
94           ,itp.case_restriction
95           ,ipt.default_value
96           ,itp.enabled
97           ,itp.format_mask
98           ,itp.height
99           ,itp.information_formula_id
100           ,itp.information_parameter_item_id1
101           ,itp.information_parameter_item_id2
102           ,itp.information_parameter_item_id3
103           ,itp.information_parameter_item_id4
104           ,itp.information_parameter_item_id5
105           ,ipt.information_prompt
106           ,itp.insert_allowed
107           ,ipt.label
108           ,itp.next_navigation_item_id
109           ,itp.previous_navigation_item_id
110           ,ipt.prompt_text
111           ,itp.prompt_alignment_offset
112           ,itp.prompt_display_style
113           ,itp.prompt_edge
114           ,itp.prompt_edge_alignment
115           ,itp.prompt_edge_offset
116           ,itp.prompt_text_alignment
117           ,itp.query_allowed
118           ,itp.required
119           ,ipt.tooltip_text
120           ,itp.update_allowed
121           ,itp.validation_formula_id
122           ,itp.validation_parameter_item_id1
123           ,itp.validation_parameter_item_id2
124           ,itp.validation_parameter_item_id3
125           ,itp.validation_parameter_item_id4
126           ,itp.validation_parameter_item_id5
127           ,itp.visible
128           ,itp.width
129           ,itp.x_position
130           ,itp.y_position
131           ,itp.information_category
132           ,itp.information1
133           ,itp.information2
134           ,itp.information3
135           ,itp.information4
136           ,itp.information5
137           ,itp.information6
138           ,itp.information7
139           ,itp.information8
140           ,itp.information9
141           ,itp.information10
142           ,itp.information11
143           ,itp.information12
144           ,itp.information13
145           ,itp.information14
146           ,itp.information15
147           ,itp.information16
148           ,itp.information17
149           ,itp.information18
150           ,itp.information19
151           ,itp.information20
152           ,itp.information21
153           ,itp.information22
154           ,itp.information23
155           ,itp.information24
156           ,itp.information25
157           ,itp.information26
158           ,itp.information27
159           ,itp.information28
160           ,itp.information29
161           ,itp.information30
162       FROM hr_item_properties_tl ipt
163           ,hr_item_properties_b itp
164           ,hr_template_item_contexts_b tic
165      WHERE ipt.language = p_language_code
166        AND ipt.item_property_id = itp.item_property_id
167        AND itp.template_item_context_id = tic.template_item_context_id
168        AND tic.template_item_id = p_template_item_id;
169   l_template_item_context        csr_template_item_contexts%ROWTYPE;
170   --
171   CURSOR csr_template_items
172     (p_language_code                IN     VARCHAR2
173     ,p_template_item_id             IN     NUMBER
174     )
175   IS
176     SELECT itp.alignment
177           ,itp.bevel
178           ,itp.case_restriction
179           ,ipt.default_value
180           ,itp.enabled
181           ,itp.format_mask
182           ,itp.height
183           ,itp.information_formula_id
184           ,itp.information_parameter_item_id1
185           ,itp.information_parameter_item_id2
186           ,itp.information_parameter_item_id3
187           ,itp.information_parameter_item_id4
188           ,itp.information_parameter_item_id5
189           ,ipt.information_prompt
190           ,itp.insert_allowed
191           ,ipt.label
192           ,itp.next_navigation_item_id
193           ,itp.previous_navigation_item_id
194           ,ipt.prompt_text
195           ,itp.prompt_alignment_offset
196           ,itp.prompt_display_style
197           ,itp.prompt_edge
198           ,itp.prompt_edge_alignment
199           ,itp.prompt_edge_offset
200           ,itp.prompt_text_alignment
201           ,itp.query_allowed
202           ,itp.required
203           ,ipt.tooltip_text
204           ,itp.update_allowed
205           ,itp.validation_formula_id
206           ,itp.validation_parameter_item_id1
207           ,itp.validation_parameter_item_id2
208           ,itp.validation_parameter_item_id3
209           ,itp.validation_parameter_item_id4
210           ,itp.validation_parameter_item_id5
211           ,itp.visible
212           ,itp.width
213           ,itp.x_position
214           ,itp.y_position
215           ,itp.information_category
216           ,itp.information1
217           ,itp.information2
218           ,itp.information3
219           ,itp.information4
220           ,itp.information5
221           ,itp.information6
222           ,itp.information7
223           ,itp.information8
224           ,itp.information9
225           ,itp.information10
226           ,itp.information11
227           ,itp.information12
228           ,itp.information13
229           ,itp.information14
230           ,itp.information15
231           ,itp.information16
232           ,itp.information17
233           ,itp.information18
234           ,itp.information19
235           ,itp.information20
236           ,itp.information21
237           ,itp.information22
238           ,itp.information23
239           ,itp.information24
240           ,itp.information25
241           ,itp.information26
242           ,itp.information27
243           ,itp.information28
244           ,itp.information29
245           ,itp.information30
246       FROM hr_item_properties_tl ipt
247           ,hr_item_properties_b itp
248      WHERE ipt.language = p_language_code
249        AND ipt.item_property_id = itp.item_property_id
250        AND itp.template_item_id = p_template_item_id;
251   l_template_item                csr_template_items%ROWTYPE;
252   --
253   l_proc                         VARCHAR2(72) := g_package||'update_template_item_contexts';
254   l_warning                      BOOLEAN;
255 --
256 BEGIN
257   --
258   hr_utility.set_location('Entering:'||l_proc,10);
259   --
260   -- Only process if contexts exist for the item
261   --
262   OPEN csr_template_item_contexts
263     (p_language_code                => p_language_code
264     ,p_template_item_id             => p_template_item_id
265     );
266   FETCH csr_template_item_contexts INTO l_template_item_context;
267   IF (csr_template_item_contexts%NOTFOUND)
268   THEN
269     CLOSE csr_template_item_contexts;
270     RETURN;
271   END IF;
272   CLOSE csr_template_item_contexts;
273   --
274   hr_utility.set_location(l_proc,20);
275   --
276   -- Get the original item properties
277   --
278   OPEN csr_template_items
279     (p_language_code                => p_language_code
280     ,p_template_item_id             => p_template_item_id
281     );
282   FETCH csr_template_items INTO l_template_item;
283   CLOSE csr_template_items;
284   --
285   hr_utility.set_location(l_proc,30);
286   --
287   -- For each item context
288   --
289   FOR l_template_item_context IN csr_template_item_contexts
290     (p_language_code                => p_language_code
291     ,p_template_item_id             => p_template_item_id
292     )
293   LOOP
294     --
295     hr_utility.set_location(l_proc,40);
296     --
297     -- If context property equals previous item property then context property
298     -- becomes new item property.
299     --
300     IF (NVL(l_template_item_context.alignment,hr_api.g_number) = NVL(l_template_item.alignment,hr_api.g_number)) THEN
301       l_template_item_context.alignment := p_alignment;
302     END IF;
303     IF (NVL(l_template_item_context.bevel,hr_api.g_number) = NVL(l_template_item.bevel,hr_api.g_number)) THEN
304       l_template_item_context.bevel := p_bevel;
305     END IF;
306     IF (NVL(l_template_item_context.case_restriction,hr_api.g_number) = NVL(l_template_item.case_restriction,hr_api.g_number)) THEN
307       l_template_item_context.case_restriction := p_case_restriction;
308     END IF;
309     IF (NVL(l_template_item_context.default_value,hr_api.g_varchar2) = NVL(l_template_item.default_value,hr_api.g_varchar2)) THEN
310       l_template_item_context.default_value := p_default_value;
311     END IF;
312     IF (NVL(l_template_item_context.enabled,hr_api.g_number) = NVL(l_template_item.enabled,hr_api.g_number)) THEN
313       l_template_item_context.enabled := p_enabled;
314     END IF;
315     IF (NVL(l_template_item_context.format_mask,hr_api.g_varchar2) = NVL(l_template_item.format_mask,hr_api.g_varchar2)) THEN
316       l_template_item_context.format_mask := p_format_mask;
317     END IF;
318     IF (NVL(l_template_item_context.height,hr_api.g_number) = NVL(l_template_item.height,hr_api.g_number)) THEN
319       l_template_item_context.height := p_height;
320     END IF;
321     IF (NVL(l_template_item_context.information_formula_id,hr_api.g_number) = NVL(l_template_item.information_formula_id,hr_api.g_number)) THEN
322       l_template_item_context.information_formula_id := p_information_formula_id;
323     END IF;
324     IF (NVL(l_template_item_context.information_parameter_item_id1,hr_api.g_number) = NVL(l_template_item.information_parameter_item_id1,hr_api.g_number)) THEN
325       l_template_item_context.information_parameter_item_id1 := p_information_param_item_id1;
326     END IF;
327     IF (NVL(l_template_item_context.information_parameter_item_id2,hr_api.g_number) = NVL(l_template_item.information_parameter_item_id2,hr_api.g_number)) THEN
328       l_template_item_context.information_parameter_item_id2 := p_information_param_item_id2;
329     END IF;
330     IF (NVL(l_template_item_context.information_parameter_item_id3,hr_api.g_number) = NVL(l_template_item.information_parameter_item_id3,hr_api.g_number)) THEN
331       l_template_item_context.information_parameter_item_id3 := p_information_param_item_id3;
332     END IF;
333     IF (NVL(l_template_item_context.information_parameter_item_id4,hr_api.g_number) = NVL(l_template_item.information_parameter_item_id4,hr_api.g_number)) THEN
334       l_template_item_context.information_parameter_item_id4 := p_information_param_item_id4;
335     END IF;
336     IF (NVL(l_template_item_context.information_parameter_item_id5,hr_api.g_number) = NVL(l_template_item.information_parameter_item_id5,hr_api.g_number)) THEN
337       l_template_item_context.information_parameter_item_id5 := p_information_param_item_id5;
338     END IF;
339     IF (NVL(l_template_item_context.information_prompt,hr_api.g_varchar2) = NVL(l_template_item.information_prompt,hr_api.g_varchar2)) THEN
340       l_template_item_context.information_prompt := p_information_prompt;
341     END IF;
342     IF (NVL(l_template_item_context.insert_allowed,hr_api.g_number) = NVL(l_template_item.insert_allowed,hr_api.g_number)) THEN
343       l_template_item_context.insert_allowed := p_insert_allowed;
344     END IF;
345     IF (NVL(l_template_item_context.label,hr_api.g_varchar2) = NVL(l_template_item.label,hr_api.g_varchar2)) THEN
346       l_template_item_context.label := p_label;
347     END IF;
348     IF (NVL(l_template_item_context.next_navigation_item_id,hr_api.g_number) = NVL(l_template_item.next_navigation_item_id,hr_api.g_number)) THEN
349       l_template_item_context.next_navigation_item_id := p_next_navigation_item_id;
350     END IF;
351     IF (NVL(l_template_item_context.previous_navigation_item_id,hr_api.g_number) = NVL(l_template_item.previous_navigation_item_id,hr_api.g_number)) THEN
352       l_template_item_context.previous_navigation_item_id := p_previous_navigation_item_id;
353     END IF;
354     IF (NVL(l_template_item_context.prompt_text,hr_api.g_varchar2) = NVL(l_template_item.prompt_text,hr_api.g_varchar2)) THEN
355       l_template_item_context.prompt_text := p_prompt_text;
356     END IF;
357     IF (NVL(l_template_item_context.prompt_alignment_offset,hr_api.g_number) = NVL(l_template_item.prompt_alignment_offset,hr_api.g_number)) THEN
358       l_template_item_context.prompt_alignment_offset := p_prompt_alignment_offset;
359     END IF;
360     IF (NVL(l_template_item_context.prompt_display_style,hr_api.g_number) = NVL(l_template_item.prompt_display_style,hr_api.g_number)) THEN
361       l_template_item_context.prompt_display_style := p_prompt_display_style;
362     END IF;
363     IF (NVL(l_template_item_context.prompt_edge,hr_api.g_number) = NVL(l_template_item.prompt_edge,hr_api.g_number)) THEN
364       l_template_item_context.prompt_edge := p_prompt_edge;
365     END IF;
366     IF (NVL(l_template_item_context.prompt_edge_alignment,hr_api.g_number) = NVL(l_template_item.prompt_edge_alignment,hr_api.g_number)) THEN
367       l_template_item_context.prompt_edge_alignment := p_prompt_edge_alignment;
368     END IF;
369     IF (NVL(l_template_item_context.prompt_edge_offset,hr_api.g_number) = NVL(l_template_item.prompt_edge_offset,hr_api.g_number)) THEN
370       l_template_item_context.prompt_edge_offset := p_prompt_edge_offset;
371     END IF;
372     IF (NVL(l_template_item_context.prompt_text_alignment,hr_api.g_number) = NVL(l_template_item.prompt_text_alignment,hr_api.g_number)) THEN
373       l_template_item_context.prompt_text_alignment := p_prompt_text_alignment;
374     END IF;
375     IF (NVL(l_template_item_context.query_allowed,hr_api.g_number) = NVL(l_template_item.query_allowed,hr_api.g_number)) THEN
376       l_template_item_context.query_allowed := p_query_allowed;
377     END IF;
378     IF (NVL(l_template_item_context.required,hr_api.g_number) = NVL(l_template_item.required,hr_api.g_number)) THEN
379       l_template_item_context.required := p_required;
380     END IF;
381     IF (NVL(l_template_item_context.tooltip_text,hr_api.g_varchar2) = NVL(l_template_item.tooltip_text,hr_api.g_varchar2)) THEN
382       l_template_item_context.tooltip_text := p_tooltip_text;
383     END IF;
384     IF (NVL(l_template_item_context.update_allowed,hr_api.g_number) = NVL(l_template_item.update_allowed,hr_api.g_number)) THEN
385       l_template_item_context.update_allowed := p_update_allowed;
386     END IF;
387     IF (NVL(l_template_item_context.validation_formula_id,hr_api.g_number) = NVL(l_template_item.validation_formula_id,hr_api.g_number)) THEN
388       l_template_item_context.validation_formula_id := p_validation_formula_id;
389     END IF;
390     IF (NVL(l_template_item_context.validation_parameter_item_id1,hr_api.g_number) = NVL(l_template_item.validation_parameter_item_id1,hr_api.g_number)) THEN
391       l_template_item_context.validation_parameter_item_id1 := p_validation_param_item_id1;
392     END IF;
393     IF (NVL(l_template_item_context.validation_parameter_item_id2,hr_api.g_number) = NVL(l_template_item.validation_parameter_item_id2,hr_api.g_number)) THEN
394       l_template_item_context.validation_parameter_item_id2 := p_validation_param_item_id2;
395     END IF;
396     IF (NVL(l_template_item_context.validation_parameter_item_id3,hr_api.g_number) = NVL(l_template_item.validation_parameter_item_id3,hr_api.g_number)) THEN
397       l_template_item_context.validation_parameter_item_id3 := p_validation_param_item_id3;
398     END IF;
399     IF (NVL(l_template_item_context.validation_parameter_item_id4,hr_api.g_number) = NVL(l_template_item.validation_parameter_item_id4,hr_api.g_number)) THEN
400       l_template_item_context.validation_parameter_item_id4 := p_validation_param_item_id4;
401     END IF;
402     IF (NVL(l_template_item_context.validation_parameter_item_id5,hr_api.g_number) = NVL(l_template_item.validation_parameter_item_id5,hr_api.g_number)) THEN
403       l_template_item_context.validation_parameter_item_id5 := p_validation_param_item_id5;
404     END IF;
405     IF (NVL(l_template_item_context.visible,hr_api.g_number) = NVL(l_template_item.visible,hr_api.g_number)) THEN
406       l_template_item_context.visible := p_visible;
407     END IF;
408     IF (NVL(l_template_item_context.width,hr_api.g_number) = NVL(l_template_item.width,hr_api.g_number)) THEN
409       l_template_item_context.width := p_width;
410     END IF;
411     IF (NVL(l_template_item_context.x_position,hr_api.g_number) = NVL(l_template_item.x_position,hr_api.g_number)) THEN
412       l_template_item_context.x_position := p_x_position;
413     END IF;
414     IF (NVL(l_template_item_context.y_position,hr_api.g_number) = NVL(l_template_item.y_position,hr_api.g_number)) THEN
415       l_template_item_context.y_position := p_y_position;
416     END IF;
417     IF (NVL(l_template_item_context.information_category,hr_api.g_varchar2) = NVL(l_template_item.information_category,hr_api.g_varchar2)) THEN
418       l_template_item_context.information_category := p_information_category;
419       IF (NVL(l_template_item_context.information1,hr_api.g_varchar2) = NVL(l_template_item.information1,hr_api.g_varchar2)) THEN
420         l_template_item_context.information1 := p_information1;
421       END IF;
422       IF (NVL(l_template_item_context.information2,hr_api.g_varchar2) = NVL(l_template_item.information2,hr_api.g_varchar2)) THEN
423         l_template_item_context.information2 := p_information2;
424       END IF;
425       IF (NVL(l_template_item_context.information3,hr_api.g_varchar2) = NVL(l_template_item.information3,hr_api.g_varchar2)) THEN
426         l_template_item_context.information3 := p_information3;
427       END IF;
428       IF (NVL(l_template_item_context.information4,hr_api.g_varchar2) = NVL(l_template_item.information4,hr_api.g_varchar2)) THEN
429         l_template_item_context.information4 := p_information4;
430       END IF;
431       IF (NVL(l_template_item_context.information5,hr_api.g_varchar2) = NVL(l_template_item.information5,hr_api.g_varchar2)) THEN
432         l_template_item_context.information5 := p_information5;
433       END IF;
434       IF (NVL(l_template_item_context.information6,hr_api.g_varchar2) = NVL(l_template_item.information6,hr_api.g_varchar2)) THEN
435         l_template_item_context.information6 := p_information6;
436       END IF;
437       IF (NVL(l_template_item_context.information7,hr_api.g_varchar2) = NVL(l_template_item.information7,hr_api.g_varchar2)) THEN
438         l_template_item_context.information7 := p_information7;
439       END IF;
440       IF (NVL(l_template_item_context.information8,hr_api.g_varchar2) = NVL(l_template_item.information8,hr_api.g_varchar2)) THEN
441         l_template_item_context.information8 := p_information8;
442       END IF;
443       IF (NVL(l_template_item_context.information9,hr_api.g_varchar2) = NVL(l_template_item.information9,hr_api.g_varchar2)) THEN
444         l_template_item_context.information9 := p_information9;
445       END IF;
446       IF (NVL(l_template_item_context.information10,hr_api.g_varchar2) = NVL(l_template_item.information10,hr_api.g_varchar2)) THEN
447         l_template_item_context.information10 := p_information10;
448       END IF;
449       IF (NVL(l_template_item_context.information11,hr_api.g_varchar2) = NVL(l_template_item.information11,hr_api.g_varchar2)) THEN
450         l_template_item_context.information11 := p_information11;
451       END IF;
452       IF (NVL(l_template_item_context.information12,hr_api.g_varchar2) = NVL(l_template_item.information12,hr_api.g_varchar2)) THEN
453         l_template_item_context.information12 := p_information12;
454       END IF;
455       IF (NVL(l_template_item_context.information13,hr_api.g_varchar2) = NVL(l_template_item.information13,hr_api.g_varchar2)) THEN
456         l_template_item_context.information13 := p_information13;
457       END IF;
458       IF (NVL(l_template_item_context.information14,hr_api.g_varchar2) = NVL(l_template_item.information14,hr_api.g_varchar2)) THEN
459         l_template_item_context.information14 := p_information14;
460       END IF;
461       IF (NVL(l_template_item_context.information15,hr_api.g_varchar2) = NVL(l_template_item.information15,hr_api.g_varchar2)) THEN
462         l_template_item_context.information15 := p_information15;
463       END IF;
464       IF (NVL(l_template_item_context.information16,hr_api.g_varchar2) = NVL(l_template_item.information16,hr_api.g_varchar2)) THEN
465         l_template_item_context.information16 := p_information16;
466       END IF;
467       IF (NVL(l_template_item_context.information17,hr_api.g_varchar2) = NVL(l_template_item.information17,hr_api.g_varchar2)) THEN
468         l_template_item_context.information17 := p_information17;
469       END IF;
470       IF (NVL(l_template_item_context.information18,hr_api.g_varchar2) = NVL(l_template_item.information18,hr_api.g_varchar2)) THEN
471         l_template_item_context.information18 := p_information18;
472       END IF;
473       IF (NVL(l_template_item_context.information19,hr_api.g_varchar2) = NVL(l_template_item.information19,hr_api.g_varchar2)) THEN
474         l_template_item_context.information19 := p_information19;
475       END IF;
476       IF (NVL(l_template_item_context.information20,hr_api.g_varchar2) = NVL(l_template_item.information20,hr_api.g_varchar2)) THEN
477         l_template_item_context.information20 := p_information20;
478       END IF;
479       IF (NVL(l_template_item_context.information21,hr_api.g_varchar2) = NVL(l_template_item.information21,hr_api.g_varchar2)) THEN
480         l_template_item_context.information21 := p_information21;
481       END IF;
482       IF (NVL(l_template_item_context.information22,hr_api.g_varchar2) = NVL(l_template_item.information22,hr_api.g_varchar2)) THEN
483         l_template_item_context.information22 := p_information22;
484       END IF;
485       IF (NVL(l_template_item_context.information23,hr_api.g_varchar2) = NVL(l_template_item.information23,hr_api.g_varchar2)) THEN
486         l_template_item_context.information23 := p_information23;
487       END IF;
488       IF (NVL(l_template_item_context.information24,hr_api.g_varchar2) = NVL(l_template_item.information24,hr_api.g_varchar2)) THEN
489         l_template_item_context.information24 := p_information24;
490       END IF;
491       IF (NVL(l_template_item_context.information25,hr_api.g_varchar2) = NVL(l_template_item.information25,hr_api.g_varchar2)) THEN
492         l_template_item_context.information25 := p_information25;
493       END IF;
494       IF (NVL(l_template_item_context.information26,hr_api.g_varchar2) = NVL(l_template_item.information26,hr_api.g_varchar2)) THEN
495         l_template_item_context.information26 := p_information26;
496       END IF;
497       IF (NVL(l_template_item_context.information27,hr_api.g_varchar2) = NVL(l_template_item.information27,hr_api.g_varchar2)) THEN
498         l_template_item_context.information27 := p_information27;
499       END IF;
500       IF (NVL(l_template_item_context.information28,hr_api.g_varchar2) = NVL(l_template_item.information28,hr_api.g_varchar2)) THEN
501         l_template_item_context.information28 := p_information28;
502       END IF;
503       IF (NVL(l_template_item_context.information29,hr_api.g_varchar2) = NVL(l_template_item.information29,hr_api.g_varchar2)) THEN
504         l_template_item_context.information29 := p_information29;
505       END IF;
506       IF (NVL(l_template_item_context.information30,hr_api.g_varchar2) = NVL(l_template_item.information30,hr_api.g_varchar2)) THEN
507         l_template_item_context.information30 := p_information30;
508       END IF;
509     END IF;
510     --
511     -- Update template item context
512     --
513     hr_template_item_contexts_api.update_template_item_context
514       (p_effective_date               => p_effective_date
515       ,p_language_code                => p_language_code
516       ,p_template_item_context_id     => l_template_item_context.template_item_context_id
517       ,p_object_version_number        => l_template_item_context.object_version_number
518       ,p_alignment                    => l_template_item_context.alignment
519       ,p_bevel                        => l_template_item_context.bevel
520       ,p_case_restriction             => l_template_item_context.case_restriction
521       ,p_default_value                => l_template_item_context.default_value
522       ,p_enabled                      => l_template_item_context.enabled
523       ,p_format_mask                  => l_template_item_context.format_mask
524       ,p_height                       => l_template_item_context.height
525       ,p_information_formula_id       => l_template_item_context.information_formula_id
526       ,p_information_param_item_id1   => l_template_item_context.information_parameter_item_id1
527       ,p_information_param_item_id2   => l_template_item_context.information_parameter_item_id2
528       ,p_information_param_item_id3   => l_template_item_context.information_parameter_item_id3
529       ,p_information_param_item_id4   => l_template_item_context.information_parameter_item_id4
530       ,p_information_param_item_id5   => l_template_item_context.information_parameter_item_id5
531       ,p_information_prompt           => l_template_item_context.information_prompt
532       ,p_insert_allowed               => l_template_item_context.insert_allowed
533       ,p_label                        => l_template_item_context.label
534       ,p_next_navigation_item_id      => l_template_item_context.next_navigation_item_id
535       ,p_previous_navigation_item_id  => l_template_item_context.previous_navigation_item_id
536       ,p_prompt_text                  => l_template_item_context.prompt_text
537       ,p_prompt_alignment_offset      => l_template_item_context.prompt_alignment_offset
538       ,p_prompt_display_style         => l_template_item_context.prompt_display_style
539       ,p_prompt_edge                  => l_template_item_context.prompt_edge
540       ,p_prompt_edge_alignment        => l_template_item_context.prompt_edge_alignment
541       ,p_prompt_edge_offset           => l_template_item_context.prompt_edge_offset
542       ,p_prompt_text_alignment        => l_template_item_context.prompt_text_alignment
543       ,p_query_allowed                => l_template_item_context.query_allowed
544       ,p_required                     => l_template_item_context.required
545       ,p_tooltip_text                 => l_template_item_context.tooltip_text
546       ,p_update_allowed               => l_template_item_context.update_allowed
547       ,p_validation_formula_id        => l_template_item_context.validation_formula_id
548       ,p_validation_param_item_id1    => l_template_item_context.validation_parameter_item_id1
549       ,p_validation_param_item_id2    => l_template_item_context.validation_parameter_item_id2
550       ,p_validation_param_item_id3    => l_template_item_context.validation_parameter_item_id3
551       ,p_validation_param_item_id4    => l_template_item_context.validation_parameter_item_id4
552       ,p_validation_param_item_id5    => l_template_item_context.validation_parameter_item_id5
553       ,p_visible                      => l_template_item_context.visible
554       ,p_width                        => l_template_item_context.width
555       ,p_x_position                   => l_template_item_context.x_position
556       ,p_y_position                   => l_template_item_context.y_position
557       ,p_information_category         => l_template_item_context.information_category
558       ,p_information1                 => l_template_item_context.information1
559       ,p_information2                 => l_template_item_context.information2
560       ,p_information3                 => l_template_item_context.information3
561       ,p_information4                 => l_template_item_context.information4
562       ,p_information5                 => l_template_item_context.information5
563       ,p_information6                 => l_template_item_context.information6
564       ,p_information7                 => l_template_item_context.information7
565       ,p_information8                 => l_template_item_context.information8
566       ,p_information9                 => l_template_item_context.information9
567       ,p_information10                => l_template_item_context.information10
568       ,p_information11                => l_template_item_context.information11
569       ,p_information12                => l_template_item_context.information12
570       ,p_information13                => l_template_item_context.information13
571       ,p_information14                => l_template_item_context.information14
572       ,p_information15                => l_template_item_context.information15
573       ,p_information16                => l_template_item_context.information16
574       ,p_information17                => l_template_item_context.information17
575       ,p_information18                => l_template_item_context.information18
576       ,p_information19                => l_template_item_context.information19
577       ,p_information20                => l_template_item_context.information20
578       ,p_information21                => l_template_item_context.information21
579       ,p_information22                => l_template_item_context.information22
580       ,p_information23                => l_template_item_context.information23
581       ,p_information24                => l_template_item_context.information24
582       ,p_information25                => l_template_item_context.information25
583       ,p_information26                => l_template_item_context.information26
584       ,p_information27                => l_template_item_context.information27
585       ,p_information28                => l_template_item_context.information28
586       ,p_information29                => l_template_item_context.information29
587       ,p_information30                => l_template_item_context.information30
588       ,p_override_value_warning       => l_warning
589       );
590     --
591   END LOOP;
592   --
593   hr_utility.set_location('Leaving:'||l_proc,1000);
594 --
595 END update_template_item_contexts;
596 --
597 -- ----------------------------------------------------------------------------
598 -- |--------------------------< copy_template_item >--------------------------|
599 -- ----------------------------------------------------------------------------
600 procedure copy_template_item
601   (p_validate                     in     boolean  default false
602   ,p_effective_date               in     date
603   ,p_language_code                in     varchar2 default hr_api.userenv_lang
604   ,p_template_item_id_from        in     number
605   ,p_form_template_id             in     number
606   ,p_template_item_id_to             out nocopy number
607   ,p_object_version_number           out nocopy number
608   )
609 is
610   --
611   -- Declare cursors and local variables
612   --
613   CURSOR cur_form_item
614   IS
615   SELECT tit.form_item_id
616   FROM hr_template_items tit
617   WHERE tit.template_item_id = p_template_item_id_from;
618   --
619   CURSOR cur_tab_page
620   IS
621   SELECT ttp2.template_tab_page_id
622   FROM hr_template_tab_pages ttp2
623   ,hr_template_canvases tcn
624   ,hr_template_windows twn
625   ,hr_template_tab_pages ttp1
626   ,hr_template_item_tab_pages tip
627   WHERE ttp2.form_tab_page_id = ttp1.form_tab_page_id
628   AND ttp2.template_canvas_id = tcn.template_canvas_id
629   AND tcn.template_window_id = twn.template_window_id
630   AND twn.form_template_id = p_form_template_id
631   AND ttp1.template_tab_page_id = tip.template_tab_page_id
632   AND tip.template_item_id = p_template_item_id_from;
633   --
634   CURSOR cur_item_context
635   IS
636   SELECT tic.template_item_context_id
637   FROM hr_template_item_contexts tic
638   WHERE tic.template_item_id = p_template_item_id_from;
639   --
640   l_temp number;
641   --
642   CURSOR cur_api_val
643   IS
644   SELECT source_form_template_id
645   FROM hr_source_form_templates hsf
646   WHERE hsf.form_template_id_to = p_form_template_id;
647   --
648   -- dummy local vars
649   --
650   l_item_property_id             number;
651   l_template_item_tab_page_id    number;
652   l_ovn_item                     number;
653   l_template_item_context_id_to  number;
654   l_ovn_item_context             number;
655   l_item_context_id              number;
656   l_concatenated_segments        varchar2(2000);
657   --
658   l_form_item_id                 number;
659   l_proc                         varchar2(72) := g_package||'copy_template_item';
660   l_template_item_id_to          number;
661   l_object_version_number        number;
662   l_override_value_warning       boolean;
663   l_language_code                fnd_languages.language_code%TYPE;
664 --
665 begin
666   --
667   hr_utility.set_location('Entering:'|| l_proc, 10);
668   --
669   -- Issue a savepoint
670   --
671   savepoint copy_template_item;
672   --
673   -- Truncate the time portion from all IN date parameters
674   --
675   -- p_effective_date := TRUNC(p_effective_date);
676   --
677   -- Validate the language parameter. l_language_code should be passed
678   -- instead of p_language_code from now on, to allow an IN OUT parameter to
679   -- be passed through.
680   --
681   l_language_code := p_language_code;
682   hr_api.validate_language_code(p_language_code => l_language_code);
683   --
684   --
685   -- Call Before Process User Hook
686   --
687   begin
688     hr_template_items_api_bk1.copy_template_item_b
689       (p_effective_date               => TRUNC(p_effective_date)
690       ,p_language_code                => l_language_code
691       ,p_template_item_id_from        => p_template_item_id_from
692       ,p_form_template_id             => p_form_template_id
693       );
694   exception
695     when hr_api.cannot_find_prog_unit then
696       hr_api.cannot_find_prog_unit_error
697         (p_module_name => 'copy_template_item'
698         ,p_hook_type   => 'BP'
699         );
700   end;
701   --
702   -- Validation in addition to Row Handlers
703   --
704   hr_utility.set_location('Entering:'|| l_proc, 15);
705 
706      OPEN cur_api_val;
707      FETCH cur_api_val INTO l_temp;
708      IF (cur_api_val%NOTFOUND AND
709          hr_form_templates_api.g_session_mode <> 'SEED_DATA') THEN
710          CLOSE cur_api_val;
711        -- error message
712        fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
713        fnd_message.set_token('PROCEDURE', l_proc);
714        fnd_message.set_token('STEP','10');
715        fnd_message.raise_error;
716      END IF;
717      CLOSE cur_api_val;
718   --
719   --
720   -- Process Logic
721   --
722 
723   hr_utility.set_location('Entering:'|| l_proc, 20);
724 
725   OPEN cur_form_item;
726   FETCH cur_form_item INTO l_form_item_id;
727   CLOSE cur_form_item;
728 
729   hr_utility.set_location('Entering:'|| l_proc, 25);
730 
731   hr_tim_ins.ins( p_form_template_id             => p_form_template_id
732             ,p_form_item_id                 => l_form_item_id
733             ,p_template_item_id             => l_template_item_id_to
734             ,p_object_version_number        => l_object_version_number);
735 
736   hr_utility.set_location('Entering:'|| l_proc, 30);
737 
738   hr_item_properties_bsi.copy_item_property(
739             p_effective_date                => TRUNC(p_effective_date)
740             ,p_language_code                => l_language_code
741             ,p_template_item_id_from        => p_template_item_id_from
742             ,p_template_item_id_to          => l_template_item_id_to
743             ,p_item_property_id             => l_item_property_id
744             ,p_object_version_number        => l_object_version_number);
745             --,p_override_value_warning       => l_override_value_warning);
746 
747   hr_utility.set_location('Entering:'|| l_proc, 35);
748 
749   FOR cur_rec in cur_tab_page LOOP
750 
751     hr_template_item_tab_pages_api.create_template_item_tab_page(
752                 p_effective_date                => TRUNC(p_effective_date)
753                ,p_template_item_id             => l_template_item_id_to
754                ,p_template_tab_page_id         => cur_rec.template_tab_page_id
755                ,p_template_item_tab_page_id    => l_template_item_tab_page_id
756                ,p_object_version_number        => l_ovn_item);
757   END LOOP;
758 
759   hr_utility.set_location('Entering:'|| l_proc, 40);
760 
761   FOR cur_rec in cur_item_context LOOP
762     hr_template_item_contexts_api.copy_template_item_context(
763               p_effective_date                => TRUNC(p_effective_date)
764              ,p_language_code                => l_language_code
765              ,p_template_item_context_id_frm => cur_rec.template_item_context_id
766              ,p_template_item_id             => l_template_item_id_to
767              ,p_template_item_context_id_to  => l_template_item_context_id_to
768              ,p_object_version_number        => l_ovn_item_context
769              ,p_item_context_id              => l_item_context_id
770              ,p_concatenated_segments        => l_concatenated_segments);
771   END LOOP;
772 
773   hr_utility.set_location('Entering:'|| l_proc, 45);
774 
775   --
776   -- Call After Process User Hook
777   --
778   begin
779     hr_template_items_api_bk1.copy_template_item_a
780       (p_effective_date                => TRUNC(p_effective_date)
781        ,p_language_code                => l_language_code
782        ,p_template_item_id_from        => p_template_item_id_from
783        ,p_form_template_id             => p_form_template_id
784        ,p_template_item_id_to          => l_template_item_id_to
785        ,p_object_version_number        => l_object_version_number
786       );
787   exception
788     when hr_api.cannot_find_prog_unit then
789       hr_api.cannot_find_prog_unit_error
790         (p_module_name => 'copy_template_item'
791         ,p_hook_type   => 'AP'
792         );
793   end;
794   --
795   -- When in validation only mode raise the Validate_Enabled exception
796   --
797   hr_utility.set_location('Entering:'|| l_proc, 50);
798 
799   if p_validate then
800     raise hr_api.validate_enabled;
801   end if;
802   --
803   -- Set all output arguments
804   --
805   p_template_item_id_to          := l_template_item_id_to;
806   p_object_version_number        := l_object_version_number;
807   --
808   hr_utility.set_location(' Leaving:'||l_proc, 70);
809 exception
810   when hr_api.validate_enabled then
811     --
812     -- As the Validate_Enabled exception has been raised
813     -- we must rollback to the savepoint
814     --
815     rollback to copy_template_item;
816     --
817     -- Only set output warning arguments
818     -- (Any key or derived arguments must be set to null
819     -- when validation only mode is being used.)
820     --
821     p_template_item_id_to          := null;
822     p_object_version_number  := null;
823     hr_utility.set_location(' Leaving:'||l_proc, 80);
824   when others then
825     --
826     -- A validation or unexpected error has occured
827     --
828     p_template_item_id_to          := null;
829     p_object_version_number  := null;
830 
831     rollback to copy_template_item;
832     hr_utility.set_location(' Leaving:'||l_proc, 90);
833     raise;
834 end copy_template_item;
835 --
836 -- ----------------------------------------------------------------------------
837 -- |------------------------< create_template_item >--------------------------|
838 -- ----------------------------------------------------------------------------
839 --
840 procedure create_template_item
841   (p_validate                        in boolean  default false
842   ,p_effective_date                  in date
843   ,p_language_code                   in varchar2 default hr_api.userenv_lang
844   ,p_form_template_id                in number
845   ,p_form_item_id                    in number
846   ,p_template_tab_page_id            in number default null
847   ,p_alignment                       in number default hr_api.g_number
848   ,p_bevel                           in number default hr_api.g_number
849   ,p_case_restriction                in number default hr_api.g_number
850   ,p_default_value                   in varchar2 default hr_api.g_varchar2
851   ,p_enabled                         in number default hr_api.g_number
852   ,p_format_mask                     in varchar2 default hr_api.g_varchar2
853   ,p_height                          in number default hr_api.g_number
854   ,p_information_formula_id          in number default hr_api.g_number
855   ,p_information_param_item_id1      in number default hr_api.g_number
856   ,p_information_param_item_id2      in number default hr_api.g_number
857   ,p_information_param_item_id3      in number default hr_api.g_number
858   ,p_information_param_item_id4      in number default hr_api.g_number
859   ,p_information_param_item_id5      in number default hr_api.g_number
860   ,p_information_prompt              in varchar2 default hr_api.g_varchar2
861   ,p_insert_allowed                  in number default hr_api.g_number
862   ,p_label                           in varchar2 default hr_api.g_varchar2
863   ,p_prompt_text                     in varchar2 default hr_api.g_varchar2
864   ,p_prompt_alignment_offset         in number default hr_api.g_number
865   ,p_prompt_display_style            in number default hr_api.g_number
866   ,p_prompt_edge                     in number default hr_api.g_number
867   ,p_prompt_edge_alignment           in number default hr_api.g_number
868   ,p_prompt_edge_offset              in number default hr_api.g_number
869   ,p_prompt_text_alignment           in number default hr_api.g_number
870   ,p_query_allowed                   in number default hr_api.g_number
871   ,p_required                        in number default hr_api.g_number
872   ,p_tooltip_text                    in varchar2 default hr_api.g_varchar2
873   ,p_update_allowed                  in number default hr_api.g_number
874   ,p_validation_formula_id           in number default hr_api.g_number
875   ,p_validation_param_item_id1       in number default hr_api.g_number
876   ,p_validation_param_item_id2       in number default hr_api.g_number
877   ,p_validation_param_item_id3       in number default hr_api.g_number
878   ,p_validation_param_item_id4       in number default hr_api.g_number
879   ,p_validation_param_item_id5       in number default hr_api.g_number
880   ,p_visible                         in number default hr_api.g_number
881   ,p_width                           in number default hr_api.g_number
882   ,p_x_position                      in number default hr_api.g_number
883   ,p_y_position                      in number default hr_api.g_number
884   ,p_information_category            in varchar2 default hr_api.g_varchar2
885   ,p_information1                    in varchar2 default hr_api.g_varchar2
886   ,p_information2                    in varchar2 default hr_api.g_varchar2
887   ,p_information3                    in varchar2 default hr_api.g_varchar2
888   ,p_information4                    in varchar2 default hr_api.g_varchar2
889   ,p_information5                    in varchar2 default hr_api.g_varchar2
890   ,p_information6                    in varchar2 default hr_api.g_varchar2
891   ,p_information7                    in varchar2 default hr_api.g_varchar2
892   ,p_information8                    in varchar2 default hr_api.g_varchar2
893   ,p_information9                    in varchar2 default hr_api.g_varchar2
894   ,p_information10                   in varchar2 default hr_api.g_varchar2
895   ,p_information11                   in varchar2 default hr_api.g_varchar2
896   ,p_information12                   in varchar2 default hr_api.g_varchar2
897   ,p_information13                   in varchar2 default hr_api.g_varchar2
898   ,p_information14                   in varchar2 default hr_api.g_varchar2
899   ,p_information15                   in varchar2 default hr_api.g_varchar2
900   ,p_information16                   in varchar2 default hr_api.g_varchar2
901   ,p_information17                   in varchar2 default hr_api.g_varchar2
902   ,p_information18                   in varchar2 default hr_api.g_varchar2
903   ,p_information19                   in varchar2 default hr_api.g_varchar2
904   ,p_information20                   in varchar2 default hr_api.g_varchar2
905   ,p_information21                   in varchar2 default hr_api.g_varchar2
906   ,p_information22                   in varchar2 default hr_api.g_varchar2
907   ,p_information23                   in varchar2 default hr_api.g_varchar2
908   ,p_information24                   in varchar2 default hr_api.g_varchar2
909   ,p_information25                   in varchar2 default hr_api.g_varchar2
910   ,p_information26                   in varchar2 default hr_api.g_varchar2
911   ,p_information27                   in varchar2 default hr_api.g_varchar2
912   ,p_information28                   in varchar2 default hr_api.g_varchar2
913   ,p_information29                   in varchar2 default hr_api.g_varchar2
914   ,p_information30                   in varchar2 default hr_api.g_varchar2
915   ,p_next_navigation_item_id         in number default hr_api.g_number
916   ,p_previous_navigation_item_id     in number default hr_api.g_number
917   ,p_template_item_id                  out nocopy number
918   ,p_object_version_number             out nocopy number
919   ,p_override_value_warning            out nocopy boolean
920   ) is
921   --
922   -- Declare cursors and local variables
923   --
924 
925   l_required_override number := null;
926   l_visible_override number := null;
927 
928   CURSOR cur_override
929   IS
930   SELECT required_override
931         ,visible_override
932   FROM hr_form_items_b
933   WHERE form_item_id = p_form_item_id;
934 
935   l_temp number;
936 
937   CURSOR cur_api_val
938   IS
939   SELECT source_form_template_id
940   FROM hr_source_form_templates hsf
941   WHERE hsf.form_template_id_to = p_form_template_id;
942 
943   l_proc                varchar2(72) := g_package||'create_template_item';
944   l_object_version_number number;
945   l_template_item_id number;
946   l_override_value_warning boolean := FALSE;
947   l_item_property_id number;
948   l_template_item_tab_page_id number;
949   l_ovn_tab number;
950   l_language_code fnd_languages.language_code%TYPE;
951 
952 begin
953   hr_utility.set_location('Entering:'|| l_proc, 10);
954   --
955   -- Issue a savepoint
956   --
957   savepoint create_template_item;
958   --
959   -- Truncate the time portion from all IN date parameters
960   --
961      -- p_effective_date := TRUNC(p_effective_date);
962   --
963   -- Validate the language parameter. l_language_code should be passed
964   -- instead of p_language_code from now on, to allow an IN OUT parameter to
965   -- be passed through.
966   --
967   l_language_code := p_language_code;
968   hr_api.validate_language_code(p_language_code => l_language_code);
969   --
970   --
971   -- Call Before Process User Hook
972   --
973   begin
974     hr_template_items_api_bk2.create_template_item_b
975       (p_effective_date                 => TRUNC(p_effective_date)
976       ,p_language_code                  => l_language_code
977       ,p_form_template_id               => p_form_template_id
978       ,p_form_item_id                   => p_form_item_id
979       ,p_template_tab_page_id           => p_template_tab_page_id
980       ,p_alignment                      => p_alignment
981       ,p_bevel                          => p_bevel
982       ,p_case_restriction               => p_case_restriction
983       ,p_default_value                  => p_default_value
984       ,p_enabled                        => p_enabled
985       ,p_format_mask                    => p_format_mask
986       ,p_height                         => p_height
987       ,p_information_formula_id         => p_information_formula_id
988       ,p_information_param_item_id1     => p_information_param_item_id1
989       ,p_information_param_item_id2     => p_information_param_item_id2
990       ,p_information_param_item_id3     => p_information_param_item_id3
991       ,p_information_param_item_id4     => p_information_param_item_id4
992       ,p_information_param_item_id5     => p_information_param_item_id5
993       ,p_information_prompt             => p_information_prompt
994       ,p_insert_allowed                 => p_insert_allowed
995       ,p_label                          => p_label
996       ,p_prompt_text                    => p_prompt_text
997       ,p_prompt_alignment_offset        => p_prompt_alignment_offset
998       ,p_prompt_display_style           => p_prompt_display_style
999       ,p_prompt_edge                    => p_prompt_edge
1000       ,p_prompt_edge_alignment          => p_prompt_edge_alignment
1001       ,p_prompt_edge_offset             => p_prompt_edge_offset
1002       ,p_prompt_text_alignment          => p_prompt_text_alignment
1003       ,p_query_allowed                  => p_query_allowed
1004       ,p_required                       => p_required
1005       ,p_tooltip_text                   => p_tooltip_text
1006       ,p_update_allowed                 => p_update_allowed
1007       ,p_validation_formula_id          => p_validation_formula_id
1008       ,p_validation_param_item_id1      => p_validation_param_item_id1
1009       ,p_validation_param_item_id2      => p_validation_param_item_id2
1010       ,p_validation_param_item_id3      => p_validation_param_item_id3
1011       ,p_validation_param_item_id4      => p_validation_param_item_id4
1012       ,p_validation_param_item_id5      => p_validation_param_item_id5
1013       ,p_visible                        => p_visible
1014       ,p_width                          => p_width
1015       ,p_x_position                     => p_x_position
1016       ,p_y_position                     => p_y_position
1017       ,p_information_category           => p_information_category
1018       ,p_information1                   => p_information1
1019       ,p_information2                   => p_information2
1020       ,p_information3                   => p_information3
1021       ,p_information4                   => p_information4
1022       ,p_information5                   => p_information5
1023       ,p_information6                   => p_information6
1024       ,p_information7                   => p_information7
1025       ,p_information8                   => p_information8
1026       ,p_information9                   => p_information9
1027       ,p_information10                  => p_information10
1028       ,p_information11                  => p_information11
1029       ,p_information12                  => p_information12
1030       ,p_information13                  => p_information13
1031       ,p_information14                  => p_information14
1032       ,p_information15                  => p_information15
1033       ,p_information16                  => p_information16
1034       ,p_information17                  => p_information17
1035       ,p_information18                  => p_information18
1036       ,p_information19                  => p_information19
1037       ,p_information20                  => p_information20
1038       ,p_information21                  => p_information21
1039       ,p_information22                  => p_information22
1040       ,p_information23                  => p_information23
1041       ,p_information24                  => p_information24
1042       ,p_information25                  => p_information25
1043       ,p_information26                  => p_information26
1044       ,p_information27                  => p_information27
1045       ,p_information28                  => p_information28
1046       ,p_information29                  => p_information29
1047       ,p_information30                  => p_information30
1048       ,p_next_navigation_item_id        => p_next_navigation_item_id
1049       ,p_previous_navigation_item_id    => p_previous_navigation_item_id);
1050   exception
1051     when hr_api.cannot_find_prog_unit then
1052       hr_api.cannot_find_prog_unit_error
1053         (p_module_name => 'create_template_item'
1054         ,p_hook_type   => 'BP'
1055         );
1056   end;
1057   --
1058   -- Validation in addition to Row Handlers
1059   --
1060 
1061   hr_utility.set_location('Entering:'|| l_proc, 15);
1062 
1063      OPEN cur_override;
1064      FETCH cur_override INTO l_required_override,l_visible_override;
1065      CLOSE cur_override;
1066 
1067   hr_utility.set_location('Entering:'|| l_proc, 20);
1068 
1069      IF ( p_required <> hr_api.g_number ) AND
1070         ( l_required_override is not null AND p_required is not null ) THEN
1071        l_override_value_warning  := TRUE;
1072      END IF;
1073 
1074   hr_utility.set_location('Entering:'|| l_proc, 25);
1075 
1076      IF ( p_visible <> hr_api.g_number ) AND
1077        ( l_visible_override is not null AND p_visible is not null ) THEN
1078        l_override_value_warning  := TRUE;
1079      END IF;
1080 
1081   hr_utility.set_location('Entering:'|| l_proc, 30);
1082 
1083      OPEN cur_api_val;
1084      FETCH cur_api_val INTO l_temp;
1085      IF (cur_api_val%NOTFOUND AND
1086          hr_form_templates_api.g_session_mode <> 'SEED_DATA') THEN
1087          CLOSE cur_api_val;
1088        -- error message
1089        fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
1090        fnd_message.set_token('PROCEDURE', l_proc);
1091        fnd_message.set_token('STEP','10');
1092        fnd_message.raise_error;
1093      END IF;
1094      CLOSE cur_api_val;
1095 
1096   hr_utility.set_location('Entering:'|| l_proc, 35);
1097 
1098   --
1099   --
1100   -- Process Logic
1101   --
1102   hr_tim_ins.ins( p_form_template_id             => p_form_template_id
1103             ,p_form_item_id                 => p_form_item_id
1104             ,p_template_item_id             => l_template_item_id
1105             ,p_object_version_number        => l_object_version_number);
1106 
1107   hr_utility.set_location('Entering:'|| l_proc, 40);
1108 
1109   hr_item_properties_bsi.copy_item_property(
1110              p_effective_date               => TRUNC(p_effective_date)
1111             ,p_language_code                => l_language_code
1112             ,p_form_item_id                 => p_form_item_id
1113             ,p_template_item_id             => l_template_item_id
1114             ,p_alignment                    => p_alignment
1115             ,p_bevel                        => p_bevel
1116             ,p_case_restriction             => p_case_restriction
1117             ,p_default_value                => p_default_value
1118             ,p_enabled                      => p_enabled
1119             ,p_format_mask                  => p_format_mask
1120             ,p_height                       => p_height
1121             ,p_information_formula_id       => p_information_formula_id
1122             ,p_information_param_item_id1   => p_information_param_item_id1
1123             ,p_information_param_item_id2   => p_information_param_item_id2
1124             ,p_information_param_item_id3   => p_information_param_item_id3
1125             ,p_information_param_item_id4   => p_information_param_item_id4
1126             ,p_information_param_item_id5   => p_information_param_item_id5
1127             ,p_information_prompt           => p_information_prompt
1128             ,p_insert_allowed               => p_insert_allowed
1129             ,p_label                        => p_label
1130             ,p_prompt_text                  => p_prompt_text
1131             ,p_prompt_alignment_offset      => p_prompt_alignment_offset
1132             ,p_prompt_display_style         => p_prompt_display_style
1133             ,p_prompt_edge                  => p_prompt_edge
1134             ,p_prompt_edge_alignment        => p_prompt_edge_alignment
1135             ,p_prompt_edge_offset           => p_prompt_edge_offset
1136             ,p_prompt_text_alignment        => p_prompt_text_alignment
1137             ,p_query_allowed                => p_query_allowed
1138             ,p_required                     => p_required
1139             ,p_tooltip_text                 => p_tooltip_text
1140             ,p_update_allowed               => p_update_allowed
1141             ,p_validation_formula_id        => p_validation_formula_id
1142             ,p_validation_param_item_id1    => p_validation_param_item_id1
1143             ,p_validation_param_item_id2    => p_validation_param_item_id2
1144             ,p_validation_param_item_id3    => p_validation_param_item_id3
1145             ,p_validation_param_item_id4    => p_validation_param_item_id4
1146             ,p_validation_param_item_id5    => p_validation_param_item_id5
1147             ,p_visible                      => p_visible
1148             ,p_width                        => p_width
1149             ,p_x_position                   => p_x_position
1150             ,p_y_position                   => p_y_position
1151             ,p_information_category         => p_information_category
1152             ,p_information1                 => p_information1
1153             ,p_information2                 => p_information2
1154             ,p_information3                 => p_information3
1155             ,p_information4                 => p_information4
1156             ,p_information5                 => p_information5
1157             ,p_information6                 => p_information6
1158             ,p_information7                 => p_information7
1159             ,p_information8                 => p_information8
1160             ,p_information9                 => p_information9
1161             ,p_information10                => p_information10
1162             ,p_information11                => p_information11
1163             ,p_information12                => p_information12
1164             ,p_information13                => p_information13
1165             ,p_information14                => p_information14
1166             ,p_information15                => p_information15
1167             ,p_information16                => p_information16
1168             ,p_information17                => p_information17
1169             ,p_information18                => p_information18
1170             ,p_information19                => p_information19
1171             ,p_information20                => p_information20
1172             ,p_information21                => p_information21
1173             ,p_information22                => p_information22
1174             ,p_information23                => p_information23
1175             ,p_information24                => p_information24
1176             ,p_information25                => p_information25
1177             ,p_information26                => p_information26
1178             ,p_information27                => p_information27
1179             ,p_information28                => p_information28
1180             ,p_information29                => p_information29
1181             ,p_information30                => p_information30
1182             ,p_next_navigation_item_id      => p_next_navigation_item_id
1183             ,p_previous_navigation_item_id  => p_previous_navigation_item_id
1184             ,p_item_property_id             => l_item_property_id
1185             ,p_object_version_number        => l_object_version_number);
1186             --,p_override_value_warning       => l_override_value_warning);
1187 
1188   hr_utility.set_location('Entering:'|| l_proc, 45);
1189 
1190   IF p_template_tab_page_id is not null THEN
1191     hr_template_item_tab_pages_api.create_template_item_tab_page(
1192                p_effective_date                => TRUNC(p_effective_date)
1193                ,p_template_item_id             => l_template_item_id
1194                ,p_template_tab_page_id         => p_template_tab_page_id
1195                ,p_template_item_tab_page_id    => l_template_item_tab_page_id
1196                ,p_object_version_number        => l_ovn_tab);
1197   END IF;
1198 
1199   hr_utility.set_location('Entering:'|| l_proc, 50);
1200 
1201   --
1202   -- Call After Process User Hook
1203   --
1204   begin
1205     hr_template_items_api_bk2.create_template_item_a
1206       (p_effective_date                 => TRUNC(p_effective_date)
1207       ,p_language_code                  => l_language_code
1208       ,p_form_template_id               => p_form_template_id
1209       ,p_form_item_id                   => p_form_item_id
1210       ,p_template_tab_page_id           => p_template_tab_page_id
1211       ,p_alignment                      => p_alignment
1212       ,p_bevel                          => p_bevel
1213       ,p_case_restriction               => p_case_restriction
1214       ,p_default_value                  => p_default_value
1215       ,p_enabled                        => p_enabled
1216       ,p_format_mask                    => p_format_mask
1217       ,p_height                         => p_height
1218       ,p_information_formula_id         => p_information_formula_id
1219       ,p_information_param_item_id1     => p_information_param_item_id1
1220       ,p_information_param_item_id2     => p_information_param_item_id2
1221       ,p_information_param_item_id3     => p_information_param_item_id3
1222       ,p_information_param_item_id4     => p_information_param_item_id4
1223       ,p_information_param_item_id5     => p_information_param_item_id5
1224       ,p_information_prompt             => p_information_prompt
1225       ,p_insert_allowed                 => p_insert_allowed
1226       ,p_label                          => p_label
1227       ,p_prompt_text                    => p_prompt_text
1228       ,p_prompt_alignment_offset        => p_prompt_alignment_offset
1229       ,p_prompt_display_style           => p_prompt_display_style
1230       ,p_prompt_edge                    => p_prompt_edge
1231       ,p_prompt_edge_alignment          => p_prompt_edge_alignment
1232       ,p_prompt_edge_offset             => p_prompt_edge_offset
1233       ,p_prompt_text_alignment          => p_prompt_text_alignment
1234       ,p_query_allowed                  => p_query_allowed
1235       ,p_required                       => p_required
1236       ,p_tooltip_text                   => p_tooltip_text
1237       ,p_update_allowed                 => p_update_allowed
1238       ,p_validation_formula_id          => p_validation_formula_id
1239       ,p_validation_param_item_id1      => p_validation_param_item_id1
1240       ,p_validation_param_item_id2      => p_validation_param_item_id2
1241       ,p_validation_param_item_id3      => p_validation_param_item_id3
1242       ,p_validation_param_item_id4      => p_validation_param_item_id4
1243       ,p_validation_param_item_id5      => p_validation_param_item_id5
1244       ,p_visible                        => p_visible
1245       ,p_width                          => p_width
1246       ,p_x_position                     => p_x_position
1247       ,p_y_position                     => p_y_position
1248       ,p_information_category           => p_information_category
1249       ,p_information1                   => p_information1
1250       ,p_information2                   => p_information2
1251       ,p_information3                   => p_information3
1252       ,p_information4                   => p_information4
1253       ,p_information5                   => p_information5
1254       ,p_information6                   => p_information6
1255       ,p_information7                   => p_information7
1256       ,p_information8                   => p_information8
1257       ,p_information9                   => p_information9
1258       ,p_information10                  => p_information10
1259       ,p_information11                  => p_information11
1260       ,p_information12                  => p_information12
1261       ,p_information13                  => p_information13
1262       ,p_information14                  => p_information14
1263       ,p_information15                  => p_information15
1264       ,p_information16                  => p_information16
1265       ,p_information17                  => p_information17
1266       ,p_information18                  => p_information18
1267       ,p_information19                  => p_information19
1268       ,p_information20                  => p_information20
1269       ,p_information21                  => p_information21
1270       ,p_information22                  => p_information22
1271       ,p_information23                  => p_information23
1272       ,p_information24                  => p_information24
1273       ,p_information25                  => p_information25
1274       ,p_information26                  => p_information26
1275       ,p_information27                  => p_information27
1276       ,p_information28                  => p_information28
1277       ,p_information29                  => p_information29
1278       ,p_information30                  => p_information30
1279       ,p_next_navigation_item_id        => p_next_navigation_item_id
1280       ,p_previous_navigation_item_id    => p_previous_navigation_item_id
1281       ,p_template_item_id             => l_template_item_id
1282       ,p_object_version_number        => l_object_version_number
1283       ,p_override_value_warning       => l_override_value_warning);
1284   exception
1285     when hr_api.cannot_find_prog_unit then
1286       hr_api.cannot_find_prog_unit_error
1287         (p_module_name => 'create_template_item'
1288         ,p_hook_type   => 'AP'
1289         );
1290   end;
1291   --
1292   -- When in validation only mode raise the Validate_Enabled exception
1293   --
1294   hr_utility.set_location('Entering:'|| l_proc, 55);
1295 
1296   if p_validate then
1297     raise hr_api.validate_enabled;
1298   end if;
1299   --
1300   -- Set all output arguments
1301   --
1302   p_template_item_id             := l_template_item_id;
1303   p_object_version_number        := l_object_version_number;
1304   p_override_value_warning       := l_override_value_warning;
1305   --
1306   hr_utility.set_location(' Leaving:'||l_proc, 70);
1307 exception
1308   when hr_api.validate_enabled then
1309     --
1310     -- As the Validate_Enabled exception has been raised
1311     -- we must rollback to the savepoint
1312     --
1313     rollback to create_template_item;
1314     --
1315     -- Only set output warning arguments
1316     -- (Any key or derived arguments must be set to null
1317     -- when validation only mode is being used.)
1318     --
1319     p_template_item_id             := null;
1320     p_override_value_warning       := FALSE;
1321     p_object_version_number  := null;
1322     hr_utility.set_location(' Leaving:'||l_proc, 80);
1323   when others then
1324     --
1325     -- A validation or unexpected error has occured
1326     --
1327     p_template_item_id             := null;
1328     p_override_value_warning       := null;
1329     p_object_version_number        := null;
1330 
1331     rollback to create_template_item;
1332     hr_utility.set_location(' Leaving:'||l_proc, 90);
1333     raise;
1334 end create_template_item;
1335 --
1336 -- ----------------------------------------------------------------------------
1337 -- |------------------------< delete_template_item >--------------------------|
1338 -- ----------------------------------------------------------------------------
1339 --
1340 procedure delete_template_item
1341   (p_validate                      in     boolean  default false
1342    ,p_template_item_id             in    number
1343    ,p_object_version_number        in    number
1344    ,p_delete_children_flag         in    varchar2 default 'N'
1345   ) is
1346   --
1347   -- Declare cursors and local variables
1348   --
1349   CURSOR cur_item_context
1350   IS
1351   SELECT template_item_context_id
1352   ,object_version_number
1353   FROM hr_template_item_contexts
1354   WHERE template_item_id = p_template_item_id;
1355 
1356   CURSOR cur_tab_page
1357   IS
1358   SELECT template_item_tab_page_id
1359   ,object_version_number
1360   FROM hr_template_item_tab_pages
1361   WHERE template_item_id = p_template_item_id;
1362 
1363   l_temp number;
1364 
1365   CURSOR cur_api_val
1366   IS
1367   SELECT source_form_template_id
1368   FROM hr_source_form_templates hsf
1369        ,hr_template_items_b hti
1370   WHERE hsf.form_template_id_to = hti.form_template_id
1371   AND hti.template_item_id = p_template_item_id;
1372 
1373 ---- Fix For Bug 6631115 Starts ------
1374 
1375   CURSOR cur_template_item
1376   IS
1377   SELECT template_item_id
1378   ,object_version_number
1379   FROM hr_template_items_b
1380   WHERE template_item_id = p_template_item_id;
1381 
1382 l_template_item_id number;
1383 l_object_version_number number;
1384 
1385 ---- Fix For Bug 6631115 Ends ---------
1386 
1387   l_proc                varchar2(72) := g_package||'delete_template_item';
1388 begin
1389   hr_utility.set_location('Entering:'|| l_proc, 10);
1390   --
1391   -- Issue a savepoint
1392   --
1393   savepoint delete_template_item;
1394 
1395   --
1396   -- Call Before Process User Hook
1397   --
1398   begin
1399     hr_template_items_api_bk3.delete_template_item_b
1400       (p_template_item_id   => p_template_item_id
1401        ,p_object_version_number => p_object_version_number
1402        ,p_delete_children_flag  => p_delete_children_flag
1403       );
1404   exception
1405     when hr_api.cannot_find_prog_unit then
1406       hr_api.cannot_find_prog_unit_error
1407         (p_module_name => 'delete_template_item'
1408         ,p_hook_type   => 'BP'
1409         );
1410   end;
1411   --
1412   -- Validation in addition to Row Handlers
1413   --
1414   hr_utility.set_location('Entering:'|| l_proc, 15);
1415 
1416      OPEN cur_api_val;
1417      FETCH cur_api_val INTO l_temp;
1418      IF (cur_api_val%NOTFOUND AND
1419          hr_form_templates_api.g_session_mode <> 'SEED_DATA') THEN
1420          CLOSE cur_api_val;
1421        -- error message
1422        fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
1423        fnd_message.set_token('PROCEDURE', l_proc);
1424        fnd_message.set_token('STEP','10');
1425        fnd_message.raise_error;
1426      END IF;
1427      CLOSE cur_api_val;
1428   --
1429   --
1430   -- Process Logic
1431   --
1432   hr_utility.set_location('Entering:'|| l_proc, 15);
1433 
1434   IF p_delete_children_flag = 'Y' THEN
1435     FOR cur_rec IN cur_item_context LOOP
1436       hr_template_item_contexts_api.delete_template_item_context(
1437               p_template_item_context_id     => cur_rec.template_item_context_id
1438               ,p_object_version_number        => cur_rec.object_version_number);
1439               --,p_delete_children_flag         => p_delete_children_flag);
1440     END LOOP;
1441   END IF;
1442 
1443   hr_utility.set_location('Entering:'|| l_proc, 30);
1444 
1445   FOR cur_rec IN cur_tab_page LOOP
1446     hr_template_item_tab_pages_api.delete_template_item_tab_page(
1447              p_template_item_tab_page_id    => cur_rec.template_item_tab_page_id
1448              ,p_object_version_number        => cur_rec.object_version_number);
1449   END LOOP;
1450 
1451   hr_utility.set_location('Entering:'|| l_proc, 35);
1452 
1453   hr_item_properties_bsi.delete_item_property
1454             (p_template_item_id             => p_template_item_id
1455             ,p_object_version_number        => p_object_version_number);
1456 
1457   hr_utility.set_location('Entering:'|| l_proc, 40);
1458 
1459 ---- Fix For Bug 6631115 Starts -----
1460 
1461   open cur_template_item;
1462   fetch cur_template_item into  l_template_item_id,l_object_version_number;
1463   if cur_template_item%found then
1464   hr_tim_del.del( p_template_item_id             => p_template_item_id
1465                  ,p_object_version_number        => l_object_version_number); -- Changed from p_object_version_number
1466   end if;
1467   close cur_template_item;
1468 
1469 ---- Fix For Bug 6631115 Ends -------
1470 
1471   hr_utility.set_location('Entering:'|| l_proc, 45);
1472 
1473   --
1474   -- Call After Process User Hook
1475   --
1476   begin
1477     hr_template_items_api_bk3.delete_template_item_a
1478       (p_template_item_id   => p_template_item_id
1479        ,p_object_version_number => p_object_version_number
1480        ,p_delete_children_flag  => p_delete_children_flag
1481       );
1482   exception
1483     when hr_api.cannot_find_prog_unit then
1484       hr_api.cannot_find_prog_unit_error
1485         (p_module_name => 'delete_template_item'
1486         ,p_hook_type   => 'AP'
1487         );
1488   end;
1489   --
1490   -- When in validation only mode raise the Validate_Enabled exception
1491   --
1492   hr_utility.set_location('Entering:'|| l_proc, 50);
1493 
1494   if p_validate then
1495     raise hr_api.validate_enabled;
1496   end if;
1497   --
1498   hr_utility.set_location(' Leaving:'||l_proc, 70);
1499 exception
1500   when hr_api.validate_enabled then
1501     --
1502     -- As the Validate_Enabled exception has been raised
1503     -- we must rollback to the savepoint
1504     --
1505     rollback to delete_template_item;
1506     --
1507     -- Only set output warning arguments
1508     -- (Any key or derived arguments must be set to null
1509     -- when validation only mode is being used.)
1510     --
1511     hr_utility.set_location(' Leaving:'||l_proc, 80);
1512   when others then
1513     --
1514     -- A validation or unexpected error has occured
1515     --
1516     rollback to delete_template_item;
1517     hr_utility.set_location(' Leaving:'||l_proc, 90);
1518     raise;
1519 end delete_template_item;
1520 --
1521 -- ----------------------------------------------------------------------------
1522 -- |------------------------< update_template_item >--------------------------|
1523 -- ----------------------------------------------------------------------------
1524 --
1525 procedure update_template_item
1526   (p_validate                        in boolean  default false
1527   ,p_effective_date                  in date
1528   ,p_language_code                   in varchar2 default hr_api.userenv_lang
1529   ,p_template_item_id                in number
1530   ,p_object_version_number           in out nocopy number
1531   ,p_upd_template_item_contexts      in boolean default false
1532   ,p_alignment                       in number default hr_api.g_number
1533   ,p_bevel                           in number default hr_api.g_number
1534   ,p_case_restriction                in number default hr_api.g_number
1535   ,p_default_value                   in varchar2 default hr_api.g_varchar2
1536   ,p_enabled                         in number default hr_api.g_number
1537   ,p_format_mask                     in varchar2 default hr_api.g_varchar2
1538   ,p_height                          in number default hr_api.g_number
1539   ,p_information_formula_id          in number default hr_api.g_number
1540   ,p_information_param_item_id1      in number default hr_api.g_number
1541   ,p_information_param_item_id2      in number default hr_api.g_number
1542   ,p_information_param_item_id3      in number default hr_api.g_number
1543   ,p_information_param_item_id4      in number default hr_api.g_number
1544   ,p_information_param_item_id5      in number default hr_api.g_number
1545   ,p_information_prompt              in varchar2 default hr_api.g_varchar2
1546   ,p_insert_allowed                  in number default hr_api.g_number
1547   ,p_label                           in varchar2 default hr_api.g_varchar2
1548   ,p_prompt_text                     in varchar2 default hr_api.g_varchar2
1549   ,p_prompt_alignment_offset         in number default hr_api.g_number
1550   ,p_prompt_display_style            in number default hr_api.g_number
1551   ,p_prompt_edge                     in number default hr_api.g_number
1552   ,p_prompt_edge_alignment           in number default hr_api.g_number
1553   ,p_prompt_edge_offset              in number default hr_api.g_number
1554   ,p_prompt_text_alignment           in number default hr_api.g_number
1555   ,p_query_allowed                   in number default hr_api.g_number
1556   ,p_required                        in number default hr_api.g_number
1557   ,p_tooltip_text                    in varchar2 default hr_api.g_varchar2
1558   ,p_update_allowed                  in number default hr_api.g_number
1559   ,p_validation_formula_id           in number default hr_api.g_number
1560   ,p_validation_param_item_id1       in number default hr_api.g_number
1561   ,p_validation_param_item_id2       in number default hr_api.g_number
1562   ,p_validation_param_item_id3       in number default hr_api.g_number
1563   ,p_validation_param_item_id4       in number default hr_api.g_number
1564   ,p_validation_param_item_id5       in number default hr_api.g_number
1565   ,p_visible                         in number default hr_api.g_number
1566   ,p_width                           in number default hr_api.g_number
1567   ,p_x_position                      in number default hr_api.g_number
1568   ,p_y_position                      in number default hr_api.g_number
1569   ,p_information_category            in varchar2 default hr_api.g_varchar2
1570   ,p_information1                    in varchar2 default hr_api.g_varchar2
1571   ,p_information2                    in varchar2 default hr_api.g_varchar2
1572   ,p_information3                    in varchar2 default hr_api.g_varchar2
1573   ,p_information4                    in varchar2 default hr_api.g_varchar2
1574   ,p_information5                    in varchar2 default hr_api.g_varchar2
1575   ,p_information6                    in varchar2 default hr_api.g_varchar2
1576   ,p_information7                    in varchar2 default hr_api.g_varchar2
1577   ,p_information8                    in varchar2 default hr_api.g_varchar2
1578   ,p_information9                    in varchar2 default hr_api.g_varchar2
1579   ,p_information10                   in varchar2 default hr_api.g_varchar2
1580   ,p_information11                   in varchar2 default hr_api.g_varchar2
1581   ,p_information12                   in varchar2 default hr_api.g_varchar2
1582   ,p_information13                   in varchar2 default hr_api.g_varchar2
1583   ,p_information14                   in varchar2 default hr_api.g_varchar2
1584   ,p_information15                   in varchar2 default hr_api.g_varchar2
1585   ,p_information16                   in varchar2 default hr_api.g_varchar2
1586   ,p_information17                   in varchar2 default hr_api.g_varchar2
1587   ,p_information18                   in varchar2 default hr_api.g_varchar2
1588   ,p_information19                   in varchar2 default hr_api.g_varchar2
1589   ,p_information20                   in varchar2 default hr_api.g_varchar2
1590   ,p_information21                   in varchar2 default hr_api.g_varchar2
1591   ,p_information22                   in varchar2 default hr_api.g_varchar2
1592   ,p_information23                   in varchar2 default hr_api.g_varchar2
1593   ,p_information24                   in varchar2 default hr_api.g_varchar2
1594   ,p_information25                   in varchar2 default hr_api.g_varchar2
1595   ,p_information26                   in varchar2 default hr_api.g_varchar2
1596   ,p_information27                   in varchar2 default hr_api.g_varchar2
1597   ,p_information28                   in varchar2 default hr_api.g_varchar2
1598   ,p_information29                   in varchar2 default hr_api.g_varchar2
1599   ,p_information30                   in varchar2 default hr_api.g_varchar2
1600   ,p_next_navigation_item_id         in number default hr_api.g_number
1601   ,p_previous_navigation_item_id     in number default hr_api.g_number
1602   ,p_override_value_warning            out nocopy boolean
1603   ) is
1604   --
1605   -- Declare cursors and local variables
1606   --
1607 
1608   l_required_override number := null;
1609   l_form_tab_page_id_override number := null;
1610   l_visible_override number := null;
1611 
1612   CURSOR cur_override
1613   IS
1614   SELECT required_override
1615         ,visible_override
1616   FROM hr_form_items_b hfi
1617        ,hr_template_items_b hti
1618   WHERE hfi.form_item_id = hti.form_item_id
1619   AND hti.template_item_id = p_template_item_id;
1620 
1621   l_temp number;
1622 
1623   CURSOR cur_api_val
1624   IS
1625   SELECT source_form_template_id
1626   FROM hr_source_form_templates hsf
1627        ,hr_template_items_b hti
1628   WHERE hsf.form_template_id_to = hti.form_template_id
1629   AND hti.template_item_id = p_template_item_id;
1630 
1631   l_proc                varchar2(72) := g_package||'update_template_item';
1632   l_object_version_number number;
1633   l_override_value_warning boolean := FALSE;
1634   l_language_code fnd_languages.language_code%TYPE;
1635 
1636 begin
1637   hr_utility.set_location('Entering:'|| l_proc, 10);
1638   --
1639   -- Issue a savepoint
1640   --
1641   savepoint update_template_item;
1642   --
1643   -- Truncate the time portion from all IN date parameters
1644   --
1645      -- p_effective_date := TRUNC(p_effective_date);
1646      l_object_version_number := p_object_version_number;
1647   --
1648   -- Validate the language parameter. l_language_code should be passed
1649   -- instead of p_language_code from now on, to allow an IN OUT parameter to
1650   -- be passed through.
1651   --
1652   l_language_code := p_language_code;
1653   hr_api.validate_language_code(p_language_code => l_language_code);
1654   --
1655   --
1656   -- Call Before Process User Hook
1657   --
1658   begin
1659     hr_template_items_api_bk4.update_template_item_b
1660       (p_effective_date                 => TRUNC(p_effective_date)
1661       ,p_language_code                  => l_language_code
1662       ,p_template_item_id               => p_template_item_id
1663       ,p_object_version_number          => l_object_version_number
1664       ,p_upd_template_item_contexts     => p_upd_template_item_contexts
1665       ,p_alignment                      => p_alignment
1666       ,p_bevel                          => p_bevel
1667       ,p_case_restriction               => p_case_restriction
1668       ,p_default_value                  => p_default_value
1669       ,p_enabled                        => p_enabled
1670       ,p_format_mask                    => p_format_mask
1671       ,p_height                         => p_height
1672       ,p_information_formula_id         => p_information_formula_id
1673       ,p_information_param_item_id1     => p_information_param_item_id1
1674       ,p_information_param_item_id2     => p_information_param_item_id2
1675       ,p_information_param_item_id3     => p_information_param_item_id3
1676       ,p_information_param_item_id4     => p_information_param_item_id4
1677       ,p_information_param_item_id5     => p_information_param_item_id5
1678       ,p_information_prompt             => p_information_prompt
1679       ,p_insert_allowed                 => p_insert_allowed
1680       ,p_label                          => p_label
1681       ,p_prompt_text                    => p_prompt_text
1682       ,p_prompt_alignment_offset        => p_prompt_alignment_offset
1683       ,p_prompt_display_style           => p_prompt_display_style
1684       ,p_prompt_edge                    => p_prompt_edge
1685       ,p_prompt_edge_alignment          => p_prompt_edge_alignment
1686       ,p_prompt_edge_offset             => p_prompt_edge_offset
1687       ,p_prompt_text_alignment          => p_prompt_text_alignment
1688       ,p_query_allowed                  => p_query_allowed
1689       ,p_required                       => p_required
1690       ,p_tooltip_text                   => p_tooltip_text
1691       ,p_update_allowed                 => p_update_allowed
1692       ,p_validation_formula_id          => p_validation_formula_id
1693       ,p_validation_param_item_id1      => p_validation_param_item_id1
1694       ,p_validation_param_item_id2      => p_validation_param_item_id2
1695       ,p_validation_param_item_id3      => p_validation_param_item_id3
1696       ,p_validation_param_item_id4      => p_validation_param_item_id4
1697       ,p_validation_param_item_id5      => p_validation_param_item_id5
1698       ,p_visible                        => p_visible
1699       ,p_width                          => p_width
1700       ,p_x_position                     => p_x_position
1701       ,p_y_position                     => p_y_position
1702       ,p_information_category           => p_information_category
1703       ,p_information1                   => p_information1
1704       ,p_information2                   => p_information2
1705       ,p_information3                   => p_information3
1706       ,p_information4                   => p_information4
1707       ,p_information5                   => p_information5
1708       ,p_information6                   => p_information6
1709       ,p_information7                   => p_information7
1710       ,p_information8                   => p_information8
1711       ,p_information9                   => p_information9
1712       ,p_information10                  => p_information10
1713       ,p_information11                  => p_information11
1714       ,p_information12                  => p_information12
1715       ,p_information13                  => p_information13
1716       ,p_information14                  => p_information14
1717       ,p_information15                  => p_information15
1718       ,p_information16                  => p_information16
1719       ,p_information17                  => p_information17
1720       ,p_information18                  => p_information18
1721       ,p_information19                  => p_information19
1722       ,p_information20                  => p_information20
1723       ,p_information21                  => p_information21
1724       ,p_information22                  => p_information22
1725       ,p_information23                  => p_information23
1726       ,p_information24                  => p_information24
1727       ,p_information25                  => p_information25
1728       ,p_information26                  => p_information26
1729       ,p_information27                  => p_information27
1730       ,p_information28                  => p_information28
1731       ,p_information29                  => p_information29
1732       ,p_information30                  => p_information30
1733       ,p_next_navigation_item_id        => p_next_navigation_item_id
1734       ,p_previous_navigation_item_id    => p_previous_navigation_item_id);
1735 
1736   exception
1737     when hr_api.cannot_find_prog_unit then
1738       hr_api.cannot_find_prog_unit_error
1739         (p_module_name => 'update_template_item'
1740         ,p_hook_type   => 'BP'
1741         );
1742   end;
1743   --
1744   -- Validation in addition to Row Handlers
1745   --
1746   hr_utility.set_location('Entering:'|| l_proc, 15);
1747 
1748      OPEN cur_override;
1749      FETCH cur_override INTO l_required_override,l_visible_override;
1750      CLOSE cur_override;
1751 
1752   hr_utility.set_location('Entering:'|| l_proc, 20);
1753 
1754      IF ( p_required <> hr_api.g_number ) AND
1755         ( l_required_override is not null AND p_required is not null ) THEN
1756        l_override_value_warning  := TRUE;
1757      END IF;
1758 
1759   hr_utility.set_location('Entering:'|| l_proc, 25);
1760 
1761      IF ( p_visible <> hr_api.g_number ) AND
1762        ( l_visible_override is not null AND p_visible is not null ) THEN
1763        l_override_value_warning  := TRUE;
1764      END IF;
1765 
1766   hr_utility.set_location('Entering:'|| l_proc, 30);
1767 
1768      OPEN cur_api_val;
1769      FETCH cur_api_val INTO l_temp;
1770      IF (cur_api_val%NOTFOUND AND
1771          hr_form_templates_api.g_session_mode <> 'SEED_DATA') THEN
1772          CLOSE cur_api_val;
1773        -- error message
1774        fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
1775        fnd_message.set_token('PROCEDURE', l_proc);
1776        fnd_message.set_token('STEP','10');
1777        fnd_message.raise_error;
1778      END IF;
1779      CLOSE cur_api_val;
1780 
1781   hr_utility.set_location('Entering:'|| l_proc, 35);
1782 
1783   --
1784   --
1785   -- Process Logic
1786   --
1787   hr_utility.set_location('Entering:'|| l_proc, 40);
1788   --
1789   if (p_upd_template_item_contexts) then
1790     update_template_item_contexts
1791       (p_effective_date               => p_effective_date
1792       ,p_language_code                => p_language_code
1793       ,p_template_item_id             => p_template_item_id
1794       ,p_alignment                    => p_alignment
1795       ,p_bevel                        => p_bevel
1796       ,p_case_restriction             => p_case_restriction
1797       ,p_default_value                => p_default_value
1798       ,p_enabled                      => p_enabled
1799       ,p_format_mask                  => p_format_mask
1800       ,p_height                       => p_height
1801       ,p_information_formula_id       => p_information_formula_id
1802       ,p_information_param_item_id1   => p_information_param_item_id1
1803       ,p_information_param_item_id2   => p_information_param_item_id2
1804       ,p_information_param_item_id3   => p_information_param_item_id3
1805       ,p_information_param_item_id4   => p_information_param_item_id4
1806       ,p_information_param_item_id5   => p_information_param_item_id5
1807       ,p_information_prompt           => p_information_prompt
1808       ,p_insert_allowed               => p_insert_allowed
1809       ,p_label                        => p_label
1810       ,p_next_navigation_item_id      => p_next_navigation_item_id
1811       ,p_previous_navigation_item_id  => p_previous_navigation_item_id
1812       ,p_prompt_text                  => p_prompt_text
1813       ,p_prompt_alignment_offset      => p_prompt_alignment_offset
1814       ,p_prompt_display_style         => p_prompt_display_style
1815       ,p_prompt_edge                  => p_prompt_edge
1816       ,p_prompt_edge_alignment        => p_prompt_edge_alignment
1817       ,p_prompt_edge_offset           => p_prompt_edge_offset
1818       ,p_prompt_text_alignment        => p_prompt_text_alignment
1819       ,p_query_allowed                => p_query_allowed
1820       ,p_required                     => p_required
1821       ,p_tooltip_text                 => p_tooltip_text
1822       ,p_update_allowed               => p_update_allowed
1823       ,p_validation_formula_id        => p_validation_formula_id
1824       ,p_validation_param_item_id1    => p_validation_param_item_id1
1825       ,p_validation_param_item_id2    => p_validation_param_item_id2
1826       ,p_validation_param_item_id3    => p_validation_param_item_id3
1827       ,p_validation_param_item_id4    => p_validation_param_item_id4
1828       ,p_validation_param_item_id5    => p_validation_param_item_id5
1829       ,p_visible                      => p_visible
1830       ,p_width                        => p_width
1831       ,p_x_position                   => p_x_position
1832       ,p_y_position                   => p_y_position
1833       ,p_information_category         => p_information_category
1834       ,p_information1                 => p_information1
1835       ,p_information2                 => p_information2
1836       ,p_information3                 => p_information3
1837       ,p_information4                 => p_information4
1838       ,p_information5                 => p_information5
1839       ,p_information6                 => p_information6
1840       ,p_information7                 => p_information7
1841       ,p_information8                 => p_information8
1842       ,p_information9                 => p_information9
1843       ,p_information10                => p_information10
1844       ,p_information11                => p_information11
1845       ,p_information12                => p_information12
1846       ,p_information13                => p_information13
1847       ,p_information14                => p_information14
1848       ,p_information15                => p_information15
1849       ,p_information16                => p_information16
1850       ,p_information17                => p_information17
1851       ,p_information18                => p_information18
1852       ,p_information19                => p_information19
1853       ,p_information20                => p_information20
1854       ,p_information21                => p_information21
1855       ,p_information22                => p_information22
1856       ,p_information23                => p_information23
1857       ,p_information24                => p_information24
1858       ,p_information25                => p_information25
1859       ,p_information26                => p_information26
1860       ,p_information27                => p_information27
1861       ,p_information28                => p_information28
1862       ,p_information29                => p_information29
1863       ,p_information30                => p_information30
1864       );
1865   end if;
1866   --
1867   hr_utility.set_location('Entering:'|| l_proc, 42);
1868   --
1869   hr_item_properties_bsi.update_item_property(
1870               p_effective_date               => TRUNC(p_effective_date)
1871              ,p_language_code                => l_language_code
1872              ,p_object_version_number        => l_object_version_number
1873              ,p_template_item_id             => p_template_item_id
1874              ,p_alignment                    => p_alignment
1875              ,p_bevel                        => p_bevel
1876              ,p_case_restriction             => p_case_restriction
1877              ,p_default_value                => p_default_value
1878              ,p_enabled                      => p_enabled
1879              ,p_format_mask                  => p_format_mask
1880              ,p_height                       => p_height
1881              ,p_information_formula_id       => p_information_formula_id
1882              ,p_information_param_item_id1   => p_information_param_item_id1
1883              ,p_information_param_item_id2   => p_information_param_item_id2
1884              ,p_information_param_item_id3   => p_information_param_item_id3
1885              ,p_information_param_item_id4   => p_information_param_item_id4
1886              ,p_information_param_item_id5   => p_information_param_item_id5
1887              ,p_information_prompt           => p_information_prompt
1888              ,p_insert_allowed               => p_insert_allowed
1889              ,p_label                        => p_label
1890              ,p_prompt_text                  => p_prompt_text
1891              ,p_prompt_alignment_offset      => p_prompt_alignment_offset
1892              ,p_prompt_display_style         => p_prompt_display_style
1893              ,p_prompt_edge                  => p_prompt_edge
1894              ,p_prompt_edge_alignment        => p_prompt_edge_alignment
1895              ,p_prompt_edge_offset           => p_prompt_edge_offset
1896              ,p_prompt_text_alignment        => p_prompt_text_alignment
1897              ,p_query_allowed                => p_query_allowed
1898              ,p_required                     => p_required
1899              ,p_tooltip_text                 => p_tooltip_text
1900              ,p_update_allowed               => p_update_allowed
1901              ,p_validation_formula_id        => p_validation_formula_id
1902              ,p_validation_param_item_id1    => p_validation_param_item_id1
1903              ,p_validation_param_item_id2    => p_validation_param_item_id2
1904              ,p_validation_param_item_id3    => p_validation_param_item_id3
1905              ,p_validation_param_item_id4    => p_validation_param_item_id4
1906              ,p_validation_param_item_id5    => p_validation_param_item_id5
1907              ,p_visible                      => p_visible
1908              ,p_width                        => p_width
1909              ,p_x_position                   => p_x_position
1910              ,p_y_position                   => p_y_position
1911              ,p_information_category         => p_information_category
1912              ,p_information1                 => p_information1
1913              ,p_information2                 => p_information2
1914              ,p_information3                 => p_information3
1915              ,p_information4                 => p_information4
1916              ,p_information5                 => p_information5
1917              ,p_information6                 => p_information6
1918              ,p_information7                 => p_information7
1919              ,p_information8                 => p_information8
1920              ,p_information9                 => p_information9
1921              ,p_information10                => p_information10
1922              ,p_information11                => p_information11
1923              ,p_information12                => p_information12
1924              ,p_information13                => p_information13
1925              ,p_information14                => p_information14
1926              ,p_information15                => p_information15
1927              ,p_information16                => p_information16
1928              ,p_information17                => p_information17
1929              ,p_information18                => p_information18
1930              ,p_information19                => p_information19
1931              ,p_information20                => p_information20
1932              ,p_information21                => p_information21
1933              ,p_information22                => p_information22
1934              ,p_information23                => p_information23
1935              ,p_information24                => p_information24
1936              ,p_information25                => p_information25
1937              ,p_information26                => p_information26
1938              ,p_information27                => p_information27
1939              ,p_information28                => p_information28
1940              ,p_information29                => p_information29
1941              ,p_information30                => p_information30
1942              ,p_next_navigation_item_id      => p_next_navigation_item_id
1943              ,p_previous_navigation_item_id  => p_previous_navigation_item_id);
1944              --,p_override_value_warning       => l_override_value_warning);
1945 
1946   hr_utility.set_location('Entering:'|| l_proc, 45);
1947 
1948   --
1949   -- Call After Process User Hook
1950   --
1951   begin
1952     hr_template_items_api_bk4.update_template_item_a
1953       (p_effective_date                 => TRUNC(p_effective_date)
1954       ,p_language_code                  => l_language_code
1955       ,p_template_item_id               => p_template_item_id
1956       ,p_object_version_number          => l_object_version_number
1957       ,p_upd_template_item_contexts     => p_upd_template_item_contexts
1958       ,p_alignment                      => p_alignment
1959       ,p_bevel                          => p_bevel
1960       ,p_case_restriction               => p_case_restriction
1961       ,p_default_value                  => p_default_value
1962       ,p_enabled                        => p_enabled
1963       ,p_format_mask                    => p_format_mask
1964       ,p_height                         => p_height
1965       ,p_information_formula_id         => p_information_formula_id
1966       ,p_information_param_item_id1     => p_information_param_item_id1
1967       ,p_information_param_item_id2     => p_information_param_item_id2
1968       ,p_information_param_item_id3     => p_information_param_item_id3
1969       ,p_information_param_item_id4     => p_information_param_item_id4
1970       ,p_information_param_item_id5     => p_information_param_item_id5
1971       ,p_information_prompt             => p_information_prompt
1972       ,p_insert_allowed                 => p_insert_allowed
1973       ,p_label                          => p_label
1974       ,p_prompt_text                    => p_prompt_text
1975       ,p_prompt_alignment_offset        => p_prompt_alignment_offset
1976       ,p_prompt_display_style           => p_prompt_display_style
1977       ,p_prompt_edge                    => p_prompt_edge
1978       ,p_prompt_edge_alignment          => p_prompt_edge_alignment
1979       ,p_prompt_edge_offset             => p_prompt_edge_offset
1980       ,p_prompt_text_alignment          => p_prompt_text_alignment
1981       ,p_query_allowed                  => p_query_allowed
1982       ,p_required                       => p_required
1983       ,p_tooltip_text                   => p_tooltip_text
1984       ,p_update_allowed                 => p_update_allowed
1985       ,p_validation_formula_id          => p_validation_formula_id
1986       ,p_validation_param_item_id1      => p_validation_param_item_id1
1987       ,p_validation_param_item_id2      => p_validation_param_item_id2
1988       ,p_validation_param_item_id3      => p_validation_param_item_id3
1989       ,p_validation_param_item_id4      => p_validation_param_item_id4
1990       ,p_validation_param_item_id5      => p_validation_param_item_id5
1991       ,p_visible                        => p_visible
1992       ,p_width                          => p_width
1993       ,p_x_position                     => p_x_position
1994       ,p_y_position                     => p_y_position
1995       ,p_information_category           => p_information_category
1996       ,p_information1                   => p_information1
1997       ,p_information2                   => p_information2
1998       ,p_information3                   => p_information3
1999       ,p_information4                   => p_information4
2000       ,p_information5                   => p_information5
2001       ,p_information6                   => p_information6
2002       ,p_information7                   => p_information7
2003       ,p_information8                   => p_information8
2004       ,p_information9                   => p_information9
2005       ,p_information10                  => p_information10
2006       ,p_information11                  => p_information11
2007       ,p_information12                  => p_information12
2008       ,p_information13                  => p_information13
2009       ,p_information14                  => p_information14
2010       ,p_information15                  => p_information15
2011       ,p_information16                  => p_information16
2012       ,p_information17                  => p_information17
2013       ,p_information18                  => p_information18
2014       ,p_information19                  => p_information19
2015       ,p_information20                  => p_information20
2016       ,p_information21                  => p_information21
2017       ,p_information22                  => p_information22
2018       ,p_information23                  => p_information23
2019       ,p_information24                  => p_information24
2020       ,p_information25                  => p_information25
2021       ,p_information26                  => p_information26
2022       ,p_information27                  => p_information27
2023       ,p_information28                  => p_information28
2024       ,p_information29                  => p_information29
2025       ,p_information30                  => p_information30
2026       ,p_next_navigation_item_id        => p_next_navigation_item_id
2027       ,p_previous_navigation_item_id    => p_previous_navigation_item_id
2028       ,p_override_value_warning         => l_override_value_warning);
2029   exception
2030     when hr_api.cannot_find_prog_unit then
2031       hr_api.cannot_find_prog_unit_error
2032         (p_module_name => 'update_template_item'
2033         ,p_hook_type   => 'AP'
2034         );
2035   end;
2036   --
2037   -- When in validation only mode raise the Validate_Enabled exception
2038   --
2039   hr_utility.set_location('Entering:'|| l_proc, 50);
2040 
2041   if p_validate then
2042     raise hr_api.validate_enabled;
2043   end if;
2044   --
2045   -- Set all output arguments
2046   --
2047   p_object_version_number  := l_object_version_number;
2048   p_override_value_warning := l_override_value_warning;
2049   --
2050   hr_utility.set_location(' Leaving:'||l_proc, 70);
2051 exception
2052   when hr_api.validate_enabled then
2053     --
2054     -- As the Validate_Enabled exception has been raised
2055     -- we must rollback to the savepoint
2056     --
2057     rollback to update_template_item;
2058     --
2059     -- Only set output warning arguments
2060     -- (Any key or derived arguments must be set to null
2061     -- when validation only mode is being used.)
2062     --
2063     p_override_value_warning := l_override_value_warning;
2064     hr_utility.set_location(' Leaving:'||l_proc, 80);
2065   when others then
2066     --
2067     -- A validation or unexpected error has occured
2068     --
2069     rollback to update_template_item;
2070     hr_utility.set_location(' Leaving:'||l_proc, 90);
2071     raise;
2072 end update_template_item;
2073 --
2074 end hr_template_items_api;