David W. Fenton replied to gulu
06-Nov-09 02:31 PM

Replication is for data, not for forms/reports/etc. There is clearly
a design error in your application, since you appear not to have
split your app (with data tables in one MDB and forms/reports/etc.
in another with links to the tables in the back end MDB), or you
have split but you are replicating front-end objects.
Replication is a Jet technology and works reliably only with pure
Jet objects. When applied to Access objects like forms/reports/etc.,
it eventually leads to problems.
Second, there is never any justification for replicating a front
end, as updating it is as easy as providing a new copy. The only
reason to replicate a front end is when you have made the mistake of
not splitting.
Once split and unreplicated, users can create all the reports they
want. However, when a new version of the front end is sent out, they
will lose their reports if they do not save the old file. Because of
this issue, most developers who have to accomodate users who are
creating their own objects will provide a separate MDB for them to
create their custom objects. it is also helpful to periodically check
what reports users are creating and incorporating the broadly useful
ones into the main application front end.
But the first thing that has to happen is getting rid of replicating
front-end objects. You'll never solve your current problem with a
replicated front end, it is dangerous in the long run (corruption
eventually creeps into the objects and you can lose the entire VBA
project), and it serves no useful purpose at all (replication as a
one-way operation is not of much use -- it is only two-way exchanges
that you need a reliable subsystem for synchronizing, and front ends
do not have anything in them that needs to be sent back).
--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/