- $date = date2sql($date);
-
- $sql = "SELECT ".TB_PREF."debtor_trans.*, ".TB_PREF."sys_types.type_name,
- (".TB_PREF."debtor_trans.ov_amount + ".TB_PREF."debtor_trans.ov_gst + ".TB_PREF."debtor_trans.ov_freight + ".TB_PREF."debtor_trans.ov_discount)
- AS TotalAmount, ".TB_PREF."debtor_trans.alloc AS Allocated,
- ((".TB_PREF."debtor_trans.type = 10)
- AND ".TB_PREF."debtor_trans.due_date < '$date') AS OverDue
- FROM ".TB_PREF."debtor_trans, ".TB_PREF."sys_types
- WHERE ".TB_PREF."debtor_trans.tran_date <= '$date'
- AND ".TB_PREF."debtor_trans.debtor_no = '$debtorno'
- AND ".TB_PREF."debtor_trans.type != 13
- AND ".TB_PREF."debtor_trans.type = ".TB_PREF."sys_types.type_id
- ORDER BY ".TB_PREF."debtor_trans.tran_date";
+ if($to)
+ $to = date2sql($to);
+
+ $sql = "SELECT SUM(IF(t.type = ".ST_SALESINVOICE." OR t.type = ".ST_BANKPAYMENT.",
+ (t.ov_amount + t.ov_gst + t.ov_freight + t.ov_freight_tax + t.ov_discount), 0)) AS charges,
+ SUM(IF(t.type <> ".ST_SALESINVOICE." AND t.type <> ".ST_BANKPAYMENT.",
+ (t.ov_amount + t.ov_gst + t.ov_freight + t.ov_freight_tax + t.ov_discount) * -1, 0)) AS credits,
+ SUM(IF(t.type <> ".ST_SALESINVOICE." AND t.type <> ".ST_BANKPAYMENT.",t.alloc * -1, t.alloc)) AS Allocated,
+ SUM(IF(t.type = ".ST_SALESINVOICE." OR t.type = ".ST_BANKPAYMENT.",
+ (t.ov_amount + t.ov_gst + t.ov_freight + t.ov_freight_tax + t.ov_discount - t.alloc),
+ ((t.ov_amount + t.ov_gst + t.ov_freight + t.ov_freight_tax + t.ov_discount) * -1 + t.alloc))) AS OutStanding
+ FROM ".TB_PREF."debtor_trans t
+ WHERE t.debtor_no = ".db_escape($debtorno)
+ ." AND t.type <> ".ST_CUSTDELIVERY;
+ if ($to)
+ $sql .= " AND t.tran_date < '$to'";
+ $sql .= " GROUP BY debtor_no";
+
+ $result = db_query($sql,"No transactions were returned");
+ return db_fetch($result);
+}
+
+function get_transactions($debtorno, $from, $to)
+{
+ $from = date2sql($from);
+ $to = date2sql($to);
+
+ $sql = "SELECT *,
+ (t.ov_amount + t.ov_gst + t.ov_freight + t.ov_freight_tax + t.ov_discount) AS TotalAmount,
+ IF(t.type <> ".ST_SALESINVOICE." AND t.type <> ".ST_BANKPAYMENT.",t.alloc * -1, t.alloc) AS Allocated,
+ ((t.type = ".ST_SALESINVOICE.") AND t.due_date < '$to') AS OverDue
+ FROM ".TB_PREF."debtor_trans t
+ WHERE t.tran_date >= '$from'
+ AND t.tran_date <= '$to'
+ AND t.debtor_no = ".db_escape($debtorno)."
+ AND t.type <> ".ST_CUSTDELIVERY."
+ ORDER BY t.tran_date";