DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_CREATE_SUPER_CONTRIBUTIO

Source


1 package body hrdpp_CREATE_SUPER_CONTRIBUTIO as
2 /*
3  * Generated by hr_pump_meta_mapper at: 2013/08/13 18:08:05
4  * Generated for API: HR_AU_SUPER_API.CREATE_SUPER_CONTRIBUTION
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,
64 begin
61 p_user_key_value in varchar2,
62 p_unique_key_id  in number)
63 is
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_SUPER_FUND_NAME in varchar2
88 ,P_ATTRIBUTE_CATEGORY in varchar2 default null
89 ,P_ATTRIBUTE1 in varchar2 default null
90 ,P_ATTRIBUTE2 in varchar2 default null
91 ,P_ATTRIBUTE3 in varchar2 default null
92 ,P_ATTRIBUTE4 in varchar2 default null
93 ,P_ATTRIBUTE5 in varchar2 default null
94 ,P_ATTRIBUTE6 in varchar2 default null
95 ,P_ATTRIBUTE7 in varchar2 default null
96 ,P_ATTRIBUTE8 in varchar2 default null
97 ,P_ATTRIBUTE9 in varchar2 default null
98 ,P_ATTRIBUTE10 in varchar2 default null
99 ,P_ATTRIBUTE11 in varchar2 default null
100 ,P_ATTRIBUTE12 in varchar2 default null
101 ,P_ATTRIBUTE13 in varchar2 default null
102 ,P_ATTRIBUTE14 in varchar2 default null
103 ,P_ATTRIBUTE15 in varchar2 default null
104 ,P_ATTRIBUTE16 in varchar2 default null
105 ,P_ATTRIBUTE17 in varchar2 default null
106 ,P_ATTRIBUTE18 in varchar2 default null
107 ,P_ATTRIBUTE19 in varchar2 default null
108 ,P_ATTRIBUTE20 in varchar2 default null
109 ,P_PAY_VALUE in number default null
110 ,P_MEMBER_NUMBER in varchar2
111 ,P_SG_AMOUNT in number default null
112 ,P_SG_PERCENT in number default null
113 ,P_NON_SG_AMOUNT in number default null
114 ,P_NON_SG_PERCENT in number default null
115 ,P_ELEMENT_ENTRY_USER_KEY in varchar2
116 ,P_ORIGINAL_ENTRY_USER_KEY in varchar2 default null
117 ,P_ASSIGNMENT_USER_KEY in varchar2
118 ,P_COST_ALLOC_KEYFLEX_USER_KEY in varchar2 default null
119 ,P_UPDATING_ACTION_USER_KEY in varchar2 default null
120 ,P_COMMENT_USER_KEY in varchar2 default null
121 ,P_TARGET_ENTRY_USER_KEY in varchar2 default null) is
122 blid number := p_data_pump_batch_line_id;
123 begin
124 if blid is not null then
125 delete from hr_pump_batch_lines where batch_line_id = blid;
126 delete from hr_pump_batch_exceptions
127 where source_type = 'BATCH_LINE' and source_id = blid;
128 end if;
129 insert into hr_pump_batch_lines
130 (batch_id
131 ,batch_line_id
132 ,business_group_name
133 ,api_module_id
134 ,line_status
135 ,user_sequence
136 ,link_value
137 ,pval001
138 ,pval002
139 ,pval003
140 ,pval004
141 ,pval005
142 ,pval006
143 ,pval007
144 ,pval008
145 ,pval009
146 ,pval010
147 ,pval011
148 ,pval012
149 ,pval013
150 ,pval014
151 ,pval015
152 ,pval016
153 ,pval017
154 ,pval018
155 ,pval019
156 ,pval020
157 ,pval021
158 ,pval022
159 ,pval023
160 ,pval024
161 ,pval025
162 ,pval026
163 ,pval027
164 ,pval028
165 ,pval029
166 ,pval030
167 ,pval031
168 ,pval032
169 ,pval033
170 ,pval036
171 ,pval039
172 ,pval040
173 ,pval041
174 ,pval042
175 ,pval043
176 ,pval044)
177 values
178 (p_batch_id
179 ,nvl(blid,hr_pump_batch_lines_s.nextval)
180 ,p_data_pump_business_grp_name
181 ,2170
182 ,'U'
183 ,p_user_sequence
184 ,p_link_value
185 ,dc(P_EFFECTIVE_DATE)
186 ,P_ENTRY_TYPE
187 ,P_REASON
188 ,P_SUBPRIORITY
189 ,dc(P_DATE_EARNED)
190 ,P_SUPER_FUND_NAME
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_PAY_VALUE
213 ,P_MEMBER_NUMBER
214 ,P_SG_AMOUNT
215 ,P_SG_PERCENT
216 ,P_NON_SG_AMOUNT
217 ,P_NON_SG_PERCENT
218 ,P_ELEMENT_ENTRY_USER_KEY
219 ,P_ORIGINAL_ENTRY_USER_KEY
220 ,P_ASSIGNMENT_USER_KEY
221 ,P_COST_ALLOC_KEYFLEX_USER_KEY
222 ,P_UPDATING_ACTION_USER_KEY
223 ,P_COMMENT_USER_KEY
224 ,P_TARGET_ENTRY_USER_KEY);
225 end insert_batch_lines;
226 --
227 procedure call
228 (p_business_group_id in number,
229 p_batch_line_id     in number) is
230 cursor cr is
231 select l.rowid myrowid,
232 decode(l.pval001,cn,dn,d(l.pval001)) p1,
233 decode(l.pval002,cn,vn,l.pval002) p2,
234 decode(l.pval003,cn,vn,vn,vn,l.pval003) p3,
235 l.pval003 d3,
236 decode(l.pval004,cn,nn,vn,nn,n(l.pval004)) p4,
237 l.pval004 d4,
238 decode(l.pval005,cn,dn,vn,dn,d(l.pval005)) p5,
239 l.pval005 d5,
240 decode(l.pval006,cn,vn,l.pval006) p6,
241 decode(l.pval007,cn,vn,vn,vn,l.pval007) p7,
242 l.pval007 d7,
243 decode(l.pval008,cn,vn,vn,vn,l.pval008) p8,
244 l.pval008 d8,
248 l.pval010 d10,
245 decode(l.pval009,cn,vn,vn,vn,l.pval009) p9,
246 l.pval009 d9,
247 decode(l.pval010,cn,vn,vn,vn,l.pval010) p10,
249 decode(l.pval011,cn,vn,vn,vn,l.pval011) p11,
250 l.pval011 d11,
251 decode(l.pval012,cn,vn,vn,vn,l.pval012) p12,
252 l.pval012 d12,
253 decode(l.pval013,cn,vn,vn,vn,l.pval013) p13,
254 l.pval013 d13,
255 decode(l.pval014,cn,vn,vn,vn,l.pval014) p14,
256 l.pval014 d14,
257 decode(l.pval015,cn,vn,vn,vn,l.pval015) p15,
258 l.pval015 d15,
259 decode(l.pval016,cn,vn,vn,vn,l.pval016) p16,
260 l.pval016 d16,
261 decode(l.pval017,cn,vn,vn,vn,l.pval017) p17,
262 l.pval017 d17,
263 decode(l.pval018,cn,vn,vn,vn,l.pval018) p18,
264 l.pval018 d18,
265 decode(l.pval019,cn,vn,vn,vn,l.pval019) p19,
266 l.pval019 d19,
267 decode(l.pval020,cn,vn,vn,vn,l.pval020) p20,
268 l.pval020 d20,
269 decode(l.pval021,cn,vn,vn,vn,l.pval021) p21,
270 l.pval021 d21,
271 decode(l.pval022,cn,vn,vn,vn,l.pval022) p22,
272 l.pval022 d22,
273 decode(l.pval023,cn,vn,vn,vn,l.pval023) p23,
274 l.pval023 d23,
275 decode(l.pval024,cn,vn,vn,vn,l.pval024) p24,
276 l.pval024 d24,
277 decode(l.pval025,cn,vn,vn,vn,l.pval025) p25,
278 l.pval025 d25,
279 decode(l.pval026,cn,vn,vn,vn,l.pval026) p26,
280 l.pval026 d26,
281 decode(l.pval027,cn,vn,vn,vn,l.pval027) p27,
282 l.pval027 d27,
283 decode(l.pval028,cn,nn,vn,nn,n(l.pval028)) p28,
284 l.pval028 d28,
285 decode(l.pval029,cn,vn,l.pval029) p29,
286 decode(l.pval030,cn,nn,vn,nn,n(l.pval030)) p30,
287 l.pval030 d30,
288 decode(l.pval031,cn,nn,vn,nn,n(l.pval031)) p31,
289 l.pval031 d31,
290 decode(l.pval032,cn,nn,vn,nn,n(l.pval032)) p32,
291 l.pval032 d32,
292 decode(l.pval033,cn,nn,vn,nn,n(l.pval033)) p33,
293 l.pval033 d33,
294 decode(l.pval034,cn,dn,d(l.pval034)) p34,
295 decode(l.pval035,cn,dn,d(l.pval035)) p35,
296 l.pval036 p36,
297 l.pval037 p37,
298 l.pval038 p38,
299 decode(l.pval039,cn,vn,vn,vn,l.pval039) p39,
300 l.pval039 d39,
301 decode(l.pval040,cn,vn,l.pval040) p40,
302 decode(l.pval041,cn,vn,vn,vn,l.pval041) p41,
303 l.pval041 d41,
304 decode(l.pval042,cn,vn,vn,vn,l.pval042) p42,
305 l.pval042 d42,
306 decode(l.pval043,cn,vn,vn,vn,l.pval043) p43,
307 l.pval043 d43,
308 decode(l.pval044,cn,vn,vn,vn,l.pval044) p44,
309 l.pval044 d44
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_ELEMENT_ENTRY_ID number;
316 L_CREATE_WARNING boolean;
317 L_ORIGINAL_ENTRY_ID number;
318 L_ASSIGNMENT_ID number;
319 L_COST_ALLOCATION_KEYFLEX_ID number;
320 L_UPDATING_ACTION_ID number;
321 L_COMMENT_ID number;
322 L_TARGET_ENTRY_ID number;
323 --
324 begin
325 hr_data_pump.entry('call');
326 open cr;
327 fetch cr into c;
328 if cr%notfound then
329 hr_utility.set_message(800,'HR_50326_DP_NO_ROW');
330 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
331 hr_utility.set_message_token('COLUMN','P_BATCH_LINE_ID');
332 hr_utility.set_message_token('VALUE',p_batch_line_id);
333 hr_utility.raise_error;
334 end if;
335 --
336 if c.p39 is null then
337 L_ORIGINAL_ENTRY_ID:=nn;
338 else
339 L_ORIGINAL_ENTRY_ID := 
340 hr_pump_get.get_original_entry_id
341 (P_ORIGINAL_ENTRY_USER_KEY => c.p39);
342 end if;
343 --
344 if c.p40 is null then
345 L_ASSIGNMENT_ID:=nn;
346 else
347 L_ASSIGNMENT_ID := 
348 hr_pump_get.get_assignment_id
349 (P_ASSIGNMENT_USER_KEY => c.p40);
350 end if;
351 --
352 if c.p41 is null then
353 L_COST_ALLOCATION_KEYFLEX_ID:=nn;
354 else
355 L_COST_ALLOCATION_KEYFLEX_ID := 
356 hr_pump_get.get_cost_allocation_keyflex_id
357 (P_COST_ALLOC_KEYFLEX_USER_KEY => c.p41);
358 end if;
359 --
360 if c.p42 is null then
361 L_UPDATING_ACTION_ID:=nn;
362 else
363 L_UPDATING_ACTION_ID := 
364 hr_pump_get.get_updating_action_id
365 (P_UPDATING_ACTION_USER_KEY => c.p42);
366 end if;
367 --
368 if c.p43 is null then
369 L_COMMENT_ID:=nn;
370 else
371 L_COMMENT_ID := 
372 hr_pump_get.get_comment_id
373 (P_COMMENT_USER_KEY => c.p43);
374 end if;
375 --
376 if c.p44 is null then
377 L_TARGET_ENTRY_ID:=nn;
378 else
379 L_TARGET_ENTRY_ID := 
380 hr_pump_get.get_target_entry_id
381 (P_TARGET_ENTRY_USER_KEY => c.p44);
382 end if;
383 --
384 hr_data_pump.api_trc_on;
385 HR_AU_SUPER_API.CREATE_SUPER_CONTRIBUTION
386 (p_validate => l_validate
387 ,P_EFFECTIVE_DATE => c.p1
388 ,p_business_group_id => p_business_group_id
389 ,P_ORIGINAL_ENTRY_ID => L_ORIGINAL_ENTRY_ID
390 ,P_ASSIGNMENT_ID => L_ASSIGNMENT_ID
391 ,P_ENTRY_TYPE => c.p2
392 ,P_COST_ALLOCATION_KEYFLEX_ID => L_COST_ALLOCATION_KEYFLEX_ID
393 ,P_UPDATING_ACTION_ID => L_UPDATING_ACTION_ID
394 ,P_COMMENT_ID => L_COMMENT_ID
395 ,P_REASON => c.p3
396 ,P_TARGET_ENTRY_ID => L_TARGET_ENTRY_ID
397 ,P_SUBPRIORITY => c.p4
398 ,P_DATE_EARNED => c.p5
399 ,P_SUPER_FUND_NAME => c.p6
400 ,P_ATTRIBUTE_CATEGORY => c.p7
401 ,P_ATTRIBUTE1 => c.p8
402 ,P_ATTRIBUTE2 => c.p9
403 ,P_ATTRIBUTE3 => c.p10
404 ,P_ATTRIBUTE4 => c.p11
405 ,P_ATTRIBUTE5 => c.p12
406 ,P_ATTRIBUTE6 => c.p13
407 ,P_ATTRIBUTE7 => c.p14
408 ,P_ATTRIBUTE8 => c.p15
409 ,P_ATTRIBUTE9 => c.p16
410 ,P_ATTRIBUTE10 => c.p17
411 ,P_ATTRIBUTE11 => c.p18
412 ,P_ATTRIBUTE12 => c.p19
413 ,P_ATTRIBUTE13 => c.p20
417 ,P_ATTRIBUTE17 => c.p24
414 ,P_ATTRIBUTE14 => c.p21
415 ,P_ATTRIBUTE15 => c.p22
416 ,P_ATTRIBUTE16 => c.p23
418 ,P_ATTRIBUTE18 => c.p25
419 ,P_ATTRIBUTE19 => c.p26
420 ,P_ATTRIBUTE20 => c.p27
421 ,P_PAY_VALUE => c.p28
422 ,P_MEMBER_NUMBER => c.p29
423 ,P_SG_AMOUNT => c.p30
424 ,P_SG_PERCENT => c.p31
425 ,P_NON_SG_AMOUNT => c.p32
426 ,P_NON_SG_PERCENT => c.p33
427 ,P_EFFECTIVE_START_DATE => c.p34
428 ,P_EFFECTIVE_END_DATE => c.p35
429 ,P_ELEMENT_ENTRY_ID => L_ELEMENT_ENTRY_ID
430 ,P_OBJECT_VERSION_NUMBER => c.p37
431 ,P_CREATE_WARNING => L_CREATE_WARNING);
432 hr_data_pump.api_trc_off;
433 --
434 iuk(p_batch_line_id,c.p36,L_ELEMENT_ENTRY_ID);
435 --
436 if L_CREATE_WARNING then
437 c.p38 := 'TRUE';
438 else
439 c.p38 := 'FALSE';
440 end if;
441 --
442 update hr_pump_batch_lines l set
443 l.pval034 = decode(c.p34,null,cn,dc(c.p34)),
444 l.pval035 = decode(c.p35,null,cn,dc(c.p35)),
445 l.pval036 = decode(c.p36,null,cn,c.p36),
446 l.pval037 = decode(c.p37,null,cn,c.p37),
447 l.pval038 = decode(c.p38,null,cn,c.p38)
448 where l.rowid = c.myrowid;
449 --
450 close cr;
451 --
452 hr_data_pump.exit('call');
453 exception
454  when hr_multi_message.error_message_exist then
455    if cr%isopen then
456     close cr;
457    end if;
458    hr_pump_utils.set_multi_msg_error_flag(true);
459  when others then
460  if cr%isopen then
461   close cr;
462  end if;
463  raise;
464 end call;
465 end hrdpp_CREATE_SUPER_CONTRIBUTIO;