New files from unstable branch
[fa-stable.git] / inventory / includes / db / movement_types_db.inc
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 function add_movement_type($name)
13 {
14         $sql = "INSERT INTO ".TB_PREF."movement_types (name)
15                 VALUES (".db_escape($name).")";
16
17         db_query($sql, "could not add item movement type");
18 }
19
20 function update_movement_type($type_id, $name)
21 {
22         $sql = "UPDATE ".TB_PREF."movement_types SET name=".db_escape($name)."
23                         WHERE id=".db_escape($type_id);
24
25         db_query($sql, "could not update item movement type");
26 }
27
28 function get_all_movement_type($all=false)
29 {
30         $sql = "SELECT * FROM ".TB_PREF."movement_types";
31         if (!$all) $sql .= " WHERE !inactive";
32
33         return db_query($sql, "could not get all item movement type");
34 }
35
36 function get_movement_type($type_id)
37 {
38         $sql = "SELECT * FROM ".TB_PREF."movement_types WHERE id=".db_escape($type_id);
39
40         $result = db_query($sql, "could not get item movement type");
41
42         return db_fetch($result);
43 }
44
45 function delete_movement_type($type_id)
46 {
47         $sql="DELETE FROM ".TB_PREF."movement_types WHERE id=".db_escape($type_id);
48
49         db_query($sql, "could not delete item movement type");
50 }
51
52 function get_stock_movements($stock_id, $StockLocation, $BeforeDate, $AfterDate)
53 {
54         $before_date = date2sql($BeforeDate);
55         $after_date = date2sql($AfterDate);
56         $sql = "SELECT type, trans_no, tran_date, person_id, qty, reference
57                 FROM ".TB_PREF."stock_moves
58                 WHERE loc_code=".db_escape($StockLocation)."
59                 AND tran_date >= '". $after_date . "'
60                 AND tran_date <= '" . $before_date . "'
61                 AND stock_id = ".db_escape($stock_id) . " ORDER BY tran_date,trans_id";
62         return db_query($sql, "could not query stock moves");
63 }
64
65 function get_stock_movements_before($stock_id, $StockLocation, $AfterDate)
66 {
67         $after_date = date2sql($AfterDate);
68         $sql = "SELECT SUM(qty) FROM ".TB_PREF."stock_moves WHERE stock_id=".db_escape($stock_id) . "
69                 AND loc_code=".db_escape( $StockLocation) . "
70                 AND tran_date < '" . $after_date . "'";
71         $before_qty = db_query($sql, "The starting quantity on hand could not be calculated");
72
73         $before_qty_row = db_fetch_row($before_qty);
74         return $before_qty_row[0];
75 }
76
77 function movement_types_in_stock_moves($selected_id)
78 {
79         $sql= "SELECT COUNT(*) FROM ".TB_PREF."stock_moves 
80                 WHERE type=" . ST_INVADJUST. " AND person_id=".db_escape($selected_id);
81
82         $result = db_query($sql, "could not query stock moves");
83         $myrow = db_fetch_row($result);
84         return ($myrow[0] > 0); 
85 }
86 ?>