{
$to = date2sql($to);
- $sql = "SELECT SUM(IF(".TB_PREF."supp_trans.type = ".ST_SUPPINVOICE." OR ".TB_PREF."supp_trans.type = ".ST_BANKDEPOSIT.",
- (".TB_PREF."supp_trans.ov_amount + ".TB_PREF."supp_trans.ov_gst + ".TB_PREF."supp_trans.ov_discount), 0)) AS charges,
- SUM(IF(".TB_PREF."supp_trans.type <> ".ST_SUPPINVOICE." AND ".TB_PREF."supp_trans.type <> ".ST_BANKDEPOSIT.",
- (".TB_PREF."supp_trans.ov_amount + ".TB_PREF."supp_trans.ov_gst + ".TB_PREF."supp_trans.ov_discount), 0)) AS credits,
- SUM(".TB_PREF."supp_trans.alloc) AS Allocated,
- SUM(IF(".TB_PREF."supp_trans.type = ".ST_SUPPINVOICE." OR ".TB_PREF."supp_trans.type = ".ST_BANKDEPOSIT.",
- (".TB_PREF."supp_trans.ov_amount + ".TB_PREF."supp_trans.ov_gst + ".TB_PREF."supp_trans.ov_discount - ".TB_PREF."supp_trans.alloc),
- (".TB_PREF."supp_trans.ov_amount + ".TB_PREF."supp_trans.ov_gst + ".TB_PREF."supp_trans.ov_discount + ".TB_PREF."supp_trans.alloc))) AS OutStanding
+ $sql = "SELECT
+ SUM(IF(type IN(".ST_SUPPINVOICE.",".ST_BANKDEPOSIT."), (ov_amount + ov_gst + ov_discount), 0)) AS charges,
+ SUM(IF(type NOT IN(".ST_SUPPINVOICE.",".ST_BANKDEPOSIT."), (ov_amount + ov_gst + ov_discount), 0)) AS credits,
+ SUM(alloc) AS Allocated,
+ SUM(IF(type IN(".ST_SUPPINVOICE.",".ST_BANKDEPOSIT."), (ov_amount + ov_gst + ov_discount - alloc),
+ (ov_amount + ov_gst + ov_discount + alloc))) AS OutStanding
FROM ".TB_PREF."supp_trans
- WHERE ".TB_PREF."supp_trans.tran_date < '$to'
- AND ".TB_PREF."supp_trans.supplier_id = '$supplier_id' GROUP BY supplier_id";
+ WHERE tran_date < '$to'
+ AND supplier_id = '$supplier_id' GROUP BY supplier_id";
$result = db_query($sql,"No transactions were returned");
return db_fetch($result);
$from = date2sql($from);
$to = date2sql($to);
- $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 TotalAmount, ".TB_PREF."supp_trans.alloc AS Allocated,
- ((".TB_PREF."supp_trans.type = ".ST_SUPPINVOICE.")
- AND ".TB_PREF."supp_trans.due_date < '$to') AS OverDue
- FROM ".TB_PREF."supp_trans
- WHERE ".TB_PREF."supp_trans.tran_date >= '$from' AND ".TB_PREF."supp_trans.tran_date <= '$to'
- AND ".TB_PREF."supp_trans.supplier_id = '$supplier_id' AND ".TB_PREF."supp_trans.ov_amount!=0
- ORDER BY ".TB_PREF."supp_trans.tran_date";
+ $sql = "SELECT *,
+ (ov_amount + ov_gst + ov_discount) AS TotalAmount,
+ alloc AS Allocated,
+ ((type = ".ST_SUPPINVOICE.") AND due_date < '$to') AS OverDue
+ FROM ".TB_PREF."supp_trans
+ WHERE tran_date >= '$from' AND tran_date <= '$to'
+ AND supplier_id = '$supplier_id' AND ov_amount!=0
+ ORDER BY tran_date";
$TransResult = db_query($sql,"No transactions were returned");
function print_supplier_balances()
{
- global $path_to_root, $systypes_array;
-
- $from = $_POST['PARAM_0'];
- $to = $_POST['PARAM_1'];
- $fromsupp = $_POST['PARAM_2'];
- $show_balance = $_POST['PARAM_3'];
- $currency = $_POST['PARAM_4'];
- $no_zeros = $_POST['PARAM_5'];
- $comments = $_POST['PARAM_6'];
+ global $path_to_root, $systypes_array;
+
+ $from = $_POST['PARAM_0'];
+ $to = $_POST['PARAM_1'];
+ $fromsupp = $_POST['PARAM_2'];
+ $show_balance = $_POST['PARAM_3'];
+ $currency = $_POST['PARAM_4'];
+ $no_zeros = $_POST['PARAM_5'];
+ $comments = $_POST['PARAM_6'];
$orientation = $_POST['PARAM_7'];
$destination = $_POST['PARAM_8'];
if ($destination)
if ($no_zeros) $nozeros = _('Yes');
else $nozeros = _('No');
- $cols = array(0, 100, 130, 190, 250, 320, 385, 450, 515);
+ $cols = array(0, 95, 140, 200, 250, 320, 385, 450, 515);
$headers = array(_('Trans Type'), _('#'), _('Date'), _('Due Date'), _('Charges'),
_('Credits'), _('Allocated'), _('Outstanding'));
1 => array('text' => _('Period'), 'from' => $from, 'to' => $to),
2 => array('text' => _('Supplier'), 'from' => $supp, 'to' => ''),
3 => array( 'text' => _('Currency'),'from' => $currency, 'to' => ''),
- 4 => array('text' => _('Suppress Zeros'), 'from' => $nozeros, 'to' => ''));
+ 4 => array('text' => _('Suppress Zeros'), 'from' => $nozeros, 'to' => ''));
$rep = new FrontReport(_('Supplier Balances'), "SupplierBalances", user_pagesize(), 9, $orientation);
if ($orientation == 'L')