Attendance Excel (XLSX) Reports

The OpenEduCat Attendance Report XLSX module provides a high-performance Excel reporting engine for attendance records, enabling academic administrators and faculty to export detailed student attendance statistics directly into Microsoft Excel (.xlsx) format.

Overview

Rather than relying solely on static PDF printouts or screen pivots, the XLSX attendance reporting engine constructs structured workbooks containing:

  • Student-Wise Daily Matrices :- Detailed line-by-line attendance tracking mapped against individual lecture dates.

  • Weekly Summary Analytics :- Weekly aggregated attendance trends to monitor student engagement over time.

  • Automated Computations :- Automatic calculation of total lectures conducted, lectures attended, and individual attendance percentages.

Exporting Attendance Excel Reports

Excel attendance reports are generated directly from attendance registers:

  1. Navigate to Class Attendances ‣ Attendance ‣ Registers.

  2. Open an existing attendance register from the list or Kanban view.

  3. Click the Print (or gear icon) action menu in the top control panel.

Attendance Register Print Menu with XLSX Options

Available Report Types

Technical Architecture & Customization

The module establishes a reusable abstract reporting framework for developers and administrators:

  • Report Type Registration :- Extends ir.actions.report by adding the xlsx report type (report_type="xlsx").

  • Abstract XLSX Engine :- Custom attendance reports can be constructed by inheriting from the abstract model report.openeducat_attendance_report_xlsx.abstract and implementing the generate_xlsx_report(workbook, data, objs) method.

  • Streaming & Performance :- Uses Python's xlsxwriter library to generate memory-efficient BytesIO streams, allowing large student cohorts to be exported rapidly without memory leaks.

  • Client-Side Download Integration :- Integrated with Odoo's Web client via an OWL action handler (action_manager_report.js), ensuring immediate asynchronous file downloads without requiring page refreshes.