DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_BAL_TYPE_FOR_RATE_API

Source


1 Package Body ben_Bal_Type_For_Rate_api as
2 /* $Header: bebtrapi.pkb 120.0 2005/05/28 00:52:43 appldev noship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  ben_Bal_Type_For_Rate_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_Bal_Type_For_Rate >----------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_Bal_Type_For_Rate
13   (p_validate                       in  boolean   default false
14   ,p_comp_lvl_acty_rt_id            out nocopy number
15   ,p_effective_start_date           out nocopy date
16   ,p_effective_end_date             out nocopy date
17   ,p_dflt_flag                      in  varchar2  default 'N'
18   ,p_comp_lvl_fctr_id               in  number    default null
19   ,p_acty_base_rt_id                in  number    default null
20   ,p_business_group_id              in  number    default null
21   ,p_btr_attribute_category         in  varchar2  default null
22   ,p_btr_attribute1                 in  varchar2  default null
23   ,p_btr_attribute2                 in  varchar2  default null
24   ,p_btr_attribute3                 in  varchar2  default null
25   ,p_btr_attribute4                 in  varchar2  default null
26   ,p_btr_attribute5                 in  varchar2  default null
27   ,p_btr_attribute6                 in  varchar2  default null
28   ,p_btr_attribute7                 in  varchar2  default null
29   ,p_btr_attribute8                 in  varchar2  default null
30   ,p_btr_attribute9                 in  varchar2  default null
31   ,p_btr_attribute10                in  varchar2  default null
32   ,p_btr_attribute11                in  varchar2  default null
33   ,p_btr_attribute12                in  varchar2  default null
34   ,p_btr_attribute13                in  varchar2  default null
35   ,p_btr_attribute14                in  varchar2  default null
36   ,p_btr_attribute15                in  varchar2  default null
37   ,p_btr_attribute16                in  varchar2  default null
38   ,p_btr_attribute17                in  varchar2  default null
39   ,p_btr_attribute18                in  varchar2  default null
40   ,p_btr_attribute19                in  varchar2  default null
41   ,p_btr_attribute20                in  varchar2  default null
42   ,p_btr_attribute21                in  varchar2  default null
43   ,p_btr_attribute22                in  varchar2  default null
44   ,p_btr_attribute23                in  varchar2  default null
45   ,p_btr_attribute24                in  varchar2  default null
46   ,p_btr_attribute25                in  varchar2  default null
47   ,p_btr_attribute26                in  varchar2  default null
48   ,p_btr_attribute27                in  varchar2  default null
49   ,p_btr_attribute28                in  varchar2  default null
50   ,p_btr_attribute29                in  varchar2  default null
51   ,p_btr_attribute30                in  varchar2  default null
52   ,p_object_version_number          out nocopy number
53   ,p_effective_date                 in  date
54   ) is
55   --
56   -- Declare cursors and local variables
57   --
58   l_comp_lvl_acty_rt_id ben_comp_lvl_acty_rt_f.comp_lvl_acty_rt_id%TYPE;
59   l_effective_start_date ben_comp_lvl_acty_rt_f.effective_start_date%TYPE;
60   l_effective_end_date ben_comp_lvl_acty_rt_f.effective_end_date%TYPE;
61   l_proc varchar2(72) := g_package||'create_Bal_Type_For_Rate';
62   l_object_version_number ben_comp_lvl_acty_rt_f.object_version_number%TYPE;
63   --
64 begin
65   --
66   hr_utility.set_location('Entering:'|| l_proc, 10);
67   --
68   -- Issue a savepoint if operating in validation only mode
69   --
70   savepoint create_Bal_Type_For_Rate;
71   --
72   hr_utility.set_location(l_proc, 20);
73   --
74   -- Process Logic
75   --
76   begin
77     --
78     -- Start of API User Hook for the before hook of create_Bal_Type_For_Rate
79     --
80     ben_Bal_Type_For_Rate_bk1.create_Bal_Type_For_Rate_b
81       (
82        p_dflt_flag                      =>  p_dflt_flag
83       ,p_comp_lvl_fctr_id               =>  p_comp_lvl_fctr_id
84       ,p_acty_base_rt_id                =>  p_acty_base_rt_id
85       ,p_business_group_id              =>  p_business_group_id
86       ,p_btr_attribute_category         =>  p_btr_attribute_category
90       ,p_btr_attribute4                 =>  p_btr_attribute4
87       ,p_btr_attribute1                 =>  p_btr_attribute1
88       ,p_btr_attribute2                 =>  p_btr_attribute2
89       ,p_btr_attribute3                 =>  p_btr_attribute3
91       ,p_btr_attribute5                 =>  p_btr_attribute5
92       ,p_btr_attribute6                 =>  p_btr_attribute6
93       ,p_btr_attribute7                 =>  p_btr_attribute7
94       ,p_btr_attribute8                 =>  p_btr_attribute8
95       ,p_btr_attribute9                 =>  p_btr_attribute9
96       ,p_btr_attribute10                =>  p_btr_attribute10
97       ,p_btr_attribute11                =>  p_btr_attribute11
98       ,p_btr_attribute12                =>  p_btr_attribute12
99       ,p_btr_attribute13                =>  p_btr_attribute13
100       ,p_btr_attribute14                =>  p_btr_attribute14
101       ,p_btr_attribute15                =>  p_btr_attribute15
102       ,p_btr_attribute16                =>  p_btr_attribute16
103       ,p_btr_attribute17                =>  p_btr_attribute17
104       ,p_btr_attribute18                =>  p_btr_attribute18
105       ,p_btr_attribute19                =>  p_btr_attribute19
106       ,p_btr_attribute20                =>  p_btr_attribute20
107       ,p_btr_attribute21                =>  p_btr_attribute21
108       ,p_btr_attribute22                =>  p_btr_attribute22
109       ,p_btr_attribute23                =>  p_btr_attribute23
110       ,p_btr_attribute24                =>  p_btr_attribute24
111       ,p_btr_attribute25                =>  p_btr_attribute25
112       ,p_btr_attribute26                =>  p_btr_attribute26
113       ,p_btr_attribute27                =>  p_btr_attribute27
114       ,p_btr_attribute28                =>  p_btr_attribute28
115       ,p_btr_attribute29                =>  p_btr_attribute29
116       ,p_btr_attribute30                =>  p_btr_attribute30
117       ,p_effective_date                 => trunc(p_effective_date)
118       );
119   exception
120     when hr_api.cannot_find_prog_unit then
121       hr_api.cannot_find_prog_unit_error
122         (
123          p_module_name => 'CREATE_Bal_Type_For_Rate'
124         ,p_hook_type   => 'BP'
125         );
126     --
127     -- End of API User Hook for the before hook of create_Bal_Type_For_Rate
128     --
129   end;
130   --
131   ben_btr_ins.ins
132     (
133      p_comp_lvl_acty_rt_id           => l_comp_lvl_acty_rt_id
137     ,p_comp_lvl_fctr_id              => p_comp_lvl_fctr_id
134     ,p_effective_start_date          => l_effective_start_date
135     ,p_effective_end_date            => l_effective_end_date
136     ,p_dflt_flag                     => p_dflt_flag
138     ,p_acty_base_rt_id               => p_acty_base_rt_id
139     ,p_business_group_id             => p_business_group_id
140     ,p_btr_attribute_category        => p_btr_attribute_category
141     ,p_btr_attribute1                => p_btr_attribute1
142     ,p_btr_attribute2                => p_btr_attribute2
143     ,p_btr_attribute3                => p_btr_attribute3
144     ,p_btr_attribute4                => p_btr_attribute4
145     ,p_btr_attribute5                => p_btr_attribute5
146     ,p_btr_attribute6                => p_btr_attribute6
147     ,p_btr_attribute7                => p_btr_attribute7
148     ,p_btr_attribute8                => p_btr_attribute8
149     ,p_btr_attribute9                => p_btr_attribute9
150     ,p_btr_attribute10               => p_btr_attribute10
151     ,p_btr_attribute11               => p_btr_attribute11
152     ,p_btr_attribute12               => p_btr_attribute12
153     ,p_btr_attribute13               => p_btr_attribute13
154     ,p_btr_attribute14               => p_btr_attribute14
155     ,p_btr_attribute15               => p_btr_attribute15
156     ,p_btr_attribute16               => p_btr_attribute16
157     ,p_btr_attribute17               => p_btr_attribute17
158     ,p_btr_attribute18               => p_btr_attribute18
159     ,p_btr_attribute19               => p_btr_attribute19
160     ,p_btr_attribute20               => p_btr_attribute20
161     ,p_btr_attribute21               => p_btr_attribute21
162     ,p_btr_attribute22               => p_btr_attribute22
163     ,p_btr_attribute23               => p_btr_attribute23
164     ,p_btr_attribute24               => p_btr_attribute24
165     ,p_btr_attribute25               => p_btr_attribute25
166     ,p_btr_attribute26               => p_btr_attribute26
167     ,p_btr_attribute27               => p_btr_attribute27
168     ,p_btr_attribute28               => p_btr_attribute28
169     ,p_btr_attribute29               => p_btr_attribute29
170     ,p_btr_attribute30               => p_btr_attribute30
171     ,p_object_version_number         => l_object_version_number
172     ,p_effective_date                => trunc(p_effective_date)
173     );
174   --
175   begin
176     --
177     -- Start of API User Hook for the after hook of create_Bal_Type_For_Rate
178     --
179     ben_Bal_Type_For_Rate_bk1.create_Bal_Type_For_Rate_a
180       (
181        p_comp_lvl_acty_rt_id            =>  l_comp_lvl_acty_rt_id
182       ,p_effective_start_date           =>  l_effective_start_date
183       ,p_effective_end_date             =>  l_effective_end_date
184       ,p_dflt_flag                      =>  p_dflt_flag
185       ,p_comp_lvl_fctr_id               =>  p_comp_lvl_fctr_id
186       ,p_acty_base_rt_id                =>  p_acty_base_rt_id
187       ,p_business_group_id              =>  p_business_group_id
188       ,p_btr_attribute_category         =>  p_btr_attribute_category
189       ,p_btr_attribute1                 =>  p_btr_attribute1
190       ,p_btr_attribute2                 =>  p_btr_attribute2
191       ,p_btr_attribute3                 =>  p_btr_attribute3
192       ,p_btr_attribute4                 =>  p_btr_attribute4
193       ,p_btr_attribute5                 =>  p_btr_attribute5
194       ,p_btr_attribute6                 =>  p_btr_attribute6
195       ,p_btr_attribute7                 =>  p_btr_attribute7
196       ,p_btr_attribute8                 =>  p_btr_attribute8
197       ,p_btr_attribute9                 =>  p_btr_attribute9
198       ,p_btr_attribute10                =>  p_btr_attribute10
199       ,p_btr_attribute11                =>  p_btr_attribute11
200       ,p_btr_attribute12                =>  p_btr_attribute12
201       ,p_btr_attribute13                =>  p_btr_attribute13
202       ,p_btr_attribute14                =>  p_btr_attribute14
203       ,p_btr_attribute15                =>  p_btr_attribute15
204       ,p_btr_attribute16                =>  p_btr_attribute16
205       ,p_btr_attribute17                =>  p_btr_attribute17
206       ,p_btr_attribute18                =>  p_btr_attribute18
207       ,p_btr_attribute19                =>  p_btr_attribute19
208       ,p_btr_attribute20                =>  p_btr_attribute20
209       ,p_btr_attribute21                =>  p_btr_attribute21
210       ,p_btr_attribute22                =>  p_btr_attribute22
211       ,p_btr_attribute23                =>  p_btr_attribute23
212       ,p_btr_attribute24                =>  p_btr_attribute24
213       ,p_btr_attribute25                =>  p_btr_attribute25
214       ,p_btr_attribute26                =>  p_btr_attribute26
215       ,p_btr_attribute27                =>  p_btr_attribute27
216       ,p_btr_attribute28                =>  p_btr_attribute28
217       ,p_btr_attribute29                =>  p_btr_attribute29
218       ,p_btr_attribute30                =>  p_btr_attribute30
219       ,p_object_version_number          =>  l_object_version_number
220       ,p_effective_date                      => trunc(p_effective_date)
221       );
222   exception
223     when hr_api.cannot_find_prog_unit then
224       hr_api.cannot_find_prog_unit_error
225         (p_module_name => 'CREATE_Bal_Type_For_Rate'
226         ,p_hook_type   => 'AP'
227         );
228     --
229     -- End of API User Hook for the after hook of create_Bal_Type_For_Rate
230     --
231   end;
232   --
233   hr_utility.set_location(l_proc, 60);
234   --
235   -- When in validation only mode raise the Validate_Enabled exception
236   --
237   if p_validate then
238     raise hr_api.validate_enabled;
239   end if;
240   --
241   -- Set all output arguments
242   --
243   p_comp_lvl_acty_rt_id := l_comp_lvl_acty_rt_id;
244   p_effective_start_date := l_effective_start_date;
245   p_effective_end_date := l_effective_end_date;
246   p_object_version_number := l_object_version_number;
247   --
248   hr_utility.set_location(' Leaving:'||l_proc, 70);
249   --
250 exception
251   --
252   when hr_api.validate_enabled then
253     --
254     -- As the Validate_Enabled exception has been raised
255     -- we must rollback to the savepoint
256     --
257     ROLLBACK TO create_Bal_Type_For_Rate;
258     --
259     -- Only set output warning arguments
260     -- (Any key or derived arguments must be set to null
261     -- when validation only mode is being used.)
262     --
263     p_comp_lvl_acty_rt_id := null;
264     p_effective_start_date := null;
265     p_effective_end_date := null;
266     p_object_version_number  := null;
267     hr_utility.set_location(' Leaving:'||l_proc, 80);
268     --
269   when others then
270     --
274     p_effective_start_date := null;
271     -- A validation or unexpected error has occured
272     --
273     p_comp_lvl_acty_rt_id := null;
275     p_effective_end_date := null;
276     p_object_version_number  := null;
277     hr_utility.set_location(' Leaving:'||l_proc, 80);
278     --
279     ROLLBACK TO create_Bal_Type_For_Rate;
280     raise;
281     --
282 end create_Bal_Type_For_Rate;
283 -- ----------------------------------------------------------------------------
284 -- |------------------------< update_Bal_Type_For_Rate >--- ------------------|
285 -- ----------------------------------------------------------------------------
286 --
287 procedure update_Bal_Type_For_Rate
288   (p_validate                       in  boolean   default false
292   ,p_dflt_flag                      in  varchar2  default hr_api.g_varchar2
289   ,p_comp_lvl_acty_rt_id            in  number
290   ,p_effective_start_date           out nocopy date
291   ,p_effective_end_date             out nocopy date
293   ,p_comp_lvl_fctr_id               in  number    default hr_api.g_number
294   ,p_acty_base_rt_id                in  number    default hr_api.g_number
295   ,p_business_group_id              in  number    default hr_api.g_number
296   ,p_btr_attribute_category         in  varchar2  default hr_api.g_varchar2
297   ,p_btr_attribute1                 in  varchar2  default hr_api.g_varchar2
298   ,p_btr_attribute2                 in  varchar2  default hr_api.g_varchar2
299   ,p_btr_attribute3                 in  varchar2  default hr_api.g_varchar2
300   ,p_btr_attribute4                 in  varchar2  default hr_api.g_varchar2
301   ,p_btr_attribute5                 in  varchar2  default hr_api.g_varchar2
302   ,p_btr_attribute6                 in  varchar2  default hr_api.g_varchar2
303   ,p_btr_attribute7                 in  varchar2  default hr_api.g_varchar2
304   ,p_btr_attribute8                 in  varchar2  default hr_api.g_varchar2
305   ,p_btr_attribute9                 in  varchar2  default hr_api.g_varchar2
306   ,p_btr_attribute10                in  varchar2  default hr_api.g_varchar2
307   ,p_btr_attribute11                in  varchar2  default hr_api.g_varchar2
308   ,p_btr_attribute12                in  varchar2  default hr_api.g_varchar2
309   ,p_btr_attribute13                in  varchar2  default hr_api.g_varchar2
310   ,p_btr_attribute14                in  varchar2  default hr_api.g_varchar2
311   ,p_btr_attribute15                in  varchar2  default hr_api.g_varchar2
312   ,p_btr_attribute16                in  varchar2  default hr_api.g_varchar2
313   ,p_btr_attribute17                in  varchar2  default hr_api.g_varchar2
314   ,p_btr_attribute18                in  varchar2  default hr_api.g_varchar2
315   ,p_btr_attribute19                in  varchar2  default hr_api.g_varchar2
316   ,p_btr_attribute20                in  varchar2  default hr_api.g_varchar2
317   ,p_btr_attribute21                in  varchar2  default hr_api.g_varchar2
318   ,p_btr_attribute22                in  varchar2  default hr_api.g_varchar2
319   ,p_btr_attribute23                in  varchar2  default hr_api.g_varchar2
320   ,p_btr_attribute24                in  varchar2  default hr_api.g_varchar2
321   ,p_btr_attribute25                in  varchar2  default hr_api.g_varchar2
322   ,p_btr_attribute26                in  varchar2  default hr_api.g_varchar2
323   ,p_btr_attribute27                in  varchar2  default hr_api.g_varchar2
324   ,p_btr_attribute28                in  varchar2  default hr_api.g_varchar2
325   ,p_btr_attribute29                in  varchar2  default hr_api.g_varchar2
326   ,p_btr_attribute30                in  varchar2  default hr_api.g_varchar2
327   ,p_object_version_number          in out nocopy number
328   ,p_effective_date                 in  date
329   ,p_datetrack_mode                 in  varchar2
330   ) is
331   --
332   -- Declare cursors and local variables
333   --
334   l_proc varchar2(72) := g_package||'update_Bal_Type_For_Rate';
335   l_object_version_number ben_comp_lvl_acty_rt_f.object_version_number%TYPE;
336   l_effective_start_date ben_comp_lvl_acty_rt_f.effective_start_date%TYPE;
337   l_effective_end_date ben_comp_lvl_acty_rt_f.effective_end_date%TYPE;
338   --
339 begin
340   --
341   hr_utility.set_location('Entering:'|| l_proc, 10);
342   --
343   -- Issue a savepoint if operating in validation only mode
344   --
345   savepoint update_Bal_Type_For_Rate;
346   --
347   hr_utility.set_location(l_proc, 20);
348   --
349   -- Process Logic
350   --
351   l_object_version_number := p_object_version_number;
352   --
353   begin
354     --
355     -- Start of API User Hook for the before hook of update_Bal_Type_For_Rate
356     --
357     ben_Bal_Type_For_Rate_bk2.update_Bal_Type_For_Rate_b
358       (
359        p_comp_lvl_acty_rt_id            =>  p_comp_lvl_acty_rt_id
360       ,p_dflt_flag                      =>  p_dflt_flag
361       ,p_comp_lvl_fctr_id               =>  p_comp_lvl_fctr_id
362       ,p_acty_base_rt_id                =>  p_acty_base_rt_id
363       ,p_business_group_id              =>  p_business_group_id
364       ,p_btr_attribute_category         =>  p_btr_attribute_category
365       ,p_btr_attribute1                 =>  p_btr_attribute1
366       ,p_btr_attribute2                 =>  p_btr_attribute2
367       ,p_btr_attribute3                 =>  p_btr_attribute3
368       ,p_btr_attribute4                 =>  p_btr_attribute4
369       ,p_btr_attribute5                 =>  p_btr_attribute5
370       ,p_btr_attribute6                 =>  p_btr_attribute6
371       ,p_btr_attribute7                 =>  p_btr_attribute7
372       ,p_btr_attribute8                 =>  p_btr_attribute8
373       ,p_btr_attribute9                 =>  p_btr_attribute9
374       ,p_btr_attribute10                =>  p_btr_attribute10
375       ,p_btr_attribute11                =>  p_btr_attribute11
376       ,p_btr_attribute12                =>  p_btr_attribute12
377       ,p_btr_attribute13                =>  p_btr_attribute13
378       ,p_btr_attribute14                =>  p_btr_attribute14
379       ,p_btr_attribute15                =>  p_btr_attribute15
380       ,p_btr_attribute16                =>  p_btr_attribute16
381       ,p_btr_attribute17                =>  p_btr_attribute17
382       ,p_btr_attribute18                =>  p_btr_attribute18
383       ,p_btr_attribute19                =>  p_btr_attribute19
384       ,p_btr_attribute20                =>  p_btr_attribute20
385       ,p_btr_attribute21                =>  p_btr_attribute21
386       ,p_btr_attribute22                =>  p_btr_attribute22
387       ,p_btr_attribute23                =>  p_btr_attribute23
388       ,p_btr_attribute24                =>  p_btr_attribute24
389       ,p_btr_attribute25                =>  p_btr_attribute25
390       ,p_btr_attribute26                =>  p_btr_attribute26
391       ,p_btr_attribute27                =>  p_btr_attribute27
392       ,p_btr_attribute28                =>  p_btr_attribute28
393       ,p_btr_attribute29                =>  p_btr_attribute29
394       ,p_btr_attribute30                =>  p_btr_attribute30
395       ,p_object_version_number          =>  p_object_version_number
396     ,p_effective_date                      => trunc(p_effective_date)
397     ,p_datetrack_mode                      => p_datetrack_mode
398       );
399   exception
400     when hr_api.cannot_find_prog_unit then
401       hr_api.cannot_find_prog_unit_error
402         (p_module_name => 'UPDATE_Bal_Type_For_Rate'
403         ,p_hook_type   => 'BP'
404         );
405     --
406     -- End of API User Hook for the before hook of update_Bal_Type_For_Rate
407     --
408   end;
409   --
410   ben_btr_upd.upd
411     (
412      p_comp_lvl_acty_rt_id           => p_comp_lvl_acty_rt_id
413     ,p_effective_start_date          => l_effective_start_date
414     ,p_effective_end_date            => l_effective_end_date
415     ,p_dflt_flag                     => p_dflt_flag
416     ,p_comp_lvl_fctr_id              => p_comp_lvl_fctr_id
417     ,p_acty_base_rt_id               => p_acty_base_rt_id
418     ,p_business_group_id             => p_business_group_id
419     ,p_btr_attribute_category        => p_btr_attribute_category
420     ,p_btr_attribute1                => p_btr_attribute1
421     ,p_btr_attribute2                => p_btr_attribute2
422     ,p_btr_attribute3                => p_btr_attribute3
423     ,p_btr_attribute4                => p_btr_attribute4
424     ,p_btr_attribute5                => p_btr_attribute5
425     ,p_btr_attribute6                => p_btr_attribute6
426     ,p_btr_attribute7                => p_btr_attribute7
427     ,p_btr_attribute8                => p_btr_attribute8
428     ,p_btr_attribute9                => p_btr_attribute9
429     ,p_btr_attribute10               => p_btr_attribute10
430     ,p_btr_attribute11               => p_btr_attribute11
431     ,p_btr_attribute12               => p_btr_attribute12
432     ,p_btr_attribute13               => p_btr_attribute13
433     ,p_btr_attribute14               => p_btr_attribute14
434     ,p_btr_attribute15               => p_btr_attribute15
435     ,p_btr_attribute16               => p_btr_attribute16
436     ,p_btr_attribute17               => p_btr_attribute17
437     ,p_btr_attribute18               => p_btr_attribute18
438     ,p_btr_attribute19               => p_btr_attribute19
439     ,p_btr_attribute20               => p_btr_attribute20
440     ,p_btr_attribute21               => p_btr_attribute21
441     ,p_btr_attribute22               => p_btr_attribute22
442     ,p_btr_attribute23               => p_btr_attribute23
443     ,p_btr_attribute24               => p_btr_attribute24
444     ,p_btr_attribute25               => p_btr_attribute25
445     ,p_btr_attribute26               => p_btr_attribute26
446     ,p_btr_attribute27               => p_btr_attribute27
447     ,p_btr_attribute28               => p_btr_attribute28
448     ,p_btr_attribute29               => p_btr_attribute29
449     ,p_btr_attribute30               => p_btr_attribute30
450     ,p_object_version_number         => l_object_version_number
451     ,p_effective_date                => trunc(p_effective_date)
452     ,p_datetrack_mode                => p_datetrack_mode
453     );
454   --
455   begin
456     --
457     -- Start of API User Hook for the after hook of update_Bal_Type_For_Rate
458     --
459     ben_Bal_Type_For_Rate_bk2.update_Bal_Type_For_Rate_a
460       (
461        p_comp_lvl_acty_rt_id            =>  p_comp_lvl_acty_rt_id
462       ,p_effective_start_date           =>  l_effective_start_date
463       ,p_effective_end_date             =>  l_effective_end_date
464       ,p_dflt_flag                      =>  p_dflt_flag
465       ,p_comp_lvl_fctr_id               =>  p_comp_lvl_fctr_id
466       ,p_acty_base_rt_id                =>  p_acty_base_rt_id
467       ,p_business_group_id              =>  p_business_group_id
468       ,p_btr_attribute_category         =>  p_btr_attribute_category
469       ,p_btr_attribute1                 =>  p_btr_attribute1
470       ,p_btr_attribute2                 =>  p_btr_attribute2
471       ,p_btr_attribute3                 =>  p_btr_attribute3
472       ,p_btr_attribute4                 =>  p_btr_attribute4
473       ,p_btr_attribute5                 =>  p_btr_attribute5
474       ,p_btr_attribute6                 =>  p_btr_attribute6
475       ,p_btr_attribute7                 =>  p_btr_attribute7
476       ,p_btr_attribute8                 =>  p_btr_attribute8
477       ,p_btr_attribute9                 =>  p_btr_attribute9
478       ,p_btr_attribute10                =>  p_btr_attribute10
479       ,p_btr_attribute11                =>  p_btr_attribute11
480       ,p_btr_attribute12                =>  p_btr_attribute12
481       ,p_btr_attribute13                =>  p_btr_attribute13
482       ,p_btr_attribute14                =>  p_btr_attribute14
483       ,p_btr_attribute15                =>  p_btr_attribute15
484       ,p_btr_attribute16                =>  p_btr_attribute16
485       ,p_btr_attribute17                =>  p_btr_attribute17
486       ,p_btr_attribute18                =>  p_btr_attribute18
487       ,p_btr_attribute19                =>  p_btr_attribute19
488       ,p_btr_attribute20                =>  p_btr_attribute20
489       ,p_btr_attribute21                =>  p_btr_attribute21
490       ,p_btr_attribute22                =>  p_btr_attribute22
491       ,p_btr_attribute23                =>  p_btr_attribute23
492       ,p_btr_attribute24                =>  p_btr_attribute24
493       ,p_btr_attribute25                =>  p_btr_attribute25
494       ,p_btr_attribute26                =>  p_btr_attribute26
495       ,p_btr_attribute27                =>  p_btr_attribute27
496       ,p_btr_attribute28                =>  p_btr_attribute28
497       ,p_btr_attribute29                =>  p_btr_attribute29
498       ,p_btr_attribute30                =>  p_btr_attribute30
499       ,p_object_version_number          =>  l_object_version_number
500       ,p_effective_date                     => trunc(p_effective_date)
501       ,p_datetrack_mode                     => p_datetrack_mode
502       );
503   exception
504     when hr_api.cannot_find_prog_unit then
505       hr_api.cannot_find_prog_unit_error
506         (p_module_name => 'UPDATE_Bal_Type_For_Rate'
507         ,p_hook_type   => 'AP'
508         );
509     --
510     -- End of API User Hook for the after hook of update_Bal_Type_For_Rate
511     --
512   end;
513   --
514   hr_utility.set_location(l_proc, 60);
515   --
516   -- When in validation only mode raise the Validate_Enabled exception
517   --
518   if p_validate then
519     raise hr_api.validate_enabled;
520   end if;
521   --
522   -- Set all output arguments
523   --
524   p_object_version_number := l_object_version_number;
525   p_effective_start_date := l_effective_start_date;
526   p_effective_end_date := l_effective_end_date;
527   --
528   hr_utility.set_location(' Leaving:'||l_proc, 70);
529   --
530 exception
531   --
532   when hr_api.validate_enabled then
533     --
534     -- As the Validate_Enabled exception has been raised
535     -- we must rollback to the savepoint
536     --
537     ROLLBACK TO update_Bal_Type_For_Rate;
538     --
539     -- Only set output warning arguments
540     -- (Any key or derived arguments must be set to null
541     -- when validation only mode is being used.)
542     --
543     hr_utility.set_location(' Leaving:'||l_proc, 80);
544     --
545   when others then
546     --
547     -- A validation or unexpected error has occured
548     --
549     p_effective_start_date := null;
550     p_effective_end_date := null;
551     p_object_version_number  := l_object_version_number;
552     hr_utility.set_location(' Leaving:'||l_proc, 80);
553     --
554     ROLLBACK TO update_Bal_Type_For_Rate;
555     raise;
556     --
557 end update_Bal_Type_For_Rate;
558 -- ----------------------------------------------------------------------------
559 -- |------------------------< delete_Bal_Type_For_Rate >----------------------|
560 -- ----------------------------------------------------------------------------
561 --
562 procedure delete_Bal_Type_For_Rate
563   (p_validate                       in  boolean  default false
564   ,p_comp_lvl_acty_rt_id            in  number
565   ,p_effective_start_date           out nocopy date
566   ,p_effective_end_date             out nocopy date
567   ,p_object_version_number          in out nocopy number
568   ,p_effective_date                 in  date
569   ,p_datetrack_mode                 in  varchar2
570   ) is
571   --
572   -- Declare cursors and local variables
573   --
574   l_proc varchar2(72) := g_package||'update_Bal_Type_For_Rate';
575   l_object_version_number ben_comp_lvl_acty_rt_f.object_version_number%TYPE;
576   l_effective_start_date ben_comp_lvl_acty_rt_f.effective_start_date%TYPE;
577   l_effective_end_date ben_comp_lvl_acty_rt_f.effective_end_date%TYPE;
578   --
579 begin
580   --
581   hr_utility.set_location('Entering:'|| l_proc, 10);
582   --
583   -- Issue a savepoint if operating in validation only mode
584   --
585   savepoint delete_Bal_Type_For_Rate;
586   --
587   hr_utility.set_location(l_proc, 20);
588   --
589   -- Process Logic
590   --
591   l_object_version_number := p_object_version_number;
592   --
593   --
594   begin
595     --
596     -- Start of API User Hook for the before hook of delete_Bal_Type_For_Rate
597     --
598     ben_Bal_Type_For_Rate_bk3.delete_Bal_Type_For_Rate_b
599       (
600        p_comp_lvl_acty_rt_id            =>  p_comp_lvl_acty_rt_id
601       ,p_object_version_number          =>  p_object_version_number
602     ,p_effective_date                      => trunc(p_effective_date)
603     ,p_datetrack_mode                      => p_datetrack_mode
604       );
605   exception
606     when hr_api.cannot_find_prog_unit then
607       hr_api.cannot_find_prog_unit_error
608         (p_module_name => 'DELETE_Bal_Type_For_Rate'
609         ,p_hook_type   => 'BP'
610         );
611     --
612     -- End of API User Hook for the before hook of delete_Bal_Type_For_Rate
613     --
614   end;
615   --
616   ben_btr_del.del
617     (
618      p_comp_lvl_acty_rt_id           => p_comp_lvl_acty_rt_id
619     ,p_effective_start_date          => l_effective_start_date
620     ,p_effective_end_date            => l_effective_end_date
621     ,p_object_version_number         => l_object_version_number
622     ,p_effective_date                => p_effective_date
623     ,p_datetrack_mode                => p_datetrack_mode
624     );
625   --
626   begin
627     --
628     -- Start of API User Hook for the after hook of delete_Bal_Type_For_Rate
629     --
630     ben_Bal_Type_For_Rate_bk3.delete_Bal_Type_For_Rate_a
631       (
632        p_comp_lvl_acty_rt_id            =>  p_comp_lvl_acty_rt_id
633       ,p_effective_start_date           =>  l_effective_start_date
634       ,p_effective_end_date             =>  l_effective_end_date
635       ,p_object_version_number          =>  l_object_version_number
636     ,p_effective_date                      => trunc(p_effective_date)
637     ,p_datetrack_mode                      => p_datetrack_mode
638       );
639   exception
640     when hr_api.cannot_find_prog_unit then
641       hr_api.cannot_find_prog_unit_error
642         (p_module_name => 'DELETE_Bal_Type_For_Rate'
643         ,p_hook_type   => 'AP'
644         );
645     --
646     -- End of API User Hook for the after hook of delete_Bal_Type_For_Rate
647     --
648   end;
649   --
650   hr_utility.set_location(l_proc, 60);
651   --
652   -- When in validation only mode raise the Validate_Enabled exception
653   --
654   if p_validate then
655     raise hr_api.validate_enabled;
656   end if;
657   --
658   hr_utility.set_location(' Leaving:'||l_proc, 70);
659   --
660 exception
661   --
662   when hr_api.validate_enabled then
663     --
664     -- As the Validate_Enabled exception has been raised
665     -- we must rollback to the savepoint
666     --
667     ROLLBACK TO delete_Bal_Type_For_Rate;
668     --
669     -- Only set output warning arguments
670     -- (Any key or derived arguments must be set to null
671     -- when validation only mode is being used.)
672     --
673     p_effective_start_date := null;
674     p_effective_end_date := null;
675     --
676   when others then
677     --
678     -- A validation or unexpected error has occured
679     --
680     p_effective_start_date := null;
681     p_effective_end_date := null;
682     p_object_version_number  := l_object_version_number;
683     hr_utility.set_location(' Leaving:'||l_proc, 80);
684     --
685     ROLLBACK TO delete_Bal_Type_For_Rate;
686     raise;
687     --
688 end delete_Bal_Type_For_Rate;
689 --
690 -- ----------------------------------------------------------------------------
691 -- |-------------------------------< lck >------------------------------------|
692 -- ----------------------------------------------------------------------------
693 --
694 procedure lck
695   (
696    p_comp_lvl_acty_rt_id                   in     number
697   ,p_object_version_number          in     number
698   ,p_effective_date                 in     date
699   ,p_datetrack_mode                 in     varchar2
700   ,p_validation_start_date          out nocopy    date
701   ,p_validation_end_date            out nocopy    date
702   ) is
703   --
704   --
705   -- Declare cursors and local variables
706   --
707   l_proc varchar2(72) := g_package||'lck';
708   l_validation_start_date date;
709   l_validation_end_date date;
710   --
711 begin
712   --
713   hr_utility.set_location('Entering:'|| l_proc, 10);
714   --
715   ben_btr_shd.lck
716     (
717       p_comp_lvl_acty_rt_id                 => p_comp_lvl_acty_rt_id
718      ,p_validation_start_date      => l_validation_start_date
719      ,p_validation_end_date        => l_validation_end_date
720      ,p_object_version_number      => p_object_version_number
721      ,p_effective_date             => p_effective_date
722      ,p_datetrack_mode             => p_datetrack_mode
723     );
724   --
725   hr_utility.set_location(' Leaving:'||l_proc, 70);
726   --
727 end lck;
728 --
729 end ben_Bal_Type_For_Rate_api;