Bug in gl/includes/db/gl_journal.inc. Fixed by @barbarian.
[fa-stable.git] / sales / inquiry / sales_deliveries_view.php
index 72e6d132da71930d9f5e84a1a0bdb40aa0d3d9c2..3b318997cf8e43323e29ad1f7c327497f45e944d 100644 (file)
@@ -18,54 +18,53 @@ include($path_to_root . "/sales/includes/sales_ui.inc");
 include_once($path_to_root . "/reporting/includes/reporting.inc");
 
 $js = "";
-if ($use_popup_windows)
+if ($SysPrefs->use_popup_windows)
        $js .= get_js_open_window(900, 600);
-if ($use_date_picker)
+if (user_use_date_picker())
        $js .= get_js_date_picker();
 
 if (isset($_GET['OutstandingOnly']) && ($_GET['OutstandingOnly'] == true))
 {
        $_POST['OutstandingOnly'] = true;
-       page(_("Search Not Invoiced Deliveries"), false, false, "", $js);
+       page(_($help_context = "Search Not Invoiced Deliveries"), false, false, "", $js);
 }
 else
 {
        $_POST['OutstandingOnly'] = false;
-       page(_("Search All Deliveries"), false, false, "", $js);
+       page(_($help_context = "Search All Deliveries"), false, false, "", $js);
 }
 
 if (isset($_GET['selected_customer']))
 {
-       $selected_customer = $_GET['selected_customer'];
+       $_POST['customer_id'] = $_GET['selected_customer'];
 }
 elseif (isset($_POST['selected_customer']))
 {
-       $selected_customer = $_POST['selected_customer'];
+       $_POST['customer_id'] = $_POST['selected_customer'];
 }
-else
-       $selected_customer = -1;
 
 if (isset($_POST['BatchInvoice']))
 {
        // checking batch integrity
     $del_count = 0;
-    foreach($_POST['Sel_'] as $delivery => $branch) {
-               $checkbox = 'Sel_'.$delivery;
-               if (check_value($checkbox))     {
-               if (!$del_count) {
-                               $del_branch = $branch;
-               }
-               else {
-                               if ($del_branch != $branch)     {
-                               $del_count=0;
-                               break;
+    if (isset($_POST['Sel_'])) {
+               foreach($_POST['Sel_'] as $delivery => $branch) {
+                       $checkbox = 'Sel_'.$delivery;
+                       if (check_value($checkbox))     {
+                               if (!$del_count) {
+                                       $del_branch = $branch;
                                }
-               }
-               $selected[] = $delivery;
-               $del_count++;
-               }
-    }
-
+                               else {
+                                       if ($del_branch != $branch)     {
+                                               $del_count=0;
+                                               break;
+                                       }
+                               }
+                               $selected[] = $delivery;
+                               $del_count++;
+                       }
+               }
+       }
     if (!$del_count) {
                display_error(_('For batch invoicing you should
                    select at least one delivery. All items must be dispatched to
@@ -98,37 +97,32 @@ if (get_post('_DeliveryNumber_changed'))
 
 start_form(false, false, $_SERVER['PHP_SELF'] ."?OutstandingOnly=".$_POST['OutstandingOnly']);
 
-start_table("class='tablestyle_noborder'");
+start_table(TABLESTYLE_NOBORDER);
 start_row();
 ref_cells(_("#:"), 'DeliveryNumber', '',null, '', true);
-date_cells(_("from:"), 'DeliveryAfterDate', '', null, -30);
+date_cells(_("from:"), 'DeliveryAfterDate', '', null, -user_transaction_days());
 date_cells(_("to:"), 'DeliveryToDate', '', null, 1);
 
 locations_list_cells(_("Location:"), 'StockLocation', null, true);
+end_row();
+
+end_table();
+start_table(TABLESTYLE_NOBORDER);
+start_row();
 
 stock_items_list_cells(_("Item:"), 'SelectStockFromList', null, true);
 
+customer_list_cells(_("Select a customer: "), 'customer_id', null, true, true);
+
 submit_cells('SearchOrders', _("Search"),'',_('Select documents'), 'default');
 
 hidden('OutstandingOnly', $_POST['OutstandingOnly']);
 
 end_row();
 
-end_table();
-end_form();
+end_table(1);
 //---------------------------------------------------------------------------------------------
 
-if (isset($_POST['SelectStockFromList']) && ($_POST['SelectStockFromList'] != "") &&
-       ($_POST['SelectStockFromList'] != ALL_TEXT))
-{
-       $selected_stock_item = $_POST['SelectStockFromList'];
-}
-else
-{
-       unset($selected_stock_item);
-}
-
-//---------------------------------------------------------------------------------------------
 function trans_view($trans, $trans_no)
 {
        return get_customer_trans_view_str(ST_CUSTDELIVERY, $trans['trans_no']);
@@ -147,8 +141,7 @@ function batch_checkbox($row)
 function edit_link($row)
 {
        return $row["Outstanding"]==0 ? '' :
-               pager_link(_('Edit'), "/sales/customer_delivery.php?ModifyDelivery="
-                       .$row['trans_no'], ICON_EDIT);
+               trans_editor_link(ST_CUSTDELIVERY, $row['trans_no']);
 }
 
 function prt_link($row)
@@ -169,65 +162,11 @@ function check_overdue($row)
                        $row["Outstanding"]!=0;
 }
 //------------------------------------------------------------------------------------------------
-$sql = "SELECT trans.trans_no,
-               debtor.name,
-               branch.branch_code,
-               branch.br_name,
-               sorder.deliver_to,
-               trans.reference,
-               sorder.customer_ref,
-               trans.tran_date,
-               trans.due_date,
-               (ov_amount+ov_gst+ov_freight+ov_freight_tax) AS DeliveryValue,
-               debtor.curr_code,
-               Sum(line.quantity-line.qty_done) AS Outstanding,
-               Sum(line.qty_done) AS Done
-       FROM "
-        .TB_PREF."sales_orders as sorder, "
-        .TB_PREF."debtor_trans as trans, "
-        .TB_PREF."debtor_trans_details as line, "
-        .TB_PREF."debtors_master as debtor, "
-        .TB_PREF."cust_branch as branch
-               WHERE
-               sorder.order_no = trans.order_ AND
-               trans.debtor_no = debtor.debtor_no
-                       AND trans.type = ".ST_CUSTDELIVERY."
-                       AND line.debtor_trans_no = trans.trans_no
-                       AND line.debtor_trans_type = trans.type
-                       AND trans.branch_code = branch.branch_code
-                       AND trans.debtor_no = branch.debtor_no ";
-
-if ($_POST['OutstandingOnly'] == true) {
-        $sql .= " AND line.qty_done < line.quantity ";
-}
-
-//figure out the sql required from the inputs available
-if (isset($_POST['DeliveryNumber']) && $_POST['DeliveryNumber'] != "")
-{
-       $delivery = "%".$_POST['DeliveryNumber'];
-       $sql .= " AND trans.trans_no LIKE ".db_escape($delivery);
-       $sql .= " GROUP BY trans.trans_no";
-}
-else
-{
-       $sql .= " AND trans.tran_date >= '".date2sql($_POST['DeliveryAfterDate'])."'";
-       $sql .= " AND trans.tran_date <= '".date2sql($_POST['DeliveryToDate'])."'";
-
-       if ($selected_customer != -1)
-               $sql .= " AND trans.debtor_no=".db_escape($selected_customer)." ";
-
-       if (isset($selected_stock_item))
-               $sql .= " AND line.stock_id=".db_escape($selected_stock_item)." ";
-
-       if (isset($_POST['StockLocation']) && $_POST['StockLocation'] != ALL_TEXT)
-               $sql .= " AND sorder.from_stk_loc = ".db_escape($_POST['StockLocation'])." ";
-
-       $sql .= " GROUP BY trans.trans_no ";
-
-} //end no delivery number selected
+$sql = get_sql_for_sales_deliveries_view(get_post('DeliveryAfterDate'), get_post('DeliveryToDate'), get_post('customer_id'),   
+       get_post('SelectStockFromList'), get_post('StockLocation'), get_post('DeliveryNumber'), get_post('OutstandingOnly'));
 
 $cols = array(
-               _("Delivery #") => array('fun'=>'trans_view'), 
+               _("Delivery #") => array('fun'=>'trans_view', 'align'=>'right'), 
                _("Customer"), 
                'branch_code' => 'skip',
                _("Branch") => array('ord'=>''), 
@@ -258,12 +197,8 @@ $table->set_marker('check_overdue', _("Marked items are overdue."));
 
 //$table->width = "92%";
 
-start_form();
-
 display_db_pager($table);
 
 end_form();
 end_page();
 
-?>
-