DBA Data[Home] [Help]

PACKAGE BODY: APPS.PQH_CRITERIA_RATE_DEFN_API

Source


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