Changes to committed tax report routines.
[fa-stable.git] / reporting / rep201.php
index 3a6f1cff9497265b3d73ffa70cc2eca9be8578b5..e0a882d0f48de28154a74225f94fe9b633599c62 100644 (file)
@@ -1,5 +1,14 @@
 <?php
-
+/**********************************************************************
+    Copyright (C) FrontAccounting, LLC.
+       Released under the terms of the GNU Affero General Public License,
+       AGPL, 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/agpl-3.0.html>.
+***********************************************************************/
 $page_security = 2;
 // ----------------------------------------------------------------
 // $ Revision: 2.0 $
@@ -7,12 +16,12 @@ $page_security = 2;
 // date_:      2005-05-19
 // Title:      Supplier Balances
 // ----------------------------------------------------------------
-$path_to_root="../";
+$path_to_root="..";
 
-include_once($path_to_root . "includes/session.inc");
-include_once($path_to_root . "includes/date_functions.inc");
-include_once($path_to_root . "includes/data_checks.inc");
-include_once($path_to_root . "gl/includes/gl_db.inc");
+include_once($path_to_root . "/includes/session.inc");
+include_once($path_to_root . "/includes/date_functions.inc");
+include_once($path_to_root . "/includes/data_checks.inc");
+include_once($path_to_root . "/gl/includes/gl_db.inc");
 
 //----------------------------------------------------------------------------------------------------
 
@@ -22,8 +31,8 @@ print_supplier_balances();
 function getTransactions($supplier_id, $date)
 {
        $date = date2sql($date);
-       
-    $sql = "SELECT ".TB_PREF."supp_trans.*, ".TB_PREF."sys_types.type_name, 
+
+    $sql = "SELECT ".TB_PREF."supp_trans.*, ".TB_PREF."sys_types.type_name,
                                (".TB_PREF."supp_trans.ov_amount + ".TB_PREF."supp_trans.ov_gst + ".TB_PREF."supp_trans.ov_discount)
                                AS TotalAmount, ".TB_PREF."supp_trans.alloc AS Allocated,
                                ((".TB_PREF."supp_trans.type = 20)
@@ -44,13 +53,13 @@ function print_supplier_balances()
 {
     global $path_to_root;
 
-    include_once($path_to_root . "reporting/includes/pdf_report.inc");
+    include_once($path_to_root . "/reporting/includes/pdf_report.inc");
 
     $to = $_POST['PARAM_0'];
     $fromsupp = $_POST['PARAM_1'];
     $currency = $_POST['PARAM_2'];
     $comments = $_POST['PARAM_3'];
-    
+
        if ($fromsupp == reserved_words::get_all_numeric())
                $from = _('All');
        else
@@ -84,65 +93,66 @@ function print_supplier_balances()
     $rep->Header();
 
        $total = array();
-       $grandtotal = array();
+       $grandtotal = array(0,0,0,0);
 
        $sql = "SELECT supplier_id, supp_name AS name, curr_code FROM ".TB_PREF."suppliers ";
        if ($fromsupp != reserved_words::get_all_numeric())
                $sql .= "WHERE supplier_id=$fromsupp ";
        $sql .= "ORDER BY supp_name";
        $result = db_query($sql, "The customers could not be retrieved");
-       
-       while ($myrow=db_fetch($result)) 
+
+       while ($myrow=db_fetch($result))
        {
                if (!$convert && $currency != $myrow['curr_code'])
                        continue;
                $rep->fontSize += 2;
                $rep->TextCol(0, 3, $myrow['name']);
                if ($convert)
-               {
-                       $rate = get_exchange_rate_from_home_currency($myrow['curr_code'], $to);
                        $rep->TextCol(3, 4,     $myrow['curr_code']);
-               }
-               else
-                       $rate = 1.0;
                $rep->fontSize -= 2;
                $rep->NewLine(1, 2);
                $res = getTransactions($myrow['supplier_id'], $to);
                if (db_num_rows($res)==0)
                        continue;
                $rep->Line($rep->row + 4);
-               $total[0] = $total[1] = $total[2] = $total[3] = 0.0; 
+               $total[0] = $total[1] = $total[2] = $total[3] = 0.0;
                while ($trans=db_fetch($res))
                {
                        $rep->NewLine(1, 2);
                        $rep->TextCol(0, 1,     $trans['type_name']);
                        $rep->TextCol(1, 2,     $trans['reference']);
-                       $rep->TextCol(2, 3,     sql2date($trans['tran_date']));
-                       if ($trans['type'] == 20)       
+                       $date = sql2date($trans['tran_date']);
+                       $rep->TextCol(2, 3,     $date);
+                       if ($trans['type'] == 20)
                                $rep->TextCol(3, 4,     sql2date($trans['due_date']));
-                       $item[0] = $item[1] = 0.0;              
-                       if ($trans['TotalAmount'] > 0.0)        
+                       $item[0] = $item[1] = 0.0;
+                       if ($convert)
+                               //$rate = get_exchange_rate_from_home_currency($myrow['curr_code'], $date);
+                               $rate = $trans['rate'];
+                       else
+                               $rate = 1.0;
+                       if ($trans['TotalAmount'] > 0.0)
                        {
-                               $item[0] = Abs($trans['TotalAmount']) * $rate;          
+                               $item[0] = Abs($trans['TotalAmount']) * $rate;
                                $rep->TextCol(4, 5,     number_format2($item[0], $dec));
-                       }               
-                       else    
+                       }
+                       else
                        {
-                               $item[1] = Abs($trans['TotalAmount']) * $rate;          
+                               $item[1] = Abs($trans['TotalAmount']) * $rate;
                                $rep->TextCol(5, 6,     number_format2($item[1], $dec));
-                       }               
+                       }
                        $item[2] = $trans['Allocated'] * $rate;
                        $rep->TextCol(6, 7,     number_format2($item[2], $dec));
                        if ($trans['type'] == 20)
-                               $item[3] = ($trans['TotalAmount'] - $trans['Allocated']) * $rate;               
-                       else    
-                               $item[3] = ($trans['TotalAmount'] + $trans['Allocated']) * $rate;               
+                               $item[3] = ($trans['TotalAmount'] - $trans['Allocated']) * $rate;
+                       else
+                               $item[3] = ($trans['TotalAmount'] + $trans['Allocated']) * $rate;
                        $rep->TextCol(7, 8,     number_format2($item[3], $dec));
                        for ($i = 0; $i < 4; $i++)
                        {
                                $total[$i] += $item[$i];
                                $grandtotal[$i] += $item[$i];
-                       }       
+                       }
                }
                $rep->Line($rep->row - 8);
                $rep->NewLine(2);
@@ -151,7 +161,7 @@ function print_supplier_balances()
                {
                        $rep->TextCol($i + 4, $i + 5, number_format2($total[$i], $dec));
                        $total[$i] = 0.0;
-               }       
+               }
        $rep->Line($rep->row  - 4);
        $rep->NewLine(2);
        }