Select to view content in your preferred language

ExB filter data and populate attributes

322
2
Jump to solution
06-14-2024 08:24 AM
Labels (1)
Heberlyeng
New Contributor II

Convoluted question but here it goes.  🙂

I have multiple work groups that need to be isolated from each other regarding mapping data.

Group A cannot see or edit group B data.

I would like to use a single map and multiple experiences.

Here is what I have so far:

One map that all feature layers and tables have a field call "Workgroup" with a coded domain for each workgroup.

I create an Experience for workgroup A,  Add the Master Map, filter the tables and layers under the data section for all layers and table. And voila, I have an experience that only workgroup a can see and edit. 

Then copy the experience, modify the filter for workgroup B and now they have their own data visibility.  Wash rinse repeat.

The problem comes in when a workgroup member adds a new feature.  The "workgroup" field shows all possible workgroups so they could accidently add items to a different work group.  (I need to avoid this possibility)

So, is there a way to:

Set an environmental variable in ExB that I could then use to prepopulate the Workgroup field?

or

Filter a domain?

or

Some kind of lookup table for values that could be filtered?

or

Some other way to get the workgroup field to auto populate based on which experience is being used.

I have thought about using related tables but the way that the related table information in displayed would make this cumbersome to use and it would still allow for accidentally editing a workgroup to another.

Or is there some other workflow that would be more appropriate to do what I need?

FYI, this all AGOL and ArcGISPro, latest versions.  No enterprise.

TIA,

JB

 

 

0 Kudos
2 Solutions

Accepted Solutions
AlixVezina
Esri Regular Contributor

Hi @Heberlyeng,

Have you looked into Hosted feature layer views?

These will allow you to generate different views of your master layer and filter out any data and fields each workgroup should and should not see. You can then configure the symbology and Forms to customize the editing experience for every layer.

I created a very basic sample to illustrate how this could work:

Notes:

  • When you create the Views for each layers belonging tor each of your workgroups, filter the data based on your workgroup domain values, and hide any fields not associated to the current workgroup for the view.
  • Make sure to enable editing on your Hosted feature layer views; they are not editable by default when you create them.
  • You’ll want to author the editing Feature templates for your View layers. Right now, the easiest way to achieve this for will be using the Field Maps Designer application. (Not intuitive, I know – this functionality will be available in Map Viewer soon)
    AlixVezina_1-1719080526618.png
  • In Experience Builder, when you add a web map as a data source, you can choose which layers from the map are available.
    AlixVezina_0-1719080456181.png

     

    I hope this helps!

    Let me know if you have any further questions regarding how this was setup.

View solution in original post

0 Kudos
Heberlyeng
New Contributor II

Thank you for the information.  I can definitely see how that would work.

What I ended up doing was creating a "Workgroup" Feature layer and using it as basically a look up table to auto-populate the Workgroup field with an arcade expression.

In the data definitions of the Exb for WG1  I filter all layers by "Workgroup 1" and in the Exb for WG2  I filter all layers by "Workgroup 2".  Both ExB's use the Master Feature layers.

I like your solution and when I get a chance, I will definitely Test it out.

Thanks for the help.

JB

View solution in original post

2 Replies
AlixVezina
Esri Regular Contributor

Hi @Heberlyeng,

Have you looked into Hosted feature layer views?

These will allow you to generate different views of your master layer and filter out any data and fields each workgroup should and should not see. You can then configure the symbology and Forms to customize the editing experience for every layer.

I created a very basic sample to illustrate how this could work:

Notes:

  • When you create the Views for each layers belonging tor each of your workgroups, filter the data based on your workgroup domain values, and hide any fields not associated to the current workgroup for the view.
  • Make sure to enable editing on your Hosted feature layer views; they are not editable by default when you create them.
  • You’ll want to author the editing Feature templates for your View layers. Right now, the easiest way to achieve this for will be using the Field Maps Designer application. (Not intuitive, I know – this functionality will be available in Map Viewer soon)
    AlixVezina_1-1719080526618.png
  • In Experience Builder, when you add a web map as a data source, you can choose which layers from the map are available.
    AlixVezina_0-1719080456181.png

     

    I hope this helps!

    Let me know if you have any further questions regarding how this was setup.
0 Kudos
Heberlyeng
New Contributor II

Thank you for the information.  I can definitely see how that would work.

What I ended up doing was creating a "Workgroup" Feature layer and using it as basically a look up table to auto-populate the Workgroup field with an arcade expression.

In the data definitions of the Exb for WG1  I filter all layers by "Workgroup 1" and in the Exb for WG2  I filter all layers by "Workgroup 2".  Both ExB's use the Master Feature layers.

I like your solution and when I get a chance, I will definitely Test it out.

Thanks for the help.

JB