[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;