DBA Data[Home] [Help]

PACKAGE BODY: APPS.PSP_PERIOD_FREQUENCY_SWI

Source


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