DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_UPDATE_EMP_ASG_CRITERIA

Source


1 package body hrdpp_update_emp_asg_criteria as
2 /*
3  * Generated by hr_pump_meta_mapper at: 2007/01/04 02:01:47
4  * Generated for API: hr_assignment_api.update_emp_asg_criteria
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_DATETRACK_UPDATE_MODE in varchar2
84 ,P_CALLED_FROM_MASS_UPDATE in boolean default null
85 ,P_SEGMENT1 in varchar2 default null
86 ,P_SEGMENT2 in varchar2 default null
87 ,P_SEGMENT3 in varchar2 default null
88 ,P_SEGMENT4 in varchar2 default null
89 ,P_SEGMENT5 in varchar2 default null
90 ,P_SEGMENT6 in varchar2 default null
91 ,P_SEGMENT7 in varchar2 default null
92 ,P_SEGMENT8 in varchar2 default null
93 ,P_SEGMENT9 in varchar2 default null
94 ,P_SEGMENT10 in varchar2 default null
95 ,P_SEGMENT11 in varchar2 default null
96 ,P_SEGMENT12 in varchar2 default null
97 ,P_SEGMENT13 in varchar2 default null
98 ,P_SEGMENT14 in varchar2 default null
99 ,P_SEGMENT15 in varchar2 default null
100 ,P_SEGMENT16 in varchar2 default null
101 ,P_SEGMENT17 in varchar2 default null
102 ,P_SEGMENT18 in varchar2 default null
103 ,P_SEGMENT19 in varchar2 default null
104 ,P_SEGMENT20 in varchar2 default null
105 ,P_SEGMENT21 in varchar2 default null
106 ,P_SEGMENT22 in varchar2 default null
107 ,P_SEGMENT23 in varchar2 default null
108 ,P_SEGMENT24 in varchar2 default null
109 ,P_SEGMENT25 in varchar2 default null
110 ,P_SEGMENT26 in varchar2 default null
111 ,P_SEGMENT27 in varchar2 default null
112 ,P_SEGMENT28 in varchar2 default null
113 ,P_SEGMENT29 in varchar2 default null
114 ,P_SEGMENT30 in varchar2 default null
115 ,P_EMPLOYMENT_CATEGORY in varchar2 default null
116 ,P_CONCAT_SEGMENTS in varchar2 default null
117 ,P_SCL_SEGMENT1 in varchar2 default null
118 ,P_SPECIAL_CEILING_STEP_ID in number
119 ,P_PEOPLE_GROUP_ID in number
120 ,P_ASSIGNMENT_USER_KEY in varchar2
121 ,P_GRADE_NAME in varchar2 default null
122 ,P_POSITION_NAME in varchar2 default null
123 ,P_JOB_NAME in varchar2 default null
124 ,P_PAYROLL_NAME in varchar2 default null
125 ,P_LOCATION_CODE in varchar2 default null
126 ,P_LANGUAGE_CODE in varchar2 default null
127 ,P_ORGANIZATION_NAME in varchar2 default null
128 ,P_PAY_BASIS_NAME in varchar2 default null
129 ,P_CONTRACT_USER_KEY in varchar2 default null
130 ,P_ESTABLISHMENT_NAME in varchar2 default null
131 ,P_LOCATION in varchar2 default null
132 ,P_GRADE_LADDER_NAME in varchar2 default null
133 ,P_SVR_ASSIGNMENT_USER_KEY in varchar2 default null
134 ,P_CON_SEG_USER_NAME in varchar2) is
135 blid number := p_data_pump_batch_line_id;
136  L_CALLED_FROM_MASS_UPDATE varchar2(5);
137 begin
138 if P_CALLED_FROM_MASS_UPDATE is null then
139  L_CALLED_FROM_MASS_UPDATE := null;
140 elsif P_CALLED_FROM_MASS_UPDATE then
141  L_CALLED_FROM_MASS_UPDATE := 'TRUE';
142 else 
143  L_CALLED_FROM_MASS_UPDATE := 'FALSE';
144 end if;
145 if blid is not null then
146 delete from hr_pump_batch_lines where batch_line_id = blid;
147 delete from hr_pump_batch_exceptions
148 where source_type = 'BATCH_LINE' and source_id = blid;
149 end if;
150 insert into hr_pump_batch_lines
151 (batch_id
152 ,batch_line_id
153 ,business_group_name
154 ,api_module_id
155 ,line_status
156 ,user_sequence
157 ,link_value
158 ,pval001
159 ,pval002
160 ,pval003
161 ,pval004
162 ,pval005
163 ,pval006
164 ,pval007
165 ,pval008
166 ,pval009
167 ,pval010
168 ,pval011
169 ,pval012
170 ,pval013
171 ,pval014
172 ,pval015
173 ,pval016
174 ,pval017
175 ,pval018
176 ,pval019
177 ,pval020
178 ,pval021
179 ,pval022
180 ,pval023
181 ,pval024
182 ,pval025
183 ,pval026
184 ,pval027
185 ,pval028
186 ,pval029
187 ,pval030
188 ,pval031
189 ,pval032
190 ,pval033
191 ,pval034
192 ,pval035
193 ,pval036
194 ,pval037
195 ,pval038
196 ,pval049
197 ,pval050
198 ,pval051
199 ,pval052
200 ,pval053
201 ,pval054
202 ,pval055
203 ,pval056
204 ,pval057
205 ,pval058
206 ,pval059
207 ,pval060
208 ,pval061
209 ,pval062
210 ,pval063)
211 values
212 (p_batch_id
213 ,nvl(blid,hr_pump_batch_lines_s.nextval)
214 ,p_data_pump_business_grp_name
215 ,1206
216 ,'U'
217 ,p_user_sequence
218 ,p_link_value
219 ,dc(P_EFFECTIVE_DATE)
220 ,P_DATETRACK_UPDATE_MODE
221 ,L_CALLED_FROM_MASS_UPDATE
222 ,P_SEGMENT1
223 ,P_SEGMENT2
224 ,P_SEGMENT3
225 ,P_SEGMENT4
226 ,P_SEGMENT5
227 ,P_SEGMENT6
228 ,P_SEGMENT7
229 ,P_SEGMENT8
230 ,P_SEGMENT9
231 ,P_SEGMENT10
232 ,P_SEGMENT11
233 ,P_SEGMENT12
234 ,P_SEGMENT13
235 ,P_SEGMENT14
236 ,P_SEGMENT15
237 ,P_SEGMENT16
238 ,P_SEGMENT17
239 ,P_SEGMENT18
240 ,P_SEGMENT19
241 ,P_SEGMENT20
242 ,P_SEGMENT21
243 ,P_SEGMENT22
244 ,P_SEGMENT23
245 ,P_SEGMENT24
246 ,P_SEGMENT25
247 ,P_SEGMENT26
248 ,P_SEGMENT27
249 ,P_SEGMENT28
250 ,P_SEGMENT29
251 ,P_SEGMENT30
252 ,P_EMPLOYMENT_CATEGORY
253 ,P_CONCAT_SEGMENTS
254 ,P_SCL_SEGMENT1
255 ,P_SPECIAL_CEILING_STEP_ID
256 ,P_PEOPLE_GROUP_ID
257 ,P_ASSIGNMENT_USER_KEY
258 ,P_GRADE_NAME
259 ,P_POSITION_NAME
260 ,P_JOB_NAME
261 ,P_PAYROLL_NAME
262 ,P_LOCATION_CODE
263 ,P_LANGUAGE_CODE
264 ,P_ORGANIZATION_NAME
265 ,P_PAY_BASIS_NAME
266 ,P_CONTRACT_USER_KEY
267 ,P_ESTABLISHMENT_NAME
268 ,P_LOCATION
269 ,P_GRADE_LADDER_NAME
270 ,P_SVR_ASSIGNMENT_USER_KEY
271 ,P_CON_SEG_USER_NAME);
272 end insert_batch_lines;
273 --
274 procedure call
275 (p_business_group_id in number,
276 p_batch_line_id     in number) is
277 cursor cr is
278 select l.rowid myrowid,
279 decode(l.pval001,cn,dn,d(l.pval001)) p1,
280 decode(l.pval002,cn,vn,l.pval002) p2,
281 decode(l.pval003,cn,vn,vn,null,l.pval003) p3,
282 l.pval003 d3,
283 decode(l.pval004,cn,vn,vn,vh,l.pval004) p4,
284 l.pval004 d4,
285 decode(l.pval005,cn,vn,vn,vh,l.pval005) p5,
286 l.pval005 d5,
287 decode(l.pval006,cn,vn,vn,vh,l.pval006) p6,
288 l.pval006 d6,
289 decode(l.pval007,cn,vn,vn,vh,l.pval007) p7,
290 l.pval007 d7,
291 decode(l.pval008,cn,vn,vn,vh,l.pval008) p8,
292 l.pval008 d8,
293 decode(l.pval009,cn,vn,vn,vh,l.pval009) p9,
294 l.pval009 d9,
295 decode(l.pval010,cn,vn,vn,vh,l.pval010) p10,
296 l.pval010 d10,
297 decode(l.pval011,cn,vn,vn,vh,l.pval011) p11,
298 l.pval011 d11,
299 decode(l.pval012,cn,vn,vn,vh,l.pval012) p12,
300 l.pval012 d12,
301 decode(l.pval013,cn,vn,vn,vh,l.pval013) p13,
302 l.pval013 d13,
303 decode(l.pval014,cn,vn,vn,vh,l.pval014) p14,
304 l.pval014 d14,
305 decode(l.pval015,cn,vn,vn,vh,l.pval015) p15,
306 l.pval015 d15,
307 decode(l.pval016,cn,vn,vn,vh,l.pval016) p16,
308 l.pval016 d16,
309 decode(l.pval017,cn,vn,vn,vh,l.pval017) p17,
310 l.pval017 d17,
311 decode(l.pval018,cn,vn,vn,vh,l.pval018) p18,
312 l.pval018 d18,
313 decode(l.pval019,cn,vn,vn,vh,l.pval019) p19,
314 l.pval019 d19,
315 decode(l.pval020,cn,vn,vn,vh,l.pval020) p20,
316 l.pval020 d20,
317 decode(l.pval021,cn,vn,vn,vh,l.pval021) p21,
318 l.pval021 d21,
319 decode(l.pval022,cn,vn,vn,vh,l.pval022) p22,
320 l.pval022 d22,
321 decode(l.pval023,cn,vn,vn,vh,l.pval023) p23,
322 l.pval023 d23,
323 decode(l.pval024,cn,vn,vn,vh,l.pval024) p24,
324 l.pval024 d24,
325 decode(l.pval025,cn,vn,vn,vh,l.pval025) p25,
326 l.pval025 d25,
327 decode(l.pval026,cn,vn,vn,vh,l.pval026) p26,
328 l.pval026 d26,
329 decode(l.pval027,cn,vn,vn,vh,l.pval027) p27,
330 l.pval027 d27,
331 decode(l.pval028,cn,vn,vn,vh,l.pval028) p28,
332 l.pval028 d28,
333 decode(l.pval029,cn,vn,vn,vh,l.pval029) p29,
334 l.pval029 d29,
335 decode(l.pval030,cn,vn,vn,vh,l.pval030) p30,
336 l.pval030 d30,
337 decode(l.pval031,cn,vn,vn,vh,l.pval031) p31,
338 l.pval031 d31,
339 decode(l.pval032,cn,vn,vn,vh,l.pval032) p32,
340 l.pval032 d32,
341 decode(l.pval033,cn,vn,vn,vh,l.pval033) p33,
342 l.pval033 d33,
343 decode(l.pval034,cn,vn,vn,vh,
344  hr_pump_get.gl(l.pval034,'EMP_CAT',d(l.pval001),l.pval055)) p34,
345 l.pval034 d34,
346 decode(l.pval035,cn,vn,vn,vh,l.pval035) p35,
347 l.pval035 d35,
348 decode(l.pval036,cn,vn,vn,vh,l.pval036) p36,
349 l.pval036 d36,
350 decode(l.pval037,cn,nn,n(l.pval037)) p37,
351 decode(l.pval038,cn,nn,n(l.pval038)) p38,
352 l.pval039 p39,
353 decode(l.pval040,cn,dn,d(l.pval040)) p40,
354 decode(l.pval041,cn,dn,d(l.pval041)) p41,
355 l.pval042 p42,
356 l.pval043 p43,
357 l.pval044 p44,
358 l.pval045 p45,
359 l.pval046 p46,
360 l.pval047 p47,
361 l.pval048 p48,
362 decode(l.pval049,cn,vn,l.pval049) p49,
363 decode(l.pval050,cn,vn,vn,vh,l.pval050) p50,
364 l.pval050 d50,
365 decode(l.pval051,cn,vn,vn,vh,l.pval051) p51,
366 l.pval051 d51,
367 decode(l.pval052,cn,vn,vn,vh,l.pval052) p52,
368 l.pval052 d52,
369 decode(l.pval053,cn,vn,vn,vh,l.pval053) p53,
370 l.pval053 d53,
371 decode(l.pval054,cn,vn,vn,vh,l.pval054) p54,
372 l.pval054 d54,
373 decode(l.pval055,cn,vn,vn,vh,l.pval055) p55,
374 l.pval055 d55,
375 decode(l.pval056,cn,vn,vn,vh,l.pval056) p56,
376 l.pval056 d56,
377 decode(l.pval057,cn,vn,vn,vh,l.pval057) p57,
378 l.pval057 d57,
379 decode(l.pval058,cn,vn,vn,vn,l.pval058) p58,
380 l.pval058 d58,
381 decode(l.pval059,cn,vn,vn,vh,l.pval059) p59,
382 l.pval059 d59,
383 decode(l.pval060,cn,vn,vn,vh,l.pval060) p60,
384 l.pval060 d60,
385 decode(l.pval061,cn,vn,vn,vh,l.pval061) p61,
386 l.pval061 d61,
387 decode(l.pval062,cn,vn,vn,vn,l.pval062) p62,
388 l.pval062 d62,
389 decode(l.pval063,cn,vn,l.pval063) p63
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_CALLED_FROM_MASS_UPDATE boolean;
396 L_ORG_NOW_NO_MANAGER_WARNING boolean;
397 L_OTHER_MANAGER_WARNING boolean;
398 L_SPP_DELETE_WARNING boolean;
399 L_TAX_DISTRICT_CHANGED_WARNING boolean;
400 L_ASSIGNMENT_ID number;
401 L_GRADE_ID number;
402 L_POSITION_ID number;
403 L_JOB_ID number;
404 L_PAYROLL_ID number;
405 L_LOCATION_ID number;
406 L_ORGANIZATION_ID number;
407 L_PAY_BASIS_ID number;
408 L_CONTRACT_ID number;
409 L_ESTABLISHMENT_ID number;
410 L_GRADE_LADDER_PGM_ID number;
411 L_SUPERVISOR_ASSIGNMENT_ID number;
412 L_OBJECT_VERSION_NUMBER number;
413 L_SOFT_CODING_KEYFLEX_ID number;
414 --
415 begin
416 hr_data_pump.entry('call');
417 open cr;
418 fetch cr into c;
419 if cr%notfound then
420 hr_utility.set_message(800,'HR_50326_DP_NO_ROW');
421 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
422 hr_utility.set_message_token('COLUMN','P_BATCH_LINE_ID');
423 hr_utility.set_message_token('VALUE',p_batch_line_id);
424 hr_utility.raise_error;
425 end if;
426 --
427 if upper(c.p3) = 'TRUE' then
428 L_CALLED_FROM_MASS_UPDATE := true;
429 elsif upper(c.p3) = 'FALSE' then
430 L_CALLED_FROM_MASS_UPDATE := 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_CALLED_FROM_MASS_UPDATE');
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 if c.p49 is null then
441 L_ASSIGNMENT_ID:=nn;
442 else
443 L_ASSIGNMENT_ID := 
444 hr_pump_get.get_assignment_id
445 (P_ASSIGNMENT_USER_KEY => c.p49);
446 end if;
447 --
448 if c.d50=cn or
449 c.p1 is null then
450 L_GRADE_ID:=nn;
451 elsif c.d50 is null then 
452 L_GRADE_ID:=nh;
453 else
454 L_GRADE_ID := 
455 hr_pump_get.get_grade_id
456 (P_GRADE_NAME => c.p50
457 ,P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID
458 ,P_EFFECTIVE_DATE => c.p1);
459 end if;
460 --
461 if c.d51=cn or
462 c.p1 is null then
463 L_POSITION_ID:=nn;
464 elsif c.d51 is null then 
465 L_POSITION_ID:=nh;
466 else
467 L_POSITION_ID := 
468 hr_pump_get.get_position_id
469 (P_POSITION_NAME => c.p51
470 ,P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID
471 ,P_EFFECTIVE_DATE => c.p1);
472 end if;
473 --
474 if c.d52=cn or
475 c.p1 is null then
476 L_JOB_ID:=nn;
477 elsif c.d52 is null then 
478 L_JOB_ID:=nh;
479 else
480 L_JOB_ID := 
481 hr_pump_get.get_job_id
482 (P_JOB_NAME => c.p52
483 ,P_EFFECTIVE_DATE => c.p1
484 ,P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID);
485 end if;
486 --
487 if c.d53=cn or
488 c.p1 is null then
489 L_PAYROLL_ID:=nn;
490 elsif c.d53 is null then 
491 L_PAYROLL_ID:=nh;
492 else
493 L_PAYROLL_ID := 
494 hr_pump_get.get_payroll_id
495 (P_PAYROLL_NAME => c.p53
496 ,P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID
497 ,P_EFFECTIVE_DATE => c.p1);
498 end if;
499 --
500 if c.d54=cn or
501 c.d55=cn then
502 L_LOCATION_ID:=nn;
503 elsif c.d54 is null or
504 c.d55 is null then 
505 L_LOCATION_ID:=nh;
506 else
507 L_LOCATION_ID := 
508 hr_pump_get.get_location_id
509 (P_LOCATION_CODE => c.p54
510 ,P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID
511 ,P_LANGUAGE_CODE => c.p55);
512 end if;
513 --
514 if c.d56=cn or
515 c.p1 is null or
516 c.d55=cn then
517 L_ORGANIZATION_ID:=nn;
518 elsif c.d56 is null or
519 c.d55 is null then 
520 L_ORGANIZATION_ID:=nh;
524 (P_ORGANIZATION_NAME => c.p56
521 else
522 L_ORGANIZATION_ID := 
523 hr_pump_get.get_organization_id
525 ,P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID
526 ,P_EFFECTIVE_DATE => c.p1
527 ,P_LANGUAGE_CODE => c.p55);
528 end if;
529 --
530 if c.d57=cn then
531 L_PAY_BASIS_ID:=nn;
532 elsif c.d57 is null then 
533 L_PAY_BASIS_ID:=nh;
534 else
535 L_PAY_BASIS_ID := 
536 hr_pump_get.get_pay_basis_id
537 (P_PAY_BASIS_NAME => c.p57
538 ,P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID);
539 end if;
540 --
541 if c.d58=cn then
542 L_CONTRACT_ID:=nn;
543 elsif c.d58 is null then 
544 L_CONTRACT_ID:=nh;
545 else
546 L_CONTRACT_ID := 
547 hr_pump_get.get_contract_id
548 (P_CONTRACT_USER_KEY => c.p58);
549 end if;
550 --
551 if c.d59=cn or
552 c.d60=cn then
553 L_ESTABLISHMENT_ID:=nn;
554 elsif c.d59 is null or
555 c.d60 is null then 
556 L_ESTABLISHMENT_ID:=nh;
557 else
558 L_ESTABLISHMENT_ID := 
559 hr_pump_get.get_establishment_id
560 (P_ESTABLISHMENT_NAME => c.p59
561 ,P_LOCATION => c.p60);
562 end if;
563 --
564 if c.d61=cn or
565 c.p1 is null then
566 L_GRADE_LADDER_PGM_ID:=nn;
567 elsif c.d61 is null then 
568 L_GRADE_LADDER_PGM_ID:=nh;
569 else
570 L_GRADE_LADDER_PGM_ID := 
571 hr_pump_get.GET_GRADE_LADDER_PGM_ID
572 (P_GRADE_LADDER_NAME => c.p61
573 ,P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID
574 ,P_EFFECTIVE_DATE => c.p1);
575 end if;
576 --
577 if c.d62=cn then
578 L_SUPERVISOR_ASSIGNMENT_ID:=nn;
579 elsif c.d62 is null then 
580 L_SUPERVISOR_ASSIGNMENT_ID:=nh;
581 else
582 L_SUPERVISOR_ASSIGNMENT_ID := 
583 hr_pump_get.GET_SUPERVISOR_ASSIGNMENT_ID
584 (P_SVR_ASSIGNMENT_USER_KEY => c.p62);
585 end if;
586 --
587 if c.p49 is null or
588 c.p1 is null then
589 L_OBJECT_VERSION_NUMBER:=nn;
590 else
591 L_OBJECT_VERSION_NUMBER := 
592 hr_pump_get.GET_ASG_OVN
593 (P_ASSIGNMENT_USER_KEY => c.p49
594 ,P_EFFECTIVE_DATE => c.p1);
595 end if;
596 --
597 if c.p63 is null or
598 c.p1 is null then
599 L_SOFT_CODING_KEYFLEX_ID:=nn;
600 else
601 L_SOFT_CODING_KEYFLEX_ID := 
602 hr_pump_get.get_soft_coding_keyflex_id
603 (P_CON_SEG_USER_NAME => c.p63
604 ,P_EFFECTIVE_DATE => c.p1);
605 end if;
606 --
607 hr_data_pump.api_trc_on;
608 hr_assignment_api.update_emp_asg_criteria
609 (P_EFFECTIVE_DATE => c.p1
610 ,P_DATETRACK_UPDATE_MODE => c.p2
611 ,P_ASSIGNMENT_ID => L_ASSIGNMENT_ID
612 ,p_validate => l_validate
613 ,P_CALLED_FROM_MASS_UPDATE => L_CALLED_FROM_MASS_UPDATE
614 ,P_GRADE_ID => L_GRADE_ID
615 ,P_POSITION_ID => L_POSITION_ID
616 ,P_JOB_ID => L_JOB_ID
617 ,P_PAYROLL_ID => L_PAYROLL_ID
618 ,P_LOCATION_ID => L_LOCATION_ID
619 ,P_ORGANIZATION_ID => L_ORGANIZATION_ID
620 ,P_PAY_BASIS_ID => L_PAY_BASIS_ID
621 ,P_SEGMENT1 => c.p4
622 ,P_SEGMENT2 => c.p5
623 ,P_SEGMENT3 => c.p6
624 ,P_SEGMENT4 => c.p7
625 ,P_SEGMENT5 => c.p8
626 ,P_SEGMENT6 => c.p9
627 ,P_SEGMENT7 => c.p10
628 ,P_SEGMENT8 => c.p11
629 ,P_SEGMENT9 => c.p12
630 ,P_SEGMENT10 => c.p13
631 ,P_SEGMENT11 => c.p14
632 ,P_SEGMENT12 => c.p15
633 ,P_SEGMENT13 => c.p16
634 ,P_SEGMENT14 => c.p17
635 ,P_SEGMENT15 => c.p18
636 ,P_SEGMENT16 => c.p19
637 ,P_SEGMENT17 => c.p20
638 ,P_SEGMENT18 => c.p21
639 ,P_SEGMENT19 => c.p22
640 ,P_SEGMENT20 => c.p23
641 ,P_SEGMENT21 => c.p24
642 ,P_SEGMENT22 => c.p25
643 ,P_SEGMENT23 => c.p26
644 ,P_SEGMENT24 => c.p27
645 ,P_SEGMENT25 => c.p28
646 ,P_SEGMENT26 => c.p29
647 ,P_SEGMENT27 => c.p30
648 ,P_SEGMENT28 => c.p31
649 ,P_SEGMENT29 => c.p32
650 ,P_SEGMENT30 => c.p33
651 ,P_EMPLOYMENT_CATEGORY => c.p34
652 ,P_CONCAT_SEGMENTS => c.p35
653 ,P_CONTRACT_ID => L_CONTRACT_ID
654 ,P_ESTABLISHMENT_ID => L_ESTABLISHMENT_ID
655 ,P_SCL_SEGMENT1 => c.p36
656 ,P_GRADE_LADDER_PGM_ID => L_GRADE_LADDER_PGM_ID
657 ,P_SUPERVISOR_ASSIGNMENT_ID => L_SUPERVISOR_ASSIGNMENT_ID
658 ,P_OBJECT_VERSION_NUMBER => L_OBJECT_VERSION_NUMBER
659 ,P_SPECIAL_CEILING_STEP_ID => c.p37
660 ,P_PEOPLE_GROUP_ID => c.p38
661 ,P_SOFT_CODING_KEYFLEX_ID => L_SOFT_CODING_KEYFLEX_ID
662 ,P_GROUP_NAME => c.p39
663 ,P_EFFECTIVE_START_DATE => c.p40
664 ,P_EFFECTIVE_END_DATE => c.p41
665 ,P_ORG_NOW_NO_MANAGER_WARNING => L_ORG_NOW_NO_MANAGER_WARNING
666 ,P_OTHER_MANAGER_WARNING => L_OTHER_MANAGER_WARNING
667 ,P_SPP_DELETE_WARNING => L_SPP_DELETE_WARNING
668 ,P_ENTRIES_CHANGED_WARNING => c.p45
669 ,P_TAX_DISTRICT_CHANGED_WARNING => L_TAX_DISTRICT_CHANGED_WARNING
670 ,P_CONCATENATED_SEGMENTS => c.p47
671 ,P_GSP_POST_PROCESS_WARNING => c.p48);
672 hr_data_pump.api_trc_off;
673 --
674 if L_ORG_NOW_NO_MANAGER_WARNING then
675 c.p42 := 'TRUE';
676 else
677 c.p42 := 'FALSE';
678 end if;
679 --
680 if L_OTHER_MANAGER_WARNING then
681 c.p43 := 'TRUE';
682 else
683 c.p43 := 'FALSE';
684 end if;
685 --
686 if L_SPP_DELETE_WARNING then
687 c.p44 := 'TRUE';
688 else
689 c.p44 := 'FALSE';
690 end if;
691 --
692 if L_TAX_DISTRICT_CHANGED_WARNING then
693 c.p46 := 'TRUE';
694 else
695 c.p46 := 'FALSE';
696 end if;
697 --
698 update hr_pump_batch_lines l set
699 l.pval037 = decode(c.p37,null,cn,c.p37),
700 l.pval038 = decode(c.p38,null,cn,c.p38),
701 l.pval039 = decode(c.p39,null,cn,c.p39),
705 l.pval043 = decode(c.p43,null,cn,c.p43),
702 l.pval040 = decode(c.p40,null,cn,dc(c.p40)),
703 l.pval041 = decode(c.p41,null,cn,dc(c.p41)),
704 l.pval042 = decode(c.p42,null,cn,c.p42),
706 l.pval044 = decode(c.p44,null,cn,c.p44),
707 l.pval045 = decode(c.p45,null,cn,c.p45),
708 l.pval046 = decode(c.p46,null,cn,c.p46),
709 l.pval047 = decode(c.p47,null,cn,c.p47),
710 l.pval048 = decode(c.p48,null,cn,c.p48)
711 where l.rowid = c.myrowid;
712 --
713 close cr;
714 --
715 hr_data_pump.exit('call');
716 exception
717  when hr_multi_message.error_message_exist then
718    if cr%isopen then
719     close cr;
720    end if;
721    hr_pump_utils.set_multi_msg_error_flag(true);
722  when others then
723  if cr%isopen then
724   close cr;
725  end if;
726  raise;
727 end call;
728 end hrdpp_update_emp_asg_criteria;