Unenrol Student after Set Time/Finish Email

Re: Unenrol Student after Set Time/Finish Email

by Martin Dougiamas -
Number of replies: 5
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
A teacher should know when the student is finished because they've been in contact with the student throughout the course! smile

Unless you're thinking of the rat's maze style of 'teaching' ... mixed

(ie the settings you want don't exist)
In reply to Martin Dougiamas

Re: Unenrol Student after Set Time/Finish Email

by Grant Sherson -

If I read this correctly each teacher has to manually remove students at the end of the course - ie this doesn't happen via a database connection.

We currently use Blackboard (thinking of a move to moodle) and I look after the connection with our student management system(SMS). The majority of courses are face to face with online content and discussion. The courses are repeated each semester and some courses will have 50 to 100 enrollments. Currently our system unenrols students based on a cutoff (normally 3 weeks) after the linked class end date in our SMS and enrols them 5 days before the listed start date in the SMS. The same course is recycled with the old students removed and the new students added.
Is there a way to automate this in Moodle the same way? Especially the unenrollments.

In reply to Grant Sherson

Re: Unenrol Student after Set Time/Finish Email

by Helen Foster -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers Picture of Translators
Hi Grant,

Please note that Moodle 1.5 includes the option to set a course enrolment duration (the preceding posts were dated 2003). Alternatively, using an external database to control course enrolments enables automated unenrolments too. Please check Administration » Users » Enrolments. smile
In reply to Helen Foster

Re: Unenrol Student after Set Time/Finish Email

by Grant Sherson -

Thanks. My understanding now is that there needs to be a table in the external database containing a list of all current StudentID<==>MoodleCourseID matchups and that as long as the student is listed they will stay in moodle. When they are no longer listed they are unenrolled. Is that correct?

Is there any way that other fields can be queried to filter that list before comparison or does that have to happen outside of the Moodle process?

Is the comparison done live? ie any changes in the external table are automatically applied or is there a time that is set (hourly/daily) when the enrollment/unenrollment happens?

In reply to Grant Sherson

Re: Unenrol Student after Set Time/Finish Email

by Helen Foster -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers Picture of Translators

My understanding now is that there needs to be a table in the external database containing a list of all current StudentID<==>MoodleCourseID matchups and that as long as the student is listed they will stay in moodle. When they are no longer listed they are unenrolled. Is that correct?

Yes, you're correct that students no longer listed are unenrolled, though they will still remain in the list of site users.

Is there any way that other fields can be queried to filter that list before comparison or does that have to happen outside of the Moodle process?

Sorry I don't understand what you're trying to achieve. Please could you explain further.

The comparison is done at the point when the student logs in. (Admins may test external database enrolment by logging in as selected students via their profile pages.) However, it's possible to modify things - please check Scott Krajewski's post External database enrolment as cron job.