DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_UPDATE_LIFE_EVENT_REASON

Source


1 package body hrdpp_UPDATE_LIFE_EVENT_REASON as
2 /*
3  * Generated by hr_pump_meta_mapper at: 2007/01/04 02:01:30
4  * Generated for API: ben_life_event_reason_api.UPDATE_LIFE_EVENT_REASON
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_NAME in varchar2 default null
83 ,P_TYP_CD in varchar2 default null
84 ,P_LF_EVT_OPER_CD in varchar2 default null
85 ,P_SHORT_NAME in varchar2 default null
86 ,P_SHORT_CODE in varchar2 default null
87 ,P_PTNL_LER_TRTMT_CD in varchar2 default null
88 ,P_CK_RLTD_PER_ELIG_FLAG in varchar2 default null
89 ,P_LER_EVAL_RL in number default null
90 ,I_LER_EVAL_RL in varchar2 default 'N'
91 ,P_CM_APLY_FLAG in varchar2 default null
92 ,P_OVRIDG_LE_FLAG in varchar2 default null
93 ,P_QUALG_EVT_FLAG in varchar2 default null
94 ,P_WHN_TO_PRCS_CD in varchar2 default null
95 ,P_DESC_TXT in varchar2 default null
96 ,P_TMLNS_EVAL_CD in varchar2 default null
97 ,P_TMLNS_PERD_CD in varchar2 default null
98 ,P_TMLNS_DYS_NUM in number default null
99 ,I_TMLNS_DYS_NUM in varchar2 default 'N'
100 ,P_TMLNS_PERD_RL in number default null
101 ,I_TMLNS_PERD_RL in varchar2 default 'N'
102 ,P_OCRD_DT_DET_CD in varchar2 default null
103 ,P_LER_STAT_CD in varchar2 default null
104 ,P_SLCTBL_SLF_SVC_CD in varchar2 default null
105 ,P_LER_ATTRIBUTE_CATEGORY in varchar2 default null
106 ,P_LER_ATTRIBUTE1 in varchar2 default null
107 ,P_LER_ATTRIBUTE2 in varchar2 default null
108 ,P_LER_ATTRIBUTE3 in varchar2 default null
109 ,P_LER_ATTRIBUTE4 in varchar2 default null
110 ,P_LER_ATTRIBUTE5 in varchar2 default null
111 ,P_LER_ATTRIBUTE6 in varchar2 default null
112 ,P_LER_ATTRIBUTE7 in varchar2 default null
113 ,P_LER_ATTRIBUTE8 in varchar2 default null
114 ,P_LER_ATTRIBUTE9 in varchar2 default null
115 ,P_LER_ATTRIBUTE10 in varchar2 default null
116 ,P_LER_ATTRIBUTE11 in varchar2 default null
117 ,P_LER_ATTRIBUTE12 in varchar2 default null
118 ,P_LER_ATTRIBUTE13 in varchar2 default null
119 ,P_LER_ATTRIBUTE14 in varchar2 default null
120 ,P_LER_ATTRIBUTE15 in varchar2 default null
121 ,P_LER_ATTRIBUTE16 in varchar2 default null
122 ,P_LER_ATTRIBUTE17 in varchar2 default null
123 ,P_LER_ATTRIBUTE18 in varchar2 default null
124 ,P_LER_ATTRIBUTE19 in varchar2 default null
125 ,P_LER_ATTRIBUTE20 in varchar2 default null
126 ,P_LER_ATTRIBUTE21 in varchar2 default null
127 ,P_LER_ATTRIBUTE22 in varchar2 default null
128 ,P_LER_ATTRIBUTE23 in varchar2 default null
129 ,P_LER_ATTRIBUTE24 in varchar2 default null
130 ,P_LER_ATTRIBUTE25 in varchar2 default null
131 ,P_LER_ATTRIBUTE26 in varchar2 default null
132 ,P_LER_ATTRIBUTE27 in varchar2 default null
133 ,P_LER_ATTRIBUTE28 in varchar2 default null
134 ,P_LER_ATTRIBUTE29 in varchar2 default null
135 ,P_LER_ATTRIBUTE30 in varchar2 default null
136 ,P_EFFECTIVE_DATE in date
137 ,P_DATETRACK_MODE in varchar2
138 ,P_LIFE_EVENT_REASON in varchar2) is
139 blid number := p_data_pump_batch_line_id;
140 begin
141 if blid is not null then
142 delete from hr_pump_batch_lines where batch_line_id = blid;
143 delete from hr_pump_batch_exceptions
144 where source_type = 'BATCH_LINE' and source_id = blid;
145 end if;
146 insert into hr_pump_batch_lines
147 (batch_id
148 ,batch_line_id
149 ,business_group_name
150 ,api_module_id
151 ,line_status
152 ,user_sequence
153 ,link_value
154 ,pval003
155 ,pval004
156 ,pval005
157 ,pval006
158 ,pval007
159 ,pval008
160 ,pval009
161 ,pval010
162 ,pval011
163 ,pval012
164 ,pval013
165 ,pval014
166 ,pval015
167 ,pval016
168 ,pval017
169 ,pval018
170 ,pval019
171 ,pval020
172 ,pval021
173 ,pval022
174 ,pval023
175 ,pval024
176 ,pval025
177 ,pval026
178 ,pval027
179 ,pval028
180 ,pval029
181 ,pval030
182 ,pval031
183 ,pval032
184 ,pval033
185 ,pval034
186 ,pval035
187 ,pval036
188 ,pval037
189 ,pval038
190 ,pval039
191 ,pval040
192 ,pval041
193 ,pval042
194 ,pval043
195 ,pval044
196 ,pval045
197 ,pval046
198 ,pval047
199 ,pval048
200 ,pval049
201 ,pval050
202 ,pval051
203 ,pval052
204 ,pval053
205 ,pval054
206 ,pval055
207 ,pval056)
208 values
209 (p_batch_id
210 ,nvl(blid,hr_pump_batch_lines_s.nextval)
211 ,p_data_pump_business_grp_name
212 ,477
213 ,'U'
214 ,p_user_sequence
215 ,p_link_value
216 ,P_NAME
217 ,P_TYP_CD
218 ,P_LF_EVT_OPER_CD
219 ,P_SHORT_NAME
220 ,P_SHORT_CODE
221 ,P_PTNL_LER_TRTMT_CD
222 ,P_CK_RLTD_PER_ELIG_FLAG
223 ,nd(P_LER_EVAL_RL,I_LER_EVAL_RL)
224 ,P_CM_APLY_FLAG
225 ,P_OVRIDG_LE_FLAG
226 ,P_QUALG_EVT_FLAG
227 ,P_WHN_TO_PRCS_CD
228 ,P_DESC_TXT
229 ,P_TMLNS_EVAL_CD
230 ,P_TMLNS_PERD_CD
231 ,nd(P_TMLNS_DYS_NUM,I_TMLNS_DYS_NUM)
232 ,nd(P_TMLNS_PERD_RL,I_TMLNS_PERD_RL)
233 ,P_OCRD_DT_DET_CD
234 ,P_LER_STAT_CD
235 ,P_SLCTBL_SLF_SVC_CD
236 ,P_LER_ATTRIBUTE_CATEGORY
237 ,P_LER_ATTRIBUTE1
238 ,P_LER_ATTRIBUTE2
239 ,P_LER_ATTRIBUTE3
240 ,P_LER_ATTRIBUTE4
241 ,P_LER_ATTRIBUTE5
242 ,P_LER_ATTRIBUTE6
243 ,P_LER_ATTRIBUTE7
244 ,P_LER_ATTRIBUTE8
245 ,P_LER_ATTRIBUTE9
246 ,P_LER_ATTRIBUTE10
247 ,P_LER_ATTRIBUTE11
248 ,P_LER_ATTRIBUTE12
249 ,P_LER_ATTRIBUTE13
250 ,P_LER_ATTRIBUTE14
251 ,P_LER_ATTRIBUTE15
252 ,P_LER_ATTRIBUTE16
253 ,P_LER_ATTRIBUTE17
254 ,P_LER_ATTRIBUTE18
255 ,P_LER_ATTRIBUTE19
256 ,P_LER_ATTRIBUTE20
257 ,P_LER_ATTRIBUTE21
258 ,P_LER_ATTRIBUTE22
259 ,P_LER_ATTRIBUTE23
260 ,P_LER_ATTRIBUTE24
261 ,P_LER_ATTRIBUTE25
262 ,P_LER_ATTRIBUTE26
263 ,P_LER_ATTRIBUTE27
264 ,P_LER_ATTRIBUTE28
265 ,P_LER_ATTRIBUTE29
266 ,P_LER_ATTRIBUTE30
267 ,dc(P_EFFECTIVE_DATE)
268 ,P_DATETRACK_MODE
269 ,P_LIFE_EVENT_REASON);
270 end insert_batch_lines;
271 --
272 procedure call
273 (p_business_group_id in number,
274 p_batch_line_id     in number) is
275 cursor cr is
276 select l.rowid myrowid,
277 decode(l.pval001,cn,dn,d(l.pval001)) p1,
278 decode(l.pval002,cn,dn,d(l.pval002)) p2,
279 decode(l.pval003,cn,vn,vn,vh,l.pval003) p3,
280 l.pval003 d3,
281 decode(l.pval004,cn,vn,vn,vh,
282  hr_pump_get.gl(l.pval004,'BEN_LER_TYP',d(l.pval054),vn)) p4,
283 l.pval004 d4,
284 decode(l.pval005,cn,vn,vn,vh,l.pval005) p5,
285 l.pval005 d5,
286 decode(l.pval006,cn,vn,vn,vh,l.pval006) p6,
287 l.pval006 d6,
288 decode(l.pval007,cn,vn,vn,vh,l.pval007) p7,
289 l.pval007 d7,
290 decode(l.pval008,cn,vn,vn,vh,
291  hr_pump_get.gl(l.pval008,'BEN_PTNL_LER_TRTMT',d(l.pval054),vn)) p8,
292 l.pval008 d8,
293 decode(l.pval009,cn,vn,vn,vh,
294  hr_pump_get.gl(l.pval009,'YES_NO',d(l.pval054),vn)) p9,
295 l.pval009 d9,
296 decode(l.pval010,cn,nn,vn,nh,n(l.pval010)) p10,
297 l.pval010 d10,
298 decode(l.pval011,cn,vn,vn,vh,
299  hr_pump_get.gl(l.pval011,'YES_NO',d(l.pval054),vn)) p11,
300 l.pval011 d11,
301 decode(l.pval012,cn,vn,vn,vh,
302  hr_pump_get.gl(l.pval012,'YES_NO',d(l.pval054),vn)) p12,
303 l.pval012 d12,
304 decode(l.pval013,cn,vn,vn,vh,
305  hr_pump_get.gl(l.pval013,'YES_NO',d(l.pval054),vn)) p13,
306 l.pval013 d13,
307 decode(l.pval014,cn,vn,vn,vh,
308  hr_pump_get.gl(l.pval014,'BEN_WHN_TO_PRCS_LER',d(l.pval054),vn)) p14,
309 l.pval014 d14,
310 decode(l.pval015,cn,vn,vn,vh,l.pval015) p15,
311 l.pval015 d15,
312 decode(l.pval016,cn,vn,vn,vh,
313  hr_pump_get.gl(l.pval016,'BEN_LER_TMLNS_EVAL',d(l.pval054),vn)) p16,
314 l.pval016 d16,
315 decode(l.pval017,cn,vn,vn,vh,
316  hr_pump_get.gl(l.pval017,'BEN_LER_TMLNS_PERD',d(l.pval054),vn)) p17,
317 l.pval017 d17,
321 l.pval019 d19,
318 decode(l.pval018,cn,nn,vn,nh,n(l.pval018)) p18,
319 l.pval018 d18,
320 decode(l.pval019,cn,nn,vn,nh,n(l.pval019)) p19,
322 decode(l.pval020,cn,vn,vn,vh,
323  hr_pump_get.gl(l.pval020,'BEN_OCRD_DT_DET',d(l.pval054),vn)) p20,
324 l.pval020 d20,
325 decode(l.pval021,cn,vn,vn,vh,l.pval021) p21,
326 l.pval021 d21,
327 decode(l.pval022,cn,vn,vn,vh,
328  hr_pump_get.gl(l.pval022,'BEN_SLCTBL_SLF_SVC_CD',d(l.pval054),vn)) p22,
329 l.pval022 d22,
330 decode(l.pval023,cn,vn,vn,vh,l.pval023) p23,
331 l.pval023 d23,
332 decode(l.pval024,cn,vn,vn,vh,l.pval024) p24,
333 l.pval024 d24,
334 decode(l.pval025,cn,vn,vn,vh,l.pval025) p25,
335 l.pval025 d25,
336 decode(l.pval026,cn,vn,vn,vh,l.pval026) p26,
337 l.pval026 d26,
338 decode(l.pval027,cn,vn,vn,vh,l.pval027) p27,
339 l.pval027 d27,
340 decode(l.pval028,cn,vn,vn,vh,l.pval028) p28,
341 l.pval028 d28,
342 decode(l.pval029,cn,vn,vn,vh,l.pval029) p29,
343 l.pval029 d29,
344 decode(l.pval030,cn,vn,vn,vh,l.pval030) p30,
345 l.pval030 d30,
346 decode(l.pval031,cn,vn,vn,vh,l.pval031) p31,
347 l.pval031 d31,
348 decode(l.pval032,cn,vn,vn,vh,l.pval032) p32,
349 l.pval032 d32,
350 decode(l.pval033,cn,vn,vn,vh,l.pval033) p33,
351 l.pval033 d33,
352 decode(l.pval034,cn,vn,vn,vh,l.pval034) p34,
353 l.pval034 d34,
354 decode(l.pval035,cn,vn,vn,vh,l.pval035) p35,
355 l.pval035 d35,
356 decode(l.pval036,cn,vn,vn,vh,l.pval036) p36,
357 l.pval036 d36,
358 decode(l.pval037,cn,vn,vn,vh,l.pval037) p37,
359 l.pval037 d37,
360 decode(l.pval038,cn,vn,vn,vh,l.pval038) p38,
361 l.pval038 d38,
362 decode(l.pval039,cn,vn,vn,vh,l.pval039) p39,
363 l.pval039 d39,
364 decode(l.pval040,cn,vn,vn,vh,l.pval040) p40,
365 l.pval040 d40,
366 decode(l.pval041,cn,vn,vn,vh,l.pval041) p41,
367 l.pval041 d41,
368 decode(l.pval042,cn,vn,vn,vh,l.pval042) p42,
369 l.pval042 d42,
370 decode(l.pval043,cn,vn,vn,vh,l.pval043) p43,
371 l.pval043 d43,
372 decode(l.pval044,cn,vn,vn,vh,l.pval044) p44,
373 l.pval044 d44,
374 decode(l.pval045,cn,vn,vn,vh,l.pval045) p45,
375 l.pval045 d45,
376 decode(l.pval046,cn,vn,vn,vh,l.pval046) p46,
377 l.pval046 d46,
378 decode(l.pval047,cn,vn,vn,vh,l.pval047) p47,
379 l.pval047 d47,
380 decode(l.pval048,cn,vn,vn,vh,l.pval048) p48,
381 l.pval048 d48,
382 decode(l.pval049,cn,vn,vn,vh,l.pval049) p49,
383 l.pval049 d49,
384 decode(l.pval050,cn,vn,vn,vh,l.pval050) p50,
385 l.pval050 d50,
386 decode(l.pval051,cn,vn,vn,vh,l.pval051) p51,
387 l.pval051 d51,
388 decode(l.pval052,cn,vn,vn,vh,l.pval052) p52,
389 l.pval052 d52,
390 decode(l.pval053,cn,vn,vn,vh,l.pval053) p53,
391 l.pval053 d53,
392 decode(l.pval054,cn,dn,d(l.pval054)) p54,
393 decode(l.pval055,cn,vn,l.pval055) p55,
394 decode(l.pval056,cn,vn,l.pval056) p56
395 from hr_pump_batch_lines l
396 where l.batch_line_id = p_batch_line_id;
397 --
398 c cr%rowtype;
399 l_validate boolean := false;
400 L_LER_ID number;
401 L_OBJECT_VERSION_NUMBER number;
402 --
403 begin
404 hr_data_pump.entry('call');
405 open cr;
406 fetch cr into c;
407 if cr%notfound then
408 hr_utility.set_message(800,'HR_50326_DP_NO_ROW');
409 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
410 hr_utility.set_message_token('COLUMN','P_BATCH_LINE_ID');
411 hr_utility.set_message_token('VALUE',p_batch_line_id);
412 hr_utility.raise_error;
413 end if;
414 --
415 if c.p56 is null or
416 c.p54 is null then
417 L_LER_ID:=nn;
418 else
419 L_LER_ID := 
420 hr_pump_get.GET_LER_ID
421 (P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID
422 ,P_LIFE_EVENT_REASON => c.p56
423 ,P_EFFECTIVE_DATE => c.p54);
424 end if;
425 --
426 if c.p56 is null or
427 c.p54 is null then
428 L_OBJECT_VERSION_NUMBER:=nn;
429 else
430 L_OBJECT_VERSION_NUMBER := 
431 hr_pump_get.GET_LER_OVN
432 (P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID
433 ,P_LIFE_EVENT_REASON => c.p56
434 ,P_EFFECTIVE_DATE => c.p54);
435 end if;
436 --
437 hr_data_pump.api_trc_on;
438 ben_life_event_reason_api.UPDATE_LIFE_EVENT_REASON
439 (p_validate => l_validate
440 ,P_LER_ID => L_LER_ID
441 ,P_EFFECTIVE_START_DATE => c.p1
442 ,P_EFFECTIVE_END_DATE => c.p2
443 ,P_NAME => c.p3
444 ,p_business_group_id => p_business_group_id
445 ,P_TYP_CD => c.p4
446 ,P_LF_EVT_OPER_CD => c.p5
447 ,P_SHORT_NAME => c.p6
448 ,P_SHORT_CODE => c.p7
449 ,P_PTNL_LER_TRTMT_CD => c.p8
450 ,P_CK_RLTD_PER_ELIG_FLAG => c.p9
451 ,P_LER_EVAL_RL => c.p10
452 ,P_CM_APLY_FLAG => c.p11
453 ,P_OVRIDG_LE_FLAG => c.p12
457 ,P_TMLNS_EVAL_CD => c.p16
454 ,P_QUALG_EVT_FLAG => c.p13
455 ,P_WHN_TO_PRCS_CD => c.p14
456 ,P_DESC_TXT => c.p15
458 ,P_TMLNS_PERD_CD => c.p17
459 ,P_TMLNS_DYS_NUM => c.p18
460 ,P_TMLNS_PERD_RL => c.p19
461 ,P_OCRD_DT_DET_CD => c.p20
462 ,P_LER_STAT_CD => c.p21
463 ,P_SLCTBL_SLF_SVC_CD => c.p22
464 ,P_LER_ATTRIBUTE_CATEGORY => c.p23
465 ,P_LER_ATTRIBUTE1 => c.p24
466 ,P_LER_ATTRIBUTE2 => c.p25
467 ,P_LER_ATTRIBUTE3 => c.p26
468 ,P_LER_ATTRIBUTE4 => c.p27
469 ,P_LER_ATTRIBUTE5 => c.p28
470 ,P_LER_ATTRIBUTE6 => c.p29
471 ,P_LER_ATTRIBUTE7 => c.p30
472 ,P_LER_ATTRIBUTE8 => c.p31
473 ,P_LER_ATTRIBUTE9 => c.p32
474 ,P_LER_ATTRIBUTE10 => c.p33
475 ,P_LER_ATTRIBUTE11 => c.p34
476 ,P_LER_ATTRIBUTE12 => c.p35
477 ,P_LER_ATTRIBUTE13 => c.p36
478 ,P_LER_ATTRIBUTE14 => c.p37
479 ,P_LER_ATTRIBUTE15 => c.p38
480 ,P_LER_ATTRIBUTE16 => c.p39
481 ,P_LER_ATTRIBUTE17 => c.p40
482 ,P_LER_ATTRIBUTE18 => c.p41
483 ,P_LER_ATTRIBUTE19 => c.p42
484 ,P_LER_ATTRIBUTE20 => c.p43
485 ,P_LER_ATTRIBUTE21 => c.p44
486 ,P_LER_ATTRIBUTE22 => c.p45
487 ,P_LER_ATTRIBUTE23 => c.p46
488 ,P_LER_ATTRIBUTE24 => c.p47
489 ,P_LER_ATTRIBUTE25 => c.p48
490 ,P_LER_ATTRIBUTE26 => c.p49
491 ,P_LER_ATTRIBUTE27 => c.p50
492 ,P_LER_ATTRIBUTE28 => c.p51
493 ,P_LER_ATTRIBUTE29 => c.p52
494 ,P_LER_ATTRIBUTE30 => c.p53
495 ,P_OBJECT_VERSION_NUMBER => L_OBJECT_VERSION_NUMBER
496 ,P_EFFECTIVE_DATE => c.p54
497 ,P_DATETRACK_MODE => c.p55);
498 hr_data_pump.api_trc_off;
499 
500 --
501 update hr_pump_batch_lines l set
502 l.pval001 = decode(c.p1,null,cn,dc(c.p1)),
503 l.pval002 = decode(c.p2,null,cn,dc(c.p2))
504 where l.rowid = c.myrowid;
505 --
506 close cr;
507 --
508 hr_data_pump.exit('call');
509 exception
510  when hr_multi_message.error_message_exist then
511    if cr%isopen then
512     close cr;
513    end if;
514    hr_pump_utils.set_multi_msg_error_flag(true);
515  when others then
516  if cr%isopen then
517   close cr;
518  end if;
519  raise;
520 end call;
521 end hrdpp_UPDATE_LIFE_EVENT_REASON;