DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PROGRAM_DPNT_CVG_CTFN_API

Source


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