[Home] [Help]
PACKAGE BODY: APPS.PQH_RATE_MATRIX_NODES_API
Source
1 Package Body PQH_RATE_MATRIX_NODES_API as
2 /* $Header: pqrmnapi.pkb 120.1 2005/07/13 04:52:50 srenukun noship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := 'PQH_RATE_MATRIX_NODES_API.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------<create_rate_matrix_node >-------------------------|
13 (p_validate in boolean default false
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_rate_matrix_node
14 ,p_effective_date in date
15 ,p_rate_matrix_node_id out nocopy number
16 ,p_short_code in varchar2
17 ,p_pl_id in number
18 ,p_level_number in number
19 ,p_criteria_short_code in varchar2 default null
20 ,p_node_name in varchar2
21 ,p_parent_node_id in number default null
22 ,p_eligy_prfl_id in number default null
23 ,p_business_group_id in number default null
24 ,p_legislation_code in varchar2 default null
25 ,p_object_version_number out nocopy number
26 )is
27 --
28 -- Declare cursors and local variables
29 --
30 l_effective_date date;
31 l_rate_matrix_node_id PQH_RATE_MATRIX_NODES.rate_matrix_node_id%TYPE;
32 l_object_version_number PQH_RATE_MATRIX_NODES.object_version_number%TYPE;
33 l_proc varchar2(72) := g_package||'create_rate_matrix_node';
34 begin
35 hr_utility.set_location('Entering:'|| l_proc, 10);
36 --
37 -- Issue a savepoint
38 --
39 savepoint create_rate_matrix_node;
40 --
41 -- Remember IN OUT parameter IN values
42 --
43
44 --
45 -- Truncate the time portion from all IN date parameters
46 --
47 l_effective_date := trunc(p_effective_date);
48
49 --
50 -- Call Before Process User Hook
51 --
52 begin
53 PQH_RATE_MATRIX_NODES_BK1.create_rate_matrix_node_b
54 (p_effective_date => l_effective_date
55 ,p_short_code => p_short_code
56 ,p_pl_id => p_pl_id
57 ,p_level_number => p_level_number
58 ,p_criteria_short_code => p_criteria_short_code
59 ,p_node_name => p_node_name
60 ,p_parent_node_id => p_parent_node_id
61 ,p_eligy_prfl_id => p_eligy_prfl_id
62 ,p_business_group_id => p_business_group_id
63 ,p_legislation_code => p_legislation_code
64 );
65 exception
66 when hr_api.cannot_find_prog_unit then
67 hr_api.cannot_find_prog_unit_error
68 (p_module_name => 'create_rate_matrix_node'
69 ,p_hook_type => 'BP'
70 );
71 end;
72 --
73 -- Validation in addition to Row Handlers
74 --
75
76
77
78 --
79 -- Process Logic
80 --
81 PQH_RMN_INS.ins
82 (p_short_code => p_short_code
83 ,p_level_number => p_level_number
84 ,p_criteria_short_code => p_criteria_short_code
85 ,p_node_name => p_node_name
86 ,p_pl_id => p_pl_id
87 ,p_parent_node_id => p_parent_node_id
88 ,p_eligy_prfl_id => p_eligy_prfl_id
89 ,p_business_group_id => p_business_group_id
90 ,p_legislation_code => p_legislation_code
91 ,p_rate_matrix_node_id => l_rate_matrix_node_id
92 ,p_object_version_number => l_object_version_number
93 );
94
95
96 --
97 -- Call After Process User Hook
98 --
99 begin
100 PQH_RATE_MATRIX_NODES_BK1.create_rate_matrix_node_a
101 (p_effective_date => l_effective_date
102 ,p_rate_matrix_node_id =>l_rate_matrix_node_id
103 ,p_short_code => p_short_code
104 ,p_pl_id => p_pl_id
105 ,p_level_number => p_level_number
106 ,p_criteria_short_code => p_criteria_short_code
107 ,p_node_name => p_node_name
108 ,p_parent_node_id => p_parent_node_id
109 ,p_eligy_prfl_id => p_eligy_prfl_id
110 ,p_business_group_id => p_business_group_id
111 ,p_legislation_code => p_legislation_code
112 ,p_object_version_number => l_object_version_number
113 );
114 exception
115 when hr_api.cannot_find_prog_unit then
116 hr_api.cannot_find_prog_unit_error
117 (p_module_name => 'create_rate_matrix_node'
118 ,p_hook_type => 'AP'
119 );
120 end;
121 --
122 -- When in validation only mode raise the Validate_Enabled exception
123 --
124 if p_validate then
125 raise hr_api.validate_enabled;
126 end if;
127 --
128 -- Set all IN OUT and OUT parameters with out values
129 --
130 p_rate_matrix_node_id := l_rate_matrix_node_id;
131 p_object_version_number := l_object_version_number;
132 --
133 hr_utility.set_location(' Leaving:'||l_proc, 70);
134 exception
135 when hr_api.validate_enabled then
136 --
137 -- As the Validate_Enabled exception has been raised
138 -- we must rollback to the savepoint
139 --
140 rollback to create_rate_matrix_node;
141 --
142 -- Reset IN OUT parameters and set OUT parameters
143 -- (Any key or derived arguments must be set to null
144 -- when validation only mode is being used.)
145 --
146 p_rate_matrix_node_id := null;
147 p_object_version_number := null;
148
149 hr_utility.set_location(' Leaving:'||l_proc, 80);
150 when others then
151 --
152 -- A validation or unexpected error has occured
153 --
154 rollback to create_rate_matrix_node;
155 --
156 -- Reset IN OUT parameters and set all
157 -- OUT parameters, including warnings, to null
158 --
159 p_rate_matrix_node_id := null;
160 p_object_version_number := null;
161
162 hr_utility.set_location(' Leaving:'||l_proc, 90);
163 raise;
164 end create_rate_matrix_node;
165 --
166 -- ----------------------------------------------------------------------------
167 -- |--------------------------< update_rate_matrix_node >--------------------------|
168 -- ----------------------------------------------------------------------------
169 --
170 procedure update_rate_matrix_node
171 (p_validate in boolean default false
172 ,p_effective_date in date
173 ,p_rate_matrix_node_id in number
174 ,p_short_code in varchar2
175 ,p_pl_id in number
176 ,p_level_number in number
177 ,p_criteria_short_code in varchar2 default null
178 ,p_node_name in varchar2
179 ,p_parent_node_id in number default null
180 ,p_eligy_prfl_id in number default null
181 ,p_business_group_id in number default null
182 ,p_legislation_code in varchar2 default null
183 ,p_object_version_number in out nocopy number
184 )is
185 --
186 -- Declare cursors and local variables
187 --
188 l_effective_date date;
189 l_proc varchar2(72) := g_package||'update_rate_matrix_node';
190 l_object_version_number PQH_RATE_MATRIX_NODES.object_version_number%TYPE;
191 begin
192 hr_utility.set_location('Entering:'|| l_proc, 10);
193 --
194 -- Issue a savepoint
195 --
196 savepoint update_rate_matrix_node;
197 --
198 -- Remember IN OUT parameter IN values
199 --
200 l_object_version_number := p_object_version_number;
201
202 --
203 -- Truncate the time portion from all IN date parameters
204 --
205 l_effective_date := trunc(p_effective_date);
206
207 --
208 -- Call Before Process User Hook
209 --
210 begin
211 PQH_RATE_MATRIX_NODES_BK2.update_rate_matrix_node_b
212 (p_effective_date => l_effective_date
213 ,p_rate_matrix_node_id => p_rate_matrix_node_id
214 ,p_short_code => p_short_code
215 ,p_pl_id => p_pl_id
216 ,p_level_number => p_level_number
217 ,p_criteria_short_code => p_criteria_short_code
218 ,p_node_name => p_node_name
219 ,p_parent_node_id => p_parent_node_id
220 ,p_eligy_prfl_id => p_eligy_prfl_id
221 ,p_business_group_id => p_business_group_id
222 ,p_legislation_code => p_legislation_code
223 ,p_object_version_number => l_object_version_number
224 );
225 exception
226 when hr_api.cannot_find_prog_unit then
227 hr_api.cannot_find_prog_unit_error
228 (p_module_name => 'update_rate_matrix_node'
229 ,p_hook_type => 'BP'
230 );
231 end;
232 --
233 -- Validation in addition to Row Handlers
234 --
235
236
237
238 --
239 -- Process Logic
240 --
241 PQH_RMN_UPD.upd
242 (p_rate_matrix_node_id => p_rate_matrix_node_id
243 ,p_object_version_number => l_object_version_number
244 ,p_short_code => p_short_code
245 ,p_level_number => p_level_number
246 ,p_criteria_short_code => p_criteria_short_code
247 ,p_node_name => p_node_name
248 ,p_pl_id => p_pl_id
249 ,p_parent_node_id => p_parent_node_id
250 ,p_eligy_prfl_id => p_eligy_prfl_id
251 ,p_business_group_id => p_business_group_id
252 ,p_legislation_code => p_legislation_code
253 );
254
255 --
256 -- Call After Process User Hook
257 --
258 begin
259 PQH_RATE_MATRIX_NODES_BK2.update_rate_matrix_node_a
260 (p_effective_date => l_effective_date
261 ,p_rate_matrix_node_id => p_rate_matrix_node_id
262 ,p_short_code => p_short_code
263 ,p_pl_id => p_pl_id
264 ,p_level_number => p_level_number
265 ,p_criteria_short_code => p_criteria_short_code
266 ,p_node_name => p_node_name
267 ,p_parent_node_id => p_parent_node_id
268 ,p_eligy_prfl_id => p_eligy_prfl_id
269 ,p_business_group_id => p_business_group_id
270 ,p_legislation_code => p_legislation_code
271 ,p_object_version_number => l_object_version_number
272 );
273 exception
274 when hr_api.cannot_find_prog_unit then
275 hr_api.cannot_find_prog_unit_error
276 (p_module_name => 'update_rate_matrix_node'
277 ,p_hook_type => 'AP'
278 );
279 end;
280 --
281 -- When in validation only mode raise the Validate_Enabled exception
282 --
283 if p_validate then
284 raise hr_api.validate_enabled;
285 end if;
286 --
287 -- Set all IN OUT and OUT parameters with out values
288 --
289 p_object_version_number := l_object_version_number;
290 --
291 hr_utility.set_location(' Leaving:'||l_proc, 70);
292 exception
293 when hr_api.validate_enabled then
294 --
295 -- As the Validate_Enabled exception has been raised
296 -- we must rollback to the savepoint
297 --
298 rollback to update_rate_matrix_node;
299 --
300 -- Reset IN OUT parameters and set OUT parameters
301 -- (Any key or derived arguments must be set to null
302 -- when validation only mode is being used.)
303 --
304 p_object_version_number := p_object_version_number;
305 hr_utility.set_location(' Leaving:'||l_proc, 80);
306 when others then
307 --
308 -- A validation or unexpected error has occured
309 --
310 rollback to update_rate_matrix_node;
311 --
312 -- Reset IN OUT parameters and set all
313 -- OUT parameters, including warnings, to null
314 --
315 p_object_version_number := p_object_version_number;
316 hr_utility.set_location(' Leaving:'||l_proc, 90);
317 raise;
318 end update_rate_matrix_node;
319 --
320 -- ----------------------------------------------------------------------------
321 -- |--------------------------< delete_rate_matrix_node >--------------------------|
322 -- ----------------------------------------------------------------------------
323 --
324 procedure delete_rate_matrix_node
325 (p_validate in boolean default false
326 ,p_effective_date in date
327 ,p_rate_matrix_node_id in number
328 ,p_object_version_number in number
329 ) is
330 --
331 -- Declare cursors and local variables
332 --
333
334 l_effective_date date;
335 l_proc varchar2(72) := g_package||'delete_rate_matrix_node';
336 begin
337 hr_utility.set_location('Entering:'|| l_proc, 10);
338 --
339 -- Issue a savepoint
340 --
341 savepoint delete_rate_matrix_node;
342 --
343 -- Remember IN OUT parameter IN values
344 --
345
346 --
347 -- Truncate the time portion from all IN date parameters
348 --
349 l_effective_date := trunc(p_effective_date);
350
351 --
352 -- Call Before Process User Hook
353 --
354 begin
355 PQH_RATE_MATRIX_NODES_BK3.delete_rate_matrix_node_b
356 (p_effective_date => l_effective_date
357 ,p_rate_matrix_node_id => p_rate_matrix_node_id
358 ,p_object_version_number => p_object_version_number
359 );
360 exception
361 when hr_api.cannot_find_prog_unit then
362 hr_api.cannot_find_prog_unit_error
363 (p_module_name => 'delete_rate_matrix_node'
364 ,p_hook_type => 'BP'
365 );
366 end;
367 --
368 -- Validation in addition to Row Handlers
369 --
370
371
372
373 --
374 -- Process Logic
375 --
376 PQH_RMN_DEL.del
377 (p_rate_matrix_node_id =>p_rate_matrix_node_id
378 ,p_object_version_number =>p_object_version_number
379 );
380
381
382 --
383 -- Call After Process User Hook
384 --
385 begin
386 PQH_RATE_MATRIX_NODES_BK3.delete_rate_matrix_node_a
387 (p_effective_date => l_effective_date
388 ,p_rate_matrix_node_id => p_rate_matrix_node_id
389 ,p_object_version_number => p_object_version_number
390 );
391 exception
392 when hr_api.cannot_find_prog_unit then
393 hr_api.cannot_find_prog_unit_error
394 (p_module_name => 'delete_rate_matrix_node'
395 ,p_hook_type => 'AP'
396 );
397 end;
398 --
399 -- When in validation only mode raise the Validate_Enabled exception
400 --
401 if p_validate then
402 raise hr_api.validate_enabled;
403 end if;
404 --
405 -- Set all IN OUT and OUT parameters with out values
406 --
407 --
408 hr_utility.set_location(' Leaving:'||l_proc, 70);
409 exception
410 when hr_api.validate_enabled then
411 --
412 -- As the Validate_Enabled exception has been raised
413 -- we must rollback to the savepoint
414 --
415 rollback to delete_rate_matrix_node;
416 --
417 -- Reset IN OUT parameters and set OUT parameters
418 -- (Any key or derived arguments must be set to null
419 -- when validation only mode is being used.)
420 --
421 hr_utility.set_location(' Leaving:'||l_proc, 80);
422 when others then
423 --
424 -- A validation or unexpected error has occured
425 --
426 rollback to delete_rate_matrix_node;
427 --
428 -- Reset IN OUT parameters and set all
429 -- OUT parameters, including warnings, to null
430 --
431 hr_utility.set_location(' Leaving:'||l_proc, 90);
432 raise;
433 end delete_rate_matrix_node;
434 --
435 --
436 end PQH_RATE_MATRIX_NODES_API;