DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_USER_COLUMN_SWI

Source


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