X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=purchasing%2Fsupplier_payment.php;h=32f4020b5f3765f6839343e2d68b3d781a50223b;hb=0a6988eadb9d779a9c49c79772c1c2a3e19b6b05;hp=323ff16ec6f1911906e9ecefe7a5ce47cc5ef7ae;hpb=19dce8c7be29e4cc8e7be92d044259348373d456;p=fa-stable.git diff --git a/purchasing/supplier_payment.php b/purchasing/supplier_payment.php index 323ff16e..32f4020b 100644 --- a/purchasing/supplier_payment.php +++ b/purchasing/supplier_payment.php @@ -57,23 +57,15 @@ if (isset($_POST['_DatePaid_changed'])) { $Ajax->activate('_ex_rate'); } -if (list_updated('supplier_id')) { - $_POST['amount'] = price_format(0); - $_SESSION['alloc']->person_id = get_post('supplier_id'); - $Ajax->activate('amount'); -} elseif (list_updated('bank_account')) - $Ajax->activate('alloc_tbl'); - //---------------------------------------------------------------------------------------- if (!isset($_POST['bank_account'])) { // first page call $_SESSION['alloc'] = new allocation(ST_SUPPAYMENT, 0, get_post('supplier_id')); if (isset($_GET['PInvoice'])) { + $supp = isset($_POST['supplier_id']) ? $_POST['supplier_id'] : null; // get date and supplier - $inv = get_supp_trans($_GET['PInvoice'], $_GET['trans_type']); - $dflt_act = get_default_bank_account($inv['curr_code']); - $_POST['bank_account'] = $dflt_act['id']; + $inv = get_supp_trans($_GET['PInvoice'], $_GET['trans_type'], $supp); if ($inv) { $_SESSION['alloc']->person_id = $_POST['supplier_id'] = $inv['supplier_id']; $_SESSION['alloc']->read(); @@ -104,6 +96,10 @@ if (isset($_GET['AddedID'])) { display_note(get_gl_view_str(ST_SUPPAYMENT, $payment_id, _("View the GL &Journal Entries for this Payment")), 0, 1); submenu_option(_("Enter another supplier &payment"), "/purchasing/supplier_payment.php?supplier_id=".$_POST['supplier_id']); + + submenu_option(_("Enter &Supplier Invoice"), "/purchasing/supplier_invoice.php?New=1"); + submenu_option(_("Enter direct &Invoice"), "/purchasing/po_entry_items.php?NewInvoice=Yes"); + submenu_option(_("Enter Other &Payment"), "/gl/gl_bank.php?NewPayment=Yes"); submenu_option(_("Enter &Customer Payment"), "/sales/customer_payments.php"); submenu_option(_("Enter Other &Deposit"), "/gl/gl_bank.php?NewDeposit=Yes"); @@ -114,6 +110,17 @@ if (isset($_GET['AddedID'])) { //---------------------------------------------------------------------------------------- +function get_default_supplier_payment_bank_account($supplier_id, $date) +{ + $previous_payment = get_supp_payment_before($supplier_id, date2sql($date)); + if ($previous_payment) + { + return $previous_payment['bank_id']; + } + return get_default_supplier_bank_account($supplier_id); +} +//---------------------------------------------------------------------------------------- + function check_inputs() { global $Refs; @@ -225,7 +232,7 @@ function handle_add_payment() { $payment_id = write_supp_payment(0, $_POST['supplier_id'], $_POST['bank_account'], $_POST['DatePaid'], $_POST['ref'], input_num('amount'), input_num('discount'), $_POST['memo_'], - input_num('charge'), input_num('bank_amount', input_num('amount'))); + input_num('charge'), input_num('bank_amount', input_num('amount')), $_POST['dimension_id'], $_POST['dimension2_id']); new_doc_date($_POST['DatePaid']); $_SESSION['alloc']->trans_no = $payment_id; @@ -266,6 +273,13 @@ start_form(); supplier_list_row(_("Payment To:"), 'supplier_id', null, false, true); + if (list_updated('supplier_id')) { + $_POST['amount'] = price_format(0); + $_SESSION['alloc']->person_id = get_post('supplier_id'); + $Ajax->activate('amount'); + } elseif (list_updated('bank_account')) + $Ajax->activate('alloc_tbl'); + if (list_updated('supplier_id') || list_updated('bank_account')) { $_SESSION['alloc']->read(); $_POST['memo_'] = $_POST['amount'] = ''; @@ -275,9 +289,12 @@ start_form(); set_global_supplier($_POST['supplier_id']); if (!list_updated('bank_account') && !get_post('__ex_rate_changed')) - $_POST['bank_account'] = get_default_supplier_bank_account($_POST['supplier_id']); - else + { + $_POST['bank_account'] = get_default_supplier_payment_bank_account($_POST['supplier_id'], $_POST['DatePaid']); + } else + { $_POST['amount'] = price_format(0); + } bank_accounts_list_row(_("From Bank Account:"), 'bank_account', null, true); @@ -301,11 +318,25 @@ start_form(); if ($bank_currency != $supplier_currency) { - amount_row(_("Bank Amount:"), 'bank_amount', null, '', $bank_currency, 2); + amount_row(_("Bank Amount:"), 'bank_amount', null, '', $bank_currency); } amount_row(_("Bank Charge:"), 'charge', null, '', $bank_currency); + $row = get_supplier($_POST['supplier_id']); + $_POST['dimension_id'] = @$row['dimension_id']; + $_POST['dimension2_id'] = @$row['dimension2_id']; + $dim = get_company_pref('use_dimension'); + if ($dim > 0) + dimensions_list_row(_("Dimension").":", 'dimension_id', + null, true, ' ', false, 1, false); + else + hidden('dimension_id', 0); + if ($dim > 1) + dimensions_list_row(_("Dimension")." 2:", 'dimension2_id', + null, true, ' ', false, 2, false); + else + hidden('dimension2_id', 0); end_outer_table(1);