Workflow Import Queue "File Types"

Currently, only Sys Admins can configure the Workflow Import Queue. End user administrators may upload data, but not configure the available file types.

See also: configuring the Import Queue App Config settings

Overview

When an Administrator goes to Admin → Import Data, the first thing they must do is select a “File Type”.

This selection screen does three things:

  • Uses language that the user will recognize, such as “Exam Results” and “Add Members” instead of “Activity Instance” and “Member Role”;

  • Allows the user to download a CSV template file that documents the required columns;

  • Contains friendly instructions that provide additional context for each type of file.

The options presented in this screen are fully configurable by Sys Admins so that the experience can be customized and tailored to a wide variety of business conditions and client needs.

Configuring the “File Types”

To configure the file types, go to Sys Admin → App Configuration → Workflow Import File Types.

Each “file type” can be configured with these details:

Display Order

Controls the sequence that the options are presented in.

Name

Displayed to the user as the “file type”. Should use business language, not system language, so that users associate the type to the task they wish to perform.

Icon

The FontAwesome class(es) that specify the icon to use. This typically consists of a “weight” plus an “icon”, such as far fa-books. See https://fontawesome.com/cheatsheet?from=io

Entity Type

What type of Entity is being uploaded? This controls the type of Workflow on which the Data Import Step must be configured:

  • Activity Instance - Complete Activity Workflow

  • Learning Plan Instance - Complete Learning Plan Workflow

  • Member Role - Grant Role Workflow

Description

Displayed to the user to provide additional instructions or context.

Note

Internal notes that are NOT displayed to the user. Used to capture implementation details that might be helpful in understanding or supporting the configuration.

Template

To assist users, you can optionally attach a CSV template file that documents the required columns and provides instructions. For more information, see Creating a CSV Template

Status

Disabled file types are not displayed to the user.

Creating a CSV Template

This section describes concepts that apply to the Import Queue as a whole.

For guidance on creating templates for specific import scenarios see one of these links:

The Workflow Import Queue is a complex feature, so to minimize user confusion you should upload a template file for each file type. The template file should contain everything that an end user needs to prepare their data for processing.

When building this template, you need to consider four things:

  • Which identifier columns will be used to identify the pre-existing record to update, or the entities to associate with a newly-created record;

  • Which value columns will be used to collect data.

  • Which Workflow Action will be executed on a given row;

  • Whether you need to provide any instructions or supporting data within the file.

Required identifier columns

The set of required identifier columns will depend on the Entity Type associated with each File Type. The supported patterns are documented on the feature-specific documentation pages:

For simplicity, it is recommended that all rows in the file use the same “identification strategy”. That is, even though the system supports multiple patterns of identifier columns, it helps to keep things simple and use the same strategy for each row in a file. Nothing forces you to do this, however.

Value columns

To determine the value columns that should be included in the file, refer to the Data Import Step configuration. Only those Attributes that are added to the Step as editable fields can be modified by an uploaded file, and the column headers should match the Data Field Name.

Including instructions in the template

There are two ways to provide instructions or helpful content within your template:

  • Comment columns

  • Free-form text

One way to provide instructions is through “comment columns”, which you indicate by prefixing the column header with a hashmark: #Notes. Comment columns are ignored when the file is processed, so they can be left in place within the final upload without causing issues. This is a helpful way to document the set of allowed values for a Picklist attribute, for example.

Another way to provide instructions is by adding free-form text to the file. The template file is just a text file, so you can include anything you want in place of real “data rows”. However, this content must be deleted before the file is uploaded and processed.

Making the file accessible to end users

Once you have crafted your template file, attach it to the File Type. It will then become available for end users to download from the Admin → Import Data page.

File Types vs Entity Types

Consider this configuration:

The Exam Results and Course Attendance File Types support very different business scenarios, and the bespoke template files will likely be very different as well.

When a file is processed, each row is treated independently of the rest. The only thing that really matters at the file level is which Entity Type to associate with the file.

In this configuration, both the Exam Results and Course Attendance File Types are associated with the Activity Instance Entity Type, which means that technically speaking, all of these scenarios are possible:

  • The user could select “Exam Results”, but upload an Attendance file instead.

  • The user could select “Course Attendance”, but upload an Exam Results file instead.

  • The user could select either, and upload a file containing a mixture of Attendance and Exam rows.

In all of these cases, the file will be processed row by row, and the data in each row will determine the Data Import Step used to process it. This process is unaffected by the “File Type” selection, only the data in the row are considered.