<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2654.45">
<TITLE>RE: [AccessD] Manual Database Synchronisation</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=2>Are you going to use local PC's time/date? If so will you have to maintain the correct date/time on all these machines? I have heard horror stories of machines with incorrect dates wrecking havoc on DB update schemes.</FONT></P>

<P><FONT SIZE=2>Jim Hale </FONT>
</P>

<P><FONT SIZE=2>-----Original Message-----</FONT>
<BR><FONT SIZE=2>From: Joshua B [<A HREF="mailto:jbusergroups@optushome.com.au">mailto:jbusergroups@optushome.com.au</A>]</FONT>
<BR><FONT SIZE=2>Sent: Tuesday, May 13, 2003 5:16 AM</FONT>
<BR><FONT SIZE=2>To: accessd@databaseadvisors.com</FONT>
<BR><FONT SIZE=2>Subject: [AccessD] Manual Database Synchronisation</FONT>
</P>
<BR>

<P><FONT SIZE=2>Group:</FONT>
</P>

<P><FONT SIZE=2>Hoping someone may have a few ideas on this. I am in the process of setting up specifications for the modification of a clients database. The client has offices in five different locations around the world, and a database that has been shared up until now using Access's in-built replication tool. At the end of each trading day, the database would be sent to the other offices, and they would synchronise. The db has now grown to the size where this is not possible anymore (It weighs in at around 5 megabytes zipped up, and the offices that don't have the luxury of cable are starting to complain). They wish to send only the new and updated records back and forth.</FONT></P>

<P><FONT SIZE=2>Eventually they will be looking at a web-based solution, but this will not be happening for at least a year, if not more.</FONT></P>

<P><FONT SIZE=2>My idea is to time-stamp each record when it is updated (or added), and then use this time stamp to determine which records need to be sent to the other offices. I have been assured that the offices will "never" (I know that thats a dirty word) be working on the same record on the same day, so there will be no need to update on a field-by-field basis, I'll simply overwrite the whole record with the updated information.</FONT></P>

<P><FONT SIZE=2>In the meantime, my main concern with setting this up is how I handle the primary keys for records. Up until now, I have been a firm believer in using an autonumber for a primary key. Of course, this will not be possible in this scenario. When a record is added to the system and sent to all the other offices, the primary keys will have to match, so that my code will be able to match up the updated records when imported at the other end. The best idea I have come up with is to use a random autonumber, and attach a time-stamp to the end of that, and use it as a primary key. For there to be a conflict, it would mean that two offices have generated a duplicate random autonumber at the exact same second. I'm quite happy with the odds of that never happening.</FONT></P>

<P><FONT SIZE=2>I just thought I would throw this in there, with the hope that maybe someone has done something similar in the past. And of course, there is the likely possibility that I am missing some incredibly easy way of doing this.</FONT></P>

<P><FONT SIZE=2>Thanks for reading :-)</FONT>
</P>

<P><FONT SIZE=2>Best regards.                            </FONT>
<BR><FONT SIZE=2>Joshua B</FONT>
<BR><FONT SIZE=2>jbusergroups@optushome.com.au</FONT>
<BR><FONT SIZE=2>2003-05-13</FONT>
</P>
<BR>
<BR>

<P><FONT SIZE=2>_______________________________________________</FONT>
<BR><FONT SIZE=2>AccessD mailing list</FONT>
<BR><FONT SIZE=2>AccessD@databaseadvisors.com</FONT>
<BR><FONT SIZE=2><A HREF="http://databaseadvisors.com/mailman/listinfo/accessd" TARGET="_blank">http://databaseadvisors.com/mailman/listinfo/accessd</A></FONT>
<BR><FONT SIZE=2>Website: <A HREF="http://www.databaseadvisors.com" TARGET="_blank">http://www.databaseadvisors.com</A></FONT>
</P>

</BODY>
</HTML>