Institution Aggregated Report
National Training InstituteTotal Students
TVET learners at the Working Institute
Enrollments
Jun 2025 – Jun 2026
Completion Rate
Working Institute average
Certificates
in period
| Institution Name β | Students | Active Courses | Enrollments | Completion Rate | Certificates |
|---|---|---|---|---|---|
| Vientiane Technical College | 342 | 12 | 1,205 | 68.4% | 824 |
| Learner Group | Students | Active Courses | Enrollments | Completion Rate | Certificates |
|---|---|---|---|---|---|
| External | 128 | 5 | 312 | 58.3% | 167 |
Screen Flow (from flow.puml):
π Spec notes β UC-ANL.06 / SCR-ANL.14 (fields, actions, requirements)
- Screen: SCR-ANL.14 β Institution Aggregated Report Landing
- Use case: UC-ANL.06 β View Institution-level Aggregated Report
The Institution Aggregated Report page is shared by Program Administrator and Super Administrator. It always shows exactly one institution β the user's currently selected Working Institute (SS-IDP.31). Program Administrator can select among the institute(s) they are assigned to; Super Administrator can select any institute in the system. See SS-05 for the data access rule. At the top, a filter lets the administrator narrow the view by learner type (TVET, External, or both) and a date range. Below the filter, the Working Institute's name is shown, followed by four summary numbers scoped to that institute: total students, total enrollments, overall completion rate, and certificates issued. The main area is a data table split into two sections by learner type β TVET section: a single row for the Working Institute (student count, active courses, enrollments, completion rate, certificates); clicking the row opens SCR-ANL.15. External section: a single aggregate row for External learners who enrolled in the Working Institute's courses (External learners have no institutional affiliation of their own); clicking the row opens SCR-ANL.15 in External mode. An Export button opens the shared Export Dialog (SCR-ANL.17) for CSV/Excel/PDF download. If the Working Institute has no activity in the selected date range, its row still appears with all numbers shown as zero β never removed.
filter_learner_type"Learner Type" β enum multi-select Β· User.learner_type Β· default [tvet, external] Β· one_of [tvet, external] Β· shown as checkboxes (chips)filter_date_start"Start Date" β date Β· computed default: today β 12 months Β· validation β€ filter_date_end Β· applies to Enrollment.enrolled_at / completed_at / Certificate.issued_atfilter_date_end"End Date" β date Β· computed default: today Β· validation β₯ filter_date_startworking_institute_name"Institution" β text Β· lookup of the currently selected Working Institute (SS-IDP.31) Β· read-only Β· fallback ""kpi_student_count"Total Students" β count User where learner_type β filter_learner_type, scoped to the Working Institute Β· all-time count (not date-limited) Β· read-only Β· fallback 0kpi_enrollment_count"Enrollments" β count Enrollment at the Working Institute where learner_type β filter + enrolled_at in date range Β· read-only Β· fallback 0kpi_completion_rate"Completion Rate (%)" β (completed Γ· total) Γ 100 at the Working Institute Β· 1 decimal Β· range 0β100 Β· read-only Β· fallback 0kpi_certificate_count"Certificates" β count Certificate.status==issued at the Working Institute in range scoped by learner_type Β· read-only Β· fallback 0- TVET section columns:
tvet_col_institution_name(Institution.name),tvet_col_student_count(headcount of TVET learners belonging to this institution),tvet_col_active_course_count,tvet_col_enrollment_count,tvet_col_completion_rate,tvet_col_certificate_countΒ· all read-only Β· active_course_count/enrollment_count/completion_rate/certificate_count are scoped by course affiliation (courses created by an instructor of this institution β SS-ANL.09; OI-04/OI-213/OI-217) β an enrollment counts toward this institution whenever the course itself is affiliated with it, regardless of which institution the enrolled learner belongs to;student_countalone remains scoped by the learner's own institution (a different question β "who belongs here" vs "what is this institution's course activity") - External section columns:
ext_col_institution_name,ext_col_student_count,ext_col_active_course_count,ext_col_enrollment_count,ext_col_completion_rate,ext_col_certificate_countΒ· all read-only Β· scoped by the same course-affiliation rule as the TVET section (SS-ANL.09/OI-217) β counts External learners who enrolled in a course affiliated with the Working Institute;ext_col_student_countis the headcount of External learners with at least one such enrollment (External learners have no institutional affiliation of their own) tvet_table_sort_column/tvet_table_sort_directionβ enum Β· default institution_name ASC Β· sorts the TVET section only Β· one_of [institution_name, student_count, active_course_count, enrollment_count, completion_rate, certificate_count]
reset_filter"Reset" β restores defaults: learner_type [tvet, external], date_start todayβ12mo, date_end today Β· filter auto-applies on change (no explicit Search button per UC-ANL.06 step 2β3)sort_column"(click column header)" β client-side sort; toggle asc/desc; TVET section only (External is a single aggregate row β nothing to sort) Β· default institution name ASCselect_institution"(click TVET institution row)" β always enabled (reaching this screen already implies the Working Institute exists) Β· triggers UC-ANL.06-M-4 β navigate to SCR-ANL.15select_external"(click External row)" β always enabled regardless of whether External learners exist (SCR-ANL.15 shows 0s if none) Β· triggers UC-ANL.06-M-4 β navigate to SCR-ANL.15 in External modeexport"Export" β always enabled Β· triggers UC-ANL.06-A-3A-1 Β· opens the Export Dialog (SCR-ANL.17)
- Report data must reflect the latest enrollments, course status changes, and certificate issuances within 5 minutes. [refs: SS-ANL.02]
- Institutions with no activity in the selected date range must still appear in the table with all numbers shown as zero β they must never be removed from the list based on the filter. [refs: β]
- Keyboard users must be able to navigate through KPI cards and table rows in logical top-to-bottom order using Tab. [refs: NFR-09]
- All figures and the institution row displayed on this page are scoped to the user's currently selected Working Institute (SS-IDP.31) β Program Administrator can select among the institute(s) they are assigned to; Super Administrator can select any institute in the system. Platform-wide totals are a separate report (UC-ANL.07). [refs: SS-05, SS-IDP.31]
- When the selected learner-type filter has no matching learners for the TVET row or the External row, that row still displays with all figures shown as 0 β it is never hidden based on the filter. [refs: β]
UC-level export requirement (UC-ANL.06 AR #2): Export supports 3 formats (CSV, Excel, PDF) via the shared Export Dialog, accessible from both the summary page (AF-3A) and the institution detail page (AF-5C); execution path (sync vs. async) is determined by the estimated row count of the output. [refs: SS-ANL.03]
β³ Embedded dialog: SCR-ANL.17 β Export Dialog
scope_summary"What will be exported" β text Β· computed Β· read-onlyformat"Format" β enum (csv/excel/pdf) Β· required Β· default: csv
generate"Generate & Download" β always enabled Β· triggers UC-ANL.06-A-3A-3 (also shared by UC-ANL.06-A-5C-3, UC-ANL.07-A-3B-3)cancel"Cancel" β always enabled Β· no UC step (dismisses dialog)
- When the requested export is estimated to take longer than a few seconds, the dialog shows an in-progress indicator instead of an immediate download link. [refs: SS-ANL.03]