Planned Course Form
Field reference for degree planning and planned course registrations.
Fields
| Field | Type | Required | Max Length | Validation | Notes |
|---|---|---|---|---|---|
| Plan ID | Integer | Auto | - | - | System-generated identifier |
| Student | Select (FK) | Yes | - | Must exist | Student planning course |
| Section | Select (FK) | Yes | - | Must exist | Planned course section |
| Status | Select (Lookup) | Yes | - | PLAN_STATUS | Planned, Registered, etc. |
| Requirement Item | Select (FK) | No | - | Must exist | Requirement being satisfied |
| Requirement Block | Select (FK) | No | - | Must exist | Parent requirement block |
| Credits Selected | Decimal | No | - | Section range and increment | credits_selected: the student's choice on a variable-credit section (migration 279); ignored on a fixed section. Carried onto the enrollment's credits attempted at registration |
Planning Context
| Field | Type | Required | Notes |
|---|---|---|---|
| Planned By Person | Select (FK) | Yes | Who created the plan |
| Planned By Role | Select (Lookup) | Yes | Role (Student, Advisor) |
| Planned At | DateTime | Auto | When planned |
| Notes | Text Area | No | Planning notes |
Seat Blocking
| Field | Type | Required | Notes |
|---|---|---|---|
| Seat Blocked | Boolean | No | Seat is reserved |
| Seat Blocked At | DateTime | No | When seat was blocked |
| Expires At | DateTime | No | When block expires |
| Expired At | DateTime | No | When plan expired |
| Expiration Reason | Text | No | Why plan expired |
Prerequisite Validation
| Field | Type | Required | Notes |
|---|---|---|---|
| Prereq Satisfied | Boolean | No | Prerequisites met |
| Prereq Notes | JSON | No | Prerequisite details |
| Coreq Acknowledged | Boolean | No | Corequisites noted |
| Coreq Notes | JSON | No | Corequisite details |
| Schedule Conflict Overridden | Boolean | No | Conflict was overridden |
| Override Reason | Text | No | Reason for override |
Repeat Override
Set when a registrar (REGISTRATION.OVERRIDE.DUPLICATE) plans a course the student may not take again (migration 287). See Repeats and Retakes.
| Field | Column | Type | Notes |
|---|---|---|---|
| Repeat Overridden | repeat_overridden | Boolean | Default false |
| Repeat Override Reason | repeat_override_reason | Text(1000) | At least 10 characters |
| Repeat Override By | repeat_override_by | UUID | Person who approved it |
| Repeat Override At | repeat_override_at | DateTime |
Registration Integration
| Field | Type | Required | Notes |
|---|---|---|---|
| Registration Transaction | Select (FK) | No | Linked transaction |
| Registered At | DateTime | No | When registered |
Plan Status Values
| Code | Description | Next Status |
|---|---|---|
| PLANNED | Course is planned | PENDING_APPROVAL, REGISTERED, CANCELLED, EXPIRED |
| PENDING_APPROVAL | Submitted in a registration request, waiting for approval | REGISTERED, or back to PLANNED if the student cancels the request |
| REGISTERED | Course was registered | (terminal) |
| CANCELLED | Plan was cancelled, by the student or by a cascade (a cancelled prerequisite, or a failed course or a pass below a prerequisite's minimum) | (terminal) |
| EXPIRED | Plan expired | (terminal) |
Computed Fields (Read-Only)
| Field | Description |
|---|---|
| Course Code | From section's course |
| Course Title | From section's course |
| Term Code | From section's term |
| Credits | From section |
| Is Planned | Status = PLANNED |
| Is Registered | Status = REGISTERED |
Validation Rules
- Student + Section must be unique (one plan per student per section)
- Section must be in a future or current term
- Seat Blocked reserves a seat but can expire
- Expires At should be before registration deadline
- Plan automatically expires if Expires At passes without registration
Degree Audit Integration
Planned courses integrate with degree audit:
| Connection | Description |
|---|---|
| Requirement Item | Specific course requirement being fulfilled |
| Requirement Block | Parent block (e.g., Major Core) |
| What-If Analysis | Shows how plan affects audit |
Related Screens
- Student - Student record
- Sections - Course section
- Requirements - Degree requirements
- Enrollment - Actual enrollment after registration