IDEA
|
YES!! This would be a truly significant improvement to real-world dashboard functionality. Come on Esri....
... View more
02-19-2025
10:07 AM
|
0
|
0
|
364
|
POST
|
As you have discovered, options for accessing and displaying related data is often quite frustrating. Per the suggestions from MobiusSnake, you will need to add a Map Element (with a map that includes your point data and the related tables), as well as the Chart Element to access and display the related data. But you don't set up the filters in the Map Element, rather the only way I found was with "Category Selectors" in either the Sidebar or Header elements. You then use the Selectors to filter the charts by sampling location. And yes, lots of "polishing" and fiddling with the settings to get the dashboard working how you want. One thing that is the most frustrating about related data in dashboards is that you cannot simply click on the sample points in the map to filter the data charts! Here's my stream sampling dashboard, which is very similar to what you describe: Salt Lake County Stream Water Quality Dashboard. p.s. don't forget to add and setup a Mobile View for your dashboard too :^)
... View more
02-19-2025
09:53 AM
|
0
|
0
|
235
|
POST
|
Hello S123 community, This problem is unresolved for me. My SampleIDs are not being calculated. I have to go in and add them manually. Does anyone have an idea as to what changed and how I can fix this? The formula works as expected for other sample data that we collect, that are NOT in a repeat. Connect 3.21.62 Field Apps 3.21.62 HELP!! Thanks, Lynn
... View more
12-03-2024
01:20 PM
|
0
|
0
|
459
|
POST
|
The following calculation has worked perfectly for years, to create a unique SampleID for each record inside a repeat (BATCHDATE is the survey start date): concat('BA ', format-date(${BATCHDATE}, '%Y%m%d '), format-date(once(now()), '%H%M%S%3')) All other calculations inside the repeat are working as expected. No others are based on dates. Given there have been a few weird things going with dates & repeats lately, I assume that's the problem. This issue started sometime after 6/11, which is the last time my sample ID's calculated correctly. Nothing is calculated, it is just Null. I'm running Connect 3.20.63 and Field App 3.19.121 Xlsform attached for reference. Thanks!
... View more
07-17-2024
04:39 PM
|
0
|
2
|
764
|
POST
|
I have two handy expressions that I want to add to the popups for multiple layers in my AGOL map. Rather than build two new expressions in every popup, I would much rather create an expression "library" and then add the expressions to any map popups as needed. This would save so much time. Is this possible? Note: I'm using Map Viewer Classic.
... View more
05-03-2023
12:56 PM
|
1
|
2
|
793
|
IDEA
|
A splash screen and or news banner option would be fantastic!
... View more
03-23-2023
10:39 AM
|
0
|
0
|
2838
|
BLOG
|
I actually like the default filename for photos because it includes both the fieldname and the date, but I just want to also add the site name to help distinguish where the photos are taken. We have a TON of image questions in our survey and it will be much easier to copy paste the fileName formula if I can include the fieldname in the formula. Is this possible?
... View more
03-10-2023
11:06 AM
|
1
|
0
|
9594
|
IDEA
|
Completely agree! The sidebar should stay open until someone chooses to close it.
... View more
01-30-2023
12:21 PM
|
0
|
0
|
1419
|
BLOG
|
I don't see how to "update the services of URLs in a web map" in this new version of Assistant. Will this (incredibly helpful) feature be included at some point? I would continue using the the classic AGO Assistant for this task, but it's not working. AGO does allow me to update the URLs, but the change is not getting pushed out to the web map itself!
... View more
05-05-2022
04:20 PM
|
5
|
0
|
11669
|
POST
|
thanks, it is a geodatabase table. I just exported the points to the file gdb, and now it works. So the problem was definitely the data being in two different gdbs!
... View more
10-01-2021
01:34 PM
|
1
|
0
|
5419
|
POST
|
Thanks, for the scenario that didn't work, the join table does have Object ID....but I think the problem must be that the data is NOT in the same gdb. We do have relationship classes, but I need to join the related data because I want to symbolize the points based on the data.
... View more
10-01-2021
12:21 PM
|
0
|
2
|
5427
|
POST
|
I am having trouble doing a 1:M join in arcgis pro. But the thing is, when I first tried it worked perfectly when I used the Add Join tool. For my first try, I joined 182 points (SampleSites) to a related table containing the recurring sample data that is collected at each site (BacteriaSamples). The resulting join has over 6,000 records with the warning (yellow triangle with exclamation mark) about "duplicate rows." Exactly what I wanted. When I try joining SampleSites to a different table (EcoliRatings_Quarters_Years), it only completes a 1:1 join. According to the Add Join reference page, "the input table must have an Object ID field to perform a one-to-many join.", https://pro.arcgis.com/en/pro-app/latest/tool-reference/data-management/add-join.htm. My data has an ObjectID field. Not sure if this matters, but there is one difference between the two tables. The BacteriaSamples is an Enterprise GDB Table. EcoliRatings_Quarters_Years is a File GDB Table. It was an excel sheet that I imported to my Pro project, using the Excel to Table tool. The point file is also in the EGDB. Somebody please advise, thanks! Lynn
... View more
10-01-2021
11:44 AM
|
0
|
4
|
5450
|
POST
|
The expression is working like a charm in the AGOL popups (see attached screenshot). Portal popups too, with a minor tweak. I started out trying to get this to work in Pro. Then switched to AGOL mainly because I wanted to create a map that's easy to share with colleagues who have limited GIS skills. Ideally, I wanted Arcade to customize symbology on the fly, without needing a new "rating" field, since my data is in an egdb and I don't have full access to easily add new fields. I'm using published REST services in the webmaps, which are referencing the tables that are updated whenever new water quality samples are submitted via Survey123. Plus, I don't really want a "rating" field in my site points, since the value will change based on the samples being evaluated (as currently written, the expression looks at all samples collected at each site, but we'll also want to see ratings based on date ranges, such as comparing 3Q 2020 to 3Q 2019 for example). In an attempt to symbolize the Good, Fair, Poor rating with a field calculation, I just exported a copy of my site points so I could add an "E.coli Rating" field. Unfortunately though, the arcade field calculation in AGOL doesn't allow me to access a FeatureSet from other layers in the map...there's no $map variable! There is the $datastore variable which, "allows you to define a FeatureSet from any sub-layer of the Feature Layer that you’re currently working with in the Arcade editor." I don't even know what that means. Ugh. Even if I could get it to work, the other bummer about field calculations is that they're static. Whereas an arcade expression in a popup (and hopefully someday in the symbology) is dynamic, and will update when the input to the expression updates. Like I said before, custom on-the-fly symbology is the dream! So now, I jumped back into Pro and I'm trying to use my shiny new expression in a field calculation, but I can't figure out how to get at the related tables. I don't know how to access FeatureSets in the field calculation. Dagnabbit!! It's frustrating how the Arcade functionality is different in each platform. Working with related data is so tricky. Maybe its time to abandon Arcade, at least for now. David or @JoeBorgione, do either of you think Python would be a better solution? For now, in order to get these ratings published in a map asap, I'm just gonna crunch all the numbers in Excel and then use a join to "manually" add the ratings into my copy of the site points. Which is ridiculous, I know. I hope this answered your questions David. Thanks again for all your help!
... View more
02-05-2021
09:53 AM
|
0
|
1
|
2587
|
POST
|
Yes, it's the related tables. Neither the $map or $datastore global variables are available to use in a symbology expression, so there's no way to access the related tables. So frustrating!
... View more
02-04-2021
02:58 PM
|
1
|
3
|
2599
|
POST
|
Wahoo, it works! So simple. So sleek. So easy, once you gave me the answer that is, haha. And a different solution than what I originally thought I needed. Thanks so much David :^) I named the new variable "highest_mpn" and gave it a starting value of 100, which is the highest possible MPN for the 'Good' rating. Now if only I could use this expression to access my related records in either a field calculation or to update symbology on the fly, because ultimately I want to symbolize my sample sites based on the rating. I know symbology on the fly isn't available yet with arcade, but I really thought I could use this in a field calculation. There's no $map in the fc arcade window! Here's my updated expression: //store SiteID as a variable so it can be used to query
//the BacteriaSamples table for matching records
var siteId = $feature.SITEID
//access BacteriaSamples table as a FeatureSet;
//include only three relevant fields and filter on QA/QC status
var samplesAll = Filter(FeatureSetById($map, /* Watershed - BacteriaSamples */ "Watershed_962", ['SAMPLEDATE', 'SITEID','MPN_ECOLI']), "QAQC_COMPL = 'yes'")
//use SQL filter statement to access variable with @ symbol;
//essentially this creates a relate
var filterStatement = "SITEID = @siteId"
//filter the table to find related records at each site
var samplesBysite = Filter(samplesAll, filterStatement)
//store count of related records as a variable
var cnt = Count(samplesBysite)
Console("Number of Samples: " + cnt)
//loop through samples to find the highest MPN_ECOLI
//rating criteria: <= 100 'Good'; 101-405 'Fair'; >405 'Poor'
//set starting value of variable to highest possible 'Good' rating
var highest_mpn = 100
var rating = ''
if (cnt > 0) {
for(var f in samplesBysite){
//if sample is higher than current highest_mpn value, update it
highest_mpn = When(f.MPN_ECOLI > highest_MPN, f.MPN_ECOLI, highest_MPN)
}
}else {
rating = "No samples"
}
//designate site rating based on highest_mpn value
rating = When(highest_mpn <= 100, 'Good', highest_mpn > 405, 'Poor', 'Fair')
Console("Highest MPN: " + highest_mpn)
Console("Site Rating: " + rating)
return rating
... View more
02-02-2021
05:57 PM
|
1
|
5
|
9157
|
Title | Kudos | Posted |
---|---|---|
1 | 10-01-2021 01:34 PM | |
1 | 05-03-2023 12:56 PM | |
1 | 03-10-2023 11:06 AM | |
5 | 05-05-2022 04:20 PM | |
1 | 06-05-2018 11:08 AM |
Online Status |
Offline
|
Date Last Visited |
04-10-2025
04:49 PM
|