DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_BNFT_RSTRN_CTFN_API

Source


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