Incomplete/Complete - Passed/Failed


I have had 2 x instances today where I have compiled SL courses to "Completed/Incomplete" based on slide completions, and the clients have told me their LMS is seeing "Passed/Failed".

Is this something that other people have seen, and what's the best way to try and sort this?!

Is this likely to be LMS issues?


79 Replies
Justin Wilcox

Gerry Wasiluk said:

Just to confirm, ONLY apply the fix if you are using "completed/incomplete" or "completed/failed status."  DO NOT apply the fix if you are using "passed/incomplete" or "passed/failed."

Correct. You should only apply the fix if the LMS needs the status to explicitly be Completed. Not all LMS' are going to have an issue with how Storyline is sending the information. So you should only do this if things aren't behaving the way you need them to in your LMS. 

Justin Wilcox

Bruce Graham said:


I have had 2 x instances today where I have compiled SL courses to "Completed/Incomplete" based on slide completions, and the clients have told me their LMS is seeing "Passed/Failed".

Is this something that other people have seen, and what's the best way to try and sort this?!

Is this likely to be LMS issues?


Bruce. Can you send them the same content with the debug enabled and see what we are sending them?

Gerry Wasiluk

And, if you are replacing an older version of the content on the LMS with a newer version,be sure  to clear your cache.  When I was testing in Saba early this PM, I was constantly clearing cache, both in the browser and  with HTTPWatch (which I use to observe the content posting to the LMS).

Gerry Wasiluk

Tracy Parish said:

Gerry:  Also a common issue with our LMS.  For me the new version comes up, but for many of my learners without the cache clearing they get previous versions of the course.

LMS's are sooooo much fun.

Well, Tracy, it's not always the LMS . . . 

My former company uses caching servers worldwide.  Most plants and other company locations have servers for caching content.  Any users being served by a caching server saw any content stored there first.  The first person to hit content got it from corporate but the next folks wanting the same content got it from their caching server.  The servers were supposed to check daily to see if a new version of content already being cached had a new version available. Any content not accessed in 30 days was then eliminated from the caching server.

This was all done to increase the speed of content being delivered to the user by having it delivered locally from a copy of it on the local caching server and also reduce network demands, especially at corporate.  It was first set up to support streaming corporate videos (which were often large) but was expended to include all web-based content.

Once saw something really weird with this at one of our plants.  The plant's training administrator was showing me a Lectora course that was acting weird.  It turned out as he was going through the course he was seeing a mix of pages, some from the most current version of the course (good) and some from the previous version (bad).  The local caching server for the plant needed a "bit of a tune-up" after that.

One thing you can look at doing is see if you can expire the content on the web servers holding the courses.  Most web servers support the concept of expiring content, which means after a certain amount of time, the content in the user's browser "expires" and a new version has to be pulled from the server.  When delivering the content, the web server puts an expiration date/time on the content as it's being delivered to the learner.

For our e-learning developers, we maintained a testing environment, which included a test server for content and a test version of the LMS.  We insisted all courses be tested in that environment first and then signed off on before being moved to production.

For the testing environment, in the web server hosting the content, we set content to expire after 5 minutes so developers could put new versions of a course rapidly in test and not get affected by caching.

For production, our central IT group required something higher than 5 minutes for expiration.  At first it was 8 hours but after some time they let us set it down some, so we set content to expire after an hour in production.

Hector Martinez

I applied the fix from the Screenr and it still reports as Passed when I completed the module.  Could it be because I have an imported QuizzMaker interaction?  In Presenter you could have a quiz and still only require slide views for a "Complete" status.  I can upload my project wherever if this will help.

Peter Anderson

Hi all,

If you choose a "Completed" reporting status when publishing an Articulate Storyline course for LMS, you may find that your LMS unexpectedly displays "Passed" instead. This issue was corrected in Update 3 for Storyline. Please review the following article for more information:

Lucia Salters

Hi There

I am really not getting this right. I have tried all reporting options with 1 quiz slide as the tracking slide. I am getting 100% passed, yet course still indicates as Incomplete in LMS. Have read all the documents and posts here. Tried to edit the .js files Have update 3 installed. Any additional advice I can try?

Justin Grenier

Good Morning, Lucia.

I think the problem you're describing is slightly different from most of the folks in this thread.  The problem documented here was resolved in Storyline Update 3, and refers to a Passed/Failed completion status being sent in place of a Complete/Incomplete status.

There are two super-useful troubleshooting steps you can take in an effort to determine whether your problem is mostly related to your Storyline content, or mostly related to a problem with your LMS:

  1. You can upload your content to SCORM Cloud and test it there.  SCORM Cloud is an industry-standard tool for testing SCORM output, so if the problem is reproducible there, it's likely a content issue and not an LMS problem.
  2. You can enable LMS Debug Mode, which allows you to see, line by line, all of the communication that is being passed back and forth between your Storyline content and your Learning Management System.  If you see that your content is sending an Incomplete status when you feel that it shouldn't be, that's a content issue (rather than an LMS problem).

If, after taking the above steps, you find that this seems to be a Storyline problem, we would ask you to share a copy of your .story project file with us so that we can take a deeper look at the problem.  Thanks!

Seth Merriam

I can't be entirely sure just yet [only ran about 10 tests ;) ] but I think I am having this problem with storyline 2.

I selected

  • Reporting: Complete/Incomplete
  • Tracking: using 9 out of 10 slides to register the complete.

But could not get a complete to register for my course. 

I used the method described early in these posts (from 2 years ago) to change the "passed" option to "completed" in the "lms.js" file, and now I am getting completes. Is this a bug that has been reintroduced? 

To be sure this is a "Test" file, with only 10 slides, that I just created today. And, the only difference between it and the storyline 1 file I created is that it's storyline 2. 

And updates or patches or configuration things I can try to make the "complete" get reported again like it did in storyline 1? or is there something wrong I am doing that I need to stop doing?