Retrieve LMS data from PeopleSoft ELM - student integration

Nov 13, 2012

Hello,

I am new to  Articulate. We are using Quizmaker to generate online test and host it in PeopleSoft ELM. We have a request from our customer to provide detail information when learner take an online quiz.  I have looked the integration code between PeopleSoft ELM and SCROM package. We can call SCROM run time objects to retrieve the information. I can easily get the information like learner ID, name, score and passing status.... but we need learner interaction data like question and answers. I have found an online document regarding SCROM data model that has list of run time objects. The objects we need for student interaction  is cmi.interactions._children (id, objectives, time, type, correct_response, weighting, student_response, result, latency). I tried to call these variables in PeopleSoft but I got blank values return.  Not sure if Articulate  store the values with those data model or they are not exposed. Can someone shed a light?

8 Replies
Peter Anderson

Hey William, welcome!

The following quiz data are sent to your LMS by Quizmaker ’09 via SCORM or AICC with each question:

  • id:  This is the number of the question in the quiz.  It will be in the format Question#_#.  The first '#' is the question number.  The second '#' is the number of the user's attempt.  For example, Question5_2 would designate the user's second attempt on the fifth question.
  • type:  This is the type of question (True/False, Multiple Choice, Multiple Response, etc).
  • student_response:  This is how the user answered the question.
  • correct_responses:  This is the correct answer for the question.
  • result:  This designates whether the user answered the question correctly or not.
  • weighting:  Articulate content does not currently utilize this item.  It will always be set to 1.
  • latency:  This is how long it took the user to answer the question.
  • objective:  Articulate content does not currently utilize this item.  It will always be set to 0.

SCORM 2004 content will also communicate the question text to an LMS. Hope that's helpful. 

And another thing you may want to try is testing your course in SCORM CloudThe articles here and here may also help clear up common LMS issues as well.

William  Han

Hello Peter,

Thanks for responding my question. I have loaded my testing quiz in SCROM Cloud and ran it. I looked the debug log and it seems I got '405' error with these interaction data.  Below is question 1 trace. I also attached debug URL here. The quiz was created by my BA. So I am not sure what is wrong when he generated the quiz. I appreciate your help.

- [16:12:59.143] LMSSetValue('cmi.interactions.0.student_response', 'You_should_click_this_one,And_this_one') returned 'false' in 0 seconds
[16:12:59.143] CheckForSetValueError (cmi.interactions.0.student_response, You_should_click_this_one,And_this_one, cmi.interactions.n.student_response, 0, )
[16:12:59.143] Element is: interactions.student_response
[16:12:59.143] SCORM ERROR FOUND - Set Error State: 405 - cmi.interactions.n.student_response must be a valid CMIFeedback - value must be consistent with interaction type. Your value is: You_should_click_this_one,And_this_one
    [16:12:59.143] LMSGetLastError() returned '405' in 0 seconds
    [16:12:59.143] LMSGetErrorString('405') returned 'Incorrect Data Type' in 0.001 seconds
    [16:12:59.144] LMSGetDiagnostic('') returned 'cmi.interactions.n.student_response must be a valid CMIFeedback - value must be consistent with interaction type. Your value is: You_should_click_this_one,And_this_one' in 0 seconds
URL for debug.

http://cloud.scorm.com/sc/guest/ViewDebugLog?logId=66a68e99-ff01-4668-9baf-d687a82134e8&courseTitle=Test_File_Write

David Tan

Hi William,

I work for a hospital and we are also trying to use Articulate + Peoplesoft ELM to conduct surveys for our employees. 

I ran into your post and am wondering if you found any good solution for this. Which table should I use to retrieve the data from PeopleSoft?

I will really appreciate it if you could shed some light.

Thanks,

David

William  Han

We are on ELM9.0 and SCORM2.0. There is no delivered code in PeopleSoft to track student interaction data. PeopleSoft API only captures student's information like Student_id, Student_name, credit, Lesson_location, Lesson_status, score, Total_time. I was trying to modify API code but without luck. Then I turn to vendor’s code. Here is what I did and hope it helps. Let me know if you have more questions.

 

1.             Modified  SCORM package quiz.js code (function EmailResults) to pass the variables thru the FORM. strLineData and g_oQuizResults.strTitle are the data we need at this moment but I code more than that in case we need other information later

                var sHTML = "";

                var sURL = "Your PS domain/psc/elmtest/EMPLOYEE/ELM/s/WEBLIB_CK_GEN.LM_IMP_CRS_SCORM.FieldFormula.IScript_scorm?";

               

                sHTML += '';

                sHTML += '';

                sHTML += '';

                sHTML += '';

                sHTML += '';

                sHTML += '';

                sHTML += '';

                sHTML += '

';

                sHTML += '';

                document.getElementById("divEmail").innerHTML = sHTML;

                document.getElementById("formQuiz").submit();  

 

2.             Modified SCORM package quiz.js code (function player_DoFSCommand)  to call EmailResults when learner click ‘Finish’ button.

                case "CC_ClosePlayer":

                                                if (!g_bLMS)

                                                {

                                                                if (FF)

                                                                {

                                                                                setTimeout("CloseWindow()", 100);

                                                                }

                                                                else

                                                                {

                                                                                CloseWindow();

                                                                }

                                                }

                                                EmailResults(arrArgs[6]);

                                                break;

3.             On PeopleSoft side I created record CK_INTERACT_TRK to tracking all the interaction data

4.             I created IScript function on WEBLIB_CK_GEN.LM_IMP_CRS_SCORM to get parameter from FORM post. Using array to read each line of the questions and answers then loop thru to insert the data into the table

5.             Created Portal registry for IScript function

6.             Grant all user security access to IScript function

 

This discussion is closed. You can start a new discussion or contact Articulate Support.