LEFT JOIN ".TB_PREF."dimensions AS d ON (g.dimension_id = d.id OR g.dimension2_id = d.id)
LEFT JOIN ".TB_PREF."chart_class AS c ON t.class_id = c.cid
WHERE IF(c.ctype > 3, tran_date >= '$begin', tran_date >= '0000-00-00')
- AND tran_date <= '$today' AND d.reference IS NOT NULL GROUP BY d.reference ORDER BY d.reference DESC LIMIT $limit";
+ AND tran_date <= '$today' AND d.reference IS NOT NULL GROUP BY d.reference ORDER BY result DESC LIMIT $limit";
$result = db_query($sql, "Transactions could not be calculated");
$title = sprintf(_("Top %s Dimensions in fiscal year"), $limit);
display_title($title);
$pg->setLabels($week_names);
$pg->addSerie(_('Sales'), $sales, 'bar');
$pg->addSerie(_('Costs'), $costs, 'bar');
- $pg->addSerie(_('Results'), $results, 8);
+ $pg->addSerie(_('Results'), $results, 'spline');
source_graphic($today, $title, _("Week"), $pg, _("Weeks"), $weeks);
}
$pg->setLabels($month_names);
$pg->addSerie(_('Sales'), $sales, 'bar');
$pg->addSerie(_('Costs'), $costs, 'bar');
- $pg->addSerie(_('Results'), $results, 8);
+ $pg->addSerie(_('Results'), $results, 'spline');
source_graphic($today, $title, _("Month"), $pg, _("Months"), $months);
}
$today1 = date2sql($today);
$past1 = get_company_pref('past_due_days');
$past2 = 2 * $past1;
- // removed - debtor_trans.alloc from all summations
+
$sign = "IF(`type` IN(".implode(',', array(ST_CUSTCREDIT,ST_CUSTPAYMENT,ST_BANKDEPOSIT))."), -1, 1)";
- $value = "IFNULL($sign*((trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount)*trans.rate),0)";
+
+ $value = "$sign*(IF(trans.prep_amount, trans.prep_amount,
+ ABS(trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount)) - trans.alloc)*trans.rate";
+
$due = "IF (trans.type=".ST_SALESINVOICE.", trans.due_date, trans.tran_date)";
$sql = "SELECT Sum($value) AS Balance,
Sum(IF ((TO_DAYS('$today1') - TO_DAYS($due)) > 0,$value,0)) AS Due,
WHERE
debtor.payment_terms = terms.terms_indicator
AND debtor.credit_status = credit_status.id";
+ $sql .= " AND ABS(IF(trans.prep_amount, trans.prep_amount, ABS(trans.ov_amount) + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount) - trans.alloc) > ".FLOAT_COMP_DELTA;
$result = db_query($sql,"The customer details could not be retrieved");
$row = db_fetch($result);
{
$today = date2sql($today);
$sign = "IF(`type` IN(".implode(',', array(ST_CUSTCREDIT,ST_CUSTPAYMENT,ST_BANKDEPOSIT))."), -1, 1)";
- $value = "IFNULL($sign*((trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount)*trans.rate),0)";
+ $value = "IFNULL($sign*((trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount -
+ trans.alloc)*trans.rate),0)";
$due = "IF (trans.type=".ST_SALESINVOICE.", trans.due_date, trans.tran_date)";
$sql = "SELECT Sum($value) AS Balance
FROM ".TB_PREF."debtors_master debtor
LEFT JOIN ".TB_PREF."debtor_trans trans ON trans.tran_date <= '$today' AND debtor.debtor_no = trans.debtor_no AND trans.type <> ".ST_CUSTDELIVERY."
- WHERE ABS(trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount) > ".FLOAT_COMP_DELTA;
+ WHERE ABS(trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount) - trans.alloc > ".FLOAT_COMP_DELTA;
$result = db_query($sql,"The customer details could not be retrieved");
$row = db_fetch($result);
return $row[0];
function supplier_aging($today, $width="33")
{
- $pg = new chart('bar', 's3');
+ $pg = new chart('bar', 's3');
if (isset($_POST['select_s3']))
$pg->type = $_POST['select_s3'];
$today1 = date2sql($today);
$past1 = get_company_pref('past_due_days');
$past2 = 2 * $past1;
// removed - debtor_trans.alloc from all summations
- $value = "(trans.ov_amount + trans.ov_gst + trans.ov_discount)*trans.rate";
+ $value = "IF (trans.type=".ST_SUPPINVOICE." OR trans.type=".ST_BANKDEPOSIT.",
+ (trans.ov_amount + trans.ov_gst + trans.ov_discount - trans.alloc) * trans.rate,
+ (trans.ov_amount + trans.ov_gst + trans.ov_discount + trans.alloc) * trans.rate)";
$due = "IF (trans.type=".ST_SUPPINVOICE." OR trans.type=".ST_SUPPCREDIT.",trans.due_date,trans.tran_date)";
$sql = "SELECT Sum($value) AS Balance,
Sum(IF ((TO_DAYS('$today1') - TO_DAYS($due)) > 0,$value,0)) AS Due,
Sum(IF ((TO_DAYS('$today1') - TO_DAYS($due)) > $past1,$value,0)) AS Overdue1,
Sum(IF ((TO_DAYS('$today1') - TO_DAYS($due)) > $past2,$value,0)) AS Overdue2
FROM ".TB_PREF."suppliers supp
- LEFT JOIN ".TB_PREF."supp_trans trans ON supp.supplier_id = trans.supplier_id AND trans.tran_date <= '$today1'";
+ LEFT JOIN ".TB_PREF."supp_trans trans ON supp.supplier_id = trans.supplier_id AND trans.tran_date <= '$today1'
+ AND ABS(trans.ov_amount + trans.ov_gst + trans.ov_discount) > ".FLOAT_COMP_DELTA."
+ AND ABS(trans.ov_amount + trans.ov_gst + trans.ov_discount) - trans.alloc > ".FLOAT_COMP_DELTA;
$result = db_query($sql,"The supplier details could not be retrieved");
$row = db_fetch($result);
function supplier_balance($today)
{
- $today = date2sql($today);
- $value = "(trans.ov_amount + trans.ov_gst + trans.ov_discount) * trans.rate";
+ $today = date2sql($today);
+ $value = "IF (trans.type=".ST_SUPPINVOICE." OR trans.type=".ST_BANKDEPOSIT.",
+ (trans.ov_amount + trans.ov_gst + trans.ov_discount - trans.alloc) * trans.rate,
+ (trans.ov_amount + trans.ov_gst + trans.ov_discount + trans.alloc) * trans.rate)";
$sql = "SELECT Sum($value) AS Balance
FROM ".TB_PREF."suppliers supplier, ".TB_PREF."supp_trans trans
WHERE supplier.supplier_id = trans.supplier_id
AND trans.tran_date <= '$today'
- AND ABS(trans.ov_amount + trans.ov_gst + trans.ov_discount) > ".FLOAT_COMP_DELTA;
+ AND ABS(trans.ov_amount + trans.ov_gst + trans.ov_discount) > ".FLOAT_COMP_DELTA."
+ AND ABS(trans.ov_amount + trans.ov_gst + trans.ov_discount) - trans.alloc > ".FLOAT_COMP_DELTA;
$result = db_query($sql,"The supplier details could not be retrieved");
$row = db_fetch($result);
return $row[0];
FROM ".TB_PREF."supp_trans as trans, ".TB_PREF."suppliers as s
WHERE s.supplier_id = trans.supplier_id
AND trans.type = ".ST_SUPPINVOICE." AND (ABS(trans.ov_amount + trans.ov_gst +
- trans.ov_discount) - trans.alloc) > ".FLOAT_COMP_DELTA."
- AND DATEDIFF('$today', trans.due_date) > 0 ORDER BY days DESC";
+ trans.ov_discount) - trans.alloc) > ".FLOAT_COMP_DELTA." ORDER BY days DESC";
$result = db_query($sql);
- $title = db_num_rows($result) . _(" overdue Purchase Invoices");
+ $title = db_num_rows($result) . _(" unpaid Purchase Invoices");
display_title($title);
$th = array("#", _("Ref."), _("Date"), _("Due Date"), _("Supplier"), _("Currency"), _("Total"),
_("Remainder"), _("Days"));
start_table(TABLESTYLE, "width=90%");
headers($th);
$k = 0; //row colour counter
+ $due = false;
while ($myrow = db_fetch($result))
{
- alt_table_row_color($k);
+ if ($myrow['days'] > 0)
+ {
+ start_row("class='overduebg'");
+ $due = true;
+ }
+ else
+ alt_table_row_color($k);
label_cell(get_trans_view_str(ST_SUPPINVOICE, $myrow["trans_no"]));
label_cell($myrow['reference']);
label_cell(sql2date($myrow['tran_date']));
label_cell($myrow['days'], "align='right'");
end_row();
}
- end_table(2);
+ end_table();
+ if ($due)
+ display_note(_("Marked items are overdue."), 1, 0, "class='overduefg'");
+ br();
}
function stock_below_reorder($today, $type)