When using an Assignment Profile to target a user population with the "Does Not Match" operator on the Alternate Job Code Attribute is giving unexpected results.
Learning Management System.
Reproducing the Issue
1. Consider 3 user records in LMS and assign the Aternate Job codes to these three users as mentioned in the example scenario below.
Example : USER1 is assigned job code A in the Alternate Job Code tab under Related->More section of the user record.
USER2 is assigned job code B in the Alternate Job Code tab under Related->More section of the user record.
USER3 does not have any Alternate Job Code.
2. Create an Assignment Profile and in the Manage Rules section of the AP, add the domain and set the rule with Alternate Job Code "Does not Match" B.
3. The Preview users in Assignment Profile will target USER1 and USER3 in the AP.
4. Add an additional Job code A to the USER2 in the Alternate Job Code tab under Related->More section of the user record. This implies that USER2 has 2 Alternate Job codes now, A and B.
5. The Preview users in Assignment Profile will target all the three users , USER1, USER2 and USER3 now in the AP.
The above scenario may seem that it is not working as expected but this is by design.
Imagine the following scenario:
A driving school has several instructors, all with the job title "Instructor". This school provides instruction on three types of vehicles: Motorcycles, Cars and Trucks.
To differentiate instructors, they set alternate job codes: Motorcycle Instructor, Car Instructor, Truck Instructor.
The current instructors are setup as follows:
Frank: Motorcycle, Car
Hank: Car, Truck
There is a new course "Safety for vehicles with 4 or more wheels" that we need to assign to the appropriate instructors. So we setup the following AP rule:
Alternate Job Code DOES NOT MATCH "Motorcycle"
Result: Frank, Hank
Everyone who has titles/code other than motorcycle need to take the course. Sheila is excluded because she ONLY has motorcycle.This is the way the operator was designed to work.
The correct way to handle the scenario mentioned in the 'Reproducing the issue' section is to add multiple does not match rules to the AP.
In the above scenario, lets say the new course was "New rules for driving trucks" and I wanted to exclude both Frank and Shelia:
Incorrect Rule: DOES NOT MATCH "Motorcycle"
Result: Frank, Hank
Correct Rule: DOES NOT MATCH "Motorcycle" AND DOES NOT MATCH "Car"
This is by system design to handle the Does not Match operator with Alternate Job Code Attribute.
Always include multiple operators with DOES NOT MATCH for the attribute - Alternate Job Code to get the expected results based on your requirement.
Alternate Job Code, Assignment Profile, Does not match , KBA , LOD-SF-LMS-COR , LMS Core - Items, Catalog, Curricula , Problem