Global fixes in SQL queries aimed to make them more readible and easier for maintence.
[fa-stable.git] / purchasing / includes / db / supp_trans_db.inc
index 468020530aa04b5c60c3b58a0414e0afe9bb8d18..f49b6c071d64981d405b0d342a04924bc578959a 100644 (file)
@@ -50,39 +50,45 @@ function write_supp_trans($type, $trans_no, $supplier_id, $date_, $due_date, $re
 
 //-------------------------------------------------------------------------------------------------------------
 
-function get_supp_trans($trans_no, $trans_type=-1)
+function get_supp_trans($trans_no, $trans_type=-1, $supplier_id=null)
 {
-       $sql = "SELECT ".TB_PREF."supp_trans.*, (".TB_PREF."supp_trans.ov_amount+".TB_PREF."supp_trans.ov_gst+".TB_PREF."supp_trans.ov_discount) AS Total,
-               ".TB_PREF."suppliers.supp_name AS supplier_name, ".TB_PREF."suppliers.curr_code AS curr_code ";
+       $sql = "SELECT trans.*, (trans.ov_amount+trans.ov_gst+trans.ov_discount) AS Total,
+               supplier.supp_name AS supplier_name, supplier.curr_code AS curr_code ";
 
        if ($trans_type == ST_SUPPAYMENT || $trans_type == ST_BANKPAYMENT)
        {
                // it's a payment so also get the bank account
-               $sql .= ", ".TB_PREF."bank_accounts.bank_name, ".TB_PREF."bank_accounts.bank_account_name, ".TB_PREF."bank_accounts.bank_curr_code,
-                       ".TB_PREF."bank_accounts.account_type AS BankTransType, ".TB_PREF."bank_trans.amount AS bank_amount,
-                       ".TB_PREF."bank_trans.ref ";
+               $sql .= ", account.bank_name, account.bank_account_name, account.bank_curr_code,
+                       account.account_type AS BankTransType, bank_trans.amount AS bank_amount,
+                       bank_trans.ref ";
        }
 
-       $sql .= " FROM ".TB_PREF."supp_trans, ".TB_PREF."suppliers ";
+       $sql .= " FROM ".TB_PREF."supp_trans trans,"
+                       .TB_PREF."suppliers supplier";
 
        if ($trans_type == ST_SUPPAYMENT || $trans_type == ST_BANKPAYMENT)
        {
                // it's a payment so also get the bank account
-               $sql .= ", ".TB_PREF."bank_trans, ".TB_PREF."bank_accounts";
+               $sql .= ", "
+                       .TB_PREF."bank_trans bank_trans,"
+                       .TB_PREF."bank_accounts account";
        }
 
-       $sql .= " WHERE ".TB_PREF."supp_trans.trans_no=".db_escape($trans_no)."
-               AND ".TB_PREF."supp_trans.supplier_id=".TB_PREF."suppliers.supplier_id";
+       $sql .= " WHERE trans.trans_no=".db_escape($trans_no)."
+               AND trans.supplier_id=supplier.supplier_id";
 
-       if ($trans_type > 0)
-               $sql .= " AND ".TB_PREF."supp_trans.type=".db_escape($trans_type);
+       if (isset($supplier_id))
+               $sql .= " AND trans.supplier_id=".db_escape($supplier_id);
+
+       if ($trans_type > -1)
+               $sql .= " AND trans.type=".db_escape($trans_type);
 
        if ($trans_type == ST_SUPPAYMENT || $trans_type == ST_BANKPAYMENT)
        {
                // it's a payment so also get the bank account
-               $sql .= " AND ".TB_PREF."bank_trans.trans_no =".db_escape($trans_no)."
-                       AND ".TB_PREF."bank_trans.type=".db_escape($trans_type)."
-                       AND ".TB_PREF."bank_accounts.id=".TB_PREF."bank_trans.bank_act ";
+               $sql .= " AND bank_trans.trans_no =".db_escape($trans_no)."
+                       AND bank_trans.type=".db_escape($trans_type)."
+                       AND account.id=bank_trans.bank_act ";
        }
 
        $result = db_query($sql, "Cannot retreive a supplier transaction");
@@ -100,10 +106,10 @@ function get_supp_trans($trans_no, $trans_type=-1)
        display_db_error("duplicate supplier transactions found for given params", $sql, true);
        exit;
     }
-
     return db_fetch($result);
 }
 
+
 //----------------------------------------------------------------------------------------
 
 function exists_supp_trans($type, $type_no)
@@ -190,7 +196,7 @@ function get_sql_for_supplier_inquiry($filter, $after_date, $to_date, $supplier_
                trans.id as trans_no,
                trans.reference, 
                supplier.supp_name, 
-               '' as supp_reference,
+               po.requisition_no AS supp_reference,
        delivery_date as tran_date, 
                '' as due_date,
                supplier.curr_code, 
@@ -198,8 +204,9 @@ function get_sql_for_supplier_inquiry($filter, $after_date, $to_date, $supplier_
                '' AS Allocated,
                0 as OverDue,
        1 as Settled
-       FROM ".TB_PREF."grn_batch as trans, ".TB_PREF."suppliers as supplier
+       FROM ".TB_PREF."grn_batch as trans, ".TB_PREF."suppliers as supplier, ".TB_PREF."purch_orders as po
        WHERE supplier.supplier_id = trans.supplier_id
+       AND trans.purch_order_no = po.order_no
        AND trans.delivery_date >= '$date_after'
        AND trans.delivery_date <= '$date_to'";
 
@@ -212,7 +219,7 @@ function get_sql_for_supplier_inquiry($filter, $after_date, $to_date, $supplier_
                        $sql = $sql2;
        } 
        elseif (!isset($filter) || $filter == ALL_TEXT || $filter == '6') {
-               $sql = "SELECT * FROM (($sql) UNION ($sql2)) as tr";
+               $sql = "SELECT * FROM (($sql) UNION ($sql2)) as tr WHERE 1";
        }
 
        if (isset($filter) && $filter != ALL_TEXT)
@@ -242,4 +249,3 @@ function get_sql_for_supplier_inquiry($filter, $after_date, $to_date, $supplier_
        }
        return $sql;
 }
-?>
\ No newline at end of file