Bug ID Number |
BUG-000174676 |
Submitted | February 28, 2025 |
Last Modified | March 24, 2025 |
Applies to | ArcGIS Pro |
Version found | 3.2.1 |
Operating System | Windows Server |
Operating System Version | 2016 64 Bit |
Status | As Designed
After review by the development team, it has been determined that this behavior is as designed. See the Additional Information section for details.
|
Additional Information
This is the intended design, but the rule is written incorrectly. A literal value cannot be returned if no field is assigned.
Currently, the rule is not assigned to any field. However, there is an else statement that may execute and return a value of 101. If that branch is executed, 101 is returned without a designated field to store it.
var gID = $feature.Foreign_Key
var related_Features = Filter(FeatureSetByName($datastore, 'cities', ["CITY_FIPS", "STATE_CITY"]), 'GlobalID = @gID')
var test = First(related_Features)
if (!IsEmpty(test)){
return {
"result" : {"attributes" : {"XY" : test.CITY_FIPS, "STATE_CITY" : test.POP1990}}
}
} else {
return 101
}
The user need to specify which field to return the 101 to or simply if they don't want to do anything replace it with return;
var gID = $feature.Foreign_Key
var related_Features = Filter(FeatureSetByName($datastore, 'cities', ["CITY_FIPS", "STATE_CITY"]), 'GlobalID = @gID')
var test = First(related_Features)
if (!IsEmpty(test)){
return {
"result" : {"attributes" : {"XY" : test.CITY_FIPS, "STATE_CITY" : test.POP1990}}
}
} else {
return;
}
Workaround
As a workaround, create multiple rules for one table, where each rule will dedicatedly calculate the values for one field.
Steps to Reproduce