In this scenario, we have a custom entity called Skills that we want to use when reviewing a Contacts resumé or CV.
The Contact entity has a custom text field called Resumé that we place unformatted resumé text into. We want to check this field for any potential Skills this Contact might have.
If the field contains any of the skills, we want to associate the Skill with the Contact.
For this example, it is presumed that:
- The custom field Resumé has been added to the Contact entity
- The custom entity Skills has been created
- A N:N relationship has been created between the Contact entity and the Skills entity
- Sample Skills and Contacts have been created
North52 BPA Solution
The North52 BPA solution works like this:
- A formula is created that will trigger whenever the custom field Resumé is changed on the Contact entity
- The formula will first disassociate all Skills from the Contact to make sure that any outdated Skills are removed when the Resumé is updated
- The formula will then loop through each Skill and check if it is mentioned in the Resumé. If it is found, that Skill is associated to the Contact
- Navigate to Settings > N52 Formula
- Create a new formula, setting the following values in the Formula Guide:
- Source Entity set to Contact
- Set Formula Type to Save - Perform Action
- Set Event to Create & Update
- Select the Classic Editor
- Change the Name of the formula to Add Skills to Contact depending on Resumé
- Copy and paste the following into the formula editor:
Smartflow( ForEachRecord( FindRecords('new_contact_new_skills', 'contactid', [contact.contactid], '*', '2000', true), DisAssociateEntities('contact',[contact.contactid],'new_skills',currentrecord('new_skillsid'),'new_contact_new_skills')), ForEachRecord( FindRecords('new_skills', '*', '*', 'new_name'), iftrue(Contains([contact.north52_resume], currentrecord('new_name')) , AssociateEntities('contact',[contact.contactid],'new_skills',currentrecord('new_skillsid'),'new_contact_new_skills')) ))
- Click Save
Note: you will need to change the names of new_skills, new_skillsid, new_name to match your custom Entity's equivalent. You will also need to change new_contact_new_skills to your N:N relationship's equivalent
You are now ready to test. To test the formula, enter text in the Resumé field on the Contact entity:
We can see that the words Excel and Presentation are in this field - these are skills that have been created in the Skills entity. When we click save, the skills Excel and Presentation will be associated to the Contact:
Did you know?
North52 TestShield ensures Quality at Speed
TestShield's automated tests run on the Dynamics 365 platform rather than in the browser allowing extreme speed.
For example, we can run 1100 tests with over 15,000 Asserts to verify a new release of the North52 Decision Suite, in less than 4 minutes!
It means that we can deliver quality releases at unprecedented speed. Before TestShield, testing a new release was very manual and time consuming.