[0004212] Work Order Entry: fixed error when voided WO refence is reused.
[fa-stable.git] / reporting / rep104.php
index b7888ad7c1bcaf5cb3eb869be10b7999f210771e..c2dc63a3716866014262e38a2c72eadb12a540e7 100644 (file)
@@ -1,12 +1,12 @@
 <?php
 /**********************************************************************
     Copyright (C) FrontAccounting, LLC.
 <?php
 /**********************************************************************
     Copyright (C) FrontAccounting, LLC.
-       Released under the terms of the GNU General Public License, GPL, 
-       as published by the Free Software Foundation, either version 3 
+       Released under the terms of the GNU General Public License, GPL,
+       as published by the Free Software Foundation, either version 3
        of the License, or (at your option) any later version.
     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
        of the License, or (at your option) any later version.
     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
     See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
 $page_security = 'SA_PRICEREP';
     See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
 $page_security = 'SA_PRICEREP';
@@ -32,17 +32,17 @@ print_price_listing();
 
 function fetch_items($category=0)
 {
 
 function fetch_items($category=0)
 {
-               $sql = "SELECT ".TB_PREF."stock_master.stock_id, ".TB_PREF."stock_master.description AS name,
-                               ".TB_PREF."stock_master.material_cost+".TB_PREF."stock_master.labour_cost+".TB_PREF."stock_master.overhead_cost AS Standardcost,
-                               ".TB_PREF."stock_master.category_id,
-                               ".TB_PREF."stock_category.description
-                       FROM ".TB_PREF."stock_master,
-                               ".TB_PREF."stock_category
-                       WHERE ".TB_PREF."stock_master.category_id=".TB_PREF."stock_category.category_id AND NOT ".TB_PREF."stock_master.inactive";
+               $sql = "SELECT item.stock_id, item.description AS name,
+                               item.material_cost AS Standardcost,
+                               item.category_id,item.units,
+                               category.description
+                       FROM ".TB_PREF."stock_master item,
+                               ".TB_PREF."stock_category category
+                       WHERE item.category_id=category.category_id AND NOT item.inactive";
                if ($category != 0)
                if ($category != 0)
-                       $sql .= " AND ".TB_PREF."stock_category.category_id = ".db_escape($category);
-               $sql .= " ORDER BY ".TB_PREF."stock_master.category_id,
-                               ".TB_PREF."stock_master.stock_id";
+                       $sql .= " AND category.category_id = ".db_escape($category);
+               $sql .= " AND item.mb_flag<> 'F' ORDER BY item.category_id,
+                               item.stock_id";
 
     return db_query($sql,"No transactions were returned");
 }
 
     return db_query($sql,"No transactions were returned");
 }
@@ -51,11 +51,9 @@ function get_kits($category=0)
 {
        $sql = "SELECT i.item_code AS kit_code, i.description AS kit_name, c.category_id AS cat_id, c.description AS cat_name, count(*)>1 AS kit
                        FROM
 {
        $sql = "SELECT i.item_code AS kit_code, i.description AS kit_name, c.category_id AS cat_id, c.description AS cat_name, count(*)>1 AS kit
                        FROM
-                       ".TB_PREF."item_codes i
-                       LEFT JOIN
-                       ".TB_PREF."stock_category c
-                       ON i.category_id=c.category_id";
-       $sql .= " WHERE !i.is_foreign AND i.item_code!=i.stock_id";
+                               ".TB_PREF."item_codes i
+                               LEFT JOIN ".TB_PREF."stock_category c ON i.category_id=c.category_id
+                       WHERE !i.is_foreign AND i.item_code!=i.stock_id";
        if ($category != 0)
                $sql .= " AND c.category_id = ".db_escape($category);
        $sql .= " GROUP BY i.item_code";
        if ($category != 0)
                $sql .= " AND c.category_id = ".db_escape($category);
        $sql .= " GROUP BY i.item_code";
@@ -66,7 +64,7 @@ function get_kits($category=0)
 
 function print_price_listing()
 {
 
 function print_price_listing()
 {
-    global $comp_path, $path_to_root, $pic_height, $pic_width;
+    global $path_to_root, $SysPrefs;
 
     $currency = $_POST['PARAM_0'];
     $category = $_POST['PARAM_1'];
 
     $currency = $_POST['PARAM_0'];
     $category = $_POST['PARAM_1'];
@@ -74,12 +72,14 @@ function print_price_listing()
     $pictures = $_POST['PARAM_3'];
     $showGP = $_POST['PARAM_4'];
     $comments = $_POST['PARAM_5'];
     $pictures = $_POST['PARAM_3'];
     $showGP = $_POST['PARAM_4'];
     $comments = $_POST['PARAM_5'];
-       $destination = $_POST['PARAM_6'];
+       $orientation = $_POST['PARAM_6'];
+       $destination = $_POST['PARAM_7'];
        if ($destination)
                include_once($path_to_root . "/reporting/includes/excel_report.inc");
        else
                include_once($path_to_root . "/reporting/includes/pdf_report.inc");
 
        if ($destination)
                include_once($path_to_root . "/reporting/includes/excel_report.inc");
        else
                include_once($path_to_root . "/reporting/includes/pdf_report.inc");
 
+       $orientation = ($orientation ? 'L' : 'P');
     $dec = user_price_dec();
 
        $home_curr = get_company_pref('curr_default');
     $dec = user_price_dec();
 
        $home_curr = get_company_pref('curr_default');
@@ -104,11 +104,11 @@ function print_price_listing()
        else
                $GP = _('Yes');
 
        else
                $GP = _('Yes');
 
-       $cols = array(0, 100, 385, 450, 515);
+       $cols = array(0, 100, 360, 385, 450, 515);
 
 
-       $headers = array(_('Category/Items'), _('Description'), _('Price'),     _('GP %'));
+       $headers = array(_('Category/Items'), _('Description'), _('UOM'), _('Price'),   _('GP %'));
 
 
-       $aligns = array('left', 'left', 'right', 'right');
+       $aligns = array('left', 'left', 'left', 'right', 'right');
 
     $params =   array(         0 => $comments,
                                    1 => array('text' => _('Currency'), 'from' => $curr_sel, 'to' => ''),
 
     $params =   array(         0 => $comments,
                                    1 => array('text' => _('Currency'), 'from' => $curr_sel, 'to' => ''),
@@ -121,11 +121,13 @@ function print_price_listing()
        else
                $user_comp = "";
 
        else
                $user_comp = "";
 
-    $rep = new FrontReport(_('Price Listing'), "PriceListing", user_pagesize());
+    $rep = new FrontReport(_('Price Listing'), "PriceListing", user_pagesize(), 9, $orientation);
+    if ($orientation == 'L')
+       recalculate_cols($cols);
 
     $rep->Font();
     $rep->Info($params, $cols, $headers, $aligns);
 
     $rep->Font();
     $rep->Info($params, $cols, $headers, $aligns);
-    $rep->Header();
+    $rep->NewPage();
 
        $result = fetch_items($category);
 
 
        $result = fetch_items($category);
 
@@ -146,8 +148,9 @@ function print_price_listing()
                $rep->NewLine();
                $rep->TextCol(0, 1,     $myrow['stock_id']);
                $rep->TextCol(1, 2, $myrow['name']);
                $rep->NewLine();
                $rep->TextCol(0, 1,     $myrow['stock_id']);
                $rep->TextCol(1, 2, $myrow['name']);
+               $rep->TextCol(2, 3, $myrow['units']);
                $price = get_price($myrow['stock_id'], $currency, $salestype);
                $price = get_price($myrow['stock_id'], $currency, $salestype);
-               $rep->AmountCol(2, 3, $price, $dec);
+               $rep->AmountCol(3, 4, $price, $dec);
                if ($showGP)
                {
                        $price2 = get_price($myrow['stock_id'], $home_curr, $salestype);
                if ($showGP)
                {
                        $price2 = get_price($myrow['stock_id'], $home_curr, $salestype);
@@ -155,19 +158,19 @@ function print_price_listing()
                                $disp = ($price2 - $myrow['Standardcost']) * 100 / $price2;
                        else
                                $disp = 0.0;
                                $disp = ($price2 - $myrow['Standardcost']) * 100 / $price2;
                        else
                                $disp = 0.0;
-                       $rep->TextCol(3, 4,     number_format2($disp, user_percent_dec()) . " %");
+                       $rep->TextCol(4, 5,     number_format2($disp, user_percent_dec()) . " %");
                }
                if ($pictures)
                {
                }
                if ($pictures)
                {
-                       $image = $comp_path . '/'. $user_comp . "/images/" 
+                       $image = company_path(). "/images/"
                                . item_img_name($myrow['stock_id']) . ".jpg";
                        if (file_exists($image))
                        {
                                $rep->NewLine();
                                . item_img_name($myrow['stock_id']) . ".jpg";
                        if (file_exists($image))
                        {
                                $rep->NewLine();
-                               if ($rep->row - $pic_height < $rep->bottomMargin)
-                                       $rep->Header();
-                               $rep->AddImage($image, $rep->cols[1], $rep->row - $pic_height, 0, $pic_height);
-                               $rep->row -= $pic_height;
+                               if ($rep->row - $SysPrefs->pic_height < $rep->bottomMargin)
+                                       $rep->NewPage();
+                               $rep->AddImage($image, $rep->cols[1], $rep->row - $SysPrefs->pic_height, 0, $SysPrefs->pic_height);
+                               $rep->row -= $SysPrefs->pic_height;
                                $rep->NewLine();
                        }
                }
                                $rep->NewLine();
                        }
                }
@@ -189,7 +192,7 @@ function print_price_listing()
                                $rep->fontSize += 2;
                                $rep->TextCol(0, 3, _("Sales Kits"));
                                $rep->fontSize -= 2;
                                $rep->fontSize += 2;
                                $rep->TextCol(0, 3, _("Sales Kits"));
                                $rep->fontSize -= 2;
-                       }       
+                       }
                        $rep->Line($rep->row  - $rep->lineHeight);
                        $rep->NewLine(2);
                        $rep->fontSize += 2;
                        $rep->Line($rep->row  - $rep->lineHeight);
                        $rep->NewLine(2);
                        $rep->fontSize += 2;
@@ -200,9 +203,9 @@ function print_price_listing()
                }
                $rep->NewLine();
                $rep->TextCol(0, 1,     $myrow['kit_code']);
                }
                $rep->NewLine();
                $rep->TextCol(0, 1,     $myrow['kit_code']);
-               $rep->TextCol(1, 2, $myrow['kit_name']);
+               $rep->TextCol(1, 3, $myrow['kit_name']);
                $price = get_kit_price($myrow['kit_code'], $currency, $salestype);
                $price = get_kit_price($myrow['kit_code'], $currency, $salestype);
-               $rep->AmountCol(2, 3, $price, $dec);
+               $rep->AmountCol(3, 4, $price, $dec);
                $rep->NewLine(0, 1);
        }
        $rep->Line($rep->row  - 4);
                $rep->NewLine(0, 1);
        }
        $rep->Line($rep->row  - 4);
@@ -210,4 +213,3 @@ function print_price_listing()
     $rep->End();
 }
 
     $rep->End();
 }
 
-?>
\ No newline at end of file