[Home] [Help]
104: SELECT sua.no_assessment_ind,
105: sua.unit_attempt_status,
106: NVL(sua.override_enrolled_cp,NVL(cps.enrolled_credit_points,uv.enrolled_credit_points)) credit_points
107: FROM igs_en_su_attempt sua,
108: igs_ps_unit_ver uv ,
109: igs_ps_usec_cps cps
110: WHERE sua.person_id = p_person_id
111: AND sua.course_cd = p_course_cd
112: AND sua.uoo_id = p_uoo_id
118: -- Cursor to select the number of auditors for the given unit
119: CURSOR c_usec_audit_lim IS
120: SELECT NVL (usec.max_auditors_allowed, NVL(uv.max_auditors_allowed,999999) )
121: FROM igs_ps_usec_lim_wlst usec,
122: igs_ps_unit_ver uv,
123: igs_ps_unit_ofr_opt uoo
124: WHERE uoo.unit_cd = uv.unit_cd
125: AND uoo.version_number = uv.version_number
126: AND uoo.uoo_id = usec.uoo_id (+)
177: l_class_meet c_class_meet%ROWTYPE;
178: l_usec_partof_group BOOLEAN;
179: l_notification_flag igs_en_cpd_ext.notification_flag%TYPE; --added by nishikant
180: l_unit_attempt_status igs_en_su_attempt_all.unit_attempt_status%TYPE;
181: l_credit_points igs_ps_unit_ver.enrolled_credit_points%type;
182: l_deny_unit_steps BOOLEAN;
183: l_warn_unit_steps BOOLEAN;
184: l_message_icon VARCHAR2(1);
185: l_unit_sec VARCHAR2(100);
1627: --
1628: -- Cursor to select all the Unit Attempts of the Student.
1629: CURSOR cur_student_attempts (
1630: cp_include_in_adv_stand IN VARCHAR2 ,
1631: cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
1632: cp_version_number igs_ps_unit_ver.version_number%TYPE
1633: ) IS
1634: SELECT sua.unit_cd,
1635: sua.version_number,
1628: -- Cursor to select all the Unit Attempts of the Student.
1629: CURSOR cur_student_attempts (
1630: cp_include_in_adv_stand IN VARCHAR2 ,
1631: cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
1632: cp_version_number igs_ps_unit_ver.version_number%TYPE
1633: ) IS
1634: SELECT sua.unit_cd,
1635: sua.version_number,
1636: sua.cal_type,
1637: sua.ci_sequence_number,
1638: sua.uoo_id,
1639: sua.override_enrolled_cp ,
1640: sua.course_cd
1641: FROM igs_en_su_attempt sua, igs_ps_unit_ver psv
1642: WHERE sua.person_id = p_person_id
1643: AND ( sua.cart IS NOT NULL AND ( p_calling_obj <> 'SWAP' OR (p_calling_obj = 'SWAP' AND sua.uoo_id <> p_uoo_id) ) )
1644: AND ((p_calling_obj <> 'PLAN' AND sua.unit_attempt_status IN ('ENROLLED', 'DISCONTIN','COMPLETED','INVALID','UNCONFIRM') )
1645: OR (p_calling_obj = 'PLAN' AND sua.unit_attempt_status IN ('ENROLLED', 'DISCONTIN','COMPLETED','INVALID','UNCONFIRM','PLANNED') )
1647: AND sua.unit_cd = psv.unit_cd
1648: AND sua.version_number = psv.version_number
1649: AND ( ( sua.unit_cd = cp_unit_cd AND sua.version_number = cp_version_number)
1650: OR psv.rpt_fmly_id = ( SELECT psu.rpt_fmly_id
1651: FROM igs_ps_unit_ver psu,
1652: igs_ps_rpt_fmly rep
1653: WHERE psu.unit_cd = cp_unit_cd
1654: AND psu.version_number = cp_version_number
1655: AND psu.rpt_fmly_id = rep.rpt_fmly_id
1662: TO_NUMBER(NULL) ci_sequence_number,
1663: TO_NUMBER(NULL) uoo_id,
1664: adv.achievable_credit_points override_enrolled_cp ,
1665: adv.as_course_cd course_cd
1666: FROM igs_av_stnd_unit adv, igs_ps_unit_ver psv
1667: WHERE adv.person_id = p_person_id
1668: AND adv.s_adv_stnd_granting_status = 'GRANTED'
1669: AND (adv.s_adv_stnd_recognition_type = 'CREDIT'
1670: AND igs_av_val_asu.granted_adv_standing(adv.person_id,adv.as_course_cd,adv.as_version_number,adv.unit_cd,adv.version_number,'GRANTED',NULL) ='TRUE' )
1672: AND adv.unit_cd = psv.unit_cd
1673: AND adv.version_number = psv.version_number
1674: AND ( ( adv.unit_cd = cp_unit_cd AND adv.version_number = cp_version_number )
1675: OR psv.rpt_fmly_id = (SELECT psu.rpt_fmly_id
1676: FROM igs_ps_unit_ver psu,
1677: igs_ps_rpt_fmly rep
1678: WHERE psu.unit_cd = cp_unit_cd
1679: AND psu.version_number = cp_version_number
1680: AND psu.rpt_fmly_id = rep.rpt_fmly_id
1682: );
1683: --
1684: -- Cursor to find if the unit version is repeatable and Maximum Repeats for credit
1685: --
1686: CURSOR cur_unit_repeat_for_cp(cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
1687: cp_version_number igs_ps_unit_ver.version_number%TYPE) IS
1688: SELECT repeatable_ind,max_repeats_for_credit, max_repeats_for_funding
1689: FROM igs_ps_unit_ver
1690: WHERE unit_cd = cp_unit_cd
1683: --
1684: -- Cursor to find if the unit version is repeatable and Maximum Repeats for credit
1685: --
1686: CURSOR cur_unit_repeat_for_cp(cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
1687: cp_version_number igs_ps_unit_ver.version_number%TYPE) IS
1688: SELECT repeatable_ind,max_repeats_for_credit, max_repeats_for_funding
1689: FROM igs_ps_unit_ver
1690: WHERE unit_cd = cp_unit_cd
1691: AND version_number = cp_version_number;
1685: --
1686: CURSOR cur_unit_repeat_for_cp(cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
1687: cp_version_number igs_ps_unit_ver.version_number%TYPE) IS
1688: SELECT repeatable_ind,max_repeats_for_credit, max_repeats_for_funding
1689: FROM igs_ps_unit_ver
1690: WHERE unit_cd = cp_unit_cd
1691: AND version_number = cp_version_number;
1692:
1693: -- Cursor to find the Organization Unit Code.
1695: --
1696: CURSOR cur_organization_unit IS
1697: SELECT NVL (usec.owner_org_unit_cd, uv.owner_org_unit_cd) owner_org_unit_cd
1698: FROM igs_ps_unit_ofr_opt usec,
1699: igs_ps_unit_ver uv
1700: WHERE usec.uoo_id = p_uoo_id
1701: AND usec.unit_cd = uv.unit_cd
1702: AND usec.version_number = uv.version_number
1703: AND p_uoo_id IS NOT NULL
1702: AND usec.version_number = uv.version_number
1703: AND p_uoo_id IS NOT NULL
1704: UNION
1705: SELECT uv.owner_org_unit_cd
1706: FROM igs_ps_unit_ver uv
1707: WHERE uv.unit_cd = p_unit_cd
1708: AND uv.version_number = p_unit_version
1709: AND p_uoo_id IS NULL;
1710:
1711: rec_cur_unit_details cur_unit_details%ROWTYPE;
1712: l_step_override_limit igs_en_elgb_ovr_step.step_override_limit%TYPE;
1713: l_number_of_repeats NUMBER := 0 ;
1714: l_include_in_advanced_standing igs_en_rep_process.include_adv_standing_units%TYPE := 'N';
1715: l_repeat_allowed igs_ps_unit_ver.repeatable_ind%TYPE ;
1716: l_max_repeats NUMBER;
1717: l_unit_max_repeats NUMBER;
1718: l_org_max_repeats NUMBER;
1719: l_owner_org_unit_cd igs_ps_unit_ver.owner_org_unit_cd%TYPE;
1715: l_repeat_allowed igs_ps_unit_ver.repeatable_ind%TYPE ;
1716: l_max_repeats NUMBER;
1717: l_unit_max_repeats NUMBER;
1718: l_org_max_repeats NUMBER;
1719: l_owner_org_unit_cd igs_ps_unit_ver.owner_org_unit_cd%TYPE;
1720: l_user_hook_successful BOOLEAN;
1721: l_message VARCHAR2(100);
1722: l_org_unit_id NUMBER;
1723: l_unit_max_repeats_funding NUMBER;
2016:
2017: -- smaddali modified this cursor to add advance standing units also, bug#4262571
2018: -- Cursor to select all the reenrolled Unit Attempts of the Student.
2019: CURSOR cur_student_attempts (
2020: cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
2021: cp_version_number igs_ps_unit_ver.version_number%TYPE
2022: ) IS
2023: SELECT sua.unit_cd,
2024: sua.version_number,
2017: -- smaddali modified this cursor to add advance standing units also, bug#4262571
2018: -- Cursor to select all the reenrolled Unit Attempts of the Student.
2019: CURSOR cur_student_attempts (
2020: cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
2021: cp_version_number igs_ps_unit_ver.version_number%TYPE
2022: ) IS
2023: SELECT sua.unit_cd,
2024: sua.version_number,
2025: sua.cal_type,
2027: sua.uoo_id,
2028: NVL(sua.override_enrolled_cp,NVL(cps.enrolled_credit_points,uv.enrolled_credit_points)) override_enrolled_cp ,
2029: sua.course_cd
2030: FROM igs_en_su_attempt sua,
2031: igs_ps_unit_ver uv,
2032: igs_ps_usec_cps cps
2033: WHERE sua.person_id = p_person_id
2034: AND sua.unit_cd = uv.unit_cd
2035: AND sua.version_number = uv.version_number
2066:
2067: --
2068: -- Cursor to get the reenroll allowed indicator and the reenrollment limits
2069: --
2070: CURSOR cur_unit_reenroll_details(cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
2071: cp_version_number igs_ps_unit_ver.version_number%TYPE) IS
2072: SELECT repeatable_ind,same_teach_period_repeats,same_teach_period_repeats_cp,
2073: max_repeats_for_credit,max_repeat_credit_points, same_teaching_period
2074: FROM igs_ps_unit_ver
2067: --
2068: -- Cursor to get the reenroll allowed indicator and the reenrollment limits
2069: --
2070: CURSOR cur_unit_reenroll_details(cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
2071: cp_version_number igs_ps_unit_ver.version_number%TYPE) IS
2072: SELECT repeatable_ind,same_teach_period_repeats,same_teach_period_repeats_cp,
2073: max_repeats_for_credit,max_repeat_credit_points, same_teaching_period
2074: FROM igs_ps_unit_ver
2075: WHERE unit_cd = cp_unit_cd
2070: CURSOR cur_unit_reenroll_details(cp_unit_cd igs_ps_unit_ver.unit_cd%TYPE,
2071: cp_version_number igs_ps_unit_ver.version_number%TYPE) IS
2072: SELECT repeatable_ind,same_teach_period_repeats,same_teach_period_repeats_cp,
2073: max_repeats_for_credit,max_repeat_credit_points, same_teaching_period
2074: FROM igs_ps_unit_ver
2075: WHERE unit_cd = cp_unit_cd
2076: AND version_number = cp_version_number;
2077:
2078: --
2080: l_step_override_limit igs_en_elgb_ovr_step.step_override_limit%TYPE;
2081: l_no_of_reenrollments NUMBER := 0 ;
2082: l_total_reenroll_credit_points NUMBER := 0 ;
2083: l_reenroll_in_same_tp igs_ps_unit_ofr_opt.not_multiple_section_flag%TYPE;
2084: l_reenroll_allowed igs_ps_unit_ver.repeatable_ind%TYPE ;
2085: l_max_reenrollments_for_credit NUMBER ;
2086: l_max_renroll_credit_points NUMBER ;
2087: l_count NUMBER := 0;
2088: l_same_tp_reenrollments NUMBER := 0 ;
2755: s_rule_call_cd = 'USECPREREQ';
2756:
2757: CURSOR cur_unit_prereq(p_uoo_id NUMBER) IS
2758: SELECT rul_sequence_number
2759: FROM igs_ps_unit_ver_ru uvr,
2760: igs_ps_unit_ofr_opt uoo
2761: WHERE uvr.unit_cd = uoo.unit_cd AND
2762: uvr.version_number = uoo.version_number AND
2763: uoo_id = p_uoo_id AND
2768: FROM igs_ps_unit_ofr_opt
2769: WHERE uoo_id = p_uoo_id;
2770:
2771: l_step_override_limit igs_en_elgb_ovr_step.step_override_limit%TYPE;
2772: l_rul_sequence_number igs_ps_unit_ver_ru.rul_sequence_number%TYPE;
2773: l_unit_dtls_rec cur_usec_dtl%ROWTYPE;
2774: l_version_number igs_ps_unit_ofr_opt.version_number%TYPE;
2775: l_cal_type igs_ps_unit_ofr_opt.cal_type%TYPE;
2776: l_ci_sequence_number igs_ps_unit_ofr_opt.ci_sequence_number%TYPE;
2774: l_version_number igs_ps_unit_ofr_opt.version_number%TYPE;
2775: l_cal_type igs_ps_unit_ofr_opt.cal_type%TYPE;
2776: l_ci_sequence_number igs_ps_unit_ofr_opt.ci_sequence_number%TYPE;
2777: l_message VARCHAR2(30);
2778: l_rule_text igs_ps_unit_ver_ru_v.rule_text%TYPE;
2779: l_message_icon VARCHAR2(1);
2780:
2781: --
2782: -- begin of the function eval_prereq
2927: s_rule_call_cd = 'USECCOREQ';
2928:
2929: CURSOR cur_unit_coreq(p_uoo_id NUMBER) IS
2930: SELECT rul_sequence_number
2931: FROM igs_ps_unit_ver_ru uvr,
2932: igs_ps_unit_ofr_opt uoo
2933: WHERE uvr.unit_cd = uoo.unit_cd AND
2934: uvr.version_number = uoo.version_number AND
2935: uoo_id = p_uoo_id AND
2940: FROM igs_ps_unit_ofr_opt
2941: WHERE uoo_id = p_uoo_id;
2942:
2943: l_step_override_limit igs_en_elgb_ovr_step.step_override_limit%TYPE;
2944: l_rul_sequence_number igs_ps_unit_ver_ru.rul_sequence_number%TYPE;
2945: l_unit_dtls_rec cur_usec_dtl%ROWTYPE;
2946: l_message VARCHAR2(30);
2947: l_message_icon VARCHAR2(1);
2948: l_rule_text igs_ps_unit_ver_ru_v.rule_text%TYPE;
2944: l_rul_sequence_number igs_ps_unit_ver_ru.rul_sequence_number%TYPE;
2945: l_unit_dtls_rec cur_usec_dtl%ROWTYPE;
2946: l_message VARCHAR2(30);
2947: l_message_icon VARCHAR2(1);
2948: l_rule_text igs_ps_unit_ver_ru_v.rule_text%TYPE;
2949: l_coreq_string VARCHAR2(1000);
2950: l_destination VARCHAR2(100);
2951: l_message_action VARCHAR2(100);
2952: --
3098: -------------------------------------------------------------------------------------
3099:
3100: CURSOR cur_unit_incomp(p_uoo_id NUMBER) IS
3101: SELECT rul_sequence_number
3102: FROM igs_ps_unit_ver_ru uvr,
3103: igs_ps_unit_ofr_opt uoo
3104: WHERE uvr.unit_cd = uoo.unit_cd AND
3105: uvr.version_number = uoo.version_number AND
3106: uoo_id = p_uoo_id AND
3111: FROM igs_ps_unit_ofr_opt
3112: WHERE uoo_id = p_uoo_id;
3113:
3114: l_step_override_limit igs_en_elgb_ovr_step.step_override_limit%TYPE;
3115: l_rul_sequence_number igs_ps_unit_ver_ru.rul_sequence_number%TYPE;
3116: l_unit_dtls_rec cur_usec_dtl%ROWTYPE;
3117: l_message VARCHAR2(30);
3118: l_message_icon VARCHAR2(1);
3119: l_rule_text igs_ps_unit_ver_ru_v.rule_text%TYPE;
3115: l_rul_sequence_number igs_ps_unit_ver_ru.rul_sequence_number%TYPE;
3116: l_unit_dtls_rec cur_usec_dtl%ROWTYPE;
3117: l_message VARCHAR2(30);
3118: l_message_icon VARCHAR2(1);
3119: l_rule_text igs_ps_unit_ver_ru_v.rule_text%TYPE;
3120:
3121: --
3122: -- begin of the function eval_incompatible
3123: --
3470:
3471: -- cursor to get the enrollment maximum defined at unit level
3472: CURSOR cur_unit_enr_max IS
3473: SELECT enrollment_maximum
3474: FROM igs_ps_unit_ver uv,
3475: igs_ps_unit_ofr_opt uoo
3476: WHERE uoo.uoo_id = p_uoo_id AND -- p_uoo_id is parameter of container function
3477: uv.unit_cd = uoo.unit_cd AND
3478: uv.version_number = uoo.version_number;
4957:
4958:
4959: CURSOR c_unit_award IS
4960: SELECT NVL(AWARD_COURSE_ONLY_IND,'N')
4961: FROM igs_ps_unit_ver uv, igs_ps_unit_ofr_opt uoo
4962: where uv.unit_cd = uoo.unit_cd
4963: and uv.version_number = uoo.version_number
4964: and uoo.uoo_id = p_uoo_id;
4965:
4964: and uoo.uoo_id = p_uoo_id;
4965:
4966: l_system_type igs_pe_person_types.system_type%TYPE ;
4967: v_prog_award_ind igs_ps_type.AWARD_COURSE_IND%TYPE;
4968: v_unit_award_ind igs_ps_unit_ver.AWARD_COURSE_ONLY_IND%TYPE;
4969: l_step_override_limit number;
4970: l_dummy VARCHAR2(1);
4971:
4972: BEGIN