JoomSchool's attendance system records, day by day, which students were present, absent or late for each subject they take. This article covers how to record attendance, the difference between the two attendance views, time tracking, reports and the most common pitfalls.
Overview
Attendance in JoomSchool is recorded per date + class + section + subject. That granularity lets you run separate attendance for a math class and a science class on the same day, even when the students overlap. The recorded data feeds three places:
- The admin attendance reports (filtered by year, section and student)
- The frontend Attendance Report view that students and parents see
- Annual attendance summaries used in reporting and printing
There are two related admin views:
- Attendance — the main view. Used to record and edit attendance for one date / class / section combination.
- Attendance by Subject — an alternate listing focused on subject-level filtering, useful when a school has subject teachers each maintaining their own register.
Both views work with the same underlying data.
Prerequisites
- Classes, sections and subjects must already exist.
- Students must be linked to the right class + section + academic year.
- The toolbar Year Switcher must point at the year you want to record attendance for (otherwise newly recorded attendance is stamped against the wrong year).
Recording attendance
Go to Components → JoomSchool → Attendance and click New.
The form has the following fields:
| Field | Description | Required |
|---|---|---|
| Date | Calendar picker. Defaults to today. | Yes |
| Class | The class whose attendance is being recorded. | Yes |
| Section | A single section within that class. | Yes |
| Subjects | One or more subjects taught during the day. Multi-select. | Yes |
| Start Time | Time picker for the start of the lesson. Defaults to 0:00. | No (recommended) |
| End Time | Time picker for the end of the lesson. Defaults to 0:00. | No (recommended) |
| Note | Free-text comment about the day (e.g. "field trip", "split class"). | No |
After picking the four required fields, the form expands to show a row per student in that class + section. Each row has a status selector with the values Present, Absent and Late.
Mark each student, click Save & Close, and the day's attendance is committed.
Recording for multiple subjects
Because the Subjects field is multi-select, you can record attendance for several subjects taught on the same date for the same class + section in a single form submission. JoomSchool writes one attendance entry per subject. This is the right approach when a class has the same student roster for back-to-back lessons.
When subjects have different rosters (because students go to different optional classes after lunch, for instance), record each subject separately so the rosters are correct.
Time tracking
The Start Time and End Time fields are stored alongside each attendance record. Their default value is 0:00, which means "not recorded". Schools that care about hour-by-hour tracking should fill them in; schools that only need daily attendance can leave them at default.
Attendance by Subject view
Components → JoomSchool → Attendance by Subject shows the same data filtered for subject-centric workflows. The columns are biased toward "what attendance has been recorded for Mathematics across all classes today?" rather than "what attendance has been recorded for Class 6 Section A today?".
Most schools use the main Attendance view for entry and the By Subject view for cross-checking that every subject teacher actually filled in their register.
Editing attendance
Click any row in the Attendance list to re-open the form for that date. Every status can be changed; corrections save immediately on Save.
The list view supports the standard publish / unpublish / archive / trash toolbar. Trash an attendance record if it was created in error and start over with a fresh New.
Year switcher and section switcher
The Attendance list view honours two toolbar switchers:
- Year Switcher — re-filters the entire list to a different academic year. Use to view or correct historical attendance.
- Section Switcher — when you're inside a single attendance record, the section switcher in the toolbar lets you jump from one section's roster to another's without going back to the list.
Both switchers also affect what the Frontend Attendance Report shows for the logged-in user.
Frontend attendance report
Students see their own attendance under Attendance Report in the frontend menu. Parents see a per-child report (and can switch between children if they have more than one).
The report renders a calendar-style grid for the selected month with each day coloured by status:
- Green — Present
- Red — Absent
- Yellow — Late
- Blank — no record (weekend, holiday, no school)
Filters on the page let the user pick a month and an academic year.
Exporting
Every attendance list view has PDF and Print toolbar buttons. The PDF uses the layout configured in Components → JoomSchool → Options → Header / Footer / PDF.
Export use cases:
- A signed paper copy for the principal's records.
- A monthly printout for parent-teacher meetings.
- An archive PDF when the school year closes.
Tips & Best Practices
- Record attendance daily, on the day. Filling in three weeks of attendance retroactively is error-prone and the date defaults to today, so it's easy to stamp wrong dates.
- Use the Note field for one-off circumstances. "Half-day for sports" or "Substitute teacher" are the kinds of things you'll want to read again at year-end.
- Don't unpublish an attendance record because of a mistake — edit it instead. Unpublished records confuse the report generation.
- Set Start Time and End Time if your school produces hour-tracked reports for compliance. Defaulting to 0:00 makes those reports useless.
- Audit attendance weekly. Open the By Subject view and confirm every subject has at least one record per teaching day. Missing days are easy to backfill within a week, much harder a month later.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| The student list is empty after picking class + section. | No published students are linked to that class + section in the active academic year. | Switch the Year Switcher to the right year; confirm the students are Published in Components → JoomSchool → Students. |
| Saved attendance doesn't appear on the parent's frontend report. | The Year Switcher and the parent's child view are looking at different years. | Confirm both are set to the same year. |
| The attendance form rejects "Save" with "Subjects is required". | The Subjects multi-select is empty. | Pick at least one subject. |
| You marked attendance yesterday but it shows up under today. | The Date field was left at default (today) instead of being changed to yesterday. | Re-edit the record and correct the date. |
| Two attendance entries exist for the same day, class, section. | Someone clicked New twice instead of editing the existing record. | Trash the duplicate; the report will exclude trashed records automatically. |
| Frontend Attendance Report is empty for a student you know was marked. | The student's record stamps a different academic year, or the report month filter is wrong. | Confirm the student record's academic year matches the attendance record. |
| PDF export shows blank cells where statuses should be. | The PDF template was customised and lost the status column reference. | Restore the default PDF template via reinstall. |