Process Builder: Evaluate Multi-Select Picklist to Update a Picklist - Answers - Salesforce Trailblazer Community
Ask Search:
Katherine HansonKatherine Hanson 

Process Builder: Evaluate Multi-Select Picklist to Update a Picklist

What I want: Use Process Builder to evaluate a custom multi-select picklist field. If it has two or more values selected (it doesn't matter what those two(+) values are, then update another custom picklist field with a set value.

More background:
We have two fields for capturing contacts' race/ethnicity. One is "Ethnicity" - a custom multi-select picklist. The picklist values for the multi-select "Ethnicity" field are: "African American/Black," "Asian", "Caucasian/White", "Hispanic/Latino", "Hispanic/Latino (Black)", "Hispanic/Latino (White)", "Middle Eastern/North African", "Multiracial", "Native American/Alaskan/Hawaiian/Pacific Islander".

The second field is "Auto-select: Race/Ethnicity" - a custom picklist. The picklist values for the auto-select field are: "African American/Black", "Asian", "Caucasian/White", "Hispanic/Latino", "Hispanic/Latino (Black)", "Middle Eastern/North African", "Multiracial", "Native American/Alaskan/Hawaiian/Pacific Islander/Indigenous".

The "Auto-Select Race/Ethnicity" PROCESS uses data in the "Ethnicity" field to populate the "auto-select: race/ethnicity" field.

I'm having trouble with one component of the process. Here's what I want: If "Ethnicity" = two or more of any of the "Ethnicity" picklist values, then "Auto-Select: Race/Ethnicity" = Multiracial.

What I've tried: a few versions of the following:
  • Contact.Ethnicity - Contains - "African American/Black"
AND
  • Contact. Ethnicity - Equals - Formula:
OR(
INCLUDES([Contact].Ethnicity_Internal__c, "African American/Black"),
INCLUDES([Contact].Ethnicity_Internal__c, "Asian"),
INCLUDES([Contact].Ethnicity_Internal__c, "Caucasian/White"),
INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino"),
INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino (Black)"),
INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino (White)"),
INCLUDES([Contact].Ethnicity_Internal__c, "Middle Eastern"),
INCLUDES([Contact].Ethnicity_Internal__c, "Multiracial"),
INCLUDES([Contact].Ethnicity_Internal__c, "Native American/Alaskan/Hawaiian/Pacific Islander")
)

Error message: 
The formula expression is invalid: Formula result is data type (Boolean), incompatible with expected data type (Text).

Thanks for any help y'all are able to provide!
Best Answer chosen by Katherine Hanson
Ahilesh RagavanAhilesh Ragavan
Use a process criteria like this in the blue diamond :
(IF(INCLUDES([Contact].Ethnicity_Internal__c, "African American/Black"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Asian"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Caucasian/White"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino (Black)"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino (White)"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Middle Eastern"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Multiracial"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Native American/Alaskan/Hawaiian/Pacific Islander"),1,0)) > 1

Add a field update to the picklist :
Auto-Select: Race/Ethnicity   |   Value   |    Multiracial


 

All Answers

Ahilesh RagavanAhilesh Ragavan
Use a process criteria like this in the blue diamond :
(IF(INCLUDES([Contact].Ethnicity_Internal__c, "African American/Black"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Asian"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Caucasian/White"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino (Black)"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino (White)"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Middle Eastern"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Multiracial"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Native American/Alaskan/Hawaiian/Pacific Islander"),1,0)) > 1

Add a field update to the picklist :
Auto-Select: Race/Ethnicity   |   Value   |    Multiracial


 
This was selected as the best answer
Katherine HansonKatherine Hanson
Thanks for jumping in, Ahilesh! When I plugged in the formula you suggested, I got the following error message: 
"The formula expression is invalid: Formula result is data type (Boolean), incompatible with expected data type (Text)."

The condition was set as follows:
[Contact].Ethnicity_Internal__c - Equals - Formula

(IF(INCLUDES([Contact].Ethnicity_Internal__c, "African American/Black"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Asian"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Caucasian/White"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino (Black)"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Hispanic/Latino (White)"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Middle Eastern"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Multiracial"),1,0)+
IF(INCLUDES([Contact].Ethnicity_Internal__c, "Native American/Alaskan/Hawaiian/Pacific Islander"),1,0)) > 1
Ahilesh RagavanAhilesh Ragavan
I hope you are copying this fomrula into the criteria node (blue diamond).
Don't copy this into the "formula" window inside the "update records" immediate action.
Once you have set the criteria, you can set the field update simply like this:
Auto-Select: Race/Ethnicity   |   Value   |    Multiracial

 
Steve MolisSteve Molis
I'm just gonna leave this here...
User-added image
Katherine HansonKatherine Hanson
Yep! I failed to mention that I had two other criteria in the diamond, and this formula was the third. I removed those 2 criteria and kept this formula, and changed the conditions to "formula evaluates to be true". It worked!