This readme-file contains information about the changes and improvements in the dbUpdateUtil. *** Version 2.0 *** The update engine has been replaced completely. Now it uses structure commands whereas before it used the make_file command. This improves the update a lot. Further more only changed database files are updated. This also makes it possible to expand the update to handle driver based database files but is not yet ready. Since the make_file command has been replaced it is now possible to use @ in field names. A test functionality as been added, so you can compare databases and see what would have been changed by the update. No changes are made during a test update. A test-report is written in the same directory where the filelist.cfg are placed. The filename for the report is TESTUPD.TXT. The Known Issues command DELETE is now obsolete since the test update reports these changes. MAX_RECORDS is no longer examined its filesize. The update is now based on LOGICAL_NAME where earlier versions of dbUpdateUtil based it on ROOT_NAME. This makes it possible to report changes for alias files too. The same physical file is only updated once since the first update of the database file would cause the update of the same physical file to end up with no changes (whether or not the following logical_names are aliases or the “physical” file entry). But during a test update alias files would be reported with all the changes. DEF files have been replaced with NTA, NTB and NTC files for database description. These files are also text files that can be read in any text editor i.e. Notepad. NTA files describe the database file type and other properties. NTB files describe the fields for the database file and NTC describe the indexes. *** Version 1.2 *** I have replaced the File_exist command to my own routine AKE_FileExists (code-idea from Stures SEQ_FileExists). The only difference is that I use a specific channel 9 to do the work. For some reason File_exist does not function correctly. It sometimes indicates that the specified file does not exist even though it does? (There where no difference between Novell and Win NT either). MAX_RECORDS is examined for its filesize to se whether or not it is big enough to hold the dataset after importing the data to the newly constructed datafile. If there is 15% or less free space left the MAX_RECORDS is set to 140% (increased with 40%) of the actual use of records. This is done before the datafile is reindexed. In the earlier version of dbUpdateUtil the MAX_RECORDS was reset to whatever the .DEF file had stored leading in index-problems during the update of large databases. dbUpdateUtil now support full-length DataFlex-files (up to 16.7 mil. records). In the generation of initialise files it is now possible to indicate whether a record is to be initialised if the record does not exists or if it has to be initialised by force. This mean that the default behaviour of the dbUpdateUtil is only to initialise the record if it does not already exists where in the earlier version this record was always initialised (forced). Improved the generation of initialisation-files so they are based on field-names. This improves backwards comparability. Improved the reindex-procedure so all indexes of a datafile are set to there original state before the strucure_end command. This improves the reindexing of online-indexes since the dataset only has to be read once. In return an errormessage indicating that a index has failed to be reindex correctly is no more able to inform which of the indexes that has failed.