You have a View and vView.A is in column one of the grid. All the values in vView have not been updated yet. You want to check a new value against the one in the disk( server ). cField= vView.A IF GETFLDSTATE(cField) > 1 lChg = EVALUATE(cField) <> OLDVAL(cField) IF lChg && here do your check ELSE lChg = !SETFLDSTATE(cField,1) && assert no change ENDIF ENDIF After that you can mark this field as updatable and update accordingly. Or revert the changes.
On Thursday, November 28, 2013 4:41 PM, Gene Wirchenko <[email protected]> wrote: At 03:26 2013-11-28, Peter Cushing <[email protected]> wrote: >>Gene Wirchenko wrote: >>>I want to use BeforeRowColChange to do the row-level validation, >>>and when it fail, put the focus on one of the controls involved in the error. >>> >>>[snip] >>Don't think that will work. You explained a rule that said say >>columns A + B = C + D. If you have a validation rule that puts you >>on A every time, when you want to change D, you will not be able to >>do it. If you just allow full > > Yes, I would. A row-level validation rule will not stop focus >from leaving a control (unless it is also a row change and an error >condition). The row-level validation is executed only when there >might be a row change. It will not stop focus changes within the row. > >>access to the row, and check every time they enter a value then the >>errors can be corrected. > > Aren't you contradicting yourself when you state "check every >time they enter a value"? If I check every time, then it will throw >an error if I change one of the values. Correcting an error might >involve more than one of the controls. That is why the validation is >row-level; it does not make sense at the individual control level. > > My problem is getting the current values of the >controls. Other than that, my code works. Unfortunately, not having >the current values of the controls makes a mockery of validation and >is a show-stopper. > >Sincerely, > > >Gene Wirchenko > > >_______________________________________________ >Post Messages to: [email protected] >Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox >OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech >Searchable Archive: http://leafe.com/archives/search/profox >This message: http://leafe.com/archives/byMID/profox/ >** All postings, unless explicitly stated otherwise, are the opinions of the >author, and do not constitute legal or medical advice. This statement is added >to the messages for those lawyers who are too stupid to see the obvious. > > > --- StripMime Report -- processed MIME parts --- multipart/alternative text/plain (text body -- kept) text/html --- _______________________________________________ Post Messages to: [email protected] Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech Searchable Archive: http://leafe.com/archives/search/profox This message: http://leafe.com/archives/byMID/profox/[email protected] ** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.

