function get_supplier_details_to_order(&$order, $supplier_id)
{
- $sql = "SELECT curr_code,supp_name FROM ".TB_PREF."suppliers
- WHERE supplier_id = '$supplier_id'";
+ $sql = "SELECT curr_code, supp_name, tax_group_id, supp.tax_included,
+ supp.credit_limit - Sum(IFNULL(IF(trans.type=".ST_SUPPCREDIT.", -1, 1)
+ * (ov_amount + ov_gst + ov_discount),0)) as cur_credit
+ FROM ".TB_PREF."suppliers supp
+ LEFT JOIN ".TB_PREF."supp_trans trans ON supp.supplier_id = trans.supplier_id
+ WHERE supp.supplier_id = '$supplier_id'
+ GROUP BY
+ supp.supp_name";
+
$result = db_query($sql, "The supplier details could not be retreived");
$myrow = db_fetch($result);
+ $order->credit = $myrow["cur_credit"];
+ $_POST['supplier_id'] = $supplier_id;
+ $_POST['supplier_name'] = $myrow["supp_name"];
+ $_POST['curr_code'] = $myrow["curr_code"];
- $order->curr_code = $_POST['curr_code'] = $myrow["curr_code"];
- $order->supplier_name = $_POST['supplier_name'] = $myrow["supp_name"];
- $order->supplier_id = $_POST['supplier_id'] = $supplier_id;
+ $order->set_supplier($supplier_id, $myrow["supp_name"], $myrow["curr_code"],
+ $myrow["tax_group_id"], $myrow["tax_included"]);
}
//---------------------------------------------------------------------------------------------------
function display_po_header(&$order)
{
- global $table_style2, $Ajax, $Refs;
+ global $Ajax, $Refs;
$editable = ($order->order_no == 0);
- start_outer_table("width=80% $table_style2");
+ start_outer_table(TABLESTYLE2, "width=80%");
table_section(1);
if ($editable)
}
if ($order->supplier_id != get_post('supplier_id',-1)) {
+ $old_supp = $order->supplier_id;
get_supplier_details_to_order($order, $_POST['supplier_id']);
// supplier default price update
foreach ($order->line_items as $line_no=>$item) {
$line = &$order->line_items[$line_no];
- $line->price = get_purchase_price ($order->supplier_id, $_POST['stock_id']);
- $line->quantity = get_purchase_conversion_factor ($order->supplier_id, $_POST['stock_id']);
+ $line->price = get_purchase_price ($order->supplier_id, $line->stock_id);
+ $line->quantity =
+ $line->quantity/get_purchase_conversion_factor ($old_supp, $line->stock_id)
+ *get_purchase_conversion_factor ($order->supplier_id, $line->stock_id);
}
$Ajax->activate('items_table');
}
$_POST['OrderDate']);
}
+ supplier_credit_row($order->supplier_id, $order->credit);
+
+ table_section(2);
+
if ($editable)
{
ref_row(_("Reference:"), 'ref');
label_row(_("Reference:"), $order->reference);
}
- table_section(2);
-
// check this out?????????
//if (!isset($_POST['OrderDate']) || $_POST['OrderDate'] == "")
// $_POST['OrderDate'] = $order->orig_order_date;
function display_po_items(&$order, $editable=true)
{
- global $table_style;
-
display_heading(_("Order Items"));
div_start('items_table');
- start_table("$table_style width=80%");
+ start_table(TABLESTYLE, "width=80%");
$th = array(_("Item Code"), _("Item Description"), _("Quantity"),
_("Received"), _("Unit"),
- _("Required Delivery Date"), _("Price"), _("Line Total"), "");
+ _("Required Delivery Date"), $order->tax_included ? _("Price after Tax") : _("Price before Tax"), _("Line Total"), "");
if ($order->trans_type != ST_PURCHORDER)
array_remove($th, 5);
if ($id==-1 && $editable)
po_item_controls($order, $k);
- $display_total = price_format($total);
- label_row(_("Total Excluding Shipping/Tax"), $display_total, "colspan="
- .(count($order->line_items) ? 7:6)." align=right",
- "nowrap align=right", 2);
+ $colspan = count($th)-2;
+ if (count($order->line_items))
+ $colspan--;
+
+ $display_sub_total = price_format($total);
+
+ label_row(_("Sub-total"), $display_sub_total, "colspan=$colspan align=right","align=right", 2);
+
+ $taxes = $order->get_taxes(input_num('freight_cost'));
+
+ $tax_total = display_edit_tax_items($taxes, $colspan, $order->tax_included, 2);
+
+ $display_total = price_format(($total + input_num('freight_cost') + $tax_total));
+
+ start_row();
+ label_cells(_("Amount Total"), $display_total, "colspan=$colspan align='right'","align='right'");
+ $order->order_no ? submit_cells('update', _("Update"), "colspan=2 align='center'", _("Refresh"), true)
+ : label_cell('', "colspan=2");
+ end_row();
end_table(1);
div_end();
function display_po_summary(&$po, $is_self=false, $editable=false)
{
- global $table_style;
- start_table("$table_style width=90%");
+ start_table(TABLESTYLE, "width=90%");
start_row();
label_cells(_("Reference"), $po->reference, "class='tableheader2'");
}
else
{
- submit_cells('EnterLine', _("Add Item"), "colspan=2",
+ submit_cells('EnterLine', _("Add Item"), "colspan=2 align='center'",
_('Add new item to document'), true);
}