School Reference Public

Daily Operations SOP

The ERPat School operating calendar as standard procedures: start-of-school-year setup, daily attendance and front-desk routines, per-quarter grade encoding and release, and end-of-year report cards and promotion — with the exact click paths and who owns each.

Guide version: r1 Module version: 0.2.0 Updated: 2026-07-22 Estimated time: 7 min 1 views
OPERATE THE SYSTEM

Daily Operations SOP

This is the School module read like a calendar of standard procedures — what happens before the year starts, every school day, at the close of each grading period, and at the end of the year. Each task lists who owns it, the exact click path under the /school menu, and a link to the deep page that explains it. If you only read one page after Getting Started, read this one.

????
How to use this page. The five sections below run in time order across a school year. Owners are named by job, not by name — in ERPat a job maps to a set of permissions (see Roles & Access Map). Every step is permission-gated, so if a screen or button is missing for you, it is almost always a permission you have not been granted rather than a bug.

The school-year rhythm

Set up
Academic structure for the new SY
Admit
Enrollment window → roster
Run the day
Attendance · front desk · support
Close a quarter
Encode → submit → approve → release
Close the year
Report cards · promotion · exports

The four grading periods (or three trimesters, for MATATAG elementary) repeat the Run the dayClose a quarter loop until the year ends. Everything hangs off the current school year — the one flagged is_current in Academic Structure — so start there.


1 · Start of school year

Owner: Registrar / System Administrator  ·  Screen: school/academics  ·  Permits: school_academics + _create/_update. Build the backbone for the new year before anyone can be admitted or graded. The Kinder–G12 grade levels, SHS tracks and strands, and the DO8 subject-group weight buckets are pre-seeded — you do not create those.

  1. Create the new School Year and mark it current

    In Academic Structure → School Years, add the year (campus, title, start/end dates) and use Set as current so its is_current flag is on. This one flag drives every “current SY” query across enrollment, attendance, grades and the portals — set it before anything else.

  2. Add the terms / grading periods

    Under Terms, create the periods for that year — four quarters (DO8) or three trimesters (MATATAG elementary) — with sequence and dates.

  3. Create Sections and assign advisers

    Under Sections, add each section for its grade level (and strand, for Senior High), choose the adviser from active staff, set the room and capacity. Advisers must already exist as staff; register them under school/personnel first if needed.

  4. Add Subjects and Rooms

    Confirm the Subjects catalog for the levels you teach (each subject’s subject group decides its DO8 weights) and that the Rooms list is current.

  5. Confirm the grading policy

    In school/settings, check school_default_grading_policy is the policy you intend (do8_2015 or matatag_do10_2024) before grades are encoded. See the Grading Engine for what changes.

⚠️
The current school year is set in Academic Structure, not in Settings. The School Settings page carries portal toggles and the default grading policy — but the current-year flag lives on the School Year record (is_current). If “current SY” looks wrong everywhere, this flag is the first thing to check.

2 · Enrollment window

Owner: Registrar  ·  Screen: school/enrollment  ·  Permits: school_enrollment + _update. Admit learners into the sections you just built. Full detail lives in Enrollment & Admissions Workflow.

  1. Make sure the learner and guardian exist

    New learner? Add them in school/learners, add the guardian in school/guardians, link them, and verify the link. See Learners & Guardians.

  2. Create and submit the application

    In Enrollment, create an application (learner, school year, grade level, optional strand/section, enrollment type). The applicable DepEd document checklist is copied in automatically. Then Submit it.

  3. Work the requirements checklist

    As documents come in, set each requirement to submitted, verified, or waived.

  4. Approve to build the roster

    Approve once every mandatory requirement is verified or waived — this is gated. Approving materialises the roster enrollment for that learner in the current year and is audited (approve_enrollment). The Roster tab then lists the enrolled learner.


3 · Every school day

Three routines run daily once learners are on the roster.

Take the section attendance register

Owner: Teacher / Adviser  ·  Screen: school/attendance  ·  Permit: school_attendance + _update.

  1. Load the register

    Pick a section + date + session (session defaults to whole). The section’s current-SY enrolled roster loads into a grid.

  2. Mark each learner and save

    Mark present, absent, late or excused. Choose a reason for absent/excused and a time in for late, then bulk-save.

????
This is learner attendance and is entirely separate from the employee/biometric HR attendance. See Learner Attendance for the full procedure and the records browser.

Run the front desk / gate

Owner: Front-desk / Gate security  ·  Screen: school/visitors  ·  Permit: school_visitors + _create (page shown only when school_visitor_pass_enabled is on). Issue a visitor pass on arrival, check in at the gate (logged, audited scan_visitor), check out on the way out, and revoke a pass if needed.

Open support cases as they arise

Owner: Guidance  ·  Screen: school/support  ·  Permit: school_support + _create/_update. Log guidance, behavioral and attendance cases; add progress notes and move status openinvestigatingresolved/referred/closed. Confidential child-protection matters go on the segregated Safeguarding surface instead — see Data Privacy & Safeguarding.


4 · End of each grading period

This is the module’s most governed workflow, deliberately split across two people. Full detail: the Grading Engine.

Draft
Teacher encodes WW / PT / QA
Submitted
Teacher submits for release
Approved
Head approves
Released
Locked · visible on cards & portals
  1. Teacher encodes the class record

    Owner: Teacher · school/grades · school_grades + _update. Pick a section + subject + term, encode Written Work, Performance Task and Quarterly Assessment; the engine computes the transmuted grade. The record is editable only while draft.

  2. Teacher submits for release

    Owner: Teacher · permit school_grade_release. Submitting moves the class record draftsubmitted. The encoder cannot approve their own grades.

  3. Head approves and releases

    Owner: Principal / School Head · permit school_grade_approve. Approve (submittedapproved) then release (→ released). Releasing is audited (release_grades, critical) and locks the grades. Only released grades reach report cards and the portals.

⚖️
Segregation of duties is enforced in code. The person who holds school_grade_release (submit) must be different from the person who holds school_grade_approve (approve & release). This is the quarter’s hand-off and it protects the integrity of every grade.

5 · End of school year

Wrap up the year once the final period’s grades are released.

  1. Generate report cards

    Owner: Principal / School Head · school/report_cards · school_grade_approve. Generate an SF9-style card per learner — it aggregates the released quarterly grades into per-subject finals and a general average and stamps Promoted (GA ≥ 75) or Retained. See Report Cards.

  2. Validate learner data for DepEd

    Owner: Registrar / Admin · school/reports. Run the LIS/EBEIS validation to flag missing or duplicate LRNs and incomplete demographics, and work the fix-list. This is an internal check — it never submits to DepEd.

  3. Export the masterlist for internal validation

    Owner: Registrar / Admin · permit school_export (audited export). Download the SF1-style learner CSV, clearly labelled for internal validation only. See Reports & DepEd Compliance.

  4. Update learner statuses

    Owner: Registrar · school/learners · school_learners_update. Move completing learners to graduated and departing learners to transferred_out so next year starts clean.

  5. Roll into the next year

    Returning learners re-enter the enrollment window using the re_enrollment type; set up the next School Year and mark it current when the cycle begins again.


Who owns what — responsibilities matrix

A quick map of each recurring task to its owning role and the permit that unlocks it.

TaskOwnerScreenKey permit
Set up school year, terms, sections, subjects, roomsRegistrar / Adminschool/academicsschool_academics_create/_update
Process enrollment applications & approve to rosterRegistrarschool/enrollmentschool_enrollment_update
Maintain learners & verify guardian linksRegistrarschool/learners, school/guardiansschool_learners_*, school_guardians_update
Take daily attendanceTeacher / Adviserschool/attendanceschool_attendance_update
Encode & submit quarter gradesTeacherschool/gradesschool_grades_update, school_grade_release
Approve & release grades, generate report cardsPrincipal / Headschool/grades, school/report_cardsschool_grade_approve
Student-support casesGuidanceschool/supportschool_support_create/_update
Confidential safeguarding casesGuidance (restricted)school/safeguardingschool_child_protection
Issue & scan visitor passesFront desk / Gateschool/visitorsschool_visitors_create
LIS validation & masterlist exportRegistrar / Adminschool/reportsschool_export
Settings, portals, integrations, migrationsSystem Administratorschool/settingsschool_settings

Go deeper

Was this guide helpful?

Report a content problem