47: (p_enrt_perd_id => p_enrt_perd_id,
48: p_object_version_number => p_object_version_number);
49: --
50: if (l_api_updating
51: and nvl(p_enrt_perd_id,hr_api.g_number)
52: <> ben_enp_shd.g_old_rec.enrt_perd_id) then
53: --
54: -- raise error as PK has changed
55: --
124: (p_enrt_perd_id => p_enrt_perd_id,
125: p_object_version_number => p_object_version_number);
126: --
127: if (l_api_updating
128: and nvl(p_popl_enrt_typ_cycl_id,hr_api.g_number)
129: <> nvl(ben_enp_shd.g_old_rec.popl_enrt_typ_cycl_id,hr_api.g_number)
130: or not l_api_updating) then
131: --
132: -- check if popl_enrt_typ_cycl_id value exists in ben_popl_enrt_typ_cycl_f table
125: p_object_version_number => p_object_version_number);
126: --
127: if (l_api_updating
128: and nvl(p_popl_enrt_typ_cycl_id,hr_api.g_number)
129: <> nvl(ben_enp_shd.g_old_rec.popl_enrt_typ_cycl_id,hr_api.g_number)
130: or not l_api_updating) then
131: --
132: -- check if popl_enrt_typ_cycl_id value exists in ben_popl_enrt_typ_cycl_f table
133: --
199: cursor chk_unique is
200: select null
201: from ben_enrt_perd
202: where yr_perd_id = p_yr_perd_id
203: and enrt_perd_id <> nvl(p_enrt_perd_id, hr_api.g_number)
204: and popl_enrt_typ_cycl_id = p_popl_enrt_typ_cycl_id
205: and business_group_id + 0 = p_business_group_id;
206: */
207: -- Commented the above cursor and its use below so as to fix the bug #2103
215: (p_enrt_perd_id => p_enrt_perd_id,
216: p_object_version_number => p_object_version_number);
217: --
218: if (l_api_updating
219: and nvl(p_yr_perd_id,hr_api.g_number)
220: <> nvl(ben_enp_shd.g_old_rec.yr_perd_id,hr_api.g_number)
221: or not l_api_updating) then
222: --
223: -- check if yr_perd_id value exists in ben_yr_perd table
216: p_object_version_number => p_object_version_number);
217: --
218: if (l_api_updating
219: and nvl(p_yr_perd_id,hr_api.g_number)
220: <> nvl(ben_enp_shd.g_old_rec.yr_perd_id,hr_api.g_number)
221: or not l_api_updating) then
222: --
223: -- check if yr_perd_id value exists in ben_yr_perd table
224: --
299: Begin
300: --
301: hr_utility.set_location('Entering:'||l_proc, 5);
302: --
303: hr_api.mandatory_arg_error(p_api_name => l_proc,
304: p_argument => 'strt_dt',
305: p_argument_value => p_strt_dt);
306: --
307: hr_api.mandatory_arg_error(p_api_name => l_proc,
303: hr_api.mandatory_arg_error(p_api_name => l_proc,
304: p_argument => 'strt_dt',
305: p_argument_value => p_strt_dt);
306: --
307: hr_api.mandatory_arg_error(p_api_name => l_proc,
308: p_argument => 'end_dt',
309: p_argument_value => p_end_dt);
310: --
311: hr_api.mandatory_arg_error(p_api_name => l_proc,
307: hr_api.mandatory_arg_error(p_api_name => l_proc,
308: p_argument => 'end_dt',
309: p_argument_value => p_end_dt);
310: --
311: hr_api.mandatory_arg_error(p_api_name => l_proc,
312: p_argument => 'asnd_lf_evt_dt',
313: p_argument_value => p_asnd_lf_evt_dt);
314:
315: ---
319: --
320: -- check it if changing either start or end date.
321: --
322: if (l_api_updating
323: and (p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
324: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
325: /* or p_asnd_lf_evt_Dt <> nvl(ben_enp_shd.g_old_rec.asnd_lf_Evt_dt ,hr_api.g_date) */
326: )
327: or not l_api_updating)
320: -- check it if changing either start or end date.
321: --
322: if (l_api_updating
323: and (p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
324: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
325: /* or p_asnd_lf_evt_Dt <> nvl(ben_enp_shd.g_old_rec.asnd_lf_Evt_dt ,hr_api.g_date) */
326: )
327: or not l_api_updating)
328: then
321: --
322: if (l_api_updating
323: and (p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
324: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
325: /* or p_asnd_lf_evt_Dt <> nvl(ben_enp_shd.g_old_rec.asnd_lf_Evt_dt ,hr_api.g_date) */
326: )
327: or not l_api_updating)
328: then
329: --
386: cursor c_dup_enp is
387: select null
388: from ben_enrt_perd enp
389: where enp.popl_enrt_typ_cycl_id = p_popl_enrt_typ_cycl_id
390: and enp.enrt_perd_id <> nvl(p_enrt_perd_id, hr_api.g_number)
391: and enp.asnd_lf_evt_dt = p_asnd_lf_evt_dt
392: and enp.business_group_id = p_business_group_id ;
393: Begin
394: --
393: Begin
394: --
395: hr_utility.set_location('Entering:'||l_proc, 5);
396: --
397: hr_api.mandatory_arg_error(p_api_name => l_proc,
398: p_argument => 'asnd_lf_evt_dt',
399: p_argument_value => p_asnd_lf_evt_dt);
400:
401: ---
405: --
406: -- check it if changing assigned life event date.
407: --
408: if (l_api_updating
409: and (p_asnd_lf_evt_dt <> nvl(ben_enp_shd.g_old_rec.asnd_lf_evt_dt,hr_api.g_date) )
410: or not l_api_updating)
411: then
412: --
413: -- check if there is another enrollment period record with same assigned life event date
467: Begin
468: --
469: hr_utility.set_location('Entering:'||l_proc, 5);
470: --
471: /* hr_api.mandatory_arg_error(p_api_name => l_proc,
472: p_argument => 'dflt_enrt_dt',
473: p_argument_value => p_dflt_enrt_dt);
474: */
475: --
472: p_argument => 'dflt_enrt_dt',
473: p_argument_value => p_dflt_enrt_dt);
474: */
475: --
476: hr_api.mandatory_arg_error(p_api_name => l_proc,
477: p_argument => 'end_dt',
478: p_argument_value => p_end_dt);
479: --
480: l_api_updating := ben_enp_shd.api_updating
483: --
484: -- check it if changing either default enrollment date or end date.
485: --
486: if (l_api_updating
487: and (p_dflt_enrt_dt <> nvl(ben_enp_shd.g_old_rec.dflt_enrt_dt,hr_api.g_date) or
488: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
489: )
490: or not l_api_updating)
491: then
484: -- check it if changing either default enrollment date or end date.
485: --
486: if (l_api_updating
487: and (p_dflt_enrt_dt <> nvl(ben_enp_shd.g_old_rec.dflt_enrt_dt,hr_api.g_date) or
488: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
489: )
490: or not l_api_updating)
491: then
492: --
566: (p_enrt_perd_id => p_enrt_perd_id,
567: p_object_version_number => p_object_version_number);
568: --
569: if (l_api_updating
570: and nvl(p_rt_end_dt_rl,hr_api.g_number)
571: <> ben_enp_shd.g_old_rec.rt_end_dt_rl
572: or not l_api_updating)
573: and p_rt_end_dt_rl is not null then
574: --
643: p_object_version_number => p_object_version_number);
644: --
645: if (l_api_updating
646: and p_rt_end_dt_cd
647: <> nvl(ben_enp_shd.g_old_rec.rt_end_dt_cd,hr_api.g_varchar2)
648: or not l_api_updating)
649: and p_rt_end_dt_cd is not null then
650: --
651: -- check if value of lookup falls within lookup type.
649: and p_rt_end_dt_cd is not null then
650: --
651: -- check if value of lookup falls within lookup type.
652: --
653: if hr_api.not_exists_in_hr_lookups
654: (p_lookup_type => 'BEN_RT_END',
655: p_lookup_code => p_rt_end_dt_cd,
656: p_effective_date => p_effective_date) then
657: --
715: p_object_version_number => p_object_version_number);
716: --
717: if (l_api_updating
718: and p_reinstate_ovrdn_cd
719: <> nvl(ben_enp_shd.g_old_rec.reinstate_ovrdn_cd,hr_api.g_varchar2)
720: or not l_api_updating)
721: and p_reinstate_ovrdn_cd is not null then
722: --
723: -- check if value of lookup falls within lookup type.
721: and p_reinstate_ovrdn_cd is not null then
722: --
723: -- check if value of lookup falls within lookup type.
724: --
725: if hr_api.not_exists_in_hr_lookups
726: (p_lookup_type => 'BEN_REINSTATE_OVRDN',
727: p_lookup_code => p_reinstate_ovrdn_cd,
728: p_effective_date => p_effective_date) then
729: --
788: p_object_version_number => p_object_version_number);
789: --
790: if (l_api_updating
791: and p_reinstate_cd
792: <> nvl(ben_enp_shd.g_old_rec.reinstate_cd,hr_api.g_varchar2)
793: or not l_api_updating)
794: and p_reinstate_cd is not null then
795: --
796: -- check if value of lookup falls within lookup type.
794: and p_reinstate_cd is not null then
795: --
796: -- check if value of lookup falls within lookup type.
797: --
798: if hr_api.not_exists_in_hr_lookups
799: (p_lookup_type => 'BEN_REINSTATE',
800: p_lookup_code => p_reinstate_cd,
801: p_effective_date => p_effective_date) then
802: --
862: p_object_version_number => p_object_version_number);
863: --
864: if (l_api_updating
865: and p_rt_strt_dt_cd
866: <> nvl(ben_enp_shd.g_old_rec.rt_strt_dt_cd,hr_api.g_varchar2)
867: or not l_api_updating)
868: and p_rt_strt_dt_cd is not null then
869: --
870: -- check if value of lookup falls within lookup type.
868: and p_rt_strt_dt_cd is not null then
869: --
870: -- check if value of lookup falls within lookup type.
871: --
872: if hr_api.not_exists_in_hr_lookups
873: (p_lookup_type => 'BEN_RT_STRT',
874: p_lookup_code => p_rt_strt_dt_cd,
875: p_effective_date => p_effective_date) then
876: --
946: (p_enrt_perd_id => p_enrt_perd_id,
947: p_object_version_number => p_object_version_number);
948: --
949: if (l_api_updating
950: and nvl(p_enrt_cvg_end_dt_rl,hr_api.g_number)
951: <> ben_enp_shd.g_old_rec.enrt_cvg_end_dt_rl
952: or not l_api_updating)
953: and p_enrt_cvg_end_dt_rl is not null then
954: --
1040: (p_enrt_perd_id => p_enrt_perd_id,
1041: p_object_version_number => p_object_version_number);
1042: --
1043: if (l_api_updating
1044: and nvl(p_enrt_cvg_strt_dt_rl,hr_api.g_number)
1045: <> ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_rl
1046: or not l_api_updating)
1047: and p_enrt_cvg_strt_dt_rl is not null then
1048: --
1118: p_object_version_number => p_object_version_number);
1119: --
1120: if (l_api_updating
1121: and p_enrt_cvg_end_dt_cd
1122: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_end_dt_cd,hr_api.g_varchar2)
1123: or not l_api_updating)
1124: and p_enrt_cvg_end_dt_cd is not null then
1125: --
1126: -- check if value of lookup falls within lookup type.
1124: and p_enrt_cvg_end_dt_cd is not null then
1125: --
1126: -- check if value of lookup falls within lookup type.
1127: --
1128: if hr_api.not_exists_in_hr_lookups
1129: (p_lookup_type => 'BEN_ENRT_CVG_END',
1130: p_lookup_code => p_enrt_cvg_end_dt_cd,
1131: p_effective_date => p_effective_date) then
1132: --
1202: (p_enrt_perd_id => p_enrt_perd_id,
1203: p_object_version_number => p_object_version_number);
1204: --
1205: if (l_api_updating
1206: and nvl(p_rt_strt_dt_rl,hr_api.g_number)
1207: <> ben_enp_shd.g_old_rec.rt_strt_dt_rl
1208: or not l_api_updating)
1209: and p_rt_strt_dt_rl is not null then
1210: --
1280: p_object_version_number => p_object_version_number);
1281: --
1282: if (l_api_updating
1283: and p_enrt_cvg_strt_dt_cd
1284: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_cd,hr_api.g_varchar2)
1285: or not l_api_updating)
1286: and p_enrt_cvg_strt_dt_cd is not null then
1287: --
1288: -- check if value of lookup falls within lookup type.
1286: and p_enrt_cvg_strt_dt_cd is not null then
1287: --
1288: -- check if value of lookup falls within lookup type.
1289: --
1290: if hr_api.not_exists_in_hr_lookups
1291: (p_lookup_type => 'BEN_ENRT_CVG_STRT',
1292: p_lookup_code => p_enrt_cvg_strt_dt_cd,
1293: p_effective_date => p_effective_date) then
1294: --
1348: p_object_version_number => p_object_version_number);
1349: --
1350: if (l_api_updating
1351: and p_cls_enrt_dt_to_use_cd
1352: <> nvl(ben_enp_shd.g_old_rec.cls_enrt_dt_to_use_cd,hr_api.g_varchar2)
1353: or not l_api_updating)
1354: and p_cls_enrt_dt_to_use_cd is not null then
1355: --
1356: -- check if value of lookup falls within lookup type.
1354: and p_cls_enrt_dt_to_use_cd is not null then
1355: --
1356: -- check if value of lookup falls within lookup type.
1357: --
1358: if hr_api.not_exists_in_hr_lookups
1359: (p_lookup_type => 'BEN_CLS_ENRT_DT_TO_USE',
1360: p_lookup_code => p_cls_enrt_dt_to_use_cd,
1361: p_effective_date => p_effective_date) then
1362: --
1420: (p_enrt_perd_id => p_enrt_perd_id,
1421: p_object_version_number => p_object_version_number);
1422: --
1423: if (l_api_updating
1424: and (nvl(p_enrt_cvg_strt_dt_cd,hr_api.g_varchar2)
1425: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_cd,hr_api.g_varchar2) or
1426: nvl(p_enrt_cvg_strt_dt_rl,hr_api.g_number)
1427: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_rl,hr_api.g_number))
1428: or not l_api_updating) then
1421: p_object_version_number => p_object_version_number);
1422: --
1423: if (l_api_updating
1424: and (nvl(p_enrt_cvg_strt_dt_cd,hr_api.g_varchar2)
1425: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_cd,hr_api.g_varchar2) or
1426: nvl(p_enrt_cvg_strt_dt_rl,hr_api.g_number)
1427: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_rl,hr_api.g_number))
1428: or not l_api_updating) then
1429: --
1422: --
1423: if (l_api_updating
1424: and (nvl(p_enrt_cvg_strt_dt_cd,hr_api.g_varchar2)
1425: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_cd,hr_api.g_varchar2) or
1426: nvl(p_enrt_cvg_strt_dt_rl,hr_api.g_number)
1427: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_rl,hr_api.g_number))
1428: or not l_api_updating) then
1429: --
1430: if (p_enrt_cvg_strt_dt_cd = 'RL' and p_enrt_cvg_strt_dt_rl is null) then
1423: if (l_api_updating
1424: and (nvl(p_enrt_cvg_strt_dt_cd,hr_api.g_varchar2)
1425: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_cd,hr_api.g_varchar2) or
1426: nvl(p_enrt_cvg_strt_dt_rl,hr_api.g_number)
1427: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_rl,hr_api.g_number))
1428: or not l_api_updating) then
1429: --
1430: if (p_enrt_cvg_strt_dt_cd = 'RL' and p_enrt_cvg_strt_dt_rl is null) then
1431: --
1433: fnd_message.raise_error;
1434: --
1435: end if;
1436: --
1437: if nvl(p_enrt_cvg_strt_dt_cd,hr_api.g_varchar2) <> 'RL'
1438: and p_enrt_cvg_strt_dt_rl is not null then
1439: --
1440: fnd_message.set_name('BEN','BEN_91311_ENRT_STRT_RWOC');
1441: fnd_message.raise_error;
1502:
1503:
1504: if (l_api_updating
1505: and
1506: ( nvl(p_Sal_chg_reason_cd,hr_api.g_varchar2)
1507: <> nvl(ben_enp_shd.g_old_rec.Sal_chg_reason_cd,hr_api.g_varchar2)
1508: )
1509: or not l_api_updating)
1510: and p_Sal_chg_reason_cd is not null then
1503:
1504: if (l_api_updating
1505: and
1506: ( nvl(p_Sal_chg_reason_cd,hr_api.g_varchar2)
1507: <> nvl(ben_enp_shd.g_old_rec.Sal_chg_reason_cd,hr_api.g_varchar2)
1508: )
1509: or not l_api_updating)
1510: and p_Sal_chg_reason_cd is not null then
1511:
1509: or not l_api_updating)
1510: and p_Sal_chg_reason_cd is not null then
1511:
1512: hr_utility.set_location('validating SAl_CHG_REASON:'||p_Sal_chg_reason_cd, 5);
1513: if hr_api.not_exists_in_hr_lookups
1514: (p_lookup_type => 'PROPOSAL_REASON',
1515: p_lookup_code => p_Sal_chg_reason_cd,
1516: p_effective_date => p_effective_date) then
1517: --
1525: end if ;
1526:
1527: if (l_api_updating
1528: and (
1529: nvl( p_Approval_mode_cd,hr_api.g_varchar2) <>
1530: nvl(ben_enp_shd.g_old_rec.Approval_mode_cd,hr_api.g_varchar2)
1531: )
1532: or not l_api_updating)
1533: and p_Approval_mode_cd is not null then
1526:
1527: if (l_api_updating
1528: and (
1529: nvl( p_Approval_mode_cd,hr_api.g_varchar2) <>
1530: nvl(ben_enp_shd.g_old_rec.Approval_mode_cd,hr_api.g_varchar2)
1531: )
1532: or not l_api_updating)
1533: and p_Approval_mode_cd is not null then
1534:
1532: or not l_api_updating)
1533: and p_Approval_mode_cd is not null then
1534:
1535: hr_utility.set_location('validating Approval_mode_cd:'||p_Approval_mode_cd, 5);
1536: if hr_api.not_exists_in_hr_lookups
1537: (p_lookup_type => 'BEN_CWB_APPROVAL_MODE',
1538: p_lookup_code => p_Approval_mode_cd,
1539: p_effective_date => p_effective_date) then
1540: --
1550:
1551:
1552: if (l_api_updating
1553: and
1554: ( nvl( p_hrchy_ame_trn_cd,hr_api.g_varchar2) <>
1555: nvl(ben_enp_shd.g_old_rec.hrchy_ame_trn_cd,hr_api.g_varchar2)
1556: or nvl(p_hrchy_ame_app_id,hr_api.g_number) <>
1557: nvl(ben_enp_shd.g_old_rec.hrchy_ame_app_id,hr_api.g_number)
1558: --Bug 4083891 : Perform validation for change in Assingned Life Event Date also
1551:
1552: if (l_api_updating
1553: and
1554: ( nvl( p_hrchy_ame_trn_cd,hr_api.g_varchar2) <>
1555: nvl(ben_enp_shd.g_old_rec.hrchy_ame_trn_cd,hr_api.g_varchar2)
1556: or nvl(p_hrchy_ame_app_id,hr_api.g_number) <>
1557: nvl(ben_enp_shd.g_old_rec.hrchy_ame_app_id,hr_api.g_number)
1558: --Bug 4083891 : Perform validation for change in Assingned Life Event Date also
1559: or nvl(p_effective_date,hr_api.g_date) <>
1552: if (l_api_updating
1553: and
1554: ( nvl( p_hrchy_ame_trn_cd,hr_api.g_varchar2) <>
1555: nvl(ben_enp_shd.g_old_rec.hrchy_ame_trn_cd,hr_api.g_varchar2)
1556: or nvl(p_hrchy_ame_app_id,hr_api.g_number) <>
1557: nvl(ben_enp_shd.g_old_rec.hrchy_ame_app_id,hr_api.g_number)
1558: --Bug 4083891 : Perform validation for change in Assingned Life Event Date also
1559: or nvl(p_effective_date,hr_api.g_date) <>
1560: nvl(ben_enp_shd.g_old_rec.asnd_lf_evt_dt,hr_api.g_date)
1553: and
1554: ( nvl( p_hrchy_ame_trn_cd,hr_api.g_varchar2) <>
1555: nvl(ben_enp_shd.g_old_rec.hrchy_ame_trn_cd,hr_api.g_varchar2)
1556: or nvl(p_hrchy_ame_app_id,hr_api.g_number) <>
1557: nvl(ben_enp_shd.g_old_rec.hrchy_ame_app_id,hr_api.g_number)
1558: --Bug 4083891 : Perform validation for change in Assingned Life Event Date also
1559: or nvl(p_effective_date,hr_api.g_date) <>
1560: nvl(ben_enp_shd.g_old_rec.asnd_lf_evt_dt,hr_api.g_date)
1561: )
1555: nvl(ben_enp_shd.g_old_rec.hrchy_ame_trn_cd,hr_api.g_varchar2)
1556: or nvl(p_hrchy_ame_app_id,hr_api.g_number) <>
1557: nvl(ben_enp_shd.g_old_rec.hrchy_ame_app_id,hr_api.g_number)
1558: --Bug 4083891 : Perform validation for change in Assingned Life Event Date also
1559: or nvl(p_effective_date,hr_api.g_date) <>
1560: nvl(ben_enp_shd.g_old_rec.asnd_lf_evt_dt,hr_api.g_date)
1561: )
1562: or not l_api_updating)
1563: and p_hrchy_ame_trn_cd is not null then
1556: or nvl(p_hrchy_ame_app_id,hr_api.g_number) <>
1557: nvl(ben_enp_shd.g_old_rec.hrchy_ame_app_id,hr_api.g_number)
1558: --Bug 4083891 : Perform validation for change in Assingned Life Event Date also
1559: or nvl(p_effective_date,hr_api.g_date) <>
1560: nvl(ben_enp_shd.g_old_rec.asnd_lf_evt_dt,hr_api.g_date)
1561: )
1562: or not l_api_updating)
1563: and p_hrchy_ame_trn_cd is not null then
1564:
1581:
1582:
1583: if (l_api_updating
1584: and
1585: ( nvl( p_hrchy_rl,hr_api.g_number) <>
1586: nvl(ben_enp_shd.g_old_rec.hrchy_rl,hr_api.g_number)
1587: )
1588: or not l_api_updating)
1589: and p_hrchy_rl is not null then
1582:
1583: if (l_api_updating
1584: and
1585: ( nvl( p_hrchy_rl,hr_api.g_number) <>
1586: nvl(ben_enp_shd.g_old_rec.hrchy_rl,hr_api.g_number)
1587: )
1588: or not l_api_updating)
1589: and p_hrchy_rl is not null then
1590:
1609:
1610:
1611: if (l_api_updating
1612: and
1613: ( nvl( p_hrchy_to_use_cd,hr_api.g_varchar2) <>
1614: nvl(ben_enp_shd.g_old_rec.hrchy_to_use_cd,hr_api.g_varchar2)
1615: )
1616: or not l_api_updating) then
1617: hr_utility.set_location('validating hrchy_to_use_cd:'||p_hrchy_to_use_cd, 5);
1610:
1611: if (l_api_updating
1612: and
1613: ( nvl( p_hrchy_to_use_cd,hr_api.g_varchar2) <>
1614: nvl(ben_enp_shd.g_old_rec.hrchy_to_use_cd,hr_api.g_varchar2)
1615: )
1616: or not l_api_updating) then
1617: hr_utility.set_location('validating hrchy_to_use_cd:'||p_hrchy_to_use_cd, 5);
1618: if p_hrchy_to_use_cd is not null then
1615: )
1616: or not l_api_updating) then
1617: hr_utility.set_location('validating hrchy_to_use_cd:'||p_hrchy_to_use_cd, 5);
1618: if p_hrchy_to_use_cd is not null then
1619: if hr_api.not_exists_in_hr_lookups
1620: (p_lookup_type => 'BEN_HRCHY_TO_USE',
1621: p_lookup_code => p_hrchy_to_use_cd,
1622: p_effective_date => p_effective_date) then
1623: --
1635: hr_utility.set_location(' p_hrchy_to_use_cd ' || p_hrchy_to_use_cd, 99);
1636: hr_utility.set_location(' p_hrchy_ame_trn_cd ' || p_hrchy_ame_trn_cd, 99);
1637:
1638: if (p_hrchy_to_use_cd = 'RL' and p_hrchy_rl is null)
1639: or ( nvl(p_hrchy_to_use_cd,hr_api.g_varchar2) <> 'RL'
1640: and p_hrchy_rl is not null ) then
1641: --
1642: fnd_message.set_name('BEN','BEN_93731_CWB_HRCHY_CWOR_RWOC');
1643: fnd_message.raise_error;
1645: end if;
1646: --
1647:
1648: if (p_hrchy_to_use_cd = 'AME' and p_hrchy_ame_trn_cd is null)
1649: or ( nvl(p_hrchy_to_use_cd,hr_api.g_varchar2) <> 'AME' and p_hrchy_ame_trn_cd is not null ) then
1650: --
1651: fnd_message.set_name('BEN','BEN_93732_CWB_HRCHY_AME_CWOC');
1652: fnd_message.raise_error;
1653: --
1654: end if;
1655:
1656:
1657: if (p_hrchy_to_use_cd = 'P' and p_pos_structure_version_id is null)
1658: or ( nvl(p_hrchy_to_use_cd,hr_api.g_varchar2) <> 'P'
1659: and p_pos_structure_version_id is not null ) then
1660: --
1661: fnd_message.set_name('BEN','BEN_93733_CWB_HRCHY_AME_CWOC');
1662: fnd_message.raise_error;
1715: p_object_version_number => p_object_version_number);
1716: --
1717: if (l_api_updating
1718: and
1719: (nvl(p_enrt_cvg_end_dt_cd,hr_api.g_varchar2)
1720: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_end_dt_cd,hr_api.g_varchar2) or
1721: nvl(p_enrt_cvg_end_dt_rl,hr_api.g_number)
1722: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_end_dt_rl,hr_api.g_number))
1723: or not l_api_updating) then
1716: --
1717: if (l_api_updating
1718: and
1719: (nvl(p_enrt_cvg_end_dt_cd,hr_api.g_varchar2)
1720: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_end_dt_cd,hr_api.g_varchar2) or
1721: nvl(p_enrt_cvg_end_dt_rl,hr_api.g_number)
1722: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_end_dt_rl,hr_api.g_number))
1723: or not l_api_updating) then
1724: --
1717: if (l_api_updating
1718: and
1719: (nvl(p_enrt_cvg_end_dt_cd,hr_api.g_varchar2)
1720: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_end_dt_cd,hr_api.g_varchar2) or
1721: nvl(p_enrt_cvg_end_dt_rl,hr_api.g_number)
1722: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_end_dt_rl,hr_api.g_number))
1723: or not l_api_updating) then
1724: --
1725: if (p_enrt_cvg_end_dt_cd = 'RL' and p_enrt_cvg_end_dt_rl is null) then
1718: and
1719: (nvl(p_enrt_cvg_end_dt_cd,hr_api.g_varchar2)
1720: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_end_dt_cd,hr_api.g_varchar2) or
1721: nvl(p_enrt_cvg_end_dt_rl,hr_api.g_number)
1722: <> nvl(ben_enp_shd.g_old_rec.enrt_cvg_end_dt_rl,hr_api.g_number))
1723: or not l_api_updating) then
1724: --
1725: if (p_enrt_cvg_end_dt_cd = 'RL' and p_enrt_cvg_end_dt_rl is null) then
1726: --
1728: fnd_message.raise_error;
1729: --
1730: end if;
1731: --
1732: if nvl(p_enrt_cvg_end_dt_cd,hr_api.g_varchar2) <> 'RL'
1733: and p_enrt_cvg_end_dt_rl is not null then
1734: --
1735: fnd_message.set_name('BEN','BEN_91379_DFLT_DENRL_END_DT2');
1736: fnd_message.raise_error;
1790: (p_enrt_perd_id => p_enrt_perd_id,
1791: p_object_version_number => p_object_version_number);
1792: --
1793: if (l_api_updating
1794: and (nvl(p_rt_strt_dt_cd,hr_api.g_varchar2)
1795: <> nvl(ben_enp_shd.g_old_rec.rt_strt_dt_cd,hr_api.g_varchar2) or
1796: nvl(p_rt_strt_dt_rl,hr_api.g_number)
1797: <> nvl(ben_enp_shd.g_old_rec.rt_strt_dt_rl,hr_api.g_number))
1798: or not l_api_updating) then
1791: p_object_version_number => p_object_version_number);
1792: --
1793: if (l_api_updating
1794: and (nvl(p_rt_strt_dt_cd,hr_api.g_varchar2)
1795: <> nvl(ben_enp_shd.g_old_rec.rt_strt_dt_cd,hr_api.g_varchar2) or
1796: nvl(p_rt_strt_dt_rl,hr_api.g_number)
1797: <> nvl(ben_enp_shd.g_old_rec.rt_strt_dt_rl,hr_api.g_number))
1798: or not l_api_updating) then
1799: --
1792: --
1793: if (l_api_updating
1794: and (nvl(p_rt_strt_dt_cd,hr_api.g_varchar2)
1795: <> nvl(ben_enp_shd.g_old_rec.rt_strt_dt_cd,hr_api.g_varchar2) or
1796: nvl(p_rt_strt_dt_rl,hr_api.g_number)
1797: <> nvl(ben_enp_shd.g_old_rec.rt_strt_dt_rl,hr_api.g_number))
1798: or not l_api_updating) then
1799: --
1800: if (p_rt_strt_dt_cd = 'RL' and p_rt_strt_dt_rl is null) then
1793: if (l_api_updating
1794: and (nvl(p_rt_strt_dt_cd,hr_api.g_varchar2)
1795: <> nvl(ben_enp_shd.g_old_rec.rt_strt_dt_cd,hr_api.g_varchar2) or
1796: nvl(p_rt_strt_dt_rl,hr_api.g_number)
1797: <> nvl(ben_enp_shd.g_old_rec.rt_strt_dt_rl,hr_api.g_number))
1798: or not l_api_updating) then
1799: --
1800: if (p_rt_strt_dt_cd = 'RL' and p_rt_strt_dt_rl is null) then
1801: --
1803: fnd_message.raise_error;
1804: --
1805: end if;
1806: --
1807: if nvl(p_rt_strt_dt_cd,hr_api.g_varchar2) <> 'RL'
1808: and p_rt_strt_dt_rl is not null then
1809: --
1810: fnd_message.set_name('BEN','BEN_91624_CD_RL_2');
1811: fnd_message.raise_error;
1866: p_object_version_number => p_object_version_number);
1867: --
1868: if (l_api_updating
1869: and
1870: (nvl(p_rt_end_dt_cd,hr_api.g_varchar2)
1871: <> nvl(ben_enp_shd.g_old_rec.rt_end_dt_cd,hr_api.g_varchar2) or
1872: nvl(p_rt_end_dt_rl,hr_api.g_number)
1873: <> nvl(ben_enp_shd.g_old_rec.rt_end_dt_rl,hr_api.g_number))
1874: or not l_api_updating) then
1867: --
1868: if (l_api_updating
1869: and
1870: (nvl(p_rt_end_dt_cd,hr_api.g_varchar2)
1871: <> nvl(ben_enp_shd.g_old_rec.rt_end_dt_cd,hr_api.g_varchar2) or
1872: nvl(p_rt_end_dt_rl,hr_api.g_number)
1873: <> nvl(ben_enp_shd.g_old_rec.rt_end_dt_rl,hr_api.g_number))
1874: or not l_api_updating) then
1875: --
1868: if (l_api_updating
1869: and
1870: (nvl(p_rt_end_dt_cd,hr_api.g_varchar2)
1871: <> nvl(ben_enp_shd.g_old_rec.rt_end_dt_cd,hr_api.g_varchar2) or
1872: nvl(p_rt_end_dt_rl,hr_api.g_number)
1873: <> nvl(ben_enp_shd.g_old_rec.rt_end_dt_rl,hr_api.g_number))
1874: or not l_api_updating) then
1875: --
1876: if (p_rt_end_dt_cd = 'RL' and p_rt_end_dt_rl is null) then
1869: and
1870: (nvl(p_rt_end_dt_cd,hr_api.g_varchar2)
1871: <> nvl(ben_enp_shd.g_old_rec.rt_end_dt_cd,hr_api.g_varchar2) or
1872: nvl(p_rt_end_dt_rl,hr_api.g_number)
1873: <> nvl(ben_enp_shd.g_old_rec.rt_end_dt_rl,hr_api.g_number))
1874: or not l_api_updating) then
1875: --
1876: if (p_rt_end_dt_cd = 'RL' and p_rt_end_dt_rl is null) then
1877: --
1879: fnd_message.raise_error;
1880: --
1881: end if;
1882: --
1883: if nvl(p_rt_end_dt_cd,hr_api.g_varchar2) <> 'RL'
1884: and p_rt_end_dt_rl is not null then
1885: --
1886: fnd_message.set_name('BEN','BEN_91624_CD_RL_2');
1887: fnd_message.raise_error;
1941: --
1942: if (p_bdgt_upd_strt_dt is not null and p_bdgt_upd_end_dt is not null)
1943: and
1944: ((l_api_updating
1945: and (p_bdgt_upd_strt_dt <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_strt_dt,hr_api.g_date) or
1946: p_bdgt_upd_end_dt <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_end_dt,hr_api.g_date)
1947: )
1948: )
1949: or not l_api_updating)
1942: if (p_bdgt_upd_strt_dt is not null and p_bdgt_upd_end_dt is not null)
1943: and
1944: ((l_api_updating
1945: and (p_bdgt_upd_strt_dt <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_strt_dt,hr_api.g_date) or
1946: p_bdgt_upd_end_dt <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_end_dt,hr_api.g_date)
1947: )
1948: )
1949: or not l_api_updating)
1950: then
2013: --
2014: if (p_ws_upd_strt_dt is not null and p_ws_upd_end_dt is not null)
2015: and
2016: ((l_api_updating
2017: and (p_ws_upd_strt_dt <> nvl(ben_enp_shd.g_old_rec.ws_upd_strt_dt,hr_api.g_date) or
2018: p_ws_upd_end_dt <> nvl(ben_enp_shd.g_old_rec.ws_upd_end_dt,hr_api.g_date)
2019: )
2020: )
2021: or not l_api_updating)
2014: if (p_ws_upd_strt_dt is not null and p_ws_upd_end_dt is not null)
2015: and
2016: ((l_api_updating
2017: and (p_ws_upd_strt_dt <> nvl(ben_enp_shd.g_old_rec.ws_upd_strt_dt,hr_api.g_date) or
2018: p_ws_upd_end_dt <> nvl(ben_enp_shd.g_old_rec.ws_upd_end_dt,hr_api.g_date)
2019: )
2020: )
2021: or not l_api_updating)
2022: then
2081: Begin
2082: --
2083: hr_utility.set_location('Entering:'||l_proc, 5);
2084: --
2085: hr_api.mandatory_arg_error(p_api_name => l_proc,
2086: p_argument => 'strt_dt',
2087: p_argument_value => p_strt_dt);
2088: --
2089: hr_api.mandatory_arg_error(p_api_name => l_proc,
2085: hr_api.mandatory_arg_error(p_api_name => l_proc,
2086: p_argument => 'strt_dt',
2087: p_argument_value => p_strt_dt);
2088: --
2089: hr_api.mandatory_arg_error(p_api_name => l_proc,
2090: p_argument => 'end_dt',
2091: p_argument_value => p_end_dt);
2092: --
2093:
2097: --
2098: -- check it if changing either start or end date.
2099: --
2100: if (l_api_updating
2101: and (nvl(p_bdgt_upd_strt_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_strt_dt,hr_api.g_date) or
2102: nvl(p_bdgt_upd_end_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_end_dt,hr_api.g_date) or
2103: p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
2104: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
2105: )
2098: -- check it if changing either start or end date.
2099: --
2100: if (l_api_updating
2101: and (nvl(p_bdgt_upd_strt_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_strt_dt,hr_api.g_date) or
2102: nvl(p_bdgt_upd_end_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_end_dt,hr_api.g_date) or
2103: p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
2104: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
2105: )
2106: or not l_api_updating)
2099: --
2100: if (l_api_updating
2101: and (nvl(p_bdgt_upd_strt_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_strt_dt,hr_api.g_date) or
2102: nvl(p_bdgt_upd_end_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_end_dt,hr_api.g_date) or
2103: p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
2104: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
2105: )
2106: or not l_api_updating)
2107: then
2100: if (l_api_updating
2101: and (nvl(p_bdgt_upd_strt_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_strt_dt,hr_api.g_date) or
2102: nvl(p_bdgt_upd_end_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.bdgt_upd_end_dt,hr_api.g_date) or
2103: p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
2104: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
2105: )
2106: or not l_api_updating)
2107: then
2108: --
2175: Begin
2176: --
2177: hr_utility.set_location('Entering:'||l_proc, 5);
2178: --
2179: hr_api.mandatory_arg_error(p_api_name => l_proc,
2180: p_argument => 'strt_dt',
2181: p_argument_value => p_strt_dt);
2182: --
2183: hr_api.mandatory_arg_error(p_api_name => l_proc,
2179: hr_api.mandatory_arg_error(p_api_name => l_proc,
2180: p_argument => 'strt_dt',
2181: p_argument_value => p_strt_dt);
2182: --
2183: hr_api.mandatory_arg_error(p_api_name => l_proc,
2184: p_argument => 'end_dt',
2185: p_argument_value => p_end_dt);
2186: --
2187:
2191: --
2192: -- check it if changing either start or end date.
2193: --
2194: if (l_api_updating
2195: and (nvl(p_ws_upd_strt_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.ws_upd_strt_dt,hr_api.g_date) or
2196: nvl(p_ws_upd_end_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.ws_upd_end_dt,hr_api.g_date)or
2197: p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
2198: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
2199: )
2192: -- check it if changing either start or end date.
2193: --
2194: if (l_api_updating
2195: and (nvl(p_ws_upd_strt_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.ws_upd_strt_dt,hr_api.g_date) or
2196: nvl(p_ws_upd_end_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.ws_upd_end_dt,hr_api.g_date)or
2197: p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
2198: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
2199: )
2200: or not l_api_updating)
2193: --
2194: if (l_api_updating
2195: and (nvl(p_ws_upd_strt_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.ws_upd_strt_dt,hr_api.g_date) or
2196: nvl(p_ws_upd_end_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.ws_upd_end_dt,hr_api.g_date)or
2197: p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
2198: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
2199: )
2200: or not l_api_updating)
2201: then
2194: if (l_api_updating
2195: and (nvl(p_ws_upd_strt_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.ws_upd_strt_dt,hr_api.g_date) or
2196: nvl(p_ws_upd_end_dt,hr_api.g_date) <> nvl(ben_enp_shd.g_old_rec.ws_upd_end_dt,hr_api.g_date)or
2197: p_strt_dt <> nvl(ben_enp_shd.g_old_rec.strt_dt,hr_api.g_date) or
2198: p_end_dt <> nvl(ben_enp_shd.g_old_rec.end_dt,hr_api.g_date)
2199: )
2200: or not l_api_updating)
2201: then
2202: --
2283: (p_enrt_perd_id => p_enrt_perd_id,
2284: p_object_version_number => p_object_version_number);
2285: --
2286: if (l_api_updating
2287: and p_defer_deenrol_flag <> nvl(ben_enp_shd.g_old_rec.defer_deenrol_flag,hr_api.g_number)
2288: or not l_api_updating) and p_defer_deenrol_flag is not null then
2289: --
2290: open c_pl_cd;
2291: fetch c_pl_cd into l_pl_cd;
2349: (p_enrt_perd_id => p_enrt_perd_id,
2350: p_object_version_number => p_object_version_number);
2351: --
2352: if (l_api_updating
2353: and p_defer_deenrol_flag <> nvl(ben_enp_shd.g_old_rec.defer_deenrol_flag,hr_api.g_varchar2)
2354: or not l_api_updating)
2355: and p_defer_deenrol_flag is not null then
2356: --
2357: if hr_api.not_exists_in_hr_lookups
2353: and p_defer_deenrol_flag <> nvl(ben_enp_shd.g_old_rec.defer_deenrol_flag,hr_api.g_varchar2)
2354: or not l_api_updating)
2355: and p_defer_deenrol_flag is not null then
2356: --
2357: if hr_api.not_exists_in_hr_lookups
2358: (p_lookup_type => 'YES_NO',
2359: p_lookup_code => p_defer_deenrol_flag,
2360: p_effective_date => p_effective_date) then
2361: --
2386: --
2387: -- Call all supporting business operations
2388: --
2389: --
2390: hr_api.validate_bus_grp_id(p_rec.business_group_id); -- Validate Bus Grp
2391: --
2392: chk_enrt_perd_id
2393: (p_enrt_perd_id => p_rec.enrt_perd_id,
2394: p_object_version_number => p_rec.object_version_number);
2598: --
2599: -- Call all supporting business operations
2600: --
2601: --
2602: hr_api.validate_bus_grp_id(p_rec.business_group_id); -- Validate Bus Grp
2603: --
2604: chk_enrt_perd_id
2605: (p_enrt_perd_id => p_rec.enrt_perd_id,
2606: p_object_version_number => p_rec.object_version_number);
2841: hr_utility.set_location('Entering:'|| l_proc, 10);
2842: --
2843: -- Ensure that all the mandatory parameter are not null
2844: --
2845: hr_api.mandatory_arg_error(p_api_name => l_proc,
2846: p_argument => 'enrt_perd_id',
2847: p_argument_value => p_enrt_perd_id);
2848: --
2849: open csr_leg_code;