Spatial filter in Experience Builder: How to replicate the functionality from Dashboards?

2829
8
03-28-2023 07:58 AM
Labels (1)
Woodpecker
New Contributor III

Hi everyone, 

I am using Experience Builder and I want to replicate the spatial filter as it works in Dashboards.

The task is very simple. I have 2 polygon layers and by selecting a feature from 'Layer 1', I need to filter all the features from 'Layer 2' that intersect with 'Layer 1'.  This is very simple in Dashboards, but I can't figure it out in Experience Builder. Below is how I would set this up in Dashboards: 

Woodpecker_0-1680014886577.png

I tried to achieve similar functionality with Query widget, which can spatially filter the features and show them among the query results, but not on the map. I configured the Query widget with actions (like below), but in this case it will always be just 1 feature (the selected one) that is displayed on the map. 

Woodpecker_1-1680015439772.png

Surely that has to be possible and I'm missing something very obvious? 

Thanks

Tags (2)
8 Replies
DanJiang
Esri Contributor

Hi @Woodpecker , 

Your solution with the Query widget is in the right direction. To ensure the query results show on the map, please configure the following message-action in the Query widget.

Query - Action - Message action - Records created (trigger) - Map (the target widget) - Show on map (the action)

DanJiang_0-1680507843461.png

 

Woodpecker
New Contributor III

Thanks @DanJiang 

This works somewhat ok, but it does not simply filter the selected features but creates sort of a temporary layer. That being said, I can't click on those features then and lookup their attributes in a popup, etc. 

Is there a way around this? 

Thanks

0 Kudos
DanJiang
Esri Contributor

I am afraid using the Query widget is the only way to apply spatial filters in ExB for now. The popup will be displayed on the query result panel. For other data related connection, you can configure a "Record selection changes" message, to make sure the corresponding record in the original data source be selected when you select the query result records. 

DanJiang_0-1682473760086.png

 

erica_poisson
Regular Contributor

@DanJiang Is better spatial filtering going to be added to Experience Builder, and if yes, what is the timeline for this functionality. Ideally, something exactly like how Dashboards support this would be ideal. I feel like it would also be great to take the results of a Filter widget query and use that to spatially filter other layers in the map. 

Erica
Mmwilliams
New Contributor III

I also would like to know when this functionality will be available in EB.  Seems like a relatively fundamental tool to have and would greatly increase our use of EB.  I'm sure the Query tool is great for some users but for us there is not much use at all for it.  A spatial query/filter where results are reflected on the map would be hugely beneficial.  

CherieBryant
New Contributor III

I also agree the spatial filter function similar to Dashboards should be added. The Query widget doesn't give the entire filtered layer of results. Plus it's too complicated for most casual users to understand without one on one training. I've started about a dozen applications in EB only to shift back to Dashboards for this filter issue, a lack of chart adjustments, or lack of ability to use Arcade in the text widget. 

Mike_Koutnik
Occasional Contributor

I have the same issue. I elected to use ExB for an app because Dashboards doesn't have a user-sortable table widget. The Table widget in ExB supports sorting (though it doesn't offer the same clean, simple style, column and font settings, etc.) so I tried that. But I, too need to be able to spatially filter features in multiple map layers based on a simple selection of single attribute in one layer by the user. So now I need to go back to Dashboards. It would be great to enable users to sort the Dashboards table.

SunniBoulton
New Contributor III

I have the same issue too.

The App I am trying to build is to inform the people where dogs can be taken in our Local Government Area (LGA).  It:

  1. Consists of one dataset, a point file with symbols indicating whether or not dogs are allowed in a number of locations
  2. Contains five pages, each page shows a different geographic extent of our Local Government Area.

I would like the data to dynamically display a list of relevant locations -  according to which page is chosen (ie only show records pertinent to that location).

Perhaps there is a way I haven't explored?  Any help very much appreciated.

0 Kudos