The default installation folders 

System Five 

Running the software installer: 

We provide an installer to setup our software on client servers and workstations. The installer is download or copied to the client machine and then run as an Administrator to perform the installation of all the required files and shortcuts. 

The Installer includes options as shown below: 

Graphical user interface 
Description automatically generated 

By default, both Live and Training options are selected. These options allow for the installation of the Training on specific machines that will be used for that purpose. Some clients may not want to install the Training version on all their computers. 


Our software installer creates a default folder structure on the client computer. This folder structure looks like this, if the option to include the Training is selected during the installation process. 

 

This is what the folder structure should look like, there should not be any other folders or files within the System5 folder. If the option to install the Training is not selected, then the TrainingBin folder will not be present. 


The next step in the process is to create a data set for the Live and optionally the Training. This process will result in the following changes to the folder structure on the Server or functional server in a workgroup installation, provided the process is followed correctly. 

 

The names of the folders for the data are specific and should be used consistently so that our team members can find and work with the information on our client’s machines and networks. There should not be copies or zip files or any other folder or files in this structure, they only create confusion and potentially problems with the operation of the software. 


Upgrading and temporary backups 

First important point: There is a major difference between an Upgrade and a Patch. 


Updated = A newly released version that contains database structure changes and new data version. These are usually accompanied by a new suite of features and always have a change in the version numbering structure. Example: If a client is currently running version 6.1.2.x (The last digit in not important) and they are being upgraded to version 6.2.2.x or 6.2.4.x, then that constitutes a major upgrade in which a Data Conversion will be required. 


Patch = A new build of an existing version that does not contain any changes to the data structure and does not require any data conversions. Example: A client is running 6.2.4.21 and they are being patched with an incremental build of 6.2.4.259. As you can see the first 3 digits of the version number have not changed, only the last digit has changed. That is the easiest way to differentiate between an Upgrade and a Patch. 


Installing an Upgrade 

The upgrade installer or the FTP Update option can both be used to perform an Upgrade, clients that are comfortable with the process can self server, clients that are not can request our Customer Care Team’s assistance. In either case the process of installing the upgrade is the same. 


It is always the best practice to create a backup copy of both the data and bin folders prior to upgrading a client’s system to a newly release version 


The data and/or trainingdata folder(s) can be copied in place and likewise the bin and/or trainingbin folder(s) Assuming an Upgrade of both, the result would look like this on the Server. 

Graphical user interface, text 
Description automatically generated 

Each of the source folders has been copied and they appear as the original folder name with “ – Copy” added to the end. This is clear and understandable to anyone viewing the folder. 


Once these copies have been created, the installation of the Upgrade can proceed. The installer will update the original folders, bin and/or trainingbin, based on the selection made in the installer. 


Once the installation of the new version is complete, the application, either trainingbin\systemfive.exe or bin\systemfive.exe can be run using the existing desktop shortcut. The system will initiate the Data Conversion as required and that must complete prior to any other client machines logging in. 


If something goes wrong and the data conversion fails, then the easiest thing to do to recover, is to delete the bin and/or trainingbin and rename the bin – Copy and/or trainingbin – Copy back to their original names and do the same thing for the Data - Copy and/or Trainingdata – Copy folders. 


Typically, if a data conversion fails, there is something wrong with either the structure or contents of the existing data. Therefore, with the permission of the client, it is a good practice to make a copy of the data that failed to convert and place it somewhere on the network so our IT Team can retrieve for further analysis and resolution of the problem. This copy should not be left in the default folder structure, it should be moved out of that folder structure so that it does not interfere with or add to the client’s backups. A good practice would be to move the copy to the “C:\Windward\ “ folder. This will be easy for our IT team to find and it will be outside the folder structure that the software needs to operate. 

If everything goes according to plan and the data conversion is successful, the copies of the data are no longer required. They can be moved to a different location for archival purposes or deleted.  


NOTE: Once the new version processes a single transaction, the copy of the data is no longer valid and therefore of little use. Some clients may want to keep the copy in case they find a problem in the new version, this is their choice, but that copy should not remain in the default folder structure and it needs to be made very clear, that rolling back to a previous version will cause data lose and require data re-entry. This the main reason why we always recommend that our clients try out the new version in their training environment prior to upgrading their live environments. 


Applying Patches 

As with the Upgrades, the installer or the FTP Update option can be used to apply the patch. The FTP Update option is the best for self service as it creates a backup of the existing bin automatically as it is applied. We encourage our clients to use this feature as much as possible. 


Patches to an existing version requires far less effort and eliminates the need to create data backups as the data structures are unchanged. A copy of the bin folder can be made, but it is not required. We retain an archive of the previous builds, so rolling back can be done should the need arise. 


The process of applying the patch can be the same as an Upgrade, the Installer can be run on the client machine to apply the new build of the current version of the software. The installer will replace the applications but should not overwrite any settings or configuration files. 

 

Overwriting the Training data with a copy of the Live data 

In the past we have suggested the use of the COPYOVER.BAT file that is found on the public FTP site. This process worked very well prior to the development of our cloud and external integrations. However, now that we have many clients using our cloud and external integrations, which will break if the COPYOVER.BAT file is used. The Development team is aware that an automated option is required, and a new method will be provided as soon as possible. This document will be updated when that new method is made available 
 
Copying the entire Live Share and Data folders has the potential to break many aspects of both the training and live environments.

For clients that are not using any external integrations, copying the contents of the _datafiles folder from Live to Training would be fine in most cases, but there is still the issue of the custom reports and XML configurations that need to be considered. The Share folder contains numerous configuration files for both the Reports and the XML systems within the application. Simply copying these files from one folder to the other is not always the best approach. 

Best Practice, if there is any question or doubt, do not copy the live data over the training data.