Using M8 32-bit I have an old project with a linked .accdb file that functions correctly, refreshing when opened or on demand. If I now try to re-link that file or link it in a new project I get the error:
Data source does not contain any rowsets whether I try to link the file directly or as an OLE DB data source.
How to get around this other than by saving the old project as a new project where the link is retained?
Aussie Nature Shots
Are you sure the (.ACCDB) file loads? What happens if you try importing it into 9, 32-bit? If 8 can use the file, 9 should be able to as well.
No it won't import to M9 32-bit. Tried linking and got an empty file. Yet way back I was able to link it in M8 32-bit and that link is still active. I wonder if it has anything to do with the fact that the .accdb table is actually linked back to an .xlsx. This was done for reasons of needing spreadsheet functions in the source .xlsx
Well, yes, linking to XLSX matters. Microsoft gradually drop support for older formats in data access components and that includes external links. I suspect the link in M8 only looks alive, there is no data coming through it, there is just last cached data.
The solution is to migrate the data in the file somewhere - on a system that can still read it (eg, a virtual machine with Windows 7 or an even earlier version of Windows + Jet) - or run Manifold, 8 or 9, on such a system.
It is rather unfortunate that Microsoft is dropping support for older formats in this way, but they do have their reasons to do so (keeping legacy code working in changing environment is frequently not easy).
I suspect the link in M8 only looks alive, there is no data coming through it, there is just last cached data.
Actually it is still working, any changes I make in the XLSX come through to the M8 linked table upon refresh.
If the connection is partly working (eg, we can interact with a table using the name we already know from before, but something fails when we try to discover which tables are there), maybe there is a way to make it fully working. Could you contact tech support with this? We could have a look at the file and try to make it work - at least in 9.
A follow up:
We found the issue. The table linked from XLSX is there and is working but it is getting filtered out from the list of available tables by both Manifold 8 and 9 due to its type, which is not one of the standard types.
We will fix this for 9. For 8, you can use a workaround - if you want to link an ACCDB table linked from XLSX in 8, first create a normal ACCDB table with the desired name, link that in 8, then close 8, delete the ACCDB table and create a table linked from XLSX with the same name, and the connection should work.
Terrific, thanks a lot.