Sales Order Entry: initial item selector position points to last ordered item (seems...
authorJanusz Dobrowolski <janusz@frontaccounting.eu>
Sat, 3 Feb 2018 08:37:51 +0000 (09:37 +0100)
committerJanusz Dobrowolski <janusz@frontaccounting.eu>
Sat, 3 Feb 2018 17:02:46 +0000 (18:02 +0100)
sales/includes/db/sales_order_db.inc
sales/includes/ui/sales_order_ui.inc

index 584ffcd0562bea330e472518943230e52c70c87a..859fde7400450a5fe4361230a732d96835bb2dd7 100644 (file)
@@ -626,3 +626,17 @@ function is_prepaid_order_open($order_no)
 
        return $result[0];
 }
+
+function last_sales_order_detail($order, $field)
+{
+        $sql = "SELECT $field
+                        FROM ".TB_PREF."sales_order_details d"
+                        ." LEFT JOIN " .TB_PREF."sales_orders o on d.order_no=o.order_no
+                        WHERE debtor_no=" . db_escape($order->customer_id)
+                        . " ORDER BY d.id DESC LIMIT 1";
+
+        $last_query=db_query($sql, "Retreive last order detail");
+        $row = db_fetch_row($last_query);
+        return $row[0];
+}
+
index 4b697c514f6526d4dd2307e7e4fa2cedab40b085..febabc4df7a3a115d603a57a9a12c65723b9f279 100644 (file)
@@ -502,13 +502,14 @@ function sales_order_item_controls(&$order, &$rowcounter, $line_no=-1)
                if ($order->fixed_asset)
                        stock_disposable_fa_list_cells(null,'stock_id', null, _('[Select item]'), true, $order->line_items);
                else
-                       sales_items_list_cells(null,'stock_id', null, false, true, true);
                if (list_updated('stock_id')) {
+                            sales_items_list_cells(null,'stock_id', null, false, true, true);
                            $Ajax->activate('price');
                            $Ajax->activate('units');
                            $Ajax->activate('qty');
                            $Ajax->activate('line_total');
-               }
+               } else
+                        sales_items_list_cells(null,'stock_id', last_sales_order_detail($order, 'stk_code'), false, true, true);
 
                $item_info = get_item_edit_info($_POST['stock_id']);
                $units = $item_info["units"];