>Hi!
>
>I have been debugging a problem with Oldval(). On a newly appended record in a row buffered view, that has not been committed yet, when applying OldVal() (in program code) to numeric field that has had a value entered by the user, OldVal() returns .NULL.
>
>Is this correct? OldVal() helps mentions nothing about this and specifies that the function returns a value commensurate with the column's data type.
>
>If I go to the command window and browse the view, OldVal() returns the present value of the field but I assume that browsing the view committed the record hence the old value equals the current value.
>
>Any insight on this will be appreciated.
>
>Many thanks!
It's true. Oldval() for a new uncommitted field is null.
In a row buffered table leaving the row implicitly commits.
PS:Comparisions like if oldval(...) = 0 would fail. Instead nvl(oldval(...),0) works.
Cetin