The Program report offers an overview of a pre-defined learning program—like compliance training or new hire training. This guide explains how to create a Program report using Advanced Configuration.
Program Report Advanced Configuration
The activity, people and dates filters and report text of the Program report can be configured using simple configuration as they can for all reports. In addition, the Program report can be further configured using Advanced Configuration. Each Program report’s configuration object has a program property which contains a program configuration object. The properties of that object are outlined in the table below.
Property |
Explanation |
Example |
name |
The name of the program |
Widget 5000 Sales Training |
primaryPathId |
The id of the primary path for the program. Currently the Program report only displays data about one learning path. |
widget-5000-sales |
learningPaths |
An array of learning path objects representing the paths associated with the program. Currently the Program report only displays data about one learning path as identified by the primary path id. |
[ {..learning path..} ] |
competencies |
An array of competency objects representing the competencies associated with the program. |
[ {..competency..}, {..competency..}, {..competency..}, {..competency..}, {..competency..}, {..competency..} ] |
assessments |
An array of assessment objects representing the assessments, tests and quizzes associated with the program. |
[ {..assessment..}, {..assessment..}, {..assessment..}, {..assessment..}, {..assessment..}, ] |
Learning Paths - Advanced Configuration
A program includes a primary path made up of milestones. The program configuration includes an array of learning path objects as described above. Learning path objects have the following properties:
Property |
Explanation |
Example |
type |
The object type. Always ‘learningPath’. |
learningPath |
name |
Name of the learning path to be displayed. |
Widget 500 Sales Training |
ordered |
Determines how the milestone visualization displays. If false, will display the percentage of people who have completed the milestone, regardless of other milestones. If true, will display the percentage of people currently on that step. |
false |
id |
Id of the learning path. |
widget-5000-sales |
steps |
An array of step and step collection objects representing the milestones of the learning path. |
[ {..step..}, {..step..}, {..step collection..}, {..step..}, {..step collection..}, ] |
Please note: if a set of milestones is not always completed in the same order, setting the 'ordered' property to ‘true’ can distort the results and lead to negative percentages for steps that are commonly skipped or completed out of order.
Competencies - Advanced Configuration
Competencies represent demonstrations of competence within a program. They are configured in a similar way to paths, but visualized very differently:
- A program might be expected to have many competencies but only one primary path.
- Steps that make up a competency should be thought of more as criteria; there is no expectation that they will be completed in a particular order.
- The score achieved when completing a competency is significant and is used to determine the learner’s proficiency in that competency. Weighting can be applied to steps to account for differences in difficulty of activities demonstrating competence.
Competency configuration objects have the following properties:
Property |
Explanation |
Example |
type |
The object type. Always ‘competency’. |
competency |
name |
Name of the competency to be displayed. |
Widget 500 Demonstrations |
id |
Id of the competency. |
widget-5000-demo |
steps |
An array of step and step collection objects representing the criteria for achieving the competency. |
[ {..step..}, {..step..}, {..step collection..}, {..step..}, {..step collection..}, ] |
stepWeights |
Contains a step weights object defining the weights that should be applied to each step when calculations the competency score. Properties of the step weights object are the names of steps and the values are the weightings. Weightings should add up to 1 in total. |
{ "Articulating": 0.25, "Investigating": 0.75 } |
Steps and Step Collections - Advanced Configuration
Paths and competencies both contain arrays of steps and step collections. Step collections are used to require the learner to complete a configurable number of actions from a given list. For example a learner might have to pass 2 out of 3 quizzes in order to complete the milestone. Step collections have the following properties:
Property |
Explanation |
Example |
type |
The object type. Always ‘collection’. |
collection |
name |
Name of the step collection. If this is a top level step, this name is displayed as a program milestone. |
Complete pre-training e-learning module |
completeThreshold |
The number of steps within the collection that need to be completed in order for the collection to be considered complete. |
2 |
exemptPersonCustomIds |
A list of custom ids of people who are exempt from completing this step. Exempt people/steps are not counted in completion percentages. |
["alice@example.com", "bob@example.com"] |
exemptGroupCustomIds |
A list of custom ids of groups who are exempt from completing this step. Exempt people/steps are not counted in completion percentages. |
["Region: West", "Region: South"] |
steps |
An array of step and step collection objects (collections can be nested). |
[ {..step..}, {..step..}, {..step collection..}, {..step..}, {..step collection..}, ] |
targetScoreForCompletion |
A minimum score on the matched statement (score as part of the .result property) in order for the step to be considered complete. |
80 |
requiredMatchCount |
The minimum number of matching statements (times the person did something) before the step is considered complete. If undefined, this value is 1, but when this is set it can be greater than 1. |
3 |
Steps have the following properties:
Property |
Explanation |
Example |
type |
All steps should have a type of ‘match’. |
match |
name |
Name of the step. If this is a top level step, this name is displayed as a program milestone. Steps don’t have ids, so make sure the name of the step is unique. |
Complete pre-training e-learning module |
filter |
Filter to be matched. If the filter contains one or more statement for each learner, then that learner is considered to have completed the step. |
See advanced filters. |
Assessments - Advanced Configuration
The assessments property determines which assessments are listed for the program. It contains an array of assessment filter objects with the following properties:
Property |
Explanation |
Example |
name |
The name of the assessment as it should be displayed in this Program report. |
E.g. if the full name of an assessment is “Program X: Module 1 Assessment”, then it might be called simply “Module 1” in the assessments section of the Program X Program report. |
activityId |
The activity id of the assessment to use. |
http://example.com/activities/example-assessment |
Additional Advanced Configuration Options
Group Options
Property |
Explanation |
Example |
flattenGroups |
Flattens the hierarchy of groups in the "Groups" section so all groups are displayed, instead of being able to click through the hierarchy trees when set to true |
true |
listGroupsByType |
Lists the groups in the "Groups" section under type headings, rather than their hierarchy tree when set to true |
true |
groupsOfType |
Adds an additional column to the 'People' section with the persons group memberships for those groupsOfType |
[ |
Hide Options
There are a myriad of other configuration options that allow you to hide and show various parts of the program report. These are split up into three JSON objects in the report configuration:
Program
The program object allows you to show and hide the various UI elements of the program report
Property |
Explanation |
Example |
duration |
Hides the "Average Time to Complete this Program" data point in the top part of the Program report and the "Duration", and "Time Span" columns in the People and Groups tables when set to true |
true |
groups |
Hides the "Groups" section when set to true |
true |
people |
Hides the "People" section when set to true |
false |
activities |
Hides the "Activities" section when set to true |
true |
milestones |
Hides the "Milestones" section when set to true |
false |
interactions |
Hides the "Interactions" section when set to true |
true |
contributingSystems |
Hides the "Contributing Systems" section and the "Contributing Systems" column from every program report page when set to true |
false |
peopleInProgram |
Hides the "People in Program" section when set to true. Note that this will also remove this value from the card view of the Program report. |
true |
Groups
The group object modifies the data that is shown in the "Groups" section, and the group file when downloaded the reports data
Property |
Explanation |
Example |
group |
Hides the "Groups" section when set to true |
true |
averageProgress |
Hides the "Average Progress" column from the groups when set to true |
true |
peopleNotStarted |
Hides the "People Not Started" column from the groups when set to true |
false |
peopleInProgress |
Hides the "People in Progress" column from the groups when set to true |
true |
peopleCompleted |
Hides the "People Completed" column from the groups when set to true |
false |
averageTimeToComplete | Hides the "Average time To Complete" column from the groups when set to true |
true |
People
The people object modifies the data that is shown in the people table, and downloaded people file
Property |
Explanation |
Example |
person |
Hides the "People" section when set to true |
true |
progress |
Hides the "Progress" column from the groups when set to true |
true |
status |
Hides the "Status" column from the groups when set to true |
false |
lastMilestone |
Hides the "Last Milestone" column from the groups when set to true |
true |
duration |
Hides the "Duration" column from the groups when set to true |
false |
timeSpan | Hides the "Time Span" column from the groups when set to true |
true |
completionDate | Hides the "Completion Date" column from the groups when set to true |
true |
Card Options
By default, the Card view of a Program report includes two data points:
- The number of people enrolled in the program
- The number of people who have completed the program
Here is an example Card view of a Program Report:
You have the option to hide or show additional information on the Card view of a Program report by setting specific configuration options as shown below.
Property |
Explanation |
Example |
showProgramInProgress |
Shows the number of people in progress when set to true |
true |
showProgramNotStarted |
Shows the number of people not started when set to true |
true |
showProgramCompletion |
Shows the number of people who have completed when set to true. |
true |
When all of these settings are set to true, here's what the Card view of a Program report looks like. You can see that the top number will represent the sum of the three values below.