DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_CREATE_PERSON_ADDRESS

Source


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