When using Microsoft Access for Microsoft 365 (16.0.12827.20328) 64-Bit as a front end for linked tables to an IBM iSeries database using odbc some columns are missing.
The ODBC drivers all point to same file named cwbodbc.dll but can be called either:
- IBM i Access ODBC driver
- IBM Client Access ODBC driver
- IBM iSeries Access ODBC driver
We recently did a refresh/relink on the shared tables and they no longer work as expected.
However we I have a backup of the same accdb database from a week ago and it works correctly, using exact same connecting string and system dsn settings.
I tried a pass-through with exact same connection settings and it works showing all columns. However I need it to be editable, so we require linked table method.
It seems to relate to the odbc property setting (from https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_74/rzaik/connectkeywords.htm) ConvertDateTimeToChar=4 (map timestamp to char). When I change this back to default value the linked table now opens with all columns. However on editing a table with a timestamp column I get the error:
"Write conflict, this record has been changed since you started editing. Another user has changed the record since current user started editing. "
Microsoft documentation suggests using the Date/Time Extended data type which included fractions of seconds but it’s not available on my version of access (which is the latest).
How can I get these iSeries linked tables working again in Microsoft Access?