Tracking information for each slide

Jun 12, 2013

Hello everybody, one customer ask if i'ts possible to set variables for each slide to be tracked in Moodle as completed/incompleted, so they can have a report of whichever slide has been viewed.

I thought this feature was already implemented when you set as option for LMS tracking "track using number of slides viewed", but it seems not. Is there a particular name/value of variable they have to search for or we are missing something? here is an example of a report they can generate correctly with another scorm (not made in Storyline)

the only idea i have is to manually set those variables, one by one in each slide, and trigger their value based on start or end of main timeline. Since i would like to avoid doing this for every slide if the feature is already included, someone can give me a feedback about this?

many thanks for any help!

7 Replies
Dan Marsden

Can't help with info on how to report that data from Ariticulate but FYI - I just created a new objectives report for Moodle 2.5 and higher that displays that data a bit nicer on the SCORM reports page - would love to get some feedback on it if you're using 2.5 - more info here:
https://moodle.org/mod/forum/discuss.php?d=230498

Zio Fonta

i searched into published scorm folders/file for something called "cmi.objectives", i found that SL exports 2 files:

SCORMFunctions.js

SCORM2004Functions.js

inside there is a particular funcion:

function SCORM_SetObjectiveStatus(strObjectiveID, Lesson_Status){

var intObjectiveIndex;

var blnResult;

var strSCORMStatus = "";

WriteToDebug("In SCORM_SetObjectiveStatus strObjectiveID=" + strObjectiveID + ", Lesson_Status=" + Lesson_Status);

SCORM_ClearErrorInfo();

intObjectiveIndex = SCORM_FindObjectiveIndexFromID(strObjectiveID);

WriteToDebug("intObjectiveIndex=" + intObjectiveIndex);

if (Lesson_Status == LESSON_STATUS_PASSED){

strSCORMStatus = SCORM_PASSED;

}

else if (Lesson_Status == LESSON_STATUS_FAILED){

strSCORMStatus = SCORM_FAILED;

}

else if (Lesson_Status == LESSON_STATUS_COMPLETED){

strSCORMStatus = SCORM_COMPLETED;

}

else if (Lesson_Status == LESSON_STATUS_BROWSED){

strSCORMStatus = SCORM_BROWSED;

}

else if (Lesson_Status == LESSON_STATUS_INCOMPLETE){

strSCORMStatus = SCORM_INCOMPLETE;

}

else if (Lesson_Status == LESSON_STATUS_NOT_ATTEMPTED){

strSCORMStatus = SCORM_NOT_ATTEMPTED;

}

WriteToDebug("strSCORMStatus=" + strSCORMStatus);

blnResult = SCORM_CallLMSSetValue("cmi.objectives." + intObjectiveIndex + ".id", strObjectiveID);

blnResult = SCORM_CallLMSSetValue("cmi.objectives." + intObjectiveIndex + ".status", strSCORMStatus) && blnResult;

WriteToDebug("Returning " + blnResult);

return blnResult;

}

i cannot understand if this status for a particular cmi.objectives.INDEX.id is related to single slides or to the whole course. 

Do you have any example of a report that can track each slide status?

many thanx for helping

Phil Mayor

http://www.articulate.com/support/kb_article.php?product=st1&id=79nsl3hhgneg

Storyline does not support objectives so it is not possible to run this type of report, in presenter you used to be able to see which slides had been viewed by checking the resume data, unfortunately this is now compressed and not user readable in Storyline

Zio Fonta

anyway in Storyline i cannot set a variable name using "." in the name, so i think this cannot be done. 

The customer now is refusing 4 whole big courses because of this missing feature, they consider it to be part of the scorm standard that should be respected by Storyline. 

I really dont know what to say...

Zio Fonta

i found this article, that give a possible solution for it using javascript

http://community.articulate.com/forums/p/20251/172813.aspx?mod=False#172813

and this one very similar

http://learnnd.blogspot.it/2013/05/grab-learners-name-from-peoplesoft-elm.html

the same concept could work for setting SCORM variables as

cmi.objectives.xx.id

and

cmi.objectives.XX.status

?

This discussion is closed. You can start a new discussion or contact Articulate Support.