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