1 Package Body pqh_de_result_sets_swi As
2 /* $Header: pqrssswi.pkb 115.2 2002/12/03 20:43:24 rpasapul noship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'pqh_de_result_sets_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< delete_result_sets >--------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE delete_result_sets
12 (p_validate in number default hr_api.g_false_num
13 ,p_result_set_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
24 l_proc varchar2(72) := g_package ||'delete_result_sets';
25 Begin
26 hr_utility.set_location(' Entering:' || l_proc,10);
27 --
28 -- Issue a savepoint
29 --
30 savepoint delete_result_sets_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_result_sets_api.delete_result_sets
51 (p_validate => l_validate
52 ,p_result_set_id => p_result_set_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_result_sets_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_result_sets_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_result_sets;
102 -- ----------------------------------------------------------------------------
103 -- |--------------------------< insert_result_sets >--------------------------|
104 -- ----------------------------------------------------------------------------
105 PROCEDURE insert_result_sets
106 (p_validate in number default hr_api.g_false_num
107 ,p_effective_date in date
108 ,p_gradual_value_number_from in number
109 ,p_gradual_value_number_to in number
110 ,p_grade_id in number
111 ,p_result_set_id out nocopy number
112 ,p_object_version_number out nocopy number
113 ,p_return_status out nocopy varchar2
114 ) is
115 --
116 -- Variables for API Boolean parameters
117 l_validate boolean;
118 --
119 -- Variables for IN/OUT parameters
120 --
121 -- Other variables
122 l_proc varchar2(72) := g_package ||'insert_result_sets';
123 Begin
124 hr_utility.set_location(' Entering:' || l_proc,10);
125 --
126 -- Issue a savepoint
127 --
128 savepoint insert_result_sets_swi;
129 --
130 -- Initialise Multiple Message Detection
131 --
132 hr_multi_message.enable_message_list;
133 --
134 -- Remember IN OUT parameter IN values
135 --
136 --
137 -- Convert constant values to their corresponding boolean value
138 --
139 l_validate :=
140 hr_api.constant_to_boolean
141 (p_constant_value => p_validate);
142 --
143 -- Register Surrogate ID or user key values
144 --
145 --
146 -- Call API
147 --
151 ,p_gradual_value_number_from => p_gradual_value_number_from
148 pqh_de_result_sets_api.insert_result_sets
149 (p_validate => l_validate
150 ,p_effective_date => p_effective_date
152 ,p_gradual_value_number_to => p_gradual_value_number_to
153 ,p_grade_id => p_grade_id
154 ,p_result_set_id => p_result_set_id
155 ,p_object_version_number => p_object_version_number
156 );
157 --
158 -- Convert API warning boolean parameter values to specific
159 -- messages and add them to Multiple Message List
160 --
161 --
162 -- Convert API non-warning boolean parameter values
163 --
164 --
165 -- Derive the API return status value based on whether
166 -- messages of any type exist in the Multiple Message List.
167 -- Also disable Multiple Message Detection.
168 --
169 p_return_status := hr_multi_message.get_return_status_disable;
170 hr_utility.set_location(' Leaving:' || l_proc,20);
171 --
172 exception
173 when hr_multi_message.error_message_exist then
174 --
175 -- Catch the Multiple Message List exception which
176 -- indicates API processing has been aborted because
177 -- at least one message exists in the list.
178 --
179 rollback to insert_result_sets_swi;
180 --
181 -- Reset IN OUT parameters and set OUT parameters
182 --
183 p_result_set_id := null;
184 p_object_version_number := null;
185 p_return_status := hr_multi_message.get_return_status_disable;
186 hr_utility.set_location(' Leaving:' || l_proc, 30);
187 when others then
188 --
189 -- When Multiple Message Detection is enabled catch
190 -- any Application specific or other unexpected
191 -- exceptions. Adding appropriate details to the
192 -- Multiple Message List. Otherwise re-raise the
193 -- error.
194 --
195 rollback to insert_result_sets_swi;
196 if hr_multi_message.unexpected_error_add(l_proc) then
197 hr_utility.set_location(' Leaving:' || l_proc,40);
198 raise;
199 end if;
200 --
201 -- Reset IN OUT and set OUT parameters
202 --
203 p_result_set_id := null;
204 p_object_version_number := null;
205 p_return_status := hr_multi_message.get_return_status_disable;
206 hr_utility.set_location(' Leaving:' || l_proc,50);
207 end insert_result_sets;
208 -- ----------------------------------------------------------------------------
209 -- |--------------------------< update_result_sets >--------------------------|
210 -- ----------------------------------------------------------------------------
211 PROCEDURE update_result_sets
212 (p_validate in number default hr_api.g_false_num
213 ,p_effective_date in date
214 ,p_result_set_id in number
215 ,p_object_version_number in out nocopy number
216 ,p_gradual_value_number_from in number default hr_api.g_number
217 ,p_gradual_value_number_to in number default hr_api.g_number
218 ,p_grade_id in number default hr_api.g_number
219 ,p_return_status out nocopy varchar2
220 ) is
221 --
222 -- Variables for API Boolean parameters
223 l_validate boolean;
224 --
225 -- Variables for IN/OUT parameters
226 l_object_version_number number;
227 --
228 -- Other variables
229 l_proc varchar2(72) := g_package ||'update_result_sets';
230 Begin
231 hr_utility.set_location(' Entering:' || l_proc,10);
232 --
233 -- Issue a savepoint
234 --
235 savepoint update_result_sets_swi;
236 --
237 -- Initialise Multiple Message Detection
238 --
239 hr_multi_message.enable_message_list;
240 --
241 -- Remember IN OUT parameter IN values
242 --
243 l_object_version_number := p_object_version_number;
244 --
245 -- Convert constant values to their corresponding boolean value
246 --
247 l_validate :=
248 hr_api.constant_to_boolean
249 (p_constant_value => p_validate);
250 --
251 -- Register Surrogate ID or user key values
252 --
253 --
254 -- Call API
255 --
256 pqh_de_result_sets_api.update_result_sets
257 (p_validate => l_validate
258 ,p_effective_date => p_effective_date
259 ,p_result_set_id => p_result_set_id
260 ,p_object_version_number => p_object_version_number
261 ,p_gradual_value_number_from => p_gradual_value_number_from
262 ,p_gradual_value_number_to => p_gradual_value_number_to
263 ,p_grade_id => p_grade_id
264 );
265 --
266 -- Convert API warning boolean parameter values to specific
267 -- messages and add them to Multiple Message List
268 --
269 --
270 -- Convert API non-warning boolean parameter values
271 --
272 --
273 -- Derive the API return status value based on whether
274 -- messages of any type exist in the Multiple Message List.
275 -- Also disable Multiple Message Detection.
276 --
277 p_return_status := hr_multi_message.get_return_status_disable;
278 hr_utility.set_location(' Leaving:' || l_proc,20);
279 --
280 exception
281 when hr_multi_message.error_message_exist then
282 --
283 -- Catch the Multiple Message List exception which
284 -- indicates API processing has been aborted because
285 -- at least one message exists in the list.
286 --
287 rollback to update_result_sets_swi;
288 --
289 -- Reset IN OUT parameters and set OUT parameters
290 --
291 p_object_version_number := l_object_version_number;
292 p_return_status := hr_multi_message.get_return_status_disable;
293 hr_utility.set_location(' Leaving:' || l_proc, 30);
294 when others then
295 --
296 -- When Multiple Message Detection is enabled catch
297 -- any Application specific or other unexpected
298 -- exceptions. Adding appropriate details to the
299 -- Multiple Message List. Otherwise re-raise the
300 -- error.
301 --
302 rollback to update_result_sets_swi;
303 if hr_multi_message.unexpected_error_add(l_proc) then
304 hr_utility.set_location(' Leaving:' || l_proc,40);
305 raise;
306 end if;
307 --
308 -- Reset IN OUT and set OUT parameters
309 --
310 p_object_version_number := l_object_version_number;
311 p_return_status := hr_multi_message.get_return_status_disable;
312 hr_utility.set_location(' Leaving:' || l_proc,50);
313 end update_result_sets;
314 end pqh_de_result_sets_swi;