[0004212] Work Order Entry: fixed error when voided WO refence is reused.
[fa-stable.git] / includes / dashboard.inc
index 6bdc84c9985c4f288258f3c1b3a165744bf13438..bb6e6e258335fd231bd3bc75f987f302b663426e 100644 (file)
@@ -15,7 +15,7 @@ function dashboard($sel_app)
        $selected_app = $sel_app;
 
 
-       if (!$_SESSION["wa_current_user"]->check_application_access($selected_app))
+       if (is_object($sel_app) && !$_SESSION["wa_current_user"]->check_application_access($selected_app))
                return;
        // first have a look through the directory, 
        // and remove old temporary pdfs and pngs
@@ -157,12 +157,15 @@ function display_all()
        table_one();
        $title = customer_top($today, 3, 66, $pg);
        source_graphic($today, $title, _("Customer"), $pg, _("Sales"));
+       $pg = new graph();
        $title = supplier_top($today, 3, 66, $pg);
        source_graphic($today, $title, _("Supplier"), $pg, _("Purchases"));
+       $pg = new graph();
        $title = stock_top($today, 3, 66, 0, $pg);
        source_graphic($today, $title, _("Items"), $pg, _("Sales"), _("Costs"));
        table_two();
        dimension_top($today, 3, 66);
+       $pg = new graph();
        $title = gl_top($today, 66, $pg);
        source_graphic($today, $title, _("Class"), $pg, _("Amount"), null, 5);
        stock_top($today, 3, 66, 2);
@@ -269,7 +272,7 @@ function stock_top($today, $limit=10, $width="33", $type=0, &$pg=null)
                        SUM(qty) AS qty FROM ".TB_PREF."stock_master AS s, ".TB_PREF."stock_moves AS m 
                        WHERE s.stock_id=m.stock_id ";
                if ($type == 1)
-                       $sql .= "AND s.mb_flag='M' ";
+                       $sql .= "AND s.mb_flag='M' AND m.type <> ".ST_CUSTDELIVERY." AND m.type <> ".ST_CUSTCREDIT." ";
                elseif ($type == 2)     
                        $sql .= "AND s.mb_flag='F' ";
        }
@@ -403,22 +406,23 @@ function gl_top($today, $width="33", &$pg=null)
 
 function gl_performance($today, $width="33", $weeks=5)
 {
+       global $SysPrefs;
        $pg = new graph();
 
        $begin = begin_fiscalyear();
        $begin1 = date2sql($begin);
        $today1 = date2sql($today);
-       $sql = "SELECT CONCAT(YEAR(tran_date), '/', WEEK(tran_date)) AS week_name, 
-                       SUM(IF (c.ctype = 4, amount * -1, 0)) AS sales, 
-                       SUM(IF (c.ctype = 6, amount, 0)) AS costs 
-               FROM
+       $sep = $SysPrefs->dateseps[user_date_sep()];
+       $sql = "SELECT week_name, sales, costs 
+               FROM(SELECT DATE_FORMAT(tran_date, '%Y{$sep}%u') AS week_name, 
+                       SUM(IF(c.ctype = 4, amount * -1, 0)) AS sales, 
+                       SUM(IF(c.ctype = 6, amount, 0)) AS costs FROM 
                        ".TB_PREF."gl_trans, ".TB_PREF."chart_master AS a, ".TB_PREF."chart_types AS t, 
-                       ".TB_PREF."chart_class AS c WHERE (c.ctype = 4 OR c.ctype = 6)
-                       AND account = a.account_code AND a.account_type = t.id AND t.class_id = c.cid
-                       AND IF(c.ctype > 3, tran_date >= '$begin1', tran_date >= '0000-00-00') 
-                       AND tran_date <= '$today1' 
-               GROUP BY week_name 
-               ORDER BY YEAR(tran_date) DESC, WEEK(tran_date) DESC limit 0, $weeks";
+                       ".TB_PREF."chart_class AS c WHERE(c.ctype = 4 OR c.ctype = 6) 
+                       AND account = a.account_code AND a.account_type = t.id AND t.class_id = c.cid 
+                       AND tran_date >= '$begin1' AND tran_date <= '$today1' 
+                       GROUP BY week_name ORDER BY week_name DESC LIMIT 0, $weeks) b 
+               GROUP BY week_name ORDER BY week_name ASC";
        $result = db_query($sql, "Transactions could not be calculated");
        $title = _("Last $weeks weeks Performance");
        check_page_security('SA_GLANALYTIC');
@@ -430,9 +434,6 @@ function gl_performance($today, $width="33", $weeks=5)
                $pg->z[$i] = $myrow['costs'];
                $i++;
        }       
-       $pg->x = array_reverse($pg->x);
-       $pg->y = array_reverse($pg->y);
-       $pg->z = array_reverse($pg->z);
        
        source_graphic($today, $title, _("Week"), $pg, _("Sales"), _("Costs"), 1);
 }
@@ -451,7 +452,7 @@ function source_graphic($today, $title, $x_axis, $pg, $graphic1, $graphic2=null,
        $pg->type      = $type;
        $pg->skin      = 1;
        $pg->built_in  = false;
-       $filename = company_path(). "/pdf_files/". uniqid("").".png";
+       $filename = company_path(). "/pdf_files/". random_id().".png";
        $pg->display($filename, true);
        start_table(TABLESTYLE);
        start_row();