DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_POPL_ORG_API

Source


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