From: Joe Hunt Date: Fri, 11 Sep 2009 16:02:08 +0000 (+0000) Subject: Check that new bank charge account has been set before adding bank charge. X-Git-Tag: v2.4.2~19^2~1252 X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=commitdiff_plain;h=5e645e8c7492625677178e8b52da9456299a7411;p=fa-stable.git Check that new bank charge account has been set before adding bank charge. Check that new closing accounts have been set before closure. --- diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 0796ea3e..f30dade8 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -21,7 +21,11 @@ $ -> Affected files 11-Sep-2009 Joe Hunt ! Changed so deleting of fiscal year also handles sales quotations +! Check that new closing accounts have been set before closure. $ /admin/fiscalyears.php +! Check that new bank charge account have been set before adding bank charge. +$ /sales/customer_payments.php + /purchasing/supplier_payment.php 10-Sep-2009 Joe Hunt ! By changing a simple sentence in allocation_cart.inc, the customer/supplier payments works with prompt payment discounts diff --git a/admin/fiscalyears.php b/admin/fiscalyears.php index 5e9e6d86..cc5c0029 100644 --- a/admin/fiscalyears.php +++ b/admin/fiscalyears.php @@ -85,6 +85,14 @@ function check_data() //--------------------------------------------------------------------------------------------- function close_year($year) { + $co = get_company_prefs(); + if ($co['retained_earnings_act'] == '' || $co['profit_loss_year_act'] == '') + { + display_error(_("The Retained Earnings Account or the Profit and Loss Year Account has not been set in System and General GL Setup")); + return false; + } + begin_transaction(); + $myrow = get_fiscalyear($year); $to = $myrow['end']; // retrieve total balances from balance sheet accounts @@ -96,13 +104,10 @@ function close_year($year) $row = db_fetch_row($result); $balance = round2($row[0], user_price_dec()); - begin_transaction(); $to = sql2date($to); if ($balance != 0.0) { - $co = get_company_prefs(); - $trans_type = systypes::journal_entry(); $trans_id = get_next_trans_no($trans_type); @@ -112,8 +117,10 @@ function close_year($year) 0, 0, _("Closing Year"), $balance); } - close_transactions($to); - commit_transaction(); + close_transactions($to); + + commit_transaction(); + return true; } function open_year($year) @@ -130,6 +137,7 @@ function handle_submit() { global $selected_id, $Mode; + $ok = true; if ($selected_id != -1) { if ($_POST['closed'] == 1) @@ -140,12 +148,15 @@ function handle_submit() set_focus('closed'); return false; } - close_year($selected_id); + $ok = close_year($selected_id); } else open_year($selected_id); - update_fiscalyear($selected_id, $_POST['closed']); - display_notification(_('Selected fiscal year has been updated')); + if ($ok) + { + update_fiscalyear($selected_id, $_POST['closed']); + display_notification(_('Selected fiscal year has been updated')); + } } else { diff --git a/purchasing/supplier_payment.php b/purchasing/supplier_payment.php index f4e4f776..423a97cc 100644 --- a/purchasing/supplier_payment.php +++ b/purchasing/supplier_payment.php @@ -100,6 +100,12 @@ function check_inputs() return false; } + if (isset($_POST['charge']) && input_num('charge') > 0 && get_company_pref('bank_charge_act') == '') { + display_error(_("The Bank Charge Account has not been set in System and General GL Setup.")); + set_focus('charge'); + return false; + } + if (isset($_POST['_ex_rate']) && !check_num('_ex_rate', 0.000001)) { display_error(_("The exchange rate must be numeric and greater than zero.")); diff --git a/sales/customer_payments.php b/sales/customer_payments.php index ca2fcf62..c029cff3 100644 --- a/sales/customer_payments.php +++ b/sales/customer_payments.php @@ -108,6 +108,12 @@ function can_process() return false; } + if (isset($_POST['charge']) && input_num('charge') > 0 && get_company_pref('bank_charge_act') == '') { + display_error(_("The Bank Charge Account has not been set in System and General GL Setup.")); + set_focus('charge'); + return false; + } + if (isset($_POST['_ex_rate']) && !check_num('_ex_rate', 0.000001)) { display_error(_("The exchange rate must be numeric and greater than zero."));