X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=admin%2Ffiscalyears.php;h=6fd36fc75518408750051d00d6215b29bcb3b0a8;hb=b5c5d915d8ce6e85605dce6efc5d2b61ea02f3ee;hp=a974e4a2d2a09bdc4fc5343879cf81b4ff537e74;hpb=ebc600101ceab69c06eac4b1bd4d1782af45de05;p=fa-stable.git diff --git a/admin/fiscalyears.php b/admin/fiscalyears.php index a974e4a2..6fd36fc7 100644 --- a/admin/fiscalyears.php +++ b/admin/fiscalyears.php @@ -204,6 +204,8 @@ function delete_attachments_and_comments($type_no, $trans_no) } $sql = "DELETE FROM ".TB_PREF."comments WHERE type = $type_no AND id = $trans_no"; db_query($sql, "Could not delete comments"); + $sql = "DELETE FROM ".TB_PREF."refs WHERE type = $type_no AND id = $trans_no"; + db_query($sql, "Could not delete refs"); } function delete_this_fiscalyear($selected_id) @@ -271,9 +273,10 @@ function delete_this_fiscalyear($selected_id) db_query($sql, "Could not delete debtor trans details"); $sql = "DELETE FROM ".TB_PREF."debtor_trans WHERE trans_no = $delivery AND type = ".ST_CUSTDELIVERY; db_query($sql, "Could not delete debtor trans"); + delete_attachments_and_comments(ST_CUSTDELIVERY, $delivery); } } - $sql = "DELETE FROM ".TB_PREF."cust_allocations WHERE trans_no_from = {$row['trans_no']} AND type_no_from = {$row['type']}"; + $sql = "DELETE FROM ".TB_PREF."cust_allocations WHERE trans_no_from = {$row['trans_no']} AND trans_type_from = {$row['type']}"; db_query($sql, "Could not delete cust allocations"); $sql = "DELETE FROM ".TB_PREF."debtor_trans_details WHERE debtor_trans_no = {$row['trans_no']} AND debtor_trans_type = {$row['type']}"; db_query($sql, "Could not delete debtor trans details"); @@ -286,7 +289,7 @@ function delete_this_fiscalyear($selected_id) $result = db_query($sql, "Could not retrieve supp trans"); while ($row = db_fetch($result)) { - $sql = "DELETE FROM ".TB_PREF."supp_allocations WHERE trans_no_from = {$row['trans_no']} AND type_no_from = {$row['type']}"; + $sql = "DELETE FROM ".TB_PREF."supp_allocations WHERE trans_no_from = {$row['trans_no']} AND trans_type_from = {$row['type']}"; db_query($sql, "Could not delete supp allocations"); $sql = "DELETE FROM ".TB_PREF."supp_invoice_items WHERE supp_trans_no = {$row['trans_no']} AND supp_trans_type = {$row['type']}"; db_query($sql, "Could not delete supp invoice items"); @@ -305,7 +308,7 @@ function delete_this_fiscalyear($selected_id) $sql = "DELETE FROM ".TB_PREF."wo_issue_items WHERE issue_id = {$row2[0]}"; db_query($sql, "Could not delete wo issue items"); } - delete_attachments_and_comments(28, $row['id']); + delete_attachments_and_comments(ST_MANUISSUE, $row['id']); $sql = "DELETE FROM ".TB_PREF."wo_issues WHERE workorder_id = {$row['id']}"; db_query($sql, "Could not delete wo issues"); $sql = "DELETE FROM ".TB_PREF."wo_manufacture WHERE workorder_id = {$row['id']}"; @@ -314,7 +317,7 @@ function delete_this_fiscalyear($selected_id) db_query($sql, "Could not delete wo requirements"); $sql = "DELETE FROM ".TB_PREF."workorders WHERE id = {$row['id']}"; db_query($sql, "Could not delete workorders"); - delete_attachments_and_comments(26, $row['id']); + delete_attachments_and_comments(ST_WORKORDER, $row['id']); } $sql = "SELECT loc_code, stock_id, SUM(qty) AS qty, SUM(qty*standard_cost) AS std_cost FROM ".TB_PREF."stock_moves WHERE tran_date <= '$to' GROUP by loc_code, stock_id"; @@ -337,6 +340,7 @@ function delete_this_fiscalyear($selected_id) db_query($sql, "Could not delete exchange rates"); $sql = "DELETE FROM ".TB_PREF."budget_trans WHERE tran_date <= '$to'"; db_query($sql, "Could not delete exchange rates"); + $sql = "SELECT account, SUM(amount) AS amount FROM ".TB_PREF."gl_trans WHERE tran_date <= '$to' GROUP by account"; $result = db_query($sql, "Could not retrieve gl trans"); while ($row = db_fetch($result)) @@ -345,23 +349,54 @@ function delete_this_fiscalyear($selected_id) db_query($sql, "Could not delete gl trans"); if (is_account_balancesheet($row['account'])) { - $trans_no = get_next_trans_no(0); - if (is_bank_account($row['account'])) - { - $sql = "SELECT SUM(amount) FROM ".TB_PREF."bank_trans WHERE trans_date <= '$to' AND bank_act = '{$row['account']}'"; - $res = db_query($sql, "Could not retrieve bank trans"); - $row2 = db_fetch_row($res); - $sql = "DELETE FROM ".TB_PREF."bank_trans WHERE trans_date <= '$to' AND bank_act = '{$row['account']}'"; - db_query($sql, "Could not delete bank trans"); - $sql = "INSERT INTO ".TB_PREF."bank_trans (type, trans_no, trans_date, bank_act, ref, amount) VALUES - (0, $trans_no, '$to', '{$row['account']}', '$ref', {$row2[0]})"; - db_query($sql, "Could not insert bank trans"); - } + $trans_no = get_next_trans_no(ST_JOURNAL); $sql = "INSERT INTO ".TB_PREF."gl_trans (type, type_no, tran_date, account, memo_, amount) VALUES - (0, $trans_no, '$to', '{$row['account']}', '$ref', {$row['amount']})"; + (".ST_JOURNAL.", $trans_no, '$to', '{$row['account']}', '$ref', {$row['amount']})"; db_query($sql, "Could not insert gl trans"); } } + + $sql = "SELECT bank_act, SUM(amount) AS amount FROM ".TB_PREF."bank_trans WHERE trans_date <= '$to' GROUP BY bank_act"; + $result = db_query($sql, "Could not retrieve bank trans"); + while ($row = db_fetch($result)) + { + $sql = "DELETE FROM ".TB_PREF."bank_trans WHERE trans_date <= '$to' AND bank_act = '{$row['bank_act']}'"; + db_query($sql, "Could not delete bank trans"); + $sql = "INSERT INTO ".TB_PREF."bank_trans (type, trans_no, trans_date, bank_act, ref, amount) VALUES + (0, 0, '$to', '{$row['bank_act']}', '$ref', {$row['amount']})"; + db_query($sql, "Could not insert bank trans"); + } + + $sql = "DELETE FROM ".TB_PREF."audit_trail WHERE gl_date <= '$to'"; + db_query($sql, "Could not delete audit trail"); + + $sql = "SELECT type, id FROM ".TB_PREF."comments WHERE type != ".ST_SALESQUOTE." AND type != ".ST_SALESORDER." AND type != ".ST_PURCHORDER; + $result = db_query($sql, "Could not retrieve comments"); + while ($row = db_fetch($result)) + { + $sql = "SELECT count(*) FROM ".TB_PREF."gl_trans WHERE type = {$row['type']} AND type_no = {$row['id']}"; + $res = db_query($sql, "Could not retrieve gl_trans"); + $row2 = db_fetch_row($res); + if ($row2[0] == 0) // if no link, then delete comments + { + $sql = "DELETE FROM ".TB_PREF."comments WHERE type = {$row['type']} AND id = {$row['id']}"; + db_query($sql, "Could not delete comments"); + } + } + $sql = "SELECT type, id FROM ".TB_PREF."refs WHERE type != ".ST_SALESQUOTE." AND type != ".ST_SALESORDER." AND type != ".ST_PURCHORDER; + $result = db_query($sql, "Could not retrieve refs"); + while ($row = db_fetch($result)) + { + $sql = "SELECT count(*) FROM ".TB_PREF."gl_trans WHERE type = {$row['type']} AND type_no = {$row['id']}"; + $res = db_query($sql, "Could not retrieve gl_trans"); + $row2 = db_fetch_row($res); + if ($row2[0] == 0) // if no link, then delete refs + { + $sql = "DELETE FROM ".TB_PREF."refs WHERE type = {$row['type']} AND id = {$row['id']}"; + db_query($sql, "Could not delete refs"); + } + } + delete_fiscalyear($selected_id); commit_transaction(); } @@ -388,7 +423,7 @@ function display_fiscalyears() $result = get_all_fiscalyears(); start_form(); - display_note(_("Warning: During fiscal year removal all transactions + display_note(_("Warning: Deleting a fiscal year all transactions are removed and converted into relevant balances. This process is irreversible!"), 0, 0, "class='currentfg'"); start_table($table_style); @@ -423,7 +458,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 delete fiscal year %s - %s? All transactions are deleted and converted into relevant balances. Do you want to continue ?"), $from, $to)); } else label_cell(''); end_row();