It sounds like a problem documented in
FIX: Header Corruption Causes END TRANSACTION to Discard Appended Records mskb #
293638.
>I have 3 tables that I need to update in a transaction. I have each table set with buffering. Payments = buffmode 3, PaymentDetails = buffmode 5, AccountsReceivable = buffmode 5. One table loses the updates when END TRANSACTION is issued.
>
>* here is a synopsis of the code that fails.
>BEGIN TRANSACTION
>SELECT Payments
>* There is a new inserted record in this table
>IF NOT TABLEUPDATE(.T.)
> ROLLBACK
> TABLEREVERT(.T.)
> RETURN
>ENDIF
>
>... DO STUFF
>SELECT PaymentDetails
>* There are new inserted records in this table
>IF NOT TABLEUPDATE(.T.)
> ROLLBACK
> TABLEREVERT(.T.)
> RETURN
>ENDIF
>
>... DO STUFF
>SELECT AccountsReceivable
>* There are updated records in this table
>IF NOT TABLEUPDATE(.T.)
> ROLLBACK
> TABLEREVERT(.T.)
> RETURN
>ENDIF
>
>* At this point, all tables have correctly been updated.
>END TRANSACTION
>* Now, the Payments table does not have the new record, but
>* the PaymentDetails and AccountsReceivable tables are correctly
>* saved.
>
>Any ideas here would be greatly appreciated.
--sb--