$_POST['supp_reference'] = $supp_trans->supp_reference;
$_POST['reference'] = $supp_trans->reference;
$_POST['supplier_id'] = $supp_trans->supplier_id;
+ $_POST['tax_algorithm'] = $supp_trans->tax_algorithm;
}
//--------------------------------------------------------------------------------------------------
$supp_trans->due_date = $_POST['due_date'];
$supp_trans->supp_reference = $_POST['supp_reference'];
$supp_trans->reference = $_POST['reference'];
+ if (isset($_POST['tax_algorithm']))
+ $supp_trans->tax_algorithm = $_POST['tax_algorithm'];
$supp_trans->ov_amount = $supp_trans->ov_discount = 0; /* for starters */
if (count($supp_trans->grn_items) > 0)
table_section(1);
- if (isset($_POST['invoice_no']))
+ if ($supp_trans->trans_type == ST_SUPPCREDIT && $supp_trans->src_docs)
{
- $trans = get_supp_trans($_POST['invoice_no'], ST_SUPPINVOICE);
- $_POST['supplier_id'] = $trans['supplier_id'];
- $supp = $trans['supplier_name'] . " - " . $trans['SupplierCurrCode'];
+// $trans = get_supp_trans($_POST['invoice_no'], ST_SUPPINVOICE);
+// $trans = get_supp_trans($supp_trans->supplier_id, ST_SUPPINVOICE);
+// $_POST['supplier_id'] = $trans['supplier_id'];
+// $supp = $trans['supplier_name'] . " - " . $trans['SupplierCurrCode'];
+
+ $_POST['supplier_id'] = $supp_trans->supplier_id;
+ $supp = $supp_trans->supplier_name." - ".$supp_trans->currency;
label_row(_("Supplier:"), $supp.hidden('supplier_id', $_POST['supplier_id'], false));
- }
+ }
else
{
if (!isset($_POST['supplier_id']) && (get_global_supplier() != ALL_TEXT))
$_POST['supplier_id'] = get_global_supplier();
- supplier_list_row(_("Supplier:"), 'supplier_id', $_POST['supplier_id'], false, true);
+ if (!$supp_trans->trans_no)
+ supplier_list_row(_("Supplier:"), 'supplier_id', $_POST['supplier_id'], false, true);
+ else
+ label_row(_("Supplier:"), $supp_trans->supplier_name
+ .($supp_trans->currency ? ' - '.$supp_trans->currency : '')
+ .hidden('supplier_id', $_POST['supplier_id'], false));
}
if ($supp_trans->supplier_id != $_POST['supplier_id'])
{
ref_row(_("Reference:"), 'reference', '', $Refs->get_next($supp_trans->trans_type));
- if (isset($_POST['invoice_no']))
+ if ($supp_trans->trans_type == ST_SUPPCREDIT)
{
- label_row(_("Supplier's Ref.:"), $_POST['invoice_no'].hidden('invoice_no', $_POST['invoice_no'], false).hidden('supp_reference', $_POST['invoice_no'], false));
- }
- else
- text_row(_("Supplier's Ref.:"), 'supp_reference', $_POST['supp_reference'], 20, 60);
+ label_row(_("Source Invoices:"), implode(',' , $supp_trans->src_docs),'','','src_docs');
+ }
+ text_row(_("Supplier's Ref.:"), 'supp_reference', $_POST['supp_reference'], 20, 60);
table_section(2, "33%");
function invoice_totals(&$supp_trans)
{
+ global $Ajax;
+
copy_to_trans($supp_trans);
$dim = get_company_pref('use_dimension');
$colspan = ($dim == 2 ? 7 : ($dim == 1 ? 6 : 5));
+ div_start('tax_table');
start_table(TABLESTYLE, "width=95%");
label_row(_("Sub-total:"), price_format( $supp_trans->ov_amount), "colspan=$colspan align=right", "align=right");
end_table(1);
start_table(TABLESTYLE2);
+ tax_algorithm_list_row(_("Tax algorithm:"), 'tax_algorithm', null, true);
+ if (list_updated('tax_algorithm')) {
+ $supp_trans->tax_algorithm = $_POST['tax_algorithm'];
+ $Ajax->activate('tax_table');
+ }
textarea_row(_("Memo:"), "Comments", null, 50, 3);
end_table(1);
+ div_end();
}
//--------------------------------------------------------------------------------------------------
function display_grn_items_for_selection(&$supp_trans, $k)
{
-
- if ($supp_trans->trans_type == ST_SUPPINVOICE)
- $result = get_grn_items(0, $supp_trans->supplier_id, true);
+ if ($supp_trans->trans_type == ST_SUPPINVOICE) // outstanding grns and eventually for selected invoice
+ $result = get_grn_items(0, $supp_trans->supplier_id, true, false, $supp_trans->trans_no);
else
- {
+ { // only invoiced
if (isset($_POST['receive_begin']) && isset($_POST['receive_end']))
$result = get_grn_items(0, $supp_trans->supplier_id, false, true, 0, $_POST['receive_begin'], $_POST['receive_end']);
- else if (isset($_POST['invoice_no']))
- $result = get_grn_items(0, $supp_trans->supplier_id, false, true, $_POST['invoice_no']);
+ else if ($supp_trans->src_docs)
+ $result = get_grn_items(0, $supp_trans->supplier_id, false, true, array_keys($supp_trans->src_docs));
else
$result = get_grn_items(0, $supp_trans->supplier_id, false, true);
}
$grn_already_on_invoice = true;
}
}
+
if ($grn_already_on_invoice == false)
{
alt_table_row_color($k);
$n = $myrow["id"];
- label_cell(get_trans_view_str(25, $myrow["grn_batch_id"]).
- hidden('qty_recd'.$n, $myrow["qty_recd"], false).
- hidden('item_code'.$n, $myrow["item_code"], false).
- hidden('item_description'.$n, $myrow["description"], false).
- hidden('prev_quantity_inv'.$n, $myrow['quantity_inv'], false).
- hidden('order_price'.$n, $myrow['unit_price'], false).
- hidden('std_cost_unit'.$n, $myrow['std_cost_unit'], false).
- hidden('po_detail_item'.$n, $myrow['po_detail_item'], false).
- hidden('location'.$n, $myrow["loc_code"], false));
+ label_cell(get_trans_view_str(ST_SUPPRECEIVE, $myrow["grn_batch_id"]));
+ label_cell($myrow["id"].
+ hidden('qty_recd'.$n, $myrow["qty_recd"], false).
+ hidden('item_code'.$n, $myrow["item_code"], false).
+ hidden('item_description'.$n, $myrow["description"], false).
+ hidden('prev_quantity_inv'.$n, $myrow['quantity_inv'], false).
+ hidden('order_price'.$n, $myrow['unit_price'], false).
+ hidden('std_cost_unit'.$n, $myrow['std_cost_unit'], false).
+ hidden('po_detail_item'.$n, $myrow['po_detail_item'], false));
label_cell(get_trans_view_str(ST_PURCHORDER, $myrow["purch_order_no"]));
label_cell($myrow["item_code"]);
label_cell($myrow["description"]);
if ($supp_trans->trans_type == ST_SUPPINVOICE)
qty_cells(null, 'this_quantity_inv'.$n, number_format2($myrow["qty_recd"] - $myrow["quantity_inv"], $dec),
null, null, $dec);
- else
+ else
qty_cells(null, 'This_QuantityCredited'.$n, number_format2(max($myrow["quantity_inv"], 0), $dec),
null, null, $dec);
- $dec2 = 0;
+ $dec2 = 0;
if ($supp_trans->trans_type == ST_SUPPINVOICE)
{
amount_cells(null, 'ChgPrice'.$n, price_decimal_format($myrow["unit_price"], $dec2), null, null, $dec2);
if (($supp_trans->trans_type == ST_SUPPINVOICE) && $_SESSION["wa_current_user"]->can_access('SA_GRNDELETE')) { // Added 2008-10-18 by Joe Hunt. Special access rights needed.
submit_cells('void_item_id'.$n, _("Remove"), '', _("WARNING! Be careful with removal. The operation is executed immediately and cannot be undone !!!"), true);
submit_js_confirm('void_item_id'.$n,
- _('You are about to remove all yet non-invoiced items from selected delivery line. This operation also irreversibly changes related order line. Do you want to continue ?'));
+ sprintf(_('You are about to remove all yet non-invoiced items from delivery line #%d. This operation also irreversibly changes related order line. Do you want to continue ?'), $n));
}
end_row();
}
$heading = _("Received Items Charged on this Invoice");
else
$heading = _("Received Items Credited on this Note");
- }
+ }
display_heading($heading);
if ($mode == 1)
{
- if ($supp_trans->trans_type == ST_SUPPCREDIT && !isset($_POST['invoice_no']))
+ if ($supp_trans->trans_type == ST_SUPPCREDIT)
{
echo "</td>";
- date_cells(_("Received between"), 'receive_begin', "", null, -30, 0, 0, "valign=middle");
+ date_cells(_("Received between"), 'receive_begin', "", null,
+ -$_SESSION["wa_current_user"]->prefs->transaction_days(), 0, 0, "valign=middle");
date_cells(_("and"), 'receive_end', '', null, 1, 0, 0, "valign=middle");
submit_cells('RefreshInquiry', _("Search"),'',_('Refresh Inquiry'), true);
echo "<td>";
- }
-
+ }
+
if ($heading2 != "")
{
display_note($heading2, 0, 0, "class='overduefg'");
- }
+ }
echo "</td><td width=10% align='right'>";
submit('InvGRNAll', _("Add All Items"), true, false,true);
- }
+ }
end_outer_table(0, false);
start_table(TABLESTYLE, "width=95%");
if ($mode == 1)
{
- $th = array(_("Delivery"), _("P.O."), _("Item"), _("Description"),
+ $th = array(_("Delivery"), _("Sequence #"), _("P.O."), _("Item"), _("Description"),
_("Received On"), _("Quantity Received"), _("Quantity Invoiced"),
_("Qty Yet To Invoice"), $supp_trans->tax_included ? _("Price after Tax") : _("Price before Tax"),
_("Total"), "");
alt_table_row_color($k);
$grn_batch = get_grn_batch_from_item($entered_grn->id);
- label_cell(get_trans_view_str(ST_SUPPRECEIVE,$grn_batch));
+ label_cell(get_trans_view_str(ST_SUPPRECEIVE, $grn_batch));
if ($mode == 1)
{
- $row = get_grn_batch($grn_batch);
- label_cell($row['purch_order_no']); // PO
- }
+ label_cell($entered_grn->id);
+ $row = get_grn_batch($grn_batch);
+ label_cell(get_trans_view_str(ST_PURCHORDER, $row["purch_order_no"])); // PO
+ }
label_cell($entered_grn->item_code);
label_cell($entered_grn->item_description);
$dec = get_qty_dec($entered_grn->item_code);