Are you using a Row or Table buffering? If it's a Table buffering, maybe you're on the wrong row at the time of TABLEUPDATE().
>An application written some years ago suddenly stopped saving records on occassion.
>
>A form that is used to add/change/delete records in a table is used to add a new record. When the Save button is clicked, a method is used (from a class) to update the table with the tableupdate() command. The form uses a view of the table. The tableupdate looks like this: x = tableupdate(0,.t.) - update the current record only, force update. The actual code is:
> select &lcNaView
> l_x =tableupdate(0,.t.)
> if l_x = .f.
> =aerror(laArry)
> if alen(laArry,1) > 1
> do form hmutferr with program(),laArry(1),laArry(2)
> else
> do form hmutferr with program(),laArry(1),""
> endif
> else
> flush
> endif
>If the record does not get saved, it is apparent to the user because the new record does not appear in a grid which displays immediately after the save. Then if the user attempts to add it again, they get an error message that the record already exists.
>
>Usually, they can get out of VFP, restart and add the record successfully.
>
>This has really got me stumped. It doesn't happen all of the time. It has been working perfectly for a couple of years.
>BTY - the databse is located on the server.
>
>Any help would be appreciated...
--sb--