Skip to main content
Announcements
Accelerate Your Success: Fuel your data and AI journey with the right services, delivered by our experts. Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
bradlocke
Contributor III
Contributor III

Associating Field Names

Hello, everyone.

I have loaded two Excel files. The first file has 437 columns of data with a row of headers (my fields) followed by several hundred rows of data . The second file has 3 columns with 437 rows with the first column of data  matching the column headings of the first file. The second column in this second file defines the fields used in the first file which is necessary. I want to associate the two files by matching the columns/rows in the two files so that I can display the field definition along with the other visualizations when a specific field is chosen from a filter loaded using "$Field".

Hopefully this makes sense and perhaps there is an easier way to do this that I am not thinking about. Thanks in advance.

Labels (1)
1 Solution

Accepted Solutions
stevedark
Partner Ambassador/MVP
Partner Ambassador/MVP

Hi @bradlocke 

You might want to look at the Tag function, as you have a table in the right format it would be a shame not to use it:

https://help.qlik.com/en-US/sense/February2023/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegu...

What I think you are describing though doesn't require an association, rather you want a data island and some set analysis.

The issue is that $Field is a system field, and you cannot create it yourself.

Assuming your metadata table has fields called FieldName and FieldDesc you would have something like this to get the description:

minstring({<FieldName={'$(=minstring($FIeld))'}>}FieldDesc)

As a thought though, if your second table contains all of the fields listed in a table, why would you use $Field for your filter, when you can just use your metadata table? This would then give you the associations you want.

You might want to take a look at my Qlik Sense Data Profiler which uses this technique to profile data in a Sense app:

https://www.quickintelligence.co.uk/qlik-sense-data-profiler/

It is also the basis of how my Instant Sense Application works:

https://www.quickintelligence.co.uk/instant-qlik-sense-app/

Hope that helps,

Steve

View solution in original post

4 Replies
stevedark
Partner Ambassador/MVP
Partner Ambassador/MVP

Hi @bradlocke 

You might want to look at the Tag function, as you have a table in the right format it would be a shame not to use it:

https://help.qlik.com/en-US/sense/February2023/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegu...

What I think you are describing though doesn't require an association, rather you want a data island and some set analysis.

The issue is that $Field is a system field, and you cannot create it yourself.

Assuming your metadata table has fields called FieldName and FieldDesc you would have something like this to get the description:

minstring({<FieldName={'$(=minstring($FIeld))'}>}FieldDesc)

As a thought though, if your second table contains all of the fields listed in a table, why would you use $Field for your filter, when you can just use your metadata table? This would then give you the associations you want.

You might want to take a look at my Qlik Sense Data Profiler which uses this technique to profile data in a Sense app:

https://www.quickintelligence.co.uk/qlik-sense-data-profiler/

It is also the basis of how my Instant Sense Application works:

https://www.quickintelligence.co.uk/instant-qlik-sense-app/

Hope that helps,

Steve

bradlocke
Contributor III
Contributor III
Author

Thank you @stevedark for taking your time to provide me with such detailed information! It will take me a bit to unpack this and I will respond again.

bradlocke
Contributor III
Contributor III
Author

Good afternoon, @stevedark ! Again, thank you for the information. I am using Qlik Sense as part of a very large agency and therefore I am limited as to what I can do. BUT - this expression you gave me did the trick!

minstring({<FieldName={'$(=minstring($FIeld))'}>}FieldDesc)

Thank  you and best regards,

Brad

stevedark
Partner Ambassador/MVP
Partner Ambassador/MVP

That's great. Thanks for letting me know.

Steve