IpeXeuS
03-22-2007, 05:04 AM
Hello there, :cool:
I was wondering here, is there a way to replicate splitted database programmatically? If this not possible, what would you suggest in this case? All advices are mostly welcome and well approciated at all costs. :)
Len Boorman
03-22-2007, 08:05 AM
First question is:
Are you certain you want to go into replication.
I do not know if you can replicate a split database, I do know that replicationis something you should have very good reasons for and certainly something to be avoided 9in my opinion) if possible
L
boblarson
03-22-2007, 08:38 AM
You can replicate a split database, as long as you use a separate front-end for each replica. You don't want to replicate the front-end as it would then have to have EXACTLY the same path to the database. You can't go into a replica and remap the backend as it doesn't allow design changes (which that is considered) so a non-replicated front-end is basically essential.
I had no trouble working with a replicated database for 4 years and we needed to use it as we had laptops that had to have access to the data while disconnected from the network, plus we had a WAN that had users in Sacramento, California and Portland, Oregon and we needed access for all, and Access is NOT meant for use on a WAN, but a replicated database worked well in that situation.
IpeXeuS
03-22-2007, 10:11 PM
Ok, but is this replication possible to complish programmatically from each front end database, when user closes that database?
boblarson
03-23-2007, 03:20 AM
Yes, make sure all forms are closed and run
DoCmd.RunCommand acCmdSynchronizeNow
dfenton
05-22-2007, 03:10 PM
Yes, make sure all forms are closed and run
DoCmd.RunCommand acCmdSynchronizeNow
How does that work fron a front end?
And it seems to me that this doesn't work -- I've tried it from Access 2000 and Access 2002, and both of them hung up without even beginning a synch, as soon as the synch was intitiated.
I think the question is not about how to *replicate* but how to synch.
And that's quite simple. In DAO (the preferred method):
Dim db As DAO.Database
Set db = DBEngine.OpenDatabase([path/name of local replica])
db.Synchronize [path/name of remote replica]
db.Close
Set db = Nothing
That's it. Now, you might want to check for conflicts and do something if ther are any, but that's all it takes to do the synch.
--
David W. Fenton
David Fenton Associates
http://dfenton.com/DFA/