Note: You are currently viewing documentation for Moodle 2.3. Up-to-date documentation for the latest stable version is available here: Course completion FAQ.

Course completion FAQ

From MoodleDocs

Students have completed things but the report does not show it

The default time for updating course completion is every 10 minutes. You have several options:

  • Tell your students the update schedule.
  • Ask your site administrator to tell you the when the 10 minute Cron will run, so you can tell your students "The competition report or Activity completion block will be upgraded every 10 minutes, starting 5 minutes after each hour."
  • Alter the language pack, or help files to include this information.
  • Ask your site administrator how often the Moodle cron php file is triggered If it is longer than 10 minutes, that will be the default interval.
  • Ask your site administrator if they would change the cache expiry time from 10 minutes to something different. They might tweak the code at /lib/completionlib.php around line 126.
  • Ask your site administrator to make sure the server cron triggers Moodle to run cron at the same interval as the cron setting for course completion.
  • See if you can trigger cron by going to your Moodle site and adding /admin/cron.php to your browser address. For example after logging into your Moodle site, in the browser address put .

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

Sorry - the course prerequisites feature does NOT prevent students from accessing courses. It merely prevents the course from being marked as "complete" until they have completed another course.

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 cron.php 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

Moodle is confused by your course completion settings. This may happen at the start of the course when the student has not completed an activity and/or you have selected an aggreation method of All and have not checked off that they have completed the activity.

Where do my students tell me they have finished the course?

Did you install the Self completion block? When they click on the link in that block, that will indicate they think they are done. You will have to wait for Cron to run before seeing the results in your course completion report.

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. (Thanks to Aaron Barnes for the following instructions)

You'll need to 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). You should be able to adjust the enrolperiod value and after the next cron run everything will use the new value.

See also

Using Moodle forum discussions: