Hello,
I'm having trouble with an attribute rule expression in ArcGIS Pro 2.9. I'm trying to find the nearest hydrant within 50 feet of a water sample site using a buffer, but I keep getting errors that say "field not found" or "expected convertible to geometry".
Here's the code I'm using:
var hydrantLayer = FeatureSetByName($datastore, 'SDEP.SDEADMIN.w_watr_hydrant');
var buffer = Buffer($feature.Shape, 50, 'feet');
var closestHydrant;
var closestDistance = 9999999;
var intersectedFeatures = Intersects(hydrantLayer, buffer);
for (var i in intersectedFeatures) {
var feature = intersectedFeatures[i];
var distance = Distance($feature.geometry, feature.geometry, 'feet');
if (distance < closestDistance) {
closestDistance = distance;
closestHydrant = feature;
}
}
if (closestHydrant) {
return closestHydrant['UID'];
} else {
return null;
}
I've tried changing "geometry" to "Shape" and using FeatureSetByName to reference the hydrant layer, but I keep getting errors. Can anyone help me figure out what I'm doing wrong?
Thank you in advance for your help!