What happens to existing errors when validation rules change

362
5
06-12-2023 10:52 AM
DrewDowling
Occasional Contributor III

If I modify a validation attribute rule are all "validationstatus" values for the feature class reset to validation required?

 

0 Kudos
5 Replies
HusseinNasser2
Esri Contributor

That is correct, when you modify a validation or batch calculation rule, all rows in that table will reset its validationStatus (a field we use to know what to pick up during evaluation) to "dirty" which means mark them as require validation or calculation depending on what rules you have.

 

The next evaluation will pick all the rows and either generate more errors or remove the existing errors if they are not longer valid.

For example:
You have a table with 10 rows and validation rule that return false. (which means all rows are errors) you run evaluate and now you get 10 error features. and all 10 rows says clean (no require validation). If you evaluate again it no-ops and no rows are evaluated. (performance thing)

If you change the validation to return true, we touch all 10 rows to make them require validation. so each row will be evaluated and the row errors will be deleted because the rule evaluate to true. you will end up with no errors and 10 rows that require no evaluation. 

ZachPorteousGHD
New Contributor II

@HusseinNasser2 Is there a way to manually reset the validation status so batch calculation rules fire? the data has changed and I need to re run my rules but I cannot because the validation status field is not editable. 

0 Kudos
HusseinNasser2
Esri Contributor

One way is to make an make a change to a batch calculation rule (e.g. add a comment), this will reset all batch calculation validationstatus. 

The other way to edit to the features  (any field will reset the validationstatus)

0 Kudos
DrewDowling
Occasional Contributor III

@HusseinNasser2Great thank you. One more question, will any error records in the error layers related to that rule get deleted?

0 Kudos
HusseinNasser2
Esri Contributor

correct, the error layer points to the error table. 

0 Kudos