Concat Custom Field Name instead of Value | Community
Skip to main content
Level 2
January 26, 2026
Solved

Concat Custom Field Name instead of Value

  • January 26, 2026
  • 5 replies
  • 62 views

Hi all,

 

I have a custom field in my form that used a name as the name but an ID as the value underneath. For instance;

Starter: Soup - ID1234

Main Course: Pizza - ID2345

Dessert: Ice Cream - ID3456

 

Now I want to concat my three course meal in a different field called (three course meal) such that the outcome is;

Three Course Meal: Soup, Pizza, Ice Cream

 

However, if I concat based on the field itself it now gives the output:

ID1234, ID2345, ID3456

 

I know for all other ID fields in Workfront you can get rid of the ID and add .{name} but this does not seem to work for custom fields. Is there any other way that I can do this?

Best answer by KellieGardner

You would have to combine IF and CONCATs to get them all in a single field.

 

The easiest from a long-term maintenance perspective IMO is to create calculated fields to align to your fields - one for the main course, one for sides, and one for desserts. Use IF statements there to change the output based on the input. IF(main course=x, give me y…….)

 

Then do another to CONCAT them all, or use text mode in your report to CONCAT them all. 

5 replies

KellieGardner
Community Advisor
Community Advisor
January 26, 2026

You have to use a series of IF statements to get this. Lots of questions on it out there without any solid answers. 

Level 2
January 27, 2026

Hi ​@KellieGardner, thank you for you reply!

I opened a few of the threads you linked to but could not find a consistent answer. The only thing I could find was that they use a replace function again to replace the ID with the label value afterwards, which seems interesting to say the least. This will make it very hard to scale when labels are added or removed. 

What do you mean by using IF statements? I cannot picture how this could be able to provide a solution.

KellieGardner
Community Advisor
KellieGardnerCommunity AdvisorAccepted solution
Community Advisor
February 2, 2026

You would have to combine IF and CONCATs to get them all in a single field.

 

The easiest from a long-term maintenance perspective IMO is to create calculated fields to align to your fields - one for the main course, one for sides, and one for desserts. Use IF statements there to change the output based on the input. IF(main course=x, give me y…….)

 

Then do another to CONCAT them all, or use text mode in your report to CONCAT them all. 

ninoskuflic
Level 2
January 28, 2026

You cannot pull the label unfortunatelly, but you could have both the label and name in the name field.

For example:

  • Main Course:
    • Label: Pizza
    • Name:  Pizza - ID2345

You could then use the String functions to get the value of the name before the separator such as “-”. 😊

Depends on how you are using those fields later in the system but this is one of the options. Otherwise, you can use Fusion to achieve similar things and put the correct data in another custom field but this might be more complex. I would try going with String functions first. 

If this solved your issue, please mark it as solved so others can find the solution faster.
Level 2
January 30, 2026

Hi ​@ninoskuflic,

 

This seems to be the current “best” way of doing this. This will still create a need for one field to be split into two more which would result in three fields in total. This is because the ID is linked to the tags ID we use in AEM so I would still have to extract this to make sure this is consistent. 

 

Thank you for the help though!

Kurt_Jones
Community Advisor
Community Advisor
February 3, 2026

What type of custom field did you create, is it an multi-select dropdown? 

If my response answered your question, please mark it answered, so others can find the answer
Level 2
February 3, 2026

Hey ​@NielsCorver,

You’re seeing the IDs because the values stored in your custom dropdown options are the IDs (e.g., ID1234), not the labels like “Soup.” Workfront calculated fields always return the stored value, not the display label, which is why your concat shows the IDs instead of the names.

what alternative you can use is it use if statements where you are specify the fields value and then the output in the calculated field, for example:

IF(
LEN(
CONCAT(
IF({DE:Starter}="ID1234","Soup, ",""),
IF({DE:Main Course}="ID2345","Pizza, ",""),
IF({DE:Dessert}="ID2345","Ice Cream, ","")
)
)=0,
"",
LEFT(
CONCAT(
IF({DE:Starter}="ID1234","Soup, ",""),
IF({DE:Main Course}="ID2345","Pizza, ",""),
IF({DE:Dessert}="ID2345","Ice Cream, ","")
),
LEN(
CONCAT(
IF({DE:Starter}="ID1234","Soup, ",""),
IF({DE:Main Course}="ID2345","Pizza, ",""),
IF({DE:Dessert}="ID2345","Ice Cream, ","")
)
)-2
)
)

Output: 


Do let me know if this solves your issue 😊

Thanks,
Pushpraj

kautuk_sahni
Community Manager
Community Manager
February 17, 2026

@NielsCorver Following up to see if this has been resolved. If you’ve found the answer, whether through the suggestions here or through your own troubleshooting, feel free to post the solution so others can benefit. If any reply helped along the way, marking it as accepted ensures the most useful information is easy to find. Thanks for helping close the loop!

Kautuk Sahni