Upgrade process can be done only by administrator of the first company created during FrontAccounting installation. This person is considered as a site admin who have granted access to potentially dangerous setup options, like Setup/Software Upgrade.
In the following description sections related to older FA versions are prefixed with [color tags] . You can skip tagged fragment safely if currently FA application is newer than the version in tag.
Upgrade process consists of up to four stages, some of them are optional:
- Application source files update
- Database upgrade – this step is needed only during upgrade which involves change in major pplication
- version number (e.g. from 2.2.x to 2.3.x), and sometimes during upgrade from beta release to stable version. Otherwise this step can be skipped.
- Final cleanup – is needed when some old source files, obsoleted by new release should be removed.
New features configuration – this is optional step needed for most major releases and some minor ones.
Before starting upgrade ensure nobody is using the application and make database backup for all companies. To be on safe side backup also old source files, especially those locally customized (if any).
Log into admin account of first company. If you use a theme other than the standard 3 (aqua, cool or default), switch to one of these before going further.
- Application files update
a. Source files update
Extract distribution zip/tar.gz file in empty directory, and copy all the files to your FrontAccounting directory overwriting old files. If it is major release upgrade you can skip next step and go directly to cleanup.
b. Configuration files update
Compare new config.default.php file with the old config.php and add all new settings (if any).
$show_users_online = 0;
$def_print_destination = 0;
$suppress_tax_rates = 0;
Application version information and a couple of other private FA variables are stored in version.php file. The application version displayed in footer is defined in $version variable unless this is set in config.php file. If you want current release version to be displayed on every FA update just remove or comment out $version variable in config.php.
$save_report_selections = 0; // A value > 0 means days to save the report selections
2. Database upgrade
This step can be skipped for small version updates i.e. when you have already installed FrontAccounting version 2.3.1 or later. Before database upgrade is done on all company databases backup file is created automatically to enable database restore after failure.
After major version upgrade overwriting files in first step makes the system unaccessible for all users but site admin, who have to run upgrade procedures to update all company databases to the new version provided with the release. After logging to administrator account of first installed company go directly to Setup/Software Upgrade screen, mark all subsequent 'Install' checkboxes and press 'Upgrade System'.
If something goes wrong during upgrade, you can eventually try forced upgrade option. Forced upgrade ignores some smaller errors which can arise during upgrade due to some exotic database configuration. This is depreciated option, so first read error messages if any, try to fix signalized problems, restore databases from backup and retry normal installation. To run upgrade in forced mode check box 'Force Upgrade', and press 'Upgrade System' again.
3. Final cleanup
Remove or rename install folder in main FrontAccounting directory.
After upgrade is installed you can remove files obsoleted by new FrontAccounting version. Also old, unused settings can be removed from config.php file.
a. Source files cleanup
/includes/reserved.inc – removed.
/admin/db/v_banktrans.inc - removed
b. Config.php cleanup
$security_headings, $security_groups arrays – moved to database (see Access Setup)
$def_app – moved to user configuration in database.
$version – moved to version.php file. Remove
4. New features configuration
During upgrade process new features are initialized to default status, and sometimes old settings are also changed to conform with new security policy. This automatic process is designed to be as neutral for end users as possible, however sometimes site or company admin intervention can be necessary to set thing after changes to their best state. Below you will find description of new settings available after upgrade.