164: -------------------------------------------------------------------------------------------
165:
166:
167: v_course_type IGS_PS_TYPE.COURSE_TYPE%TYPE;
168: v_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
169: v_course_cd_rank IGS_PS_VER.PRIMARY_PROGRAM_RANK%TYPE;
170: v_exst_primary_rank IGS_PS_VER.PRIMARY_PROGRAM_RANK%TYPE;
171: v_exst_key_program IGS_EN_STDNT_PS_ATT_ALL.KEY_PROGRAM%TYPE ;
172: v_min_sec_rank IGS_PS_VER.PRIMARY_PROGRAM_RANK%TYPE;
167: v_course_type IGS_PS_TYPE.COURSE_TYPE%TYPE;
168: v_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
169: v_course_cd_rank IGS_PS_VER.PRIMARY_PROGRAM_RANK%TYPE;
170: v_exst_primary_rank IGS_PS_VER.PRIMARY_PROGRAM_RANK%TYPE;
171: v_exst_key_program IGS_EN_STDNT_PS_ATT_ALL.KEY_PROGRAM%TYPE ;
172: v_min_sec_rank IGS_PS_VER.PRIMARY_PROGRAM_RANK%TYPE;
173: cst_system CONSTANT VARCHAR2(10) := 'SYSTEM';
174: cst_primary CONSTANT VARCHAR2(10) := 'PRIMARY';
175: cst_secondary CONSTANT VARCHAR2(10) := 'SECONDARY';
221: AND course_attempt_status IN ('ENROLLED','INACTIVE','LAPSED','INTERMIT');
222: */
223:
224: l_key_prog_exists VARCHAR2(1) ;
225: v_exst_key_prog igs_en_stdnt_ps_att_all.key_program%TYPE;
226: l_new_course_attempt_status igs_en_stdnt_ps_att.course_attempt_status%TYPE;
227: BEGIN
228:
229: l_key_prog_exists := NULL;
354: ) AS
355:
356: v_course_type IGS_PS_TYPE.COURSE_TYPE%TYPE;
357: v_sec_rank IGS_PS_VER.PRIMARY_PROGRAM_RANK%TYPE;
358: v_test_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE;
359: v_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
360: v_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
361: cst_primary CONSTANT VARCHAR2(10) := 'PRIMARY';
362: cst_secondary CONSTANT VARCHAR2(10) := 'SECONDARY';
355:
356: v_course_type IGS_PS_TYPE.COURSE_TYPE%TYPE;
357: v_sec_rank IGS_PS_VER.PRIMARY_PROGRAM_RANK%TYPE;
358: v_test_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE;
359: v_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
360: v_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
361: cst_primary CONSTANT VARCHAR2(10) := 'PRIMARY';
362: cst_secondary CONSTANT VARCHAR2(10) := 'SECONDARY';
363: cst_system CONSTANT VARCHAR2(10) := 'SYSTEM';
356: v_course_type IGS_PS_TYPE.COURSE_TYPE%TYPE;
357: v_sec_rank IGS_PS_VER.PRIMARY_PROGRAM_RANK%TYPE;
358: v_test_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE;
359: v_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
360: v_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
361: cst_primary CONSTANT VARCHAR2(10) := 'PRIMARY';
362: cst_secondary CONSTANT VARCHAR2(10) := 'SECONDARY';
363: cst_system CONSTANT VARCHAR2(10) := 'SYSTEM';
364: v_update BOOLEAN;
363: cst_system CONSTANT VARCHAR2(10) := 'SYSTEM';
364: v_update BOOLEAN;
365: lv_dummy VARCHAR2(1);
366: -- saving the context record
367: c_person_id IGS_EN_STDNT_PS_ATT_ALL.person_id%TYPE;
368: c_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE;
369: c_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE;
370: c_old_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
371: c_new_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
364: v_update BOOLEAN;
365: lv_dummy VARCHAR2(1);
366: -- saving the context record
367: c_person_id IGS_EN_STDNT_PS_ATT_ALL.person_id%TYPE;
368: c_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE;
369: c_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE;
370: c_old_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
371: c_new_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
372: c_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
365: lv_dummy VARCHAR2(1);
366: -- saving the context record
367: c_person_id IGS_EN_STDNT_PS_ATT_ALL.person_id%TYPE;
368: c_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE;
369: c_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE;
370: c_old_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
371: c_new_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
372: c_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
373: c_old_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
366: -- saving the context record
367: c_person_id IGS_EN_STDNT_PS_ATT_ALL.person_id%TYPE;
368: c_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE;
369: c_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE;
370: c_old_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
371: c_new_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
372: c_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
373: c_old_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
374: c_new_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
367: c_person_id IGS_EN_STDNT_PS_ATT_ALL.person_id%TYPE;
368: c_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE;
369: c_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE;
370: c_old_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
371: c_new_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
372: c_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
373: c_old_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
374: c_new_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
375: c_old_key_program IGS_EN_STDNT_PS_ATT_ALL.key_program%TYPE;
368: c_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE;
369: c_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE;
370: c_old_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
371: c_new_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
372: c_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
373: c_old_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
374: c_new_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
375: c_old_key_program IGS_EN_STDNT_PS_ATT_ALL.key_program%TYPE;
376:
369: c_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE;
370: c_old_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
371: c_new_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
372: c_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
373: c_old_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
374: c_new_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
375: c_old_key_program IGS_EN_STDNT_PS_ATT_ALL.key_program%TYPE;
376:
377: CURSOR c_course_type(cp_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE,
370: c_old_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
371: c_new_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
372: c_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
373: c_old_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
374: c_new_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
375: c_old_key_program IGS_EN_STDNT_PS_ATT_ALL.key_program%TYPE;
376:
377: CURSOR c_course_type(cp_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE,
378: cp_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE) IS
371: c_new_course_attempt_status IGS_EN_STDNT_PS_ATT_ALL.course_attempt_status%TYPE;
372: c_primary_prog_type_source IGS_EN_STDNT_PS_ATT_ALL.primary_prog_type_source%TYPE;
373: c_old_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
374: c_new_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
375: c_old_key_program IGS_EN_STDNT_PS_ATT_ALL.key_program%TYPE;
376:
377: CURSOR c_course_type(cp_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE,
378: cp_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE) IS
379: SELECT crv.course_type
373: c_old_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
374: c_new_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
375: c_old_key_program IGS_EN_STDNT_PS_ATT_ALL.key_program%TYPE;
376:
377: CURSOR c_course_type(cp_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE,
378: cp_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE) IS
379: SELECT crv.course_type
380: FROM igs_ps_ver crv
381: WHERE course_cd = cp_course_cd
374: c_new_pri_prog_type IGS_EN_STDNT_PS_ATT_ALL.primary_program_type%TYPE;
375: c_old_key_program IGS_EN_STDNT_PS_ATT_ALL.key_program%TYPE;
376:
377: CURSOR c_course_type(cp_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE,
378: cp_version_number IGS_EN_STDNT_PS_ATT_ALL.version_number%TYPE) IS
379: SELECT crv.course_type
380: FROM igs_ps_ver crv
381: WHERE course_cd = cp_course_cd
382: and version_number = cp_version_number;
381: WHERE course_cd = cp_course_cd
382: and version_number = cp_version_number;
383:
384: CURSOR c_sca_upd (cp_course_type IGS_PS_TYPE.COURSE_TYPE%TYPE ,
385: cp_person_id IGS_EN_STDNT_PS_ATT_ALL.person_id%TYPE ,
386: cp_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE) IS
387: SELECT sca.*
388: FROM igs_en_stdnt_ps_att sca,
389: igs_ps_ver crv
382: and version_number = cp_version_number;
383:
384: CURSOR c_sca_upd (cp_course_type IGS_PS_TYPE.COURSE_TYPE%TYPE ,
385: cp_person_id IGS_EN_STDNT_PS_ATT_ALL.person_id%TYPE ,
386: cp_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE) IS
387: SELECT sca.*
388: FROM igs_en_stdnt_ps_att sca,
389: igs_ps_ver crv
390: WHERE crv.course_type = cp_course_type
393: and sca.person_id = cp_person_id
394: and sca.course_cd <> cp_course_cd;
395:
396: CURSOR c_min_ranked_sec_sca (cp_course_type IGS_PS_TYPE.COURSE_TYPE%TYPE ,
397: cp_person_id IGS_EN_STDNT_PS_ATT_ALL.person_id%TYPE ,
398: cp_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE ) IS
399: SELECT crv.PRIMARY_PROGRAM_RANK, sca.course_Cd
400: FROM igs_en_stdnt_ps_att sca,
401: igs_ps_ver crv
394: and sca.course_cd <> cp_course_cd;
395:
396: CURSOR c_min_ranked_sec_sca (cp_course_type IGS_PS_TYPE.COURSE_TYPE%TYPE ,
397: cp_person_id IGS_EN_STDNT_PS_ATT_ALL.person_id%TYPE ,
398: cp_course_cd IGS_EN_STDNT_PS_ATT_ALL.course_cd%TYPE ) IS
399: SELECT crv.PRIMARY_PROGRAM_RANK, sca.course_Cd
400: FROM igs_en_stdnt_ps_att sca,
401: igs_ps_ver crv
402: WHERE crv.course_type = cp_course_type