Course and class rollover

Hi folks,

I was able to have a closer look at the course and class rollover process over the past days. It’s a little tricky. Fact is documentation is rather limited currently.

Before rolling over courses and classes you need to create the upcoming year and roll over all users. This is not discussed here and there is enough info out there to be able to do this.

Once this is done you need to set up courses and classes of the new academic year. One way is to use “Copy All To Next Year” in “Manage Courses & Classes”. Alternatively you can use the timetable import function. This very powerful tool creates everything you need in bulk and adds all class teachers as participants.

Now you should be able to start rolling over courses & classes using “Course Enrolment Rollover”. You can roll over all participants or just the students. This approach may not work for every setup very well. Sometimes the courses change significantly from one year to the next requiring manual changes for each student after the rollover. In this case the admin may consider rolling over the students using a customized server script at the beginning of the academic year.

I tested the rollover and it’s working rather well. One issue is that rolling over can only be done once. If it is done twice, all students will be added twice. This is something, which should change. Can somebody reproduce this?

It also appears that the rollover is not considering the status of the students resulting in rollovers of students who have left the school. Can somebody reproduce this?

Ok, that’s it for now. I hope I got things right so far…

Kind regards,

Awesome! Thanks for documenting and sharing your workflow :smiley: it’s certainly that time of year where this info can be helpful to a lot of people

Our school is among those where courses can change significantly from one year to the next, and the roll group progression isn’t the same from year to year. One method we use to help speed up enrolments is the “Copy to Class” bulk-action that can be found in Course Enrolments by Class. Here you can select all or some students from one class and copy them to another class, which works well if you have a group of students that all take similar classes together.

I’ve looked at the course_rollover script and confirmed what you’ve discovered with the student status, put in a quick PR to update the script: It also adds an extra check to the script to help prevent duplicate enrolments from the rollover. Rollovers do tend to be large system-altering processes, so they’re not really meant to be run multiple times for a school year (which is why it’s highly recommended to backup first).

Thanks for this Roman and Sandra. Sandra’s new code has been merged into the v15 dev branch in the following commit:

Hi Sandra and Ross,

Thanks for the incredibly fast update! What a team!!!

I have tested it and its working fine, no “left” students and “duplicate” entries anymore! Well done!

Thanks also for the new “Copy to Class” feature. No luck for us tough since we are still on v12.

Kind regards,