Submitted by jimspoon on 2023/04/11 23:56

Inevitably there will be times when I make changes to one version of an IQ database before the changes from another computer on the network have been synced to the computer I'm using.  Then I'll have two or more databases with data that are different to some degree.  I'll wonder what changes I made on the other computer that are not in the database I'm currently using.  And as a practical matter, I might just lose those changes altogether.  I just opened up my laptop version of a database alongside the latest conflicted version from the desktop, in two IQ instances.  In each instance, I've opened up a grid showing as columns Item, ItemCreated, ItemModified, and IDItem.  I've tried sorting in descending order by ItemModified, and also by IDItem.  In many cases, for the same IDItem, the ItemModified is the same - so I'm assuming there is no difference between the two databases with respect to those items.  And as I scroll down the grids sorted by IDItem in descending order, I find two items with the same IDItem number, but the ItemModified values are different.  So I assume that in file with the later ItemModified date, some change has been made to that Item.  (Although in this case, it's not in the Item value.)  These field values for these two items could be compared to find what change was made.

Of course if new items were created on the desktop, and these were not synced to the laptop before new items were created on the laptop, I guess then you'd have items that would have the same IDItem number, but would probably have entirely different data.  And the same would apply to all items added after that on either computer.  Perhaps items that were otherwise equal would have different IDItem numbers.

Would it be possible to create a diff and merge tool that allow a user to see the differences (missing items, item changes) from one computer (e.g. desktop) and then merge the wanted changes into the database on another computer (e.g. laptop)?  Or would it be too big a job?

 

General Discussion