DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_JOB_GROUP_SWI

Source


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