DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PERSON_TYPE_RATE_API

Source


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