X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;ds=inline;f=inventory%2Finquiry%2Fstock_movements.php;h=020ab3f4fedec8ee9373337fc921f5a26b7d1f98;hb=380ae03e2df9602d07d156ae93b87cbe59b01b3a;hp=1731e7bfe911f55ef30794957b1f75749c966af4;hpb=e000d0b3fb245b02de604356b1f60c65b5f4962f;p=fa-stable.git
diff --git a/inventory/inquiry/stock_movements.php b/inventory/inquiry/stock_movements.php
index 1731e7bf..020ab3f4 100644
--- a/inventory/inquiry/stock_movements.php
+++ b/inventory/inquiry/stock_movements.php
@@ -1,9 +1,16 @@
.
+***********************************************************************/
+$page_security = 'SA_ITEMSTRANSVIEW';
+$path_to_root = "../..";
include_once($path_to_root . "/includes/session.inc");
include_once($path_to_root . "/includes/date_functions.inc");
@@ -17,22 +24,27 @@ if ($use_popup_windows)
if ($use_date_picker)
$js .= get_js_date_picker();
-page(_("Inventory Item Movement"), false, false, "", $js);
+page(_($help_context = "Inventory Item Movement"), false, false, "", $js);
//------------------------------------------------------------------------------------------------
check_db_has_stock_items(_("There are no items defined in the system."));
+if(get_post('ShowMoves'))
+{
+ $Ajax->activate('doc_tbl');
+}
+
if (isset($_GET['stock_id']))
{
$_POST['stock_id'] = $_GET['stock_id'];
}
-start_form(false, true);
+start_form();
if (!isset($_POST['stock_id']))
$_POST['stock_id'] = get_global_stock_item();
-start_table("class='tablestyle_noborder'");
+start_table(TABLESTYLE_NOBORDER);
stock_items_list_cells(_("Item:"), 'stock_id', $_POST['stock_id']);
@@ -41,191 +53,132 @@ locations_list_cells(_("From Location:"), 'StockLocation', null);
date_cells(_("From:"), 'AfterDate', '', null, -30);
date_cells(_("To:"), 'BeforeDate');
-submit_cells('ShowMoves',_("Show Movements"),'',_('Refresh Inquiry'), true);
+submit_cells('ShowMoves',_("Show Movements"),'',_('Refresh Inquiry'), 'default');
end_table();
end_form();
set_global_stock_item($_POST['stock_id']);
-$item_dec = get_qty_dec($_POST['stock_id']);
-//
-// Get summary displayed in headewr and footer.
-//
-function get_summary(&$table)
-{
- global $Ajax, $item_dec;
-
- $sql = "SELECT
- Sum(qty) as sum,
- Sum(IF(qty>0, qty, 0)) as in_qty,
- Sum(IF(qty<0, -qty, 0)) as out_qty
- FROM ".TB_PREF."stock_moves
- WHERE loc_code='" . $_POST['StockLocation'] . "'
- AND tran_date >= '". date2sql($_POST['AfterDate']) . "'
- AND tran_date <= '" . date2sql($_POST['BeforeDate']) . "'
- AND stock_id = '" . $_POST['stock_id'] . "'";
- " GROUP BY rec";
- $result = db_query($sql, "cannot retrieve stock moves");
-
- $qty = db_fetch($result);
-
- $sum['beg'] = get_qoh_on_date($_POST['stock_id'], $_POST['StockLocation'],
- add_days($_POST['AfterDate'], -1));
- $sum['in'] = $qty['in_qty'];
- $sum['out'] = $qty['out_qty'];
- $sum['end'] = $sum['beg'] + $qty['sum'];
- $sum['dec'] = $item_dec = get_qty_dec($_POST['stock_id']);
-
- $table->sum = $sum;
- }
-//-----------------------------------------------------------------------------
-
-function systype_name($row)
-{
- return systypes::name($row["type"]);
-}
-function trans_view($row)
+$before_date = date2sql($_POST['BeforeDate']);
+$after_date = date2sql($_POST['AfterDate']);
+
+$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"));
+
+table_header($th);
+
+$before_qty = get_stock_movements_before($_POST['stock_id'], $_POST['StockLocation'], $_POST['AfterDate']);
+
+$after_qty = $before_qty;
+
+/*
+if (!isset($before_qty_row[0]))
{
- return get_trans_view_str($row["type"], $row["trans_no"]);
+ $after_qty = $before_qty = 0;
}
+*/
+start_row("class='inquirybg'");
+label_cell(""._("Quantity on hand before") . " " . $_POST['AfterDate']."", "align=center colspan=5");
+label_cell(" ", "colspan=2");
+$dec = get_qty_dec($_POST['stock_id']);
+qty_cell($before_qty, false, $dec);
+end_row();
+
+$j = 1;
+$k = 0; //row colour counter
+
+$total_in = 0;
+$total_out = 0;
-function show_details($row)
+while ($myrow = db_fetch($result))
{
- $person = $row["person_id"];
+
+ alt_table_row_color($k);
+
+ $trandate = sql2date($myrow["tran_date"]);
+
+ $type_name = $systypes_array[$myrow["type"]];
+
+ if ($myrow["qty"] > 0)
+ {
+ $quantity_formatted = number_format2($myrow["qty"], $dec);
+ $total_in += $myrow["qty"];
+ }
+ else
+ {
+ $quantity_formatted = number_format2(-$myrow["qty"], $dec);
+ $total_out += -$myrow["qty"];
+ }
+ $after_qty += $myrow["qty"];
+
+ label_cell($type_name);
+
+ label_cell(get_trans_view_str($myrow["type"], $myrow["trans_no"]));
+
+ label_cell(get_trans_view_str($myrow["type"], $myrow["trans_no"], $myrow["reference"]));
+ label_cell($trandate);
+
+ $person = $myrow["person_id"];
$gl_posting = "";
- if (($row["type"] == 13) || ($row["type"] == 11))
+ if (($myrow["type"] == ST_CUSTDELIVERY) || ($myrow["type"] == ST_CUSTCREDIT))
{
- $cust_row = get_customer_details_from_trans($row["type"], $row["trans_no"]);
+ $cust_row = get_customer_details_from_trans($myrow["type"], $myrow["trans_no"]);
if (strlen($cust_row['name']) > 0)
$person = $cust_row['name'] . " (" . $cust_row['br_name'] . ")";
}
- elseif ($row["type"] == 25 || $row['type'] == 21)
+ elseif ($myrow["type"] == ST_SUPPRECEIVE || $myrow['type'] == ST_SUPPCREDIT)
{
// get the supplier name
- $sql = "SELECT supp_name FROM ".TB_PREF."suppliers WHERE supplier_id = '" . $row["person_id"] . "'";
- $supp_result = db_query($sql,"check failed");
-
- $supp_row = db_fetch($supp_result);
+ $supp_name = get_supplier_name($myrow["person_id"]);
- if (strlen($supp_row['supp_name']) > 0)
- $person = $supp_row['supp_name'];
+ if (strlen($supp_name) > 0)
+ $person = $supp_name;
}
- elseif ($row["type"] == systypes::location_transfer() || $row["type"] == systypes::inventory_adjustment())
+ elseif ($myrow["type"] == ST_LOCTRANSFER || $myrow["type"] == ST_INVADJUST)
{
// get the adjustment type
- $movement_type = get_movement_type($row["person_id"]);
+ $movement_type = get_movement_type($myrow["person_id"]);
$person = $movement_type["name"];
}
- elseif ($row["type"]==systypes::work_order() || $row["type"] == 28 ||
- $row["type"] == 29)
+ elseif ($myrow["type"]==ST_WORKORDER || $myrow["type"] == ST_MANUISSUE ||
+ $myrow["type"] == ST_MANURECEIVE)
{
$person = "";
}
- return $person;
-}
-
-$total_out = 0;
-$total_in = 0;
-function qty_in($row)
-{
- $q = $row["qty"];
- return $q <= 0 ? '' : $q;
-}
-
-function qty_out($row)
-{
- $q = -$row["qty"];
- return $q <= 0 ? '' : $q;
-}
-/*
-function show_qoh($row)
-{
- $qoh =& $_SESSION['qoh'];
- $qoh += $row['qty'];
- return $qoh;
-}
-*/
-function before_status($pager)
-{
- $r[] =
- array( ""._("Quantity on hand before") . " " . $_POST['AfterDate']
- .':'."", "align='right' colspan=5");
- if($pager->sum['beg']>=0) {
- $r[] = array (number_format2($pager->sum['beg'], $pager->sum['dec']),
- "align='right'");
- $r[] = array(" ");
- } else {
- $r[] = array(" ");
- $r[] = array (number_format2($pager->sum['beg'], $pager->sum['dec']),
- "align='right'");
- }
- return $r;
-}
+ label_cell($person);
-function after_status($pager)
-{
- $r[] =
- array( ""._("Quantity on hand after") . " " . $_POST['BeforeDate']
- .':'."", "align='right' colspan=5");
- if($pager->sum['end']>=0) {
- $r[] = array (number_format2($pager->sum['end'], $pager->sum['dec']),
- "align='right'");
- $r[] = array(" ");
- } else {
- $r[] = array(" ");
- $r[] = array (number_format2($pager->sum['end'], $pager->sum['dec']),
- "align='right'");
+ label_cell((($myrow["qty"] >= 0) ? $quantity_formatted : ""), "nowrap align=right");
+ label_cell((($myrow["qty"] < 0) ? $quantity_formatted : ""), "nowrap align=right");
+ qty_cell($after_qty, false, $dec);
+ end_row();
+ $j++;
+ If ($j == 12)
+ {
+ $j = 1;
+ table_header($th);
}
- return $r;
+//end of page full new headings if
}
-//-----------------------------------------------------------------------------
+//end of while loop
-$before_date = date2sql($_POST['BeforeDate']);
-$after_date = date2sql($_POST['AfterDate']);
-
-$sql = "SELECT
- type,
- trans_no,
- reference,
- tran_date,
- person_id,
- qty
- FROM ".TB_PREF."stock_moves
- WHERE loc_code='" . $_POST['StockLocation'] . "'
- AND tran_date >= '". $after_date . "'
- AND tran_date <= '" . $before_date . "'
- AND stock_id = '" . $_POST['stock_id'] . "'";
-
-$cols = array(
- _("Type") => array('fun'=>'systype_name' ),
- _("#") => array('fun'=>'trans_view' ),
- _("Reference"),
- _("Date") => array('date', 'ord'=>'desc'),
- _("Detail") => array('fun'=>'show_details' ),
- _("Quantity In") => array('type'=>'qty', 'dec'=> $item_dec, 'insert'=>true,'fun'=>'qty_in' ),
- _("Quantity Out") => array('type'=>'qty', 'dec'=> $item_dec,'insert'=>true,'fun'=>'qty_out' ),
-// _("Quantity On Hand") => array('insert'=>true,'type'=>'amount', 'fun'=>'show_qoh' )
-);
-
-$table =& new_db_pager('doc_tbl', $sql, $cols);
-$table->set_header('before_status');
-$table->set_footer('after_status');
-
-if (!$table->ready) // new sql query - update summary
- get_summary($table);
-
-if (get_post('ShowMoves')) {
- $table->set_sql($sql);
- $table->set_columns($cols);
-}
-start_form();
+start_row("class='inquirybg'");
+label_cell(""._("Quantity on hand after") . " " . $_POST['BeforeDate']."", "align=center colspan=5");
+qty_cell($total_in, false, $dec);
+qty_cell($total_out, false, $dec);
+qty_cell($after_qty, false, $dec);
+end_row();
-display_db_pager($table);
-
-end_form();
+end_table(1);
+div_end();
end_page();
+
?>