I've got an Access DB (2002) on my desktop. My DB is divided into
Front-end and Backend portions.
I copy the backend MDB file over to my PocketPC 2002 using ActiveSync 3.5
and this converts the MDB file into the CDB form on the PocketPC. On the
PocketPC, I use this data and modify it. Later, using ActiveSync again, I
copy the CDB file back to the desktop and ActiveSync converts it back to an
MDB file.
When the file arrives back on the PocketPC, it is expressed as an Access 97
file, I believe. So, I open it with Access 2002 and it offers me the chance
to convert the file to Access 2002 format which I do.
This all works - I use it daily.
But, there are two odd things happening which I don't understand.
(1) When I convert the Access97 format MDB (backend file just received from
the PocketPC) file to Access2002 format, it always tells me that, "The
Microsoft Jet Engine Database cannot find the input table or query
'MSysAccessObjects'. Make sure it exists and that its names is spelled
correctly". I ignore this and all seems OK.
(2) In my original DB, before I transferred the backend tables to the
PocketPC and back again, I had relationships between the various tables.
As soon as I began to move the backend tables to the PocketPC and back
again, as described above, I lost these relationships. This means that
when I delete a record from one table on the desktop, Access won't propagate
the appropriate deletions through the other associated tables and I have to
do it manually.
So, my questions:
- Is there a way to suppress or fix whatever is going on it point (1)?
- And, is there a way to preserve or programmatically restore my
relationships in point (2) once I've transferred my backend tables back onto
my desktop?

Signature
Dennis Gallagher
Monroe, WA, USA
david epsom dot com dot au - 29 Mar 2004 22:55 GMT
Access stores an Access project in a Jet Database. If you use
DAO or ADOX to create a new MDB, you get a Jet Database without
an Access project. When the database is loaded into Access,
Access attempts to load the Access project. If it is missing
or the wrong version, Access attempts to build a project in
the current version.
The conversion message that you are getting from Access may mean
that Active Sync has built a new MDB and that the entire Access
project is missing. This should not be a problem.
The relationships are stored or listed in the msysobjects table,
so those two problems are possibly associated. Building a new
database should create a database with an MsysObjects table.
Certainly if I use DAO to create a new MDB, MsysObjects is one
of the system tables that I get.
You need to ask some ActiveSync and PocketPC people if there
are any know problems.
On the Access side, you could
Try to use ADOx and DAO to create new databases, just to see if
you have a strange problem with ADO/DAO/Jet.
Try to change the default database format of Access, to see if you
have a strange problem with the Access Conversion.
And (view system tables, and then try to link MsysObjects in the
suspect database before conversion), to see if it really is missing
in the database created by ActiveSync
(david)
> I've got an Access DB (2002) on my desktop. My DB is divided into
> Front-end and Backend portions.
[quoted text clipped - 34 lines]
> relationships in point (2) once I've transferred my backend tables back onto
> my desktop?
Dennis - 30 Mar 2004 13:32 GMT
Thanks, David. I'm going to see if I can work through your information to
a solution.

Signature
Dennis Gallagher
Monroe, WA, USA
> Access stores an Access project in a Jet Database. If you use
> DAO or ADOX to create a new MDB, you get a Jet Database without
[quoted text clipped - 75 lines]
> onto
> > my desktop?