Skip to main content
April 11, 2007
Question

No Score Data to LMS

  • April 11, 2007
  • 12 replies
  • 3216 views
I am pulling my hair out trying to get Captivate 2 to work with our LMS and would appreciate any advice anyone can provide.

We have Training Partner from Geometrix as our LMS.
I have a quiz created in Captivate that I am trying to use through the LMS.
I have tried many different settings in the publish properties of Captivate, but currently have it set for SCORM 1.2, Report quiz results only, only report the score, score as percent.

I can import the content into TP with no problem. I launch the quiz and run through all of the questions. I pass the quiz and then close the course. The API apears to update but then it doesn't show the course as complete in the LMS. I have spoken with the LMS folks who say it is on the Captivate side. There appears to be no score information sent. The course and the LMS are definately communicating because other data is there. I am not sure that the lack of score data is the total problem but it is definaltely incorrect.

Any suggestions on what could be the cause or what to do? I feel like chasing my own tail. I can not find any information from either side on what to do.

Thanks in advance for any help.

Dave
This topic has been closed for replies.

12 replies

April 29, 2009

I'm not familiar with LMS 2, but if there is a javascript option, try the LMSFinish() command on a button on your last page.

Inspiring
December 12, 2007
BW022,

> The second issue is a bit more serious. The issue is that even after it
> detects an API, Captivate appears to continue making calls using parameter
> values for the other API. In some cases it appears to switch between
> "cmi.score" and "cmi.core.score" interchangeably. UniversitySite discusses
> issues with this back in June
> ( http://supportsite.com/cs/blogs/barsh/archive/2006/06/26/Publishing-Captivates-
> to-UniversitySite_3F00_--Do-not-use-SCORM-2004_2100_.aspx), although I am
> not
> sure I buy their sequencing problems with Captivate. I am not sure if one
> needs
> to do something other than alter the g_nAPI value?

[Andrew]: I've never seen this and it also doesn't seem to be referenced in
the article you reference... I believe that if the LMS supports the scaled
score (from cmi.score._children) that Captivate will send the scaled score.
It may also send the raw, max, min - if the cmi.score._children calls return
the value "raw,max,min,scaled").

Regards,

Andrew



Participant
December 4, 2007
Dave,

There are two SCORM standards in general use -- SCORM 1.2 and SCORM 2004. They are similiar but not backwardly compatible. For example, under SCORM 1.2 you would call LMSSetValue("cmi.core.score.raw") and under SCORM 2004 it was changed to SetValue("cmi.score.raw"). Training Partner supports both SCORM 1.2 and 2004 and makes both APIs available to the courseware during launch.


The first issue appears that Captivate finds the 'wrong' API. i.e. it appears to detect the SCORM 2004 API first. If you look at the scorm_support.js file included in the courseware you can find the line:

var g_nAPI = 0; // type of API to start searching for; allowable values: 0 - SCORM 2004; 1 - SCORM 1.2 (or 1.1)

You should be able to change the variable to 1 to cause it to detect the SCORM 1.2 API first. Alternately, you should be export the Captivate course as SCORM 2004.


The second issue is a bit more serious. The issue is that even after it detects an API, Captivate appears to continue making calls using parameter values for the other API. In some cases it appears to switch between "cmi.score" and "cmi.core.score" interchangeably. UniversitySite discusses issues with this back in June ( http://supportsite.com/cs/blogs/barsh/archive/2006/06/26/Publishing-Captivates-to-UniversitySite_3F00_--Do-not-use-SCORM-2004_2100_.aspx), although I am not sure I buy their sequencing problems with Captivate. I am not sure if one needs to do something other than alter the g_nAPI value?


The third issue (which I'm assuming is not the issue) is that Captivate is a bit 'fussy' on the export options and courseware. It is possible to create courseware which either doesn't include SCORM information, statuses, or scoring in every case. You should make sure that the courseware is actually sending a score value back. ICS Learn has a good paper on this ( http://www.icslearninggroup.com/whitepapers/macromedia-captivate-and-scorm.htm).


In the case of Training Partner, I would recommend that you set the 'SCORM Debug' option (see Portal Settings) to 'True'. When you launch the courseware you can see exactly what calls the courseware is making. For SCORM 1.2, ensure (a) it is calling LMSSetValue and LMSGetValue, (b) it is not referencing "cmi.score" in anyway, and (c) that at some point it is setting "cmi.core.score.raw" to a non-zero value. For SCORM 2004, ensure (a) it is calling SetValue and GetValue, (b) it is not referencing "cmi.core.xxx", and (c) it is setting "cmi.score.raw" or "cmi.score.scaled" to a non-zero value.

The Training Partner web-site includes support forums and I know they have a publish AICC and SCORM compliance statements which include links to their LMS test suite results. You could quickly check if it is correctly returning "cmi.core._children" or "cmi.core.score._children" if one suspects that might be an issue.
Known Participant
May 11, 2007
Update: I had been using a button that read "click here to submit your score and exit lesson" and had it programmed to close the lesson window. It was also my required "reporting enabled" button needed to get captivate to create a manifest file when publishing.

After all that testing and debugging, it turns out that all I needed to do is use the browser popup's close (X) button! If I exit the lesson by X'ing out of it, the lesson registers as complete. Not sure if your LMS is the same, but looks like the Inquisiq LMS will only send the status=complete call when exiting via the browser window close option.

Glad I got it to work, but, boy, do I feel like a shmuck that it was such a simple solution!! Ughh!
Known Participant
May 11, 2007
I've got the same problem too. I've uploaded 10 or 15 test courses trying to figure out the "magic combination" of Captivate reporting settings to get the LMS to register a course as completed. (results are either "in progress" or "failed"). I'm demo'ing the ICS Learning Inquisiq LMS which has a debug screen that lets you view the calls btwn the LMS and the lesson. Doesn't list any type of status=complete prior to the LMS(finished) call. I'll let you know if I figure it out, though. :)
Inspiring
April 12, 2007
TechnoTraining2003,

I actually suspect that it is a Geometrix issue - though I certainly can't
say without viewing your file (and the output from Geometrix). Here is what
is typically the problem...

Captivate makes certain calls to the LMS in the beginning to initialize with
the LMS and get certain information from the LMS which helps it communicate.
The most interesting calls relative to your issue are:

API.LMSGetValue("cmi.core._children")
and
API.LMSGetValue("cmi.core.score._children")

For the former call, a comma-delimited string needs to be returned that
includes the keyword "score" (e.g.
"student_id,student_name,lesson_location,score,lesson_status,...").

IF and only IF the LMS returns the keyword "score" (and not "cmi.score" or
"score.raw" or anything like that), then Captivate calls the latter call to
return the score children. The call for score children also needs to be a
comma-delimited list that includes one or more of the following,
"raw,max,min" (again, not "score.raw", "cmi.score.raw" or anything else).

If the LMS doesn't follow the SCORM standard - then score data is NOT sent
to the LMS, because this means the score isn't supported in the LMS.

Contact me off-list for a debug file that will help track down your issue:
Andrew AT LearningConsulting DOT com

Regards,

Andrew


Inspiring
April 12, 2007
Hi TechnoTraining2003,

In your last posting you mentioned that "...it indicates it is complete or passes...", this leads me to think there might be an inconpatible setting between the Captivate manifest and the LMS.

In our LMS you can have 2 basic choices; "pass/fail" or "complete/incomplete". The same is true for the Captivate manifest settings.
If you are using complete/incomplete a "score" might not be passes to the LMS. If you are using pass/fail then a score must be passed to the LMS. I would check both the LMS and your Captivate project to be sure pass/fail is selected and that there is a threshold passing score. (If you want everyone to pass the test no matter what the score, then set the "passing score" parameter in both the LMS and in Captivate to "0". The score should still be recorded.)

As far as the function to close the window is concerned I wrote a simple function that does that and wrote it into the "standard.js" file in Captivate 2. Then it is always there and all I need to do is call it. Calling it only requires "javascript:closeBrWindow();" being in the execute javascript window of Captivate.

Which version of Captivate are you using?

TPK

April 12, 2007
Hello TPK

Your comments are right in line with my concerns. No matter what my output settings in Cativate are there is no score sent to the LMS. The LMS is looking for a passing score (initially set at 80%) as well as a pass or complete from the module. Without the score it is confussed (or atleast I am!). I do have Captivate currently set to pass/fail and send scores only.

I am using Cativate 2.

There has got te be a simple piece I am missing or don't understand but I am struggling where else to look.

Thanks
Dave
Inspiring
April 12, 2007
For such issues it may be worth downloading/installing either or both
the ADL Test Suite and the Reload SCORM player (search for both) as they
can often (though sometimes confusingly) help you find what may be
'wrong' with your lesson.

If either/both those test suites show Captivate is indeed passing the
lesson_Status correctly, then you have info to go back to the LMS vendor.

One thing I've seen with similar issues is the LMS not taking the proper
SCORM calls. lesson_Status should either be 'completed' or 'incomplete',
and I believe Captivate sends either of those values correctly (assuming
you setup the course correctly). But the LMS must be able to
accept/understand those values. For instance, there's some LMS that
expects either 'C' or 'I' instead, which causes lots of problems...

Using those test tools, see if you can verify the lesson is sending
'completed' or 'incomplete' at some point (or perhaps 'passed' or 'failed').
Erik

TechnoTraining2003 wrote:
> Update:
> I did try Dale's settings as well as trying the extra page with a javascript
> button. Thanks for the suggestions. Unfortunately, neither solved the problem.
>
> I am still open to any ideas that might still be out there.
> Thanks
> Dave
>
>

--
Erik Lord
http://www.capemedia.net
Adobe Community Expert - Authorware
http://www.adobe.com/communities/experts/
------------------------------------------------------------------------
http://www.awaretips.net - samples, tips, products, faqs, and links!
*Search the A'ware newsgroup archives*
http://groups.google.com/group/macromedia.authorware
April 12, 2007
Hello Erik

Thanks for the suggestion.
I have had difficulty figuring out the ADL test suite in the past and therefore resisted trying it in this case. Perhaps it is the best thing do do however, so I will give that a shot.

As a clarification, I beleive the status (complete/incomplete) is being sent. The problem seems to be in the score coming across. I am able to generate a log within the LMS of the information passed back and forth. This confirms that they are at least talking but also shows that the score is always blank. This is a problem because it indicates that it is complete or passed yet the score is seen as a 0 which would be incomplete or failing. I believe this is seen as a contradiction in the LMS and it doesn't know how to process it. If this makes sense perhaps you might have an alternative suggestion for me.

Thanks
Dave
April 12, 2007
Update:
I did try Dale's settings as well as trying the extra page with a javascript button. Thanks for the suggestions. Unfortunately, neither solved the problem.

I am still open to any ideas that might still be out there.
Thanks
Dave
April 12, 2007
Thanks to both of you for the quick suggestions. I will try the ideas and report back if it works.

Pardon the dumb question but what is the javascript that is needed to be added to close the window?

Thanks
Dave
Update: I did find the java script to close the window. (window.close())