Code to make a field from one service/feature to show up in a pop-up of another service/feature that is in the same map?

144
2
01-13-2021 09:20 AM
Labels (4)
ElizabethHovsepian
New Contributor III

How can I write code to make a field attribute from one service/feature to show up in a pop-up of another service/feature that is in the same map in ArcGIS online? 

I am not a developer and have tried to follow some videos and tutorials, but all seems too advanced for me.  No intersects/geometry involved, just using services/fields that have a relationship. This data is being collected in Survey123.

My scenario:  I would like the field attribute "Day of Work" that is in Line Clearance Contractor-Daily Trimming Report to show up in the pop-up of the repeat location service. 

ElizabethHovsepian_0-1610556226852.png

I am creating a dashboard using this information and having it in one spot would be so very helpful. 

Thanks, Elizabeth 

Reply
0 Kudos
2 Replies
jcarlson
Regular Contributor

It's a little hard to know without seeing the full schema of your layers. Are they truly related, and part of the same service, or do they simply share a field?

I've got a very similar solution in one of my webmaps I'd be happy to share with you, but it depends a lot on how the layers are set up.

 

The Not-Actually-Related Layer Solution

Given two layers, parcels and parcel sales, I can use the following Arcade expression on the parcels layer to bring in an attribute from the sales table.

// Assign feature id field to variable
var id = $feature.pin

// Get other layer
var otherLayer = FeatureSetByName($map,"Parcel_Sales")

// Filter other layer by matching id
var otherFeatures = Filter(otherLayer, 'property_key = @ID')

// Sort returned features
var sortedFeatures = OrderBy(otherFeatures, 'sale_date DESC')

// Grab the first feature in the FeatureSet
var f = First(sortedFeatures)

// Return sale amount of latest sale
return f.sale_amount

 

Here's how it looks in action:

jCarlson_1-1610570845075.png

 

Of course, there's no reason some of those functions couldn't be combined into one, but I kept them all separate for clarity.

- Josh Carlson
Kendall County GIS
ElizabethHovsepian
New Contributor III

Thanks Josh! I will give my best go at it and see if I can follow your example to get what I am striving towards!

Elizabeth

Reply
0 Kudos