DBA Data[Home] [Help]

APPS.IGS_RE_VAL_MIL dependencies on IGS_PR_MILESTONE

Line 10: -- To validate the logical uniqueness of IGS_PR_MILESTONEs

6: --smadathi 25-AUG-2001 Bug No. 1956374 .The function GENP_VAL_SDTT_SESS removed
7: --vkarthik 23-Apr-2004 Removed validations that checks for the milestone due date to be greater than sysdate
8: -- in RESP_VAL_MIL_DUE
9: -------------------------------------------------------------------------------------------
10: -- To validate the logical uniqueness of IGS_PR_MILESTONEs
11: FUNCTION RESP_VAL_MIL_UNIQ(
12: p_person_id IN NUMBER ,
13: p_ca_sequence_number IN NUMBER ,
14: p_message_name OUT NOCOPY VARCHAR2 )

Line 17: -- Validate that there are no ?logically? duplicate IGS_PR_MILESTONE records

13: p_ca_sequence_number IN NUMBER ,
14: p_message_name OUT NOCOPY VARCHAR2 )
15: RETURN BOOLEAN AS
16: BEGIN -- resp_val_mil_uniq
17: -- Validate that there are no ?logically? duplicate IGS_PR_MILESTONE records
18: -- for a candidate, where the IGS_PR_MILESTONE type and due date are the same.
19: DECLARE
20: v_return_false BOOLEAN;
21: CURSOR c_mil IS

Line 18: -- for a candidate, where the IGS_PR_MILESTONE type and due date are the same.

14: p_message_name OUT NOCOPY VARCHAR2 )
15: RETURN BOOLEAN AS
16: BEGIN -- resp_val_mil_uniq
17: -- Validate that there are no ?logically? duplicate IGS_PR_MILESTONE records
18: -- for a candidate, where the IGS_PR_MILESTONE type and due date are the same.
19: DECLARE
20: v_return_false BOOLEAN;
21: CURSOR c_mil IS
22: SELECT count('x') duplicate_cnt

Line 23: FROM IGS_PR_MILESTONE mil

19: DECLARE
20: v_return_false BOOLEAN;
21: CURSOR c_mil IS
22: SELECT count('x') duplicate_cnt
23: FROM IGS_PR_MILESTONE mil
24: WHERE mil.person_id = p_person_id and
25: mil.ca_sequence_number = p_ca_sequence_number
26: GROUP BY
27: mil.milestone_type,

Line 59: -- To validate the delete of IGS_PR_MILESTONE details

55: IGS_GE_MSG_STACK.ADD;
56: App_Exception.Raise_Exception;
57: END resp_val_mil_uniq;
58: --
59: -- To validate the delete of IGS_PR_MILESTONE details
60: FUNCTION RESP_VAL_MIL_DEL(
61: p_person_id IN NUMBER ,
62: p_ca_sequence_number IN NUMBER ,
63: p_sequence_number IN NUMBER ,

Line 68: -- Validate deletion of IGS_PR_MILESTONE record, checking for:

64: p_milestone_status IN VARCHAR2 ,
65: p_message_name OUT NOCOPY VARCHAR2 )
66: RETURN BOOLEAN AS
67: BEGIN -- resp_val_mil_del
68: -- Validate deletion of IGS_PR_MILESTONE record, checking for:
69: -- * Cannot delete IGS_PR_MILESTONE if status <> 'PLANNED'
70: -- * Cannot delete IGS_PR_MILESTONE which has had a status other than planned
71: DECLARE
72: cst_planned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'PLANNED';

Line 69: -- * Cannot delete IGS_PR_MILESTONE if status <> 'PLANNED'

65: p_message_name OUT NOCOPY VARCHAR2 )
66: RETURN BOOLEAN AS
67: BEGIN -- resp_val_mil_del
68: -- Validate deletion of IGS_PR_MILESTONE record, checking for:
69: -- * Cannot delete IGS_PR_MILESTONE if status <> 'PLANNED'
70: -- * Cannot delete IGS_PR_MILESTONE which has had a status other than planned
71: DECLARE
72: cst_planned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'PLANNED';
73: cst_replanned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'RE-PLANNED';

Line 70: -- * Cannot delete IGS_PR_MILESTONE which has had a status other than planned

66: RETURN BOOLEAN AS
67: BEGIN -- resp_val_mil_del
68: -- Validate deletion of IGS_PR_MILESTONE record, checking for:
69: -- * Cannot delete IGS_PR_MILESTONE if status <> 'PLANNED'
70: -- * Cannot delete IGS_PR_MILESTONE which has had a status other than planned
71: DECLARE
72: cst_planned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'PLANNED';
73: cst_replanned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'RE-PLANNED';
74: cst_achieved CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'ACHIEVED';

Line 72: cst_planned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'PLANNED';

68: -- Validate deletion of IGS_PR_MILESTONE record, checking for:
69: -- * Cannot delete IGS_PR_MILESTONE if status <> 'PLANNED'
70: -- * Cannot delete IGS_PR_MILESTONE which has had a status other than planned
71: DECLARE
72: cst_planned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'PLANNED';
73: cst_replanned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'RE-PLANNED';
74: cst_achieved CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'ACHIEVED';
75: v_s_milestone_status IGS_PR_MS_STAT.s_milestone_status%TYPE;
76: v_milh_mst_exists VARCHAR2(1);

Line 73: cst_replanned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'RE-PLANNED';

69: -- * Cannot delete IGS_PR_MILESTONE if status <> 'PLANNED'
70: -- * Cannot delete IGS_PR_MILESTONE which has had a status other than planned
71: DECLARE
72: cst_planned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'PLANNED';
73: cst_replanned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'RE-PLANNED';
74: cst_achieved CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'ACHIEVED';
75: v_s_milestone_status IGS_PR_MS_STAT.s_milestone_status%TYPE;
76: v_milh_mst_exists VARCHAR2(1);
77: CURSOR c_mst IS

Line 74: cst_achieved CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'ACHIEVED';

70: -- * Cannot delete IGS_PR_MILESTONE which has had a status other than planned
71: DECLARE
72: cst_planned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'PLANNED';
73: cst_replanned CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'RE-PLANNED';
74: cst_achieved CONSTANT IGS_PR_MILESTONE.milestone_status%TYPE := 'ACHIEVED';
75: v_s_milestone_status IGS_PR_MS_STAT.s_milestone_status%TYPE;
76: v_milh_mst_exists VARCHAR2(1);
77: CURSOR c_mst IS
78: SELECT mst.s_milestone_status

Line 83: FROM IGS_PR_MILESTONE_HST milh,

79: FROM IGS_PR_MS_STAT mst
80: WHERE mst.milestone_status = p_milestone_status;
81: CURSOR c_milh_mst IS
82: SELECT 'x'
83: FROM IGS_PR_MILESTONE_HST milh,
84: IGS_PR_MS_STAT mst
85: WHERE milh.person_id = p_person_id AND
86: milh.ca_sequence_number = p_ca_sequence_number AND
87: milh.sequence_number = p_sequence_number AND

Line 97: -- Select detail from IGS_PR_MILESTONE status

93: cst_achieved);
94: BEGIN
95: -- Set the default message number
96: p_message_name := null;
97: -- Select detail from IGS_PR_MILESTONE status
98: OPEN c_mst;
99: FETCH c_mst INTO v_s_milestone_status;
100: IF c_mst%FOUND THEN
101: CLOSE c_mst;

Line 137: -- To validate IGS_PR_MILESTONE actual date reached

133: IGS_GE_MSG_STACK.ADD;
134: App_Exception.Raise_Exception;
135: END resp_val_mil_del;
136: --
137: -- To validate IGS_PR_MILESTONE actual date reached
138: FUNCTION RESP_VAL_MIL_ACTUAL(
139: p_milestone_status IN VARCHAR2 ,
140: p_actual_reached_dt IN DATE ,
141: p_message_name OUT NOCOPY VARCHAR2 )

Line 145: -- Validate the IGS_PR_MILESTONE.actual_dt_reached, checking for:

141: p_message_name OUT NOCOPY VARCHAR2 )
142: RETURN BOOLEAN AS
143: BEGIN -- resp_val_mil_actual
144: -- Purpose: Briefly explain the functionality of the function
145: -- Validate the IGS_PR_MILESTONE.actual_dt_reached, checking for:
146: -- - Cannot be a future date
147: -- - Can only be set when IGS_PR_MILESTONE status is ACHIEVED or FAILED
148: -- - Must be set when IGS_PR_MILESTONE status is ACHIEVED or FAILED
149: DECLARE

Line 147: -- - Can only be set when IGS_PR_MILESTONE status is ACHIEVED or FAILED

143: BEGIN -- resp_val_mil_actual
144: -- Purpose: Briefly explain the functionality of the function
145: -- Validate the IGS_PR_MILESTONE.actual_dt_reached, checking for:
146: -- - Cannot be a future date
147: -- - Can only be set when IGS_PR_MILESTONE status is ACHIEVED or FAILED
148: -- - Must be set when IGS_PR_MILESTONE status is ACHIEVED or FAILED
149: DECLARE
150: CURSOR c_mst IS
151: SELECT mst.s_milestone_status

Line 148: -- - Must be set when IGS_PR_MILESTONE status is ACHIEVED or FAILED

144: -- Purpose: Briefly explain the functionality of the function
145: -- Validate the IGS_PR_MILESTONE.actual_dt_reached, checking for:
146: -- - Cannot be a future date
147: -- - Can only be set when IGS_PR_MILESTONE status is ACHIEVED or FAILED
148: -- - Must be set when IGS_PR_MILESTONE status is ACHIEVED or FAILED
149: DECLARE
150: CURSOR c_mst IS
151: SELECT mst.s_milestone_status
152: FROM IGS_PR_MS_STAT mst

Line 203: -- To validate IGS_PR_MILESTONE notification days

199: IGS_GE_MSG_STACK.ADD;
200: App_Exception.Raise_Exception;
201: END resp_val_mil_actual;
202: --
203: -- To validate IGS_PR_MILESTONE notification days
204: FUNCTION RESP_VAL_MIL_DAYS(
205: p_milestone_type IN VARCHAR2 ,
206: p_milestone_status IN VARCHAR2 ,
207: p_due_dt IN DATE ,

Line 217: -- Validate the IGS_PR_MILESTONE.{ovrd_ntfctn_imminent_days,

213: p_new_re_reminder_days IN NUMBER ,
214: p_message_name OUT NOCOPY VARCHAR2 )
215: RETURN BOOLEAN AS
216: BEGIN -- resp_val_mil_days
217: -- Validate the IGS_PR_MILESTONE.{ovrd_ntfctn_imminent_days,
218: -- ovrd_ntfctn_reminder_days, ovrd_ntfctn_re_reminder_days}
219: -- fields, checking,
220: -- Can only be changed if s_milestone_status is ?PLANNED? or ?RE-PLANNED?.
221: -- The imminent_days cannot be changed to bring the notification days

Line 233: v_mty_nrd IGS_PR_MILESTONE.ovrd_ntfctn_reminder_days%TYPE;

229: CURSOR c_mst IS
230: SELECT mst.s_milestone_status
231: FROM IGS_PR_MS_STAT mst
232: WHERE mst.milestone_status = p_milestone_status;
233: v_mty_nrd IGS_PR_MILESTONE.ovrd_ntfctn_reminder_days%TYPE;
234: v_mty_nrrd IGS_PR_MILESTONE.ovrd_ntfctn_re_reminder_days%TYPE;
235: CURSOR c_mty IS
236: SELECT mty.ntfctn_re_reminder_days,
237: mty.ntfctn_reminder_days

Line 234: v_mty_nrrd IGS_PR_MILESTONE.ovrd_ntfctn_re_reminder_days%TYPE;

230: SELECT mst.s_milestone_status
231: FROM IGS_PR_MS_STAT mst
232: WHERE mst.milestone_status = p_milestone_status;
233: v_mty_nrd IGS_PR_MILESTONE.ovrd_ntfctn_reminder_days%TYPE;
234: v_mty_nrrd IGS_PR_MILESTONE.ovrd_ntfctn_re_reminder_days%TYPE;
235: CURSOR c_mty IS
236: SELECT mty.ntfctn_re_reminder_days,
237: mty.ntfctn_reminder_days
238: FROM IGS_PR_MILESTONE_TYP mty

Line 238: FROM IGS_PR_MILESTONE_TYP mty

234: v_mty_nrrd IGS_PR_MILESTONE.ovrd_ntfctn_re_reminder_days%TYPE;
235: CURSOR c_mty IS
236: SELECT mty.ntfctn_re_reminder_days,
237: mty.ntfctn_reminder_days
238: FROM IGS_PR_MILESTONE_TYP mty
239: WHERE mty.milestone_type = p_milestone_type;
240: BEGIN
241: -- Set the default message number
242: p_message_name := null;

Line 298: -- To validate IGS_PR_MILESTONE due date

294: IGS_GE_MSG_STACK.ADD;
295: App_Exception.Raise_Exception;
296: END resp_val_mil_days;
297: --
298: -- To validate IGS_PR_MILESTONE due date
299: FUNCTION RESP_VAL_MIL_DUE(
300: p_person_id IN NUMBER ,
301: p_ca_sequence_number IN NUMBER ,
302: p_sequence_number IN NUMBER ,

Line 310: -- Validate IGS_PR_MILESTONE.due_dt checking for,

306: p_new_due_dt IN DATE ,
307: p_message_name OUT NOCOPY VARCHAR2 )
308: RETURN BOOLEAN AS
309: BEGIN -- resp_val_mil_due
310: -- Validate IGS_PR_MILESTONE.due_dt checking for,
311: -- If the IGS_PR_MILESTONE status has been changed to RE-PLANNED then
312: -- the due_dt must have been changed.
313: DECLARE
314: cst_planned CONSTANT IGS_PR_MS_STAT.s_milestone_status%TYPE := 'PLANNED';

Line 311: -- If the IGS_PR_MILESTONE status has been changed to RE-PLANNED then

307: p_message_name OUT NOCOPY VARCHAR2 )
308: RETURN BOOLEAN AS
309: BEGIN -- resp_val_mil_due
310: -- Validate IGS_PR_MILESTONE.due_dt checking for,
311: -- If the IGS_PR_MILESTONE status has been changed to RE-PLANNED then
312: -- the due_dt must have been changed.
313: DECLARE
314: cst_planned CONSTANT IGS_PR_MS_STAT.s_milestone_status%TYPE := 'PLANNED';
315: cst_replanned CONSTANT IGS_PR_MS_STAT.s_milestone_status%TYPE := 'RE-PLANNED';

Line 318: FROM IGS_PR_MILESTONE mil

314: cst_planned CONSTANT IGS_PR_MS_STAT.s_milestone_status%TYPE := 'PLANNED';
315: cst_replanned CONSTANT IGS_PR_MS_STAT.s_milestone_status%TYPE := 'RE-PLANNED';
316: CURSOR c_mil IS
317: SELECT mil.due_dt
318: FROM IGS_PR_MILESTONE mil
319: WHERE mil.person_id = p_person_id AND
320: mil.ca_sequence_number = p_ca_sequence_number AND
321: NVL(mil.preced_sequence_number,0) = p_sequence_number;
322: BEGIN

Line 345: -- To validate IGS_PR_MILESTONE status

341: IGS_GE_MSG_STACK.ADD;
342: App_Exception.Raise_Exception;
343: END resp_val_mil_due;
344: --
345: -- To validate IGS_PR_MILESTONE status
346: FUNCTION RESP_VAL_MIL_MST(
347: p_person_id IN NUMBER ,
348: p_ca_sequence_number IN NUMBER ,
349: p_preced_sequence_number IN NUMBER ,

Line 358: -- Validate IGS_PR_MILESTONE.IGS_PR_MS_STAT, checking for :

354: p_validation_level IN VARCHAR2 ,
355: p_message_name OUT NOCOPY VARCHAR2 )
356: RETURN BOOLEAN AS
357: BEGIN -- resp_val_mil_mst
358: -- Validate IGS_PR_MILESTONE.IGS_PR_MS_STAT, checking for :
359: -- Closed IGS_PR_MILESTONE status.
360: DECLARE
361: cst_planned CONSTANT VARCHAR2(10) := 'PLANNED';
362: cst_replanned CONSTANT VARCHAR2(10) := 'RE-PLANNED';

Line 359: -- Closed IGS_PR_MILESTONE status.

355: p_message_name OUT NOCOPY VARCHAR2 )
356: RETURN BOOLEAN AS
357: BEGIN -- resp_val_mil_mst
358: -- Validate IGS_PR_MILESTONE.IGS_PR_MS_STAT, checking for :
359: -- Closed IGS_PR_MILESTONE status.
360: DECLARE
361: cst_planned CONSTANT VARCHAR2(10) := 'PLANNED';
362: cst_replanned CONSTANT VARCHAR2(10) := 'RE-PLANNED';
363: cst_failed CONSTANT VARCHAR2(10) := 'FAILED';

Line 366: cp_milestone_status IGS_PR_MILESTONE.milestone_status%TYPE) IS

362: cst_replanned CONSTANT VARCHAR2(10) := 'RE-PLANNED';
363: cst_failed CONSTANT VARCHAR2(10) := 'FAILED';
364: cst_achieved CONSTANT VARCHAR2(10) := 'ACHIEVED';
365: CURSOR c_mst (
366: cp_milestone_status IGS_PR_MILESTONE.milestone_status%TYPE) IS
367: SELECT s_milestone_status,
368: closed_ind
369: FROM IGS_PR_MS_STAT mst
370: WHERE mst.milestone_status = cp_milestone_status;

Line 373: FROM IGS_PR_MILESTONE mil,

369: FROM IGS_PR_MS_STAT mst
370: WHERE mst.milestone_status = cp_milestone_status;
371: CURSOR c_mil IS
372: SELECT mst.s_milestone_status
373: FROM IGS_PR_MILESTONE mil,
374: IGS_PR_MS_STAT mst
375: WHERE mil.person_id = p_person_id AND
376: mil.ca_sequence_number = p_ca_sequence_number AND
377: mil.sequence_number = p_preced_sequence_number AND

Line 393: -- 2. Check for close IGS_PR_MILESTONE status

389: RETURN TRUE;
390: END IF;
391: CLOSE c_mst;
392: IF p_validation_level in ('ITEM','TRIGGER') THEN
393: -- 2. Check for close IGS_PR_MILESTONE status
394: IF v_new_mst_rec.closed_ind = 'Y' THEN
395: CLOSE c_mst;
396: p_message_name := 'IGS_RE_MILSTN_STAT_CLOSED';
397: RETURN FALSE;

Line 419: -- 4. Check status of preceding IGS_PR_MILESTONE.

415: RETURN FALSE;
416: END IF;
417: END IF;
418: IF p_validation_level in ('ITEM','TRIGGER') THEN
419: -- 4. Check status of preceding IGS_PR_MILESTONE.
420: If NVL(p_old_milestone_status, ' ') <> p_new_milestone_status AND
421: p_preced_sequence_number IS NOT NULL AND
422: v_new_mst_rec.s_milestone_status IN (cst_achieved,cst_failed) THEN
423: OPEN c_mil;

Line 454: -- To validate IGS_PR_MILESTONE type

450: IGS_GE_MSG_STACK.ADD;
451: App_Exception.Raise_Exception;
452: END resp_val_mil_mst;
453: --
454: -- To validate IGS_PR_MILESTONE type
455: FUNCTION RESP_VAL_MIL_MTY(
456: p_milestone_type IN VARCHAR2 ,
457: p_message_name OUT NOCOPY VARCHAR2 )
458: RETURN BOOLEAN AS

Line 460: -- Validate the IGS_PR_MILESTONE type, checking for :

456: p_milestone_type IN VARCHAR2 ,
457: p_message_name OUT NOCOPY VARCHAR2 )
458: RETURN BOOLEAN AS
459: BEGIN -- resp_val_mil_mty
460: -- Validate the IGS_PR_MILESTONE type, checking for :
461: -- That the IGS_PR_MILESTONE type is not closed.
462: DECLARE
463: CURSOR c_mty IS
464: SELECT 'x'

Line 461: -- That the IGS_PR_MILESTONE type is not closed.

457: p_message_name OUT NOCOPY VARCHAR2 )
458: RETURN BOOLEAN AS
459: BEGIN -- resp_val_mil_mty
460: -- Validate the IGS_PR_MILESTONE type, checking for :
461: -- That the IGS_PR_MILESTONE type is not closed.
462: DECLARE
463: CURSOR c_mty IS
464: SELECT 'x'
465: FROM IGS_PR_MILESTONE_TYP mty

Line 465: FROM IGS_PR_MILESTONE_TYP mty

461: -- That the IGS_PR_MILESTONE type is not closed.
462: DECLARE
463: CURSOR c_mty IS
464: SELECT 'x'
465: FROM IGS_PR_MILESTONE_TYP mty
466: WHERE mty.milestone_type = p_milestone_type AND
467: mty.closed_ind = 'Y';
468: v_mty_exists VARCHAR2(1);
469: BEGIN

Line 472: -- check for closed IGS_PR_MILESTONE type

468: v_mty_exists VARCHAR2(1);
469: BEGIN
470: -- Set the default message number
471: p_message_name := null;
472: -- check for closed IGS_PR_MILESTONE type
473: OPEN c_mty;
474: FETCH c_mty INTO v_mty_exists;
475: IF c_mty%FOUND THEN
476: CLOSE c_mty;

Line 496: -- To validate IGS_PR_MILESTONE preceding sequence number

492: IGS_GE_MSG_STACK.ADD;
493: App_Exception.Raise_Exception;
494: END resp_val_mil_mty;
495: --
496: -- To validate IGS_PR_MILESTONE preceding sequence number
497: FUNCTION RESP_VAL_MIL_PRCD(
498: p_person_id IN NUMBER ,
499: p_ca_sequence_number IN NUMBER ,
500: p_sequence_number IN NUMBER ,

Line 506: -- Validate the preceeding IGS_PR_MILESTONE details, checking for:

502: p_preced_sequence_number IN NUMBER ,
503: p_message_name OUT NOCOPY VARCHAR2 )
504: RETURN BOOLEAN AS
505: BEGIN -- resp_val_mil_prcd
506: -- Validate the preceeding IGS_PR_MILESTONE details, checking for:
507: -- Cannot link a IGS_PR_MILESTONE to itself.
508: -- Cannot link a IGS_PR_MILESTONE to a IGS_PR_MILESTONE with due_dt
509: -- less than the current record.
510: DECLARE

Line 507: -- Cannot link a IGS_PR_MILESTONE to itself.

503: p_message_name OUT NOCOPY VARCHAR2 )
504: RETURN BOOLEAN AS
505: BEGIN -- resp_val_mil_prcd
506: -- Validate the preceeding IGS_PR_MILESTONE details, checking for:
507: -- Cannot link a IGS_PR_MILESTONE to itself.
508: -- Cannot link a IGS_PR_MILESTONE to a IGS_PR_MILESTONE with due_dt
509: -- less than the current record.
510: DECLARE
511: v_mil_due_dt IGS_PR_MILESTONE.due_dt%TYPE;

Line 508: -- Cannot link a IGS_PR_MILESTONE to a IGS_PR_MILESTONE with due_dt

504: RETURN BOOLEAN AS
505: BEGIN -- resp_val_mil_prcd
506: -- Validate the preceeding IGS_PR_MILESTONE details, checking for:
507: -- Cannot link a IGS_PR_MILESTONE to itself.
508: -- Cannot link a IGS_PR_MILESTONE to a IGS_PR_MILESTONE with due_dt
509: -- less than the current record.
510: DECLARE
511: v_mil_due_dt IGS_PR_MILESTONE.due_dt%TYPE;
512: CURSOR c_mil IS

Line 511: v_mil_due_dt IGS_PR_MILESTONE.due_dt%TYPE;

507: -- Cannot link a IGS_PR_MILESTONE to itself.
508: -- Cannot link a IGS_PR_MILESTONE to a IGS_PR_MILESTONE with due_dt
509: -- less than the current record.
510: DECLARE
511: v_mil_due_dt IGS_PR_MILESTONE.due_dt%TYPE;
512: CURSOR c_mil IS
513: SELECT mil.due_dt
514: FROM IGS_PR_MILESTONE mil
515: WHERE mil.person_id = p_person_id AND

Line 514: FROM IGS_PR_MILESTONE mil

510: DECLARE
511: v_mil_due_dt IGS_PR_MILESTONE.due_dt%TYPE;
512: CURSOR c_mil IS
513: SELECT mil.due_dt
514: FROM IGS_PR_MILESTONE mil
515: WHERE mil.person_id = p_person_id AND
516: mil.ca_sequence_number = p_ca_sequence_number AND
517: mil.sequence_number = p_preced_sequence_number;
518: BEGIN

Line 525: -- check that not linked to another IGS_PR_MILESTONE of a lesser date

521: IF p_sequence_number = p_preced_sequence_number THEN
522: p_message_name := 'IGS_RE_MILSTN_CANT_PRECED';
523: RETURN FALSE;
524: END IF;
525: -- check that not linked to another IGS_PR_MILESTONE of a lesser date
526: OPEN c_mil;
527: FETCH c_mil INTO v_mil_due_dt;
528: IF c_mil%NOTFOUND THEN
529: CLOSE c_mil;