|
Reporting to the MAX Windows products check the
version of the data files for each installed module when CMSMAIN is launched. If a
non-current data file version is detected, CMSMAIN automatically runs the Windows to
Windows conversion program. This will occur the first time into the software after a new
module is installed or an updated version is loaded. When working correctly, the
conversion process is done one time and then does not come up again until another module
or upgrade is installed.
CMSMAIN keeps track of the modules, file names, and version numbers
for each company code in a file named VER???.DBF. The VER???.DBF file is located in the
subdirectory with the company data files. The VERSYS.DBF is located in the directory with
the executable files. When WIN to WIN conversion executes, it writes a backup of each file
needing conversion to a subdirectory named BACKUP.DAT. It then deletes the existing data
file, creates a new data file in the data directory, and copies the records back, field by
field, from the BACKUP.DAT subdirectory. If conversion is interrupted in the middle of the
process, it starts over the next time CMSMAIN is executed. When the conversion program
finds that a file already exists in the BACKUP.DAT subdirectory, it assumes that the file
in the subdirectory is the correct file and does not overwrite it. It then copies the
records from the backup file into the blank file in the data directory. If a file needing
conversion is not found in the BACKUP.DAT subdirectory, it makes the backup copy and
recreates from the copy. Thus, a file that was converted before interruption is recreated
from the copy in the BACKUP.DAT subdirectory and a file that was not converted is
recreated from the original in the data directory. Therefore, no data is lost and all
files are converted. This process works very well for keeping the data file and program
version in sync.
There are situations in which you would want to force a conversion
even though CMSMAIN doesnt detect the need for it. This is the case if you restore
old version data files. CMSMAIN would not detect the older version because it checks the
VER???.DBF which shows the newer version. You can force a conversion by deleting the
BACKUP.DAT subdirectory and the VER???.DBF and VER???.MDX files. The next time you run
CMSMAIN, the WIN to WIN conversion will run and convert the old data files to the new
structure. It is important to delete the BACKUP.DAT subdirectory before forcing a
conversion. Otherwise, the old data records from BACKUP.DAT will overwrite the restored
files in the data directory.
In some installations we have experienced problems in which the
conversion program ran every time CMSMAIN was launched. Some of these problems in early
versions were due to discontinued or changed file names being left in the VER???.DBF file.
This problem has been resolved in the current version so invalid file names are removed
from the file. The only known situation where this can still happen is on networks where
the programs are loaded on each workstation.
Some or
all of the workstations will run the conversion process each time CMSMAIN is run. This is
a problem with the upgrade procedure, not the program. In this situation, each workstation
has its own copies of CMSMAIN, VERSYS.DBF, and VERSYS.MDX and the VERSYS files are not
agreeing with each other. So when an upgrade or new module is installed, you should
install it on one workstation, run CMSMAIN so that the data files are converted, and then
copy the VERSYS.DBF and VERSYS.MDX to a temporary directory on the server. Then install
the programs on the other workstations and copy the VERSYS files from the server to the
appropriate directory on each workstation.
|
|