129: l_pepinsplip_score_tab ben_evaluate_elig_profiles.scoreTab;
130: --
131: -- Declare cursors and local variables
132: --
133: l_elig_per_id ben_elig_per_f.elig_per_id%TYPE;
134: l_effective_start_date ben_elig_per_f.effective_start_date%TYPE;
135: l_effective_end_date ben_elig_per_f.effective_end_date%TYPE;
136: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
137: --
130: --
131: -- Declare cursors and local variables
132: --
133: l_elig_per_id ben_elig_per_f.elig_per_id%TYPE;
134: l_effective_start_date ben_elig_per_f.effective_start_date%TYPE;
135: l_effective_end_date ben_elig_per_f.effective_end_date%TYPE;
136: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
137: --
138: l_created_by ben_elig_per_f.created_by%TYPE;
131: -- Declare cursors and local variables
132: --
133: l_elig_per_id ben_elig_per_f.elig_per_id%TYPE;
134: l_effective_start_date ben_elig_per_f.effective_start_date%TYPE;
135: l_effective_end_date ben_elig_per_f.effective_end_date%TYPE;
136: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
137: --
138: l_created_by ben_elig_per_f.created_by%TYPE;
139: l_creation_date ben_elig_per_f.creation_date%TYPE;
132: --
133: l_elig_per_id ben_elig_per_f.elig_per_id%TYPE;
134: l_effective_start_date ben_elig_per_f.effective_start_date%TYPE;
135: l_effective_end_date ben_elig_per_f.effective_end_date%TYPE;
136: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
137: --
138: l_created_by ben_elig_per_f.created_by%TYPE;
139: l_creation_date ben_elig_per_f.creation_date%TYPE;
140: l_last_update_date ben_elig_per_f.last_update_date%TYPE;
134: l_effective_start_date ben_elig_per_f.effective_start_date%TYPE;
135: l_effective_end_date ben_elig_per_f.effective_end_date%TYPE;
136: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
137: --
138: l_created_by ben_elig_per_f.created_by%TYPE;
139: l_creation_date ben_elig_per_f.creation_date%TYPE;
140: l_last_update_date ben_elig_per_f.last_update_date%TYPE;
141: l_last_updated_by ben_elig_per_f.last_updated_by%TYPE;
142: l_last_update_login ben_elig_per_f.last_update_login%TYPE;
135: l_effective_end_date ben_elig_per_f.effective_end_date%TYPE;
136: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
137: --
138: l_created_by ben_elig_per_f.created_by%TYPE;
139: l_creation_date ben_elig_per_f.creation_date%TYPE;
140: l_last_update_date ben_elig_per_f.last_update_date%TYPE;
141: l_last_updated_by ben_elig_per_f.last_updated_by%TYPE;
142: l_last_update_login ben_elig_per_f.last_update_login%TYPE;
143: --
136: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
137: --
138: l_created_by ben_elig_per_f.created_by%TYPE;
139: l_creation_date ben_elig_per_f.creation_date%TYPE;
140: l_last_update_date ben_elig_per_f.last_update_date%TYPE;
141: l_last_updated_by ben_elig_per_f.last_updated_by%TYPE;
142: l_last_update_login ben_elig_per_f.last_update_login%TYPE;
143: --
144: l_minmax_rec ben_batch_dt_api.gtyp_dtsum_row;
137: --
138: l_created_by ben_elig_per_f.created_by%TYPE;
139: l_creation_date ben_elig_per_f.creation_date%TYPE;
140: l_last_update_date ben_elig_per_f.last_update_date%TYPE;
141: l_last_updated_by ben_elig_per_f.last_updated_by%TYPE;
142: l_last_update_login ben_elig_per_f.last_update_login%TYPE;
143: --
144: l_minmax_rec ben_batch_dt_api.gtyp_dtsum_row;
145: l_dummy_pep_id number;
138: l_created_by ben_elig_per_f.created_by%TYPE;
139: l_creation_date ben_elig_per_f.creation_date%TYPE;
140: l_last_update_date ben_elig_per_f.last_update_date%TYPE;
141: l_last_updated_by ben_elig_per_f.last_updated_by%TYPE;
142: l_last_update_login ben_elig_per_f.last_update_login%TYPE;
143: --
144: l_minmax_rec ben_batch_dt_api.gtyp_dtsum_row;
145: l_dummy_pep_id number;
146: l_dummy_esd date;
387: ,p_defer => false
388: );
389: --
390: -- Bug 4438430
391: -- Since creation of BEN_ELIG_PER_F at PLIP level is DEFERRED until we create BEN_ELIG_PER_F
392: -- record at PLN level, creation of BEN_ELIG_SCRE_WTG_F (PLIP) was also deferred. So now we create
393: -- BEN_ELIG_SCRE_WTG_F record for ELPROs at PLIP level.
394: -- In BEN_ELIG_SCRE_WTG_API.LOAD_SCORE_WEIGHT we store the P_SCORE_TAB in global table G_PEPINSPLIP
395: --
550: l_object_version_number := 1;
551: --
552: ben_pep_shd.g_api_dml := true; -- Set the api dml status
553: --
554: -- Insert the row into: ben_elig_per_f
555: --
556: hr_utility.set_location('Insert: '||l_proc, 5);
557: insert into ben_elig_per_f
558: (
553: --
554: -- Insert the row into: ben_elig_per_f
555: --
556: hr_utility.set_location('Insert: '||l_proc, 5);
557: insert into ben_elig_per_f
558: (
559: elig_per_id,
560: effective_start_date,
561: effective_end_date,
661: last_update_login
662: )
663: Values
664: (
665: ben_elig_per_f_s.nextval,
666: l_effective_start_date,
667: l_effective_end_date,
668: p_business_group_id,
669: p_pl_id,
771: -----------------------------------------------------------------------------
772: --Bug 12732878 changes start
773: --If the comp object is First Elig then inserting the elig_per_id of comp object into
774: --global vaiables to check whether the same compensation object is having any future records
775: --in ben_elig_per_f table
776: hr_utility.set_location('uxx l_elig_per_id '||l_elig_per_id,10);
777: hr_utility.set_location('uxx p_per_in_ler_id '||p_per_in_ler_id,10);
778: ben_determine_eligibility2.g_cache_first_elig_object.extend;
779: ben_determine_eligibility2.g_cache_first_elig_object(ben_determine_eligibility2.g_cache_first_elig_object.last).rowno
1370: program_application_id,
1371: program_id,
1372: program_update_date,
1373: object_version_number
1374: from ben_elig_per_f
1375: where elig_per_id = p_elig_per_id
1376: and p_effective_date
1377: between effective_start_date and effective_end_date;
1378: --
1440: -- The object is locked therefore we need to supply a meaningful
1441: -- error message.
1442: --
1443: fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
1444: fnd_message.set_token('TABLE_NAME', 'ben_elig_per_f');
1445: fnd_message.raise_error;
1446: --
1447: When l_object_invalid then
1448: --
1448: --
1449: -- The object doesn't exist or is invalid
1450: --
1451: fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
1452: fnd_message.set_token('TABLE_NAME', 'ben_elig_per_f');
1453: fnd_message.raise_error;
1454: --
1455: End perf_lck;
1456: --
1570: --
1571: l_proc varchar2(72) := g_package||'update_perf_Eligible_Person';
1572: --
1573: l_rec ben_pep_shd.g_rec_type;
1574: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
1575: l_effective_start_date ben_elig_per_f.effective_start_date%TYPE;
1576: l_effective_end_date ben_elig_per_f.effective_end_date%TYPE;
1577: --
1578: l_validation_start_date date;
1571: l_proc varchar2(72) := g_package||'update_perf_Eligible_Person';
1572: --
1573: l_rec ben_pep_shd.g_rec_type;
1574: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
1575: l_effective_start_date ben_elig_per_f.effective_start_date%TYPE;
1576: l_effective_end_date ben_elig_per_f.effective_end_date%TYPE;
1577: --
1578: l_validation_start_date date;
1579: l_validation_end_date date;
1572: --
1573: l_rec ben_pep_shd.g_rec_type;
1574: l_object_version_number ben_elig_per_f.object_version_number%TYPE;
1575: l_effective_start_date ben_elig_per_f.effective_start_date%TYPE;
1576: l_effective_end_date ben_elig_per_f.effective_end_date%TYPE;
1577: --
1578: l_validation_start_date date;
1579: l_validation_end_date date;
1580: l_dummy_version_number number;
1695: program_application_id,
1696: program_id,
1697: program_update_date,
1698: object_version_number
1699: from ben_elig_per_f
1700: where elig_per_id = p_elig_per_id
1701: and p_effective_date
1702: between effective_start_date and effective_end_date
1703: for update nowait;
1705: Cursor C_Sel1
1706: Is
1707: select t.created_by,
1708: t.creation_date
1709: from ben_elig_per_f t
1710: where t.elig_per_id = p_elig_per_id
1711: and t.effective_start_date =
1712: ben_pep_shd.g_old_rec.effective_start_date
1713: and t.effective_end_date = (l_validation_start_date - 1);
1718: )
1719: is
1720: select pep.effective_start_date,
1721: pep.effective_end_date
1722: from ben_elig_per_f pep
1723: where pep.elig_per_id = c_pep_id
1724: and c_eff_date
1725: between pep.effective_start_date and pep.effective_end_date;
1726: --
1728: (c_pep_id number
1729: )
1730: is
1731: select nvl(max(pep.object_version_number),0) + 1
1732: from ben_elig_per_f pep
1733: where pep.elig_per_id = c_pep_id;
1734: --
1735: cursor c_plip
1736: (p_elig_per_id number, cv_pgm_id number) is
1735: cursor c_plip
1736: (p_elig_per_id number, cv_pgm_id number) is
1737: select cpp.plip_id
1738: from ben_plip_f cpp,
1739: ben_elig_per_f pep
1740: where cpp.pl_id = pep.pl_id
1741: and pep.elig_per_id = p_elig_per_id
1742: and cpp.pgm_id = cv_pgm_id /* Bug 5098907 */
1743: and p_effective_date
2280: --
2281: -- Update the specified datetrack row setting the effective
2282: -- end date to the specified new effective end date.
2283: --
2284: update ben_elig_per_f t
2285: set t.effective_end_date = l_validation_start_date - 1,
2286: t.object_version_number = l_object_version_number
2287: where t.elig_per_id = p_elig_per_id
2288: and p_effective_date
2302: --
2303: -- Delete the where the effective start date is equal
2304: -- to the validation end date.
2305: --
2306: delete from ben_elig_per_f
2307: where elig_per_id = p_elig_per_id
2308: and effective_start_date = l_validation_start_date;
2309: --
2310: ben_pep_shd.g_api_dml := false; -- Unset the api dml status
2314: --
2315: -- Delete the row(s) where the effective start date is greater than
2316: -- or equal to the validation start date.
2317: --
2318: delete from ben_elig_per_f
2319: where elig_per_id = p_elig_per_id
2320: and effective_start_date >= l_validation_start_date;
2321: --
2322: ben_pep_shd.g_api_dml := false; -- Unset the api dml status
2374: End If;
2375: --
2376: ben_pep_shd.g_api_dml := true; -- Set the api dml status
2377: --
2378: -- Insert the row into: ben_elig_per_f
2379: --
2380: hr_utility.set_location('Ins PEP:'||l_proc, 5);
2381: insert into ben_elig_per_f
2382: (
2377: --
2378: -- Insert the row into: ben_elig_per_f
2379: --
2380: hr_utility.set_location('Ins PEP:'||l_proc, 5);
2381: insert into ben_elig_per_f
2382: (
2383: elig_per_id,
2384: effective_start_date,
2385: effective_end_date,
2615: close c_getovn;
2616: --
2617: ben_pep_shd.g_api_dml := true; -- Set the api dml status
2618: --
2619: -- Update the ben_elig_per_f Row
2620: --
2621: update ben_elig_per_f
2622: set
2623: elig_per_id = l_rec.elig_per_id,
2617: ben_pep_shd.g_api_dml := true; -- Set the api dml status
2618: --
2619: -- Update the ben_elig_per_f Row
2620: --
2621: update ben_elig_per_f
2622: set
2623: elig_per_id = l_rec.elig_per_id,
2624: business_group_id = l_rec.business_group_id,
2625: pl_id = l_rec.pl_id,
3061: Open C_Sel1;
3062: Fetch C_Sel1 Into l_elig_per_opt_id;
3063: Close C_Sel1;
3064: --
3065: -- Insert the row into: ben_elig_per_f
3066: --
3067: hr_utility.set_location('Insert: '||l_proc, 5);
3068: hr_utility.set_location('Ins EPO:'||l_proc, 5);
3069: insert into ben_elig_per_opt_f
3487: p_base_table_name => 'ben_elig_per_opt_f',
3488: p_base_key_column => 'elig_per_opt_id',
3489: p_base_key_value => p_elig_per_opt_id,
3490: /*
3491: p_parent_table_name1 => 'ben_elig_per_f',
3492: p_parent_key_column1 => 'elig_per_id',
3493: p_parent_key_value1 => g_old_rec.elig_per_id,
3494: */
3495: p_parent_table_name2 => 'ben_opt_f',