Links from Items to Inventory Item Movement and Inventory Item Status.
[fa-stable.git] / inventory / inquiry / stock_status.php
1 <?php
2 /**********************************************************************
3     Copyright (C) FrontAccounting, LLC.
4         Released under the terms of the GNU General Public License, GPL, 
5         as published by the Free Software Foundation, either version 3 
6         of the License, or (at your option) any later version.
7     This program is distributed in the hope that it will be useful,
8     but WITHOUT ANY WARRANTY; without even the implied warranty of
9     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
10     See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
11 ***********************************************************************/
12 $page_security = 'SA_ITEMSSTATVIEW';
13 $path_to_root = "../..";
14 include_once($path_to_root . "/includes/session.inc");
15
16 if (isset($_GET['stock_id'])){
17         $_POST['stock_id'] = $_GET['stock_id'];
18         page(_($help_context = "Inventory Item Status"), true);
19 } else {
20         page(_($help_context = "Inventory Item Status"));
21 }
22
23 include_once($path_to_root . "/includes/date_functions.inc");
24 include_once($path_to_root . "/includes/ui.inc");
25 include_once($path_to_root . "/includes/manufacturing.inc");
26 include_once($path_to_root . "/includes/data_checks.inc");
27
28 include_once($path_to_root . "/inventory/includes/inventory_db.inc");
29
30 if (list_updated('stock_id')) 
31         $Ajax->activate('status_tbl');
32 //----------------------------------------------------------------------------------------------------
33
34 check_db_has_stock_items(_("There are no items defined in the system."));
35
36 start_form();
37
38 if (!isset($_POST['stock_id']))
39         $_POST['stock_id'] = get_global_stock_item();
40
41 echo "<center> " . _("Item:"). " ";
42 echo stock_costable_items_list('stock_id', $_POST['stock_id'], false, true);
43 echo "<br>";
44
45 echo "<hr></center>";
46
47 set_global_stock_item($_POST['stock_id']);
48
49 $mb_flag = get_mb_flag($_POST['stock_id']);
50 $kitset_or_service = false;
51
52 div_start('status_tbl');
53 if (is_service($mb_flag))
54 {
55         display_note(_("This is a service and cannot have a stock holding, only the total quantity on outstanding sales orders is shown."), 0, 1);
56         $kitset_or_service = true;
57 }
58
59 $loc_details = get_loc_details($_POST['stock_id']);
60
61 start_table(TABLESTYLE);
62
63 if ($kitset_or_service == true)
64 {
65         $th = array(_("Location"), _("Demand"));
66 }
67 else
68 {
69         $th = array(_("Location"), _("Quantity On Hand"), _("Re-Order Level"),
70                 _("Demand"), _("Available"), _("On Order"));
71 }
72 table_header($th);
73 $dec = get_qty_dec($_POST['stock_id']);
74 $j = 1;
75 $k = 0; //row colour counter
76
77 while ($myrow = db_fetch($loc_details))
78 {
79
80         alt_table_row_color($k);
81
82         $demand_qty = get_demand_qty($_POST['stock_id'], $myrow["loc_code"]);
83         $demand_qty += get_demand_asm_qty($_POST['stock_id'], $myrow["loc_code"]);
84
85         $qoh = get_qoh_on_date($_POST['stock_id'], $myrow["loc_code"]);
86
87         if ($kitset_or_service == false)
88         {
89                 $qoo = get_on_porder_qty($_POST['stock_id'], $myrow["loc_code"]);
90                 $qoo += get_on_worder_qty($_POST['stock_id'], $myrow["loc_code"]);
91                 label_cell($myrow["location_name"]);
92                 qty_cell($qoh, false, $dec);
93         qty_cell($myrow["reorder_level"], false, $dec);
94         qty_cell($demand_qty, false, $dec);
95         qty_cell($qoh - $demand_qty, false, $dec);
96         qty_cell($qoo, false, $dec);
97         end_row();
98
99         }
100         else
101         {
102         /* It must be a service or kitset part */
103                 label_cell($myrow["location_name"]);
104                 qty_cell($demand_qty, false, $dec);
105                 end_row();
106
107         }
108         $j++;
109         If ($j == 12)
110         {
111                 $j = 1;
112                 table_header($th);
113         }
114 }
115
116 end_table();
117 div_end();
118 end_form();
119 end_page(@$_REQUEST['popup'], false, false);
120
121 ?>