Added invoice preselection option.
authorJanusz Dobrowolski <janusz@frontaccounting.eu>
Tue, 9 Feb 2010 13:07:33 +0000 (13:07 +0000)
committerJanusz Dobrowolski <janusz@frontaccounting.eu>
Tue, 9 Feb 2010 13:07:33 +0000 (13:07 +0000)
purchasing/supplier_payment.php

index e0aa2d08bd2f2b77ea82eb6e97582f6ea33d7a03..938c2a8d506d4b984195e86abf6fa5dcc79074eb 100644 (file)
@@ -64,8 +64,34 @@ if (list_updated('supplier_id') || list_updated('bank_account')) {
 }
 //----------------------------------------------------------------------------------------
 
-if (isset($_GET['AddedID'])) 
-{
+if (!isset($_POST['bank_account'])) { // first page call
+         $_SESSION['alloc'] = new allocation(ST_SUPPAYMENT, 0);
+
+       if (isset($_GET['PInvoice'])) {
+               //  get date and supplier
+               $inv = get_supp_trans($_GET['PInvoice'], ST_SUPPINVOICE);
+               if($inv) {
+                       $_POST['supplier_id'] = $inv['supplier_id'];
+                       $_POST['DatePaid'] = sql2date($inv['tran_date']);
+//                     $_POST['discount'] = price_format(0);
+//             $_POST['bank_account'], $_POST['ref']
+                       $_POST['memo_'] = $inv['supp_reference'];
+                       foreach($_SESSION['alloc']->allocs as $line => $trans) {
+                               if ($trans->type == ST_SUPPINVOICE && $trans->type_no == $_GET['PInvoice']) {
+                                       $_POST['amount'] = 
+                                               $_SESSION['alloc']->amount = price_format($_SESSION['alloc']->allocs[$line]->amount);
+                                       $_SESSION['alloc']->allocs[$line]->current_allocated =
+                                               $_SESSION['alloc']->allocs[$line]->amount;
+                                       break;
+                               }
+                       }
+                       unset($inv);
+               } else
+                       display_error(_("Invalid purchase invoice number."));
+
+       }
+}
+if (isset($_GET['AddedID'])) {
        $payment_id = $_GET['AddedID'];
 
        display_notification_centered( _("Payment has been sucessfully entered"));
@@ -229,9 +255,6 @@ start_form();
 
     supplier_list_row(_("Payment To:"), 'supplier_id', null, false, true);
 
-       if (!isset($_POST['bank_account'])) // first page call
-                 $_SESSION['alloc'] = new allocation(ST_SUPPAYMENT, 0);
-
        set_global_supplier($_POST['supplier_id']);
        
     bank_accounts_list_row(_("From Bank Account:"), 'bank_account', null, true);