DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_APPLICATION_API

Source


1 Package Body hr_application_api as
2 /* $Header: peaplapi.pkb 115.7 2002/12/13 13:12:41 raranjan ship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := 'hr_application_api.';
7 --
8 -- ---------------------------------------------------------------------------
9 -- |------------------------< update_apl_details >---------------------------|
10 -- ---------------------------------------------------------------------------
11 --
12 procedure update_apl_details
13   (p_validate                     in      boolean  default false
14   ,p_application_id               in      number
15   ,p_object_version_number        in out nocopy  number
16   ,p_effective_date               in      date
17   ,p_comments                     in      varchar2 default hr_api.g_varchar2
18   ,p_current_employer             in      varchar2 default hr_api.g_varchar2
19   ,p_projected_hire_date          in      date     default hr_api.g_date
20   ,p_termination_reason           in      varchar2 default hr_api.g_varchar2
21   ,p_appl_attribute_category      in      varchar2 default hr_api.g_varchar2
22   ,p_appl_attribute1              in      varchar2 default hr_api.g_varchar2
23   ,p_appl_attribute2              in      varchar2 default hr_api.g_varchar2
24   ,p_appl_attribute3              in      varchar2 default hr_api.g_varchar2
25   ,p_appl_attribute4              in      varchar2 default hr_api.g_varchar2
26   ,p_appl_attribute5              in      varchar2 default hr_api.g_varchar2
27   ,p_appl_attribute6              in      varchar2 default hr_api.g_varchar2
28   ,p_appl_attribute7              in      varchar2 default hr_api.g_varchar2
29   ,p_appl_attribute8              in      varchar2 default hr_api.g_varchar2
30   ,p_appl_attribute9              in      varchar2 default hr_api.g_varchar2
31   ,p_appl_attribute10             in      varchar2 default hr_api.g_varchar2
32   ,p_appl_attribute11             in      varchar2 default hr_api.g_varchar2
33   ,p_appl_attribute12             in      varchar2 default hr_api.g_varchar2
34   ,p_appl_attribute13             in      varchar2 default hr_api.g_varchar2
35   ,p_appl_attribute14             in      varchar2 default hr_api.g_varchar2
36   ,p_appl_attribute15             in      varchar2 default hr_api.g_varchar2
37   ,p_appl_attribute16             in      varchar2 default hr_api.g_varchar2
38   ,p_appl_attribute17             in      varchar2 default hr_api.g_varchar2
39   ,p_appl_attribute18             in      varchar2 default hr_api.g_varchar2
40   ,p_appl_attribute19             in      varchar2 default hr_api.g_varchar2
41   ,p_appl_attribute20             in      varchar2 default hr_api.g_varchar2
42   ) is
43   --
44   -- Declare cursors and local variables
45   --
46   l_proc                  varchar2(72) := g_package||'update_apl_details';
47   l_projected_hire_date   per_applications.projected_hire_date%TYPE;
48   l_object_version_number per_applications.object_version_number%TYPE;
49   l_effective_date        date;
50   --
51   lv_object_version_number number := p_object_version_number ;
52   --
53 begin
54   hr_utility.set_location('Entering:'|| l_proc, 5);
55   --
56   -- Issue a savepoint.
57   --
58   savepoint update_apl_details;
59   --
60   -- Initialise local variables
61   --
62   l_object_version_number := p_object_version_number;
63   l_projected_hire_date   := trunc(p_projected_hire_date);
64   l_effective_date        := trunc(p_effective_date);
65   hr_utility.set_location(l_proc, 10);
66   --
67   begin
68     --
69     -- Start of the before process hook of update_apl_details
70     --
71     hr_application_bk1.update_apl_details_b
72       (
73        p_application_id               => p_application_id
74       ,p_object_version_number        => p_object_version_number
75       ,p_effective_date               => l_effective_date
76       ,p_comments                     => p_comments
77       ,p_current_employer             => p_current_employer
78       ,p_projected_hire_date          => l_projected_hire_date
79       ,p_termination_reason           => p_termination_reason
80       ,p_appl_attribute_category      => p_appl_attribute_category
81       ,p_appl_attribute1              => p_appl_attribute1
82       ,p_appl_attribute2              => p_appl_attribute2
83       ,p_appl_attribute3              => p_appl_attribute3
84       ,p_appl_attribute4              => p_appl_attribute4
85       ,p_appl_attribute5              => p_appl_attribute5
86       ,p_appl_attribute6              => p_appl_attribute6
87       ,p_appl_attribute7              => p_appl_attribute7
88       ,p_appl_attribute8              => p_appl_attribute8
89       ,p_appl_attribute9              => p_appl_attribute9
90       ,p_appl_attribute10             => p_appl_attribute10
91       ,p_appl_attribute11             => p_appl_attribute11
92       ,p_appl_attribute12             => p_appl_attribute12
93       ,p_appl_attribute13             => p_appl_attribute13
94       ,p_appl_attribute14             => p_appl_attribute14
95       ,p_appl_attribute15             => p_appl_attribute15
96       ,p_appl_attribute16             => p_appl_attribute16
97       ,p_appl_attribute17             => p_appl_attribute17
98       ,p_appl_attribute18             => p_appl_attribute18
99       ,p_appl_attribute19             => p_appl_attribute19
100       ,p_appl_attribute20             => p_appl_attribute20
101       );
102   exception
103     when hr_api.cannot_find_prog_unit then
104       hr_api.cannot_find_prog_unit_error
105         (p_module_name => 'UPDATE_APL_DETAILS'
106         ,p_hook_type   => 'BP'
107         );
108   --
109   -- End of of the before process hook for update_apl_details
110   --
111   end;
112   --
113   -- Update the applicant record
114   --
115   per_apl_upd.upd
116   (p_application_id                    => p_application_id
117   ,p_comments                          => p_comments
118   ,p_current_employer                  => p_current_employer
119   ,p_projected_hire_date               => l_projected_hire_date
120   ,p_termination_reason                => p_termination_reason
121   ,p_appl_attribute_category           => p_appl_attribute_category
122   ,p_appl_attribute1                   => p_appl_attribute1
123   ,p_appl_attribute2                   => p_appl_attribute2
124   ,p_appl_attribute3                   => p_appl_attribute3
125   ,p_appl_attribute4                   => p_appl_attribute4
126   ,p_appl_attribute5                   => p_appl_attribute5
127   ,p_appl_attribute6                   => p_appl_attribute6
128   ,p_appl_attribute7                   => p_appl_attribute7
129   ,p_appl_attribute8                   => p_appl_attribute8
130   ,p_appl_attribute9                   => p_appl_attribute9
131   ,p_appl_attribute10                  => p_appl_attribute10
132   ,p_appl_attribute11                  => p_appl_attribute11
133   ,p_appl_attribute12                  => p_appl_attribute12
134   ,p_appl_attribute13                  => p_appl_attribute13
135   ,p_appl_attribute14                  => p_appl_attribute14
136   ,p_appl_attribute15                  => p_appl_attribute15
137   ,p_appl_attribute16                  => p_appl_attribute16
138   ,p_appl_attribute17                  => p_appl_attribute17
139   ,p_appl_attribute18                  => p_appl_attribute18
140   ,p_appl_attribute19                  => p_appl_attribute19
141   ,p_appl_attribute20                  => p_appl_attribute20
142   ,p_object_version_number             => l_object_version_number
143   ,p_effective_date                    => l_effective_date
144   ,p_validate			       => false
145   );
146   --
147  begin
148     --
149     -- Start of the after process hook for update_apl_details
150     --
151     hr_application_bk1.update_apl_details_a
152       (
153        p_application_id               => p_application_id
154       ,p_object_version_number        => l_object_version_number
155       ,p_effective_date               => l_effective_date
156       ,p_comments                     => p_comments
157       ,p_current_employer             => p_current_employer
158       ,p_projected_hire_date          => l_projected_hire_date
159       ,p_termination_reason           => p_termination_reason
160       ,p_appl_attribute_category      => p_appl_attribute_category
161       ,p_appl_attribute1              => p_appl_attribute1
162       ,p_appl_attribute2              => p_appl_attribute2
163       ,p_appl_attribute3              => p_appl_attribute3
164       ,p_appl_attribute4              => p_appl_attribute4
165       ,p_appl_attribute5              => p_appl_attribute5
166       ,p_appl_attribute6              => p_appl_attribute6
167       ,p_appl_attribute7              => p_appl_attribute7
168       ,p_appl_attribute8              => p_appl_attribute8
169       ,p_appl_attribute9              => p_appl_attribute9
170       ,p_appl_attribute10             => p_appl_attribute10
171       ,p_appl_attribute11             => p_appl_attribute11
172       ,p_appl_attribute12             => p_appl_attribute12
173       ,p_appl_attribute13             => p_appl_attribute13
174       ,p_appl_attribute14             => p_appl_attribute14
175       ,p_appl_attribute15             => p_appl_attribute15
176       ,p_appl_attribute16             => p_appl_attribute16
177       ,p_appl_attribute17             => p_appl_attribute17
178       ,p_appl_attribute18             => p_appl_attribute18
179       ,p_appl_attribute19             => p_appl_attribute19
180       ,p_appl_attribute20             => p_appl_attribute20
181       );
182   exception
183     when hr_api.cannot_find_prog_unit then
184       hr_api.cannot_find_prog_unit_error
185         (p_module_name => 'UPDATE_APL_DETAILS'
186         ,p_hook_type   => 'AP'
187         );
188   --
189   -- End of of the before process hook for update_apl_details
190   --
191   end;
192   --
193   hr_utility.set_location(l_proc, 15);
194   --
195   -- When in validation only mode raise the Validate_Enabled exception
196   --
197   if p_validate then
198     raise hr_api.validate_enabled;
199   end if;
200   --
201   -- Set all output arguments
202   --
203   p_object_version_number := l_object_version_number;
204   --
205   hr_utility.set_location(' Leaving:'||l_proc, 20);
206   --
207 exception
208   --
209   when hr_api.validate_enabled then
210     --
211     -- As the Validate_Enabled exception has been raised
212     -- we must rollback to the savepoint
213     --
214     ROLLBACK TO update_apl_details;
215     --
216     -- Only set output warning arguments
217     -- (Any key or derived arguments must be set to null
218     -- when validation only mode is being used.)
219     --
220     hr_utility.set_location(' Leaving:'||l_proc, 25);
221     --
222   when others then
223     --
224     -- A validation or unexpected error has occurred
225     --
226     -- Added as part of fix to bug 632479
227     --
228     p_object_version_number := lv_object_version_number ;
229 
230     ROLLBACK TO update_apl_details;
231     --
232     hr_utility.set_location(' Leaving:'||l_proc, 30);
233     raise;
234     --
235     -- End of fix.
236     --
237 end update_apl_details;
238 --
239 end hr_application_api;