Replication / Invalid Data Format

R

Rob

I have a db application that needs to be shared among four
laptops. AccessXP (Access 2000 data format); WindowsXP;
Novell 6.0 when connected to the network at the office.

I created the necessary tables, queries & forms and
installed it on a server in the office. Replicas were
then created for each of the laptops, and it has been
working wonderfully for a couple of months (excluding the
initial setup headaches outlined below).

Now they have settled on the reports they need the system
to produce. I attempted to add new pieces to the Master
Replica, and now it generates an "Invalid Data Format"
error any time it tries to execute any of my VBA code. I
deleted the new pieces, but the problem persists. It
won't let me compile the VBA code, either. It appears the
code associated with one of the forms has been wiped away,
but putting the code back in does not appear to have any
affect.

Now when a replica is synchronized with the master, this
fault gets propogated to the replica, and it will not
execute any VBA code either (same "Invalid Data Format"
error).

The real odd part here is we then restored the prior
night's version from the tape backup, and it also will not
execute nor compile any VBA code.

In searching through the newsgroup, evidence suggests the
system needs to be split into a front-end and back-end
structure, so that only the back-end file is replicated.
If I do that, the issue then becomes how do I invoke the
synchronization programmatically?


I'm really concerned about why this error occurs in the
first place. It's worked great for a while, and it has
worked for moving modified forms and queries up the
replicas (I think two forms and one query). This is the
first time I've tried to add any objects, though.

I've found few references to this problem on the internet,
and not much of an explanation as to what's going wrong
and the only clue to solve it seems to involve using
the /decompile command line parameter to force a rebuild
of the VBA pseudo code. Which, for the record, didn't
work.

Any insight would be much appreciated, and if there is no
fix for it, how do I programmatically invoke the
synchronization of the back-end from within the front-end?


For what it's worth, I ran into a problem similar to this
when I first created the system which popped up when I
tried to set up an unreplicated table to store data (user
preferences) locally. I found a workaround by creating
the master and the replicas, then removing
the "replicable" flag from the local settings table,
synching each of the replicas (thus deleting the table
from the replicas) and then manually recreating the table
in each replica. Sounds odd, but it worked.

Sorry for the long post - I was just trying to anticipate
some expected questions. TIA

Rob
 
D

Douglas J. Steele

The application should be split into a front-end (containing the queries,
forms, reports, macros and modules) and a back-end (containing the tables).
Only the back-end should be replicated: you should never replicate program
elements such as forms and reports. Instead, give each person a new copy of
the front-end as appropriate.

Tony Toews has a free utility at http://www.granite.ab.ca/access/autofe.htm
to help ensure all users always have the latest version of the front-end.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top