[Home] [Help]
PACKAGE BODY: APPS.HR_PHONE_SWI
Source
1 Package Body hr_phone_swi As
2 /* $Header: hrphnswi.pkb 115.3 2002/12/04 07:29:26 hjonnala ship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'hr_phone_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_or_update_phone >------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_or_update_phone
12 (p_update_mode in varchar2 default null
13 ,p_phone_id in out nocopy number
14 ,p_object_version_number in out nocopy number
15 ,p_date_from in date default null
16 ,p_date_to in date default null
17 ,p_phone_type in varchar2 default null
18 ,p_phone_number in varchar2 default null
19 ,p_parent_id in number default null
20 ,p_parent_table in varchar2 default null
21 ,p_attribute_category in varchar2 default null
22 ,p_attribute1 in varchar2 default null
23 ,p_attribute2 in varchar2 default null
24 ,p_attribute3 in varchar2 default null
25 ,p_attribute4 in varchar2 default null
26 ,p_attribute5 in varchar2 default null
27 ,p_attribute6 in varchar2 default null
28 ,p_attribute7 in varchar2 default null
29 ,p_attribute8 in varchar2 default null
30 ,p_attribute9 in varchar2 default null
31 ,p_attribute10 in varchar2 default null
32 ,p_attribute11 in varchar2 default null
33 ,p_attribute12 in varchar2 default null
34 ,p_attribute13 in varchar2 default null
35 ,p_attribute14 in varchar2 default null
36 ,p_attribute15 in varchar2 default null
37 ,p_attribute16 in varchar2 default null
38 ,p_attribute17 in varchar2 default null
39 ,p_attribute18 in varchar2 default null
40 ,p_attribute19 in varchar2 default null
41 ,p_attribute20 in varchar2 default null
42 ,p_attribute21 in varchar2 default null
43 ,p_attribute22 in varchar2 default null
44 ,p_attribute23 in varchar2 default null
45 ,p_attribute24 in varchar2 default null
46 ,p_attribute25 in varchar2 default null
47 ,p_attribute26 in varchar2 default null
48 ,p_attribute27 in varchar2 default null
49 ,p_attribute28 in varchar2 default null
50 ,p_attribute29 in varchar2 default null
51 ,p_attribute30 in varchar2 default null
52 ,p_validate in number default hr_api.g_false_num
53 ,p_effective_date in date
54 ,p_party_id in number default null
55 ,p_validity in varchar2 default null
56 ,p_return_status out nocopy varchar2
57 ) is
58 --
59 -- Variables for API Boolean parameters
60 l_validate boolean;
61 --
62 -- Variables for IN/OUT parameters
63 l_phone_id number;
64 l_object_version_number number;
65 --
66 -- Other variables
67 l_proc varchar2(72) := g_package ||'create_or_update_phone';
68 Begin
69 hr_utility.set_location(' Entering:' || l_proc,10);
70 --
71 -- Issue a savepoint
72 --
73 savepoint create_or_update_phone_swi;
74 --
75 -- Initialise Multiple Message Detection
76 --
77 hr_multi_message.enable_message_list;
78 --
79 -- Remember IN OUT parameter IN values
80 --
81 l_phone_id := p_phone_id;
82 l_object_version_number := p_object_version_number;
83 --
84 -- Convert constant values to their corresponding boolean value
85 --
86 l_validate :=
87 hr_api.constant_to_boolean
88 (p_constant_value => p_validate);
89 --
90 -- Register Surrogate ID or user key values
91 --
92 --
93 -- Call API
94 --
95 hr_phone_api.create_or_update_phone
96 (p_update_mode => p_update_mode
97 ,p_phone_id => l_phone_id
98 ,p_object_version_number => p_object_version_number
99 ,p_date_from => p_date_from
100 ,p_date_to => p_date_to
101 ,p_phone_type => p_phone_type
102 ,p_phone_number => p_phone_number
103 ,p_parent_id => p_parent_id
104 ,p_parent_table => p_parent_table
105 ,p_attribute_category => p_attribute_category
106 ,p_attribute1 => p_attribute1
107 ,p_attribute2 => p_attribute2
108 ,p_attribute3 => p_attribute3
109 ,p_attribute4 => p_attribute4
110 ,p_attribute5 => p_attribute5
111 ,p_attribute6 => p_attribute6
112 ,p_attribute7 => p_attribute7
113 ,p_attribute8 => p_attribute8
114 ,p_attribute9 => p_attribute9
115 ,p_attribute10 => p_attribute10
116 ,p_attribute11 => p_attribute11
117 ,p_attribute12 => p_attribute12
118 ,p_attribute13 => p_attribute13
119 ,p_attribute14 => p_attribute14
120 ,p_attribute15 => p_attribute15
121 ,p_attribute16 => p_attribute16
122 ,p_attribute17 => p_attribute17
123 ,p_attribute18 => p_attribute18
124 ,p_attribute19 => p_attribute19
125 ,p_attribute20 => p_attribute20
126 ,p_attribute21 => p_attribute21
127 ,p_attribute22 => p_attribute22
128 ,p_attribute23 => p_attribute23
129 ,p_attribute24 => p_attribute24
130 ,p_attribute25 => p_attribute25
131 ,p_attribute26 => p_attribute26
132 ,p_attribute27 => p_attribute27
133 ,p_attribute28 => p_attribute28
134 ,p_attribute29 => p_attribute29
135 ,p_attribute30 => p_attribute30
136 ,p_validate => l_validate
137 ,p_effective_date => p_effective_date
138 ,p_party_id => p_party_id
139 ,p_validity => p_validity
140 );
141 --
142 -- Convert API warning boolean parameter values to specific
143 -- messages and add them to Multiple Message List
144 --
145 --
146 -- Convert API non-warning boolean parameter values
147 --
148 --
149 -- Derive the API return status value based on whether
150 -- messages of any type exist in the Multiple Message List.
151 -- Also disable Multiple Message Detection.
152 --
153 p_return_status := hr_multi_message.get_return_status_disable;
154 hr_utility.set_location(' Leaving:' || l_proc,20);
155 --
156 exception
157 when hr_multi_message.error_message_exist then
158 --
159 -- Catch the Multiple Message List exception which
160 -- indicates API processing has been aborted because
161 -- at least one error message exists in the list.
162 --
163 rollback to create_or_update_phone_swi;
164 --
165 -- Reset IN OUT paramters and set OUT parameters
166 --
167 p_phone_id := l_phone_id;
168 p_object_version_number := l_object_version_number;
169 p_return_status := hr_multi_message.get_return_status_disable;
170 hr_utility.set_location(' Leaving:' || l_proc,30);
171 when others then
172 --
173 -- When Multiple Message Detection is enabled catch
174 -- any Application specific or other unexpected
175 -- exceptions. Adding appropriate details to the
176 -- Multiple Message List. Otherwise re-raise
177 -- the error.
178 --
179 rollback to create_or_update_phone_swi;
180 if hr_multi_message.unexpected_error_add(l_proc) then
181 hr_utility.set_location(' Leaving:' || l_proc, 40);
182 raise;
183 end if;
184 --
185 -- Reset IN OUT parameters and set OUT parameters
186 --
187 p_phone_id := l_phone_id;
188 p_object_version_number := l_object_version_number;
189 p_return_status := hr_multi_message.get_return_status_disable;
190 hr_utility.set_location(' Leaving: ' || l_proc, 50);
191 end create_or_update_phone;
192 -- ----------------------------------------------------------------------------
193 -- |-----------------------------< create_phone >-----------------------------|
194 -- ----------------------------------------------------------------------------
195 PROCEDURE create_phone
196 (p_date_from in date
197 ,p_date_to in date default null
198 ,p_phone_type in varchar2
199 ,p_phone_number in varchar2
200 ,p_parent_id in number default null
201 ,p_parent_table in varchar2 default null
202 ,p_attribute_category in varchar2 default null
203 ,p_attribute1 in varchar2 default null
204 ,p_attribute2 in varchar2 default null
205 ,p_attribute3 in varchar2 default null
206 ,p_attribute4 in varchar2 default null
207 ,p_attribute5 in varchar2 default null
208 ,p_attribute6 in varchar2 default null
209 ,p_attribute7 in varchar2 default null
210 ,p_attribute8 in varchar2 default null
211 ,p_attribute9 in varchar2 default null
212 ,p_attribute10 in varchar2 default null
213 ,p_attribute11 in varchar2 default null
214 ,p_attribute12 in varchar2 default null
215 ,p_attribute13 in varchar2 default null
216 ,p_attribute14 in varchar2 default null
217 ,p_attribute15 in varchar2 default null
218 ,p_attribute16 in varchar2 default null
219 ,p_attribute17 in varchar2 default null
220 ,p_attribute18 in varchar2 default null
221 ,p_attribute19 in varchar2 default null
222 ,p_attribute20 in varchar2 default null
223 ,p_attribute21 in varchar2 default null
224 ,p_attribute22 in varchar2 default null
225 ,p_attribute23 in varchar2 default null
226 ,p_attribute24 in varchar2 default null
227 ,p_attribute25 in varchar2 default null
228 ,p_attribute26 in varchar2 default null
229 ,p_attribute27 in varchar2 default null
230 ,p_attribute28 in varchar2 default null
231 ,p_attribute29 in varchar2 default null
232 ,p_attribute30 in varchar2 default null
233 ,p_validate in number default hr_api.g_false_num
234 ,p_effective_date in date
235 ,p_party_id in number default null
236 ,p_validity in varchar2 default null
237 ,p_object_version_number out nocopy number
238 ,p_phone_id in number
239 ,p_return_status out nocopy varchar2
240 ) is
241 --
242 -- Variables for API Boolean parameters
243 l_validate boolean;
244 --
245 -- Variables for IN/OUT parameters
246 --
247 -- Other variables
248 l_phone_id number;
249 l_proc varchar2(72) := g_package ||'create_phone';
250 Begin
251 hr_utility.set_location(' Entering:' || l_proc,10);
252 --
253 -- Issue a savepoint
254 --
255 savepoint create_phone_swi;
256 --
257 -- Initialise Multiple Message Detection
258 --
259 hr_multi_message.enable_message_list;
260 --
261 -- Remember IN OUT parameter IN values
262 --
263 --
264 -- Convert constant values to their corresponding boolean value
265 --
266 l_validate :=
267 hr_api.constant_to_boolean
268 (p_constant_value => p_validate);
269 --
270 -- Register Surrogate ID or user key values
271 --
272 per_phn_ins.set_base_key_value
273 (p_phone_id => p_phone_id
274 );
275 --
276 -- Call API
277 --
278 hr_phone_api.create_phone
279 (p_date_from => p_date_from
280 ,p_date_to => p_date_to
281 ,p_phone_type => p_phone_type
282 ,p_phone_number => p_phone_number
283 ,p_parent_id => p_parent_id
284 ,p_parent_table => p_parent_table
285 ,p_attribute_category => p_attribute_category
286 ,p_attribute1 => p_attribute1
287 ,p_attribute2 => p_attribute2
288 ,p_attribute3 => p_attribute3
289 ,p_attribute4 => p_attribute4
290 ,p_attribute5 => p_attribute5
291 ,p_attribute6 => p_attribute6
292 ,p_attribute7 => p_attribute7
293 ,p_attribute8 => p_attribute8
294 ,p_attribute9 => p_attribute9
295 ,p_attribute10 => p_attribute10
296 ,p_attribute11 => p_attribute11
297 ,p_attribute12 => p_attribute12
298 ,p_attribute13 => p_attribute13
299 ,p_attribute14 => p_attribute14
300 ,p_attribute15 => p_attribute15
301 ,p_attribute16 => p_attribute16
302 ,p_attribute17 => p_attribute17
303 ,p_attribute18 => p_attribute18
304 ,p_attribute19 => p_attribute19
305 ,p_attribute20 => p_attribute20
306 ,p_attribute21 => p_attribute21
307 ,p_attribute22 => p_attribute22
308 ,p_attribute23 => p_attribute23
309 ,p_attribute24 => p_attribute24
310 ,p_attribute25 => p_attribute25
311 ,p_attribute26 => p_attribute26
312 ,p_attribute27 => p_attribute27
313 ,p_attribute28 => p_attribute28
314 ,p_attribute29 => p_attribute29
315 ,p_attribute30 => p_attribute30
316 ,p_validate => l_validate
317 ,p_effective_date => p_effective_date
318 ,p_party_id => p_party_id
319 ,p_validity => p_validity
320 ,p_object_version_number => p_object_version_number
321 ,p_phone_id => l_phone_id
322 );
323 --
324 -- Convert API warning boolean parameter values to specific
325 -- messages and add them to Multiple Message List
326 --
327 --
328 -- Convert API non-warning boolean parameter values
329 --
330 --
331 -- Derive the API return status value based on whether
332 -- messages of any type exist in the Multiple Message List.
333 -- Also disable Multiple Message Detection.
334 --
335 p_return_status := hr_multi_message.get_return_status_disable;
336 hr_utility.set_location(' Leaving:' || l_proc,20);
337 --
338 exception
339 when hr_multi_message.error_message_exist then
340 --
341 -- Catch the Multiple Message List exception which
342 -- indicates API processing has been aborted because
343 -- at least one error message exists in the list.
344 --
345 rollback to create_phone_swi;
346 --
347 -- Reset IN OUT paramters and set OUT parameters
348 --
349 p_object_version_number := null;
350 p_return_status := hr_multi_message.get_return_status_disable;
351 hr_utility.set_location(' Leaving:' || l_proc,30);
352 when others then
353 --
354 -- When Multiple Message Detection is enabled catch
355 -- any Application specific or other unexpected
356 -- exceptions. Adding appropriate details to the
357 -- Multiple Message List. Otherwise re-raise
358 -- the error.
359 --
360 rollback to create_phone_swi;
361 if hr_multi_message.unexpected_error_add(l_proc) then
362 hr_utility.set_location(' Leaving:' || l_proc, 40);
363 raise;
364 end if;
365 --
366 -- Reset IN OUT parameters and set OUT parameters
367 --
368 p_object_version_number := null;
369 p_return_status := hr_multi_message.get_return_status_disable;
370 hr_utility.set_location(' Leaving: ' || l_proc, 50);
371 end create_phone;
372 -- ----------------------------------------------------------------------------
373 -- |-----------------------------< delete_phone >-----------------------------|
374 -- ----------------------------------------------------------------------------
375 PROCEDURE delete_phone
376 (p_validate in number default hr_api.g_false_num
377 ,p_phone_id in number
378 ,p_object_version_number in number
379 ,p_return_status out nocopy varchar2
380 ) is
381 --
382 -- Variables for API Boolean parameters
383 l_validate boolean;
384 --
385 -- Variables for IN/OUT parameters
386 --
387 -- Other variables
388 l_proc varchar2(72) := g_package ||'delete_phone';
389 Begin
390 hr_utility.set_location(' Entering:' || l_proc,10);
391 --
392 -- Issue a savepoint
393 --
394 savepoint delete_phone_swi;
395 --
396 -- Initialise Multiple Message Detection
397 --
398 hr_multi_message.enable_message_list;
399 --
400 -- Remember IN OUT parameter IN values
401 --
402 --
403 -- Convert constant values to their corresponding boolean value
404 --
405 l_validate :=
406 hr_api.constant_to_boolean
407 (p_constant_value => p_validate);
408 --
409 -- Register Surrogate ID or user key values
410 --
411 --
412 -- Call API
413 --
414 hr_phone_api.delete_phone
415 (p_validate => l_validate
416 ,p_phone_id => p_phone_id
417 ,p_object_version_number => p_object_version_number
418 );
419 --
420 -- Convert API warning boolean parameter values to specific
421 -- messages and add them to Multiple Message List
422 --
423 --
424 -- Convert API non-warning boolean parameter values
425 --
426 --
427 -- Derive the API return status value based on whether
428 -- messages of any type exist in the Multiple Message List.
429 -- Also disable Multiple Message Detection.
430 --
431 p_return_status := hr_multi_message.get_return_status_disable;
432 hr_utility.set_location(' Leaving:' || l_proc,20);
433 --
434 exception
435 when hr_multi_message.error_message_exist then
436 --
437 -- Catch the Multiple Message List exception which
438 -- indicates API processing has been aborted because
439 -- at least one error message exists in the list.
440 --
441 rollback to delete_phone_swi;
442 --
443 -- Reset IN OUT paramters and set OUT parameters
444 --
445 p_return_status := hr_multi_message.get_return_status_disable;
446 hr_utility.set_location(' Leaving:' || l_proc,30);
447 when others then
448 --
449 -- When Multiple Message Detection is enabled catch
450 -- any Application specific or other unexpected
451 -- exceptions. Adding appropriate details to the
452 -- Multiple Message List. Otherwise re-raise
453 -- the error.
454 --
455 rollback to delete_phone_swi;
456 if hr_multi_message.unexpected_error_add(l_proc) then
457 hr_utility.set_location(' Leaving:' || l_proc, 40);
458 raise;
459 end if;
460 --
461 -- Reset IN OUT parameters and set OUT parameters
462 --
463 p_return_status := hr_multi_message.get_return_status_disable;
464 hr_utility.set_location(' Leaving: ' || l_proc, 50);
465 end delete_phone;
466 -- ----------------------------------------------------------------------------
467 -- |-----------------------------< update_phone >-----------------------------|
468 -- ----------------------------------------------------------------------------
469 PROCEDURE update_phone
470 (p_phone_id in number
471 ,p_date_from in date default hr_api.g_date
472 ,p_date_to in date default hr_api.g_date
473 ,p_phone_type in varchar2 default hr_api.g_varchar2
474 ,p_phone_number in varchar2 default hr_api.g_varchar2
475 ,p_attribute_category in varchar2 default hr_api.g_varchar2
476 ,p_attribute1 in varchar2 default hr_api.g_varchar2
477 ,p_attribute2 in varchar2 default hr_api.g_varchar2
478 ,p_attribute3 in varchar2 default hr_api.g_varchar2
479 ,p_attribute4 in varchar2 default hr_api.g_varchar2
480 ,p_attribute5 in varchar2 default hr_api.g_varchar2
481 ,p_attribute6 in varchar2 default hr_api.g_varchar2
482 ,p_attribute7 in varchar2 default hr_api.g_varchar2
483 ,p_attribute8 in varchar2 default hr_api.g_varchar2
484 ,p_attribute9 in varchar2 default hr_api.g_varchar2
485 ,p_attribute10 in varchar2 default hr_api.g_varchar2
486 ,p_attribute11 in varchar2 default hr_api.g_varchar2
487 ,p_attribute12 in varchar2 default hr_api.g_varchar2
488 ,p_attribute13 in varchar2 default hr_api.g_varchar2
489 ,p_attribute14 in varchar2 default hr_api.g_varchar2
490 ,p_attribute15 in varchar2 default hr_api.g_varchar2
491 ,p_attribute16 in varchar2 default hr_api.g_varchar2
492 ,p_attribute17 in varchar2 default hr_api.g_varchar2
493 ,p_attribute18 in varchar2 default hr_api.g_varchar2
494 ,p_attribute19 in varchar2 default hr_api.g_varchar2
495 ,p_attribute20 in varchar2 default hr_api.g_varchar2
496 ,p_attribute21 in varchar2 default hr_api.g_varchar2
497 ,p_attribute22 in varchar2 default hr_api.g_varchar2
498 ,p_attribute23 in varchar2 default hr_api.g_varchar2
499 ,p_attribute24 in varchar2 default hr_api.g_varchar2
500 ,p_attribute25 in varchar2 default hr_api.g_varchar2
501 ,p_attribute26 in varchar2 default hr_api.g_varchar2
502 ,p_attribute27 in varchar2 default hr_api.g_varchar2
503 ,p_attribute28 in varchar2 default hr_api.g_varchar2
504 ,p_attribute29 in varchar2 default hr_api.g_varchar2
505 ,p_attribute30 in varchar2 default hr_api.g_varchar2
506 ,p_object_version_number in out nocopy number
507 ,p_validate in number default hr_api.g_false_num
508 ,p_effective_date in date
509 ,p_party_id in number default hr_api.g_number
510 ,p_validity in varchar2 default hr_api.g_varchar2
511 ,p_return_status out nocopy varchar2
512 ) is
513 --
514 -- Variables for API Boolean parameters
515 l_validate boolean;
516 --
517 -- Variables for IN/OUT parameters
518 l_object_version_number number;
519 --
520 -- Other variables
521 l_proc varchar2(72) := g_package ||'update_phone';
522 Begin
523 hr_utility.set_location(' Entering:' || l_proc,10);
524 --
525 -- Issue a savepoint
526 --
527 savepoint update_phone_swi;
528 --
529 -- Initialise Multiple Message Detection
530 --
531 hr_multi_message.enable_message_list;
532 --
533 -- Remember IN OUT parameter IN values
534 --
535 l_object_version_number := p_object_version_number;
536 --
537 -- Convert constant values to their corresponding boolean value
538 --
539 l_validate :=
540 hr_api.constant_to_boolean
541 (p_constant_value => p_validate);
542 --
543 -- Register Surrogate ID or user key values
544 --
545 --
546 -- Call API
547 --
548 hr_phone_api.update_phone
549 (p_phone_id => p_phone_id
550 ,p_date_from => p_date_from
551 ,p_date_to => p_date_to
552 ,p_phone_type => p_phone_type
553 ,p_phone_number => p_phone_number
554 ,p_attribute_category => p_attribute_category
555 ,p_attribute1 => p_attribute1
556 ,p_attribute2 => p_attribute2
557 ,p_attribute3 => p_attribute3
558 ,p_attribute4 => p_attribute4
559 ,p_attribute5 => p_attribute5
560 ,p_attribute6 => p_attribute6
561 ,p_attribute7 => p_attribute7
562 ,p_attribute8 => p_attribute8
563 ,p_attribute9 => p_attribute9
564 ,p_attribute10 => p_attribute10
565 ,p_attribute11 => p_attribute11
566 ,p_attribute12 => p_attribute12
567 ,p_attribute13 => p_attribute13
568 ,p_attribute14 => p_attribute14
569 ,p_attribute15 => p_attribute15
570 ,p_attribute16 => p_attribute16
571 ,p_attribute17 => p_attribute17
572 ,p_attribute18 => p_attribute18
573 ,p_attribute19 => p_attribute19
574 ,p_attribute20 => p_attribute20
575 ,p_attribute21 => p_attribute21
576 ,p_attribute22 => p_attribute22
577 ,p_attribute23 => p_attribute23
578 ,p_attribute24 => p_attribute24
579 ,p_attribute25 => p_attribute25
580 ,p_attribute26 => p_attribute26
581 ,p_attribute27 => p_attribute27
582 ,p_attribute28 => p_attribute28
583 ,p_attribute29 => p_attribute29
584 ,p_attribute30 => p_attribute30
585 ,p_object_version_number => p_object_version_number
586 ,p_validate => l_validate
587 ,p_effective_date => p_effective_date
588 ,p_party_id => p_party_id
589 ,p_validity => p_validity
590 );
591 --
592 -- Convert API warning boolean parameter values to specific
593 -- messages and add them to Multiple Message List
594 --
595 --
596 -- Convert API non-warning boolean parameter values
597 --
598 --
599 -- Derive the API return status value based on whether
600 -- messages of any type exist in the Multiple Message List.
601 -- Also disable Multiple Message Detection.
602 --
603 p_return_status := hr_multi_message.get_return_status_disable;
604 hr_utility.set_location(' Leaving:' || l_proc,20);
605 --
606 exception
607 when hr_multi_message.error_message_exist then
608 --
609 -- Catch the Multiple Message List exception which
610 -- indicates API processing has been aborted because
611 -- at least one error message exists in the list.
612 --
613 rollback to update_phone_swi;
614 --
615 -- Reset IN OUT paramters and set OUT parameters
616 --
617 p_object_version_number := l_object_version_number;
618 p_return_status := hr_multi_message.get_return_status_disable;
619 hr_utility.set_location(' Leaving:' || l_proc,30);
620 when others then
621 --
622 -- When Multiple Message Detection is enabled catch
623 -- any Application specific or other unexpected
624 -- exceptions. Adding appropriate details to the
625 -- Multiple Message List. Otherwise re-raise
626 -- the error.
627 --
628 rollback to update_phone_swi;
629 if hr_multi_message.unexpected_error_add(l_proc) then
630 hr_utility.set_location(' Leaving:' || l_proc, 40);
631 raise;
632 end if;
633 --
634 -- Reset IN OUT parameters and set OUT parameters
635 --
636 p_object_version_number := l_object_version_number;
637 p_return_status := hr_multi_message.get_return_status_disable;
638 hr_utility.set_location(' Leaving: ' || l_proc, 50);
639 end update_phone;
640 end hr_phone_swi;