Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Write Table now available in Qlik Cloud Analytics: Read Blog
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

tMAP: Check for value in an array

Hello everybody,

 

My datasoruce is a questionnaire and we using a rest API to get the data (json). Now I have a problem with Checkbox questions. For example:

The data source contains a questions with 5 answers. Each answer has it's own checkbox. If someone choose 3 of them, I get an value array with 3 of 5:

 

"What are your plans for today?.": [
"Stay at home",
"Working ",
"Eat, sleep, repeat"
],

 

So in tMap the field of the input table is the question " What are your plans for today?" and the values are "Stay at home","Working ","Eat, sleep, repeat". But the Output table should have a field for each answer possiblity :

Field one: Stayathome

Field two: Working

....

now when I have the case that someone choosed checkbox "Stay at home", I want a "X" in my Output field Stayathome. I've tried to solve that issue with a if expression. But it doesn't work. So Talend has the check, if the array inlcudes "Stay at home" (i.e.). If true "X", else "  ".  Does anyone have a solution approach?

 

thanks,

Christian

Labels (4)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

I think a conditional operator is ideal for your scenario.

You should be able to include something like this in your tmap expression assuming your column datatype is string,

row1.plans.toLowerCase().contains("stay at home")?"X":"" 

0683p000009LrAk.png

 

 

 

 

 

View solution in original post

2 Replies
Anonymous
Not applicable
Author

I think a conditional operator is ideal for your scenario.

You should be able to include something like this in your tmap expression assuming your column datatype is string,

row1.plans.toLowerCase().contains("stay at home")?"X":"" 

0683p000009LrAk.png

 

 

 

 

 

Anonymous
Not applicable
Author

Hello,

 

I've already got it. But you're right.

 

Cheers,

Christian