Old ineffective sql_trail superseded by new improved db_trail logging only calls...
[fa-stable.git] / dimensions / includes / dimensions_db.inc
index 3335623dce8bdb2abcaafabf1ae0ca9e2eb4a5fc..dd7edad131ac86448711ac37a4c8d4e501d8f1ba 100644 (file)
@@ -13,7 +13,7 @@ function add_dimension($reference, $name, $type_, $date_, $due_date, $memo_)
 {
        global $Refs;
 
-       begin_transaction();
+       begin_transaction(__FUNCTION__, func_get_args());
 
        $date = date2sql($date_);
        $duedate = date2sql($due_date);
@@ -35,7 +35,7 @@ function add_dimension($reference, $name, $type_, $date_, $due_date, $memo_)
 
 function update_dimension($id, $name, $type_, $date_, $due_date, $memo_)
 {
-       begin_transaction();
+       begin_transaction(__FUNCTION__, func_get_args());
 
        $date = date2sql($date_);
        $duedate = date2sql($due_date);
@@ -57,7 +57,7 @@ function update_dimension($id, $name, $type_, $date_, $due_date, $memo_)
 
 function delete_dimension($id)
 {
-       begin_transaction();
+       begin_transaction(__FUNCTION__, func_get_args());
 
        // delete the actual dimension
        $sql="DELETE FROM ".TB_PREF."dimensions WHERE id=".db_escape($id);
@@ -122,10 +122,11 @@ function dimension_has_deposits($id)
 
 function dimension_has_payments($id)
 {
-       $sql = "SELECT SUM(amount) FROM ".TB_PREF."gl_trans WHERE dimension_id = ".db_escape($id);
+       $sql = "SELECT COUNT(*) FROM ".TB_PREF."gl_trans WHERE dimension_id = ".db_escape($id)
+        . " OR dimension2_id = ".db_escape($id);
        $res = db_query($sql, "Transactions could not be calculated");
        $row = db_fetch_row($res);
-       return ($row[0] != 0.0);
+       return ($row[0] 0);
 }
 
 function dimension_is_closed($id)
@@ -138,16 +139,20 @@ function dimension_is_closed($id)
 
 function close_dimension($id)
 {
+       begin_transaction(__FUNCTION__, func_get_args());
        $sql = "UPDATE ".TB_PREF."dimensions SET closed='1' WHERE id = ".db_escape($id);
        db_query($sql, "could not close dimension");
+       commit_transaction();
 }
 
 //--------------------------------------------------------------------------------------
 
 function reopen_dimension($id)
 {
-       $sql = "UPDATE ".TB_PREF."dimensions SET closed='0' WHERE id = $id";
+       begin_transaction(__FUNCTION__, func_get_args());
+       $sql = "UPDATE ".TB_PREF."dimensions SET closed='0' WHERE id = ".db_escape($id);
        db_query($sql, "could not reopen dimension");
+       commit_transaction();
 }
 
 //--------------------------------------------------------------------------------------
@@ -156,11 +161,14 @@ function get_dimension_balance_all($id, $from, $to)
 {
        $from = date2sql($from);
        $to = date2sql($to);
-       $sql = "SELECT account, ".TB_PREF."chart_master.account_name, sum(amount) AS amt FROM
-               ".TB_PREF."gl_trans,".TB_PREF."chart_master WHERE
-               ".TB_PREF."gl_trans.account = ".TB_PREF."chart_master.account_code AND
-               (dimension_id = $id OR dimension2_id = $id) AND
-               tran_date >= '$from' AND tran_date <= '$to' GROUP BY account";
+       $sql = "SELECT account, coa.account_name, sum(amount) AS amt 
+               FROM "
+               .TB_PREF."gl_trans trans,"
+               .TB_PREF."chart_master coa
+               WHERE
+                       trans.account = coa.account_code
+               AND     (dimension_id = ".db_escape($id)." OR dimension2_id = ".db_escape($id).")
+               AND     tran_date >= '$from' AND tran_date <= '$to' GROUP BY account";
        return db_query($sql, "Transactions could not be calculated");
 }
 
@@ -169,10 +177,12 @@ function get_dimension_balance_all($id, $from, $to)
 function get_dimension_balance($id, $from, $to) 
 {
        $id = db_escape($id);
-       $sql = "SELECT SUM(amount) FROM ".TB_PREF."gl_trans WHERE tran_date >= '" .
-               date2sql($from) . "' AND
-               tran_date <= '" . date2sql($to) . "' AND (dimension_id = " .
-               $id." OR dimension2_id = " .$id.")";
+       $sql = "SELECT SUM(amount)
+                       FROM ".TB_PREF."gl_trans 
+                       WHERE
+                               tran_date >= '" .       date2sql($from) . "' 
+                       AND     tran_date <= '" . date2sql($to) . "' 
+                       AND (dimension_id = $id OR dimension2_id = $id)";
        $res = db_query($sql, "Sum of transactions could not be calculated");
        $row = db_fetch_row($res);
 
@@ -181,8 +191,8 @@ function get_dimension_balance($id, $from, $to)
 
 //--------------------------------------------------------------------------------------
 
-function get_sql_for_search_dimensions($dim)
-{      
+function get_sql_for_search_dimensions($dim, $from, $to, $order='', $type = -1, $open=false, $overdue = false)
+{
        $sql = "SELECT dim.id,
                dim.reference,
                dim.name,
@@ -192,34 +202,29 @@ function get_sql_for_search_dimensions($dim)
                dim.closed
                FROM ".TB_PREF."dimensions as dim WHERE id > 0";
 
-       if (isset($_POST['OrderNumber']) && $_POST['OrderNumber'] != "")
+       if ($order)
        {
-               $sql .= " AND reference LIKE ".db_escape("%". $_POST['OrderNumber'] . "%");
+               $sql .= " AND reference LIKE ".db_escape("%". $order . "%");
        } else {
 
                if ($dim == 1)
                        $sql .= " AND type_=1";
 
-               if (isset($_POST['OpenOnly']))
-               {
+               if ($open)
                        $sql .= " AND closed=0";
-               }
 
-               if (isset($_POST['type_']) && ($_POST['type_'] > 0))
-               {
-                       $sql .= " AND type_=".db_escape($_POST['type_']);
-               }
+               if ($type > 0)
+                       $sql .= " AND type_=".db_escape($type);
 
-               if (isset($_POST['OverdueOnly']))
+               if ($overdue)
                {
                        $today = date2sql(Today());
 
                        $sql .= " AND due_date < '$today'";
                }
 
-               $sql .= " AND date_ >= '" . date2sql($_POST['FromDate']) . "'
-                       AND date_ <= '" . date2sql($_POST['ToDate']) . "'";
+               $sql .= " AND date_ >= '" . date2sql($from) . "'
+                       AND date_ <= '" . date2sql($to) . "'";
        }
        return $sql;
-}      
-?>
\ No newline at end of file
+}