[Home] [Help]
PACKAGE BODY: APPS.IGS_AS_VAL_EI
Source
1 PACKAGE BODY IGS_AS_VAL_EI AS
2 /* $Header: IGSAS16B.pls 115.4 2002/11/28 22:43:29 nsidana ship $ */
3 -------------------------------------------------------------------------------------------
4 --Change History:
5 --Who When What
6 --avenkatr 29-AUG-2001 Bug Id : 1956374. Removed procedure "assp_val_ve_closed"
7 -------------------------------------------------------------------------------------------
8 --
9 -- Validate insert of IGS_AS_EXAM_INSTANCE record
10 FUNCTION ASSP_VAL_EI_INS(
11 p_exam_cal_type IN VARCHAR2 ,
12 p_exam_ci_sequence_number IN NUMBER ,
13 p_ass_id IN NUMBER ,
14 P_MESSAGE_NAME OUT NOCOPY VARCHAR2 )
15 RETURN BOOLEAN AS
16
17
18 BEGIN -- assp_val_ei_ins
19 -- This module validates the insert of an IGS_AS_EXAM_INSTANCE record
20 DECLARE
21
22 v_active_unit BOOLEAN;
23 v_ust_exist BOOLEAN;
24
25 v_atyp_exam_ind IGS_AS_ASSESSMNT_TYP.examinable_ind%TYPE;
26 v_ai_sched_ind IGS_AS_ASSESSMNT_ITM.exam_scheduled_ind%TYPE;
27
28
29 CURSOR c_atyp IS
30 SELECT atyp.examinable_ind,
31 ai.exam_scheduled_ind
32 FROM IGS_AS_ASSESSMNT_TYP atyp,
33 IGS_AS_ASSESSMNT_ITM ai
34 WHERE ai.ass_id = p_ass_id AND
35 atyp.assessment_type = ai.assessment_type;
36
37 CURSOR c_ust IS
38 SELECT ust.s_unit_status
39 FROM IGS_PS_UNIT_STAT ust,
40 IGS_AS_UNITASS_ITEM uai,
41 IGS_PS_UNIT_VER uv
42 WHERE uai.ass_id = p_ass_id AND
43 IGS_EN_GEN_014.ENRS_GET_WITHIN_CI(
44 p_exam_cal_type,
45 p_exam_ci_sequence_number,
46 uai.cal_type,
47 uai.ci_sequence_number,
48 'N') = 'Y' AND
49 uv.unit_cd = uai.unit_cd AND
50 uv.version_number = uai.version_number AND
51 ust.unit_status = uv.unit_status;
52
53 BEGIN
54 -- Set the default message number
55 P_MESSAGE_NAME := NULL;
56
57 --initialise variables
58 v_active_unit := FALSE;
59 v_ust_exist := FALSE;
60
61 -- Check that assessment item is examinable and scheduled
62 OPEN c_atyp ;
63 FETCH c_atyp INTO v_atyp_exam_ind,
64 v_ai_sched_ind;
65 IF (c_atyp%NOTFOUND) THEN
66 --Routine is not applicable
67 CLOSE c_atyp;
68 RETURN TRUE;
69 END IF;
70 CLOSE c_atyp;
71
72
73 IF (v_atyp_exam_ind = 'N') THEN
74 --Assessment item is not examinable so return
75 P_MESSAGE_NAME := 'IGS_AS_ASSITEM_EXAM_SCHEDULES';
76 RETURN FALSE;
77 END IF;
78
79
80 IF (v_ai_sched_ind = 'N') THEN
81 --Assessment item is not scheduled so return
82 P_MESSAGE_NAME := 'IGS_AS_ASSITEM_MARKED_SCHEDUL';
83 RETURN FALSE;
84 END IF;
85
86 RETURN TRUE;
87 END;
88 EXCEPTION
89 WHEN OTHERS THEN
90 FND_MESSAGE.SET_NAME('IGS','IGS_GE_UNHANDLED_EXP');
91 FND_MESSAGE.SET_TOKEN('NAME','IGS_AS_VAL_EI.assp_val_ei_ins');
92 IGS_GE_MSG_STACK.ADD;
93 END assp_val_ei_ins;
94 END IGS_AS_VAL_EI;