DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PLAN_GOODS_SERVICES_API

Source


1 Package Body ben_Plan_goods_services_api as
2 /* $Header: bevgsapi.pkb 120.0 2005/05/28 12:03:53 appldev noship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  ben_Plan_goods_services_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_Plan_goods_services >----------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_Plan_goods_services
13   (p_validate                       in  boolean   default false
14   ,p_pl_gd_or_svc_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_id                          in  number    default null
19   ,p_gd_or_svc_typ_id               in  number    default null
20   ,p_alw_rcrrg_clms_flag            in  varchar2  default null
21   ,p_gd_or_svc_usg_cd               in  varchar2  default null
22   ,p_vgs_attribute_category         in  varchar2  default null
23   ,p_vgs_attribute1                 in  varchar2  default null
24   ,p_vgs_attribute2                 in  varchar2  default null
25   ,p_vgs_attribute3                 in  varchar2  default null
26   ,p_vgs_attribute4                 in  varchar2  default null
27   ,p_vgs_attribute5                 in  varchar2  default null
28   ,p_vgs_attribute6                 in  varchar2  default null
29   ,p_vgs_attribute7                 in  varchar2  default null
30   ,p_vgs_attribute8                 in  varchar2  default null
31   ,p_vgs_attribute9                 in  varchar2  default null
32   ,p_vgs_attribute10                in  varchar2  default null
33   ,p_vgs_attribute11                in  varchar2  default null
34   ,p_vgs_attribute12                in  varchar2  default null
35   ,p_vgs_attribute13                in  varchar2  default null
36   ,p_vgs_attribute14                in  varchar2  default null
37   ,p_vgs_attribute15                in  varchar2  default null
38   ,p_vgs_attribute16                in  varchar2  default null
39   ,p_vgs_attribute17                in  varchar2  default null
40   ,p_vgs_attribute18                in  varchar2  default null
41   ,p_vgs_attribute19                in  varchar2  default null
42   ,p_vgs_attribute20                in  varchar2  default null
43   ,p_vgs_attribute21                in  varchar2  default null
44   ,p_vgs_attribute22                in  varchar2  default null
45   ,p_vgs_attribute23                in  varchar2  default null
46   ,p_vgs_attribute24                in  varchar2  default null
47   ,p_vgs_attribute25                in  varchar2  default null
48   ,p_vgs_attribute26                in  varchar2  default null
49   ,p_vgs_attribute27                in  varchar2  default null
50   ,p_vgs_attribute28                in  varchar2  default null
51   ,p_vgs_attribute29                in  varchar2  default null
52   ,p_vgs_attribute30                in  varchar2  default null
53   ,p_object_version_number          out nocopy number
54   ,p_effective_date                 in  date
55   ,p_gd_svc_recd_basis_cd           in varchar2   default null
56   ,p_gd_svc_recd_basis_dt           in date       default null
57   ,p_gd_svc_recd_basis_mo           in number     default null
58   ) is
59   --
60   -- Declare cursors and local variables
61   --
62   l_pl_gd_or_svc_id ben_pl_gd_or_svc_f.pl_gd_or_svc_id%TYPE;
63   l_effective_start_date ben_pl_gd_or_svc_f.effective_start_date%TYPE;
64   l_effective_end_date ben_pl_gd_or_svc_f.effective_end_date%TYPE;
65   l_proc varchar2(72) := g_package||'create_Plan_goods_services';
66   l_object_version_number ben_pl_gd_or_svc_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_services;
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_services
83     --
84     ben_Plan_goods_services_bk1.create_Plan_goods_services_b
85       (
86        p_business_group_id              =>  p_business_group_id
87       ,p_pl_id                          =>  p_pl_id
88       ,p_gd_or_svc_typ_id               =>  p_gd_or_svc_typ_id
89       ,p_alw_rcrrg_clms_flag            =>  p_alw_rcrrg_clms_flag
90       ,p_gd_or_svc_usg_cd               =>  p_gd_or_svc_usg_cd
91       ,p_vgs_attribute_category         =>  p_vgs_attribute_category
92       ,p_vgs_attribute1                 =>  p_vgs_attribute1
93       ,p_vgs_attribute2                 =>  p_vgs_attribute2
94       ,p_vgs_attribute3                 =>  p_vgs_attribute3
95       ,p_vgs_attribute4                 =>  p_vgs_attribute4
96       ,p_vgs_attribute5                 =>  p_vgs_attribute5
97       ,p_vgs_attribute6                 =>  p_vgs_attribute6
98       ,p_vgs_attribute7                 =>  p_vgs_attribute7
99       ,p_vgs_attribute8                 =>  p_vgs_attribute8
100       ,p_vgs_attribute9                 =>  p_vgs_attribute9
101       ,p_vgs_attribute10                =>  p_vgs_attribute10
102       ,p_vgs_attribute11                =>  p_vgs_attribute11
103       ,p_vgs_attribute12                =>  p_vgs_attribute12
104       ,p_vgs_attribute13                =>  p_vgs_attribute13
105       ,p_vgs_attribute14                =>  p_vgs_attribute14
106       ,p_vgs_attribute15                =>  p_vgs_attribute15
107       ,p_vgs_attribute16                =>  p_vgs_attribute16
108       ,p_vgs_attribute17                =>  p_vgs_attribute17
109       ,p_vgs_attribute18                =>  p_vgs_attribute18
110       ,p_vgs_attribute19                =>  p_vgs_attribute19
111       ,p_vgs_attribute20                =>  p_vgs_attribute20
112       ,p_vgs_attribute21                =>  p_vgs_attribute21
113       ,p_vgs_attribute22                =>  p_vgs_attribute22
114       ,p_vgs_attribute23                =>  p_vgs_attribute23
115       ,p_vgs_attribute24                =>  p_vgs_attribute24
116       ,p_vgs_attribute25                =>  p_vgs_attribute25
117       ,p_vgs_attribute26                =>  p_vgs_attribute26
118       ,p_vgs_attribute27                =>  p_vgs_attribute27
119       ,p_vgs_attribute28                =>  p_vgs_attribute28
120       ,p_vgs_attribute29                =>  p_vgs_attribute29
121       ,p_vgs_attribute30                =>  p_vgs_attribute30
122       ,p_effective_date                 => trunc(p_effective_date)
123       ,p_gd_svc_recd_basis_cd           => p_gd_svc_recd_basis_cd
124       ,p_gd_svc_recd_basis_dt           => p_gd_svc_recd_basis_dt
125       ,p_gd_svc_recd_basis_mo           => p_gd_svc_recd_basis_mo
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_services'
132         ,p_hook_type   => 'BP'
133         );
134     --
135     -- End of API User Hook for the before hook of create_Plan_goods_services
136     --
137   end;
138   --
139   ben_vgs_ins.ins
140     (
141      p_pl_gd_or_svc_id               => l_pl_gd_or_svc_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_id                         => p_pl_id
146     ,p_gd_or_svc_typ_id              => p_gd_or_svc_typ_id
147     ,p_alw_rcrrg_clms_flag           => p_alw_rcrrg_clms_flag
148     ,p_gd_or_svc_usg_cd              => p_gd_or_svc_usg_cd
149     ,p_vgs_attribute_category        => p_vgs_attribute_category
150     ,p_vgs_attribute1                => p_vgs_attribute1
151     ,p_vgs_attribute2                => p_vgs_attribute2
152     ,p_vgs_attribute3                => p_vgs_attribute3
153     ,p_vgs_attribute4                => p_vgs_attribute4
154     ,p_vgs_attribute5                => p_vgs_attribute5
155     ,p_vgs_attribute6                => p_vgs_attribute6
156     ,p_vgs_attribute7                => p_vgs_attribute7
157     ,p_vgs_attribute8                => p_vgs_attribute8
158     ,p_vgs_attribute9                => p_vgs_attribute9
159     ,p_vgs_attribute10               => p_vgs_attribute10
160     ,p_vgs_attribute11               => p_vgs_attribute11
161     ,p_vgs_attribute12               => p_vgs_attribute12
162     ,p_vgs_attribute13               => p_vgs_attribute13
163     ,p_vgs_attribute14               => p_vgs_attribute14
164     ,p_vgs_attribute15               => p_vgs_attribute15
165     ,p_vgs_attribute16               => p_vgs_attribute16
166     ,p_vgs_attribute17               => p_vgs_attribute17
167     ,p_vgs_attribute18               => p_vgs_attribute18
168     ,p_vgs_attribute19               => p_vgs_attribute19
169     ,p_vgs_attribute20               => p_vgs_attribute20
170     ,p_vgs_attribute21               => p_vgs_attribute21
171     ,p_vgs_attribute22               => p_vgs_attribute22
172     ,p_vgs_attribute23               => p_vgs_attribute23
173     ,p_vgs_attribute24               => p_vgs_attribute24
174     ,p_vgs_attribute25               => p_vgs_attribute25
175     ,p_vgs_attribute26               => p_vgs_attribute26
176     ,p_vgs_attribute27               => p_vgs_attribute27
177     ,p_vgs_attribute28               => p_vgs_attribute28
178     ,p_vgs_attribute29               => p_vgs_attribute29
179     ,p_vgs_attribute30               => p_vgs_attribute30
180     ,p_object_version_number         => l_object_version_number
181     ,p_effective_date                => trunc(p_effective_date)
182     ,p_gd_svc_recd_basis_cd           => p_gd_svc_recd_basis_cd
183     ,p_gd_svc_recd_basis_dt           => p_gd_svc_recd_basis_dt
184     ,p_gd_svc_recd_basis_mo           => p_gd_svc_recd_basis_mo
185     );
186   --
187   begin
188     --
189     -- Start of API User Hook for the after hook of create_Plan_goods_services
190     --
191     ben_Plan_goods_services_bk1.create_Plan_goods_services_a
192       (
193        p_pl_gd_or_svc_id                =>  l_pl_gd_or_svc_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_id                          =>  p_pl_id
198       ,p_gd_or_svc_typ_id               =>  p_gd_or_svc_typ_id
199       ,p_alw_rcrrg_clms_flag            =>  p_alw_rcrrg_clms_flag
200       ,p_gd_or_svc_usg_cd               =>  p_gd_or_svc_usg_cd
201       ,p_vgs_attribute_category         =>  p_vgs_attribute_category
202       ,p_vgs_attribute1                 =>  p_vgs_attribute1
203       ,p_vgs_attribute2                 =>  p_vgs_attribute2
204       ,p_vgs_attribute3                 =>  p_vgs_attribute3
205       ,p_vgs_attribute4                 =>  p_vgs_attribute4
206       ,p_vgs_attribute5                 =>  p_vgs_attribute5
207       ,p_vgs_attribute6                 =>  p_vgs_attribute6
208       ,p_vgs_attribute7                 =>  p_vgs_attribute7
209       ,p_vgs_attribute8                 =>  p_vgs_attribute8
210       ,p_vgs_attribute9                 =>  p_vgs_attribute9
211       ,p_vgs_attribute10                =>  p_vgs_attribute10
212       ,p_vgs_attribute11                =>  p_vgs_attribute11
213       ,p_vgs_attribute12                =>  p_vgs_attribute12
214       ,p_vgs_attribute13                =>  p_vgs_attribute13
215       ,p_vgs_attribute14                =>  p_vgs_attribute14
216       ,p_vgs_attribute15                =>  p_vgs_attribute15
217       ,p_vgs_attribute16                =>  p_vgs_attribute16
218       ,p_vgs_attribute17                =>  p_vgs_attribute17
219       ,p_vgs_attribute18                =>  p_vgs_attribute18
220       ,p_vgs_attribute19                =>  p_vgs_attribute19
221       ,p_vgs_attribute20                =>  p_vgs_attribute20
222       ,p_vgs_attribute21                =>  p_vgs_attribute21
223       ,p_vgs_attribute22                =>  p_vgs_attribute22
224       ,p_vgs_attribute23                =>  p_vgs_attribute23
225       ,p_vgs_attribute24                =>  p_vgs_attribute24
226       ,p_vgs_attribute25                =>  p_vgs_attribute25
227       ,p_vgs_attribute26                =>  p_vgs_attribute26
228       ,p_vgs_attribute27                =>  p_vgs_attribute27
229       ,p_vgs_attribute28                =>  p_vgs_attribute28
230       ,p_vgs_attribute29                =>  p_vgs_attribute29
231       ,p_vgs_attribute30                =>  p_vgs_attribute30
232       ,p_object_version_number          =>  l_object_version_number
233       ,p_effective_date                 => trunc(p_effective_date)
234       ,p_gd_svc_recd_basis_cd           => p_gd_svc_recd_basis_cd
235       ,p_gd_svc_recd_basis_dt           => p_gd_svc_recd_basis_dt
236       ,p_gd_svc_recd_basis_mo           => p_gd_svc_recd_basis_mo
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_services'
242         ,p_hook_type   => 'AP'
243         );
244     --
245     -- End of API User Hook for the after hook of create_Plan_goods_services
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_or_svc_id := l_pl_gd_or_svc_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_services;
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_or_svc_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_services;
290     -- NOCOPY Changes
291     p_pl_gd_or_svc_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, 90);
296     raise;
297     --
298 end create_Plan_goods_services;
299 -- ----------------------------------------------------------------------------
300 -- |------------------------< update_Plan_goods_services >--- ------------------|
301 -- ----------------------------------------------------------------------------
302 --
303 procedure update_Plan_goods_services
304   (p_validate                       in  boolean   default false
305   ,p_pl_gd_or_svc_id                in  number
306   ,p_effective_start_date           out nocopy date
307   ,p_effective_end_date             out nocopy date
308   ,p_business_group_id              in  number    default hr_api.g_number
309   ,p_pl_id                          in  number    default hr_api.g_number
310   ,p_gd_or_svc_typ_id               in  number    default hr_api.g_number
311   ,p_alw_rcrrg_clms_flag            in  varchar2  default hr_api.g_varchar2
312   ,p_gd_or_svc_usg_cd               in  varchar2  default hr_api.g_varchar2
313   ,p_vgs_attribute_category         in  varchar2  default hr_api.g_varchar2
314   ,p_vgs_attribute1                 in  varchar2  default hr_api.g_varchar2
315   ,p_vgs_attribute2                 in  varchar2  default hr_api.g_varchar2
316   ,p_vgs_attribute3                 in  varchar2  default hr_api.g_varchar2
317   ,p_vgs_attribute4                 in  varchar2  default hr_api.g_varchar2
318   ,p_vgs_attribute5                 in  varchar2  default hr_api.g_varchar2
319   ,p_vgs_attribute6                 in  varchar2  default hr_api.g_varchar2
320   ,p_vgs_attribute7                 in  varchar2  default hr_api.g_varchar2
321   ,p_vgs_attribute8                 in  varchar2  default hr_api.g_varchar2
322   ,p_vgs_attribute9                 in  varchar2  default hr_api.g_varchar2
326   ,p_vgs_attribute13                in  varchar2  default hr_api.g_varchar2
323   ,p_vgs_attribute10                in  varchar2  default hr_api.g_varchar2
324   ,p_vgs_attribute11                in  varchar2  default hr_api.g_varchar2
325   ,p_vgs_attribute12                in  varchar2  default hr_api.g_varchar2
327   ,p_vgs_attribute14                in  varchar2  default hr_api.g_varchar2
328   ,p_vgs_attribute15                in  varchar2  default hr_api.g_varchar2
329   ,p_vgs_attribute16                in  varchar2  default hr_api.g_varchar2
330   ,p_vgs_attribute17                in  varchar2  default hr_api.g_varchar2
331   ,p_vgs_attribute18                in  varchar2  default hr_api.g_varchar2
332   ,p_vgs_attribute19                in  varchar2  default hr_api.g_varchar2
333   ,p_vgs_attribute20                in  varchar2  default hr_api.g_varchar2
334   ,p_vgs_attribute21                in  varchar2  default hr_api.g_varchar2
335   ,p_vgs_attribute22                in  varchar2  default hr_api.g_varchar2
336   ,p_vgs_attribute23                in  varchar2  default hr_api.g_varchar2
337   ,p_vgs_attribute24                in  varchar2  default hr_api.g_varchar2
338   ,p_vgs_attribute25                in  varchar2  default hr_api.g_varchar2
339   ,p_vgs_attribute26                in  varchar2  default hr_api.g_varchar2
340   ,p_vgs_attribute27                in  varchar2  default hr_api.g_varchar2
341   ,p_vgs_attribute28                in  varchar2  default hr_api.g_varchar2
342   ,p_vgs_attribute29                in  varchar2  default hr_api.g_varchar2
343   ,p_vgs_attribute30                in  varchar2  default hr_api.g_varchar2
344   ,p_object_version_number          in out nocopy number
345   ,p_effective_date                 in  date
346   ,p_datetrack_mode                 in  varchar2
347   ,p_gd_svc_recd_basis_cd           in  varchar2  default hr_api.g_varchar2
348   ,p_gd_svc_recd_basis_dt           in  date      default hr_api.g_date
349   ,p_gd_svc_recd_basis_mo           in  number    default hr_api.g_number
350   ) is
351   --
352   -- Declare cursors and local variables
353   --
354   l_proc varchar2(72) := g_package||'update_Plan_goods_services';
355   l_object_version_number ben_pl_gd_or_svc_f.object_version_number%TYPE;
356   l_effective_start_date ben_pl_gd_or_svc_f.effective_start_date%TYPE;
357   l_effective_end_date ben_pl_gd_or_svc_f.effective_end_date%TYPE;
358   --
359 begin
360   --
361   hr_utility.set_location('Entering:'|| l_proc, 10);
362   --
363   -- Issue a savepoint if operating in validation only mode
364   --
365   savepoint update_Plan_goods_services;
366   --
367   hr_utility.set_location(l_proc, 20);
368   --
369   -- Process Logic
370   --
371   l_object_version_number := p_object_version_number;
372   --
373   begin
374     --
375     -- Start of API User Hook for the before hook of update_Plan_goods_services
376     --
377     ben_Plan_goods_services_bk2.update_Plan_goods_services_b
378       (
379        p_pl_gd_or_svc_id                =>  p_pl_gd_or_svc_id
380       ,p_business_group_id              =>  p_business_group_id
381       ,p_pl_id                          =>  p_pl_id
382       ,p_gd_or_svc_typ_id               =>  p_gd_or_svc_typ_id
383       ,p_alw_rcrrg_clms_flag            =>  p_alw_rcrrg_clms_flag
384       ,p_gd_or_svc_usg_cd               =>  p_gd_or_svc_usg_cd
385       ,p_vgs_attribute_category         =>  p_vgs_attribute_category
386       ,p_vgs_attribute1                 =>  p_vgs_attribute1
387       ,p_vgs_attribute2                 =>  p_vgs_attribute2
388       ,p_vgs_attribute3                 =>  p_vgs_attribute3
389       ,p_vgs_attribute4                 =>  p_vgs_attribute4
390       ,p_vgs_attribute5                 =>  p_vgs_attribute5
391       ,p_vgs_attribute6                 =>  p_vgs_attribute6
392       ,p_vgs_attribute7                 =>  p_vgs_attribute7
393       ,p_vgs_attribute8                 =>  p_vgs_attribute8
394       ,p_vgs_attribute9                 =>  p_vgs_attribute9
395       ,p_vgs_attribute10                =>  p_vgs_attribute10
396       ,p_vgs_attribute11                =>  p_vgs_attribute11
397       ,p_vgs_attribute12                =>  p_vgs_attribute12
398       ,p_vgs_attribute13                =>  p_vgs_attribute13
399       ,p_vgs_attribute14                =>  p_vgs_attribute14
400       ,p_vgs_attribute15                =>  p_vgs_attribute15
401       ,p_vgs_attribute16                =>  p_vgs_attribute16
402       ,p_vgs_attribute17                =>  p_vgs_attribute17
403       ,p_vgs_attribute18                =>  p_vgs_attribute18
404       ,p_vgs_attribute19                =>  p_vgs_attribute19
405       ,p_vgs_attribute20                =>  p_vgs_attribute20
406       ,p_vgs_attribute21                =>  p_vgs_attribute21
407       ,p_vgs_attribute22                =>  p_vgs_attribute22
408       ,p_vgs_attribute23                =>  p_vgs_attribute23
409       ,p_vgs_attribute24                =>  p_vgs_attribute24
410       ,p_vgs_attribute25                =>  p_vgs_attribute25
411       ,p_vgs_attribute26                =>  p_vgs_attribute26
412       ,p_vgs_attribute27                =>  p_vgs_attribute27
413       ,p_vgs_attribute28                =>  p_vgs_attribute28
414       ,p_vgs_attribute29                =>  p_vgs_attribute29
415       ,p_vgs_attribute30                =>  p_vgs_attribute30
416       ,p_object_version_number          =>  p_object_version_number
417       ,p_effective_date                 => trunc(p_effective_date)
418       ,p_datetrack_mode                 => p_datetrack_mode
419       ,p_gd_svc_recd_basis_cd           => p_gd_svc_recd_basis_cd
420       ,p_gd_svc_recd_basis_dt           => p_gd_svc_recd_basis_dt
421       ,p_gd_svc_recd_basis_mo           => p_gd_svc_recd_basis_mo
422 
423       );
424   exception
428         ,p_hook_type   => 'BP'
425     when hr_api.cannot_find_prog_unit then
426       hr_api.cannot_find_prog_unit_error
427         (p_module_name => 'UPDATE_Plan_goods_services'
429         );
430     --
431     -- End of API User Hook for the before hook of update_Plan_goods_services
432     --
433   end;
434   --
435   ben_vgs_upd.upd
436     (
437      p_pl_gd_or_svc_id               => p_pl_gd_or_svc_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_id                         => p_pl_id
442     ,p_gd_or_svc_typ_id              => p_gd_or_svc_typ_id
443     ,p_alw_rcrrg_clms_flag           => p_alw_rcrrg_clms_flag
444     ,p_gd_or_svc_usg_cd              => p_gd_or_svc_usg_cd
445     ,p_vgs_attribute_category        => p_vgs_attribute_category
446     ,p_vgs_attribute1                => p_vgs_attribute1
447     ,p_vgs_attribute2                => p_vgs_attribute2
448     ,p_vgs_attribute3                => p_vgs_attribute3
449     ,p_vgs_attribute4                => p_vgs_attribute4
450     ,p_vgs_attribute5                => p_vgs_attribute5
451     ,p_vgs_attribute6                => p_vgs_attribute6
452     ,p_vgs_attribute7                => p_vgs_attribute7
453     ,p_vgs_attribute8                => p_vgs_attribute8
454     ,p_vgs_attribute9                => p_vgs_attribute9
455     ,p_vgs_attribute10               => p_vgs_attribute10
456     ,p_vgs_attribute11               => p_vgs_attribute11
457     ,p_vgs_attribute12               => p_vgs_attribute12
458     ,p_vgs_attribute13               => p_vgs_attribute13
459     ,p_vgs_attribute14               => p_vgs_attribute14
460     ,p_vgs_attribute15               => p_vgs_attribute15
461     ,p_vgs_attribute16               => p_vgs_attribute16
462     ,p_vgs_attribute17               => p_vgs_attribute17
463     ,p_vgs_attribute18               => p_vgs_attribute18
464     ,p_vgs_attribute19               => p_vgs_attribute19
465     ,p_vgs_attribute20               => p_vgs_attribute20
466     ,p_vgs_attribute21               => p_vgs_attribute21
467     ,p_vgs_attribute22               => p_vgs_attribute22
468     ,p_vgs_attribute23               => p_vgs_attribute23
469     ,p_vgs_attribute24               => p_vgs_attribute24
470     ,p_vgs_attribute25               => p_vgs_attribute25
471     ,p_vgs_attribute26               => p_vgs_attribute26
472     ,p_vgs_attribute27               => p_vgs_attribute27
473     ,p_vgs_attribute28               => p_vgs_attribute28
474     ,p_vgs_attribute29               => p_vgs_attribute29
475     ,p_vgs_attribute30               => p_vgs_attribute30
476     ,p_object_version_number         => l_object_version_number
477     ,p_effective_date                => trunc(p_effective_date)
478     ,p_datetrack_mode                => p_datetrack_mode
479     ,p_gd_svc_recd_basis_cd           => p_gd_svc_recd_basis_cd
480     ,p_gd_svc_recd_basis_dt           => p_gd_svc_recd_basis_dt
481     ,p_gd_svc_recd_basis_mo           => p_gd_svc_recd_basis_mo
482     );
483   --
484   begin
485     --
486     -- Start of API User Hook for the after hook of update_Plan_goods_services
487     --
488     ben_Plan_goods_services_bk2.update_Plan_goods_services_a
489       (
490        p_pl_gd_or_svc_id                =>  p_pl_gd_or_svc_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_id                          =>  p_pl_id
495       ,p_gd_or_svc_typ_id               =>  p_gd_or_svc_typ_id
496       ,p_alw_rcrrg_clms_flag            =>  p_alw_rcrrg_clms_flag
497       ,p_gd_or_svc_usg_cd               =>  p_gd_or_svc_usg_cd
498       ,p_vgs_attribute_category         =>  p_vgs_attribute_category
499       ,p_vgs_attribute1                 =>  p_vgs_attribute1
500       ,p_vgs_attribute2                 =>  p_vgs_attribute2
501       ,p_vgs_attribute3                 =>  p_vgs_attribute3
502       ,p_vgs_attribute4                 =>  p_vgs_attribute4
503       ,p_vgs_attribute5                 =>  p_vgs_attribute5
504       ,p_vgs_attribute6                 =>  p_vgs_attribute6
505       ,p_vgs_attribute7                 =>  p_vgs_attribute7
506       ,p_vgs_attribute8                 =>  p_vgs_attribute8
507       ,p_vgs_attribute9                 =>  p_vgs_attribute9
508       ,p_vgs_attribute10                =>  p_vgs_attribute10
509       ,p_vgs_attribute11                =>  p_vgs_attribute11
510       ,p_vgs_attribute12                =>  p_vgs_attribute12
511       ,p_vgs_attribute13                =>  p_vgs_attribute13
512       ,p_vgs_attribute14                =>  p_vgs_attribute14
513       ,p_vgs_attribute15                =>  p_vgs_attribute15
514       ,p_vgs_attribute16                =>  p_vgs_attribute16
515       ,p_vgs_attribute17                =>  p_vgs_attribute17
516       ,p_vgs_attribute18                =>  p_vgs_attribute18
517       ,p_vgs_attribute19                =>  p_vgs_attribute19
518       ,p_vgs_attribute20                =>  p_vgs_attribute20
519       ,p_vgs_attribute21                =>  p_vgs_attribute21
520       ,p_vgs_attribute22                =>  p_vgs_attribute22
521       ,p_vgs_attribute23                =>  p_vgs_attribute23
522       ,p_vgs_attribute24                =>  p_vgs_attribute24
523       ,p_vgs_attribute25                =>  p_vgs_attribute25
524       ,p_vgs_attribute26                =>  p_vgs_attribute26
528       ,p_vgs_attribute30                =>  p_vgs_attribute30
525       ,p_vgs_attribute27                =>  p_vgs_attribute27
526       ,p_vgs_attribute28                =>  p_vgs_attribute28
527       ,p_vgs_attribute29                =>  p_vgs_attribute29
529       ,p_object_version_number          =>  l_object_version_number
530       ,p_effective_date                     => trunc(p_effective_date)
531       ,p_datetrack_mode                     => p_datetrack_mode
532       ,p_gd_svc_recd_basis_cd           => p_gd_svc_recd_basis_cd
533       ,p_gd_svc_recd_basis_dt           => p_gd_svc_recd_basis_dt
534       ,p_gd_svc_recd_basis_mo           => p_gd_svc_recd_basis_mo
535 
536       );
537   exception
538     when hr_api.cannot_find_prog_unit then
539       hr_api.cannot_find_prog_unit_error
540         (p_module_name => 'UPDATE_Plan_goods_services'
541         ,p_hook_type   => 'AP'
542         );
543     --
544     -- End of API User Hook for the after hook of update_Plan_goods_services
545     --
546   end;
547   --
548   hr_utility.set_location(l_proc, 60);
549   --
550   -- When in validation only mode raise the Validate_Enabled exception
551   --
552   if p_validate then
553     raise hr_api.validate_enabled;
554   end if;
555   --
556   -- Set all output arguments
557   --
558   p_object_version_number := l_object_version_number;
559   p_effective_start_date := l_effective_start_date;
560   p_effective_end_date := l_effective_end_date;
561   --
562   hr_utility.set_location(' Leaving:'||l_proc, 70);
563   --
564 exception
565   --
566   when hr_api.validate_enabled then
567     --
568     -- As the Validate_Enabled exception has been raised
569     -- we must rollback to the savepoint
570     --
571     ROLLBACK TO update_Plan_goods_services;
572     --
573     -- Only set output warning arguments
574     -- (Any key or derived arguments must be set to null
575     -- when validation only mode is being used.)
576     --
577     hr_utility.set_location(' Leaving:'||l_proc, 80);
578     --
579   when others then
580     --
581     -- A validation or unexpected error has occured
582     --
583     ROLLBACK TO update_Plan_goods_services;
584     -- NOCOPY Changes
585     p_effective_start_date := null;
586     p_effective_end_date := null;
587     p_object_version_number := l_object_version_number ;
588     hr_utility.set_location(' Leaving:'||l_proc, 90);
589     raise;
590     --
591 end update_Plan_goods_services;
592 -- ----------------------------------------------------------------------------
593 -- |------------------------< delete_Plan_goods_services >----------------------|
594 -- ----------------------------------------------------------------------------
595 --
596 procedure delete_Plan_goods_services
597   (p_validate                       in  boolean  default false
598   ,p_pl_gd_or_svc_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_services';
609   l_object_version_number ben_pl_gd_or_svc_f.object_version_number%TYPE;
610   l_effective_start_date ben_pl_gd_or_svc_f.effective_start_date%TYPE;
611   l_effective_end_date ben_pl_gd_or_svc_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_services;
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_services
631     --
632     ben_Plan_goods_services_bk3.delete_Plan_goods_services_b
633       (
634        p_pl_gd_or_svc_id                =>  p_pl_gd_or_svc_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_services'
643         ,p_hook_type   => 'BP'
644         );
645     --
646     -- End of API User Hook for the before hook of delete_Plan_goods_services
647     --
648   end;
649   --
650   ben_vgs_del.del
651     (
652      p_pl_gd_or_svc_id               => p_pl_gd_or_svc_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_services
663     --
667       ,p_effective_start_date           =>  l_effective_start_date
664     ben_Plan_goods_services_bk3.delete_Plan_goods_services_a
665       (
666        p_pl_gd_or_svc_id                =>  p_pl_gd_or_svc_id
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_services'
677         ,p_hook_type   => 'AP'
678         );
679     --
680     -- End of API User Hook for the after hook of delete_Plan_goods_services
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_services;
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_services;
715     -- NOCOPY Changes
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, 90);
720     raise;
721     --
722 end delete_Plan_goods_services;
723 --
724 -- ----------------------------------------------------------------------------
725 -- |-------------------------------< lck >------------------------------------|
726 -- ----------------------------------------------------------------------------
727 --
728 procedure lck
729   (
730    p_pl_gd_or_svc_id                   in     number
731   ,p_object_version_number          in     number
732   ,p_effective_date                 in     date
733   ,p_datetrack_mode                 in     varchar2
734   ,p_validation_start_date          out nocopy    date
735   ,p_validation_end_date            out nocopy    date
736   ) is
737   --
738   --
739   -- Declare cursors and local variables
740   --
741   l_proc varchar2(72) := g_package||'lck';
742   l_validation_start_date date;
743   l_validation_end_date date;
744   --
745 begin
746   --
747   hr_utility.set_location('Entering:'|| l_proc, 10);
748   --
749   ben_vgs_shd.lck
750     (
751       p_pl_gd_or_svc_id                 => p_pl_gd_or_svc_id
752      ,p_validation_start_date      => l_validation_start_date
753      ,p_validation_end_date        => l_validation_end_date
754      ,p_object_version_number      => p_object_version_number
755      ,p_effective_date             => p_effective_date
756      ,p_datetrack_mode             => p_datetrack_mode
757     );
758   --
759   hr_utility.set_location(' Leaving:'||l_proc, 70);
760   --
761 end lck;
762 --
763 end ben_Plan_goods_services_api;