DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_MAINTAIN_PAYE_TAX_INFO

Source


1 package body hrdpp_MAINTAIN_PAYE_TAX_INFO as
2 /*
3  * Generated by hr_pump_meta_mapper at: 2009/03/30 04:03:34
4  * Generated for API: HR_AU_TAX_API.MAINTAIN_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_START_DATE in date
83 ,P_EFFECTIVE_END_DATE in date
84 ,P_SESSION_DATE in date
85 ,P_MODE in varchar2
86 ,P_ATTRIBUTE_CATEGORY in varchar2 default null
87 ,P_ATTRIBUTE1 in varchar2 default null
88 ,P_ATTRIBUTE2 in varchar2 default null
89 ,P_ATTRIBUTE3 in varchar2 default null
90 ,P_ATTRIBUTE4 in varchar2 default null
91 ,P_ATTRIBUTE5 in varchar2 default null
92 ,P_ATTRIBUTE6 in varchar2 default null
93 ,P_ATTRIBUTE7 in varchar2 default null
94 ,P_ATTRIBUTE8 in varchar2 default null
95 ,P_ATTRIBUTE9 in varchar2 default null
96 ,P_ATTRIBUTE10 in varchar2 default null
97 ,P_ATTRIBUTE11 in varchar2 default null
98 ,P_ATTRIBUTE12 in varchar2 default null
99 ,P_ATTRIBUTE13 in varchar2 default null
100 ,P_ATTRIBUTE14 in varchar2 default null
101 ,P_ATTRIBUTE15 in varchar2 default null
102 ,P_ATTRIBUTE16 in varchar2 default null
103 ,P_ATTRIBUTE17 in varchar2 default null
104 ,P_ATTRIBUTE18 in varchar2 default null
105 ,P_ATTRIBUTE19 in varchar2 default null
106 ,P_ATTRIBUTE20 in varchar2 default null
107 ,P_ENTRY_INFORMATION_CATEGORY in varchar2 default null
108 ,P_ENTRY_INFORMATION1 in varchar2 default null
109 ,P_AUSTRALIAN_RESIDENT_FLAG in varchar2
110 ,P_TAX_FREE_THRESHOLD_FLAG in varchar2
111 ,P_REBATE_AMOUNT in number default null
112 ,P_FTA_CLAIM_FLAG in varchar2
113 ,P_SAVINGS_REBATE_FLAG in varchar2
114 ,P_HELP_SFSS_FLAG in varchar2
115 ,P_DECLARATION_SIGNED_DATE in varchar2
116 ,P_MEDICARE_LEVY_VARIATION_CODE in varchar2
117 ,P_SPOUSE_MLS_FLAG in varchar2
118 ,P_DEPENDENT_CHILDREN in varchar2 default null
119 ,P_TAX_VARIATION_TYPE in varchar2
120 ,P_TAX_VARIATION_AMOUNT in number default null
121 ,P_TAX_FILE_NUMBER in varchar2
122 ,P_ASSIGNMENT_USER_KEY in varchar2) is
123 blid number := p_data_pump_batch_line_id;
124 begin
125 if blid is not null then
126 delete from hr_pump_batch_lines where batch_line_id = blid;
127 delete from hr_pump_batch_exceptions
128 where source_type = 'BATCH_LINE' and source_id = blid;
129 end if;
130 insert into hr_pump_batch_lines
131 (batch_id
132 ,batch_line_id
133 ,business_group_name
134 ,api_module_id
135 ,line_status
136 ,user_sequence
137 ,link_value
138 ,pval001
139 ,pval002
140 ,pval003
141 ,pval004
142 ,pval005
143 ,pval006
144 ,pval007
145 ,pval008
146 ,pval009
147 ,pval010
148 ,pval011
149 ,pval012
150 ,pval013
151 ,pval014
152 ,pval015
153 ,pval016
154 ,pval017
155 ,pval018
156 ,pval019
157 ,pval020
158 ,pval021
159 ,pval022
160 ,pval023
161 ,pval024
162 ,pval025
163 ,pval026
164 ,pval027
165 ,pval028
166 ,pval029
167 ,pval030
168 ,pval031
169 ,pval032
170 ,pval033
171 ,pval034
172 ,pval035
173 ,pval036
174 ,pval037
175 ,pval038
176 ,pval039
177 ,pval040
178 ,pval042)
179 values
180 (p_batch_id
181 ,nvl(blid,hr_pump_batch_lines_s.nextval)
182 ,p_data_pump_business_grp_name
183 ,2167
184 ,'U'
185 ,p_user_sequence
186 ,p_link_value
187 ,dc(P_EFFECTIVE_START_DATE)
188 ,dc(P_EFFECTIVE_END_DATE)
189 ,dc(P_SESSION_DATE)
190 ,P_MODE
191 ,P_ATTRIBUTE_CATEGORY
192 ,P_ATTRIBUTE1
193 ,P_ATTRIBUTE2
194 ,P_ATTRIBUTE3
195 ,P_ATTRIBUTE4
196 ,P_ATTRIBUTE5
197 ,P_ATTRIBUTE6
198 ,P_ATTRIBUTE7
199 ,P_ATTRIBUTE8
200 ,P_ATTRIBUTE9
201 ,P_ATTRIBUTE10
202 ,P_ATTRIBUTE11
203 ,P_ATTRIBUTE12
204 ,P_ATTRIBUTE13
205 ,P_ATTRIBUTE14
206 ,P_ATTRIBUTE15
207 ,P_ATTRIBUTE16
208 ,P_ATTRIBUTE17
209 ,P_ATTRIBUTE18
210 ,P_ATTRIBUTE19
211 ,P_ATTRIBUTE20
212 ,P_ENTRY_INFORMATION_CATEGORY
213 ,P_ENTRY_INFORMATION1
214 ,P_AUSTRALIAN_RESIDENT_FLAG
215 ,P_TAX_FREE_THRESHOLD_FLAG
216 ,P_REBATE_AMOUNT
217 ,P_FTA_CLAIM_FLAG
218 ,P_SAVINGS_REBATE_FLAG
219 ,P_HELP_SFSS_FLAG
220 ,P_DECLARATION_SIGNED_DATE
221 ,P_MEDICARE_LEVY_VARIATION_CODE
222 ,P_SPOUSE_MLS_FLAG
223 ,P_DEPENDENT_CHILDREN
224 ,P_TAX_VARIATION_TYPE
225 ,P_TAX_VARIATION_AMOUNT
226 ,P_TAX_FILE_NUMBER
227 ,P_ASSIGNMENT_USER_KEY);
228 end insert_batch_lines;
229 --
230 procedure call
231 (p_business_group_id in number,
232 p_batch_line_id     in number) is
233 cursor cr is
234 select l.rowid myrowid,
235 decode(l.pval001,cn,dn,d(l.pval001)) p1,
236 decode(l.pval002,cn,dn,d(l.pval002)) p2,
237 decode(l.pval003,cn,dn,d(l.pval003)) p3,
238 decode(l.pval004,cn,vn,l.pval004) p4,
239 decode(l.pval005,cn,vn,vn,vn,l.pval005) p5,
240 l.pval005 d5,
241 decode(l.pval006,cn,vn,vn,vn,l.pval006) p6,
242 l.pval006 d6,
243 decode(l.pval007,cn,vn,vn,vn,l.pval007) p7,
244 l.pval007 d7,
245 decode(l.pval008,cn,vn,vn,vn,l.pval008) p8,
246 l.pval008 d8,
247 decode(l.pval009,cn,vn,vn,vn,l.pval009) p9,
248 l.pval009 d9,
249 decode(l.pval010,cn,vn,vn,vn,l.pval010) p10,
250 l.pval010 d10,
251 decode(l.pval011,cn,vn,vn,vn,l.pval011) p11,
252 l.pval011 d11,
253 decode(l.pval012,cn,vn,vn,vn,l.pval012) p12,
254 l.pval012 d12,
255 decode(l.pval013,cn,vn,vn,vn,l.pval013) p13,
256 l.pval013 d13,
257 decode(l.pval014,cn,vn,vn,vn,l.pval014) p14,
258 l.pval014 d14,
259 decode(l.pval015,cn,vn,vn,vn,l.pval015) p15,
260 l.pval015 d15,
261 decode(l.pval016,cn,vn,vn,vn,l.pval016) p16,
262 l.pval016 d16,
263 decode(l.pval017,cn,vn,vn,vn,l.pval017) p17,
264 l.pval017 d17,
265 decode(l.pval018,cn,vn,vn,vn,l.pval018) p18,
266 l.pval018 d18,
267 decode(l.pval019,cn,vn,vn,vn,l.pval019) p19,
268 l.pval019 d19,
269 decode(l.pval020,cn,vn,vn,vn,l.pval020) p20,
270 l.pval020 d20,
271 decode(l.pval021,cn,vn,vn,vn,l.pval021) p21,
272 l.pval021 d21,
273 decode(l.pval022,cn,vn,vn,vn,l.pval022) p22,
274 l.pval022 d22,
275 decode(l.pval023,cn,vn,vn,vn,l.pval023) p23,
276 l.pval023 d23,
277 decode(l.pval024,cn,vn,vn,vn,l.pval024) p24,
278 l.pval024 d24,
279 decode(l.pval025,cn,vn,vn,vn,l.pval025) p25,
280 l.pval025 d25,
281 decode(l.pval026,cn,vn,vn,vn,l.pval026) p26,
282 l.pval026 d26,
283 decode(l.pval027,cn,vn,vn,vn,l.pval027) p27,
284 l.pval027 d27,
285 decode(l.pval028,cn,vn,
286  hr_pump_get.gl(l.pval028,'AU_AUST_RES_SENR_AUS',dn,vn)) p28,
287 decode(l.pval029,cn,vn,
288  hr_pump_get.gl(l.pval029,'YES_NO',dn,vn)) p29,
289 decode(l.pval030,cn,nn,vn,nn,n(l.pval030)) p30,
290 l.pval030 d30,
291 decode(l.pval031,cn,vn,
292  hr_pump_get.gl(l.pval031,'HR_AU_FTA_PAYMENT_BASIS',dn,vn)) p31,
293 decode(l.pval032,cn,vn,
294  hr_pump_get.gl(l.pval032,'YES_NO',dn,vn)) p32,
295 decode(l.pval033,cn,vn,
296  hr_pump_get.gl(l.pval033,'AU_HECS_SFSS',dn,vn)) p33,
297 decode(l.pval034,cn,vn,l.pval034) p34,
298 decode(l.pval035,cn,vn,
299  hr_pump_get.gl(l.pval035,'AU_MED_LEV_VAR',dn,vn)) p35,
300 decode(l.pval036,cn,vn,
301  hr_pump_get.gl(l.pval036,'AU_SPOUSE_MLS',dn,vn)) p36,
302 decode(l.pval037,cn,vn,vn,vn,l.pval037) p37,
303 l.pval037 d37,
304 decode(l.pval038,cn,vn,l.pval038) p38,
305 decode(l.pval039,cn,nn,vn,nn,n(l.pval039)) p39,
306 l.pval039 d39,
307 decode(l.pval040,cn,vn,l.pval040) p40,
308 l.pval041 p41,
309 decode(l.pval042,cn,vn,l.pval042) p42
310 from hr_pump_batch_lines l
311 where l.batch_line_id = p_batch_line_id;
312 --
313 c cr%rowtype;
314 l_validate boolean := false;
315 L_UPDATE_WARNING boolean;
316 L_ASSIGNMENT_ID number;
317 --
318 begin
319 hr_data_pump.entry('call');
320 open cr;
321 fetch cr into c;
322 if cr%notfound then
323 hr_utility.set_message(800,'HR_50326_DP_NO_ROW');
324 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
325 hr_utility.set_message_token('COLUMN','P_BATCH_LINE_ID');
326 hr_utility.set_message_token('VALUE',p_batch_line_id);
327 hr_utility.raise_error;
328 end if;
329 --
330 if c.p42 is null then
331 L_ASSIGNMENT_ID:=nn;
332 else
333 L_ASSIGNMENT_ID := 
334 hr_pump_get.get_assignment_id
335 (P_ASSIGNMENT_USER_KEY => c.p42);
336 end if;
337 --
338 hr_data_pump.api_trc_on;
339 HR_AU_TAX_API.MAINTAIN_PAYE_TAX_INFO
340 (p_validate => l_validate
341 ,P_ASSIGNMENT_ID => L_ASSIGNMENT_ID
342 ,P_EFFECTIVE_START_DATE => c.p1
343 ,P_EFFECTIVE_END_DATE => c.p2
344 ,P_SESSION_DATE => c.p3
345 ,P_MODE => c.p4
346 ,p_business_group_id => p_business_group_id
347 ,P_ATTRIBUTE_CATEGORY => c.p5
348 ,P_ATTRIBUTE1 => c.p6
349 ,P_ATTRIBUTE2 => c.p7
350 ,P_ATTRIBUTE3 => c.p8
351 ,P_ATTRIBUTE4 => c.p9
352 ,P_ATTRIBUTE5 => c.p10
353 ,P_ATTRIBUTE6 => c.p11
354 ,P_ATTRIBUTE7 => c.p12
355 ,P_ATTRIBUTE8 => c.p13
356 ,P_ATTRIBUTE9 => c.p14
357 ,P_ATTRIBUTE10 => c.p15
358 ,P_ATTRIBUTE11 => c.p16
359 ,P_ATTRIBUTE12 => c.p17
360 ,P_ATTRIBUTE13 => c.p18
361 ,P_ATTRIBUTE14 => c.p19
362 ,P_ATTRIBUTE15 => c.p20
363 ,P_ATTRIBUTE16 => c.p21
364 ,P_ATTRIBUTE17 => c.p22
365 ,P_ATTRIBUTE18 => c.p23
366 ,P_ATTRIBUTE19 => c.p24
367 ,P_ATTRIBUTE20 => c.p25
368 ,P_ENTRY_INFORMATION_CATEGORY => c.p26
369 ,P_ENTRY_INFORMATION1 => c.p27
370 ,P_AUSTRALIAN_RESIDENT_FLAG => c.p28
371 ,P_TAX_FREE_THRESHOLD_FLAG => c.p29
372 ,P_REBATE_AMOUNT => c.p30
373 ,P_FTA_CLAIM_FLAG => c.p31
374 ,P_SAVINGS_REBATE_FLAG => c.p32
375 ,P_HELP_SFSS_FLAG => c.p33
376 ,P_DECLARATION_SIGNED_DATE => c.p34
377 ,P_MEDICARE_LEVY_VARIATION_CODE => c.p35
378 ,P_SPOUSE_MLS_FLAG => c.p36
379 ,P_DEPENDENT_CHILDREN => c.p37
380 ,P_TAX_VARIATION_TYPE => c.p38
381 ,P_TAX_VARIATION_AMOUNT => c.p39
382 ,P_TAX_FILE_NUMBER => c.p40
383 ,P_UPDATE_WARNING => L_UPDATE_WARNING);
384 hr_data_pump.api_trc_off;
385 --
386 if L_UPDATE_WARNING then
387 c.p41 := 'TRUE';
388 else
389 c.p41 := 'FALSE';
390 end if;
391 --
392 update hr_pump_batch_lines l set
393 l.pval001 = decode(c.p1,null,cn,dc(c.p1)),
394 l.pval002 = decode(c.p2,null,cn,dc(c.p2)),
395 l.pval041 = decode(c.p41,null,cn,c.p41)
396 where l.rowid = c.myrowid;
397 --
398 close cr;
399 --
400 hr_data_pump.exit('call');
401 exception
402  when hr_multi_message.error_message_exist then
403    if cr%isopen then
404     close cr;
405    end if;
406    hr_pump_utils.set_multi_msg_error_flag(true);
407  when others then
408  if cr%isopen then
409   close cr;
410  end if;
411  raise;
412 end call;
413 end hrdpp_MAINTAIN_PAYE_TAX_INFO;