I must be missing something. If SysRevID in before image doesn’t match the server then your change is blocked. If it does match, then the server knows the before image. How is passing it back and forth helping even for field-changed-from logic? Just saves a db read?
Sounds like we’re both spending banwidth to save on their server-side cache efforts.
It’s not that the entrie logic lives in one place or the other. I’m a fan of dividing it up for a better UX.
Screen_Validate methods execute on the client, Field_Validate methods on the on the tier where the field is changed (both server and client), Table_Validate methods on the server. It shouldn’t take a server round trip (not to mention having double the payload for no reason) to find out I’m missing a required field.
Can we at least agree that AppStudio Rules & Events could rather easily be improved for easy screen/field validation to save server trips? Like in rules I can set the style to Warning which makes a control yellow, but I can’t easily display a meaningful warning before save(?) And I can do condition > condition > condition on BeforeUpdate event to check for required fields, but this has no connection to rules(?)
Imagine if there was a validation errors collection that rules can write to and the built-in BeforeUpdate event surfaced those and cancelled the save. Server data rules come down to client by default, user defined rules if you want to, oh and, function rules should allow javascript.
.
Server is the final judge, of course but it’s like first trying to settle before entering a court of law. Saves money and time - just a better experience, even for the inocent user.