Skip to main content
Contributor ⭐️⭐️
Oct 29, 2020 12:56 AM UTC
Solved

Populating multi-select picklist through a rule

Hi Gainsight community,

I am trying to populate the list of systems installed on an account through a “Systems installed” multi select picklist which i have created. How do i create a rule to populate multiple items for the same account. The rule takes once record at a time and only populates the last item. 

For eg Account 123 has install base serial numbers abc, def, ghi, jkl

I want to populate for all accounts their unique serial numbers in a multi-select dropdown. 

I created a multi-select dropdown and called it “Systems installed”, it wanted me to add one value atleast so added a default value while creating the field in the company object. But when i ran the rule for the account which has 17 such serial numbers it errored out.

 

Thanks

Anil

 

 

 

 

 

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 1

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 2

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 9

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 12

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 13

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 7

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 14

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 8

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 15

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 5

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 6

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 3

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 10

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 4

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 11

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 16

2020-10-29T00-49-57_UTC - GSOBJ_1012 : Invalid/Inactive value provided for picklist. [Field Name: Installed_Systems__gc] at row number 17

phani_kumar
Gainsight Employee ⭐️⭐️
Oct 29, 2020 6:20 AM UTC

Hi All,

The below-mentioned steps help us to load Data to Multipick List Field.

Recently when I am working with a customer I had this scenario and implemented this via Rules. 

 

Example of your Input Data.

 

The target object has a Multi Picklist Data Type field whose values are like below.

Rules

Reports

JO

 

We need to load and map the data to the respective values in the target field where ever the Account responded as “Yes”  to the Question.

 

We could simply achieve this via rules.

Step 1: Fetch the Input data

Step 2: Choose Transform Task and Create a Case Expression like below.

Provide all the values which are mentioned in the above pic.

The trick we need to apply in the “Then” Section was to append the semicolon to the value. i.e. like ‘Rules;’, ‘Reports;’, and ‘JO;’(without Single Quotes)

In a similar way create two more case expressions for the fields “Using Reports Module” and “Using JO Module” in the same way.

 

Step 3: In the next transformation, Concat the fields created in step2 to load the target field.

 

Finally, create the Action and select the object and map the Concated field with MultiPicklist filed.

 

Thanks!!!

18 replies

phani_kumar
Gainsight Employee ⭐️⭐️
Apr 20, 2022 6:52 AM UTC

Hi @jkolle 

Yes, you have to create 29 separate case expressions and then concat all.

 

Translate
Helper ⭐️
Apr 20, 2022 1:59 PM UTC

@phani_kumar Okay, I tried that workaround and formula and case fields are limited to 10. I suppose I can create three separate transform tasks with 10, 10 and 9 case expressions and then merge them back together to accomplish this. I’ll try that.

Translate
phani_kumar
Gainsight Employee ⭐️⭐️
Apr 20, 2022 2:06 PM UTC

Absolutely correct. We have a limit of 10 formula fields creation in Transformation. So as you said have to create 3 Separate transforms and merge.

Translate
Helper ⭐️
Apr 20, 2022 2:14 PM UTC

@phani_kumar Actually, isn’t Concat limited to 10 as well. So you can really only populate a Multi-Select list if your values are 10 or less. Is that correct?

Edit: See below post for solution if you have more than 10 values in your multi-select list.

Translate
Helper ⭐️
Apr 20, 2022 3:10 PM UTC

Okay, figured it out. In case anyone else has a multi-select list with more than 10 values. You will need to do separate transform tasks for every 10, then separate concats for each transform, merge those all together, then one final concat to put it all together. Below is what I built for a multi-select list with 29 values.

 

Translate
phani_kumar
Gainsight Employee ⭐️⭐️
Apr 21, 2022 7:20 AM UTC

Okay, figured it out. In case anyone else has a multi-select list with more than 10 values. You will need to do separate transform tasks for every 10, then separate concats for each transform, merge those all together, then one final concat to put it all together. Below is what I built for a multi-select list with 29 values.

 

Yes, that’s correct @jkolle 

Translate
benwanlessmenlo
Contributor ⭐️⭐️⭐️⭐️⭐️
Jun 8, 2022 3:26 AM UTC

Would you be able to load this data if your initial data looked slightly different and pre-concatenated?

GSID | listed;values;separated;by_semicolons

Translate
alizee
VIP ⭐️⭐️⭐️⭐️⭐️
Feb 8, 2023 1:56 PM UTC

We really need something less extreme. It’s not viable to come up with all possible combinations through transform tasks. Used to be able to concat the picklist with a manual value and it won’t work in the new RE. 

Translate
The most expensive part of building is the mistakes. That's true in construction. Not so much in CSOps. So ask questions, make mistakes and learn. All views expressed here are my own.