*** empty log message ***
[fa-stable.git] / purchasing / po_receive_items.php
index 039355e4beab455676dbd7cfcc13d1670486f701..14a017be94d95278fee23d703bb623e8682e1a26 100644 (file)
@@ -23,13 +23,13 @@ if (isset($_GET['AddedID']))
 
        display_notification_centered(_("Purchase Order Delivery has been processed"));
 
-       display_note(get_trans_view_str($trans_type, $grn, _("View this Delivery")));
+       display_note(get_trans_view_str($trans_type, $grn, _("&View this Delivery")));
 
        //echo "<BR>";
-       //echo get_gl_view_str(25, $grn, _("View the GL Journal Entries for this Delivery"));
+       //echo get_gl_view_str(25, $grn, _("View the GL &Journal Entries for this Delivery"));
 
 //     echo "<br>";
-       hyperlink_no_params("$path_to_root/purchasing/inquiry/po_search.php", _("Select a different purchase order for receiving items against"));
+       hyperlink_no_params("$path_to_root/purchasing/inquiry/po_search.php", _("Select a different &purchase order for receiving items against"));
 
        display_footer_exit();
 }
@@ -47,6 +47,8 @@ if ((!isset($_GET['PONumber']) || $_GET['PONumber'] == 0) && !isset($_SESSION['P
 function display_po_receive_items()
 {
        global $table_style;
+
+       div_start('grn_items');
     start_table("colspan=7 $table_style width=90%");
     $th = array(_("Item Code"), _("Description"), _("Ordered"), _("Units"), _("Received"),
        _("Outstanding"), _("This Delivery"), _("Price"), _("Total"));
@@ -88,8 +90,7 @@ function display_po_receive_items()
                        if ($qty_outstanding > 0)
                                qty_cells(null, $ln_itm->line_no, number_format2($ln_itm->receive_qty, $dec), "align=right", null, $dec);
                        else
-                               qty_cells(null, $ln_itm->line_no, number_format2($ln_itm->receive_qty, $dec), "align=right",
-                                       "disabled", $dec);
+                               label_cell(number_format2($ln_itm->receive_qty, $dec), "align=right");
 
                        amount_cell($ln_itm->price);
                        amount_cell($line_total);
@@ -101,6 +102,7 @@ function display_po_receive_items()
     label_row(_("Total value of items received"), $display_total, "colspan=8 align=right",
        "nowrap align=right");
     end_table();
+       div_end();
 }
 
 //--------------------------------------------------------------------------------------------------
@@ -112,9 +114,8 @@ function check_po_changed()
        // Otherwise if you try to fullfill item quantities separately will give error.
        $sql = "SELECT item_code, quantity_ordered, quantity_received, qty_invoiced
                FROM ".TB_PREF."purch_order_details
-               WHERE order_no=" . $_SESSION['PO']->order_no . "
-               AND (quantity_ordered > quantity_received)
-               ORDER BY po_detail_item";
+               WHERE order_no=" . $_SESSION['PO']->order_no 
+               ." ORDER BY po_detail_item";
 
        $result = db_query($sql, "could not query purch order details");
     check_db_error("Could not check that the details of the purchase order had not been changed by another user ", $sql);
@@ -123,7 +124,6 @@ function check_po_changed()
        while ($myrow = db_fetch($result))
        {
                $ln_item = $_SESSION['PO']->line_items[$line_no];
-
                // only compare against items that are outstanding
                $qty_outstanding = $ln_item->quantity - $ln_item->qty_received;
                if ($qty_outstanding > 0)
@@ -136,7 +136,7 @@ function check_po_changed()
                        return true;
                }
                }
-               $line_no++;
+               $line_no++;
        } /*loop through all line items of the order to ensure none have been invoiced */
 
        return false;
@@ -215,21 +215,24 @@ function can_process()
 
 function process_receive_po()
 {
-       global $path_to_root;
+       global $path_to_root, $Ajax;
 
        if (!can_process())
                return;
 
        if (check_po_changed())
        {
-               echo "<br> " . _("This order has been changed or invoiced since this delivery was started to be actioned. Processing halted. To enter a delivery against this purchase order, it must be re-selected and re-read again to update the changes made by the other user.") . "<BR>";
-
-               echo "<center><a href='$path_to_root/purchasing/inquiry/po_search.php?" . SID . "'>" . _("Select a different purchase order for receiving goods against") . "</a></center>";
-               echo "<center><a href='$path_to_root/po_receive_items.php?" . SID . "PONumber=" . $_SESSION['PO']->OrderNumber . "'>" . _("Re-Read the updated purchase order for receiving goods against") . "</a></center>";
+               display_error(_("This order has been changed or invoiced since this delivery was started to be actioned. Processing halted. To enter a delivery against this purchase order, it must be re-selected and re-read again to update the changes made by the other user."));
+               hyperlink_no_params("$path_to_root/purchasing/inquiry/po_search.php",
+                _("Select a different purchase order for receiving goods against"));
+               hyperlink_params("$path_to_root/purchasing/po_receive_items.php", 
+                        _("Re-Read the updated purchase order for receiving goods against"),
+                        "PONumber=" . $_SESSION['PO']->order_no);
                unset($_SESSION['PO']->line_items);
                unset($_SESSION['PO']);
                unset($_POST['ProcessGoodsReceived']);
-               exit;
+               $Ajax->activate('_page_body');
+               display_footer_exit();
        }
 
        $grn = add_grn($_SESSION['PO'], $_POST['DefaultReceivedDate'],
@@ -261,7 +264,7 @@ if (isset($_POST['Update']) || isset($_POST['ProcessGoodsReceived']))
        set from the post to the quantity to be received in this receival*/
        foreach ($_SESSION['PO']->line_items as $line)
        {
-
+        if( ($line->quantity - $line->qty_received)>0) {
                $_POST[$line->line_no] = max($_POST[$line->line_no], 0);
                if (!check_num($line->line_no))
                        $_POST[$line->line_no] = number_format2(0, get_qty_dec($line->stock_id));
@@ -275,7 +278,9 @@ if (isset($_POST['Update']) || isset($_POST['ProcessGoodsReceived']))
                {
                        $_SESSION['PO']->line_items[$line->line_no]->item_description = $_POST[$line->stock_id . "Desc"];
                }
+        }
        }
+       $Ajax->activate('grn_items');
 }
 
 //--------------------------------------------------------------------------------------------------
@@ -293,11 +298,9 @@ display_grn_summary($_SESSION['PO'], true);
 display_heading(_("Items to Receive"));
 display_po_receive_items();
 
-echo "<br><center>";
-submit('Update', _("Update"));
-echo "&nbsp";
-submit('ProcessGoodsReceived', _("Process Receive Items"));
-echo "</center>";
+echo '<br>';
+submit_center_first('Update', _("Update"), '', true);
+submit_center_last('ProcessGoodsReceived', _("Process Receive Items"), _("Clear all GL entry fields"), true);
 
 end_form();