Exporting to CSV and PDF
Exporting to CSV and PDF
Wherever a timetable is displayed (see Viewing by Class / Teacher / Room), its toolbar has two export buttons: Export CSV and Print / Save as PDF. Both run entirely in your browser — there's no server round-trip and nothing is generated on the backend.
Export CSV
Downloads one CSV file (timetable-YYYY-MM-DD.csv) with one row per scheduled lesson instance,
columns Day, Start Time, End Time, Class Group(s), Subject, Teacher(s), Room, sorted in calendar
order (Monday → Sunday, then by period order within a day) rather than alphabetically.
Two things that surprise people the first time:
- It always exports the whole timetable, not whatever the on-screen "View by" filter is currently showing. If you're viewing a single teacher's table, the CSV still contains every class group, teacher, and room. There's no way to export a filtered subset — open the file in a spreadsheet and filter/sort there if you only need one resource's rows.
- Co-teaching and combined sessions produce a semicolon-separated cell, not multiple rows —
a lesson with two teachers or two class groups appears once, with both names joined by
;in theTeacher(s)orClass Group(s)column.
A teacher who has an Employee ID appears in the Teacher(s) column as
"Mr. Smith (T042)"; teachers without one appear by name only. The ID used is the teacher's
current one, even for a timetable generated before it was set.
The file is written with a leading UTF-8 BOM specifically so Excel — which otherwise guesses the encoding — renders non-ASCII teacher/class names correctly instead of mangling them.
Print / Save as PDF
This button is a plain window.print() call — literally your browser's own print dialog, styled
by this app's print stylesheet so the timetable renders cleanly on paper (or into a PDF if you
choose that as the destination). There's no separate PDF-generation step or library involved. To
get a PDF, pick "Save as PDF" (or "Microsoft Print to PDF") as the destination in the dialog
that opens, rather than sending it to a physical printer.
Two behaviors worth knowing:
- It prints exactly what's on screen, respecting the current "View by" filter — unlike CSV export. Filtered to one class group, only that class group's table prints; left on "All", every resource's table prints one after another (each table is kept from splitting across a page break where possible).
- Colors always print, even if your browser's print dialog has a "print backgrounds"/"background graphics" option turned off elsewhere — the print stylesheet forces color printing so the subject color-coding and BREAK-period highlighting match what you see on screen.
Only the timetable grid itself is included in the printed/PDF output — the page's sidebar, header, and the "View by"/export toolbar are all excluded automatically, so you don't get the app's navigation chrome in your printout.