54: --
55: -- The person id is not valid
56: --
57: close csr_person;
58: fnd_message.set_name ('SSP' , 'SSP_35057_BAD_PERSON_ID' ) ;
59: fnd_message.raise_error;
60: --
61: elsif p_sex <> 'F' then
62: --
55: -- The person id is not valid
56: --
57: close csr_person;
58: fnd_message.set_name ('SSP' , 'SSP_35057_BAD_PERSON_ID' ) ;
59: fnd_message.raise_error;
60: --
61: elsif p_sex <> 'F' then
62: --
63: -- The person is not female (and therefore may not have maternity)
62: --
63: -- The person is not female (and therefore may not have maternity)
64: --
65: close csr_person;
66: fnd_message.set_name ('SSP', 'SSP_35002_PER_NOT_FEMALE');
67: fnd_message.raise_error;
68: --
69: else
70: close csr_person;
63: -- The person is not female (and therefore may not have maternity)
64: --
65: close csr_person;
66: fnd_message.set_name ('SSP', 'SSP_35002_PER_NOT_FEMALE');
67: fnd_message.raise_error;
68: --
69: else
70: close csr_person;
71: end if;
115: --
116: if csr_duplicate_due_date%FOUND then
117: --
118: close csr_duplicate_due_date;
119: fnd_message.set_name ('SSP', 'SSP_35009_DUP_DUE_DATE');
120: fnd_message.raise_error;
121: --
122: end if;
123: --
116: if csr_duplicate_due_date%FOUND then
117: --
118: close csr_duplicate_due_date;
119: fnd_message.set_name ('SSP', 'SSP_35009_DUP_DUE_DATE');
120: fnd_message.raise_error;
121: --
122: end if;
123: --
124: close csr_duplicate_due_date;
138:
139: Procedure check_actual_birth (p_actual_birth_date in date) is
140: BEGIN
141: if p_actual_birth_date > SYSDATE then
142: fnd_message.set_name('SSP','SSP_35003_INV_FUTURE_DATE');
143: fnd_message.raise_error;
144: end if;
145: END check_actual_birth;
146: --
139: Procedure check_actual_birth (p_actual_birth_date in date) is
140: BEGIN
141: if p_actual_birth_date > SYSDATE then
142: fnd_message.set_name('SSP','SSP_35003_INV_FUTURE_DATE');
143: fnd_message.raise_error;
144: end if;
145: END check_actual_birth;
146: --
147: -- ----------------------------------------------------------------------------
155:
156: Procedure check_live_birth (p_live_birth_flag in out nocopy varchar2, p_actual_birth_date in date) is
157: BEGIN
158: if p_live_birth_flag = 'N' and p_actual_birth_date is null then
159: fnd_message.set_name ('SSP', 'SSP_35004_LIVE_BIRTH_FLAG');
160: fnd_message.raise_error;
161: p_live_birth_flag := 'Y';
162: end if;
163: END check_live_birth;
156: Procedure check_live_birth (p_live_birth_flag in out nocopy varchar2, p_actual_birth_date in date) is
157: BEGIN
158: if p_live_birth_flag = 'N' and p_actual_birth_date is null then
159: fnd_message.set_name ('SSP', 'SSP_35004_LIVE_BIRTH_FLAG');
160: fnd_message.raise_error;
161: p_live_birth_flag := 'Y';
162: end if;
163: END check_live_birth;
164: --
174: Procedure check_date_notified (p_notification_of_birth_date in date,
175: p_actual_birth_date in date) is
176: BEGIN
177: if p_notification_of_birth_date < p_actual_birth_date then
178: fnd_message.set_name ('SSP', 'SSP_35012_EARLY_BIRTH_NOTIFIC');
179: fnd_message.raise_error;
180: elsif p_notification_of_birth_date > SYSDATE then
181: fnd_message.set_name ('SSP', 'SSP_35019_INV_NOTIF_DATE');
182: fnd_message.raise_error;
175: p_actual_birth_date in date) is
176: BEGIN
177: if p_notification_of_birth_date < p_actual_birth_date then
178: fnd_message.set_name ('SSP', 'SSP_35012_EARLY_BIRTH_NOTIFIC');
179: fnd_message.raise_error;
180: elsif p_notification_of_birth_date > SYSDATE then
181: fnd_message.set_name ('SSP', 'SSP_35019_INV_NOTIF_DATE');
182: fnd_message.raise_error;
183: end if;
177: if p_notification_of_birth_date < p_actual_birth_date then
178: fnd_message.set_name ('SSP', 'SSP_35012_EARLY_BIRTH_NOTIFIC');
179: fnd_message.raise_error;
180: elsif p_notification_of_birth_date > SYSDATE then
181: fnd_message.set_name ('SSP', 'SSP_35019_INV_NOTIF_DATE');
182: fnd_message.raise_error;
183: end if;
184: END check_date_notified;
185: --
178: fnd_message.set_name ('SSP', 'SSP_35012_EARLY_BIRTH_NOTIFIC');
179: fnd_message.raise_error;
180: elsif p_notification_of_birth_date > SYSDATE then
181: fnd_message.set_name ('SSP', 'SSP_35019_INV_NOTIF_DATE');
182: fnd_message.raise_error;
183: end if;
184: END check_date_notified;
185: --
186: -- -----------------------------------------------------------------------------
200: p_mpp_start_date in date,
201: p_earliest_mpp_start in date) is
202: BEGIN
203: if p_intend_to_return = 'N' and p_stated_return_date is not null then
204: fnd_message.set_name('SSP', 'SSP_35013_INV_EVNT_RET_DATE');
205: fnd_message.raise_error;
206: elsif p_stated_return_date < nvl(p_mpp_start_date, p_stated_return_date) then
207: fnd_message.set_name ('SSP', 'SSP_35006_RET_DATE_LT_MPP');
208: fnd_message.raise_error;
201: p_earliest_mpp_start in date) is
202: BEGIN
203: if p_intend_to_return = 'N' and p_stated_return_date is not null then
204: fnd_message.set_name('SSP', 'SSP_35013_INV_EVNT_RET_DATE');
205: fnd_message.raise_error;
206: elsif p_stated_return_date < nvl(p_mpp_start_date, p_stated_return_date) then
207: fnd_message.set_name ('SSP', 'SSP_35006_RET_DATE_LT_MPP');
208: fnd_message.raise_error;
209: elsif p_stated_return_date < nvl(p_earliest_mpp_start, p_stated_return_date) then
203: if p_intend_to_return = 'N' and p_stated_return_date is not null then
204: fnd_message.set_name('SSP', 'SSP_35013_INV_EVNT_RET_DATE');
205: fnd_message.raise_error;
206: elsif p_stated_return_date < nvl(p_mpp_start_date, p_stated_return_date) then
207: fnd_message.set_name ('SSP', 'SSP_35006_RET_DATE_LT_MPP');
208: fnd_message.raise_error;
209: elsif p_stated_return_date < nvl(p_earliest_mpp_start, p_stated_return_date) then
210: fnd_message.set_name ('SSP','SSP_35007_RET_DTE_LT_EMPSD');
211: fnd_message.raise_error;
204: fnd_message.set_name('SSP', 'SSP_35013_INV_EVNT_RET_DATE');
205: fnd_message.raise_error;
206: elsif p_stated_return_date < nvl(p_mpp_start_date, p_stated_return_date) then
207: fnd_message.set_name ('SSP', 'SSP_35006_RET_DATE_LT_MPP');
208: fnd_message.raise_error;
209: elsif p_stated_return_date < nvl(p_earliest_mpp_start, p_stated_return_date) then
210: fnd_message.set_name ('SSP','SSP_35007_RET_DTE_LT_EMPSD');
211: fnd_message.raise_error;
212: end if;
206: elsif p_stated_return_date < nvl(p_mpp_start_date, p_stated_return_date) then
207: fnd_message.set_name ('SSP', 'SSP_35006_RET_DATE_LT_MPP');
208: fnd_message.raise_error;
209: elsif p_stated_return_date < nvl(p_earliest_mpp_start, p_stated_return_date) then
210: fnd_message.set_name ('SSP','SSP_35007_RET_DTE_LT_EMPSD');
211: fnd_message.raise_error;
212: end if;
213: END check_stated_ret_date;
214: --
207: fnd_message.set_name ('SSP', 'SSP_35006_RET_DATE_LT_MPP');
208: fnd_message.raise_error;
209: elsif p_stated_return_date < nvl(p_earliest_mpp_start, p_stated_return_date) then
210: fnd_message.set_name ('SSP','SSP_35007_RET_DTE_LT_EMPSD');
211: fnd_message.raise_error;
212: end if;
213: END check_stated_ret_date;
214: --
215: --------------------------------------------------------------------------------
227: p_earliest_mpp_start_date in date,
228: p_actual_birth_date in date) is
229: BEGIN
230: if p_mpp_start_date < p_earliest_mpp_start_date and p_actual_birth_date IS NULL then
231: fnd_message.set_name ('PER', 'SSP_35114_SMCAL_EMPP_TOO_EARLY');
232: fnd_message.raise_error;
233: end if;
234:
235: if NOT(p_actual_birth_date IS NULL) then
228: p_actual_birth_date in date) is
229: BEGIN
230: if p_mpp_start_date < p_earliest_mpp_start_date and p_actual_birth_date IS NULL then
231: fnd_message.set_name ('PER', 'SSP_35114_SMCAL_EMPP_TOO_EARLY');
232: fnd_message.raise_error;
233: end if;
234:
235: if NOT(p_actual_birth_date IS NULL) then
236: if (p_mpp_start_date IS NULL) OR (p_mpp_start_date < p_earliest_mpp_start_date) THEN
284: p_actual_birth_date > p_prev_mpp_start_date and
285: p_actual_birth_date is not null then
286: -- user cannot reset the value of MPP
287: if p_prev_mpp_start_date <> p_mpp_start_date then
288: fnd_message.set_name('SSP','SSP_36078_MPP_RESET_MPP');
289: fnd_message.raise_error;
290: end if;
291: elsif ( p_due_date >= fnd_date.canonical_to_date('2003/04/06 00:00:00')
292: and p_mpp_start_date = p_actual_birth_date + 1 ) or
285: p_actual_birth_date is not null then
286: -- user cannot reset the value of MPP
287: if p_prev_mpp_start_date <> p_mpp_start_date then
288: fnd_message.set_name('SSP','SSP_36078_MPP_RESET_MPP');
289: fnd_message.raise_error;
290: end if;
291: elsif ( p_due_date >= fnd_date.canonical_to_date('2003/04/06 00:00:00')
292: and p_mpp_start_date = p_actual_birth_date + 1 ) or
293: ( pregnancy_related_absences%FOUND and
301: CLOSE pregnancy_related_absences;
302: null;
303: else
304: CLOSE pregnancy_related_absences;
305: fnd_message.set_name('SSP','SSP_36077_MPP_PREMATURE_DAY');
306: fnd_message.raise_error;
307: end if;
308: -- This condition checks if the baby was born during the MPP, if yes then
309: -- the user cannot set the MPP start date here
302: null;
303: else
304: CLOSE pregnancy_related_absences;
305: fnd_message.set_name('SSP','SSP_36077_MPP_PREMATURE_DAY');
306: fnd_message.raise_error;
307: end if;
308: -- This condition checks if the baby was born during the MPP, if yes then
309: -- the user cannot set the MPP start date here
310: /*
310: /*
311: elsif pregnancy_related_absences%FOUND and
312: p_mpp_start_date <> l_pregnancy_related_illness.sickness_start_date then
313: CLOSE pregnancy_related_absences;
314: fnd_message.set_name('SSP','SSP_36079_MPP_SICKNESS_DAY');
315: fnd_message.raise_error;
316: */
317: -- begin bug fix 5331152
318: elsif pregnancy_related_absences%FOUND and
311: elsif pregnancy_related_absences%FOUND and
312: p_mpp_start_date <> l_pregnancy_related_illness.sickness_start_date then
313: CLOSE pregnancy_related_absences;
314: fnd_message.set_name('SSP','SSP_36079_MPP_SICKNESS_DAY');
315: fnd_message.raise_error;
316: */
317: -- begin bug fix 5331152
318: elsif pregnancy_related_absences%FOUND and
319: p_mpp_start_date = l_pregnancy_related_illness.sickness_start_date then
317: -- begin bug fix 5331152
318: elsif pregnancy_related_absences%FOUND and
319: p_mpp_start_date = l_pregnancy_related_illness.sickness_start_date then
320: CLOSE pregnancy_related_absences;
321: fnd_message.set_name('SSP','SSP_35051_MPP_ILLNESS_DATE');
322: fnd_message.raise_error;
323: elsif pregnancy_related_absences%FOUND and
324: p_mpp_start_date = l_pregnancy_related_illness.sickness_start_date + 1 then
325: CLOSE pregnancy_related_absences;
318: elsif pregnancy_related_absences%FOUND and
319: p_mpp_start_date = l_pregnancy_related_illness.sickness_start_date then
320: CLOSE pregnancy_related_absences;
321: fnd_message.set_name('SSP','SSP_35051_MPP_ILLNESS_DATE');
322: fnd_message.raise_error;
323: elsif pregnancy_related_absences%FOUND and
324: p_mpp_start_date = l_pregnancy_related_illness.sickness_start_date + 1 then
325: CLOSE pregnancy_related_absences;
326: null;
328: elsif p_due_date >= fnd_date.canonical_to_date('2003/04/06 00:00:00') and
329: p_actual_birth_date is not null and
330: p_mpp_start_date <> p_actual_birth_date + 1 then
331: CLOSE pregnancy_related_absences;
332: fnd_message.set_name('SSP','SSP_36077_MPP_PREMATURE_DAY');
333: fnd_message.raise_error;
334: elsif to_char(to_date(to_char(p_mpp_start_date,'DD/MM/YYYY'),'DD/MM/YYYY'),'fmDAY') <> l_sunday
335: and
336: p_due_date < fnd_date.canonical_to_date('2007/04/01 00:00:00') then
329: p_actual_birth_date is not null and
330: p_mpp_start_date <> p_actual_birth_date + 1 then
331: CLOSE pregnancy_related_absences;
332: fnd_message.set_name('SSP','SSP_36077_MPP_PREMATURE_DAY');
333: fnd_message.raise_error;
334: elsif to_char(to_date(to_char(p_mpp_start_date,'DD/MM/YYYY'),'DD/MM/YYYY'),'fmDAY') <> l_sunday
335: and
336: p_due_date < fnd_date.canonical_to_date('2007/04/01 00:00:00') then
337: CLOSE pregnancy_related_absences;
334: elsif to_char(to_date(to_char(p_mpp_start_date,'DD/MM/YYYY'),'DD/MM/YYYY'),'fmDAY') <> l_sunday
335: and
336: p_due_date < fnd_date.canonical_to_date('2007/04/01 00:00:00') then
337: CLOSE pregnancy_related_absences;
338: fnd_message.set_name('SSP','SSP_35054_MPP_NOT_SUNDAY');
339: fnd_message.raise_error;
340: end if;
341:
342: END check_MPP_start_date_2;
335: and
336: p_due_date < fnd_date.canonical_to_date('2007/04/01 00:00:00') then
337: CLOSE pregnancy_related_absences;
338: fnd_message.set_name('SSP','SSP_35054_MPP_NOT_SUNDAY');
339: fnd_message.raise_error;
340: end if;
341:
342: END check_MPP_start_date_2;
343:
357: then
358: p_mpp_start_date := p_start_date_mat_allow;
359: elsif p_mpp_start_date > nvl(p_start_date_mat_allow, p_mpp_start_date)
360: then
361: fnd_message.set_name ('SSP', 'SSP_35014_FWD_MPP_START');
362: fnd_message.raise_error;
363: end if;
364: END check_forward_MPP_date;
365: --
358: p_mpp_start_date := p_start_date_mat_allow;
359: elsif p_mpp_start_date > nvl(p_start_date_mat_allow, p_mpp_start_date)
360: then
361: fnd_message.set_name ('SSP', 'SSP_35014_FWD_MPP_START');
362: fnd_message.raise_error;
363: end if;
364: END check_forward_MPP_date;
365: --
366: -- -----------------------------------------------------------------------------
458: l_chk_date := p_ewc - l_element_details.earliest_SMP_evidence;
459:
460: for csr_ev in csr_evidence loop
461: if csr_ev.evidence_date < l_chk_date then
462: fnd_message.set_name ('SSP', 'SSP_36075_EVIDENCE_NOW_INVALID');
463: fnd_message.raise_error;
464: end if;
465: end loop;
466: --
459:
460: for csr_ev in csr_evidence loop
461: if csr_ev.evidence_date < l_chk_date then
462: fnd_message.set_name ('SSP', 'SSP_36075_EVIDENCE_NOW_INVALID');
463: fnd_message.raise_error;
464: end if;
465: end loop;
466: --
467: END evd_before_ewc_due_date_change;
485: get_SMP_element_details(p_effective_date, p_element_name, l_element_details);
486: --
487: l_chk_date := p_ewc - l_element_details.earliest_SMP_evidence;
488: if p_evidence_date < l_chk_date then
489: fnd_message.set_name ('SSP', 'SSP_35028_LATE_EVID_DATE');
490: fnd_message.raise_error;
491: end if;
492: END evd_before_ewc;
493:
486: --
487: l_chk_date := p_ewc - l_element_details.earliest_SMP_evidence;
488: if p_evidence_date < l_chk_date then
489: fnd_message.set_name ('SSP', 'SSP_35028_LATE_EVID_DATE');
490: fnd_message.raise_error;
491: end if;
492: END evd_before_ewc;
493:
494: -- -----------------------------------------------------------------------------
556: PROCEDURE CHECK_CHILD_EXPECTED_DATE(p_due_date in date,
557: p_matching_date in date) is
558: Begin
559: If p_due_date < p_matching_date then
560: fnd_message.set_name('SSP','SSP_36094_CHILD_EXPECTED_DATE');
561: fnd_message.raise_error;
562: End if;
563: End;
564:
557: p_matching_date in date) is
558: Begin
559: If p_due_date < p_matching_date then
560: fnd_message.set_name('SSP','SSP_36094_CHILD_EXPECTED_DATE');
561: fnd_message.raise_error;
562: End if;
563: End;
564:
565: PROCEDURE CHECK_APP_START_DATE(p_mpp_start_date in date,
567: p_due_date in date) is
568: Begin
569:
570: If p_placement_date is not null and p_mpp_start_date > p_placement_date then
571: fnd_message.set_name('SSP','SSP_36085_APP_DATE_PLACEMENT');
572: fnd_message.raise_error;
573: end if;
574:
575: If p_mpp_start_date < ssp_sap_pkg.EARLIEST_APP_START_DATE(p_due_date) then
568: Begin
569:
570: If p_placement_date is not null and p_mpp_start_date > p_placement_date then
571: fnd_message.set_name('SSP','SSP_36085_APP_DATE_PLACEMENT');
572: fnd_message.raise_error;
573: end if;
574:
575: If p_mpp_start_date < ssp_sap_pkg.EARLIEST_APP_START_DATE(p_due_date) then
576: fnd_message.set_name('SSP','SSP_36083_APP_DATE_EARLY');
572: fnd_message.raise_error;
573: end if;
574:
575: If p_mpp_start_date < ssp_sap_pkg.EARLIEST_APP_START_DATE(p_due_date) then
576: fnd_message.set_name('SSP','SSP_36083_APP_DATE_EARLY');
577: fnd_message.raise_error;
578: End if;
579:
580: If p_placement_date is null and p_mpp_start_date > p_due_date then
573: end if;
574:
575: If p_mpp_start_date < ssp_sap_pkg.EARLIEST_APP_START_DATE(p_due_date) then
576: fnd_message.set_name('SSP','SSP_36083_APP_DATE_EARLY');
577: fnd_message.raise_error;
578: End if;
579:
580: If p_placement_date is null and p_mpp_start_date > p_due_date then
581: fnd_message.set_name('SSP','SSP_36098_APP_DATE_LATE');
577: fnd_message.raise_error;
578: End if;
579:
580: If p_placement_date is null and p_mpp_start_date > p_due_date then
581: fnd_message.set_name('SSP','SSP_36098_APP_DATE_LATE');
582: fnd_message.raise_error;
583: End if;
584:
585: End ;
578: End if;
579:
580: If p_placement_date is null and p_mpp_start_date > p_due_date then
581: fnd_message.set_name('SSP','SSP_36098_APP_DATE_LATE');
582: fnd_message.raise_error;
583: End if;
584:
585: End ;
586:
588: p_placement_date in date,
589: p_due_date in date) is
590: begin
591: if p_placement_date is null and p_ppp_start_date is not null then
592: fnd_message.set_name('SSP','SSP_36090_PPP_DATE_PLACE_NULL');
593: fnd_message.raise_error;
594: end if;
595:
596: if p_ppp_start_date < ssp_pad_pkg.EARLIEST_PPP_START_DATE(p_placement_date)
589: p_due_date in date) is
590: begin
591: if p_placement_date is null and p_ppp_start_date is not null then
592: fnd_message.set_name('SSP','SSP_36090_PPP_DATE_PLACE_NULL');
593: fnd_message.raise_error;
594: end if;
595:
596: if p_ppp_start_date < ssp_pad_pkg.EARLIEST_PPP_START_DATE(p_placement_date)
597: then
594: end if;
595:
596: if p_ppp_start_date < ssp_pad_pkg.EARLIEST_PPP_START_DATE(p_placement_date)
597: then
598: fnd_message.set_name('SSP','SSP_36088_PPP_DATE_PLACE_EARLY');
599: fnd_message.raise_error;
600: end if;
601:
602: if p_ppp_start_date > ssp_pad_pkg.LATEST_PPP_START_DATE(p_placement_date)
595:
596: if p_ppp_start_date < ssp_pad_pkg.EARLIEST_PPP_START_DATE(p_placement_date)
597: then
598: fnd_message.set_name('SSP','SSP_36088_PPP_DATE_PLACE_EARLY');
599: fnd_message.raise_error;
600: end if;
601:
602: if p_ppp_start_date > ssp_pad_pkg.LATEST_PPP_START_DATE(p_placement_date)
603: then
600: end if;
601:
602: if p_ppp_start_date > ssp_pad_pkg.LATEST_PPP_START_DATE(p_placement_date)
603: then
604: fnd_message.set_name('SSP','SSP_36087_PPP_DATE_PLACE_LATE');
605: fnd_message.raise_error;
606: end if;
607: end;
608:
601:
602: if p_ppp_start_date > ssp_pad_pkg.LATEST_PPP_START_DATE(p_placement_date)
603: then
604: fnd_message.set_name('SSP','SSP_36087_PPP_DATE_PLACE_LATE');
605: fnd_message.raise_error;
606: end if;
607: end;
608:
609: PROCEDURE CHECK_PPP_START_DATE(p_ppp_start_date in date,
611: p_ewc in date,
612: p_due_date in date) is
613: begin
614: if p_birth_date is null and p_ppp_start_date is not null then
615: fnd_message.set_name('SSP','SSP_36092_PPP_DATE_BIRTH_NULL');
616: fnd_message.raise_error;
617: end if;
618:
619: if p_ppp_start_date > ssp_pab_pkg.LATEST_PPP_START_DATE(p_birth_date,
612: p_due_date in date) is
613: begin
614: if p_birth_date is null and p_ppp_start_date is not null then
615: fnd_message.set_name('SSP','SSP_36092_PPP_DATE_BIRTH_NULL');
616: fnd_message.raise_error;
617: end if;
618:
619: if p_ppp_start_date > ssp_pab_pkg.LATEST_PPP_START_DATE(p_birth_date,
620: p_ewc,
619: if p_ppp_start_date > ssp_pab_pkg.LATEST_PPP_START_DATE(p_birth_date,
620: p_ewc,
621: p_due_date)
622: then
623: fnd_message.set_name('SSP','SSP_36097_PPP_DATE_BIRTH_LATE');
624: fnd_message.raise_error;
625: end if;
626:
627: if p_ppp_start_date < ssp_pab_pkg.EARLIEST_PPP_START_DATE(p_birth_date)
620: p_ewc,
621: p_due_date)
622: then
623: fnd_message.set_name('SSP','SSP_36097_PPP_DATE_BIRTH_LATE');
624: fnd_message.raise_error;
625: end if;
626:
627: if p_ppp_start_date < ssp_pab_pkg.EARLIEST_PPP_START_DATE(p_birth_date)
628: then
625: end if;
626:
627: if p_ppp_start_date < ssp_pab_pkg.EARLIEST_PPP_START_DATE(p_birth_date)
628: then
629: fnd_message.set_name('SSP','SSP_36096_PPP_DATE_BIRTH');
630: fnd_message.raise_error;
631: end if;
632:
633: end;
626:
627: if p_ppp_start_date < ssp_pab_pkg.EARLIEST_PPP_START_DATE(p_birth_date)
628: then
629: fnd_message.set_name('SSP','SSP_36096_PPP_DATE_BIRTH');
630: fnd_message.raise_error;
631: end if;
632:
633: end;
634:
635: PROCEDURE CHECK_PLACEMENT_DATE( p_placement_date in date,
636: P_MATCHING_DATE IN DATE) is
637: begin
638: If p_placement_date < P_MATCHING_DATE then
639: fnd_message.set_name('SSP','SSP_36091_PLACE_DATE_MATCHING');
640: fnd_message.raise_error;
641: End if;
642: End;
643:
636: P_MATCHING_DATE IN DATE) is
637: begin
638: If p_placement_date < P_MATCHING_DATE then
639: fnd_message.set_name('SSP','SSP_36091_PLACE_DATE_MATCHING');
640: fnd_message.raise_error;
641: End if;
642: End;
643:
644: PROCEDURE CHECK_DISRUPTED_PLACEMENT_DATE (p_disrupted_placement_date in date,
644: PROCEDURE CHECK_DISRUPTED_PLACEMENT_DATE (p_disrupted_placement_date in date,
645: p_mpp_start_date in date) is
646: Begin
647: If p_disrupted_placement_date < p_mpp_start_date then
648: fnd_message.set_name('SSP','SSP_36095_APP_DATE_DISRUPTED');
649: fnd_message.raise_error;
650: End if;
651: End ;
652:
645: p_mpp_start_date in date) is
646: Begin
647: If p_disrupted_placement_date < p_mpp_start_date then
648: fnd_message.set_name('SSP','SSP_36095_APP_DATE_DISRUPTED');
649: fnd_message.raise_error;
650: End if;
651: End ;
652:
653:
656: BEGIN
657: NULL;
658: /* Removed 18 year check due to legislation change
659: if months_between(p_due_date,p_actual_birth_date)/12 > 18 then
660: fnd_message.set_name('SSP','SSP_36093_ACTUALBIRTH_DATE_18');
661: fnd_message.raise_error;
662: end if;
663: */
664: END;
657: NULL;
658: /* Removed 18 year check due to legislation change
659: if months_between(p_due_date,p_actual_birth_date)/12 > 18 then
660: fnd_message.set_name('SSP','SSP_36093_ACTUALBIRTH_DATE_18');
661: fnd_message.raise_error;
662: end if;
663: */
664: END;
665: --
691: p_date in date) is
692: begin
693: if p_date is not null then
694: if p_start is null then
695: fnd_message.set_name ('SSP', 'SSP_35083_KIT_DAY_NO_MPP_APP');
696: fnd_message.raise_error;
697: end if;
698: if p_date < p_start or
699: p_date > p_end then
692: begin
693: if p_date is not null then
694: if p_start is null then
695: fnd_message.set_name ('SSP', 'SSP_35083_KIT_DAY_NO_MPP_APP');
696: fnd_message.raise_error;
697: end if;
698: if p_date < p_start or
699: p_date > p_end then
700: fnd_message.set_name ('SSP', 'SSP_35081_KIT_DAY_PERIOD');
696: fnd_message.raise_error;
697: end if;
698: if p_date < p_start or
699: p_date > p_end then
700: fnd_message.set_name ('SSP', 'SSP_35081_KIT_DAY_PERIOD');
701: fnd_message.set_token('DATE1', p_start);
702: fnd_message.set_token('DATE2',p_end);
703: fnd_message.raise_error;
704: else
697: end if;
698: if p_date < p_start or
699: p_date > p_end then
700: fnd_message.set_name ('SSP', 'SSP_35081_KIT_DAY_PERIOD');
701: fnd_message.set_token('DATE1', p_start);
702: fnd_message.set_token('DATE2',p_end);
703: fnd_message.raise_error;
704: else
705: /*Bug 7025371 if p_date <= l_2_weeks_after_birth then */
698: if p_date < p_start or
699: p_date > p_end then
700: fnd_message.set_name ('SSP', 'SSP_35081_KIT_DAY_PERIOD');
701: fnd_message.set_token('DATE1', p_start);
702: fnd_message.set_token('DATE2',p_end);
703: fnd_message.raise_error;
704: else
705: /*Bug 7025371 if p_date <= l_2_weeks_after_birth then */
706: if p_date between p_rec.actual_birth_date+1 and p_rec.actual_birth_date + 15 then
699: p_date > p_end then
700: fnd_message.set_name ('SSP', 'SSP_35081_KIT_DAY_PERIOD');
701: fnd_message.set_token('DATE1', p_start);
702: fnd_message.set_token('DATE2',p_end);
703: fnd_message.raise_error;
704: else
705: /*Bug 7025371 if p_date <= l_2_weeks_after_birth then */
706: if p_date between p_rec.actual_birth_date+1 and p_rec.actual_birth_date + 15 then
707: fnd_message.set_name ('SSP', 'SSP_35082_KIT_DAY_NOT_ALLOWS');
703: fnd_message.raise_error;
704: else
705: /*Bug 7025371 if p_date <= l_2_weeks_after_birth then */
706: if p_date between p_rec.actual_birth_date+1 and p_rec.actual_birth_date + 15 then
707: fnd_message.set_name ('SSP', 'SSP_35082_KIT_DAY_NOT_ALLOWS');
708: fnd_message.raise_error;
709: end if;
710: end if;
711: end if;
704: else
705: /*Bug 7025371 if p_date <= l_2_weeks_after_birth then */
706: if p_date between p_rec.actual_birth_date+1 and p_rec.actual_birth_date + 15 then
707: fnd_message.set_name ('SSP', 'SSP_35082_KIT_DAY_NOT_ALLOWS');
708: fnd_message.raise_error;
709: end if;
710: end if;
711: end if;
712: end;