Removed obsolete date selectors in Delivery against Order inquiry fixed order selection.
authorJanusz Dobrowolski <janusz@frontaccounting.eu>
Sun, 13 Feb 2011 09:06:11 +0000 (09:06 +0000)
committerJanusz Dobrowolski <janusz@frontaccounting.eu>
Sun, 13 Feb 2011 09:06:11 +0000 (09:06 +0000)
sales/includes/db/sales_order_db.inc
sales/inquiry/sales_orders_view.php

index c4e5046529166c66c5ae11bbe94ad4e853c79a8e..34da078bed63acc19394682bd50cf50d15747151 100644 (file)
@@ -488,17 +488,17 @@ function get_branch_to_order($customer_id, $branch_id) {
            return db_query($sql,"Customer Branch Record Retreive");
 }
 
-function get_sql_for_sales_orders_view($selected_customer, $trans_type)
+function get_sql_for_sales_orders_view($selected_customer, $trans_type, $trans_no, $filter, 
+       $stock_item=null, $from='', $to='', $ref='', $location='')
 {
-       global $selected_stock_item;
-       
+
        $sql = "SELECT 
                        sorder.order_no,
                        sorder.reference,
                        debtor.name,
                        branch.br_name,"
-                       .($_POST['order_view_mode']=='InvoiceTemplates' 
-                               || $_POST['order_view_mode']=='DeliveryTemplates' ?
+                       .($filter=='InvoiceTemplates' 
+                               || $filter=='DeliveryTemplates' ?
                         "sorder.comments, " : "sorder.customer_ref, ")
                        ."sorder.ord_date,
                        sorder.delivery_date,
@@ -519,46 +519,47 @@ function get_sql_for_sales_orders_view($selected_customer, $trans_type)
                        AND sorder.branch_code = branch.branch_code
                        AND debtor.debtor_no = branch.debtor_no";
 
-       if (isset($_POST['OrderNumber']) && $_POST['OrderNumber'] != "")
+       if (isset($trans_no) && $trans_no != "")
        {
                // search orders with number like 
-               $number_like = "%".$_POST['OrderNumber'];
-               $sql .= " AND sorder.order_no LIKE ".db_escape($number_like)
-                               ." GROUP BY sorder.order_no";
+               $number_like = "%".$trans_no;
+               $sql .= " AND sorder.order_no LIKE ".db_escape($number_like);
+//                             ." GROUP BY sorder.order_no";
        }
-       elseif (isset($_POST['OrderReference']) && $_POST['OrderReference'] != "")
+       elseif ($ref != "")
        {
                // search orders with reference like 
-               $number_like = "%".$_POST['OrderReference']."%";
-               $sql .= " AND sorder.reference LIKE ".db_escape($number_like)
-                               ." GROUP BY sorder.order_no";
+               $number_like = "%".$ref."%";
+               $sql .= " AND sorder.reference LIKE ".db_escape($number_like);
+//                             ." GROUP BY sorder.order_no";
        }
        else    // ... or select inquiry constraints
        {
-               if ($_POST['order_view_mode']!='DeliveryTemplates' && $_POST['order_view_mode']!='InvoiceTemplates')
+               if ($filter!='DeliveryTemplates' && $filter!='InvoiceTemplates' && $filter!='OutstandingOnly')
                {
-                       $date_after = date2sql($_POST['OrdersAfterDate']);
-                       $date_before = date2sql($_POST['OrdersToDate']);
+                       $date_after = date2sql($from);
+                       $date_before = date2sql($to);
 
                        $sql .=  " AND sorder.ord_date >= '$date_after'"
                                        ." AND sorder.ord_date <= '$date_before'";
                }
+       }
                if ($trans_type == ST_SALESQUOTE && !check_value('show_all'))
                        $sql .= " AND sorder.delivery_date >= '".date2sql(Today())."' AND line.qty_sent=0"; // show only outstanding, not realized quotes
 
                if ($selected_customer != -1)
                        $sql .= " AND sorder.debtor_no=".db_escape($selected_customer);
 
-               if (isset($selected_stock_item))
-                       $sql .= " AND line.stk_code=".db_escape($selected_stock_item);
+               if (isset($stock_item))
+                       $sql .= " AND line.stk_code=".db_escape($stock_item);
 
-               if (isset($_POST['StockLocation']) && $_POST['StockLocation'] != ALL_TEXT)
-                       $sql .= " AND sorder.from_stk_loc = ".db_escape($_POST['StockLocation']);
+               if ($location)
+                       $sql .= " AND sorder.from_stk_loc = ".db_escape($location);
 
-               if ($_POST['order_view_mode']=='OutstandingOnly')
+               if ($filter=='OutstandingOnly')
                        $sql .= " AND line.qty_sent < line.quantity";
 
-               elseif ($_POST['order_view_mode']=='InvoiceTemplates' || $_POST['order_view_mode']=='DeliveryTemplates')
+               elseif ($filter=='InvoiceTemplates' || $filter=='DeliveryTemplates')
                        $sql .= " AND sorder.type=1";
 
                $sql .= " GROUP BY sorder.order_no,
@@ -567,7 +568,6 @@ function get_sql_for_sales_orders_view($selected_customer, $trans_type)
                                        sorder.customer_ref,
                                        sorder.ord_date,
                                        sorder.deliver_to";
-       }
        return $sql;
 }
 ?>
\ No newline at end of file
index 53de2699fbf05f87d8ee84d2084972640247423c..5f23e891a989b0aa497b711da1e71c645e7e9f12 100644 (file)
@@ -194,26 +194,18 @@ if (isset($_POST['Update']) && isset($_POST['last'])) {
                        change_tpl_flag($id);
 }
 
+$show_dates = !in_array($_POST['order_view_mode'], array('OutstandingOnly', 'InvoiceTemplates', 'DeliveryTemplates'));
 //---------------------------------------------------------------------------------------------
 //     Order range form
 //
-if (get_post('_OrderNumber_changed')) // enable/disable selection controls
+if (get_post('_OrderNumber_changed') || get_post('_OrderReference_changed')) // enable/disable selection controls
 {
-       $disable = get_post('OrderNumber') !== '';
+       $disable = get_post('OrderNumber') !== '' || get_post('OrderReference') !== '';
 
-       if ($_POST['order_view_mode']!='DeliveryTemplates' 
-               && $_POST['order_view_mode']!='InvoiceTemplates') {
+       if ($show_dates) {
                        $Ajax->addDisable(true, 'OrdersAfterDate', $disable);
                        $Ajax->addDisable(true, 'OrdersToDate', $disable);
        }
-       $Ajax->addDisable(true, 'StockLocation', $disable);
-       $Ajax->addDisable(true, '_SelectStockFromList_edit', $disable);
-       $Ajax->addDisable(true, 'SelectStockFromList', $disable);
-
-       if ($disable) {
-               $Ajax->addFocus(true, 'OrderNumber');
-       } else
-               $Ajax->addFocus(true, 'OrdersAfterDate');
 
        $Ajax->activate('orders_tbl');
 }
@@ -223,19 +215,21 @@ start_form();
 start_table(TABLESTYLE_NOBORDER);
 start_row();
 ref_cells(_("#:"), 'OrderNumber', '',null, '', true);
-if ($_POST['order_view_mode'] != 'DeliveryTemplates' && $_POST['order_view_mode'] != 'InvoiceTemplates')
+ref_cells(_("Ref"), 'OrderReference', '',null, '', true);
+if ($show_dates)
 {
-       ref_cells(_("Ref"), 'OrderReference', '',null, '', true);
        date_cells(_("from:"), 'OrdersAfterDate', '', null, -30);
        date_cells(_("to:"), 'OrdersToDate', '', null, 1);
 }
 locations_list_cells(_("Location:"), 'StockLocation', null, true);
-end_row();
-end_table();
 
-start_table(TABLESTYLE_NOBORDER);
-start_row();
+if($show_dates) {
+       end_row();
+       end_table();
 
+       start_table(TABLESTYLE_NOBORDER);
+       start_row();
+}
 stock_items_list_cells(_("Item:"), 'SelectStockFromList', null, true);
 
 if ($trans_type == ST_SALESQUOTE)
@@ -251,7 +245,8 @@ end_table(1);
 //---------------------------------------------------------------------------------------------
 //     Orders inquiry table
 //
-$sql = get_sql_for_sales_orders_view($selected_customer, $trans_type);
+$sql = get_sql_for_sales_orders_view($selected_customer, $trans_type, $_POST['OrderNumber'], $_POST['order_view_mode'],
+       @$selected_stock_item, @$_POST['OrdersAfterDate'], @$_POST['OrdersToDate'], @$_POST['OrderReference'], $_POST['StockLocation']);
 
 if ($trans_type == ST_SALESORDER)
        $cols = array(