iData 2 lets you synchronize pairs of datafiles. This makes it easy to have one copy on a desktop machine and another on a laptop, or on a different desktop machine, and keep the two datafiles in sync, even when changes are made to both copies.
The synchronization process requires that we begin with a single datafile, make a copy of it, and add a way of identifying that the two datafiles are synchronize-able. This last is accomplished by adding an unique internal identifier, the "Sync ID", to each of the datafiles.
NOTE: Once a datafile has a Sync ID, it is no longer possible to add or delete fields, so be sure that your datafile has the exact field structure that you require before creating a sync file for it.
To create a sync file:
1. If possible, network the machines together that will have the datafiles. If not, you can save the sync file to another location on your current machine and move it later.
2. Open the original datafile in iData 2 on either machine.
3. Choose Create Sync File... from the File menu, read the instructions in the dialog sheet that comes up, and click the OK button.
4. In the Create New Sync File dialog that comes up next, select the location where you want to save the sync file, modify the datafile name (if desired), and click the Save button.
Once you have made changes to one or both
datafiles, network the machines that have them, or place both on the
same machine, and synchronize them.
If at
some future time you no longer want the sychronized datafiles to remain
synchronized (and would like to be able to add or delete fields), you
can remove the Sync ID.
1. Open one of the datafiles in iData 2. We will
refer to this as the "local datafile".
2. Make sure that the other datafile is closed.
We will refer to this one as the "remote datafile".
3. Choose Synchronize Datafiles...
from the File menu.
In the following dialog, click the Continue
button.
4. In the Open
dialog that comes up next, select the remote datafile.
If you select the wrong datafile,
you will see the following error message, showing the name of the
datafile that you selected. In this case, click the OK button and try
again.
5. Once the
remote datafile has been selected, iData will look in both datafiles
for changed records. Changed records will be updated in the local
datafile as shown below:
a. Any records that have been changed only in the remote datafile will
be changed to match in the local datafile.
b. Any records that have been added to
the remote datafile will be added to the local datafile, as well.
c. Any records that have been deleted
from one datafile and have not been changed on the other one will be
deleted from both. Records that have been deleted from one and changed
on the other will be retained in both.
d. Any records that have been changed
in both datafiles must be synchronized manually, as explained below. If
there are no such records, the synchronization process is completed at
this point, and both datafiles will be updated on disk.
Manual
Synchronization:
When changes have been made to
the same record in both datafiles, iData has no way of deciding which
changes to keep and which changes to ignore. Therefore, you will be
given a chance to compare all such records in both files and to
manually update the local datafile however you wish.
After all automatic sychronization changes are completed, if any manual changes are required, iData will open the remote datafile for you. "-REMOTE" will be added to the file name in the title bar of the remote datafile, to make it easier to identify.
When the remote datafile opens, most of its toolbar buttons and menu items will be disabled, and its Find Box will be blacked out.This is because no changes can be made to the remote datafile. All changes must be made in the local datafile, then both datafiles will be updated on disk to match the local datafile. Furthermore, you will not be able to manually navigate among records in the remote datafile.
The way iData controls the manual
synchronization process is by opening a Synchronize Records window, as shown
below:
The text at the top of the dialog
explains the process. Notice that record numbers may not match in the
two datafiles. This is because records may have been reordered in
either datafile since the last time they were sychronized. iData uses a
unique identifier attached to each record, rather than relying on
changeable record numbers.
1. Select a pair of records in the list to cause those two records two be shown in the two datafiles. You may click directly on a pair in the list, or you can use the Previous and Next buttons to move from record to record.
2. Make any
desired changes to the record in the local datafile, referring to the
matching record in the remote datafile as necessary. When you are done,
click the Finished With This Record
button, and the record pair will be removed from the list.
3. Continue
with the process until no more records remain in the list.
4. Click the Done button. The remote datafile
will close, and both datafiles will be updated on disk.
You can abort the synchronization
process either by clicking the Cancel
button in the Synchronize Records window or by closing either datfile window.
iData 2 recognizes a synchronized
datafile by an internal Sync ID that is stored in each of a pair of
synchronized datafiles.
Synchronized datafiles cannot have fields added or deleted. If you have a synchronized datafile that no longer needs to be synchronized, and you want to modify the field structure, you can remove the Sync ID, as follows:
1. Open the datafile that you want to de-synchronize. Make sure that you have the correct datafile.
2. Select Remove Sync ID in the File menu.
3. Click the Remove It button.
Once the Sync ID has been removed, this datafile will no longer synchronize with its current Sync File.
This change will become permanent the next time you save changes to the datafile. If you decide that you've made a mistake, close the datafile without saving changes.
If both datafiles still exist, you will
probably want to remove the Sync ID from the other datafile, as well.
If you make changes only to one of a pair
of formerly synchronized datafiles, you can delete the other one and create a new sync file for the modified
datafile.