Added Ending Balance in trial balance (also in report)
authorJoe Hunt <joe.hunt.consulting@gmail.com>
Wed, 22 Oct 2008 09:29:58 +0000 (09:29 +0000)
committerJoe Hunt <joe.hunt.consulting@gmail.com>
Wed, 22 Oct 2008 09:29:58 +0000 (09:29 +0000)
CHANGELOG.txt
gl/inquiry/gl_trial_balance.php
reporting/rep704.php
reporting/rep708.php

index d7dddc96b22b92fb31bcff40487c2e314816f3fc..389a8f9d6f5934370b14e0bbbaa442b141bc4bd3 100644 (file)
@@ -19,6 +19,14 @@ Legend:
 ! -> Note
 $ -> Affected files
 
+22-Oct-2008 Joe Hunt
++ Added Ending Balance in trial balance (also in report)
+$ /gl/inquiry/gl_trial_balance.php
+  /reporting/rep704.php
+  /reporting/rep708.php
+! Bad balance in GL trans for chart en_US-demo.sql
+$ /sql/en_US-demo.sql
+  
 21-Oct-2008 Joe Hunt
 # Bug [0000076] Voiding Supplier Invoice does a purchase delivery void as well
 $ /purchasing/includes/db/invoice_db.inc
index b3dee997d722db482fe18f4b376840f60d91a780..969cfcca0dd6c8030c6877e3afe950de87456d16 100644 (file)
@@ -99,6 +99,7 @@ function display_trial_balance()
 
        $k = 0;
 
+       $totprev = $totcurr = 0.0;
        $accounts = get_gl_accounts();
 
        while ($account = db_fetch($accounts))
@@ -108,7 +109,7 @@ function display_trial_balance()
                else
                {
                        $begin = begin_fiscalyear();
-                       if ($_POST['TransFromDate'] < $begin)
+                       if (date1_greater_date2($begin, $_POST['TransFromDate']))
                                $begin = $_POST['TransFromDate'];
                        $begin = add_days($begin, -1);
                }
@@ -117,6 +118,8 @@ function display_trial_balance()
                $curr_balance = get_balance($account["account_code"], $_POST['TransFromDate'], $_POST['TransToDate']);
                if (check_value("NoZero") && !$prev_balance && !$curr_balance)
                        continue;
+               $totprev += $prev_balance;
+               $totcurr += $curr_balance;
                alt_table_row_color($k);
 
                $url = "<a href='$path_to_root/gl/inquiry/gl_account_inquiry.php?" . SID . "TransFromDate=" . $_POST["TransFromDate"] . "&TransToDate=" . $_POST["TransToDate"] . "&account=" . $account["account_code"] . "'>" . $account["account_code"] . "</a>";
@@ -129,6 +132,12 @@ function display_trial_balance()
                display_debit_or_credit_cells($prev_balance + $curr_balance);
                end_row();
        }
+       start_row("class='inquirybg'");
+       label_cell("<b>" . _("Ending Balance") ." - ".$_POST['TransToDate']. "</b>", "colspan=2");
+       display_debit_or_credit_cells($totprev);
+       display_debit_or_credit_cells($totcurr);
+       display_debit_or_credit_cells($totprev + $totcurr);
+       end_row();
 
        end_table(1);
        div_end();
index 856efecb10ca71400e508f63cb62c5fcc11e1bdd..794b053a1a54708a9d87fc07b92dbbf5a4625ba1 100644 (file)
@@ -106,10 +106,10 @@ function print_GL_transactions()
                        $begin = "";
                else
                {
-                       if ($from < $begin)
-                               $begin = add_days($from, -1);
-                       else
-                               $begin = add_days(begin_fiscalyear(), -1);
+                       $begin = begin_fiscalyear();
+                       if (date1_greater_date2($begin, $from))
+                               $begin = $from;
+                       $begin = add_days($begin, -1);
                }
                $prev_balance = get_gl_balance_from_to($begin, $from, $account["account_code"], $dimension, $dimension2);
 
index cb11746c132f49eb791ceaf6b0412f59a7a694d7..fc71d67318d84720f01c736f5fb8d48f9815d8a0 100644 (file)
@@ -91,6 +91,7 @@ function print_trial_balance()
        $rep->Font();
        $rep->Info($params, $cols, $headers, $aligns, $cols2, $headers2, $aligns2);
        $rep->Header();
+       $totprev = $totcurr = 0.0;
 
        $accounts = get_gl_accounts();
 
@@ -101,10 +102,10 @@ function print_trial_balance()
                        $begin = "";
                else
                {
-                       if ($from < $begin)
-                               $begin = add_days($from, -1);
-                       else
-                               $begin = add_days(begin_fiscalyear(), -1);
+                       $begin = begin_fiscalyear();
+                       if (date1_greater_date2($begin, $from))
+                               $begin = $from;
+                       $begin = add_days($begin, -1);
                }
 
                $prev_balance = get_gl_balance_from_to($begin, $from, $account["account_code"], $dimension, $dimension2);
@@ -113,19 +114,20 @@ function print_trial_balance()
 
                if ($zero == 0 && !$prev_balance && !$curr_balance)
                        continue;
-
+               $totprev += $prev_balance;
+               $totcurr += $curr_balance;
                $rep->TextCol(0, 1, $account['account_code']);
                $rep->TextCol(1, 2,     $account['account_name']);
 
-               if ($prev_balance > 0.0)
+               if ($prev_balance >= 0.0)
                        $rep->TextCol(2, 3,     number_format2(abs($prev_balance), $dec));
                else
                        $rep->TextCol(3, 4,     number_format2(abs($prev_balance), $dec));
-               if ($curr_balance > 0.0)
+               if ($curr_balance >= 0.0)
                        $rep->TextCol(4, 5,     number_format2(abs($curr_balance), $dec));
                else
                        $rep->TextCol(5, 6,     number_format2(abs($curr_balance), $dec));
-               if ($curr_balance + $prev_balance > 0.0)
+               if ($curr_balance + $prev_balance >= 0.0)
                        $rep->TextCol(6, 7,     number_format2(abs($curr_balance + $prev_balance), $dec));
                else
                        $rep->TextCol(7, 8,     number_format2(abs($curr_balance + $prev_balance), $dec));
@@ -139,6 +141,26 @@ function print_trial_balance()
                }
        }
        $rep->Line($rep->row);
+       $rep->NewLine();
+       $rep->Font('bold');
+
+       $rep->TextCol(0, 2, _("Ending Balance"));
+
+       if ($totprev >= 0.0)
+               $rep->TextCol(2, 3,     number_format2(abs($totprev), $dec));
+       else
+               $rep->TextCol(3, 4,     number_format2(abs($totprev), $dec));
+       if ($totcurr >= 0.0)
+               $rep->TextCol(4, 5,     number_format2(abs($totcurr), $dec));
+       else
+               $rep->TextCol(5, 6,     number_format2(abs($totcurr), $dec));
+       if ($totcurr + $totprev >= 0.0)
+               $rep->TextCol(6, 7,     number_format2(abs($totcurr + $totprev), $dec));
+       else
+               $rep->TextCol(7, 8,     number_format2(abs($totcurr + $totprev), $dec));
+       
+       $rep->Line($rep->row - 6);
+       
        $rep->End();
 }