A newer version of this portal is available.
GU Controller Portal
Controller Portal
Dashboard
Secure Connection

How many students are on file, how many slips have been generated and downloaded, and anything that needs attention before the next exam.

Total Colleges

0

Active affiliated colleges
Generated Slips

0

Across all colleges
Downloaded Slips

0

 
 
Needs Attention

0

Pending records (no Reg No yet)
Top Colleges by Generated Slips
Recent Upload Activity
College Wise Breakdown
College Code College Name Generated Slips Printed Engagement
Press Refresh to load.

Read an official datesheet once, and every affected student's own record gets the day, date, time and credit hours for each of their papers — so a slip never has to look anything up when a student prints it.

Read & deploy a datesheet v3
1 Scope 2 Extract 3 Review 4 Deploy & Sync

Upload the official PDF (or Excel) datesheet for one College + Session. The engine reads the paper time, semester, session, notification no., every exam date/day, department, course code, course title and credit hours — then writes Day, Date, Paper Time and Credit Hours into each matching subject inside every student's own record, for regular subjects and for supply/repeat subjects alike.

Matching rule: College (scope) + normalized Session + Course Code, with the Department used to resolve any course code that two departments share. Regular subjects are written to Exam Schedule; supply/repeat subjects to Repeat Exam Schedule. Re-uploading a corrected datesheet replaces that session's schedule and re-syncs every affected student automatically.
Pick one college for a college-only schedule, or leave "All Colleges" for a University-wide one.
Auto-detected from the document — confirm before deploying.
Auto-detected. Stored with every paper.
Official PDF is recommended — the engine reads the real table geometry (merged date cells, wrapped course-code cells, multi-line titles). Excel stays supported.
For an Excel workbook that holds several semesters as separate tabs (Theory 8th / 6th / 4th / 2nd). Every Theory tab is read, grouped by the Session printed in its own heading, deployed, and Smart Sync runs straight afterwards — so repeaters get their older-semester papers in the same pass. Practical tabs are skipped unless the box above is ticked. Analyze & Extract above still handles a single datesheet (and every PDF).
Deployed datesheets

Every datesheet currently in force, by college and session.

Smart Sync treats every deployed datesheet as one merged pool. Regular subjects still prefer the student's own session's sheet; repeat/supply papers are resolved against all sheets, so a repeater sitting a paper from an older session finally gets its real Day/Date/Time instead of TBA. You no longer need to deploy or re-sync lists one at a time.

Every College + Session schedule currently live. Re-sync pushes that schedule into student records again (safe to run any time), View opens the papers, Export downloads it as Excel.

Loading...
Manage Course Codes

Every code on one College + Session's datesheet, editable individually — add a code, fix its Day/Date/Time/Cr.Hrs, or remove it. Also shows every code students in that Session actually carry (regular and repeat) that isn't deployed here yet.

Repeaters Deep Scan

The full register: every repeater in the database, every paper they carry, and whether it has a date.

Reads every student record — any college, any session, however old the batch — and lists one row per repeat paper with the Reg No, the course, and the deployed datesheet it resolved against. Anything with no paper on any datesheet is flagged in red; those are the rows that print TBA on a slip. The Excel file carries every row plus a separate Unscheduled sheet of just the gaps.

Repeater Control Center

Complete control for repeat/supply papers: inspect one student, see the exact datesheet/session match, verify stored data, repair only missing repeat schedule nodes, and run a controlled all-college repair.

SAFE / PRESERVE EXISTING DATA
The controller treats repeat papers independently from the student's current semester. It searches all deployed datesheets, uses course-code/semester evidence first, and never deletes an existing Repeat Exam Schedule node during repair.

Controlled batch repair
Repairs repeat schedules only. Existing regular schedules and existing repeat-session nodes are preserved.
Repeaters Coverage Report

Finds every repeater in the system — any session, including years-old batches from well before your current cohort — and checks whether every repeat course they carry matches a paper on ANY deployed datesheet, not just one. This is the one place old-session repeaters are covered at all: Exam Readiness only checks one Session at a time, so a 2016-20 (or any pre-2018) student never showed up there.

"All Colleges" reads every student in the database once — can take a while on a slow connection. A single College Scope is much faster.

Find a course code

Checks EVERY deployed datesheet — every college, every session — for one course code. The fastest way to tell "not matching yet" (a real bug) apart from "not deployed anywhere" (the right datesheet hasn't been uploaded, so no fix to the matching logic can find it).

Fix a wrong course code

When a college typed a code that doesn't exist on any datesheet, every student carrying it prints TBA for that paper. Search the wrong code here to see exactly who has it, then replace it with the correct one across all of them in one pass. Re-sync afterwards and their real Day/Date/Time appear.

Exam Centres

The slip prints "CENTRE: To Be Announced (TBA)" until a centre is set here. Enter one once the office's allocation letter for a College + Session arrives, and every slip for that College + Session picks it up automatically — nothing needs re-deploying or re-syncing.

Leaving Session blank applies to every session for that college, until a more specific one is added.
Centres already set
Loading...
Import from Superintendent's Orders (Spring 2026)

Reads the 18 examination-centre notifications from "Superintendent's Orders Spring-2026" — every college named there, matched against your live college list. The order letters use their own AC-xx numbering, not your college codes, so nothing is saved until you've confirmed each match.

Backfill Invigilator Verification Index

invigilator.html's day-of sync (Name/Program/Semester, never CNIC) only fills in as students get uploaded, edited, or a college runs their own "Build Index" — a college that's never touched either will show 0 students there even though their records exist. This does the same one-time backfill for every college at once from here, using admin's own access, instead of needing each college to run it individually.

Read a college's enrollment sheets into the database. Nothing is written until you have seen the preview and pressed Commit.

Enrollment sheets

Excel files from the colleges — several at once is fine.

Reads the student rows, pulls the photos out of the sheet and matches each one to its student, and checks every Registration No against the records already in the database. A row belonging to a student who already exists — an earlier batch's Reg No appearing again for one supply paper — is merged rather than overwritten: only the repeat course, session and semester are added, and the student's real record is left as it is. Those show as a blue "Merged" badge in the preview.

Nothing is saved yet — you get a preview to check first.
Repeaters list

Supply and repeat papers for students who are already on file.

This only adds the repeat courses, the repeat session and semester, and flips Student Type to Repeater. Name, CNIC, photo, primary session and semester — everything else stays exactly as it is. A Reg No that isn't in the database yet gets a new skeleton record rather than being skipped.

Which sheet layouts are understood?
Metadata style — a Session: / Semester: block above the header, then a Registration No column and a Repeat Courses column, one course per line.
Award-list style — separate Course Code and Course Title columns, with the Reg No printed only on a student's first row.
Figure statement style — per-row Session, Semester, Subject, Course Code/Title and Challan No/Dated/Fee, with the Reg No on every row. A student sitting three papers appears as three rows and is grouped back into one record.
Nothing is saved yet — you get a preview to check first.

One question, answered for a whole session: can every enrolled student actually print a correct roll number slip? Run this before an examination, not during it.

Run the check

Every check at once, for one session, college by college.

Tells you which colleges and which students are not ready — missing subjects, no exam schedule, no photo — and takes you straight to each one to fix it.

Attendance marked by invigilators during examinations. Pick a college to begin — department, semester, subject and date narrow it further. Nothing here can be edited; this is a read-only view with an Excel export.

Today's Attendance — All Colleges

Loading...

Filters

College is required; everything else is optional.

Records

Select a college and load records to begin.

Reg NoNameDepartmentSemester SubjectStatusSubmitted ByDate & Time
No records loaded yet.

Open any college's roster to see its students by department, filter them, edit in bulk, or produce its official enrollment list. A class here is one Department/Program + Session + Semester combination — narrow the roster below to all three to land on exactly one class, then use its per-row controls or the bulk bar to add, move or remove students.

Colleges

Counts come from the dashboard summary; a roster is read live when you open it.

Loading colleges...
Move a whole department / class

Move every student belonging to one department from one college to another without changing their Registration No, courses, photos or exam data.

The list is built from the actual students currently stored in the selected college.
Students' Registration Nos stay unchanged. Only their college node and college metadata move.

Look up one student and correct their record — the single place where an individual record is changed by hand.

Find a student

By Registration No, by CNIC for a pending record, or by name.

A pending record is a student who came in without a Registration No — find them by CNIC and assign one once the college confirms it.

Search by name Name, father name, CNIC or partial Reg No
Pending records report

Students with no Registration No yet, grouped by the college they most likely belong to.

Read live from the database. Anything that could not be matched to any college gets its own flagged section at the end, so nothing quietly disappears into a group it does not belong to. Send the report to a college and they can tell you which students are theirs.

Click "Refresh" to load the pending records report.

Pull up any registered student's printable Roll No. Slip by CNIC or Registration No — searches every college, not just one.

Find a student's slip

By 13-digit CNIC, or by Registration No (e.g. 2022-GCBM-269).

GHAZI UNIVERSITY, DG KHAN

Roll No. Slip for Final Term Examinations Affiliated Colleges (Spring 2026)

Verify QR
CANDIDATE NAME: ...
Loading... Student Photo
FATHER'S NAME:...
CNIC NO:...
PROGRAM:...
SEMESTER:...
INSTITUTION:...
REGISTRATION NO:...
WRITTEN EXAMINATION SCHEDULE
DAYDATECOURSE CODECOURSE TITLECR. HRSTIME
Signature

Controller of Examination

IMPORTANT NOTICE / اہم ہدایت

Please carefully review the currently enrolled and repeat courses listed on this slip. Report any issues or errors to the Office of Controller of Examination within 3 working days.

تمام طلباء کے لیے لازم ہے کہ وہ اپنے درج شدہ اور ریپیٹ کورسز کو اچھی طرح چیک کر لیں۔ کسی بھی قسم کے اندراج کی غلطی کی صورت میں تین (3) یوم کے اندر کنٹرولر آفس کو آگاہ کریں۔

INSTRUCTIONS FOR CANDIDATE
  1. Roll No. Slip is provisional. Result will be quashed if found ineligible.
  2. Reporting time at centre is 15 minutes before paper time.
  3. In case of wrong entries/concealment of previous examination information, Roll Number slip/result shall be cancelled.
  4. Keep this slip carefully during the examination and provide the original Roll Number slip to Supervisory Staff.
  5. The candidates are allowed to use scientific calculators without mini computers. Mobile phones and wireless devices are strictly prohibited.
  6. Keep your original CNIC along with you during the course of Examination. Form-B is not allowed.
  7. Un-authorised change of Centre/Subject/Group is strictly prohibited.

Every batch that has been committed, newest first — the record of which file put which students into the database.

Committed batches

Kept even after a college's data is deleted, so there is always a trail.

Timestamp Source File(s) New Overwritten Skipped
Click 'Refresh' to load history logs.

Colleges

Correct a college's name everywhere it appears, or bring students that were filed under the wrong college code back together.

Rename a college

Updates the college record, the dashboard summary, and every student record underneath it.

Merge colleges

Move students, photos and pending records out of stray college nodes into the college they really belong to.

Batches uploaded before the college was read from the sheet header were filed by whatever code sat in each Registration No, so one real college can be split across several nodes. A student's Registration No stays their key — only the college they sit under changes. Take a full backup first.

Press Reload to list the colleges in the database.
Find students filed under the wrong college

Every college's own roster, checked against what each student's own Registration No actually says — not one college compared against another, so this finds a mix in any direction across the whole database in one pass. A student stays keyed by their Registration No; only which college node they sit under changes.

A Registration No like "2022-GQFD-014" filed under GQMD's node is exactly what this looks for — the datesheet deployed for GQFD never reaches that student because their record isn't there to find it, no matter how the datesheet or Smart Sync are set up. Moving the record to where its own Registration No says it belongs is what lets a normal Smart Sync pick it up from then on. Take a full backup first.

Press "Scan everyone" to check every college's roster.
Recover photos left behind by a college split

When a college was split into a new code (its students moved but photos weren't, or a re-upload created fresh student records without re-embedding photos), the photos are usually still sitting under the OLD code's node. This finds any student in the new college who's missing a photo but has one under the old code, and copies it over — the old copy is never touched or deleted, so this is safe to run and re-run.

Access & Release

Decide when roll number slips become available to students, and what each college may do in its own portal.

Slip release

The master switch for the public student portal.

Per-college permissions

Exceptions that apply on top of the release switch above.

Bulk slip download — whether that college may print its students' slips in one batch from its own portal. Switching it off hides the Bulk Slips tab there.
Block student slips — holds back one college's students on the public portal, for unpaid dues or a withheld result, even after the general release. The college's own portal and this one are unaffected.

Loading colleges…

Student Blocks

Hold back individual students from the public portal — a college sends a list of defaulters, or the university cancels an admission. Blocking never touches a student's record; it only stops the slip.

Block students

One Registration No, or paste a whole list a college has sent you.

Leave as is — each Reg No is filed under the college its own code names.
The student sees this, so write it for them.
Any format works — 2022-GCBA-335, 2022GCBA335, mixed case. Each one is matched to a college by the code inside it.
Currently blocked

—

Loading blocked students…

Backup & Storage

Take a snapshot before anything risky, and keep an eye on what the database is costing in bandwidth and space.

Full backup

Every node — colleges, pending records, upload logs, analytics — as one JSON file.

Download this before a bulk delete, a merge, or a global rename. It is the only way back if something goes wrong.

Bandwidth this month

What this browser has downloaded, broken down by database node.

—

The Firebase free plan allows 10 GB of downloads a month. The student portal, the college portals and other operators draw on the same allowance but are not counted here, so read this as a floor rather than the full bill.

Maintenance

Occasional housekeeping — safe to run, but not needed day to day.

Older uploads stored a student's photo inside their record, so every read of that record pulled the image too. Move photos out relocates them to a separate node, which cuts bandwidth on every later read. Storage breakdown measures which node or college is using the most space.

Danger Zone

Actions here destroy data permanently and cannot be undone.

There is no undo and no recycle bin. Take a full backup first — it takes seconds and it is the only way back.
Delete a college's data

Wipes one college's students, photos and dashboard summary.

For when an entire batch was uploaded against the wrong college. Other colleges are untouched, and upload_logs is kept so there is still a record that the upload happened. Any pending records tied to this college are removed too.