<?php
-
+/**********************************************************************
+ Copyright (C) FrontAccounting, LLC.
+ Released under the terms of the GNU General Public License, GPL,
+ as published by the Free Software Foundation, either version 3
+ of the License, or (at your option) any later version.
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
+***********************************************************************/
$page_security = 8;
$path_to_root="../..";
//----------------------------------------------------------------------------------------------------
-function get_balance($account, $from, $to, $from_incl=true, $to_incl=true)
-{
- $sql = "SELECT SUM(IF(amount >= 0, amount, 0)) as debit, SUM(IF(amount < 0, -amount, 0)) as credit, SUM(amount) as balance
- FROM ".TB_PREF."gl_trans,".TB_PREF."chart_master,".TB_PREF."chart_types, ".TB_PREF."chart_class
- WHERE ".TB_PREF."gl_trans.account=".TB_PREF."chart_master.account_code AND ".TB_PREF."chart_master.account_type=".TB_PREF."chart_types.id
- AND ".TB_PREF."chart_types.class_id=".TB_PREF."chart_class.cid AND";
-
- if ($account != null)
- $sql .= " account='$account' AND";
- $from_date = date2sql($from);
- if ($from_incl)
- $sql .= " tran_date >= '$from_date' AND";
- else
- $sql .= " tran_date > IF(".TB_PREF."chart_class.balance_sheet=1, '0000-00-00', '$from_date') AND";
- $to_date = date2sql($to);
- if ($to_incl)
- $sql .= " tran_date <= '$to_date' ";
- else
- $sql .= " tran_date < '$to_date' ";
-
- $result = db_query($sql,"No general ledger accounts were returned");
-
- return db_fetch($result);
-}
-
-//----------------------------------------------------------------------------------------------------
-
function display_trial_balance()
{
global $table_style, $path_to_root;
$k = 0;
$accounts = get_gl_accounts();
-
+ $pdeb = $pcre = $cdeb = $ccre = $tdeb = $tcre = $pbal = $cbal = $tbal = 0;
$begin = begin_fiscalyear();
if (date1_greater_date2($begin, $_POST['TransFromDate']))
$begin = $_POST['TransFromDate'];
while ($account = db_fetch($accounts))
{
- $prev = get_balance($account["account_code"], $begin, $_POST['TransFromDate'], false, false);
- $curr = get_balance($account["account_code"], $_POST['TransFromDate'], $_POST['TransToDate'], true, true);
- $tot = get_balance($account["account_code"], $begin, $_POST['TransToDate'], false, true);
+ $prev = get_balance($account["account_code"], 0, 0, $begin, $_POST['TransFromDate'], false, false);
+ $curr = get_balance($account["account_code"], 0, 0, $_POST['TransFromDate'], $_POST['TransToDate'], true, true);
+ $tot = get_balance($account["account_code"], 0, 0, $begin, $_POST['TransToDate'], false, true);
if (check_value("NoZero") && !$prev['balance'] && !$curr['balance'] && !$tot['balance'])
continue;
alt_table_row_color($k);
display_debit_or_credit_cells($prev['balance']);
display_debit_or_credit_cells($curr['balance']);
display_debit_or_credit_cells($tot['balance']);
+
}
else
{
amount_cell($curr['credit']);
amount_cell($tot['debit']);
amount_cell($tot['credit']);
+ $pdeb += $prev['debit'];
+ $pcre += $prev['credit'];
+ $cdeb += $curr['debit'];
+ $ccre += $curr['credit'];
+ $tdeb += $tot['debit'];
+ $tcre += $tot['credit'];
}
+ $pbal += $prev['balance'];
+ $cbal += $curr['balance'];
+ $tbal += $tot['balance'];
end_row();
}
- $prev = get_balance(null, $begin, $_POST['TransFromDate'], false, false);
- $curr = get_balance(null, $_POST['TransFromDate'], $_POST['TransToDate'], true, true);
- $tot = get_balance(null, $begin, $_POST['TransToDate'], false, true);
+ //$prev = get_balance(null, $begin, $_POST['TransFromDate'], false, false);
+ //$curr = get_balance(null, $_POST['TransFromDate'], $_POST['TransToDate'], true, true);
+ //$tot = get_balance(null, $begin, $_POST['TransToDate'], false, true);
if (!check_value('Balance'))
{
start_row("class='inquirybg' style='font-weight:bold'");
label_cell(_("Total") ." - ".$_POST['TransToDate'], "colspan=2");
- amount_cell($prev['debit']);
- amount_cell($prev['credit']);
- amount_cell($curr['debit']);
- amount_cell($curr['credit']);
- amount_cell($tot['debit']);
- amount_cell($tot['credit']);
+ amount_cell($pdeb);
+ amount_cell($pcre);
+ amount_cell($cdeb);
+ amount_cell($ccre);
+ amount_cell($tdeb);
+ amount_cell($tcre);
end_row();
}
start_row("class='inquirybg' style='font-weight:bold'");
label_cell(_("Ending Balance") ." - ".$_POST['TransToDate'], "colspan=2");
- display_debit_or_credit_cells($prev['balance']);
- display_debit_or_credit_cells($curr['balance']);
- display_debit_or_credit_cells($tot['balance']);
+ display_debit_or_credit_cells($pbal);
+ display_debit_or_credit_cells($cbal);
+ display_debit_or_credit_cells($tbal);
end_row();
end_table(1);