DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_UPDATE_MX_LOC_PERSON_ADD

Source


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