The reason I used SCATTER/GATHER is this:
I've noticed that a field with a rule, like field>0, will default to 0 when
the table is buffered and APPEND BLANK is used. My form needs a "Reset"
capability, where in a new record scenario, the user can set the fields back
to 0. If you do this with REPLACE field WITH 0, the rule fails and no
REPLACE is made. If you SCATTER MEMVAR, which saves the values you DON'T
want to reset, TABLEREVERT() to get rid of the APPENDed BLANK record, Buffer
(5), append a new record, and GATHER MEMVAR, the hope was that the fields
that need to be 0 would be, while the old field values would be preserved.
GATHER MEMVAR does allow the fields that need to be 0 to be 0, (with
m.FieldToBeZero=0 after the SCATTER MEMVAR), but does not preserve the
Turns out that in the command window, this process works, but in the form,
it does not.