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.
David