Follow the progress of the course
Apr 18, 2018
Hi guys!
I'm Angel from Spain. I'm looking for help. A client request me to put a kind of variable on the SCO to follow the progress of the students, in percent of the course. How could I do that? I find a triggers to put Complete at the last slide of the course but I'm not sure that it will show the percent or just Complete/Incomplete course.
The client talk about a variable named "cmi.progress_measure", but I don't know where I have to put in that code or variable.
Could someone help me?
Thank you
Angel
2 Replies
Hello Angel,
I had to use cmi.progress_measure for one of clients. You will need to publish your course for SCORM 2004 because the progress_measure isn't available for earlier versions of SCORM.
The progress_measure can be set for values between 0 and 1. For example if the course is 20% complete you will set it to 0.2.
Below is the JavaScript that I used.
var nProgress = 0.1;
var player = GetPlayer();
var nMeasure = player.GetVar("nMeasure");
function findLMSAPI(win) {
if (win.hasOwnProperty("GetStudentID")) return win;
else if (win.parent == win) return null;
else return findLMSAPI(win.parent);
}
if (nProgress > nMeasure){
var lmsAPI = findLMSAPI(this);
player.SetVar("nMeasure",nProgress);
lmsAPI.SCORM2004_SetProgressMeasure(nProgress);
}
I have also attached a sample project for you to take a look at. It has 10 slides in it.
on Slide 1, nProgress is set to 0.1
on Slide 2, nProgress is set to 0.2
I also created a number variable called nMeasure that has a Default Value of -1.
This variable is used to remember the learners progress.
For example if they make it to slide 8, the progress is set to 0.8. If they go back to a previous slide such as slide 2, I didn't want the progress to change 0.2
I tested this sample project in the SCORM Cloud. I ran both the flash version and the html5 version and checked the logs to make sure that the progress_measure is being set.
Hi Russel,
do you have any feedback of your test ? Does it work ?
San
This discussion is closed. You can start a new discussion or contact Articulate Support.