DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_CREATE_PAYE_TAX_INFO

Source


1 package body hrdpp_CREATE_PAYE_TAX_INFO as
2 /*
3  * Generated by hr_pump_meta_mapper at: 2013/08/13 18:08:04
4  * Generated for API: HR_AU_TAX_API.CREATE_PAYE_TAX_INFO
5  */
6 --
7 dh constant date := hr_api.g_date;
8 nh constant number := hr_api.g_number;
9 vh constant varchar2(64) := hr_api.g_varchar2;
10 c_sot constant date := to_date('01010001','DDMMYYYY');
11 cn constant varchar2(32) := '<NULL>';
12 dn constant date := null;
13 nn constant number := null;
14 vn constant varchar2(1) := null;
15 --
16 function dc(p in date) return varchar2 is
17 begin
18 if p<c_sot then
19  if p<>trunc(p) then
20   return to_char(p,'SYYYY/MM/DD HH24:MI:SS');
21  end if;
22  return to_char(p,'SYYYY/MM/DD');
23 elsif p<>trunc(p) then
24  return to_char(p,'YYYY/MM/DD HH24:MI:SS');
25 end if;
26 return to_char(p,'YYYY/MM/DD');
27 end dc;
28 function d(p in varchar2) return date is
29 begin
30 if length(p)=10 then
31 return to_date(p,'YYYY/MM/DD');
32 elsif length(p)=19 then
33 return to_date(p,'YYYY/MM/DD HH24:MI:SS');
34 elsif length(p)=11 then
35 return to_date(p,'SYYYY/MM/DD');
36 elsif length(p)=20 then
37 return to_date(p,'SYYYY/MM/DD HH24:MI:SS');
38 end if;
39 -- Try default format as last resort.
40 return to_date(p,'YYYY/MM/DD');
41 end d;
42 function n(p in varchar2) return number is
43 begin
44 return to_number(p);
45 end n;
46 function dd(p in date,i in varchar2)
47 return varchar2 is
48 begin
49 if upper(i) = 'N' then return dc(p);
50 else return cn; end if;
51 end dd;
52 function nd(p in number,i in varchar2)
53 return varchar2 is
54 begin
55 if upper(i) = 'N' then return to_char(p);
56 else return cn; end if;
57 end nd;
58 --
59 procedure iuk
60 (p_batch_line_id  in number,
61 p_user_key_value in varchar2,
62 p_unique_key_id  in number)
63 is
64 begin
65 hr_data_pump.entry('ins_user_key');
66 insert into hr_pump_batch_line_user_keys
67 (user_key_id, batch_line_id,user_key_value,unique_key_id)
68 values
69 (hr_pump_batch_line_user_keys_s.nextval,
70 p_batch_line_id,
71 p_user_key_value,
72 p_unique_key_id);
73 hr_data_pump.exit('ins_user_key');
74 end iuk;
75 --
76 procedure insert_batch_lines
77 (p_batch_id      in number
78 ,p_data_pump_batch_line_id in number default null
79 ,p_data_pump_business_grp_name in varchar2 default null
80 ,p_user_sequence in number default null
81 ,p_link_value    in number default null
82 ,P_EFFECTIVE_DATE in date
83 ,P_ENTRY_TYPE in varchar2
84 ,P_REASON in varchar2 default null
85 ,P_SUBPRIORITY in number default null
86 ,P_DATE_EARNED in date default null
87 ,P_ATTRIBUTE_CATEGORY in varchar2 default null
88 ,P_ATTRIBUTE1 in varchar2 default null
89 ,P_ATTRIBUTE2 in varchar2 default null
90 ,P_ATTRIBUTE3 in varchar2 default null
91 ,P_ATTRIBUTE4 in varchar2 default null
92 ,P_ATTRIBUTE5 in varchar2 default null
93 ,P_ATTRIBUTE6 in varchar2 default null
94 ,P_ATTRIBUTE7 in varchar2 default null
95 ,P_ATTRIBUTE8 in varchar2 default null
96 ,P_ATTRIBUTE9 in varchar2 default null
97 ,P_ATTRIBUTE10 in varchar2 default null
98 ,P_ATTRIBUTE11 in varchar2 default null
99 ,P_ATTRIBUTE12 in varchar2 default null
100 ,P_ATTRIBUTE13 in varchar2 default null
101 ,P_ATTRIBUTE14 in varchar2 default null
102 ,P_ATTRIBUTE15 in varchar2 default null
103 ,P_ATTRIBUTE16 in varchar2 default null
104 ,P_ATTRIBUTE17 in varchar2 default null
105 ,P_ATTRIBUTE18 in varchar2 default null
106 ,P_ATTRIBUTE19 in varchar2 default null
107 ,P_ATTRIBUTE20 in varchar2 default null
108 ,P_AUSTRALIAN_RESIDENT_FLAG in varchar2
109 ,P_TAX_FREE_THRESHOLD_FLAG in varchar2
110 ,P_REBATE_AMOUNT in number default null
111 ,P_FTA_CLAIM_FLAG in varchar2
112 ,P_SAVINGS_REBATE_FLAG in varchar2
113 ,P_HECS_SFSS_FLAG in varchar2
114 ,P_DECLARATION_SIGNED_DATE in varchar2
115 ,P_MEDICARE_LEVY_VARIATION_CODE in varchar2
116 ,P_SPOUSE_MLS_FLAG in varchar2
117 ,P_DEPENDENT_CHILDREN in varchar2 default null
118 ,P_TAX_VARIATION_TYPE in varchar2
119 ,P_TAX_VARIATION_AMOUNT in number default null
120 ,P_TAX_FILE_NUMBER in varchar2
121 ,P_EXEMPT_FLOOD_LEVY_FLAG in varchar2 default null
122 ,P_ORIGINAL_ENTRY_USER_KEY in varchar2 default null
123 ,P_ASSIGNMENT_USER_KEY in varchar2
124 ,P_COST_ALLOC_KEYFLEX_USER_KEY in varchar2 default null
125 ,P_UPDATING_ACTION_USER_KEY in varchar2 default null
126 ,P_COMMENT_USER_KEY in varchar2 default null
127 ,P_TARGET_ENTRY_USER_KEY in varchar2 default null) is
128 blid number := p_data_pump_batch_line_id;
129 begin
130 if blid is not null then
131 delete from hr_pump_batch_lines where batch_line_id = blid;
132 delete from hr_pump_batch_exceptions
133 where source_type = 'BATCH_LINE' and source_id = blid;
134 end if;
135 insert into hr_pump_batch_lines
136 (batch_id
137 ,batch_line_id
138 ,business_group_name
139 ,api_module_id
140 ,line_status
141 ,user_sequence
142 ,link_value
143 ,pval001
144 ,pval002
145 ,pval003
146 ,pval004
147 ,pval005
148 ,pval006
149 ,pval007
150 ,pval008
151 ,pval009
152 ,pval010
153 ,pval011
154 ,pval012
155 ,pval013
156 ,pval014
157 ,pval015
158 ,pval016
159 ,pval017
160 ,pval018
161 ,pval019
162 ,pval020
163 ,pval021
164 ,pval022
165 ,pval023
166 ,pval024
167 ,pval025
168 ,pval026
169 ,pval027
170 ,pval028
171 ,pval029
172 ,pval030
173 ,pval031
174 ,pval032
175 ,pval033
176 ,pval034
177 ,pval035
178 ,pval036
179 ,pval037
180 ,pval038
181 ,pval039
182 ,pval040
183 ,pval046
184 ,pval047
185 ,pval048
186 ,pval049
187 ,pval050
188 ,pval051)
189 values
190 (p_batch_id
191 ,nvl(blid,hr_pump_batch_lines_s.nextval)
192 ,p_data_pump_business_grp_name
193 ,2169
194 ,'U'
195 ,p_user_sequence
196 ,p_link_value
197 ,dc(P_EFFECTIVE_DATE)
198 ,P_ENTRY_TYPE
199 ,P_REASON
200 ,P_SUBPRIORITY
201 ,dc(P_DATE_EARNED)
202 ,P_ATTRIBUTE_CATEGORY
203 ,P_ATTRIBUTE1
204 ,P_ATTRIBUTE2
205 ,P_ATTRIBUTE3
206 ,P_ATTRIBUTE4
207 ,P_ATTRIBUTE5
208 ,P_ATTRIBUTE6
209 ,P_ATTRIBUTE7
210 ,P_ATTRIBUTE8
211 ,P_ATTRIBUTE9
212 ,P_ATTRIBUTE10
213 ,P_ATTRIBUTE11
214 ,P_ATTRIBUTE12
215 ,P_ATTRIBUTE13
216 ,P_ATTRIBUTE14
217 ,P_ATTRIBUTE15
218 ,P_ATTRIBUTE16
219 ,P_ATTRIBUTE17
220 ,P_ATTRIBUTE18
221 ,P_ATTRIBUTE19
222 ,P_ATTRIBUTE20
223 ,P_AUSTRALIAN_RESIDENT_FLAG
224 ,P_TAX_FREE_THRESHOLD_FLAG
225 ,P_REBATE_AMOUNT
226 ,P_FTA_CLAIM_FLAG
227 ,P_SAVINGS_REBATE_FLAG
228 ,P_HECS_SFSS_FLAG
229 ,P_DECLARATION_SIGNED_DATE
230 ,P_MEDICARE_LEVY_VARIATION_CODE
231 ,P_SPOUSE_MLS_FLAG
232 ,P_DEPENDENT_CHILDREN
233 ,P_TAX_VARIATION_TYPE
234 ,P_TAX_VARIATION_AMOUNT
235 ,P_TAX_FILE_NUMBER
236 ,P_EXEMPT_FLOOD_LEVY_FLAG
237 ,P_ORIGINAL_ENTRY_USER_KEY
238 ,P_ASSIGNMENT_USER_KEY
239 ,P_COST_ALLOC_KEYFLEX_USER_KEY
240 ,P_UPDATING_ACTION_USER_KEY
241 ,P_COMMENT_USER_KEY
242 ,P_TARGET_ENTRY_USER_KEY);
243 end insert_batch_lines;
244 --
245 procedure call
246 (p_business_group_id in number,
247 p_batch_line_id     in number) is
248 cursor cr is
249 select l.rowid myrowid,
250 decode(l.pval001,cn,dn,d(l.pval001)) p1,
251 decode(l.pval002,cn,vn,l.pval002) p2,
252 decode(l.pval003,cn,vn,vn,vn,l.pval003) p3,
253 l.pval003 d3,
254 decode(l.pval004,cn,nn,vn,nn,n(l.pval004)) p4,
255 l.pval004 d4,
256 decode(l.pval005,cn,dn,vn,dn,d(l.pval005)) p5,
257 l.pval005 d5,
258 decode(l.pval006,cn,vn,vn,vn,l.pval006) p6,
259 l.pval006 d6,
260 decode(l.pval007,cn,vn,vn,vn,l.pval007) p7,
261 l.pval007 d7,
262 decode(l.pval008,cn,vn,vn,vn,l.pval008) p8,
263 l.pval008 d8,
264 decode(l.pval009,cn,vn,vn,vn,l.pval009) p9,
265 l.pval009 d9,
266 decode(l.pval010,cn,vn,vn,vn,l.pval010) p10,
267 l.pval010 d10,
268 decode(l.pval011,cn,vn,vn,vn,l.pval011) p11,
269 l.pval011 d11,
270 decode(l.pval012,cn,vn,vn,vn,l.pval012) p12,
271 l.pval012 d12,
272 decode(l.pval013,cn,vn,vn,vn,l.pval013) p13,
273 l.pval013 d13,
274 decode(l.pval014,cn,vn,vn,vn,l.pval014) p14,
275 l.pval014 d14,
276 decode(l.pval015,cn,vn,vn,vn,l.pval015) p15,
277 l.pval015 d15,
278 decode(l.pval016,cn,vn,vn,vn,l.pval016) p16,
279 l.pval016 d16,
280 decode(l.pval017,cn,vn,vn,vn,l.pval017) p17,
281 l.pval017 d17,
282 decode(l.pval018,cn,vn,vn,vn,l.pval018) p18,
283 l.pval018 d18,
284 decode(l.pval019,cn,vn,vn,vn,l.pval019) p19,
285 l.pval019 d19,
286 decode(l.pval020,cn,vn,vn,vn,l.pval020) p20,
287 l.pval020 d20,
288 decode(l.pval021,cn,vn,vn,vn,l.pval021) p21,
289 l.pval021 d21,
290 decode(l.pval022,cn,vn,vn,vn,l.pval022) p22,
291 l.pval022 d22,
292 decode(l.pval023,cn,vn,vn,vn,l.pval023) p23,
293 l.pval023 d23,
294 decode(l.pval024,cn,vn,vn,vn,l.pval024) p24,
295 l.pval024 d24,
296 decode(l.pval025,cn,vn,vn,vn,l.pval025) p25,
297 l.pval025 d25,
298 decode(l.pval026,cn,vn,vn,vn,l.pval026) p26,
299 l.pval026 d26,
300 decode(l.pval027,cn,vn,
301  hr_pump_get.gl(l.pval027,'AU_AUST_RES_SENR_AUS',d(l.pval001),vn)) p27,
302 decode(l.pval028,cn,vn,
303  hr_pump_get.gl(l.pval028,'YES_NO',d(l.pval001),vn)) p28,
304 decode(l.pval029,cn,nn,vn,nn,n(l.pval029)) p29,
305 l.pval029 d29,
306 decode(l.pval030,cn,vn,
307  hr_pump_get.gl(l.pval030,'HR_AU_FTA_PAYMENT_BASIS',d(l.pval001),vn)) p30,
308 decode(l.pval031,cn,vn,
309  hr_pump_get.gl(l.pval031,'YES_NO',d(l.pval001),vn)) p31,
310 decode(l.pval032,cn,vn,
311  hr_pump_get.gl(l.pval032,'AU_HECS_SFSS',d(l.pval001),vn)) p32,
312 decode(l.pval033,cn,vn,l.pval033) p33,
313 decode(l.pval034,cn,vn,
314  hr_pump_get.gl(l.pval034,'AU_MED_LEV_VAR',d(l.pval001),vn)) p34,
315 decode(l.pval035,cn,vn,
316  hr_pump_get.gl(l.pval035,'AU_SPOUSE_MLS',d(l.pval001),vn)) p35,
317 decode(l.pval036,cn,vn,vn,vn,l.pval036) p36,
318 l.pval036 d36,
319 decode(l.pval037,cn,vn,l.pval037) p37,
320 decode(l.pval038,cn,nn,vn,nn,n(l.pval038)) p38,
321 l.pval038 d38,
322 decode(l.pval039,cn,vn,l.pval039) p39,
323 decode(l.pval040,cn,vn,vn,vn,l.pval040) p40,
324 l.pval040 d40,
325 decode(l.pval041,cn,dn,d(l.pval041)) p41,
326 decode(l.pval042,cn,dn,d(l.pval042)) p42,
327 l.pval043 p43,
328 l.pval044 p44,
329 l.pval045 p45,
330 decode(l.pval046,cn,vn,vn,vn,l.pval046) p46,
331 l.pval046 d46,
332 decode(l.pval047,cn,vn,l.pval047) p47,
333 decode(l.pval048,cn,vn,vn,vn,l.pval048) p48,
334 l.pval048 d48,
335 decode(l.pval049,cn,vn,vn,vn,l.pval049) p49,
336 l.pval049 d49,
337 decode(l.pval050,cn,vn,vn,vn,l.pval050) p50,
338 l.pval050 d50,
339 decode(l.pval051,cn,vn,vn,vn,l.pval051) p51,
340 l.pval051 d51
341 from hr_pump_batch_lines l
342 where l.batch_line_id = p_batch_line_id;
343 --
344 c cr%rowtype;
345 l_validate boolean := false;
346 L_CREATE_WARNING boolean;
347 L_ORIGINAL_ENTRY_ID number;
348 L_ASSIGNMENT_ID number;
349 L_COST_ALLOCATION_KEYFLEX_ID number;
350 L_UPDATING_ACTION_ID number;
351 L_COMMENT_ID number;
352 L_TARGET_ENTRY_ID number;
353 --
354 begin
355 hr_data_pump.entry('call');
356 open cr;
357 fetch cr into c;
358 if cr%notfound then
359 hr_utility.set_message(800,'HR_50326_DP_NO_ROW');
360 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
361 hr_utility.set_message_token('COLUMN','P_BATCH_LINE_ID');
362 hr_utility.set_message_token('VALUE',p_batch_line_id);
363 hr_utility.raise_error;
364 end if;
365 --
366 if c.p46 is null then
367 L_ORIGINAL_ENTRY_ID:=nn;
368 else
369 L_ORIGINAL_ENTRY_ID := 
370 hr_pump_get.get_original_entry_id
371 (P_ORIGINAL_ENTRY_USER_KEY => c.p46);
372 end if;
373 --
374 if c.p47 is null then
375 L_ASSIGNMENT_ID:=nn;
376 else
377 L_ASSIGNMENT_ID := 
378 hr_pump_get.get_assignment_id
379 (P_ASSIGNMENT_USER_KEY => c.p47);
380 end if;
381 --
382 if c.p48 is null then
383 L_COST_ALLOCATION_KEYFLEX_ID:=nn;
384 else
385 L_COST_ALLOCATION_KEYFLEX_ID := 
386 hr_pump_get.get_cost_allocation_keyflex_id
387 (P_COST_ALLOC_KEYFLEX_USER_KEY => c.p48);
388 end if;
389 --
390 if c.p49 is null then
391 L_UPDATING_ACTION_ID:=nn;
392 else
393 L_UPDATING_ACTION_ID := 
394 hr_pump_get.get_updating_action_id
395 (P_UPDATING_ACTION_USER_KEY => c.p49);
396 end if;
397 --
398 if c.p50 is null then
399 L_COMMENT_ID:=nn;
400 else
401 L_COMMENT_ID := 
402 hr_pump_get.get_comment_id
403 (P_COMMENT_USER_KEY => c.p50);
404 end if;
405 --
406 if c.p51 is null then
407 L_TARGET_ENTRY_ID:=nn;
408 else
409 L_TARGET_ENTRY_ID := 
410 hr_pump_get.get_target_entry_id
411 (P_TARGET_ENTRY_USER_KEY => c.p51);
412 end if;
413 --
414 hr_data_pump.api_trc_on;
415 HR_AU_TAX_API.CREATE_PAYE_TAX_INFO
416 (p_validate => l_validate
417 ,P_EFFECTIVE_DATE => c.p1
418 ,p_business_group_id => p_business_group_id
419 ,P_ORIGINAL_ENTRY_ID => L_ORIGINAL_ENTRY_ID
420 ,P_ASSIGNMENT_ID => L_ASSIGNMENT_ID
421 ,P_ENTRY_TYPE => c.p2
422 ,P_COST_ALLOCATION_KEYFLEX_ID => L_COST_ALLOCATION_KEYFLEX_ID
423 ,P_UPDATING_ACTION_ID => L_UPDATING_ACTION_ID
424 ,P_COMMENT_ID => L_COMMENT_ID
425 ,P_REASON => c.p3
426 ,P_TARGET_ENTRY_ID => L_TARGET_ENTRY_ID
427 ,P_SUBPRIORITY => c.p4
428 ,P_DATE_EARNED => c.p5
429 ,P_ATTRIBUTE_CATEGORY => c.p6
430 ,P_ATTRIBUTE1 => c.p7
431 ,P_ATTRIBUTE2 => c.p8
432 ,P_ATTRIBUTE3 => c.p9
433 ,P_ATTRIBUTE4 => c.p10
434 ,P_ATTRIBUTE5 => c.p11
435 ,P_ATTRIBUTE6 => c.p12
436 ,P_ATTRIBUTE7 => c.p13
437 ,P_ATTRIBUTE8 => c.p14
438 ,P_ATTRIBUTE9 => c.p15
439 ,P_ATTRIBUTE10 => c.p16
440 ,P_ATTRIBUTE11 => c.p17
441 ,P_ATTRIBUTE12 => c.p18
442 ,P_ATTRIBUTE13 => c.p19
443 ,P_ATTRIBUTE14 => c.p20
444 ,P_ATTRIBUTE15 => c.p21
445 ,P_ATTRIBUTE16 => c.p22
446 ,P_ATTRIBUTE17 => c.p23
447 ,P_ATTRIBUTE18 => c.p24
448 ,P_ATTRIBUTE19 => c.p25
449 ,P_ATTRIBUTE20 => c.p26
450 ,P_AUSTRALIAN_RESIDENT_FLAG => c.p27
451 ,P_TAX_FREE_THRESHOLD_FLAG => c.p28
452 ,P_REBATE_AMOUNT => c.p29
453 ,P_FTA_CLAIM_FLAG => c.p30
454 ,P_SAVINGS_REBATE_FLAG => c.p31
455 ,P_HECS_SFSS_FLAG => c.p32
456 ,P_DECLARATION_SIGNED_DATE => c.p33
457 ,P_MEDICARE_LEVY_VARIATION_CODE => c.p34
458 ,P_SPOUSE_MLS_FLAG => c.p35
459 ,P_DEPENDENT_CHILDREN => c.p36
460 ,P_TAX_VARIATION_TYPE => c.p37
461 ,P_TAX_VARIATION_AMOUNT => c.p38
462 ,P_TAX_FILE_NUMBER => c.p39
463 ,P_EXEMPT_FLOOD_LEVY_FLAG => c.p40
464 ,P_EFFECTIVE_START_DATE => c.p41
465 ,P_EFFECTIVE_END_DATE => c.p42
466 ,P_ELEMENT_ENTRY_ID => c.p43
467 ,P_OBJECT_VERSION_NUMBER => c.p44
468 ,P_CREATE_WARNING => L_CREATE_WARNING);
469 hr_data_pump.api_trc_off;
470 --
471 if L_CREATE_WARNING then
472 c.p45 := 'TRUE';
473 else
474 c.p45 := 'FALSE';
475 end if;
476 --
477 update hr_pump_batch_lines l set
478 l.pval041 = decode(c.p41,null,cn,dc(c.p41)),
479 l.pval042 = decode(c.p42,null,cn,dc(c.p42)),
480 l.pval043 = decode(c.p43,null,cn,c.p43),
481 l.pval044 = decode(c.p44,null,cn,c.p44),
482 l.pval045 = decode(c.p45,null,cn,c.p45)
483 where l.rowid = c.myrowid;
484 --
485 close cr;
486 --
487 hr_data_pump.exit('call');
488 exception
489  when hr_multi_message.error_message_exist then
490    if cr%isopen then
491     close cr;
492    end if;
493    hr_pump_utils.set_multi_msg_error_flag(true);
494  when others then
495  if cr%isopen then
496   close cr;
497  end if;
498  raise;
499 end call;
500 end hrdpp_CREATE_PAYE_TAX_INFO;