Views:

Overview

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:

  1. The custom field Resumé has been added to the Contact entity
  2. The custom entity Skills has been created
  3. A N:N relationship has been created between the Contact entity and the Skills entity
  4. 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

Setup Formula

  • 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 

Test

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: