Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Many hospitals and healthcare organizations that implement the Dual Code learning environment need to migrate learning records from their legacy LMS or in some cases, from spreadsheets that they've manually managed. The learning records can easily be imported into the Dual Code learning environment by uploading a CSV (comma separated value) file.

...

actor,verb,object,timestamp,expires,finalgrade
jdoe,completed,WHMIS,2016-06-28,2017-06-28,90
jsmith,completed,WHMIS,2015-04-21,2016-04-21,100
jsmith,completed,Accessibility,2015-04-21,,85
jsmith,completed,Privacy,2017-07-21T15:19:21+00:00,2018-07-21T15:19:21+00:00,85
jsmith,completed,Privacy,2017-07-21T17:22:45+00:00,2018-07-21T17:22:45+00:00,95


Assumptions

There are a few rules that need to be respected in order for the data migration to work:

  • By default, the encoding of the CSV file must be in UTF-8. The import wizard allows you to specify a different encoding scheme but we recommend that you use the UTF-8 encoding, especially if you are using French or international characters, but you cannot upload a Microsoft Excel (.xls or .xlsx file). The file must have a .csv extension.
  • The first row in the CSV file must contain the name of the columns to be imported, These are:
    • actor
    • verb
    • object
    • timestamp
    • expires
    • finalgrade
  • The next rows in the CSV file will contain the learning record information that needs to be imported in the learning environment (one row per learning record).
  • The actor must be the user's username as it exists in the learning environment. It's important to note that the username must exist. If it doesn't, you must first create the user.
  • The verb must be "completed". No other verbs are supported.
  • The object must be the shortname of the course as it exists in the learning environment. It's important to note that the shortname must exist. IF it doesn't you must first create the course.
  • The timestamp and expires columns must be in the following ISO 8601 format: 2016-06-28T15:19:21+00:00, where:
    • 2016-06-27 is the date in YYYY-MM-DD format (based on the Gregorian calendar)
    • (optional) 15:19:21 is the time in hh:mm:ss format (based on the 24-hour clock system). If you omit the time, the system will log the time as 12:00 AM.  If including optional time you MUST include a time offset from UTC. 
    • (optional) +00:00 is the time offset from the UTC (Coordinated Universal Time). For example, an organization located in Ottawa or Toronto would write -04:00. If you omit the the timezone, the system will use the system's default timezone.
    • Alternatively, because Microsoft Excel automatically converts dates from YYYY-MM-DD to MM/DD/YYYY, you can now specify your dates in the MM/DD/YYYY format, if and only if you do not need to specify the time of the learning record. If you need to specify the time / timezone of the learning records when importing them, you need to continue to use the ISO 8601 format described above.
  • The expires column must be present, but the value is optional. In other words, if the column is not in your CSV file, the upload will fail. But it's ok to leave the value empty for a learning record if it never expires.
  • The finalgrade is a float value. Do not include a % symbol, ex: 93.75. If you do not have a finalgrade for historical data, you still need "finalgrade" in the first row of the CSV file, but you can leave the column empty for each record

...

The text file to void learning records must be a CSV file. Here is an example of a simple valid upload file:

actor,verb,object,timestamp,expires,finalgrade,voided
jdoe,completed,WHMIS,2016-06-28T00:00:00+00:00,2017-06-28,90,1
jsmith,completed,WHMIS,2015-04-21T00:00:00+00:00,2016-04-21,100,1
jsmith,completed,Accessibility,2015-04-21T00:00:00+00:00,,85,1
jsmith,completed,Privacy,2017-07-21T15:19:21+00:00,2018-07-21T15:19:21+00:00,85,1
jsmith,completed,Privacy,2017-07-21T17:22:45+00:00,2018-07-21T17:22:45+00:00,95,1


Info

Please note the full UTC timestamp is required for voiding LRS records. 

...