GL Account Transactions Report: improved layout when dimension 2 is not used.
[fa-stable.git] / reporting / rep704.php
index 3926defa4522ddced2d8d585033b79ac5dcec8b6..23a52fca4b9b5006d0f73518e538d21e54f7d78f 100644 (file)
@@ -19,6 +19,7 @@ $page_security = 'SA_GLREP';
 $path_to_root="..";
 
 include_once($path_to_root . "/includes/session.inc");
+include_once($path_to_root . "/admin/db/fiscalyears_db.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");
@@ -45,44 +46,56 @@ function print_GL_transactions()
                $dimension = $_POST['PARAM_4'];
                $dimension2 = $_POST['PARAM_5'];
                $comments = $_POST['PARAM_6'];
-               $destination = $_POST['PARAM_7'];
+               $orientation = $_POST['PARAM_7'];
+               $destination = $_POST['PARAM_8'];
        }
-       else if ($dim == 1)
+       elseif ($dim == 1)
        {
                $dimension = $_POST['PARAM_4'];
                $comments = $_POST['PARAM_5'];
-               $destination = $_POST['PARAM_6'];
+               $orientation = $_POST['PARAM_6'];
+               $destination = $_POST['PARAM_7'];
        }
        else
        {
                $comments = $_POST['PARAM_4'];
-               $destination = $_POST['PARAM_5'];
+               $orientation = $_POST['PARAM_5'];
+               $destination = $_POST['PARAM_6'];
        }
        if ($destination)
                include_once($path_to_root . "/reporting/includes/excel_report.inc");
        else
                include_once($path_to_root . "/reporting/includes/pdf_report.inc");
+       $orientation = ($orientation ? 'L' : 'P');
 
-       $rep = new FrontReport(_('GL Account Transactions'), "GLAccountTransactions", user_pagesize());
+       $rep = new FrontReport(_('GL Account Transactions'), "GLAccountTransactions", user_pagesize(), 9, $orientation);
        $dec = user_price_dec();
 
-  //$cols = array(0, 80, 100, 150, 210, 280, 340, 400, 450, 510, 570);
-       $cols = array(0, 65, 105, 125, 175, 230, 290, 345, 405, 465, 525);
-       //------------0--1---2---3----4----5----6----7----8----9----10-------
-       //-----------------------dim1-dim2-----------------------------------
-       //-----------------------dim1----------------------------------------
-       //-------------------------------------------------------------------
-       $aligns = array('left', 'left', 'left', 'left', 'left', 'left', 'left', 'right', 'right', 'right');
-
        if ($dim == 2)
+       {
+               $cols = array(0, 65, 105, 125, 175, 230, 290, 345, 405, 465, 525);
+               //------------0--1---2----3----4----5----6----7----8----9----10-------
+               //------------------------dim1-dim2-----------------------------------
                $headers = array(_('Type'),     _('Ref'), _('#'),       _('Date'), _('Dimension')." 1", _('Dimension')." 2",
                        _('Person/Item'), _('Debit'),   _('Credit'), _('Balance'));
+       }
        elseif ($dim == 1)
+       {
+               $cols = array(0, 65, 105, 125, 175, 230, 230, 345, 405, 465, 525);
+               //------------0--1---2----3----4----5----6----7----8----9----10-------
+               //------------------------dim1----------------------------------------
                $headers = array(_('Type'),     _('Ref'), _('#'),       _('Date'), _('Dimension'), "", _('Person/Item'),
                        _('Debit'),     _('Credit'), _('Balance'));
+       }
        else
+       {
+               $cols = array(0, 65, 105, 125, 175, 175, 175, 345, 405, 465, 525);
+               //------------0--1---2----3----4----5----6----7----8----9----10-------
+               //--------------------------------------------------------------------
                $headers = array(_('Type'),     _('Ref'), _('#'),       _('Date'), "", "", _('Person/Item'),
                        _('Debit'),     _('Credit'), _('Balance'));
+       }
+       $aligns = array('left', 'left', 'left', 'left', 'left', 'left', 'left', 'right', 'right', 'right');
 
        if ($dim == 2)
        {
@@ -94,7 +107,7 @@ function print_GL_transactions()
                        4 => array('text' => _('Dimension')." 2", 'from' => get_dimension_string($dimension2),
                             'to' => ''));
     }
-    else if ($dim == 1)
+    elseif ($dim == 1)
     {
        $params =   array(      0 => $comments,
                                    1 => array('text' => _('Period'), 'from' => $from, 'to' => $to),
@@ -108,10 +121,12 @@ function print_GL_transactions()
                                    1 => array('text' => _('Period'), 'from' => $from, 'to' => $to),
                                    2 => array('text' => _('Accounts'),'from' => $fromacc,'to' => $toacc));
     }
+    if ($orientation == 'L')
+       recalculate_cols($cols);
 
        $rep->Font();
        $rep->Info($params, $cols, $headers, $aligns);
-       $rep->Header();
+       $rep->NewPage();
 
        $accounts = get_gl_accounts($fromacc, $toacc);
 
@@ -121,7 +136,7 @@ function print_GL_transactions()
                        $begin = "";
                else
                {
-                       $begin = begin_fiscalyear();
+                       $begin = get_fiscalyear_begin_for_date($from);
                        if (date1_greater_date2($begin, $from))
                                $begin = $from;
                        $begin = add_days($begin, -1);
@@ -176,7 +191,7 @@ function print_GL_transactions()
                                if ($rep->row < $rep->bottomMargin + $rep->lineHeight)
                                {
                                        $rep->Line($rep->row - 2);
-                                       $rep->Header();
+                                       $rep->NewPage();
                                }
                        }
                        $rep->NewLine();
@@ -194,4 +209,3 @@ function print_GL_transactions()
        $rep->End();
 }
 
-?>
\ No newline at end of file