DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PLAN_GOODS_SERV_CERT_API

Source


1 Package Body ben_plan_goods_serv_cert_api as
2 /* $Header: bepctapi.pkb 120.0 2005/05/28 10:17:30 appldev noship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  ben_plan_goods_serv_cert_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_plan_goods_serv_cert >----------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_plan_goods_serv_cert
13   (p_validate                       in  boolean   default false
14   ,p_pl_gd_r_svc_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_pl_gd_or_svc_id                in  number    default null
19   ,p_pfd_flag                       in  varchar2  default null
20   ,p_lack_ctfn_deny_rmbmt_flag      in  varchar2  default null
21   ,p_rmbmt_ctfn_typ_cd              in  varchar2  default null
22   ,p_lack_ctfn_deny_rmbmt_rl        in  number    default null
23   ,p_pct_attribute_category         in  varchar2  default null
24   ,p_pct_attribute1                 in  varchar2  default null
25   ,p_pct_attribute2                 in  varchar2  default null
26   ,p_pct_attribute3                 in  varchar2  default null
27   ,p_pct_attribute4                 in  varchar2  default null
28   ,p_pct_attribute5                 in  varchar2  default null
29   ,p_pct_attribute6                 in  varchar2  default null
30   ,p_pct_attribute7                 in  varchar2  default null
31   ,p_pct_attribute8                 in  varchar2  default null
32   ,p_pct_attribute9                 in  varchar2  default null
33   ,p_pct_attribute10                in  varchar2  default null
34   ,p_pct_attribute11                in  varchar2  default null
35   ,p_pct_attribute12                in  varchar2  default null
36   ,p_pct_attribute13                in  varchar2  default null
37   ,p_pct_attribute14                in  varchar2  default null
38   ,p_pct_attribute15                in  varchar2  default null
39   ,p_pct_attribute16                in  varchar2  default null
40   ,p_pct_attribute17                in  varchar2  default null
41   ,p_pct_attribute18                in  varchar2  default null
42   ,p_pct_attribute19                in  varchar2  default null
43   ,p_pct_attribute20                in  varchar2  default null
44   ,p_pct_attribute21                in  varchar2  default null
45   ,p_pct_attribute22                in  varchar2  default null
46   ,p_pct_attribute23                in  varchar2  default null
47   ,p_pct_attribute24                in  varchar2  default null
48   ,p_pct_attribute25                in  varchar2  default null
49   ,p_pct_attribute26                in  varchar2  default null
50   ,p_pct_attribute27                in  varchar2  default null
51   ,p_pct_attribute28                in  varchar2  default null
52   ,p_pct_attribute29                in  varchar2  default null
53   ,p_pct_attribute30                in  varchar2  default null
54   ,p_object_version_number          out nocopy number
55   ,p_effective_date                 in  date
56   ,p_ctfn_rqd_when_rl               in number
57   ,p_rqd_flag                       in varchar2
58   ) is
59   --
60   -- Declare cursors and local variables
61   --
62   l_pl_gd_r_svc_ctfn_id ben_pl_gd_r_svc_ctfn_f.pl_gd_r_svc_ctfn_id%TYPE;
63   l_effective_start_date ben_pl_gd_r_svc_ctfn_f.effective_start_date%TYPE;
64   l_effective_end_date ben_pl_gd_r_svc_ctfn_f.effective_end_date%TYPE;
65   l_proc varchar2(72) := g_package||'create_plan_goods_serv_cert';
66   l_object_version_number ben_pl_gd_r_svc_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_plan_goods_serv_cert;
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_plan_goods_serv_cert
83     --
84     ben_plan_goods_serv_cert_bk1.create_plan_goods_serv_cert_b
85       (
86        p_business_group_id              =>  p_business_group_id
87       ,p_pl_gd_or_svc_id                =>  p_pl_gd_or_svc_id
88       ,p_pfd_flag                       =>  p_pfd_flag
89       ,p_lack_ctfn_deny_rmbmt_flag      =>  p_lack_ctfn_deny_rmbmt_flag
90       ,p_rmbmt_ctfn_typ_cd              =>  p_rmbmt_ctfn_typ_cd
91       ,p_lack_ctfn_deny_rmbmt_rl        =>  p_lack_ctfn_deny_rmbmt_rl
92       ,p_pct_attribute_category         =>  p_pct_attribute_category
93       ,p_pct_attribute1                 =>  p_pct_attribute1
94       ,p_pct_attribute2                 =>  p_pct_attribute2
95       ,p_pct_attribute3                 =>  p_pct_attribute3
96       ,p_pct_attribute4                 =>  p_pct_attribute4
97       ,p_pct_attribute5                 =>  p_pct_attribute5
98       ,p_pct_attribute6                 =>  p_pct_attribute6
99       ,p_pct_attribute7                 =>  p_pct_attribute7
100       ,p_pct_attribute8                 =>  p_pct_attribute8
101       ,p_pct_attribute9                 =>  p_pct_attribute9
102       ,p_pct_attribute10                =>  p_pct_attribute10
103       ,p_pct_attribute11                =>  p_pct_attribute11
104       ,p_pct_attribute12                =>  p_pct_attribute12
105       ,p_pct_attribute13                =>  p_pct_attribute13
106       ,p_pct_attribute14                =>  p_pct_attribute14
107       ,p_pct_attribute15                =>  p_pct_attribute15
108       ,p_pct_attribute16                =>  p_pct_attribute16
109       ,p_pct_attribute17                =>  p_pct_attribute17
110       ,p_pct_attribute18                =>  p_pct_attribute18
111       ,p_pct_attribute19                =>  p_pct_attribute19
112       ,p_pct_attribute20                =>  p_pct_attribute20
113       ,p_pct_attribute21                =>  p_pct_attribute21
114       ,p_pct_attribute22                =>  p_pct_attribute22
115       ,p_pct_attribute23                =>  p_pct_attribute23
116       ,p_pct_attribute24                =>  p_pct_attribute24
117       ,p_pct_attribute25                =>  p_pct_attribute25
118       ,p_pct_attribute26                =>  p_pct_attribute26
119       ,p_pct_attribute27                =>  p_pct_attribute27
120       ,p_pct_attribute28                =>  p_pct_attribute28
121       ,p_pct_attribute29                =>  p_pct_attribute29
122       ,p_pct_attribute30                =>  p_pct_attribute30
123       ,p_effective_date                 => trunc(p_effective_date)
124       ,p_ctfn_rqd_when_rl               => p_ctfn_rqd_when_rl
125       ,p_rqd_flag                       => p_rqd_flag
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_plan_goods_serv_cert'
132         ,p_hook_type   => 'BP'
133         );
134     --
135     -- End of API User Hook for the before hook of create_plan_goods_serv_cert
136     --
137   end;
138   --
139   ben_pct_ins.ins
140     (
141      p_pl_gd_r_svc_ctfn_id           => l_pl_gd_r_svc_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_pl_gd_or_svc_id               => p_pl_gd_or_svc_id
146     ,p_pfd_flag                      => p_pfd_flag
147     ,p_lack_ctfn_deny_rmbmt_flag     => p_lack_ctfn_deny_rmbmt_flag
148     ,p_rmbmt_ctfn_typ_cd             => p_rmbmt_ctfn_typ_cd
149     ,p_lack_ctfn_deny_rmbmt_rl       => p_lack_ctfn_deny_rmbmt_rl
150     ,p_pct_attribute_category        => p_pct_attribute_category
151     ,p_pct_attribute1                => p_pct_attribute1
152     ,p_pct_attribute2                => p_pct_attribute2
153     ,p_pct_attribute3                => p_pct_attribute3
154     ,p_pct_attribute4                => p_pct_attribute4
155     ,p_pct_attribute5                => p_pct_attribute5
156     ,p_pct_attribute6                => p_pct_attribute6
157     ,p_pct_attribute7                => p_pct_attribute7
158     ,p_pct_attribute8                => p_pct_attribute8
159     ,p_pct_attribute9                => p_pct_attribute9
160     ,p_pct_attribute10               => p_pct_attribute10
161     ,p_pct_attribute11               => p_pct_attribute11
162     ,p_pct_attribute12               => p_pct_attribute12
163     ,p_pct_attribute13               => p_pct_attribute13
164     ,p_pct_attribute14               => p_pct_attribute14
165     ,p_pct_attribute15               => p_pct_attribute15
166     ,p_pct_attribute16               => p_pct_attribute16
167     ,p_pct_attribute17               => p_pct_attribute17
168     ,p_pct_attribute18               => p_pct_attribute18
169     ,p_pct_attribute19               => p_pct_attribute19
170     ,p_pct_attribute20               => p_pct_attribute20
171     ,p_pct_attribute21               => p_pct_attribute21
172     ,p_pct_attribute22               => p_pct_attribute22
173     ,p_pct_attribute23               => p_pct_attribute23
174     ,p_pct_attribute24               => p_pct_attribute24
175     ,p_pct_attribute25               => p_pct_attribute25
176     ,p_pct_attribute26               => p_pct_attribute26
177     ,p_pct_attribute27               => p_pct_attribute27
178     ,p_pct_attribute28               => p_pct_attribute28
179     ,p_pct_attribute29               => p_pct_attribute29
180     ,p_pct_attribute30               => p_pct_attribute30
181     ,p_object_version_number         => l_object_version_number
182     ,p_effective_date                => trunc(p_effective_date)
183     ,p_ctfn_rqd_when_rl              => p_ctfn_rqd_when_rl
184     ,p_rqd_flag                      => p_rqd_flag
185     );
186   --
187   begin
188     --
189     -- Start of API User Hook for the after hook of create_plan_goods_serv_cert
190     --
191     ben_plan_goods_serv_cert_bk1.create_plan_goods_serv_cert_a
192       (
193        p_pl_gd_r_svc_ctfn_id            =>  l_pl_gd_r_svc_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_pl_gd_or_svc_id                =>  p_pl_gd_or_svc_id
198       ,p_pfd_flag                       =>  p_pfd_flag
199       ,p_lack_ctfn_deny_rmbmt_flag      =>  p_lack_ctfn_deny_rmbmt_flag
200       ,p_rmbmt_ctfn_typ_cd              =>  p_rmbmt_ctfn_typ_cd
201       ,p_lack_ctfn_deny_rmbmt_rl        =>  p_lack_ctfn_deny_rmbmt_rl
202       ,p_pct_attribute_category         =>  p_pct_attribute_category
203       ,p_pct_attribute1                 =>  p_pct_attribute1
204       ,p_pct_attribute2                 =>  p_pct_attribute2
205       ,p_pct_attribute3                 =>  p_pct_attribute3
206       ,p_pct_attribute4                 =>  p_pct_attribute4
207       ,p_pct_attribute5                 =>  p_pct_attribute5
208       ,p_pct_attribute6                 =>  p_pct_attribute6
209       ,p_pct_attribute7                 =>  p_pct_attribute7
210       ,p_pct_attribute8                 =>  p_pct_attribute8
211       ,p_pct_attribute9                 =>  p_pct_attribute9
212       ,p_pct_attribute10                =>  p_pct_attribute10
213       ,p_pct_attribute11                =>  p_pct_attribute11
214       ,p_pct_attribute12                =>  p_pct_attribute12
215       ,p_pct_attribute13                =>  p_pct_attribute13
216       ,p_pct_attribute14                =>  p_pct_attribute14
217       ,p_pct_attribute15                =>  p_pct_attribute15
218       ,p_pct_attribute16                =>  p_pct_attribute16
219       ,p_pct_attribute17                =>  p_pct_attribute17
220       ,p_pct_attribute18                =>  p_pct_attribute18
221       ,p_pct_attribute19                =>  p_pct_attribute19
222       ,p_pct_attribute20                =>  p_pct_attribute20
223       ,p_pct_attribute21                =>  p_pct_attribute21
224       ,p_pct_attribute22                =>  p_pct_attribute22
225       ,p_pct_attribute23                =>  p_pct_attribute23
226       ,p_pct_attribute24                =>  p_pct_attribute24
227       ,p_pct_attribute25                =>  p_pct_attribute25
228       ,p_pct_attribute26                =>  p_pct_attribute26
229       ,p_pct_attribute27                =>  p_pct_attribute27
230       ,p_pct_attribute28                =>  p_pct_attribute28
231       ,p_pct_attribute29                =>  p_pct_attribute29
232       ,p_pct_attribute30                =>  p_pct_attribute30
233       ,p_object_version_number          =>  l_object_version_number
234       ,p_effective_date                 => trunc(p_effective_date)
235       ,p_ctfn_rqd_when_rl               => p_ctfn_rqd_when_rl
236       ,p_rqd_flag                       => p_rqd_flag
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_plan_goods_serv_cert'
242         ,p_hook_type   => 'AP'
243         );
244     --
245     -- End of API User Hook for the after hook of create_plan_goods_serv_cert
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_pl_gd_r_svc_ctfn_id := l_pl_gd_r_svc_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_plan_goods_serv_cert;
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_pl_gd_r_svc_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_plan_goods_serv_cert;
290     --
291     p_pl_gd_r_svc_ctfn_id := null;
292     p_effective_start_date := null;
293     p_effective_end_date := null;
294     p_object_version_number  := null;
295     hr_utility.set_location(' Leaving:'||l_proc, 80);
296     --
297     raise;
298     --
299 end create_plan_goods_serv_cert;
300 -- ----------------------------------------------------------------------------
301 -- |------------------------< update_plan_goods_serv_cert >--- ------------------|
302 -- ----------------------------------------------------------------------------
303 --
304 procedure update_plan_goods_serv_cert
305   (p_validate                       in  boolean   default false
306   ,p_pl_gd_r_svc_ctfn_id            in  number
307   ,p_effective_start_date           out nocopy date
308   ,p_effective_end_date             out nocopy date
309   ,p_business_group_id              in  number    default hr_api.g_number
310   ,p_pl_gd_or_svc_id                in  number    default hr_api.g_number
311   ,p_pfd_flag                       in  varchar2  default hr_api.g_varchar2
312   ,p_lack_ctfn_deny_rmbmt_flag      in  varchar2  default hr_api.g_varchar2
313   ,p_rmbmt_ctfn_typ_cd              in  varchar2  default hr_api.g_varchar2
314   ,p_lack_ctfn_deny_rmbmt_rl        in  number    default hr_api.g_number
315   ,p_pct_attribute_category         in  varchar2  default hr_api.g_varchar2
316   ,p_pct_attribute1                 in  varchar2  default hr_api.g_varchar2
317   ,p_pct_attribute2                 in  varchar2  default hr_api.g_varchar2
318   ,p_pct_attribute3                 in  varchar2  default hr_api.g_varchar2
319   ,p_pct_attribute4                 in  varchar2  default hr_api.g_varchar2
320   ,p_pct_attribute5                 in  varchar2  default hr_api.g_varchar2
321   ,p_pct_attribute6                 in  varchar2  default hr_api.g_varchar2
322   ,p_pct_attribute7                 in  varchar2  default hr_api.g_varchar2
323   ,p_pct_attribute8                 in  varchar2  default hr_api.g_varchar2
324   ,p_pct_attribute9                 in  varchar2  default hr_api.g_varchar2
325   ,p_pct_attribute10                in  varchar2  default hr_api.g_varchar2
326   ,p_pct_attribute11                in  varchar2  default hr_api.g_varchar2
327   ,p_pct_attribute12                in  varchar2  default hr_api.g_varchar2
328   ,p_pct_attribute13                in  varchar2  default hr_api.g_varchar2
329   ,p_pct_attribute14                in  varchar2  default hr_api.g_varchar2
330   ,p_pct_attribute15                in  varchar2  default hr_api.g_varchar2
331   ,p_pct_attribute16                in  varchar2  default hr_api.g_varchar2
332   ,p_pct_attribute17                in  varchar2  default hr_api.g_varchar2
333   ,p_pct_attribute18                in  varchar2  default hr_api.g_varchar2
334   ,p_pct_attribute19                in  varchar2  default hr_api.g_varchar2
335   ,p_pct_attribute20                in  varchar2  default hr_api.g_varchar2
336   ,p_pct_attribute21                in  varchar2  default hr_api.g_varchar2
337   ,p_pct_attribute22                in  varchar2  default hr_api.g_varchar2
338   ,p_pct_attribute23                in  varchar2  default hr_api.g_varchar2
339   ,p_pct_attribute24                in  varchar2  default hr_api.g_varchar2
340   ,p_pct_attribute25                in  varchar2  default hr_api.g_varchar2
341   ,p_pct_attribute26                in  varchar2  default hr_api.g_varchar2
342   ,p_pct_attribute27                in  varchar2  default hr_api.g_varchar2
343   ,p_pct_attribute28                in  varchar2  default hr_api.g_varchar2
344   ,p_pct_attribute29                in  varchar2  default hr_api.g_varchar2
345   ,p_pct_attribute30                in  varchar2  default hr_api.g_varchar2
346   ,p_object_version_number          in out nocopy number
347   ,p_effective_date                 in  date
348   ,p_datetrack_mode                 in  varchar2
349   ,p_ctfn_rqd_when_rl               in  number    default hr_api.g_number
350   ,p_rqd_flag                       in  varchar2  default hr_api.g_varchar2
351   ) is
352   --
353   -- Declare cursors and local variables
354   --
355   l_proc varchar2(72) := g_package||'update_plan_goods_serv_cert';
356   l_object_version_number ben_pl_gd_r_svc_ctfn_f.object_version_number%TYPE;
357   l_effective_start_date ben_pl_gd_r_svc_ctfn_f.effective_start_date%TYPE;
358   l_effective_end_date ben_pl_gd_r_svc_ctfn_f.effective_end_date%TYPE;
359   --
360 begin
361   --
362   hr_utility.set_location('Entering:'|| l_proc, 10);
363   --
364   -- Issue a savepoint if operating in validation only mode
365   --
366   savepoint update_plan_goods_serv_cert;
367   --
368   hr_utility.set_location(l_proc, 20);
369   --
370   -- Process Logic
371   --
372   l_object_version_number := p_object_version_number;
373   --
374   begin
375     --
376     -- Start of API User Hook for the before hook of update_plan_goods_serv_cert
377     --
378     ben_plan_goods_serv_cert_bk2.update_plan_goods_serv_cert_b
379       (
380        p_pl_gd_r_svc_ctfn_id            =>  p_pl_gd_r_svc_ctfn_id
381       ,p_business_group_id              =>  p_business_group_id
382       ,p_pl_gd_or_svc_id                =>  p_pl_gd_or_svc_id
383       ,p_pfd_flag                       =>  p_pfd_flag
384       ,p_lack_ctfn_deny_rmbmt_flag      =>  p_lack_ctfn_deny_rmbmt_flag
385       ,p_rmbmt_ctfn_typ_cd              =>  p_rmbmt_ctfn_typ_cd
386       ,p_lack_ctfn_deny_rmbmt_rl        =>  p_lack_ctfn_deny_rmbmt_rl
387       ,p_pct_attribute_category         =>  p_pct_attribute_category
388       ,p_pct_attribute1                 =>  p_pct_attribute1
389       ,p_pct_attribute2                 =>  p_pct_attribute2
390       ,p_pct_attribute3                 =>  p_pct_attribute3
391       ,p_pct_attribute4                 =>  p_pct_attribute4
392       ,p_pct_attribute5                 =>  p_pct_attribute5
393       ,p_pct_attribute6                 =>  p_pct_attribute6
394       ,p_pct_attribute7                 =>  p_pct_attribute7
395       ,p_pct_attribute8                 =>  p_pct_attribute8
396       ,p_pct_attribute9                 =>  p_pct_attribute9
397       ,p_pct_attribute10                =>  p_pct_attribute10
398       ,p_pct_attribute11                =>  p_pct_attribute11
399       ,p_pct_attribute12                =>  p_pct_attribute12
400       ,p_pct_attribute13                =>  p_pct_attribute13
401       ,p_pct_attribute14                =>  p_pct_attribute14
402       ,p_pct_attribute15                =>  p_pct_attribute15
403       ,p_pct_attribute16                =>  p_pct_attribute16
404       ,p_pct_attribute17                =>  p_pct_attribute17
405       ,p_pct_attribute18                =>  p_pct_attribute18
406       ,p_pct_attribute19                =>  p_pct_attribute19
407       ,p_pct_attribute20                =>  p_pct_attribute20
408       ,p_pct_attribute21                =>  p_pct_attribute21
409       ,p_pct_attribute22                =>  p_pct_attribute22
410       ,p_pct_attribute23                =>  p_pct_attribute23
411       ,p_pct_attribute24                =>  p_pct_attribute24
412       ,p_pct_attribute25                =>  p_pct_attribute25
413       ,p_pct_attribute26                =>  p_pct_attribute26
414       ,p_pct_attribute27                =>  p_pct_attribute27
415       ,p_pct_attribute28                =>  p_pct_attribute28
416       ,p_pct_attribute29                =>  p_pct_attribute29
417       ,p_pct_attribute30                =>  p_pct_attribute30
418       ,p_object_version_number          =>  p_object_version_number
419       ,p_effective_date                 => trunc(p_effective_date)
420       ,p_datetrack_mode                 => p_datetrack_mode
421       ,p_ctfn_rqd_when_rl               => p_ctfn_rqd_when_rl
422       ,p_rqd_flag                       => p_rqd_flag
423       );
424   exception
425     when hr_api.cannot_find_prog_unit then
426       hr_api.cannot_find_prog_unit_error
427         (p_module_name => 'UPDATE_plan_goods_serv_cert'
428         ,p_hook_type   => 'BP'
429         );
430     --
431     -- End of API User Hook for the before hook of update_plan_goods_serv_cert
432     --
433   end;
434   --
435   ben_pct_upd.upd
436     (
437      p_pl_gd_r_svc_ctfn_id           => p_pl_gd_r_svc_ctfn_id
438     ,p_effective_start_date          => l_effective_start_date
439     ,p_effective_end_date            => l_effective_end_date
440     ,p_business_group_id             => p_business_group_id
441     ,p_pl_gd_or_svc_id               => p_pl_gd_or_svc_id
442     ,p_pfd_flag                      => p_pfd_flag
443     ,p_lack_ctfn_deny_rmbmt_flag     => p_lack_ctfn_deny_rmbmt_flag
444     ,p_rmbmt_ctfn_typ_cd             => p_rmbmt_ctfn_typ_cd
445     ,p_lack_ctfn_deny_rmbmt_rl       => p_lack_ctfn_deny_rmbmt_rl
446     ,p_pct_attribute_category        => p_pct_attribute_category
447     ,p_pct_attribute1                => p_pct_attribute1
448     ,p_pct_attribute2                => p_pct_attribute2
449     ,p_pct_attribute3                => p_pct_attribute3
450     ,p_pct_attribute4                => p_pct_attribute4
451     ,p_pct_attribute5                => p_pct_attribute5
452     ,p_pct_attribute6                => p_pct_attribute6
453     ,p_pct_attribute7                => p_pct_attribute7
454     ,p_pct_attribute8                => p_pct_attribute8
455     ,p_pct_attribute9                => p_pct_attribute9
456     ,p_pct_attribute10               => p_pct_attribute10
457     ,p_pct_attribute11               => p_pct_attribute11
458     ,p_pct_attribute12               => p_pct_attribute12
459     ,p_pct_attribute13               => p_pct_attribute13
460     ,p_pct_attribute14               => p_pct_attribute14
461     ,p_pct_attribute15               => p_pct_attribute15
462     ,p_pct_attribute16               => p_pct_attribute16
463     ,p_pct_attribute17               => p_pct_attribute17
464     ,p_pct_attribute18               => p_pct_attribute18
465     ,p_pct_attribute19               => p_pct_attribute19
466     ,p_pct_attribute20               => p_pct_attribute20
467     ,p_pct_attribute21               => p_pct_attribute21
468     ,p_pct_attribute22               => p_pct_attribute22
469     ,p_pct_attribute23               => p_pct_attribute23
470     ,p_pct_attribute24               => p_pct_attribute24
471     ,p_pct_attribute25               => p_pct_attribute25
472     ,p_pct_attribute26               => p_pct_attribute26
473     ,p_pct_attribute27               => p_pct_attribute27
474     ,p_pct_attribute28               => p_pct_attribute28
475     ,p_pct_attribute29               => p_pct_attribute29
476     ,p_pct_attribute30               => p_pct_attribute30
477     ,p_object_version_number         => l_object_version_number
478     ,p_effective_date                => trunc(p_effective_date)
479     ,p_datetrack_mode                => p_datetrack_mode
480     ,p_ctfn_rqd_when_rl              => p_ctfn_rqd_when_rl
481     ,p_rqd_flag                      => p_rqd_flag
482     );
483   --
484   begin
485     --
486     -- Start of API User Hook for the after hook of update_plan_goods_serv_cert
487     --
488     ben_plan_goods_serv_cert_bk2.update_plan_goods_serv_cert_a
489       (
490        p_pl_gd_r_svc_ctfn_id            =>  p_pl_gd_r_svc_ctfn_id
491       ,p_effective_start_date           =>  l_effective_start_date
492       ,p_effective_end_date             =>  l_effective_end_date
493       ,p_business_group_id              =>  p_business_group_id
494       ,p_pl_gd_or_svc_id                =>  p_pl_gd_or_svc_id
495       ,p_pfd_flag                       =>  p_pfd_flag
496       ,p_lack_ctfn_deny_rmbmt_flag      =>  p_lack_ctfn_deny_rmbmt_flag
497       ,p_rmbmt_ctfn_typ_cd              =>  p_rmbmt_ctfn_typ_cd
498       ,p_lack_ctfn_deny_rmbmt_rl        =>  p_lack_ctfn_deny_rmbmt_rl
499       ,p_pct_attribute_category         =>  p_pct_attribute_category
500       ,p_pct_attribute1                 =>  p_pct_attribute1
501       ,p_pct_attribute2                 =>  p_pct_attribute2
502       ,p_pct_attribute3                 =>  p_pct_attribute3
503       ,p_pct_attribute4                 =>  p_pct_attribute4
504       ,p_pct_attribute5                 =>  p_pct_attribute5
505       ,p_pct_attribute6                 =>  p_pct_attribute6
506       ,p_pct_attribute7                 =>  p_pct_attribute7
507       ,p_pct_attribute8                 =>  p_pct_attribute8
508       ,p_pct_attribute9                 =>  p_pct_attribute9
509       ,p_pct_attribute10                =>  p_pct_attribute10
510       ,p_pct_attribute11                =>  p_pct_attribute11
511       ,p_pct_attribute12                =>  p_pct_attribute12
512       ,p_pct_attribute13                =>  p_pct_attribute13
513       ,p_pct_attribute14                =>  p_pct_attribute14
514       ,p_pct_attribute15                =>  p_pct_attribute15
515       ,p_pct_attribute16                =>  p_pct_attribute16
516       ,p_pct_attribute17                =>  p_pct_attribute17
517       ,p_pct_attribute18                =>  p_pct_attribute18
518       ,p_pct_attribute19                =>  p_pct_attribute19
519       ,p_pct_attribute20                =>  p_pct_attribute20
520       ,p_pct_attribute21                =>  p_pct_attribute21
521       ,p_pct_attribute22                =>  p_pct_attribute22
522       ,p_pct_attribute23                =>  p_pct_attribute23
523       ,p_pct_attribute24                =>  p_pct_attribute24
524       ,p_pct_attribute25                =>  p_pct_attribute25
525       ,p_pct_attribute26                =>  p_pct_attribute26
526       ,p_pct_attribute27                =>  p_pct_attribute27
527       ,p_pct_attribute28                =>  p_pct_attribute28
528       ,p_pct_attribute29                =>  p_pct_attribute29
529       ,p_pct_attribute30                =>  p_pct_attribute30
530       ,p_object_version_number          =>  l_object_version_number
531       ,p_effective_date                 => trunc(p_effective_date)
532       ,p_datetrack_mode                 => p_datetrack_mode
533       ,p_ctfn_rqd_when_rl               => p_ctfn_rqd_when_rl
534       ,p_rqd_flag                       => p_rqd_flag
535       );
536   exception
537     when hr_api.cannot_find_prog_unit then
538       hr_api.cannot_find_prog_unit_error
539         (p_module_name => 'UPDATE_plan_goods_serv_cert'
540         ,p_hook_type   => 'AP'
541         );
542     --
543     -- End of API User Hook for the after hook of update_plan_goods_serv_cert
544     --
545   end;
546   --
547   hr_utility.set_location(l_proc, 60);
548   --
549   -- When in validation only mode raise the Validate_Enabled exception
550   --
551   if p_validate then
552     raise hr_api.validate_enabled;
553   end if;
554   --
555   -- Set all output arguments
556   --
557   p_object_version_number := l_object_version_number;
558   p_effective_start_date := l_effective_start_date;
559   p_effective_end_date := l_effective_end_date;
560   --
561   hr_utility.set_location(' Leaving:'||l_proc, 70);
562   --
563 exception
564   --
565   when hr_api.validate_enabled then
566     --
567     -- As the Validate_Enabled exception has been raised
568     -- we must rollback to the savepoint
569     --
570     ROLLBACK TO update_plan_goods_serv_cert;
571     --
572     -- Only set output warning arguments
573     -- (Any key or derived arguments must be set to null
574     -- when validation only mode is being used.)
575     --
576     hr_utility.set_location(' Leaving:'||l_proc, 80);
577     --
578   when others then
579     --
580     -- A validation or unexpected error has occured
581     --
582     ROLLBACK TO update_plan_goods_serv_cert;
583     --
584     p_effective_start_date := null;
585     p_effective_end_date := null;
586     p_object_version_number  := l_object_version_number;
587     hr_utility.set_location(' Leaving:'||l_proc, 80);
588     --
589     raise;
590     --
591 end update_plan_goods_serv_cert;
592 -- ----------------------------------------------------------------------------
593 -- |------------------------< delete_plan_goods_serv_cert >----------------------|
594 -- ----------------------------------------------------------------------------
595 --
596 procedure delete_plan_goods_serv_cert
597   (p_validate                       in  boolean  default false
598   ,p_pl_gd_r_svc_ctfn_id            in  number
599   ,p_effective_start_date           out nocopy date
600   ,p_effective_end_date             out nocopy date
601   ,p_object_version_number          in out nocopy number
602   ,p_effective_date                 in  date
603   ,p_datetrack_mode                 in  varchar2
604   ) is
605   --
606   -- Declare cursors and local variables
607   --
608   l_proc varchar2(72) := g_package||'update_plan_goods_serv_cert';
609   l_object_version_number ben_pl_gd_r_svc_ctfn_f.object_version_number%TYPE;
610   l_effective_start_date ben_pl_gd_r_svc_ctfn_f.effective_start_date%TYPE;
611   l_effective_end_date ben_pl_gd_r_svc_ctfn_f.effective_end_date%TYPE;
612   --
613 begin
614   --
615   hr_utility.set_location('Entering:'|| l_proc, 10);
616   --
617   -- Issue a savepoint if operating in validation only mode
618   --
619   savepoint delete_plan_goods_serv_cert;
620   --
621   hr_utility.set_location(l_proc, 20);
622   --
623   -- Process Logic
624   --
625   l_object_version_number := p_object_version_number;
626   --
627   --
628   begin
629     --
630     -- Start of API User Hook for the before hook of delete_plan_goods_serv_cert
631     --
632     ben_plan_goods_serv_cert_bk3.delete_plan_goods_serv_cert_b
633       (
634        p_pl_gd_r_svc_ctfn_id            =>  p_pl_gd_r_svc_ctfn_id
635       ,p_object_version_number          =>  p_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_plan_goods_serv_cert'
643         ,p_hook_type   => 'BP'
644         );
645     --
646     -- End of API User Hook for the before hook of delete_plan_goods_serv_cert
647     --
648   end;
649   --
650   ben_pct_del.del
651     (
652      p_pl_gd_r_svc_ctfn_id           => p_pl_gd_r_svc_ctfn_id
653     ,p_effective_start_date          => l_effective_start_date
654     ,p_effective_end_date            => l_effective_end_date
655     ,p_object_version_number         => l_object_version_number
656     ,p_effective_date                => p_effective_date
657     ,p_datetrack_mode                => p_datetrack_mode
658     );
659   --
660   begin
661     --
662     -- Start of API User Hook for the after hook of delete_plan_goods_serv_cert
663     --
664     ben_plan_goods_serv_cert_bk3.delete_plan_goods_serv_cert_a
665       (
666        p_pl_gd_r_svc_ctfn_id            =>  p_pl_gd_r_svc_ctfn_id
667       ,p_effective_start_date           =>  l_effective_start_date
668       ,p_effective_end_date             =>  l_effective_end_date
669       ,p_object_version_number          =>  l_object_version_number
670     ,p_effective_date                      => trunc(p_effective_date)
671     ,p_datetrack_mode                      => p_datetrack_mode
672       );
673   exception
674     when hr_api.cannot_find_prog_unit then
675       hr_api.cannot_find_prog_unit_error
676         (p_module_name => 'DELETE_plan_goods_serv_cert'
677         ,p_hook_type   => 'AP'
678         );
679     --
680     -- End of API User Hook for the after hook of delete_plan_goods_serv_cert
681     --
682   end;
683   --
684   hr_utility.set_location(l_proc, 60);
685   --
686   -- When in validation only mode raise the Validate_Enabled exception
687   --
688   if p_validate then
689     raise hr_api.validate_enabled;
690   end if;
691   --
692   hr_utility.set_location(' Leaving:'||l_proc, 70);
693   --
694 exception
695   --
696   when hr_api.validate_enabled then
697     --
698     -- As the Validate_Enabled exception has been raised
699     -- we must rollback to the savepoint
700     --
701     ROLLBACK TO delete_plan_goods_serv_cert;
702     --
703     -- Only set output warning arguments
704     -- (Any key or derived arguments must be set to null
705     -- when validation only mode is being used.)
706     --
707     p_effective_start_date := null;
708     p_effective_end_date := null;
709     --
710   when others then
711     --
712     -- A validation or unexpected error has occured
713     --
714     ROLLBACK TO delete_plan_goods_serv_cert;
715     --
716     p_effective_start_date := null;
717     p_effective_end_date := null;
718     p_object_version_number  := l_object_version_number;
719     hr_utility.set_location(' Leaving:'||l_proc, 80);
720     --
721     raise;
722     --
723 end delete_plan_goods_serv_cert;
724 --
725 -- ----------------------------------------------------------------------------
726 -- |-------------------------------< lck >------------------------------------|
727 -- ----------------------------------------------------------------------------
728 --
729 procedure lck
730   (
731    p_pl_gd_r_svc_ctfn_id                   in     number
732   ,p_object_version_number          in     number
733   ,p_effective_date                 in     date
734   ,p_datetrack_mode                 in     varchar2
735   ,p_validation_start_date          out nocopy    date
736   ,p_validation_end_date            out nocopy    date
737   ) is
738   --
739   --
740   -- Declare cursors and local variables
741   --
742   l_proc varchar2(72) := g_package||'lck';
743   l_validation_start_date date;
744   l_validation_end_date date;
745   --
746 begin
747   --
748   hr_utility.set_location('Entering:'|| l_proc, 10);
749   --
750   ben_pct_shd.lck
751     (
752       p_pl_gd_r_svc_ctfn_id                 => p_pl_gd_r_svc_ctfn_id
753      ,p_validation_start_date      => l_validation_start_date
754      ,p_validation_end_date        => l_validation_end_date
755      ,p_object_version_number      => p_object_version_number
756      ,p_effective_date             => p_effective_date
757      ,p_datetrack_mode             => p_datetrack_mode
758     );
759   --
760   hr_utility.set_location(' Leaving:'||l_proc, 70);
761   --
762 end lck;
763 --
764 end ben_plan_goods_serv_cert_api;