SUMMARY/UPDATE: Optimal Saba LMS Publishing Settings for Course Completion (versions 5.5 & 7.3)

Hi everyone:

A few months ago, my organization upgraded their Saba LMS system from version 5.5 to 7.3.

In the past, users of pre-5.5 versions of Saba needed to send manual JavaScript patches to either their LMS or directly to the LMS server itself in order to ensure course completion status updates once learners completed a course.

However, from Saba 5.5 onward, this approach doesn't appear to be necessary. 

This discussion summarizes my results from those initial tests, and have been confirmed over several months of regular, consistent usage.


DISCLAIMER: The following settings are SUGGESTED optimal SCORM 1.2 publishing settings for Articulate Storyline, VERSION 2, updates 6-9, and do not constitute any written or implied guarantee of success. 

They are merely settings that have worked for myself and my organization, no more, and all standard legal disclaimers apply to this learning development community message/conversation.


Prior to publishing and uploading your SCORM packages to the LMS, simply set your Articulate Storyline 2 project's REPORTING and TRACKING settings to the following settings below.  

If you are using standard Saba LMS policy settings, you should have little, if any issues with immediate course completion flagging as-expected via the LMS system:

Saba LMS Version 5.5:


Saba LMS Version 7.3:



NOTE: Newer versions of Saba (5.x onward) have internal, automated auto-update policies that will flag learner progress from INCOMPLETE to COMPLETE early the following calendar day or business day, rather than upon learner completion of a given module. 

As a rule of thumb you should consult with your LMS administrator and conduct appropriate tests confirming the effectiveness of these settings.


Hope this helps!



5 Replies
Mark Shepherd

Hi Shirley!

Sorry it's taken a while to get back to you on this.  I'm now working at a new organization that uses NetDimensions instead of Saba, so I am still acclimatizing to that system. ;) 

That said, Saba policies can potentially vary widely depending on the size of your organization and how your LMS Administrator handles policy details and implementations.

For example, when I was working for CFMWS, where our Saba LMS was based, I wasn't able to fully establish whether or not delayed completion statuses were a side-effect of policies created by the one of many administrators responsible for such details, or an actual design intent.

In other words, finding out whether that was intentional or not wasn't always the easiest thing in the world to lock down. 

That said, I would contact Saba and see what suggestions they can offer in order to counteract those effects if you are running into them. 

My impression was when we moved to 7.3 at CFMWS, that these policies were cleaned up considerably, and that they were less intensive when used at settings much closer to a default configuration.

In other words, that's my version of tech-speak for, "Talk to your LMS Admin, as your mileage may vary".

Failing that, the way I see it, you have a couple of other options:

1. Try other Storyline Publishing settings in Reporting & Tracking when you Publish, and see if things improve.  At the time of this original post, I was using Storyline 2. 

As far as I can tell, Storyline 3 and 360 "should" work pretty much the same way as the Storyline 2 settings I've posted here, but that may change given new publishing and deployment options for things such as dedicated HTML 5. vs Flash-based options used when this post was first written.

2. Have your LMS Administrator track your SCORM attribute and variable value details using Debug mode when testing your courses with you, to see if you can determine if back-end policies are changing the completion status before and after you complete.

If LMS policies are interfering with this process, you may have to look into creating an alternate policy for your learners to fire when your courses are deployed, so that your existing policies and legacy courses don't (potentially) break as a result.  This may take some time, but the investment, assuming it works for your organization will likely be worth it in the long-run.

2a) Talk to Saba, and see what other alternatives might be available. 

There are tricks and tips you can use to trick the course into Completing:

One way is to build a customized Exit Course Button after a Quiz completes and the Results Slide is displayed to ensure the LMS receives the completion state message(s) properly. 

I build this on the Result Slide's Pass/Fail layers, so that it works equally well either way.

You may also discover other ways to potentially alter the completion information/status, such as JavaScript, but this hasn't worked as well for me with 7.3, and indeed with 5.5.  This approach only presumably works for older versions of Saba, and I have never had the chance to test this out.

3. Wait for the next day, and see what happens.  Not the most desirable option, but it may be the only other choice left, depending on the level of LMS Administrative access you have.

Hope this helps!



Anthony Jackman

All, we have taken on Storyline 360 as another choice of Instructional design IDEs.  Our main customer (US Army) runs a version of Saba for their LMS.  After getting a content SCO through ADL CTS (had to make a call to the bookmarking named function for this), I have run into another problem.  I wonder if someone has already figured this one out.   When closing the SCO, either middle of the training or at the end, the SCO closes out of the window but the player window remains visible.  Saba gives a small popup box asking what the user/student wants to do.  I solved this in our other IDE (Trivantis Lectora v16/17) by modifying their doQuit functionality.  But getting this accomplished in SL360 has proven difficult at best.

Content SCO has NO flash objects in it due to new restrictions and the death of the Flash player nationwide.  Content SCO is being published with SCORM 2004 3rd Edition and Passed/Incomplete option.

In Lectora I modified their doQuit like this:

function doQuit(bForce){
  saveVariable( 'TrivantisEPS', 'T' );

  var navReq = (LMSGetValue('cmi.completion_status') == 'completed') ? "exit" : "suspendAll";
  LMSSetValue( 'adl.nav.request', navReq );