Skip to main content

3. Programs of Study and Subject Requirements- In Work

The program of study (plan) record must be linked to a grade_span record.  There can be only one grade_span per program plan as programs plans can not cross over a grade_span.

However, a plan cover a period less than the grade span, for example there may be a 6th grade Remedial Plan that covers just one year of the 6th-8th grade span. After that plan is complete, the student is re-evaluated and placed in a new plan.

pasted from PEMS_1:

A program(plan) may be linked to only one grade_span.  When a new program(plan) record is made, the grade span will be selected. The default values in the start and end grade will be those values associated with the selected grade span, the lowest grade level record (start grade) and the highest grade level record (end grade).

Also, the grade span has a field called "total terms".  This field should be used to set the default for the total terms of the program plan.  So the user should first select the grade span field, and then see the values populate.

However, a program plan may be made for a time period less than the full grade span, a program may be for one term only, for example.  The program start grade and end grade, and total terms field in the program plan record may be updated by the user manually after the defaults have been set based on the selected gradespan.  

Because the user can manually update these three fields,  there is no need to programmatically update the fields in the program(plan) table with changes from grade span or grade level tables.   If the user changes the grade span configuration, they will need to manually update all associated program plans.  We will deal with this later.


There is no need to consider the term label as we are only setting defaults from the grade span field

Auto Enter Start and End Grade based on related Grade Span

When entering a new Program of Study, the user must select a grade span.  The grade span has a start grade and end grade, covering the entire span.  Default the start grade fields and end grade fields in the program of study to the same as the grade span, then let the user override them. 

If the user enters a grade level manually that exceed the grade span, such as a grade lower than the linked grade span, then do not allow this value to be savesd.  Also, if the user enters a grade level higher than the linked grade span, do not allow the user to save the record.

A program of study may be shorter than a grade span, but may not be longer. 

The auto-enter algorithm runs one time only. The trigger is the creation of a new record or a chnagechange to the grade span value.  Once this auto-enter is run, there is no need to run againagain.  The user may change the values of start and end grade manually. 

Auto Enter Total Terms

The total number of terms may be auto-calculated by summing the total required terms per year, then adding up the total terms based on the number of grade levels speficified by the start grade and end grade.  However, a user may manually update the total terms.

Subejct Requirements


Subject Requirement Name

Concatenate: Subject Name “.” Plan  Name “.U” Units Required :

Example: “English.Standard 23.U20”Update the record name every time the record is saved with a change to the associated term, associated student fields, or grade level field.