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: 
theresa_me
Contributor
Contributor

Table lookup

Hey there,

I've got 2 tables: 

Table A, contains the name of the area and a huge list with geopoints (example is the table below).

Table B, has one geopoint per row with only 9 decimal places, ex. given: 

x = [13.302833506,52.488737382]

I would like iterate through Table B and to search Table A for x and return the name to Table B

Any suggestions how I could do that? 

 

Thanks in advance!! 

 

Screenshot 2022-12-22 130318.png

Labels (7)
1 Solution

Accepted Solutions
pedrobergo
Employee
Employee

Hi @theresa_me 

I´m sharing an example app to you .

Using Qlik Scripting you just need to separate Geopoints fields into multiple lines (Table3)

Then you can use Qlik Associative engine or join to first table (Table1) to see the name.

 

[],

 

Pedro

 

 

View solution in original post

3 Replies
pedrobergo
Employee
Employee

Hi @theresa_me 

Your column Geopoints seems to be a polygon and not a list of points, so, if you´re trying to check if single point X is inside the area Geopoints, you need to use the Within geoperation because Geopoints contains only the points on  the edge of area.

Take a look into this: https://help.qlik.com/en-US/geoanalytics/Content/Ref-GeoOperationsService/connector-geoanalytics_ref...

But if I´m wrong and your column Geopoints is list of points you can try the Wildmatch, take a look into this link:

https://help.qlik.com/en-US/qlikview/May2022/Subsystems/Client/Content/QV_QlikView/Scripting/Conditi... 

[],

Pedro

theresa_me
Contributor
Contributor
Author

Hi Pedro,

okay, thank you! It shoud be geopoints! 

So if I want to loop through each row of the dataframe, and then return the name for each match, I have following (wrong) suggestion and I am not really sure how to return the name in the loop:

for each row in Table 2 ('geoLocation')
if (wildmatch('geoLocation', 'Geopoints') then
Left Join(Table 1) )

;
NEXT row

I have loaded both dataframes beforehand into the script

pedrobergo
Employee
Employee

Hi @theresa_me 

I´m sharing an example app to you .

Using Qlik Scripting you just need to separate Geopoints fields into multiple lines (Table3)

Then you can use Qlik Associative engine or join to first table (Table1) to see the name.

 

[],

 

Pedro