DBA Data[Home] [Help]

PACKAGE BODY: APPS.PQH_DE_VLDVER_SWI

Source


1 Package Body pqh_de_vldver_swi As
2 /* $Header: pqverswi.pkb 115.1 2002/12/05 00:30:48 rpasapul noship $ */
3 --
4 -- Package variables
5 --
6 g_package  varchar2(33) := 'pqh_de_vldver_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |---------------------------< delete_vldtn_vern >--------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE delete_vldtn_vern
12   (p_validate                     in     number    default hr_api.g_false_num
13   ,p_wrkplc_vldtn_ver_id          in     number
14   ,p_object_version_number        in     number
15   ,p_return_status                   out nocopy varchar2
16   ) is
17   --
18   -- Variables for API Boolean parameters
19   l_validate                      boolean;
20   --
21   -- Variables for IN/OUT parameters
22   --
23   -- Other variables
27   --
24   l_proc    varchar2(72) := g_package ||'delete_vldtn_vern';
25 Begin
26   hr_utility.set_location(' Entering:' || l_proc,10);
28   -- Issue a savepoint
29   --
30   savepoint delete_vldtn_vern_swi;
31   --
32   -- Initialise Multiple Message Detection
33   --
34   hr_multi_message.enable_message_list;
35   --
36   -- Remember IN OUT parameter IN values
37   --
38   --
39   -- Convert constant values to their corresponding boolean value
40   --
41   l_validate :=
42     hr_api.constant_to_boolean
43       (p_constant_value => p_validate);
44   --
45   -- Register Surrogate ID or user key values
46   --
47   --
48   -- Call API
49   --
50   pqh_de_vldver_api.delete_vldtn_vern
51     (p_validate                     => l_validate
52     ,p_wrkplc_vldtn_ver_id          => p_wrkplc_vldtn_ver_id
53     ,p_object_version_number        => p_object_version_number
54     );
55   --
56   -- Convert API warning boolean parameter values to specific
57   -- messages and add them to Multiple Message List
58   --
59   --
60   -- Convert API non-warning boolean parameter values
61   --
62   --
63   -- Derive the API return status value based on whether
64   -- messages of any type exist in the Multiple Message List.
65   -- Also disable Multiple Message Detection.
66   --
67   p_return_status := hr_multi_message.get_return_status_disable;
68   hr_utility.set_location(' Leaving:' || l_proc,20);
69   --
70 exception
71   when hr_multi_message.error_message_exist then
72     --
73     -- Catch the Multiple Message List exception which
74     -- indicates API processing has been aborted because
75     -- at least one message exists in the list.
76     --
77     rollback to delete_vldtn_vern_swi;
78     --
79     -- Reset IN OUT parameters and set OUT parameters
80     --
81     p_return_status := hr_multi_message.get_return_status_disable;
82     hr_utility.set_location(' Leaving:' || l_proc, 30);
83   when others then
84     --
85     -- When Multiple Message Detection is enabled catch
86     -- any Application specific or other unexpected
87     -- exceptions.  Adding appropriate details to the
88     -- Multiple Message List.  Otherwise re-raise the
89     -- error.
90     --
91     rollback to delete_vldtn_vern_swi;
92     if hr_multi_message.unexpected_error_add(l_proc) then
93        hr_utility.set_location(' Leaving:' || l_proc,40);
94        raise;
95     end if;
96     --
97     -- Reset IN OUT and set OUT parameters
98     --
99     p_return_status := hr_multi_message.get_return_status_disable;
100     hr_utility.set_location(' Leaving:' || l_proc,50);
101 end delete_vldtn_vern;
102 -- ----------------------------------------------------------------------------
103 -- |---------------------------< insert_vldtn_vern >--------------------------|
104 -- ----------------------------------------------------------------------------
105 PROCEDURE insert_vldtn_vern
106   (p_validate                     in     number    default hr_api.g_false_num
107   ,p_effective_date               in     date
108   ,p_business_group_id            in     number
109   ,p_wrkplc_vldtn_id              in     number
110   ,p_version_number               in     number    default NULL
111   ,p_remuneration_job_description in     varchar2  default NULL
112   ,p_tariff_contract_code         in     varchar2
113   ,p_tariff_group_code            in     varchar2
114   ,p_job_group_id                 in     number    default NULL
115   ,p_remuneration_job_id          in     number    default NULL
116   ,p_derived_grade_id             in     number    default NULL
117   ,p_derived_case_group_id        in     number    default NULL
118   ,p_derived_subcasgrp_id         in     number    default NULL
119   ,p_user_enterable_grade_id      in     number    default NULL
120   ,p_user_enterable_case_group_id in     number    default NULL
121   ,p_user_enterable_subcasgrp_id  in     number    default NULL
122   ,p_freeze                       in     varchar2  default NULL
123   ,p_wrkplc_vldtn_ver_id             out nocopy number
124   ,p_object_version_number           out nocopy number
125   ,p_return_status                   out nocopy varchar2
126   ) is
127   --
128   -- Variables for API Boolean parameters
129   l_validate                      boolean;
130   --
131   -- Variables for IN/OUT parameters
132   --
133   -- Other variables
134   l_proc    varchar2(72) := g_package ||'insert_vldtn_vern';
135 Begin
136   hr_utility.set_location(' Entering:' || l_proc,10);
137   --
138   -- Issue a savepoint
139   --
140   savepoint insert_vldtn_vern_swi;
141   --
142   -- Initialise Multiple Message Detection
143   --
144   hr_multi_message.enable_message_list;
145   --
146   -- Remember IN OUT parameter IN values
147   --
148   --
149   -- Convert constant values to their corresponding boolean value
150   --
151   l_validate :=
152     hr_api.constant_to_boolean
153       (p_constant_value => p_validate);
154   --
155   -- Register Surrogate ID or user key values
156   --
157   pqh_ver_ins.set_base_key_value
158     (p_wrkplc_vldtn_ver_id => p_wrkplc_vldtn_ver_id
159     );
160   --
161   -- Call API
162   --
163   pqh_de_vldver_api.insert_vldtn_vern
164     (p_validate                     => l_validate
165     ,p_effective_date               => p_effective_date
166     ,p_business_group_id            => p_business_group_id
167     ,p_wrkplc_vldtn_id              => p_wrkplc_vldtn_id
168     ,p_version_number               => p_version_number
169     ,p_remuneration_job_description => p_remuneration_job_description
170     ,p_tariff_contract_code         => p_tariff_contract_code
171     ,p_tariff_group_code            => p_tariff_group_code
172     ,p_job_group_id                 => p_job_group_id
173     ,p_remuneration_job_id          => p_remuneration_job_id
174     ,p_derived_grade_id             => p_derived_grade_id
175     ,p_derived_case_group_id        => p_derived_case_group_id
176     ,p_derived_subcasgrp_id         => p_derived_subcasgrp_id
177     ,p_user_enterable_grade_id      => p_user_enterable_grade_id
178     ,p_user_enterable_case_group_id => p_user_enterable_case_group_id
179     ,p_user_enterable_subcasgrp_id  => p_user_enterable_subcasgrp_id
180     ,p_freeze                       => p_freeze
181     ,p_wrkplc_vldtn_ver_id          => p_wrkplc_vldtn_ver_id
182     ,p_object_version_number        => p_object_version_number
183     );
184   --
185   -- Convert API warning boolean parameter values to specific
186   -- messages and add them to Multiple Message List
187   --
188   --
189   -- Convert API non-warning boolean parameter values
190   --
191   --
192   -- Derive the API return status value based on whether
193   -- messages of any type exist in the Multiple Message List.
194   -- Also disable Multiple Message Detection.
195   --
196   p_return_status := hr_multi_message.get_return_status_disable;
197   hr_utility.set_location(' Leaving:' || l_proc,20);
198   --
199 exception
200   when hr_multi_message.error_message_exist then
201     --
202     -- Catch the Multiple Message List exception which
203     -- indicates API processing has been aborted because
204     -- at least one message exists in the list.
205     --
206     rollback to insert_vldtn_vern_swi;
207     --
208     -- Reset IN OUT parameters and set OUT parameters
209     --
210     p_wrkplc_vldtn_ver_id          := null;
211     p_object_version_number        := null;
212     p_return_status := hr_multi_message.get_return_status_disable;
213     hr_utility.set_location(' Leaving:' || l_proc, 30);
214   when others then
215     --
216     -- When Multiple Message Detection is enabled catch
217     -- any Application specific or other unexpected
218     -- exceptions.  Adding appropriate details to the
219     -- Multiple Message List.  Otherwise re-raise the
220     -- error.
221     --
222     rollback to insert_vldtn_vern_swi;
223     if hr_multi_message.unexpected_error_add(l_proc) then
224        hr_utility.set_location(' Leaving:' || l_proc,40);
225        raise;
226     end if;
227     --
228     -- Reset IN OUT and set OUT parameters
229     --
230     p_wrkplc_vldtn_ver_id          := null;
231     p_object_version_number        := null;
232     p_return_status := hr_multi_message.get_return_status_disable;
233     hr_utility.set_location(' Leaving:' || l_proc,50);
234 end insert_vldtn_vern;
235 -- ----------------------------------------------------------------------------
236 -- |---------------------------< update_vldtn_vern >--------------------------|
237 -- ----------------------------------------------------------------------------
238 PROCEDURE update_vldtn_vern
239   (p_validate                     in     number    default hr_api.g_false_num
240   ,p_effective_date               in     date
241   ,p_business_group_id            in     number
242   ,p_wrkplc_vldtn_id              in     number    default hr_api.g_number
243   ,p_version_number               in     number    default hr_api.g_number
244   ,p_remuneration_job_description in     varchar2  default hr_api.g_varchar2
245   ,p_tariff_contract_code         in     varchar2  default hr_api.g_varchar2
246   ,p_tariff_group_code            in     varchar2  default hr_api.g_varchar2
247   ,p_job_group_id                 in     number    default hr_api.g_number
248   ,p_remuneration_job_id          in     number    default hr_api.g_number
249   ,p_derived_grade_id             in     number    default hr_api.g_number
250   ,p_derived_case_group_id        in     number    default hr_api.g_number
251   ,p_derived_subcasgrp_id         in     number    default hr_api.g_number
252   ,p_user_enterable_grade_id      in     number    default hr_api.g_number
253   ,p_user_enterable_case_group_id in     number    default hr_api.g_number
254   ,p_user_enterable_subcasgrp_id  in     number    default hr_api.g_number
255   ,p_freeze                       in     varchar2  default hr_api.g_varchar2
256   ,p_wrkplc_vldtn_ver_id          in     number
257   ,p_object_version_number        in out nocopy number
258   ,p_return_status                   out nocopy varchar2
259   ) is
260   --
261   -- Variables for API Boolean parameters
262   l_validate                      boolean;
263   --
264   -- Variables for IN/OUT parameters
265   l_object_version_number         number;
266   --
267   -- Other variables
268   l_proc    varchar2(72) := g_package ||'update_vldtn_vern';
269 Begin
270   hr_utility.set_location(' Entering:' || l_proc,10);
271   --
272   -- Issue a savepoint
273   --
274   savepoint update_vldtn_vern_swi;
275   --
276   -- Initialise Multiple Message Detection
277   --
278   hr_multi_message.enable_message_list;
279   --
280   -- Remember IN OUT parameter IN values
281   --
282   l_object_version_number         := p_object_version_number;
283   --
284   -- Convert constant values to their corresponding boolean value
285   --
286   l_validate :=
287     hr_api.constant_to_boolean
288       (p_constant_value => p_validate);
289   --
290   -- Register Surrogate ID or user key values
291   --
292   --
293   -- Call API
294   --
295   pqh_de_vldver_api.update_vldtn_vern
296     (p_validate                     => l_validate
297     ,p_effective_date               => p_effective_date
298     ,p_business_group_id            => p_business_group_id
299     ,p_wrkplc_vldtn_id              => p_wrkplc_vldtn_id
300     ,p_version_number               => p_version_number
301     ,p_remuneration_job_description => p_remuneration_job_description
302     ,p_tariff_contract_code         => p_tariff_contract_code
303     ,p_tariff_group_code            => p_tariff_group_code
304     ,p_job_group_id                 => p_job_group_id
305     ,p_remuneration_job_id          => p_remuneration_job_id
306     ,p_derived_grade_id             => p_derived_grade_id
307     ,p_derived_case_group_id        => p_derived_case_group_id
308     ,p_derived_subcasgrp_id         => p_derived_subcasgrp_id
309     ,p_user_enterable_grade_id      => p_user_enterable_grade_id
310     ,p_user_enterable_case_group_id => p_user_enterable_case_group_id
311     ,p_user_enterable_subcasgrp_id  => p_user_enterable_subcasgrp_id
312     ,p_freeze                       => p_freeze
313     ,p_wrkplc_vldtn_ver_id          => p_wrkplc_vldtn_ver_id
314     ,p_object_version_number        => p_object_version_number
315     );
316   --
317   -- Convert API warning boolean parameter values to specific
318   -- messages and add them to Multiple Message List
319   --
320   --
321   -- Convert API non-warning boolean parameter values
322   --
323   --
324   -- Derive the API return status value based on whether
325   -- messages of any type exist in the Multiple Message List.
326   -- Also disable Multiple Message Detection.
327   --
328   p_return_status := hr_multi_message.get_return_status_disable;
329   hr_utility.set_location(' Leaving:' || l_proc,20);
330   --
331 exception
332   when hr_multi_message.error_message_exist then
333     --
334     -- Catch the Multiple Message List exception which
335     -- indicates API processing has been aborted because
336     -- at least one message exists in the list.
337     --
338     rollback to update_vldtn_vern_swi;
339     --
340     -- Reset IN OUT parameters and set OUT parameters
341     --
342     p_object_version_number        := l_object_version_number;
343     p_return_status := hr_multi_message.get_return_status_disable;
344     hr_utility.set_location(' Leaving:' || l_proc, 30);
345   when others then
346     --
347     -- When Multiple Message Detection is enabled catch
348     -- any Application specific or other unexpected
349     -- exceptions.  Adding appropriate details to the
350     -- Multiple Message List.  Otherwise re-raise the
351     -- error.
352     --
353     rollback to update_vldtn_vern_swi;
354     if hr_multi_message.unexpected_error_add(l_proc) then
355        hr_utility.set_location(' Leaving:' || l_proc,40);
356        raise;
357     end if;
358     --
359     -- Reset IN OUT and set OUT parameters
360     --
361     p_object_version_number        := l_object_version_number;
362     p_return_status := hr_multi_message.get_return_status_disable;
363     hr_utility.set_location(' Leaving:' || l_proc,50);
364 end update_vldtn_vern;
365 end pqh_de_vldver_swi;