HOME ➔ SUPPORT ➔ Community ➔ General CourseLab issues ... almost there with a quiz
almost there with a quiz
  View type:
i'm trying to do a really simple quiz with a module objective. When the objective is met a text box comes up with “congratulations you’ve passed” on it. I've almost done this with a few steps.

As you can see here


These are the steps for a 2 question quiz

set up a module objective, i've called this ‘scqTotal’ and ticked the module objective box.

set the maximal score to 2
set the minimal score to 0

in rules i've set success status to 'passed'
completion status to 'completed'
with one condition "scqTotal" =2

slide 1 has a 'single choice object' question on it

slide 2 has 'current results' object on it just to see if my objective score is moving up. This works

slide 3 has another 'single choice object' question with the code below on it.

on display question

the above bit works and hides the textbox indicating objective success when the slide is first entered


On Attempt
if success status(objective='scqTotal', status='p')
display(object='obj_achieved',display='inline',effect='1', duration='0')

that last bit doesn't work as the textbox is revealed regardless if the objective score is 2 or le
I checked the module code. It seems that you forget to make dependence from IF in DISPLAY action on the third slide. In this case DISPLAY is not dependent action, but just the next action in sequence after IF, therefore it will be executed anyway. Please use arrows in the actions edit window to shift dependent actions right from its parent. For example:

IF(some condition)
_ DISPLAY(smth)
_ _ DISPLAY(smth else)

(_ means right shift)
In the example above first DISPLAY and ELSE are dependent actions of IF and will be executed only when IF condition is met. Second DISPLAY will be executed only when IF condition is NOT met. IF in this example can be changed to other conditional action: IF_SUCCESS_STATUS or IF_COMPLETION_STATUS

But there is also second problem: please be aware, that status rules are applied not immediately after changing score, but only when slide transition occurs. Therefore you can check success status on the next slide, but not on the same slide with last question. Status will be unchanged until you jump to next (or previous, or any other - doesn't matter) slide. Please look also at <a href="http://www.courselab.com/db/cle/6247D98F77A7E048C325730C0040B3E5/main_id/DEB1AE8A7B1B3576C3256FCF0055974C/extended/1/forum.html">this thread</a>.

By the way, you can set Display property to No for "obj_achieved" (right-click for context menu, Format object - Display tab) and this object will not display by default. Therefore you will not need to hide this object manually with this action:

on display question
I've done the things you've suggested with the IF_SUCCESS_STATUS

I feel the problem might be with something to do with the rules? I've set them as you can see on the link


I've got this code on an independent slide

IF SUCCESS STATUS(Objective='scqTotal',Status='p')
it is ok! I didn't realise it was critical to indent the code for the block of code that is executed on a conditional statement [:)]
Now I have got that sorted, what else can I do to make this scorm compliant? Can I pass a score and the objective met status to an LMS?
Sure. You need to publish the course (menu File - Publish) to SCORM. That's all. You will get SCORM-package (i.e. ZIP-file, structured according to the SCORM requirements). This package can be imported into any LMS that supports SCORM.
The only thing you should do before publishing: make sure that you set rules for different module objective statuses (i.e. at least "incomplete" and "completed", or "incomplete", "failed" and "passed" - depending on your needs).
Make sure also that rules order is correct: from weak (i.e. "incomplete") to strong ("completed" or "passed"), because rules are executed exactly in the listed order.
Message options
No additional options