School Reference Public

FAQ & Troubleshooting

Answers to the most common ERPat School questions: why a parent can't see their child, which grading policy applies, why a class record is locked, do the SF exports replace DepEd LIS/EBEIS, why the portal or visitor page is missing, and more.

Guide version: r1 Module version: 0.2.0 Updated: 2026-07-22 Estimated time: 8 min 1 views
REFERENCE

FAQ & Troubleshooting

The questions people actually ask about ERPat School — access and portals, grading, enrollment, DepEd compliance, setup, and privacy. Tap a question to expand it. Every answer is grounded in how the module really works and links to the deeper page when you need the full walk-through.

????
Two ideas explain most surprises: a parent can only see a child whose guardian link is verified, and a grade only appears anywhere once it is released. If something is "missing", check those two first. See Data Privacy & Safeguarding.

Access & portals

Almost always one of two reasons:

  1. The guardian link isn't verified

    A parent portal shows only verified children. When a guardian is linked to a learner the link starts unverified; a registrar must open Parents & Guardians and Verify that link (needs school_guardians_update; the action is audited as verify_guardian). Until then the child won't appear.

  2. The child's grades aren't released yet

    The child does appear, but grades look empty because only released grades are visible. The school head must approve and release the class record first. See Grading Engine.

More detail for parents: Parent Portal Playbook.

A portal is off until three things are true:

  • The module is enabled (module_school='1').
  • The specific portal toggle is on — school_parent_portal_enabled='1' for parents, school_student_portal_enabled='1' for students (in School Settings).
  • Core customer sign-in is enabled (allow_customer_signin) — the portals reuse the existing customer login.

The parent portal lives at school/parent and the student portal at school/student. See Administration, Settings & Portals.

That customer account isn't linked to a School record. The student portal resolves the learner from school_learners.user_id for the signed-in user only; if no learner points to that account, the "no record" page shows. Fix it by provisioning the portal login from the learner's profile (or the guardian's, for parents) so the account is created from that record and the link exists. See Learners & Guardians.

The school provisions it — there is no public self-registration. From the guardian or learner profile, use Provision portal login. It creates a customer account with a temporary password; the person then uses forgot password to set their own. It needs the guardian/learner to have an email, and if that email is already in use, provisioning is refused. See System Administrator Playbook.

No. The parent portal is IDOR-proof: the set of children is derived strictly from the signed-in user's verified guardian links — no learner id is ever taken from the URL or a form. The student portal likewise only ever resolves the signed-in user's own learner record. See Data Privacy & Safeguarding.

Grades & report cards

A class record is editable only while its status is draft. Once it is submitted, approved or released it is locked. If you still need to change a score, the record has to move back to draft (or the release has to be handled by whoever holds school_grade_approve) — releasing in particular is deliberately final because it publishes to report cards and portals. See Grading Engine.

No grading scheme is configured for that combination of grade level + subject group + school year. Weights are data, not code, so the engine can't compute a grade without a matching scheme. Configure the scheme (policy, WW/PT/QA weights, passing grade) for that grade/subject group/year, then re-encode. The Schemes reference tab on the Grades page lists what's currently configured. See Grading Engine and Administration.

Whichever the active scheme for that grade/subject group/year says. The two run side by side: DepEd Order 8, s.2015 uses per-subject-group WW/PT/QA weights (e.g. Languages/AP/EsP 30/50/20; Science/Math 40/40/20; MAPEH/EPP/TLE 20/60/20) with a transmutation table; MATATAG DO10, s.2024 uses a uniform 25/50/25 with a floor-60 linear transmutation and an elementary trimester, phased in by grade and year. The school_default_grading_policy setting only chooses the default new schemes follow. See Grading Engine.

Two likely causes:

  • You have submit, not approve. Encoders hold school_grade_release (which submits); only school_grade_approve can approve and release. This is segregation of duties — the encoder can't approve their own grades.
  • You're skipping a step. The order is fixed: draft → submitted → approved → released. Submit first, have the head approve, then release.

See Teacher & Adviser Playbook and Principal & School Head Playbook.

Report cards aggregate released quarterly grades for the current school year. If there is no current SY set, or no grades have been released yet, generation errors. Make sure a School Year is marked current in Academic Structure and that the term grades are released before generating. Generation needs school_grade_approve, sets the remark Promoted (general average ≥ 75) or Retained, and is audited. See Report Cards.

Passing is 75. Final grades are whole numbers, floored at 60 and capped at 100, with descriptors: 90–100 Outstanding, 85–89 Very Satisfactory, 80–84 Satisfactory, 75–79 Fairly Satisfactory, below 75 Did Not Meet Expectations. The full table is in the Reference.

Enrollment & roster

Approval is gated: every mandatory document requirement on the application's checklist must be verified or waived first. Open the application, work the checklist (each item moves pending → submitted → verified, or is waived), then approve. Approving materialises the roster enrollment and is audited as approve_enrollment. See Enrollment & Admissions Workflow.

Only an approved application places a learner on the roster — approving is what materialises the enrollment (status enrolled) for that learner + school year. A draft or submitted application won't appear on the Roster tab, and the attendance register only loads the current-SY enrolled roster for the chosen section. Approve the application first. See Enrollment and Learner Attendance.

Pick the right enrollment type on the application: new, re_enrollment, transferee, balik_aral, or moved_in. The type (with the grade level) drives which DepEd document requirements are copied into the checklist. See Registrar & Admissions Playbook.

DepEd compliance & exports

No. The SF1-style masterlist export and the LIS/EBEIS data validation are internal preparation and validation aids only. The masterlist CSV is clearly labelled "FOR INTERNAL VALIDATION ONLY — not a DepEd LIS/EBEIS official form", and the validator produces a fix-list — it never submits to or replaces the official systems. Official forms and submission stay in DepEd LIS/EBEIS. See Reports & DepEd Compliance.

It runs over all learners and flags missing or malformed LRNs, incomplete demographics, and duplicate LRNs, then gives you a fix-list to clean up before you submit through the official system. It's output-only. See Reports & DepEd Compliance.

A user with school_export. The export is CSV-injection-safe and every run is audited as export. See the audited actions.

Setup & availability

Work down this list:

  1. Module enabled?

    Turn on module_school in Settings → Manage Modules.

  2. Migrations run on this tenant?

    The school_* tables are created per tenant — run php erpat migrate:modules and validate on every tenant DB.

  3. Permission granted?

    Each page needs its base permission (e.g. school_grades). Without the base school and the page enabler, the entry is hidden.

See Getting Started and Administration.

Its menu entry is gated by school_visitor_pass_enabled (in School Settings) and the school_visitors permission. Turn the setting on and grant the permission (add school_visitors_create to issue and scan passes). See the Gate Security & Visitor Playbook.

The bridge links to the Learn module (module_courses). When Learn is off, the page shows a notice and every action no-ops — by design, so School grading and portals are never affected. Enable the Learn module to use it. Note that roster sync only enrolls learners who already have a linked student account; others are reported skipped. See LMS Bridge & Communication.

Not in Settings — in Academic Structure → School Years, by marking a year as current (the is_current flag). That one flag drives every "current SY" query: rosters, attendance, grades and report cards all follow it. See Academic Structure Setup.

Data & privacy

No — they are separate. School's Learner Attendance (per section, per day, present/absent/late/excused) is its own system, distinct from the employee/biometric HR attendance used for payroll. See Learner Attendance.

Only holders of the restricted permits, and every read is logged. Learner health/medical needs school_health (audited as view_health). The confidential child-protection / anti-bullying surface needs school_child_protection (audited as view_safeguarding); it is segregated from the ordinary Support list — confidential cases never appear there — and the Support page only shows a guarded link into it to holders of the permit. Both audits are critical severity. See Data Privacy & Safeguarding and the Guidance & Clinic Playbook.

It is the Data Privacy Act (RA 10173) gate. Verifying a link records who verified it and when, and is the exact thing that later lets a parent portal account see that child. A new link starts unverified so a person can never gain access to a child's data before the school confirms the relationship. See Learners & Guardians and Data Privacy.

Sensitive actions write a dedicated audit entry: approve_enrollment, reject_enrollment, verify_guardian, view_health, release_grades, view_safeguarding, scan_visitor, export, and update_settings. Ordinary create/update/delete is captured by the base activity log. The full table with severities is in the Reference.


????
Didn't find your answer? Try the Screen, Route & Data Reference for exact routes, permissions and statuses, the Roles & Access Map for who can do what, or your Role Playbook for the step-by-step. Everything in these answers traces back to the live module — see Research & Evidence Base.
Was this guide helpful?

Report a content problem