Concatenate dropdowns to textfield


Badge +3

In Nintex Forms I have 3 dropdowns and after each one gets selected I want a text field to get filled. For Instance:

DD1 possible values: A1, A2, A3

DD2 possible values: B1, B2, B3

DD3 possible values: C1, C2, C3

Text field: empty

When the user now opens the form and selects the first DD, the textfield should show the value, for instance "A1"

Then the user selects DD2, so the textfield should immediately show for instance "A1B3"

Same for the third one ("A1B3C2")

How to do that?


13 replies

Userlevel 5
Badge +14

does it have to be text field (single line text control)? do you need to edit value?

this would be very easily achievable with  calculated control value, but wit text control there appears several difficulties

- does text field have to be maintained with every DD change?

- should new DD value be always appended or previous value should be replaced? so after some further changes should it look like A1B3C2A2B1 or A2B1C2?

- if somebody changes prepolulated value and then dropdown changes as well, how do you identify what should be changed in text field?

- quite similar if DD values are not all of the same length, eg. A11,A2,B111, B2222...

Badge +3

Sorry for the late respone, had some other projects...

1. Field has to change every time a dropdown changes

2. new DD value should always be replaced, so it should look like A2B1C2

3. this could be a problem, but we have not to deal with it now.

4. we can ignore this too

how can I achieve it via calculated column? If I add a calculated column with the formula "DD1DD2DD3" I get an error. If I add only "DD1" it will show me the value of DD1. Do I have to add a calculated column for every DD and the concatenate it?

Why am I doing all of this or better: What do I want to achieve? --> When a new item is created in the list the user needs to know if there are other elements that have the same values (in the DDs). Is there another way to do it? For instance to add a "List Lookup" column and filter the list with various filters?

Userlevel 5
Badge +14

how can I achieve it via calculated column?

for calculated value control use formula: DD1+DD2+DD3

Badge +3

OK, it's really as easy as this. But know I get also the ID and the ";#" with it, so it looks like "1;#DD1value1;#DD2value1"

Is there any way to show it without "ID;#"?

Badge +3

It ALMOST works: I have a calculated column that looks like "1;#DD1value4;#DD2value1;#DD3value;15;#DD4value".

In the second list (where I lookup the this calculated value) I created one item that has exactly this value.

I the open the form, change the 4 dropdowns and I can see that the value in the calculated column shows "1;#DD1value4;#DD2value1;#DD3value;15;#DD4value".

I then have a ListLookup-Field that should filter the second list by means of the calculated value. But it shows all items of the second list because I formatted the ListLookup to show all items if no filter applies in the Filtering.

So my guess is that the ListLookup does not update with the change of the dropdowns (and connected to that with the calculated column). So how to tell the ListLookup that it should update on change of the Dropdowns or the calculated column?

By the way a big thank you so far for you help!

Userlevel 5
Badge +14

Have a look on parseLookup() function.

it picks either ID or text out of lookup value

Userlevel 5
Badge +14

lookup control refreshes once the value you filter by changes. I'd rather say it doesn't match any item by a given filter value.

if you're on some older release of forms, there was a bug that lookup control filtered by calculated value didn't work. But this should have been fixed wit some recent release, have a look on respective  release notes.

iif that doesn't apply for you,can you post configuration of your calculated value and lookup controls and configuration of the field from second list and an example how does data in this list looks like?

Badge +3

Let me ask one more question before I am completely lost and then I would sent you the configuration:

parseLookup() works in the way that it gives me the value of a Dropdown. But how to concatenate the 4 Dropdowns?

So in the calculated column i said before DD1+DD2+DD3+DD4 and it gave me the value + "ID;#" and this seems to be the problem. But when I say "parselookup(DD1)+parselookup(DD2)+..." it won't show anything.

The connection between the lists works by the way perfectly, when I don't filter by the calculated value but by a hard coded value inside the listlookup it works.

Badge +3

Nevermind, I also got the parselookup()-columns concatenated, but it won't filter the listlookup(). So I am pretty sure that we are on a version that is a little bit older. It will be updated, but this will take some time...

Is there any other way to deal with it?

Userlevel 5
Badge +14

parseLookup(DD1)+parseLookup(DD2)... should work, but make sure parseLookup() is typed in with correct case (capital L) - use rather formula builder when creating formulas.

reg. filter - you likely hit the mentioned bug. what exact form version are you on?

Badge +3

That's the problem: I currently don't have access to the central administration but will look it up as soon as possible. Thank you very much so far, will get back to you as soon as I have any further information regarding the version or when I got it working.

Userlevel 5
Badge +14

you can check forms version in forms designer in help >> about

Badge +3

Version is 2.9.1.20, the current version is 2.10.2.0.

In version 2.9.2.0 they changed it, so I definetely have to install new version. Thanks a lot for your help, will get back to you.

Nintex Forms 2013 - Release Notes 

Reply