DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_PROGRESSION_POINT_API

Source


1 Package Body hr_progression_point_api as
2 /* $Header: pepspapi.pkb 120.1 2010/03/04 11:25:56 sidsaxen ship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  hr_progression_point.';
7 --
8 --
9 -- ----------------------------------------------------------------------------
10 -- |---------------------< create_progression_point >-------------------------|
11 -- ----------------------------------------------------------------------------
12 procedure create_progression_point
13   (p_validate                       in     boolean  default false
14   ,p_effective_date                 in     date     default null
15   ,p_business_group_id              in     number
16   ,p_parent_spine_id                in     number
17   ,p_sequence                       in     number
18   ,p_spinal_point                   in     varchar2
19   ,p_request_id                     in     number   default null
20   ,p_program_application_id         in     number   default null
21   ,p_program_id                     in     number   default null
22   ,p_program_update_date            in     date     default null
23   ,p_information_category          in     varchar2 default null
24   ,p_information1                  in     varchar2 default null
25   ,p_information2                  in     varchar2 default null
26   ,p_information3                  in     varchar2 default null
27   ,p_information4                  in     varchar2 default null
28   ,p_information5                  in     varchar2 default null
29   ,p_information6                  in     varchar2 default null
30   ,p_information7                  in     varchar2 default null
31   ,p_information8                  in     varchar2 default null
32   ,p_information9                  in     varchar2 default null
33   ,p_information10                 in     varchar2 default null
34   ,p_information11                 in     varchar2 default null
35   ,p_information12                 in     varchar2 default null
36   ,p_information13                 in     varchar2 default null
37   ,p_information14                 in     varchar2 default null
38   ,p_information15                 in     varchar2 default null
39   ,p_information16                 in     varchar2 default null
40   ,p_information17                 in     varchar2 default null
41   ,p_information18                 in     varchar2 default null
42   ,p_information19                 in     varchar2 default null
43   ,p_information20                 in     varchar2 default null
44   ,p_information21                 in     varchar2 default null
45   ,p_information22                 in     varchar2 default null
46   ,p_information23                 in     varchar2 default null
47   ,p_information24                 in     varchar2 default null
48   ,p_information25                 in     varchar2 default null
49   ,p_information26                 in     varchar2 default null
50   ,p_information27                 in     varchar2 default null
51   ,p_information28                 in     varchar2 default null
52   ,p_information29                 in     varchar2 default null
53   ,p_information30                 in     varchar2 default null
54   ,p_spinal_point_id                out nocopy number
55   ,p_object_version_number          out nocopy number
56  ) is
57 
58    --
59    -- Declare cursors and local variables
60    --
61    l_proc                     varchar2(72) := g_package||'create_progression_point';
62    l_effective_date           date;
63 
64    --
65    -- Declare out parameters
66    --
67    l_spinal_point_id          per_spinal_points.spinal_point_id%TYPE;
68    l_object_version_number    per_spinal_points.object_version_number%TYPE;
69 
70 --
71 begin
72 --
73   hr_utility.set_location('Entering:'|| l_proc, 10);
74   --
75   -- Issue a savepoint
76   --
77   savepoint create_progression_point;
78 
79   hr_utility.set_location(l_proc, 20);
80 
81   --
82   -- Truncate the time portion from all IN date parameters
83   --
84   l_effective_date    := trunc(p_effective_date);
85 
86   --
87   -- Call Before Process User hook for create_progression_point
88   --
89   begin
90   hr_progression_point_bk1.create_progression_point_b
91     (p_business_group_id             => p_business_group_id
92     ,p_parent_spine_id               => p_parent_spine_id
93     ,p_sequence                      => p_sequence
94     ,p_spinal_point                  => p_spinal_point
95     ,p_request_id	             => p_request_id
96     ,p_program_application_id        => p_program_application_id
97     ,p_program_id                    => p_program_id
98     ,p_program_update_date           => p_program_update_date
99     ,p_effective_date		     => l_effective_date
100     ,p_information_category            => p_information_category
101     ,p_information1                    => p_information1
102     ,p_information2                    => p_information2
103     ,p_information3                    => p_information3
104     ,p_information4                    => p_information4
105     ,p_information5                    => p_information5
106     ,p_information6                    => p_information6
107     ,p_information7                    => p_information7
108     ,p_information8                    => p_information8
109     ,p_information9                    => p_information9
110     ,p_information10                   => p_information10
111     ,p_information11                   => p_information11
112     ,p_information12                   => p_information12
113     ,p_information13                   => p_information13
114     ,p_information14                   => p_information14
115     ,p_information15                   => p_information15
116     ,p_information16                   => p_information16
117     ,p_information17                   => p_information17
118     ,p_information18                   => p_information18
119     ,p_information19                   => p_information19
120     ,p_information20                   => p_information20
121     ,p_information21                   => p_information21
122     ,p_information22                   => p_information22
123     ,p_information23                   => p_information23
124     ,p_information24                   => p_information24
125     ,p_information25                   => p_information25
126     ,p_information26                   => p_information26
127     ,p_information27                   => p_information27
128     ,p_information28                   => p_information28
129     ,p_information29                   => p_information29
130     ,p_information30                   => p_information30
131     );
132   exception
133     when hr_api.cannot_find_prog_unit then
134       hr_api.cannot_find_prog_unit_error
135         (p_module_name => 'CREATE_PROGRESSION_POINT'
136         ,p_hook_type   => 'BP'
137         );
138   --
139   -- End of before hook process (create_progression_point)
140   --
141   end;
142 
143   hr_utility.set_location(l_proc, 30);
144   --
145   -- Process Logic
146   --
147 
148   --
149   -- Insert Progression Point
150   --
151   --
152   per_psp_ins.ins
153   (p_effective_date                => l_effective_date
154   ,p_business_group_id             => p_business_group_id
155   ,p_parent_spine_id               => p_parent_spine_id
156   ,p_sequence                      => p_sequence
157   ,p_spinal_point                  => p_spinal_point
158   ,p_request_id	                   => p_request_id
159   ,p_program_application_id        => p_program_application_id
160   ,p_program_id                    => p_program_id
161   ,p_program_update_date           => p_program_update_date
162   ,p_spinal_point_id               => l_spinal_point_id
163   ,p_object_version_number         => l_object_version_number
164   ,p_information_category            => p_information_category
165     ,p_information1                    => p_information1
166     ,p_information2                    => p_information2
167     ,p_information3                    => p_information3
168     ,p_information4                    => p_information4
169     ,p_information5                    => p_information5
170     ,p_information6                    => p_information6
171     ,p_information7                    => p_information7
172     ,p_information8                    => p_information8
173     ,p_information9                    => p_information9
174     ,p_information10                   => p_information10
175     ,p_information11                   => p_information11
176     ,p_information12                   => p_information12
177     ,p_information13                   => p_information13
178     ,p_information14                   => p_information14
179     ,p_information15                   => p_information15
180     ,p_information16                   => p_information16
181     ,p_information17                   => p_information17
182     ,p_information18                   => p_information18
183     ,p_information19                   => p_information19
184     ,p_information20                   => p_information20
185     ,p_information21                   => p_information21
186     ,p_information22                   => p_information22
187     ,p_information23                   => p_information23
188     ,p_information24                   => p_information24
189     ,p_information25                   => p_information25
190     ,p_information26                   => p_information26
191     ,p_information27                   => p_information27
192     ,p_information28                   => p_information28
193     ,p_information29                   => p_information29
194     ,p_information30                   => p_information30
195   );
196 
197   hr_utility.set_location(l_proc, 40);
198 
199   --
200   --
201   -- Call After Process hook for create_progression_point
202   --
203 
204   begin
205   hr_progression_point_bk1.create_progression_point_a
206     (p_business_group_id             => p_business_group_id
207     ,p_parent_spine_id               => p_parent_spine_id
208     ,p_sequence                      => p_sequence
209     ,p_spinal_point                  => p_spinal_point
210     ,p_request_id	             => p_request_id
211     ,p_program_application_id        => p_program_application_id
212     ,p_program_id                    => p_program_id
213     ,p_program_update_date           => p_program_update_date
214     ,p_spinal_point_id               => l_spinal_point_id
215     ,p_object_version_number         => l_object_version_number
216     ,p_effective_date		     => l_effective_date
217     ,p_information_category            => p_information_category
218     ,p_information1                    => p_information1
219     ,p_information2                    => p_information2
220     ,p_information3                    => p_information3
221     ,p_information4                    => p_information4
222     ,p_information5                    => p_information5
223     ,p_information6                    => p_information6
224     ,p_information7                    => p_information7
225     ,p_information8                    => p_information8
226     ,p_information9                    => p_information9
227     ,p_information10                   => p_information10
228     ,p_information11                   => p_information11
229     ,p_information12                   => p_information12
230     ,p_information13                   => p_information13
231     ,p_information14                   => p_information14
232     ,p_information15                   => p_information15
233     ,p_information16                   => p_information16
234     ,p_information17                   => p_information17
235     ,p_information18                   => p_information18
236     ,p_information19                   => p_information19
237     ,p_information20                   => p_information20
238     ,p_information21                   => p_information21
239     ,p_information22                   => p_information22
240     ,p_information23                   => p_information23
241     ,p_information24                   => p_information24
242     ,p_information25                   => p_information25
243     ,p_information26                   => p_information26
244     ,p_information27                   => p_information27
245     ,p_information28                   => p_information28
246     ,p_information29                   => p_information29
247     ,p_information30                   => p_information30
248     );
249   exception
250     when hr_api.cannot_find_prog_unit then
251       hr_api.cannot_find_prog_unit_error
252         (p_module_name => 'CREATE_PREGORESSION_POINT'
253         ,p_hook_type   => 'AP'
254         );
255     --
256     -- End of after hook process (create_progression_point)
257     --
258   end;
259   --
260   -- When in validation only mode raise the Validate_Enabled exception
261   --
262   if p_validate
263   then
264      raise hr_api.validate_enabled;
265   end if;
266   --
267   hr_utility.set_location(l_proc, 50);
268   --
269   -- Set OUT parameters
270   --
271   p_spinal_point_id       := l_spinal_point_id;
272   p_object_version_number := l_object_version_number;
273   --
274   hr_utility.set_location(' Leaving:' ||l_proc, 60);
275   --
276   exception
277   --
278   when hr_api.validate_enabled then
279      --
280      -- As the Validate_Enabled exception has been raised
281      -- we must rollback to the savepoint
282      --
283      ROLLBACK TO create_progression_point;
284      --
285      -- Set OUT parameters to null
286      -- Only set output warning arguments
287      -- (Any key or derived arguments must be set to null
288      -- when validation only mode is being used.)
289      --
290      p_spinal_point_id           := null;
291      p_object_version_number     := null;
292      --
293      hr_utility.set_location(' Leaving:'||l_proc, 70);
294   --
295   when others then
296      --
297      -- A validation or unexpected error has occurred
298      --
299      --
300      --
301      ROLLBACK TO create_progression_point;
302      --
303      hr_utility.set_location(' Leaving:'||l_proc, 80);
304      --
305      raise;
306      --
307 end create_progression_point;
308 
309 -- Start changes for bug 9328526
310 --
311 -- ----------------------------------------------------------------------------
312 -- |-----------------< update_progression_point >-----------------------------|
313 -- ----------------------------------------------------------------------------
314 --
315 procedure update_progression_point
316   (p_validate                       in     boolean  default false
317   ,p_spinal_point_id                in     number
318   ,p_effective_date                 in     date     default hr_api.g_date
319   ,p_business_group_id              in     number   default hr_api.g_number
320   ,p_parent_spine_id                in     number   default hr_api.g_number
321   ,p_sequence                       in     number   default hr_api.g_number
322   ,p_spinal_point                   in     varchar2 default hr_api.g_varchar2
323   ,p_request_id                     in     number   default hr_api.g_number
324   ,p_program_application_id         in     number   default hr_api.g_number
325   ,p_program_id                     in     number   default hr_api.g_number
326   ,p_program_update_date            in     date     default hr_api.g_date
327   ,p_information_category          in     varchar2 default hr_api.g_varchar2
328   ,p_information1                  in     varchar2 default hr_api.g_varchar2
329   ,p_information2                  in     varchar2 default hr_api.g_varchar2
330   ,p_information3                  in     varchar2 default hr_api.g_varchar2
331   ,p_information4                  in     varchar2 default hr_api.g_varchar2
332   ,p_information5                  in     varchar2 default hr_api.g_varchar2
333   ,p_information6                  in     varchar2 default hr_api.g_varchar2
334   ,p_information7                  in     varchar2 default hr_api.g_varchar2
335   ,p_information8                  in     varchar2 default hr_api.g_varchar2
336   ,p_information9                  in     varchar2 default hr_api.g_varchar2
337   ,p_information10                 in     varchar2 default hr_api.g_varchar2
338   ,p_information11                 in     varchar2 default hr_api.g_varchar2
339   ,p_information12                 in     varchar2 default hr_api.g_varchar2
340   ,p_information13                 in     varchar2 default hr_api.g_varchar2
341   ,p_information14                 in     varchar2 default hr_api.g_varchar2
342   ,p_information15                 in     varchar2 default hr_api.g_varchar2
343   ,p_information16                 in     varchar2 default hr_api.g_varchar2
344   ,p_information17                 in     varchar2 default hr_api.g_varchar2
345   ,p_information18                 in     varchar2 default hr_api.g_varchar2
346   ,p_information19                 in     varchar2 default hr_api.g_varchar2
347   ,p_information20                 in     varchar2 default hr_api.g_varchar2
348   ,p_information21                 in     varchar2 default hr_api.g_varchar2
349   ,p_information22                 in     varchar2 default hr_api.g_varchar2
350   ,p_information23                 in     varchar2 default hr_api.g_varchar2
351   ,p_information24                 in     varchar2 default hr_api.g_varchar2
352   ,p_information25                 in     varchar2 default hr_api.g_varchar2
353   ,p_information26                 in     varchar2 default hr_api.g_varchar2
354   ,p_information27                 in     varchar2 default hr_api.g_varchar2
355   ,p_information28                 in     varchar2 default hr_api.g_varchar2
356   ,p_information29                 in     varchar2 default hr_api.g_varchar2
357   ,p_information30                 in     varchar2 default hr_api.g_varchar2
358   ,p_object_version_number         in out nocopy number
359   ) is
360 begin
361  --
362  update_progression_point
363   (p_validate                 =>   p_validate
364   ,p_spinal_point_id          =>   p_spinal_point_id
365   ,p_effective_date           =>   p_effective_date
366   ,p_business_group_id        =>   p_business_group_id
367   ,p_parent_spine_id          =>   p_parent_spine_id
368   ,p_sequence                 =>   p_sequence
369   ,p_spinal_point             =>   p_spinal_point
370   ,p_request_id               =>   p_request_id
371   ,p_program_application_id   =>   p_program_application_id
372   ,p_program_id               =>   p_program_id
373   ,p_program_update_date      =>   p_program_update_date
374   ,p_information_category     =>   p_information_category
375   ,p_information1             =>   p_information1
376   ,p_information2             =>   p_information2
377   ,p_information3             =>   p_information3
378   ,p_information4             =>   p_information4
379   ,p_information5             =>   p_information5
380   ,p_information6             =>   p_information6
381   ,p_information7             =>   p_information7
382   ,p_information8             =>   p_information8
383   ,p_information9             =>   p_information9
384   ,p_information10            =>   p_information10
385   ,p_information11            =>   p_information11
386   ,p_information12            =>   p_information12
387   ,p_information13            =>   p_information13
388   ,p_information14            =>   p_information14
389   ,p_information15            =>   p_information15
390   ,p_information16            =>   p_information16
391   ,p_information17            =>   p_information17
392   ,p_information18            =>   p_information18
393   ,p_information19            =>   p_information19
394   ,p_information20            =>   p_information20
395   ,p_information21            =>   p_information21
396   ,p_information22            =>   p_information22
397   ,p_information23            =>   p_information23
398   ,p_information24            =>   p_information24
399   ,p_information25            =>   p_information25
400   ,p_information26            =>   p_information26
401   ,p_information27            =>   p_information27
402   ,p_information28            =>   p_information28
403   ,p_information29            =>   p_information29
404   ,p_information30            =>   p_information30
405   ,p_object_version_number    =>   p_object_version_number
406   ,p_called_from              =>   'API'
407  );
408  --
409 end;
410 -- End changes for bug 9328526
411 
412 --
413 -- ----------------------------------------------------------------------------
414 -- |-----------------< update_progression_point >-----------------------------|
415 -- ----------------------------------------------------------------------------
416 --
417 procedure update_progression_point
418   (p_validate                       in     boolean  default false
419   ,p_spinal_point_id                in     number
420   ,p_effective_date                 in     date     default hr_api.g_date
421   ,p_business_group_id              in     number   default hr_api.g_number
422   ,p_parent_spine_id                in     number   default hr_api.g_number
423   ,p_sequence                       in     number   default hr_api.g_number
424   ,p_spinal_point                   in     varchar2 default hr_api.g_varchar2
425   ,p_request_id                     in     number   default hr_api.g_number
426   ,p_program_application_id         in     number   default hr_api.g_number
427   ,p_program_id                     in     number   default hr_api.g_number
428   ,p_program_update_date            in     date     default hr_api.g_date
429   ,p_information_category          in     varchar2 default hr_api.g_varchar2
430   ,p_information1                  in     varchar2 default hr_api.g_varchar2
431   ,p_information2                  in     varchar2 default hr_api.g_varchar2
432   ,p_information3                  in     varchar2 default hr_api.g_varchar2
433   ,p_information4                  in     varchar2 default hr_api.g_varchar2
434   ,p_information5                  in     varchar2 default hr_api.g_varchar2
435   ,p_information6                  in     varchar2 default hr_api.g_varchar2
436   ,p_information7                  in     varchar2 default hr_api.g_varchar2
437   ,p_information8                  in     varchar2 default hr_api.g_varchar2
438   ,p_information9                  in     varchar2 default hr_api.g_varchar2
439   ,p_information10                 in     varchar2 default hr_api.g_varchar2
440   ,p_information11                 in     varchar2 default hr_api.g_varchar2
441   ,p_information12                 in     varchar2 default hr_api.g_varchar2
442   ,p_information13                 in     varchar2 default hr_api.g_varchar2
443   ,p_information14                 in     varchar2 default hr_api.g_varchar2
444   ,p_information15                 in     varchar2 default hr_api.g_varchar2
445   ,p_information16                 in     varchar2 default hr_api.g_varchar2
446   ,p_information17                 in     varchar2 default hr_api.g_varchar2
447   ,p_information18                 in     varchar2 default hr_api.g_varchar2
448   ,p_information19                 in     varchar2 default hr_api.g_varchar2
449   ,p_information20                 in     varchar2 default hr_api.g_varchar2
450   ,p_information21                 in     varchar2 default hr_api.g_varchar2
451   ,p_information22                 in     varchar2 default hr_api.g_varchar2
452   ,p_information23                 in     varchar2 default hr_api.g_varchar2
453   ,p_information24                 in     varchar2 default hr_api.g_varchar2
454   ,p_information25                 in     varchar2 default hr_api.g_varchar2
455   ,p_information26                 in     varchar2 default hr_api.g_varchar2
456   ,p_information27                 in     varchar2 default hr_api.g_varchar2
457   ,p_information28                 in     varchar2 default hr_api.g_varchar2
458   ,p_information29                 in     varchar2 default hr_api.g_varchar2
459   ,p_information30                 in     varchar2 default hr_api.g_varchar2
460   ,p_object_version_number         in out nocopy number
461   ,p_called_from                   in     varchar2 --added for bug 9328526
462   ) is
463 
464    --
465    -- Declare cursors and local variables
466    --
467    l_proc                     varchar2(72) := g_package||'update_progression_point';
468    l_effective_date           date;
469    lv_object_version_number   per_spinal_points.object_version_number%TYPE;
470 
471    --
472    -- Declare out parameters
473    --
474    l_object_version_number    per_spinal_points.object_version_number%TYPE;
475 
476 --
477 begin
478 --
479   hr_utility.set_location('Entering:'|| l_proc, 10);
480   --
481   lv_object_version_number := p_object_version_number;
482 
483   --
484   -- Issue a savepoint
485   --
486   savepoint update_progression_point;
487 
488   hr_utility.set_location(l_proc, 20);
489 
490   --
491   -- Truncate the time portion from all IN date parameters
492   --
493   l_effective_date    := trunc(p_effective_date);
494 
495   --
496   -- Call Before Process User hook for create_progression_point
497   --
498   begin
499   hr_progression_point_bk2.update_progression_point_b
500     (p_business_group_id             => p_business_group_id
501     ,p_spinal_point_id               => p_spinal_point_id
502     ,p_parent_spine_id               => p_parent_spine_id
503     ,p_sequence                      => p_sequence
504     ,p_spinal_point                  => p_spinal_point
505     ,p_request_id	             => p_request_id
506     ,p_program_application_id        => p_program_application_id
507     ,p_program_id                    => p_program_id
508     ,p_program_update_date           => p_program_update_date
509     ,p_object_version_number         => p_object_version_number
510     ,p_effective_date		     => l_effective_date
511     ,p_information_category            => p_information_category
512     ,p_information1                    => p_information1
513     ,p_information2                    => p_information2
514     ,p_information3                    => p_information3
515     ,p_information4                    => p_information4
516     ,p_information5                    => p_information5
517     ,p_information6                    => p_information6
518     ,p_information7                    => p_information7
519     ,p_information8                    => p_information8
520     ,p_information9                    => p_information9
521     ,p_information10                   => p_information10
522     ,p_information11                   => p_information11
523     ,p_information12                   => p_information12
524     ,p_information13                   => p_information13
525     ,p_information14                   => p_information14
526     ,p_information15                   => p_information15
527     ,p_information16                   => p_information16
528     ,p_information17                   => p_information17
529     ,p_information18                   => p_information18
530     ,p_information19                   => p_information19
531     ,p_information20                   => p_information20
532     ,p_information21                   => p_information21
533     ,p_information22                   => p_information22
534     ,p_information23                   => p_information23
535     ,p_information24                   => p_information24
536     ,p_information25                   => p_information25
537     ,p_information26                   => p_information26
538     ,p_information27                   => p_information27
539     ,p_information28                   => p_information28
540     ,p_information29                   => p_information29
541     ,p_information30                   => p_information30
542     );
543   exception
544     when hr_api.cannot_find_prog_unit then
545       hr_api.cannot_find_prog_unit_error
546         (p_module_name => 'UPDATE_PROGRESSION_POINT'
547         ,p_hook_type   => 'BP'
548         );
549   --
550   -- End of before hook process (update_progression_point)
551   --
552   end;
553 
554   hr_utility.set_location(l_proc, 30);
555   --
556   -- Process Logic
557   --
558 
559   l_object_version_number := p_object_version_number;
560 
561   -- Start changes for bug 9328526
562   if nvl(p_called_from,'API') <> 'GSPW' then
563     pqh_gsp_utility.chk_ps_for_upd_del
564     (p_parent_spine_id => p_parent_spine_id
565     ,p_entity => 'PROGRESSION_POINT'
566     );
567   end if;
568   -- End changes for bug 9328526
569 
570   --
571   -- Update Progression Point
572   --
573   --
574   per_psp_upd.upd
575   (p_business_group_id             => p_business_group_id
576   ,p_spinal_point_id               => p_spinal_point_id
577   ,p_parent_spine_id               => p_parent_spine_id
578   ,p_sequence                      => p_sequence
579   ,p_spinal_point                  => p_spinal_point
580   ,p_request_id	                   => p_request_id
581   ,p_program_application_id        => p_program_application_id
582   ,p_program_id                    => p_program_id
583   ,p_program_update_date           => p_program_update_date
584   ,p_object_version_number         => l_object_version_number
585   ,p_effective_date	           => l_effective_date
586   ,p_information_category            => p_information_category
587     ,p_information1                    => p_information1
588     ,p_information2                    => p_information2
589     ,p_information3                    => p_information3
590     ,p_information4                    => p_information4
591     ,p_information5                    => p_information5
592     ,p_information6                    => p_information6
593     ,p_information7                    => p_information7
594     ,p_information8                    => p_information8
595     ,p_information9                    => p_information9
596     ,p_information10                   => p_information10
597     ,p_information11                   => p_information11
598     ,p_information12                   => p_information12
599     ,p_information13                   => p_information13
600     ,p_information14                   => p_information14
601     ,p_information15                   => p_information15
602     ,p_information16                   => p_information16
603     ,p_information17                   => p_information17
604     ,p_information18                   => p_information18
605     ,p_information19                   => p_information19
606     ,p_information20                   => p_information20
607     ,p_information21                   => p_information21
608     ,p_information22                   => p_information22
609     ,p_information23                   => p_information23
610     ,p_information24                   => p_information24
611     ,p_information25                   => p_information25
612     ,p_information26                   => p_information26
613     ,p_information27                   => p_information27
614     ,p_information28                   => p_information28
615     ,p_information29                   => p_information29
616     ,p_information30                   => p_information30
617   );
618 
619   --
620   -- Assign the out parameters.
621   --
622   p_object_version_number     := l_object_version_number;
623 
624   hr_utility.set_location(l_proc, 40);
625 
626   --
627   --
628   -- Call After Process hook for create_grade
629   --
630 
631   begin
632   hr_progression_point_bk2.update_progression_point_a
633     (p_business_group_id             => p_business_group_id
634     ,p_spinal_point_id               => p_spinal_point_id
635     ,p_parent_spine_id               => p_parent_spine_id
636     ,p_sequence                      => p_sequence
637     ,p_spinal_point                  => p_spinal_point
638     ,p_request_id	             => p_request_id
639     ,p_program_application_id        => p_program_application_id
640     ,p_program_id                    => p_program_id
641     ,p_program_update_date           => p_program_update_date
642     ,p_object_version_number         => l_object_version_number
643     ,p_effective_date	             => l_effective_date
644     ,p_information_category            => p_information_category
645     ,p_information1                    => p_information1
646     ,p_information2                    => p_information2
647     ,p_information3                    => p_information3
648     ,p_information4                    => p_information4
649     ,p_information5                    => p_information5
650     ,p_information6                    => p_information6
651     ,p_information7                    => p_information7
652     ,p_information8                    => p_information8
653     ,p_information9                    => p_information9
654     ,p_information10                   => p_information10
655     ,p_information11                   => p_information11
656     ,p_information12                   => p_information12
657     ,p_information13                   => p_information13
658     ,p_information14                   => p_information14
659     ,p_information15                   => p_information15
660     ,p_information16                   => p_information16
661     ,p_information17                   => p_information17
662     ,p_information18                   => p_information18
663     ,p_information19                   => p_information19
664     ,p_information20                   => p_information20
665     ,p_information21                   => p_information21
666     ,p_information22                   => p_information22
667     ,p_information23                   => p_information23
668     ,p_information24                   => p_information24
669     ,p_information25                   => p_information25
670     ,p_information26                   => p_information26
671     ,p_information27                   => p_information27
672     ,p_information28                   => p_information28
673     ,p_information29                   => p_information29
674     ,p_information30                   => p_information30
675   );
676   exception
677     when hr_api.cannot_find_prog_unit then
678       hr_api.cannot_find_prog_unit_error
679         (p_module_name => 'UPDATE_PROGRESSION_POINT'
680         ,p_hook_type   => 'AP'
681         );
682     --
683     -- End of after hook process (update_progression_point)
684     --
685   end;
686   --
687   -- When in validation only mode raise the Validate_Enabled exception
688   --
689   if p_validate
690   then
691      raise hr_api.validate_enabled;
692   end if;
693   --
694   hr_utility.set_location(l_proc, 50);
695   --
696   -- Set OUT parameters
697   --
698   p_object_version_number := l_object_version_number;
699   --
700   hr_utility.set_location(' Leaving:' ||l_proc, 60);
701   --
702   exception
703   --
704   when hr_api.validate_enabled then
705      --
706      -- As the Validate_Enabled exception has been raised
707      -- we must rollback to the savepoint
708      --
709      rollback to update_progression_point;
710      --
711      -- Set OUT parameters to null
712      -- Only set output warning arguments
713      -- (Any key or derived arguments must be set to null
714      -- when validation only mode is being used.)
715      --
716      p_object_version_number     := p_object_version_number;
717      --
718      hr_utility.set_location(' Leaving:'||l_proc, 70);
719   --
720   when others then
721      --
722      -- A validation or unexpected error has occurred
723      --
724      --
725      --
726      rollback to update_progression_point;
727      --
728      p_object_version_number     := lv_object_version_number;
729      --
730      hr_utility.set_location(' Leaving:'||l_proc, 80);
731      --
732      raise;
733      --
734 end update_progression_point;
735 
736 -- Start changes for bug 9328526
737 --
738 -- ----------------------------------------------------------------------------
739 -- |-------------------< delete_progression_point >---------------------------|
740 -- ----------------------------------------------------------------------------
741 --
742 procedure delete_progression_point
743   (p_validate                      in     boolean
744   ,p_spinal_point_id               in     number
745   ,p_object_version_number         in     number
746 ) IS
747 begin
748  --
749  delete_progression_point
750   (p_validate               =>   p_validate
751   ,p_spinal_point_id        =>   p_spinal_point_id
752   ,p_object_version_number  =>   p_object_version_number
753   ,p_called_from            =>   'API'
754   );
755  --
756 end;
757 -- End changes for bug 9328526
758 
759 --
760 --
761 -- ----------------------------------------------------------------------------
762 -- |-------------------< delete_progression_point >---------------------------|
763 -- ----------------------------------------------------------------------------
764 --
765 
766 procedure delete_progression_point
767   (p_validate                      in     boolean
768   ,p_spinal_point_id               in     number
769   ,p_object_version_number         in     number
770   ,p_called_from                   in     varchar2 -- added for bug 9328526
771 ) IS
772 
773   --
774   -- Declare cursors and local variables
775   --
776   l_proc       varchar2(72) := g_package||'delete_progression_point';
777 
778   -- Start changes for bug 9328526
779   l_parent_spine_id    number;
780 
781   cursor c_get_ps_id is
782   select parent_spine_id
783    from per_spinal_points
784   where spinal_point_id = p_spinal_point_id;
785 
786   -- End changes for bug 9328526
787 
788 begin
789   hr_utility.set_location('Entering:'|| l_proc, 10);
790 
791   --
792   -- Issue a savepoint
793   --
794   savepoint delete_progression_point;
795 
796   --
797   -- Call Before Process User Hook
798   --
799   begin
800   hr_progression_point_bk3.delete_progression_point_b
801     (p_validate                   =>  p_validate
802     ,p_spinal_point_id            =>  p_spinal_point_id
803     ,p_object_version_number      =>  p_object_version_number
804     );
805   exception
806     when hr_api.cannot_find_prog_unit then
807       hr_api.cannot_find_prog_unit_error
808         (p_module_name => 'DELETE_PROGRESSSION_POINT'
809         ,p_hook_type   => 'BP'
810         );
811   end;
812 
813   hr_utility.set_location(l_proc, 20);
814 
815   --
816   -- Process Logic
817   --
818 
819   -- Start changes for bug 9328526
820   open c_get_ps_id;
821   fetch c_get_ps_id into l_parent_spine_id;
822   if c_get_ps_id%notfound then
823     close c_get_ps_id;
824     per_psp_shd.constraint_error(p_constraint_name => 'PER_SPINAL_POINTS_FK2');
825   else
826     close c_get_ps_id;
827   end if;
828 
829   hr_utility.set_location(l_proc, 25);
830 
831   if nvl(p_called_from,'API') <> 'GSPW' then
832     pqh_gsp_utility.chk_ps_for_upd_del
833     (p_parent_spine_id => l_parent_spine_id
834     ,p_entity => 'PROGRESSION_POINT'
835     );
836   end if;
837 
838   hr_utility.set_location(l_proc, 26);
839 
840   -- End changes for bug 9328526
841 
842   per_psp_del.del
843   (p_spinal_point_id               => p_spinal_point_id
844   ,p_object_version_number         => p_object_version_number);
845 
846   hr_utility.set_location(l_proc, 30);
847 
848   --
849   -- Call After Process User Hook
850   --
851  begin
852   hr_progression_point_bk3.delete_progression_point_a
853     (p_validate                   =>  p_validate
854     ,p_spinal_point_id            =>  p_spinal_point_id
855     ,p_object_version_number      =>  p_object_version_number);
856   exception
857     when hr_api.cannot_find_prog_unit then
858       hr_api.cannot_find_prog_unit_error
859         (p_module_name => 'DELETE_PROGRESSSION_POINT'
860         ,p_hook_type   => 'AP'
861         );
862   end;
863 
864   hr_utility.set_location(l_proc, 40);
865 
866   --
867   -- When in validation only mode raise the Validate_Enabled exception
868   --
869   if p_validate then
870     raise hr_api.validate_enabled;
871   end if;
872 
873   hr_utility.set_location(' Leaving:'||l_proc, 100);
874 exception
875   when hr_api.validate_enabled then
876     hr_utility.set_location(' Leaving...:'||l_proc, 50);
877     --
878     -- As the Validate_Enabled exception has been raised
879     -- we must rollback to the savepoint
880     --
881     rollback to delete_progression_point;
882     --
883     -- Only set output warning arguments
884     -- (Any key or derived arguments must be set to null
885     -- when validation only mode is being used.)
886     --
887   when others then
888     hr_utility.set_location(' Leaving...:'||l_proc, 60);
889     --
890     -- A validation or unexpected error has occured
891     --
892     rollback to delete_progression_point;
893     raise;
894 --
895 end delete_progression_point;
896 --
897 end hr_progression_point_api;