X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=admin%2Ffiscalyears.php;h=7a4b2a36c4104141affa3f0f665e6963facf148c;hb=3f361f69940fa9c2e0ff68657c6345ca0f14256f;hp=a0cb0ced0ca90fa159b09b8cc59fb6c6a9681074;hpb=902f1015d874c33bd7946b17de2ad80b4f2144b6;p=fa-stable.git diff --git a/admin/fiscalyears.php b/admin/fiscalyears.php index a0cb0ced..7a4b2a36 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 (get_gl_account($co['retained_earnings_act']) == false || get_gl_account($co['profit_loss_year_act']) == false) + { + 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,14 +104,11 @@ 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_type = ST_JOURNAL; $trans_id = get_next_trans_no($trans_type); add_gl_trans($trans_type, $trans_id, $to, $co['retained_earnings_act'], @@ -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 { @@ -204,20 +215,20 @@ function delete_this_fiscalyear($selected_id) $ref = _("Open Balance"); $myrow = get_fiscalyear($selected_id); $to = $myrow['end']; - $sql = "SELECT order_no FROM ".TB_PREF."sales_orders WHERE ord_date <= '$to' AND type <> 1"; // don't take the templates + $sql = "SELECT order_no, trans_type FROM ".TB_PREF."sales_orders WHERE ord_date <= '$to' AND type <> 1"; // don't take the templates $result = db_query($sql, "Could not retrieve sales orders"); while ($row = db_fetch($result)) { - $sql = "SELECT SUM(qty_sent), SUM(quantity) FROM ".TB_PREF."sales_order_details WHERE order_no = {$row['order_no']}"; + $sql = "SELECT SUM(qty_sent), SUM(quantity) FROM ".TB_PREF."sales_order_details WHERE order_no = {$row['order_no']} AND trans_type = {$row['trans_type']}"; $res = db_query($sql, "Could not retrieve sales order details"); $row2 = db_fetch_row($res); if ($row2[0] == $row2[1]) { - $sql = "DELETE FROM ".TB_PREF."sales_order_details WHERE order_no = {$row['order_no']}"; + $sql = "DELETE FROM ".TB_PREF."sales_order_details WHERE order_no = {$row['order_no']} AND trans_type = {$row['trans_type']}"; db_query($sql, "Could not delete sales order details"); - $sql = "DELETE FROM ".TB_PREF."sales_orders WHERE order_no = {$row['order_no']}"; + $sql = "DELETE FROM ".TB_PREF."sales_orders WHERE order_no = {$row['order_no']} AND trans_type = {$row['trans_type']}"; db_query($sql, "Could not delete sales order"); - delete_attachments_and_comments(systypes::sales_order(), $row['order_no']); + delete_attachments_and_comments($row['trans_type'], $row['order_no']); } } $sql = "SELECT order_no FROM ".TB_PREF."purch_orders WHERE ord_date <= '$to'"; @@ -233,7 +244,7 @@ function delete_this_fiscalyear($selected_id) db_query($sql, "Could not delete purchase order details"); $sql = "DELETE FROM ".TB_PREF."purch_orders WHERE order_no = {$row['order_no']}"; db_query($sql, "Could not delete purchase order"); - delete_attachments_and_comments(systypes::po(), $row['order_no']); + delete_attachments_and_comments(ST_PURCHORDER, $row['order_no']); } } $sql = "SELECT id FROM ".TB_PREF."grn_batch WHERE delivery_date <= '$to'"; @@ -251,14 +262,14 @@ function delete_this_fiscalyear($selected_id) $result = db_query($sql, "Could not retrieve debtor trans"); while ($row = db_fetch($result)) { - if ($row['type'] == 10) + if ($row['type'] == ST_SALESINVOICE) { - $deliveries = get_parent_trans(10,$row['trans_no']); + $deliveries = get_parent_trans(ST_SALESINVOICE,$row['trans_no']); foreach ($deliveries as $delivery) { - $sql = "DELETE FROM ".TB_PREF."debtor_trans_details WHERE debtor_trans_no = $delivery AND debtor_trans_type = 13"; + $sql = "DELETE FROM ".TB_PREF."debtor_trans_details WHERE debtor_trans_no = $delivery AND debtor_trans_type = ".ST_CUSTDELIVERY; db_query($sql, "Could not delete debtor trans details"); - $sql = "DELETE FROM ".TB_PREF."debtor_trans WHERE trans_no = $delivery AND type = 13"; + $sql = "DELETE FROM ".TB_PREF."debtor_trans WHERE trans_no = $delivery AND type = ".ST_CUSTDELIVERY; db_query($sql, "Could not delete debtor trans"); } } @@ -412,9 +423,7 @@ function display_fiscalyears() if ($myrow["id"] != $company_year) { delete_button_cell("Delete".$myrow['id'], _("Delete")); submit_js_confirm("Delete".$myrow['id'], - sprintf(_("Are you sure you want to remove fiscal year - '%s'-'%s'? All transactions are removed and converted into relevant - balances. Do you want to continue ?"), $from, $to)); + sprintf(_("Are you sure you want to remove fiscal year %s - %s? All transactions are removed and converted into relevant balances. Do you want to continue ?"), $from, $to)); } else label_cell(''); end_row();