DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_CREATE_US_PERSON_ADDRESS

Source


1 package body hrdpp_CREATE_US_PERSON_ADDRESS as
2 /*
3  * Generated by hr_pump_meta_mapper at: 2007/01/04 02:01:16
4  * Generated for API: HR_PERSON_ADDRESS_API.CREATE_US_PERSON_ADDRESS
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_PRADD_OVLAPVAL_OVERRIDE in boolean default null
84 ,P_VALIDATE_COUNTY in boolean default null
85 ,P_PRIMARY_FLAG in varchar2
86 ,P_DATE_FROM in date
87 ,P_DATE_TO in date default null
88 ,P_ADDRESS_TYPE in varchar2 default null
89 ,P_COMMENTS in long default null
90 ,P_ADDRESS_LINE1 in varchar2
91 ,P_ADDRESS_LINE2 in varchar2 default null
92 ,P_ADDRESS_LINE3 in varchar2 default null
93 ,P_CITY in varchar2 default null
94 ,P_STATE in varchar2 default null
95 ,P_ZIP_CODE in varchar2 default null
96 ,P_COUNTY in varchar2 default null
97 ,P_TELEPHONE_NUMBER_1 in varchar2 default null
98 ,P_TELEPHONE_NUMBER_2 in varchar2 default null
99 ,P_ADDR_ATTRIBUTE_CATEGORY in varchar2 default null
100 ,P_ADDR_ATTRIBUTE1 in varchar2 default null
101 ,P_ADDR_ATTRIBUTE2 in varchar2 default null
102 ,P_ADDR_ATTRIBUTE3 in varchar2 default null
103 ,P_ADDR_ATTRIBUTE4 in varchar2 default null
104 ,P_ADDR_ATTRIBUTE5 in varchar2 default null
105 ,P_ADDR_ATTRIBUTE6 in varchar2 default null
106 ,P_ADDR_ATTRIBUTE7 in varchar2 default null
107 ,P_ADDR_ATTRIBUTE8 in varchar2 default null
108 ,P_ADDR_ATTRIBUTE9 in varchar2 default null
109 ,P_ADDR_ATTRIBUTE10 in varchar2 default null
110 ,P_ADDR_ATTRIBUTE11 in varchar2 default null
111 ,P_ADDR_ATTRIBUTE12 in varchar2 default null
112 ,P_ADDR_ATTRIBUTE13 in varchar2 default null
113 ,P_ADDR_ATTRIBUTE14 in varchar2 default null
114 ,P_ADDR_ATTRIBUTE15 in varchar2 default null
115 ,P_ADDR_ATTRIBUTE16 in varchar2 default null
116 ,P_ADDR_ATTRIBUTE17 in varchar2 default null
117 ,P_ADDR_ATTRIBUTE18 in varchar2 default null
118 ,P_ADDR_ATTRIBUTE19 in varchar2 default null
119 ,P_ADDR_ATTRIBUTE20 in varchar2 default null
120 ,P_ADD_INFORMATION13 in varchar2 default null
121 ,P_ADD_INFORMATION14 in varchar2 default null
122 ,P_ADD_INFORMATION15 in varchar2 default null
123 ,P_ADD_INFORMATION16 in varchar2 default null
124 ,P_ADD_INFORMATION17 in varchar2 default null
125 ,P_ADD_INFORMATION18 in varchar2 default null
126 ,P_ADD_INFORMATION19 in varchar2 default null
127 ,P_ADD_INFORMATION20 in varchar2 default null
128 ,P_PARTY_ID in number default null
129 ,P_ADDRESS_USER_KEY in varchar2
130 ,P_PERSON_USER_KEY in varchar2 default null
131 ,P_COUNTRY in varchar2) is
132 blid number := p_data_pump_batch_line_id;
133  L_PRADD_OVLAPVAL_OVERRIDE varchar2(5);
134  L_VALIDATE_COUNTY varchar2(5);
135 begin
136 if P_PRADD_OVLAPVAL_OVERRIDE is null then
137  L_PRADD_OVLAPVAL_OVERRIDE := null;
138 elsif P_PRADD_OVLAPVAL_OVERRIDE then
139  L_PRADD_OVLAPVAL_OVERRIDE := 'TRUE';
140 else 
141  L_PRADD_OVLAPVAL_OVERRIDE := 'FALSE';
142 end if;
143 if P_VALIDATE_COUNTY is null then
144  L_VALIDATE_COUNTY := null;
145 elsif P_VALIDATE_COUNTY then
146  L_VALIDATE_COUNTY := 'TRUE';
147 else 
148  L_VALIDATE_COUNTY := 'FALSE';
149 end if;
150 if blid is not null then
151 delete from hr_pump_batch_lines where batch_line_id = blid;
152 delete from hr_pump_batch_exceptions
153 where source_type = 'BATCH_LINE' and source_id = blid;
154 end if;
155 insert into hr_pump_batch_lines
156 (batch_id
157 ,batch_line_id
158 ,business_group_name
159 ,api_module_id
160 ,line_status
161 ,user_sequence
162 ,link_value
163 ,pval001
164 ,pval002
165 ,pval003
166 ,pval004
167 ,pval005
168 ,pval006
169 ,pval007
170 ,plongval
171 ,pval009
172 ,pval010
173 ,pval011
174 ,pval012
175 ,pval013
176 ,pval014
177 ,pval015
178 ,pval016
179 ,pval017
180 ,pval018
181 ,pval019
182 ,pval020
183 ,pval021
184 ,pval022
185 ,pval023
186 ,pval024
187 ,pval025
188 ,pval026
189 ,pval027
190 ,pval028
191 ,pval029
192 ,pval030
193 ,pval031
194 ,pval032
195 ,pval033
196 ,pval034
197 ,pval035
198 ,pval036
199 ,pval037
200 ,pval038
201 ,pval039
202 ,pval040
203 ,pval041
204 ,pval042
205 ,pval043
206 ,pval044
207 ,pval045
208 ,pval046
209 ,pval047
210 ,pval048
211 ,pval050
212 ,pval051)
213 values
214 (p_batch_id
215 ,nvl(blid,hr_pump_batch_lines_s.nextval)
216 ,p_data_pump_business_grp_name
217 ,1378
218 ,'U'
219 ,p_user_sequence
220 ,p_link_value
221 ,dc(P_EFFECTIVE_DATE)
222 ,L_PRADD_OVLAPVAL_OVERRIDE
223 ,L_VALIDATE_COUNTY
224 ,P_PRIMARY_FLAG
225 ,dc(P_DATE_FROM)
226 ,dc(P_DATE_TO)
227 ,P_ADDRESS_TYPE
228 ,P_COMMENTS
229 ,P_ADDRESS_LINE1
230 ,P_ADDRESS_LINE2
231 ,P_ADDRESS_LINE3
232 ,P_CITY
233 ,P_STATE
234 ,P_ZIP_CODE
235 ,P_COUNTY
236 ,P_TELEPHONE_NUMBER_1
237 ,P_TELEPHONE_NUMBER_2
238 ,P_ADDR_ATTRIBUTE_CATEGORY
239 ,P_ADDR_ATTRIBUTE1
240 ,P_ADDR_ATTRIBUTE2
241 ,P_ADDR_ATTRIBUTE3
242 ,P_ADDR_ATTRIBUTE4
243 ,P_ADDR_ATTRIBUTE5
244 ,P_ADDR_ATTRIBUTE6
245 ,P_ADDR_ATTRIBUTE7
246 ,P_ADDR_ATTRIBUTE8
247 ,P_ADDR_ATTRIBUTE9
248 ,P_ADDR_ATTRIBUTE10
249 ,P_ADDR_ATTRIBUTE11
250 ,P_ADDR_ATTRIBUTE12
251 ,P_ADDR_ATTRIBUTE13
252 ,P_ADDR_ATTRIBUTE14
253 ,P_ADDR_ATTRIBUTE15
254 ,P_ADDR_ATTRIBUTE16
255 ,P_ADDR_ATTRIBUTE17
256 ,P_ADDR_ATTRIBUTE18
257 ,P_ADDR_ATTRIBUTE19
258 ,P_ADDR_ATTRIBUTE20
259 ,P_ADD_INFORMATION13
260 ,P_ADD_INFORMATION14
261 ,P_ADD_INFORMATION15
262 ,P_ADD_INFORMATION16
263 ,P_ADD_INFORMATION17
264 ,P_ADD_INFORMATION18
265 ,P_ADD_INFORMATION19
266 ,P_ADD_INFORMATION20
267 ,P_PARTY_ID
268 ,P_ADDRESS_USER_KEY
269 ,P_PERSON_USER_KEY
270 ,P_COUNTRY);
271 end insert_batch_lines;
272 --
273 procedure call
274 (p_business_group_id in number,
275 p_batch_line_id     in number) is
276 cursor cr is
277 select l.rowid myrowid,
278 decode(l.pval001,cn,dn,d(l.pval001)) p1,
279 decode(l.pval002,cn,vn,vn,null,l.pval002) p2,
280 l.pval002 d2,
281 decode(l.pval003,cn,vn,vn,null,l.pval003) p3,
282 l.pval003 d3,
283 decode(l.pval004,cn,vn,
284  hr_pump_get.gl(l.pval004,'YES_NO',d(l.pval001),vn)) p4,
285 decode(l.pval005,cn,dn,d(l.pval005)) p5,
286 decode(l.pval006,cn,dn,vn,dn,d(l.pval006)) p6,
287 l.pval006 d6,
288 decode(l.pval007,cn,vn,vn,vn,
289  hr_pump_get.gl(l.pval007,'ADDRESS_TYPE',d(l.pval001),vn)) p7,
290 l.pval007 d7,
291 l.plongval plongval,
292 decode(l.pval009,cn,vn,l.pval009) p9,
293 decode(l.pval010,cn,vn,vn,vn,l.pval010) p10,
294 l.pval010 d10,
295 decode(l.pval011,cn,vn,vn,vn,l.pval011) p11,
296 l.pval011 d11,
297 decode(l.pval012,cn,vn,vn,vn,l.pval012) p12,
298 l.pval012 d12,
299 decode(l.pval013,cn,vn,vn,vn,
300  hr_pump_get.gl(l.pval013,'US_STATE',d(l.pval001),vn)) p13,
301 l.pval013 d13,
302 decode(l.pval014,cn,vn,vn,vn,l.pval014) p14,
303 l.pval014 d14,
304 decode(l.pval015,cn,vn,vn,vn,l.pval015) p15,
305 l.pval015 d15,
306 decode(l.pval016,cn,vn,vn,vn,l.pval016) p16,
307 l.pval016 d16,
308 decode(l.pval017,cn,vn,vn,vn,l.pval017) p17,
309 l.pval017 d17,
310 decode(l.pval018,cn,vn,vn,vn,l.pval018) p18,
311 l.pval018 d18,
312 decode(l.pval019,cn,vn,vn,vn,l.pval019) p19,
313 l.pval019 d19,
314 decode(l.pval020,cn,vn,vn,vn,l.pval020) p20,
315 l.pval020 d20,
316 decode(l.pval021,cn,vn,vn,vn,l.pval021) p21,
317 l.pval021 d21,
318 decode(l.pval022,cn,vn,vn,vn,l.pval022) p22,
319 l.pval022 d22,
320 decode(l.pval023,cn,vn,vn,vn,l.pval023) p23,
321 l.pval023 d23,
322 decode(l.pval024,cn,vn,vn,vn,l.pval024) p24,
323 l.pval024 d24,
324 decode(l.pval025,cn,vn,vn,vn,l.pval025) p25,
325 l.pval025 d25,
326 decode(l.pval026,cn,vn,vn,vn,l.pval026) p26,
327 l.pval026 d26,
328 decode(l.pval027,cn,vn,vn,vn,l.pval027) p27,
329 l.pval027 d27,
330 decode(l.pval028,cn,vn,vn,vn,l.pval028) p28,
331 l.pval028 d28,
332 decode(l.pval029,cn,vn,vn,vn,l.pval029) p29,
333 l.pval029 d29,
334 decode(l.pval030,cn,vn,vn,vn,l.pval030) p30,
335 l.pval030 d30,
336 decode(l.pval031,cn,vn,vn,vn,l.pval031) p31,
337 l.pval031 d31,
338 decode(l.pval032,cn,vn,vn,vn,l.pval032) p32,
339 l.pval032 d32,
340 decode(l.pval033,cn,vn,vn,vn,l.pval033) p33,
341 l.pval033 d33,
342 decode(l.pval034,cn,vn,vn,vn,l.pval034) p34,
343 l.pval034 d34,
344 decode(l.pval035,cn,vn,vn,vn,l.pval035) p35,
345 l.pval035 d35,
346 decode(l.pval036,cn,vn,vn,vn,l.pval036) p36,
347 l.pval036 d36,
348 decode(l.pval037,cn,vn,vn,vn,l.pval037) p37,
349 l.pval037 d37,
350 decode(l.pval038,cn,vn,vn,vn,l.pval038) p38,
351 l.pval038 d38,
352 decode(l.pval039,cn,vn,vn,vn,l.pval039) p39,
353 l.pval039 d39,
354 decode(l.pval040,cn,vn,vn,vn,l.pval040) p40,
355 l.pval040 d40,
356 decode(l.pval041,cn,vn,vn,vn,l.pval041) p41,
357 l.pval041 d41,
358 decode(l.pval042,cn,vn,vn,vn,l.pval042) p42,
359 l.pval042 d42,
360 decode(l.pval043,cn,vn,vn,vn,l.pval043) p43,
361 l.pval043 d43,
362 decode(l.pval044,cn,vn,vn,vn,l.pval044) p44,
363 l.pval044 d44,
364 decode(l.pval045,cn,vn,vn,vn,l.pval045) p45,
365 l.pval045 d45,
366 decode(l.pval046,cn,vn,vn,vn,l.pval046) p46,
367 l.pval046 d46,
368 decode(l.pval047,cn,nn,vn,nn,n(l.pval047)) p47,
369 l.pval047 d47,
370 l.pval048 p48,
371 l.pval049 p49,
372 decode(l.pval050,cn,vn,vn,vn,l.pval050) p50,
373 l.pval050 d50,
374 decode(l.pval051,cn,vn,l.pval051) p51
375 from hr_pump_batch_lines l
376 where l.batch_line_id = p_batch_line_id;
377 --
378 c cr%rowtype;
379 l_validate boolean := false;
380 L_PRADD_OVLAPVAL_OVERRIDE boolean;
381 L_VALIDATE_COUNTY boolean;
382 L_COMMENTS varchar2(32767);
383 L_ADDRESS_ID number;
384 L_PERSON_ID number;
385 L_COUNTRY varchar2(2000);
386 --
387 begin
388 hr_data_pump.entry('call');
389 open cr;
390 fetch cr into c;
391 if cr%notfound then
392 hr_utility.set_message(800,'HR_50326_DP_NO_ROW');
393 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
394 hr_utility.set_message_token('COLUMN','P_BATCH_LINE_ID');
395 hr_utility.set_message_token('VALUE',p_batch_line_id);
396 hr_utility.raise_error;
397 end if;
398 --
399 if upper(c.p2) = 'TRUE' then
400 L_PRADD_OVLAPVAL_OVERRIDE := true;
401 elsif upper(c.p2) = 'FALSE' then
402 L_PRADD_OVLAPVAL_OVERRIDE := false;
403 elsif c.p2 is not null then
404 hr_utility.set_message(800,'HR_50327_DP_TYPE_ERR');
405 hr_utility.set_message_token('TYPE','BOOLEAN');
406 hr_utility.set_message_token('PARAMETER','P_PRADD_OVLAPVAL_OVERRIDE');
407 hr_utility.set_message_token('VALUE',c.p2);
408 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
409 hr_utility.raise_error;
410 end if;
411 --
412 if upper(c.p3) = 'TRUE' then
413 L_VALIDATE_COUNTY := true;
414 elsif upper(c.p3) = 'FALSE' then
415 L_VALIDATE_COUNTY := false;
416 elsif c.p3 is not null then
417 hr_utility.set_message(800,'HR_50327_DP_TYPE_ERR');
418 hr_utility.set_message_token('TYPE','BOOLEAN');
419 hr_utility.set_message_token('PARAMETER','P_VALIDATE_COUNTY');
420 hr_utility.set_message_token('VALUE',c.p3);
421 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
422 hr_utility.raise_error;
423 end if;
424 --
425 L_COMMENTS := c.plongval;
426 if L_COMMENTS = cn then
427 L_COMMENTS := null;
428 end if;
429 --
430 if c.p50 is null then
431 L_PERSON_ID:=nn;
432 else
433 L_PERSON_ID := 
434 hr_pump_get.get_person_id
435 (P_PERSON_USER_KEY => c.p50);
436 end if;
437 --
438 if c.p51 is null then
439 L_COUNTRY:=vn;
440 else
441 L_COUNTRY := 
442 hr_pump_get.GET_COUNTRY
443 (P_COUNTRY => c.p51);
444 end if;
445 --
446 hr_data_pump.api_trc_on;
447 HR_PERSON_ADDRESS_API.CREATE_US_PERSON_ADDRESS
448 (p_validate => l_validate
449 ,P_EFFECTIVE_DATE => c.p1
450 ,P_PRADD_OVLAPVAL_OVERRIDE => L_PRADD_OVLAPVAL_OVERRIDE
451 ,P_VALIDATE_COUNTY => L_VALIDATE_COUNTY
452 ,P_PERSON_ID => L_PERSON_ID
453 ,P_PRIMARY_FLAG => c.p4
454 ,P_DATE_FROM => c.p5
455 ,P_DATE_TO => c.p6
456 ,P_ADDRESS_TYPE => c.p7
457 ,P_COMMENTS => L_COMMENTS
458 ,P_ADDRESS_LINE1 => c.p9
459 ,P_ADDRESS_LINE2 => c.p10
460 ,P_ADDRESS_LINE3 => c.p11
461 ,P_CITY => c.p12
462 ,P_STATE => c.p13
463 ,P_ZIP_CODE => c.p14
464 ,P_COUNTY => c.p15
465 ,P_COUNTRY => L_COUNTRY
466 ,P_TELEPHONE_NUMBER_1 => c.p16
467 ,P_TELEPHONE_NUMBER_2 => c.p17
468 ,P_ADDR_ATTRIBUTE_CATEGORY => c.p18
469 ,P_ADDR_ATTRIBUTE1 => c.p19
470 ,P_ADDR_ATTRIBUTE2 => c.p20
471 ,P_ADDR_ATTRIBUTE3 => c.p21
472 ,P_ADDR_ATTRIBUTE4 => c.p22
473 ,P_ADDR_ATTRIBUTE5 => c.p23
474 ,P_ADDR_ATTRIBUTE6 => c.p24
475 ,P_ADDR_ATTRIBUTE7 => c.p25
476 ,P_ADDR_ATTRIBUTE8 => c.p26
477 ,P_ADDR_ATTRIBUTE9 => c.p27
478 ,P_ADDR_ATTRIBUTE10 => c.p28
479 ,P_ADDR_ATTRIBUTE11 => c.p29
480 ,P_ADDR_ATTRIBUTE12 => c.p30
481 ,P_ADDR_ATTRIBUTE13 => c.p31
482 ,P_ADDR_ATTRIBUTE14 => c.p32
483 ,P_ADDR_ATTRIBUTE15 => c.p33
484 ,P_ADDR_ATTRIBUTE16 => c.p34
485 ,P_ADDR_ATTRIBUTE17 => c.p35
486 ,P_ADDR_ATTRIBUTE18 => c.p36
487 ,P_ADDR_ATTRIBUTE19 => c.p37
488 ,P_ADDR_ATTRIBUTE20 => c.p38
489 ,P_ADD_INFORMATION13 => c.p39
490 ,P_ADD_INFORMATION14 => c.p40
491 ,P_ADD_INFORMATION15 => c.p41
492 ,P_ADD_INFORMATION16 => c.p42
493 ,P_ADD_INFORMATION17 => c.p43
494 ,P_ADD_INFORMATION18 => c.p44
495 ,P_ADD_INFORMATION19 => c.p45
496 ,P_ADD_INFORMATION20 => c.p46
497 ,P_PARTY_ID => c.p47
498 ,P_ADDRESS_ID => L_ADDRESS_ID
499 ,P_OBJECT_VERSION_NUMBER => c.p49);
500 hr_data_pump.api_trc_off;
501 --
502 iuk(p_batch_line_id,c.p48,L_ADDRESS_ID);
503 --
504 update hr_pump_batch_lines l set
505 l.pval048 = decode(c.p48,null,cn,c.p48),
506 l.pval049 = decode(c.p49,null,cn,c.p49)
507 where l.rowid = c.myrowid;
508 --
509 close cr;
510 --
511 hr_data_pump.exit('call');
512 exception
513  when hr_multi_message.error_message_exist then
514    if cr%isopen then
515     close cr;
516    end if;
517    hr_pump_utils.set_multi_msg_error_flag(true);
518  when others then
519  if cr%isopen then
520   close cr;
521  end if;
522  raise;
523 end call;
524 end hrdpp_CREATE_US_PERSON_ADDRESS;