Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Create table box using $table

I wonder whether there is a way to create dynamic table box for all data fields for selected table using $table

Like, you have table a, b, c

In table a, you have field a1, a2, ..., an

In table b, you have field b1, b2,..., bn

In table c,  you have field c1, c2, ..., cn

We can create a list for $Table, which will list all tables in the app now.

if we select table a from $table list, I'd like to show all data field in table box for table a, like

a1     a2     a3     ...     an

I appreciate any thoughts and any ideas. Thanks in advance!

Xianqun

6 Replies
JonnyPoole
Employee
Employee

i haven't seen a way to dynamically create this, and the table box has no conditional show/hide feature to hide certain columns or not.

next best answer is to create a table box with all the columns for 1 table and repeat for the other tables. Put a show/hide condition on the table box so that it only shows if you are selecting the right table name from a list box.

The list box would just be a data island with the table names manually inputted .  Or you can do a input box with a drop down with the same to set a variable (vTable) and use the vTable value to determine which table box shows and hides.

this is probably something you are already using though

mikecrengland
Creator III
Creator III

Try using list boxes instead. One for $Table, one for $Field and one with and expression:

=$(='[' & Only([$Field])& ']')

mike

www.fortunecookiebi.com

marcus_sommer

This isn't possible with a tablebox but you could easily use table-charts. There is already an object available by clicking on "New Object" --> "Structure Table".

- Marcus

Anonymous
Not applicable
Author

Xianqun

Have a look at the the QlikView App - Generic Data Profiler by Steve Dark

It will do what you want plus more.

MarcoWedel

Hi,

one example:

QlikCommunity_Thread_132155_Pic1.JPG.jpg

QlikCommunity_Thread_132155_Pic2.JPG.jpg

hope this helps

regards

Marco

evan_kurowski
Specialist
Specialist

Hello xianqun,

Try this in a Listbox:

=If(GetPossibleCount([$Table])>1, [$Table], Aggr(Only({<[$Field]>} [$Field]),[$Field]))