WLF_REQ_COURSE_VOL_CLASS_V
Details
-
Schema: FUSION
-
Object owner: WLF
-
Object type: VIEW
Columns
Name |
---|
LEARNING_ITEM_ID CORRECT_COURSE_AREC COURSE_LEARNER_ID COURSE_STATUS COURSE_SUB_STATUS CORRECT_COURSE_ROWID CLASS_AREC CLASS_STATUS CLASS_SUB_STATUS INCORRECT_COURSE_AREC INCORRECT_COURSE_ROWID AR_ROW_ID |
Query
SQL_Statement |
---|
WITH vol_classes AS ( SELECT classes.course_learning_item_id course_lid, classes.learning_item_id class_lid, class_assignment.assignment_record_id class_arec, class_assignment.status class_status, class_assignment.sub_status class_sub_status, class_assignment.learner_id class_learner_id FROM FUSION.wlf_assignment_records_f class_assignment INNER JOIN FUSION.wlf_li_classes_f classes ON classes.learning_item_id = class_assignment.learning_item_id AND trunc(SYSDATE) BETWEEN classes.effective_start_date AND classes.effective_end_date WHERE trunc(SYSDATE) BETWEEN class_assignment.effective_start_date AND class_assignment.effective_end_date AND class_assignment.event_type = 'ORA_JOIN_ASSIGNMENT' ),required_courses AS ( SELECT courses.learning_item_id, courses_assignment.assignment_record_id correct_course_arec, courses_assignment.status course_status, courses_assignment.sub_status course_sub_status, courses_assignment.rowid correct_course_rowid, courses_assignment.learner_id course_learner_id FROM FUSION.wlf_assignment_records_f courses_assignment INNER JOIN FUSION.wlf_li_courses_f courses ON courses.learning_item_id = courses_assignment.learning_item_id AND trunc(SYSDATE) BETWEEN courses.effective_start_date AND courses.effective_end_date WHERE trunc(SYSDATE) BETWEEN courses_assignment.effective_start_date AND courses_assignment.effective_end_date AND courses_assignment.event_type = 'ORA_REQUIRE_ASSIGNMENT' ),current_no_ar_match AS ( SELECT required_courses.learning_item_id, required_courses.correct_course_arec, required_courses.course_status, required_courses.course_sub_status, required_courses.course_learner_id, required_courses.correct_course_rowid, vol_classes.class_lid, vol_classes.class_arec, vol_classes.class_status, vol_classes.class_sub_status FROM vol_classes INNER JOIN required_courses ON required_courses.learning_item_id = vol_classes.course_lid AND class_learner_id = course_learner_id LEFT OUTER JOIN FUSION.wlf_ar_relations_f ar ON ar.assignment_record_id = class_arec AND ar.related_object_id = correct_course_arec AND trunc(SYSDATE) BETWEEN ar.effective_start_date AND ar.effective_end_date WHERE ar.relation_id IS NULL ),req_course_vol_class AS ( SELECT current_no_ar_match.*, class_ar.relation_id, incorrect_courses_arec.assignment_record_id incorrect_course_arec, incorrect_courses_arec.status incorrect_course_status, incorrect_courses_arec.event_type incorrect_course_eventtype, incorrect_courses_arec.rowid incorrect_course_rowid, class_ar.rowid ar_row_id FROM current_no_ar_match INNER JOIN FUSION.wlf_ar_relations_f class_ar ON class_ar.assignment_record_id = current_no_ar_match.class_arec AND trunc(SYSDATE) BETWEEN class_ar.effective_start_date AND class_ar.effective_end_date INNER JOIN FUSION.wlf_assignment_records_f incorrect_courses_arec ON class_ar.related_object_id = incorrect_courses_arec.assignment_record_id AND trunc(SYSDATE) BETWEEN incorrect_courses_arec.effective_start_date AND incorrect_courses_arec.effective_end_date AND incorrect_courses_arec.learner_id = current_no_ar_match.course_learner_id WHERE current_no_ar_match.course_status NOT IN ('ORA_ASSN_REC_COMPLETE', 'ORA_ASSN_REC_DELETED', 'ORA_ASSN_REC_WITHDRAWN', 'ORA_ASSN_REC_REJECTED') AND current_no_ar_match.class_status NOT IN ('ORA_ASSN_REC_COMPLETE', 'ORA_ASSN_REC_DELETED', 'ORA_ASSN_REC_WITHDRAWN', 'ORA_ASSN_REC_REJECTED') AND incorrect_courses_arec.status != 'ORA_ASSN_REC_COMPLETE' ) SELECT learning_item_id, correct_course_arec, course_learner_id, course_status, course_sub_status, correct_course_rowid, class_arec, class_status, class_sub_status, incorrect_course_arec, incorrect_course_rowid, ar_row_id FROM req_course_vol_class ORDER BY learning_item_id, course_learner_id, class_lid |