Note: You are currently viewing documentation for Moodle 3.7. Up-to-date documentation for the latest stable version of Moodle may be available here: Course completion FAQ.

Course completion FAQ

From MoodleDocs

How do I enable course completion?

At the site level, Completion tracking must be enabled in Site administration > Advanced features > Enable completion tracking for it to be available for use in courses.

At the course level, Completion tracking must then be enabled for each course, in Course administration > Edit settings > Enable completion tracking. Once enabled, the Course completion option will appear in the Course administration menu where completion can be defined.

For more, see Course completion settings.

Students have completed the criteria but the report does not show it

Check in Site administration > Server > Scheduled tasks that the task 'Calculate regular completion data' is running frequently enough, such as every minute.

I have set up course prerequisites but my students can still access the second course before they have finished the first

This is by design. The course prerequisites feature does NOT prevent students from accessing courses they are actively enrolled in. It merely prevents the course from being marked as "complete" until they have completed the first course.

How can I prevent my students accessing course 2 before they have completed course 1?

This is currently not possible using completion settings (see MDL-22648).

The would have to be controlled by your Student Information System (SIS) which manages enrollments, if you have one.

Otherwise, if you use course self-enrolment, a workaround is to add a final activity at the end of course 1 - such as a quiz - inside which you give the enrolment key to the next course (in the quiz feedback for example, or in a label using access restrictions based on passing the quiz). Thus, only those who have completed course 1 can get access to the enrolment key for course 2.

I made a mistake and had to erase my student data. Do my students have to redo the activities?

No. For example, if you set the course completion for All aggregation methods and wanted to reset it to "Any", Moodle will warn you that you are deleting compiled student data. It will delete the student data only for the course completion information. When the schedule task for handling completions next runs, it will recompile the course completion information.

My student got an error message when they click on more information in the course completion block

This may happen at the start of the course when the student has not completed an activity and/or you have selected an aggregation method of All and have not checked off that they have completed the activity.

How can I set my course completion to be longer than 30 days after enrolment?

Currently the dropdown menu only allows you to choose from up to 30 days after enrolment. There is a tracker entry about this here MDL-34678. However, if you are happy editing the database then you can manually change the value as follows:

  1. Look in the mdl_course_completion_criteria table. The Duration After Enrolment criteria will have the "criteriatype" value of 5 and the number of days is recorded in the column "enrolperiod" in seconds (so #days x 86400).
  2. Adjust the enrolperiod value and after the next cron run everything will use the new value.

See also

Moodle forum discussions: