DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_FORM_PROPERTIES_BSI

Source


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