[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;