Sorry bigfoot, but you're really outside my scope of experience. The only thing that springs to mind, from everything I've seen and read, is that either:
a) Your ODBC parms when attempting the update are somehow wrong
b) You're not populating all the fields when updating
If I was you, I would try adding as many diagnostics as possible, and display all fields that are to be updated just prior to the call. You might want to try replacing the update with a straight select. If you have any logging facilities, turn them on, and if possible pause execution just prior to the ODBC call, so that you can see better what is occurring.
Sorry that I can't be more help
Marc