{
$to = date2sql($to);
- $sql = "SELECT SUM(IF(".TB_PREF."supp_trans.type = ".ST_SUPPINVOICE.", (".TB_PREF."supp_trans.ov_amount + ".TB_PREF."supp_trans.ov_gst +
- ".TB_PREF."supp_trans.ov_discount)";
+ $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)";
if ($convert)
$sql .= " * rate";
$sql .= ", 0)) AS charges,
- SUM(IF(".TB_PREF."supp_trans.type <> ".ST_SUPPINVOICE.", (".TB_PREF."supp_trans.ov_amount + ".TB_PREF."supp_trans.ov_gst +
- ".TB_PREF."supp_trans.ov_discount)";
+ 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)";
if ($convert)
$sql .= "* rate";
$sql .= ", 0)) AS credits,
if ($convert)
$sql .= " * rate";
$sql .= ") AS Allocated,
- SUM((".TB_PREF."supp_trans.ov_amount + ".TB_PREF."supp_trans.ov_gst +
- ".TB_PREF."supp_trans.ov_discount - ".TB_PREF."supp_trans.alloc)";
+ 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))";
if ($convert)
$sql .= " * rate";
$sql .= ") AS OutStanding
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.supplier_id = '$supplier_id' AND ".TB_PREF."supp_trans.ov_amount!=0
ORDER BY ".TB_PREF."supp_trans.tran_date";
$TransResult = db_query($sql,"No transactions were returned");
$currency = $_POST['PARAM_3'];
$no_zeros = $_POST['PARAM_4'];
$comments = $_POST['PARAM_5'];
- $destination = $_POST['PARAM_6'];
+ $orientation = $_POST['PARAM_6'];
+ $destination = $_POST['PARAM_7'];
if ($destination)
include_once($path_to_root . "/reporting/includes/excel_report.inc");
else
include_once($path_to_root . "/reporting/includes/pdf_report.inc");
- if ($fromsupp == ALL_NUMERIC)
+ $orientation = ($orientation ? 'L' : 'P');
+ if ($fromsupp == ALL_TEXT)
$supp = _('All');
else
$supp = get_supplier_name($fromsupp);
3 => array( 'text' => _('Currency'),'from' => $currency, 'to' => ''),
4 => array('text' => _('Suppress Zeros'), 'from' => $nozeros, 'to' => ''));
- $rep = new FrontReport(_('Supplier Balances'), "SupplierBalances", user_pagesize());
+ $rep = new FrontReport(_('Supplier Balances'), "SupplierBalances", user_pagesize(), 9, $orientation);
+ if ($orientation == 'L')
+ recalculate_cols($cols);
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
$grandtotal = array(0,0,0,0);
$sql = "SELECT supplier_id, supp_name AS name, curr_code FROM ".TB_PREF."suppliers";
- if ($fromsupp != ALL_NUMERIC)
+ if ($fromsupp != ALL_TEXT)
$sql .= " WHERE supplier_id=".db_escape($fromsupp);
$sql .= " ORDER BY supp_name";
$result = db_query($sql, "The customers could not be retrieved");
$rep->Line($rep->row + 4);
while ($trans=db_fetch($res))
{
- if ($no_zeros && $trans['TotalAmount'] == 0 && $trans['Allocated'] == 0) continue;
+ if ($no_zeros && floatcmp(abs($trans['TotalAmount']), $trans['Allocated']) == 0) continue;
$rep->NewLine(1, 2);
$rep->TextCol(0, 1, $systypes_array[$trans['type']]);
$rep->TextCol(1, 2, $trans['reference']);
}
$item[2] = round2($trans['Allocated'] * $rate, $dec);
$rep->AmountCol(6, 7, $item[2], $dec);
- /*
- if ($trans['type'] == 20)
- $item[3] = ($trans['TotalAmount'] - $trans['Allocated']) * $rate;
- else
- $item[3] = ($trans['TotalAmount'] + $trans['Allocated']) * $rate;
- */
- if ($trans['type'] == ST_SUPPINVOICE || $trans['type'] == ST_BANKDEPOSIT)
- $item[3] = $item[0] + $item[1] - $item[2];
+ if ($trans['TotalAmount'] > 0.0)
+ $item[3] = $item[0] - $item[2];
else
- $item[3] = $item[0] - $item[1] + $item[2];
+ $item[3] = ($item[1] - $item[2]) * -1;
$rep->AmountCol(7, 8, $item[3], $dec);
for ($i = 0; $i < 4; $i++)
{