[Home] [Help]
PACKAGE BODY: APPS.HR_APPLICATION_SWI
Source
1 Package Body hr_application_swi As
2 /* $Header: hraplswi.pkb 115.2 2002/12/03 06:13:31 hjonnala ship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'hr_application_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< update_apl_details >--------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE update_apl_details
12 (p_validate in number default hr_api.g_false_num
13 ,p_application_id in number
14 ,p_object_version_number in out nocopy number
15 ,p_effective_date in date
16 ,p_comments in varchar2 default hr_api.g_varchar2
17 ,p_current_employer in varchar2 default hr_api.g_varchar2
18 ,p_projected_hire_date in date default hr_api.g_date
19 ,p_termination_reason in varchar2 default hr_api.g_varchar2
20 ,p_appl_attribute_category in varchar2 default hr_api.g_varchar2
21 ,p_appl_attribute1 in varchar2 default hr_api.g_varchar2
22 ,p_appl_attribute2 in varchar2 default hr_api.g_varchar2
23 ,p_appl_attribute3 in varchar2 default hr_api.g_varchar2
24 ,p_appl_attribute4 in varchar2 default hr_api.g_varchar2
25 ,p_appl_attribute5 in varchar2 default hr_api.g_varchar2
26 ,p_appl_attribute6 in varchar2 default hr_api.g_varchar2
27 ,p_appl_attribute7 in varchar2 default hr_api.g_varchar2
28 ,p_appl_attribute8 in varchar2 default hr_api.g_varchar2
29 ,p_appl_attribute9 in varchar2 default hr_api.g_varchar2
30 ,p_appl_attribute10 in varchar2 default hr_api.g_varchar2
31 ,p_appl_attribute11 in varchar2 default hr_api.g_varchar2
32 ,p_appl_attribute12 in varchar2 default hr_api.g_varchar2
33 ,p_appl_attribute13 in varchar2 default hr_api.g_varchar2
34 ,p_appl_attribute14 in varchar2 default hr_api.g_varchar2
35 ,p_appl_attribute15 in varchar2 default hr_api.g_varchar2
36 ,p_appl_attribute16 in varchar2 default hr_api.g_varchar2
37 ,p_appl_attribute17 in varchar2 default hr_api.g_varchar2
38 ,p_appl_attribute18 in varchar2 default hr_api.g_varchar2
39 ,p_appl_attribute19 in varchar2 default hr_api.g_varchar2
40 ,p_appl_attribute20 in varchar2 default hr_api.g_varchar2
41 ,p_return_status out nocopy varchar2
42 ) is
43 --
44 -- Variables for API Boolean parameters
45 l_validate boolean;
46 --
47 -- Variables for IN/OUT parameters
48 l_object_version_number number;
49 --
50 -- Other variables
51 l_proc varchar2(72) := g_package ||'update_apl_details';
52 Begin
53 hr_utility.set_location(' Entering:' || l_proc,10);
54 --
55 -- Issue a savepoint
56 --
57 savepoint update_apl_details_swi;
58 --
59 -- Initialise Multiple Message Detection
60 --
61 hr_multi_message.enable_message_list;
62 --
63 -- Remember IN OUT parameter IN values
64 --
65 l_object_version_number := p_object_version_number;
66 --
67 -- Convert constant values to their corresponding boolean value
68 --
69 l_validate :=
70 hr_api.constant_to_boolean
71 (p_constant_value => p_validate);
72 --
73 -- Register Surrogate ID or user key values
74 --
75 --
76 -- Call API
77 --
78 hr_application_api.update_apl_details
79 (p_validate => l_validate
80 ,p_application_id => p_application_id
81 ,p_object_version_number => p_object_version_number
82 ,p_effective_date => p_effective_date
83 ,p_comments => p_comments
84 ,p_current_employer => p_current_employer
85 ,p_projected_hire_date => p_projected_hire_date
86 ,p_termination_reason => p_termination_reason
87 ,p_appl_attribute_category => p_appl_attribute_category
88 ,p_appl_attribute1 => p_appl_attribute1
89 ,p_appl_attribute2 => p_appl_attribute2
90 ,p_appl_attribute3 => p_appl_attribute3
91 ,p_appl_attribute4 => p_appl_attribute4
92 ,p_appl_attribute5 => p_appl_attribute5
93 ,p_appl_attribute6 => p_appl_attribute6
94 ,p_appl_attribute7 => p_appl_attribute7
95 ,p_appl_attribute8 => p_appl_attribute8
96 ,p_appl_attribute9 => p_appl_attribute9
97 ,p_appl_attribute10 => p_appl_attribute10
98 ,p_appl_attribute11 => p_appl_attribute11
99 ,p_appl_attribute12 => p_appl_attribute12
100 ,p_appl_attribute13 => p_appl_attribute13
101 ,p_appl_attribute14 => p_appl_attribute14
102 ,p_appl_attribute15 => p_appl_attribute15
103 ,p_appl_attribute16 => p_appl_attribute16
104 ,p_appl_attribute17 => p_appl_attribute17
105 ,p_appl_attribute18 => p_appl_attribute18
106 ,p_appl_attribute19 => p_appl_attribute19
107 ,p_appl_attribute20 => p_appl_attribute20
108 );
109 --
110 -- Convert API warning boolean parameter values to specific
111 -- messages and add them to Multiple Message List
112 --
113 --
114 -- Convert API non-warning boolean parameter values
115 --
116 --
117 -- Derive the API return status value based on whether
118 -- messages of any type exist in the Multiple Message List.
119 -- Also disable Multiple Message Detection.
120 --
121 p_return_status := hr_multi_message.get_return_status_disable;
122 hr_utility.set_location(' Leaving:' || l_proc,20);
123 --
124 exception
125 when hr_multi_message.error_message_exist then
126 --
127 -- Catch the Multiple Message List exception which
128 -- indicates API processing has been aborted because
129 -- at least one error message exists in the list.
130 --
131 rollback to update_apl_details_swi;
132 --
133 -- Reset IN OUT paramters and set OUT parameters
134 --
135 p_object_version_number := l_object_version_number;
136 p_return_status := hr_multi_message.get_return_status_disable;
137 hr_utility.set_location(' Leaving:' || l_proc,30);
138 when others then
139 --
140 -- When Multiple Message Detection is enabled catch
141 -- any Application specific or other unexpected
142 -- exceptions. Adding appropriate details to the
143 -- Multiple Message List. Otherwise re-raise
144 -- the error.
145 --
146 rollback to update_apl_details_swi;
147 if hr_multi_message.unexpected_error_add(l_proc) then
148 hr_utility.set_location(' Leaving:' || l_proc, 40);
149 raise;
150 end if;
151 --
152 -- Reset IN OUT parameters and set OUT parameters
153 --
154 p_object_version_number := l_object_version_number;
155 p_return_status := hr_multi_message.get_return_status_disable;
156 hr_utility.set_location(' Leaving: ' || l_proc, 50);
157 end update_apl_details;
158 end hr_application_swi;