#### Front Accounting Update

## Important Notes for release 2.4.1.

### This is a preliminary FrontAccounting ERP 2.4.1 release.

This version provides a couple of new important features (in addition to all the
features merged from latest 2.3.26 release), but main development effort was
focused on internal architecture changes and cleanups to make future FA development
easier.
At the time of release most of optional extension modules available from central
extensions repo has been also ported to 2.4 and should be mostly usable. Most Themes are
updated and many new Themes are available.
Due to deep changes made under the hood, we highly encourage all current FA 2.3 users
to make test upgrades on a copy of your working installation connected to separate database
filled with your real company data. This will allow us find and fix any possible
upgrade issues before final 2.4 release. Please report any bugs/problems found via our
Mantis Bugtracker at http://mantis.frontaccounting.com.

### Download instructions

In Sourceforge FrontAccounting (http://sourceforge.net/projects/frontaccounting), select
Files -> FrontAccounting 2.4 ->2.4.1.
For Windows users select the zip file. For all other users select the tar.gz file.

### Notice for certain Windows wamp servers.

Due to experienced long upgrade time for release 2.3 databases to release 2.4 on certain wamp
servers, we just ask you to be patience. It might take a while, but should end successfully.

#### New global flags in config.php (config-default.php):

/* Optional popup search enabled if this is true. $max_rows_in_search = 10
is used for maximum rows in search */
$use_popup_search = true;
$max_rows_in_search = 10;

## Important Notes for release 2.3.22.

#### New global flags in config.php (config-default.php):

/* Show average costed values instead of fixed standard cost */ In Enventory Valuation Report.
$use_costed_values = 0;
/* Print Item Images on Sales Quotations. Set to 1 if so. */
$print_item_images_on_quote = 0;

## Important Notes for release 2.3.21.

#### Crucial security patches:

This version consists of crucial security patches and this applies especially to all publicly available servers,
f.i. installations which are run in not fully trusted environment like public demos, shared accounts or SAAS.

#### New global flags in config.php (config-default.php):

/* Whether to allow sending new password by e-mail */
$allow_password_reset = false

## Important Notes for release 2.3.20.

#### Crucial security patches:

This version consists of crucial security patches and all guest FA installations (I mean whenever FA is run in not fully trusted environment) should be updtaed.

## Important Notes for release 2.3.17.

#### New global flags in config.php (config-default.php):

/*
Choose Exchange Rate Provider
Default is ECB for backwards compatibility
*/
$xr_providers = array("ECB", "YAHOO", "GOOGLE", "BLOOMBERG");
$dflt_xr_provider = 0;
/*
Set to true when remote service is authoritative source of exchange rates, and can be stored automatically without
manual edition. Otherwise exrate is stored on first new currency transaction of the day.
*/
$xr_provider_authoritative = false;

## Important Notes for release 2.3.16.

#### New global flags in config.php (config-default.php):

/*
Optional sorting new sales documents lines according to item code
*/
$sort_sales_items = false;
/*
Trial Balance opening balance presentation option.
When set to true past years part of opening balance is cleared.
*/
$clear_trial_balance_opening = false;

## Important Notes for release 2.3.14.

#### New global flags in config.php (config-default.php):

/* default print orientation. 0 = Portrait, 1 = Landscape */
$def_print_orientation = 0;

## Important Notes for release 2.3.13.

#### New global flags in config.php (config-default.php):

/* No check on edit conflicts. Maybe needed to be set to 1 in certains Windows Servers */
$no_check_edit_conflicts = 0;

## Important Notes for release 2.3.12.

#### New global flags in config.php (config-default.php):

/*
Display a dropdown select box for choosing Company to login if false.
Show a blank editbox only if true where the Company NickName
will have to be manually entered. This is when privacy is needed.
*/
$text_company_selection = false;
/* Should FA hide menu items (Applications, Modules, and Actions) from the user if they don't have access to them?
0 for no 1 for yes
*/
$hide_inaccessible_menu_items = 0;
/*
Brute force prevention.
$login_delay seconds delay is required between login attempts after $login_max_attemps failed logins.
Set $login_delay to 0 to disable the feature (not recommended)
*/
$login_delay = 30;
$login_max_attempts = 10;

## Important Notes for release 2.3.5.

Change in the behaviour of Recurrent Invoices.

- Now the Last Sent day is stamped with the former Last Sent (or Begin date the first time) + months + days. Before the Last Sent day was stamped with tthe creation date (today). The Invoice date is still todays date.
- If you for some reason want to make a pause in the recurrent invoices, you can now edit the Last Sent day in the Management section of Sales tab.
- Before the days value, together with a month value, decided which day in the month the invoice was due.. This does not work now. You can change the day in the month you want the recurrency to happen by setting the Last Sent day with the new day in the Management section.
- If you create a new Recurrent Invoice the Beginning date can be set to the day in the month you want the recurrencies to be due.

## Important Notes

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:

1. Application source files update

2. Database upgrade – this step is needed only during upgrade which involves change in major application 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.

3. Final cleanup – is needed when some old source files, obsoleted by new release should be removed.

4. 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.

## 1. 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 n ew settings (if any).

[<FA 2.2beta]

$show_users_online = 0;

$def_print_destination = 0;

$dflt_date_fmt=0;

$dflt_date_sep=0;

$table_style,table_style2 changed

[<FA 2.3beta]

$alternative_tax_include_on_doc=0;

$suppress_tax_rates = 0;

[<FA 2.3RC1]

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.

[<FA 2.3RC2]

$save_report_selections = 0; // A value > 0 means days to save the report selections.

[<FA 2.3]

$save_po_item_codes = 0; // show item codes on purchase order

$def_print_destination = 0; // default print destination. 0 = PDF/Printer, 1 = Excel

$alternative_tax_include_on_docs = 0; // 1 = print Subtotal tax excluded, tax and Total tax included

$suppress_tax_rates = 0; // suppress tax rates on documents. 0 = no, 1 = yes.

## 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

[<FA 2.2beta]

/includes/reserved.inc – removed.

[<FA 2.1]

/admin/db/v_banktrans.inc - removed

b. Config.php cleanup

[<FA 2.2RC1]

$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.

----------------------