Added 'All locations' option in Stock Movements inquiry.
authorMaxime Bourget <bmx007@gmail.com>
Thu, 2 May 2013 20:26:43 +0000 (21:26 +0100)
committerJanusz Dobrowolski <janusz@frontaccounting.eu>
Wed, 8 May 2013 05:33:36 +0000 (07:33 +0200)
inventory/includes/db/movement_types_db.inc
inventory/inquiry/stock_movements.php

index 1862f7b16822139fa944016c2862ea2ec850f3fc..47164191daa20f02dd2a2993d126b23ea8ad088b 100644 (file)
@@ -53,13 +53,23 @@ function get_stock_movements($stock_id, $StockLocation,     $BeforeDate, $AfterDate)
 {
        $before_date = date2sql($BeforeDate);
        $after_date = date2sql($AfterDate);
-       $sql = "SELECT type, trans_no, tran_date, person_id, qty, reference
-               FROM ".TB_PREF."stock_moves
-               WHERE loc_code=".db_escape($StockLocation)."
-               AND tran_date >= '". $after_date . "'
-               AND tran_date <= '" . $before_date . "'
-               AND stock_id = ".db_escape($stock_id) . " ORDER BY tran_date,trans_id";
-       return db_query($sql, "could not query stock moves");
+  $sql = "SELECT type, trans_no, tran_date, person_id, qty, reference";
+
+       if(!$StockLocation) {
+                $sql .= ", loc_code";
+       }
+  $sql.=    " FROM ".TB_PREF."stock_moves
+               WHERE";
+
+  if ($StockLocation) {
+    $sql.= " loc_code=".db_escape($StockLocation)." AND";
+       }
+
+       $sql.= " tran_date >= '". $after_date . "'
+       AND tran_date <= '" . $before_date . "'
+       AND stock_id = ".db_escape($stock_id) . " ORDER BY tran_date,trans_id";
+
+  return db_query($sql, "could not query stock moves");
 }
 
 function get_stock_movements_before($stock_id, $StockLocation, $AfterDate)
@@ -83,4 +93,4 @@ function movement_types_in_stock_moves($selected_id)
        $myrow = db_fetch_row($result);
        return ($myrow[0] > 0); 
 }
-?>
\ No newline at end of file
+?>
index 2c5aa0e044b6c77a139190e9850f43a56288c590..df25e10208c2be5c8d7bfe5a5f4bcd77756b3880 100644 (file)
@@ -57,7 +57,7 @@ end_table();
 start_table(TABLESTYLE_NOBORDER);
 start_row();
 
-locations_list_cells(_("From Location:"), 'StockLocation', null);
+locations_list_cells(_("From Location:"), 'StockLocation', null, true);
 
 date_cells(_("From:"), 'AfterDate', '', null, -30);
 date_cells(_("To:"), 'BeforeDate');
@@ -72,14 +72,17 @@ set_global_stock_item($_POST['stock_id']);
 
 $before_date = date2sql($_POST['BeforeDate']);
 $after_date = date2sql($_POST['AfterDate']);
+$display_location = !$_POST['StockLocation'];
 
 $result = get_stock_movements($_POST['stock_id'], $_POST['StockLocation'],
        $_POST['BeforeDate'], $_POST['AfterDate']);
 
 div_start('doc_tbl');
 start_table(TABLESTYLE);
-$th = array(_("Type"), _("#"), _("Reference"), _("Date"), _("Detail"),
-       _("Quantity In"), _("Quantity Out"), _("Quantity On Hand"));
+$th = array(_("Type"), _("#"), _("Reference"));
+if($display_location) array_push($th, _("Location"));
+array_push($th, _("Date"), _("Detail"), _("Quantity In"), _("Quantity Out"), _("Quantity On Hand"));
+
 
 table_header($th);
 
@@ -94,7 +97,8 @@ if (!isset($before_qty_row[0]))
 }
 */
 start_row("class='inquirybg'");
-label_cell("<b>"._("Quantity on hand before") . " " . $_POST['AfterDate']."</b>", "align=center colspan=5");
+$header_span = $display_location ? 6 : 5;
+label_cell("<b>"._("Quantity on hand before") . " " . $_POST['AfterDate']."</b>", "align=center colspan=$header_span");
 label_cell("&nbsp;", "colspan=2");
 $dec = get_qty_dec($_POST['stock_id']);
 qty_cell($before_qty, false, $dec);
@@ -132,6 +136,9 @@ while ($myrow = db_fetch($result))
        label_cell(get_trans_view_str($myrow["type"], $myrow["trans_no"]));
 
        label_cell(get_trans_view_str($myrow["type"], $myrow["trans_no"], $myrow["reference"]));
+       if($display_location) {
+               label_cell($myrow['loc_code']);
+       }
        label_cell($trandate);
 
        $person = $myrow["person_id"];
@@ -182,7 +189,7 @@ while ($myrow = db_fetch($result))
 //end of while loop
 
 start_row("class='inquirybg'");
-label_cell("<b>"._("Quantity on hand after") . " " . $_POST['BeforeDate']."</b>", "align=center colspan=5");
+label_cell("<b>"._("Quantity on hand after") . " " . $_POST['BeforeDate']."</b>", "align=center colspan=$header_span");
 qty_cell($total_in, false, $dec);
 qty_cell($total_out, false, $dec);
 qty_cell($after_qty, false, $dec);