I have a use-case in which I would like to use a data view in a data_filter url parameter.
In the filter, I want to populate the count of a data view that is created from a layer.
The url parameter would be placed inside of the web map popup, and lead the user directly to the filtered page for that data view text.
I am able to successfully filter an operational layer in the application when I refer to the <webmap_id>-<layerid>, in this case:
dataSource_1-18a09b4c123-layer-1
I am NOT able to filter the data view created from that layer:
I obtained the data view's id from the app's item_data in the form of a json text (using arcgis assistant).
In this case, the view's id is:
dataSource_1-18a09b4c123-layer-1-dataView_1:
The json shows this configuration for how the text is derived in the app:
"text": "<p>Arrivals: <exp data-uniqueid=\"30b6aeb7_1db3_adce_2edf_80afb82fe54f\" data-dsid=\"dataSource_1-18a09b4c123-layer-1-dataView_1\" data-expression=\"%7B%22name%22%3A%22%20%22%2C%22parts%22%3A%5B%7B%22type%22%3A%22FUNCTION%22%2C%22exp%22%3A%22COUNT%22%2C%22dataSourceId%22%3A%22dataSource_1-18a09b4c123-layer-1-dataView_1%22%7D%2C%7B%22type%22%3A%22OPERATOR%22%2C%22exp%22%3A%22(%22%7D%2C%7B%22type%22%3A%22OPERATOR%22%2C%22exp%22%3A%22)%22%7D%5D%7D\"><span contenteditable=\"false\"> </span></exp> </p>",
Out of that piece of json, I'd think the 'data-expression' string would be relevant to grab for the url parameter to control the dynamic text.
Here is that string for better visibility:
{
"name": " ",
"parts": [
{
"type": "FUNCTION",
"exp": "COUNT",
"dataSourceId": "dataSource_1-184ce793cfa-layer-9-dataView_1"
},
{
"type": "OPERATOR",
"exp": "("
},
{
"type": "OPERATOR",
"exp": ")"
}
]
}
I am using ArcGIS Enterprise 11.2
At this time, this is the only related post:
I would appreciate anyone's help:
Hi @AndresCastillo,
I want to clarify the question. When using URL to filter the data view, is the result of the Text expression not filtered?
Thanks,
Ke
Thank you @Ke_Xu for your inquiry.
My main issue is that:
data views that are defined for a layer within Experience Builder do not seem to support being controlled by url parameters.
Hence, the example I gave where:
The main layer (dataSource_1-18a09b4c123-layer-1) works with a url parameter, but
The data_view (dataSource_1-18a09b4c123-layer-1-dataView_1) defined from the main layer is not able to be controlled with a url parameter.
The only reason I gave the example json of the dynamic text is because that is where ExpB seems to be grabbing the dataSourceId to be able to control the data_view.
Alternatively, it appears that the url parameter cannot support data_views as the layer to pass into the data_filter.