DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_EXT_RCD_API

Source


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