How do I exempt people and groups from program milestones? (Flexible Milestones)

The Program report tells you who has and hasn’t done their required training and tasks. You configure a group of people and a list of milestones that need to be completed and then can easily see overall progress and a drill-down into the detail of exactly who has completed what. But what if you want to look at the progress of groups of people with different requirements? For example, perhaps warehouse staff are not required to complete the anti-bribery training, or there are advanced and basic versions of a course for different groups. This walkthrough explains three different ways you can configure milestones in scenarios where different people are required to do different things.

Who can use this feature?
 User Types
Any user with access to the report builder (Global Admins, Area Admins, and some Users).
 Pricing 
Available on paid plans (AnalystCLO, and Enterprise).
 Expertise
To understand this guide you will need to be an expert user familiar with the Program report and be comfortable making changes in Advanced Configuration

Exempt individuals from a step

Exempting individuals from a step is done using the exemptPersonCustomIds property in Advanced Configuration. This contains list of custom ids of people who are exempt from completing this step. Edit the program step in Advanced Configuration and add the property to the step you want to exempt people from.

exempt.jpg

People who are marked as exempt and have not completed the step will show as exempt and will not count in completion percentages. For example if there are 11 people in the program, 8 have completed and 1 is exempt, the completion percentage will show 80% (8 out of 10).

elzaholbrook.png

 Please note: If people who are exempt complete the milestone anyway, this cancels out the exemption and they are counted as complete.

Exempt groups from a step

More commonly, you might want to exempt whole groups from a step. This is done using the exemptGroupCustomIds property in Advanced Configuration. This contains list of custom ids of groups who are exempt from completing this step. Edit the program step in Advanced Configuration and add the property to the step you want to exempt people from.

exemptgroupids.jpg

When whole groups are marked as exempt, this is indicated on the group drilldown. Additionally, all people in that group who have not completed the milestone as marked as exempt in the same way as if they had been added to the exemptPeopleCustomIds filter.

operationsexempt.png

Different requirements for different groups completing the same milestone

An alternative approach to having different milestones for different groups of people is to have a single milestone with different requirements for each group. This is done by using a step collection (also known as Advanced Milestone in simple configuration). The step collection is configured such that each person is only required to complete 1 step in the collection. People and group filters can then be used to exclude certain people from certain steps within the collection.

For example, the step configuration below is for a milestone where people in the Greater Atlantic Region are required to pass one test and people in the Southeast Region are required to pass a different test. The completeThreshold property is set to 1 because people are only required to complete one of the steps in order to complete the collection.

{
  "type": "collection",
  "name": "Pass the test for your region",
  "steps": [
    {
      "type": "match",
      "name": "Greater Atlantic Test",
      "filter": {
        "activityIds": {
          "ids": [
            "http://example.com/test/greater-atlantic"
          ]
        },
        "groupCustomIds": [
          "Region: Greater Atlantic"
        ],
        "equals": [
          {
            "fieldName": "result.success",
            "values": {
              "ids": [
                "true"
              ]
            },
            "exclude": false
          }
        ]
      },
      "requiredMatchCount": 0
    },
    {
      "type": "match",
      "name": "Southeast Test",
      "filter": {
        "activityIds": {
          "ids": [
            "http://example.com/test/southeast"
          ]
        },
        "groupCustomIds": [
          "Region: Southeast"
        ],
        "equals": [
          {
            "fieldName": "result.success",
            "values": {
              "ids": [
                "true"
              ]
            },
            "exclude": false
          }
        ]
      },
      "requiredMatchCount": 0
    }
  ],
  "ordered": false,
  "completeThreshold": 1
}
Was this article helpful?
0 out of 0 found this helpful

If you can't find what you need or you want to ask a real person a question, please contact customer support.