SCORM2004Functions.js Problem

Apr 27, 2011

 Hello

I tried to import Articulate Presenter contents on Dokeos 2.0. SCORM 1.2 contents works, but we want to use SCORM 2004 contents.

After uploading the e-learning course, when I want to open it, I’ve got a message locating an issue in the SCORM2004Functions.js file :

"Détails de l’erreur de la page Web

 

Agent utilisateur : Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; MDDC; .NET4.0C; BRI/2)

Horodateur : Wed, 27 Apr 2011 14:45:08 UTC

  

Message : 'strStatus' est indéfini.

Ligne : 1428

Caractère : 3

Code : 0

URI : http://www.grieps.net/dokeos2/courses/ETPCONTEXTEETPRESENT/scorm/etp_m01_s03_quiz/etp_m01_s03_quiz/lms/SCORM2004Functions.js

"

 

I’ve read that someone’s got a solution :

« I am developing an LMS for tracking SCORM 2004 content. Every piece of content my users have uploaded that was generated by Articulate Presenter has had an "strStatus not found" javascript error. I have tested this with the trial version also.
I've tracked this issue down to the SCORM2004Functions.js file.

Line 1258 Character 105 to be precise. ' strStatus == "" ' is the OR in a conditional statement involving strCompletionStatus. If i edit this file and replace the strStatus variable with strCompletionStatus, and also a reference to it on line 1266, everything works perfectly. »

http://www.articulate.com/forums/articulate-presenter/16625-scorm2004functions-js-problem.html

 

I’ve unsuccessfully make some tries. So, do someone know what I exactly have to write in lines  1258, 1266 and 1428 please  ?

Hopefully, 

11 Replies
Justin Wilcox

You really shouldn't need to edit any files to get the content to work. I would suggest testing your content in the SCORM Cloud as noted here:

http://www.articulate.com/blog/9-ways-to-troubleshoot-articulate-lms-issues/

It's unlikely to have this issue. It may be that there is an issue with the version of Java Runtime Environment you are using if your LMS uses that bu that would be an issue on the LMS side as Articulate doesn't actually use JRE. I would also test the content in other web browsers to help isolate what the actual problem is. I would also suggest contacting your LMS to see what they have to say about this.

Aurelie Montibert

I've succesfully tested my couses with  SCORM_2004_3rd_Ed_CTS_V1.0.2_ST (Sharable Content Object (SCO) Run-Time Environment (RTE) Conformance Utility Test, log in attached file), and with SCORM Cloud (Here is my SCORMEngine Debug Log : http://cloud.scorm.com/sc/guest/ViewDebugLog?logId=4fd957a5-9ba0-4c00-8c39-7b72a91f006c&courseTitle=Contexte+socio-%26%23233%3Bconomique+de+l%26%238217%3B%26%23233%3Bducation+th%26%23233%3Brapeutique ).

MySCORM seems correct.

I tested the online course with IE, Firefox and Chrome, none of these browers managed to show it. but IE is the one who shows me the error detail. 

Aurelie Montibert

No, with SCORM Cloud I'm able to view the content without any error.

So it must be an issue between my Articulate course and my LMS.

But is that a knowned issue with Dokeos 2.0 or should I say to the LMS installer to check something in particular ? Maybe the version of Java Runtime Environment ? And something else ?

Brian Batt

Hi Aurelie,

I've done some additional research and the error is occurring because the LMS is sending a status of NOT_ATTEMPTED, UNKNOWN or the strStatus is completely blank on the "getobjectivestatus" function.  Please try the following to resolve the issue:

On line 1258 in the SCORM2004Function.js, change this:

[quote]else if (strCompletionStatus == SCORM2004_NOT_ATTEMPTED || strCompletionStatus == SCORM2004_UNKNOWN || strStatus == ""){

WriteToDebug("Returning Not Attempted");

return LESSON_STATUS_NOT_ATTEMPTED;

}[/quote]

To this:

[quote]else if (strCompletionStatus == SCORM2004_NOT_ATTEMPTED || strCompletionStatus == SCORM2004_UNKNOWN){

WriteToDebug("Returning Not Attempted");

return LESSON_STATUS_NOT_ATTEMPTED;

}[/quote]

Please let me know if this resolves the issue.

Aurelie Montibert

Thanks for you help.

I tried with this code change (line 1258). I face now the same error message, but for line 1428 :

"Détails de l’erreur de la page Web

Agent utilisateur : Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; MDDC; .NET4.0C; BRI/2)

Horodateur : Fri, 29 Apr 2011 08:17:08 UTC

Message : 'strStatus' est indéfini.

Ligne : 1428

Caractère : 3

Code : 0

URI : http://www.grieps.net/dokeos2/courses/ETPSCORM20043EDTEST2/scorm/etp_m01_s01_socio_eco_mod/etp_m01_s01_socio_eco_mod/lms/SCORM2004Functions.js

"

What changes do I have to implement on this line?

(For information, the strStatus  variable exists on lines 1258, 1266 and 1428 in the SCORM2004Function.js file.)

Brian Batt

Hi Aurelie,

Change this

[quote]

"strStatus=" + strStatus);

[/quote]

To this:

[quote]

"strStatus=");

[/quote]

With this being said, I would recommend that you contact your LMS vendor to see why it's not allowing the blank value in strstatus.  These modifications aren't necessary for any LMS that I've seen.

Ben Mueller

Just to add my two cents here.

I know very little about Articulate, but I just hit this same bug.  I've seen it in IE7 and IE9, but I haven't seen it in any other browser.  I tried Brian's solution (above), and that appeared to make the error go away, at least in IE9.  I don't know enough about this code to understand why it would appear as a bug in IE, but not other browsers.