[Home] [Help]
PACKAGE BODY: APPS.HR_PL_PERSONAL_PAY_METHOD_API
Source
1 Package Body hr_pl_personal_pay_method_api as
2 /* $Header: pyppmpli.pkb 120.0.12010000.2 2009/12/18 10:48:00 bkeshary ship $ */
3 --
4 -- Package Variables
5 --
6
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-------------------------< create_pl_personal_pay_method >---------------------------|
10 -- ----------------------------------------------------------------------------
11
12 procedure create_pl_personal_pay_method
13 (p_validate in boolean default false
14 ,p_effective_date in date
15 ,p_assignment_id in number
16 ,p_run_type_id in number default null
17 ,p_org_payment_method_id in number
18 ,p_amount in number default null
19 ,p_percentage in number default null
20 ,p_priority in number default null
21 ,p_comments in varchar2 default null
22 ,p_attribute_category in varchar2 default null
23 ,p_attribute1 in varchar2 default null
24 ,p_attribute2 in varchar2 default null
25 ,p_attribute3 in varchar2 default null
26 ,p_attribute4 in varchar2 default null
27 ,p_attribute5 in varchar2 default null
28 ,p_attribute6 in varchar2 default null
29 ,p_attribute7 in varchar2 default null
30 ,p_attribute8 in varchar2 default null
31 ,p_attribute9 in varchar2 default null
32 ,p_attribute10 in varchar2 default null
33 ,p_attribute11 in varchar2 default null
34 ,p_attribute12 in varchar2 default null
35 ,p_attribute13 in varchar2 default null
36 ,p_attribute14 in varchar2 default null
37 ,p_attribute15 in varchar2 default null
38 ,p_attribute16 in varchar2 default null
39 ,p_attribute17 in varchar2 default null
40 ,p_attribute18 in varchar2 default null
41 ,p_attribute19 in varchar2 default null
42 ,p_attribute20 in varchar2 default null
43 ,p_territory_code in varchar2 default null
44 ,p_account_check_digit in varchar2
45 ,p_bank_id in varchar2
46 ,p_account_number in varchar2 default null /* modified */
47 ,p_account_name in varchar2 default null
48 ,p_bank_name in varchar2 default null
49 ,p_bank_branch in varchar2 default null
50 ,p_address in varchar2 default null
51 ,p_additional_information in varchar2 default null
52 ,p_segment9 in varchar2 default '*'
53 ,p_segment10 in varchar2 default '1'
54 ,p_bic_code in varchar2 default null /* added bkeshary */
55 ,p_iban_number in varchar2 default null /* added bkeshary */
56 /*,p_segment11 in varchar2 default null
57 ,p_segment12 in varchar2 default null */
58 ,p_segment13 in varchar2 default null
59 ,p_segment14 in varchar2 default null
60 ,p_segment15 in varchar2 default null
61 ,p_segment16 in varchar2 default null
62 ,p_segment17 in varchar2 default null
63 ,p_segment18 in varchar2 default null
64 ,p_segment19 in varchar2 default null
65 ,p_segment20 in varchar2 default null
66 ,p_segment21 in varchar2 default null
67 ,p_segment22 in varchar2 default null
68 ,p_segment23 in varchar2 default null
69 ,p_segment24 in varchar2 default null
70 ,p_segment25 in varchar2 default null
71 ,p_segment26 in varchar2 default null
72 ,p_segment27 in varchar2 default null
73 ,p_segment28 in varchar2 default null
74 ,p_segment29 in varchar2 default null
75 ,p_segment30 in varchar2 default null
76 ,p_concat_segments in varchar2 default null
77 ,p_payee_type in varchar2 default null
78 ,p_payee_id in number default null
79 ,p_personal_payment_method_id out nocopy number
80 ,p_external_account_id out nocopy number
81 ,p_object_version_number out nocopy number
82 ,p_effective_start_date out nocopy date
83 ,p_effective_end_date out nocopy date
84 ,p_comment_id out nocopy number) is
85
86 --
87 -- Declare local variables
88 --
89 l_proc varchar2(72);
90 l_valid varchar2(150);
91 --
92 cursor legsel is
93 select pbg.legislation_code
94 from per_business_groups pbg,
95 per_assignments_f asg
96 where pbg.business_group_id = asg.business_group_id
97 and asg.assignment_id = p_assignment_id
98 and p_effective_date between asg.effective_start_date
99 and asg.effective_end_date;
100 --
101 --
102 begin
103 g_package :='hr_pl_personal_pay_method_api.';
104 l_proc := g_package||'create_pl_personal_pay_method';
105
106 hr_utility.set_location('Entering:'|| l_proc, 5);
107 --
108 --
109 open legsel;
110 fetch legsel
111 into l_valid;
112 --
113 if legsel%notfound then
114 close legsel;
115 hr_utility.set_message(801, 'HR_7348_ASSIGNMENT_INVALID');
116 hr_utility.raise_error;
117 end if;
118
119 if legsel%found and l_valid <> 'PL' then
120 close legsel;
121 hr_utility.set_message(801, 'HR_7898_PPM_BUS_GRP_INVALID');
122 hr_utility.raise_error;
123 end if;
124 --
125 close legsel;
126 hr_personal_pay_method_api.create_personal_pay_method
127 (p_validate => p_validate
128 ,p_effective_date => p_effective_date
129 ,p_assignment_id => p_assignment_id
130 ,p_run_type_id => p_run_type_id
131 ,p_org_payment_method_id => p_org_payment_method_id
132 ,p_amount => p_amount
133 ,p_percentage => p_percentage
134 ,p_priority => p_priority
135 ,p_comments => p_comments
136 ,p_attribute_category => p_attribute_category
137 ,p_attribute1 => p_attribute1
138 ,p_attribute2 => p_attribute2
139 ,p_attribute3 => p_attribute3
140 ,p_attribute4 => p_attribute4
141 ,p_attribute5 => p_attribute5
142 ,p_attribute6 => p_attribute6
143 ,p_attribute7 => p_attribute7
144 ,p_attribute8 => p_attribute8
145 ,p_attribute9 => p_attribute9
146 ,p_attribute10 => p_attribute10
147 ,p_attribute11 => p_attribute11
148 ,p_attribute12 => p_attribute12
149 ,p_attribute13 => p_attribute13
150 ,p_attribute14 => p_attribute14
151 ,p_attribute15 => p_attribute15
152 ,p_attribute16 => p_attribute16
153 ,p_attribute17 => p_attribute17
154 ,p_attribute18 => p_attribute18
155 ,p_attribute19 => p_attribute19
156 ,p_attribute20 => p_attribute20
157 ,p_territory_code => p_territory_code
158 ,p_segment1 => p_account_check_digit
159 ,p_segment2 => p_bank_id
160 ,p_segment3 => p_account_number
161 ,p_segment4 => p_account_name
162 ,p_segment5 => p_bank_name
163 ,p_segment6 => p_bank_branch
164 ,p_segment7 => p_address
165 ,p_segment8 => p_additional_information
166 ,p_segment9 => p_segment9
167 ,p_segment10 => p_segment10
168 ,p_segment11 => p_bic_code /* added */
169 ,p_segment12 => p_iban_number /* added */
170 /*,p_segment11 => p_segment11
171 ,p_segment12 => p_segment12 */
172 ,p_segment13 => p_segment13
173 ,p_segment14 => p_segment14
174 ,p_segment15 => p_segment15
175 ,p_segment16 => p_segment16
176 ,p_segment17 => p_segment17
177 ,p_segment18 => p_segment18
178 ,p_segment19 => p_segment19
179 ,p_segment20 => p_segment20
180 ,p_segment21 => p_segment21
181 ,p_segment22 => p_segment22
182 ,p_segment23 => p_segment23
183 ,p_segment24 => p_segment24
184 ,p_segment25 => p_segment25
185 ,p_segment26 => p_segment26
186 ,p_segment27 => p_segment27
187 ,p_segment28 => p_segment28
188 ,p_segment29 => p_segment29
189 ,p_segment30 => p_segment30
190 ,p_concat_segments => p_concat_segments
191 ,p_payee_type => p_payee_type
192 ,p_payee_id => p_payee_id
193 ,p_personal_payment_method_id => p_personal_payment_method_id
194 ,p_external_account_id => p_external_account_id
195 ,p_object_version_number => p_object_version_number
196 ,p_effective_start_date => p_effective_start_date
197 ,p_effective_end_date => p_effective_end_date
198 ,p_comment_id => p_comment_id
199 );
200
201 end create_pl_personal_pay_method;
202
203 procedure update_pl_personal_pay_method
204 (p_validate in boolean default false
205 ,p_effective_date in date
206 ,p_datetrack_update_mode in varchar2
207 ,p_personal_payment_method_id in number
208 ,p_object_version_number in out nocopy number
209 ,p_amount in number default hr_api.g_number
210 ,p_comments in varchar2 default hr_api.g_varchar2
211 ,p_percentage in number default hr_api.g_number
212 ,p_priority in number default hr_api.g_number
213 ,p_attribute_category in varchar2 default hr_api.g_varchar2
214 ,p_attribute1 in varchar2 default hr_api.g_varchar2
215 ,p_attribute2 in varchar2 default hr_api.g_varchar2
216 ,p_attribute3 in varchar2 default hr_api.g_varchar2
217 ,p_attribute4 in varchar2 default hr_api.g_varchar2
218 ,p_attribute5 in varchar2 default hr_api.g_varchar2
219 ,p_attribute6 in varchar2 default hr_api.g_varchar2
220 ,p_attribute7 in varchar2 default hr_api.g_varchar2
221 ,p_attribute8 in varchar2 default hr_api.g_varchar2
222 ,p_attribute9 in varchar2 default hr_api.g_varchar2
223 ,p_attribute10 in varchar2 default hr_api.g_varchar2
224 ,p_attribute11 in varchar2 default hr_api.g_varchar2
225 ,p_attribute12 in varchar2 default hr_api.g_varchar2
226 ,p_attribute13 in varchar2 default hr_api.g_varchar2
227 ,p_attribute14 in varchar2 default hr_api.g_varchar2
228 ,p_attribute15 in varchar2 default hr_api.g_varchar2
229 ,p_attribute16 in varchar2 default hr_api.g_varchar2
230 ,p_attribute17 in varchar2 default hr_api.g_varchar2
231 ,p_attribute18 in varchar2 default hr_api.g_varchar2
232 ,p_attribute19 in varchar2 default hr_api.g_varchar2
233 ,p_attribute20 in varchar2 default hr_api.g_varchar2
234 ,p_territory_code in varchar2 default hr_api.g_varchar2
235 ,p_account_check_digit in varchar2
236 ,p_bank_id in varchar2
237 ,p_account_number in varchar2 default hr_api.g_varchar2/* Modified */
238 ,p_account_name in varchar2 default hr_api.g_varchar2
239 ,p_bank_name in varchar2 default hr_api.g_varchar2
240 ,p_bank_branch in varchar2 default hr_api.g_varchar2
241 ,p_address in varchar2 default hr_api.g_varchar2
242 ,p_additional_information in varchar2 default hr_api.g_varchar2
243 ,p_segment9 in varchar2 default '*'
244 ,p_segment10 in varchar2 default '1'
245 ,p_bic_code in varchar2 default hr_api.g_varchar2 /* added */
246 ,p_iban_number in varchar2 default hr_api.g_varchar2/* added */
247 /*,p_segment11 in varchar2 default hr_api.g_varchar2
248 ,p_segment12 in varchar2 default hr_api.g_varchar2 */
249 ,p_segment13 in varchar2 default hr_api.g_varchar2
250 ,p_segment14 in varchar2 default hr_api.g_varchar2
251 ,p_segment15 in varchar2 default hr_api.g_varchar2
252 ,p_segment16 in varchar2 default hr_api.g_varchar2
253 ,p_segment17 in varchar2 default hr_api.g_varchar2
254 ,p_segment18 in varchar2 default hr_api.g_varchar2
255 ,p_segment19 in varchar2 default hr_api.g_varchar2
256 ,p_segment20 in varchar2 default hr_api.g_varchar2
257 ,p_segment21 in varchar2 default hr_api.g_varchar2
258 ,p_segment22 in varchar2 default hr_api.g_varchar2
259 ,p_segment23 in varchar2 default hr_api.g_varchar2
260 ,p_segment24 in varchar2 default hr_api.g_varchar2
261 ,p_segment25 in varchar2 default hr_api.g_varchar2
262 ,p_segment26 in varchar2 default hr_api.g_varchar2
263 ,p_segment27 in varchar2 default hr_api.g_varchar2
264 ,p_segment28 in varchar2 default hr_api.g_varchar2
265 ,p_segment29 in varchar2 default hr_api.g_varchar2
266 ,p_segment30 in varchar2 default hr_api.g_varchar2
267 ,p_concat_segments in varchar2 default null
268 ,p_payee_type in varchar2 default hr_api.g_varchar2
269 ,p_payee_id in number default hr_api.g_number
270 ,p_comment_id out nocopy number
271 ,p_external_account_id out nocopy number
272 ,p_effective_start_date out nocopy date
273 ,p_effective_end_date out nocopy date
274 ) is
275
276 -- Declare cursors and local variables
277 --
278 l_proc varchar2(72);
279 l_valid varchar2(150);
280 --
281 cursor legsel is
282 select pbg.legislation_code
283 from per_business_groups pbg,
284 pay_personal_payment_methods_f ppm
285 where pbg.business_group_id = ppm.business_group_id
286 and ppm.personal_payment_method_id = p_personal_payment_method_id
287 and p_effective_date between ppm.effective_start_date
288 and ppm.effective_end_date;
289 --
290 begin
291 g_package :='hr_pl_personal_pay_method_api.';
292 l_proc := g_package||'update_pl_personal_pay_method';
293
294 hr_utility.set_location('Entering:'|| l_proc, 5);
295 --
296 open legsel;
297 fetch legsel
298 into l_valid;
299 --
300 if legsel%notfound then
301 close legsel;
302 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
303 hr_utility.raise_error;
304 end if;
305 if legsel%found and l_valid <> 'PL' then
306 hr_utility.set_message(801, 'HR_7898_PPM_BUS_GRP_INVALID');
307 hr_utility.raise_error;
308 end if;
309 --
310 close legsel;
311 hr_personal_pay_method_api.update_personal_pay_method
312 ( p_validate => p_validate
313 ,p_effective_date => p_effective_date
314 ,p_datetrack_update_mode => p_datetrack_update_mode
315 ,p_personal_payment_method_id => p_personal_payment_method_id
316 ,p_object_version_number => p_object_version_number
317 ,p_amount => p_amount
318 ,p_comments => p_comments
319 ,p_percentage => p_percentage
320 ,p_priority => p_priority
321 ,p_attribute_category => p_attribute_category
322 ,p_attribute1 => p_attribute1
323 ,p_attribute2 => p_attribute2
324 ,p_attribute3 => p_attribute3
325 ,p_attribute4 => p_attribute4
326 ,p_attribute5 => p_attribute5
327 ,p_attribute6 => p_attribute6
328 ,p_attribute7 => p_attribute7
329 ,p_attribute8 => p_attribute8
330 ,p_attribute9 => p_attribute9
331 ,p_attribute10 => p_attribute10
332 ,p_attribute11 => p_attribute11
333 ,p_attribute12 => p_attribute12
334 ,p_attribute13 => p_attribute13
335 ,p_attribute14 => p_attribute14
336 ,p_attribute15 => p_attribute15
337 ,p_attribute16 => p_attribute16
338 ,p_attribute17 => p_attribute17
339 ,p_attribute18 => p_attribute18
340 ,p_attribute19 => p_attribute19
341 ,p_attribute20 => p_attribute20
342 ,p_territory_code => p_territory_code
343 ,p_segment1 => p_account_check_digit
344 ,p_segment2 => p_bank_id
345 ,p_segment3 => p_account_number
346 ,p_segment4 => p_account_name
347 ,p_segment5 => p_bank_name
348 ,p_segment6 => p_bank_branch
349 ,p_segment7 => p_address
350 ,p_segment8 => p_additional_information
351 ,p_segment9 => p_segment9
352 ,p_segment10 => p_segment10
353 ,p_segment11 => p_bic_code /* added bkeshary */
354 ,p_segment12 => p_iban_number /* added bkeshary */
355 /* ,p_segment11 => p_segment11
356 ,p_segment12 => p_segment12 */
357 ,p_segment13 => p_segment13
358 ,p_segment14 => p_segment14
359 ,p_segment15 => p_segment15
360 ,p_segment16 => p_segment16
361 ,p_segment17 => p_segment17
362 ,p_segment18 => p_segment18
363 ,p_segment19 => p_segment19
364 ,p_segment20 => p_segment20
365 ,p_segment21 => p_segment21
366 ,p_segment22 => p_segment22
367 ,p_segment23 => p_segment23
368 ,p_segment24 => p_segment24
369 ,p_segment25 => p_segment25
370 ,p_segment26 => p_segment26
371 ,p_segment27 => p_segment27
372 ,p_segment28 => p_segment28
373 ,p_segment29 => p_segment29
374 ,p_segment30 => p_segment30
375 ,p_concat_segments => p_concat_segments
376 ,p_payee_type => p_payee_type
377 ,p_payee_id => p_payee_id
378 ,p_comment_id => p_comment_id
379 ,p_external_account_id => p_external_account_id
380 ,p_effective_start_date => p_effective_start_date
381 ,p_effective_end_date => p_effective_end_date
382 );
383
384 end update_pl_personal_pay_method;
385
386 --
387 end hr_pl_personal_pay_method_api;