The following lines contain the word 'select', 'insert', 'update' or 'delete':
p_insert_delete_ind IN VARCHAR2 )
AS
cst_rsup_perc CONSTANT VARCHAR2(30) := 'RESP_VAL_RSUP_PERC';
cst_insert CONSTANT VARCHAR2(1) := 'I';
cst_delete CONSTANT VARCHAR2(1) := 'D';
IF p_insert_delete_ind = cst_insert THEN
-- Inserts a record into the s_disable_table_trigger
-- database table.
IGS_GE_S_DSB_TAB_TRG_PKG.INSERT_ROW(
X_ROWID => L_ROWID ,
X_TABLE_NAME =>p_table_name,
X_SESSION_ID => userenv('SESSIONID'),
x_mode => 'R'
);
ELSIF p_insert_delete_ind = cst_delete THEN
-- Inserts a record into the s_disable_table_trigger
-- database table.
IGS_GE_MNT_SDTT.genp_del_sdtt(p_table_name);
SELECT ca.sca_course_cd
FROM IGS_RE_CANDIDATURE ca
WHERE ca.person_id = p_person_id AND
ca.sequence_number = p_ca_sequence_number;
SELECT daiv.alias_val
FROM IGS_EN_SU_ATTEMPT sua,
IGS_PS_UNIT_VER uv,
IGS_CA_DA_INST_V daiv,
IGS_GE_S_GEN_CAL_CON sgcc
WHERE sua.person_id = p_person_id AND
sua.course_cd = v_ca_sca_course_cd AND
sua.unit_attempt_status NOT IN (
cst_unconfirm,
cst_duplicate) AND
sua.unit_cd = uv.unit_cd AND
sua.version_number = uv.version_number AND
uv.research_unit_ind = 'Y' AND
sua.cal_type = daiv.cal_type AND
sua.ci_sequence_number = daiv.ci_sequence_number AND
daiv.dt_alias = sgcc.census_dt_alias AND
sgcc.s_control_num = 1 AND
p_effective_dt <= daiv.alias_val AND
daiv.alias_val < trunc(SYSDATE);
-- This module validates the update of IGS_RE_CANDIDATURE child details.
-- Validations are:
-- IGS_RE_CANDIDATURE child details cannot be updated if
-- IGS_EN_STDNT_PS_ATT.course_attempt_status is 'COMPLETED' with all awards completed.
-- If atleast one award is incomplete or no award is associated, update is allowed.
DECLARE
cst_completed CONSTANT VARCHAR2(10) := 'COMPLETED';
SELECT ca.sca_course_cd
FROM IGS_RE_CANDIDATURE ca
WHERE ca.person_id = p_person_id AND
ca.sequence_number = p_ca_sequence_number;
SELECT sca.course_attempt_status
FROM IGS_EN_STDNT_PS_ATT sca
WHERE sca.person_id = p_person_id AND
sca.course_cd = cp_sca_course_cd;
SELECT 'x'
FROM igs_en_spa_awd_aim
WHERE person_id = cp_person_id
AND course_cd = cp_course_cd
AND ( end_dt IS NULL OR
(end_dt IS NOT NULL AND complete_ind = 'Y')
);
SELECT 'x'
FROM igs_en_spa_awd_aim
WHERE person_id = cp_person_id
AND course_cd = cp_course_cd
AND NVL(complete_ind,'N') = 'N'
AND end_dt IS NULL;
SELECT cah.person_id,
cah.ca_sequence_number,
cah.hist_start_dt,
cah.hist_end_dt
FROM IGS_RE_CDT_ATT_HIST cah
WHERE cah.person_id = p_person_id AND
cah.ca_sequence_number = p_ca_sequence_number
ORDER BY cah.hist_start_dt ASC;
SELECT sca.commencement_dt
FROM IGS_RE_CANDIDATURE ca,
IGS_EN_STDNT_PS_ATT sca
WHERE ca.person_id = cp_person_id AND
ca.sequence_number = cp_ca_sequence_number AND
ca.person_id = sca.person_id AND
ca.sca_course_cd = sca.course_cd;
-- This module validates IGS_RE_CDT_ATT_HIST insert in the context of
-- IGS_RE_CANDIDATURE. The following is validated.
-- * IGS_RE_CANDIDATURE.sca_course_cd must exist.
-- * research IGS_RE_CANDIDATURE IGS_EN_STDNT_PS_ATT.student_confirmed_ind is
-- 'Y' and IGS_EN_STDNT_PS_ATT.commencement_dt exists.
DECLARE
v_sca_course_cd IGS_RE_CANDIDATURE.sca_course_cd%TYPE;
SELECT ca.sca_course_cd
FROM IGS_RE_CANDIDATURE ca
WHERE ca.person_id = p_person_id AND
ca.sequence_number = p_ca_sequence_number;
SELECT sca.student_confirmed_ind,
sca.commencement_dt,
sca.attendance_type
FROM IGS_EN_STDNT_PS_ATT sca
WHERE sca.person_id = p_person_id AND
sca.course_cd = cp_sca_course_cd;
SELECT ca.sequence_number
FROM IGS_RE_CANDIDATURE ca
WHERE ca.person_id = p_person_id AND
ca.sca_course_cd = p_sca_course_cd;
SELECT cah.hist_start_dt
FROM IGS_RE_CDT_ATT_HIST cah
WHERE cah.person_id = p_person_id AND
cah.ca_sequence_number = cp_ca_sequence_number
ORDER BY cah.hist_start_dt;