DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_HIERARCHY_VERSIONS_API

Source


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