Feature 5388: Print Invoices (documents) list gets too long. Fixed by default 180...
[fa-stable.git] / reporting / rep204.php
index 5dd8d29f66d1b57a3f54fa154941335cd2546639..51fbf012d66c5182f1752500694e54818bbf2f1b 100644 (file)
@@ -29,29 +29,30 @@ print_outstanding_GRN();
 
 function getTransactions($fromsupp)
 {
-       $sql = "SELECT ".TB_PREF."grn_batch.id,
+       $sql = "SELECT grn.id,
                        order_no,
-                       ".TB_PREF."grn_batch.supplier_id,
-                       ".TB_PREF."suppliers.supp_name,
-                       ".TB_PREF."grn_items.item_code,
-                       ".TB_PREF."grn_items.description,
+                       grn.supplier_id,
+                       supplier.supp_name,
+                       item.item_code,
+                       item.description,
                        qty_recd,
                        quantity_inv,
                        std_cost_unit,
                        act_price,
                        unit_price
-               FROM ".TB_PREF."grn_items,
-                       ".TB_PREF."grn_batch,
-                       ".TB_PREF."purch_order_details,
-                       ".TB_PREF."suppliers
-               WHERE ".TB_PREF."grn_batch.supplier_id=".TB_PREF."suppliers.supplier_id
-               AND ".TB_PREF."grn_batch.id = ".TB_PREF."grn_items.grn_batch_id
-               AND ".TB_PREF."grn_items.po_detail_item = ".TB_PREF."purch_order_details.po_detail_item
-               AND qty_recd-quantity_inv <>0 ";
-       if ($fromsupp != reserved_words::get_all_numeric())
-               $sql .= "AND ".TB_PREF."grn_batch.supplier_id ='" . $fromsupp . "' ";
-       $sql .= "ORDER BY ".TB_PREF."grn_batch.supplier_id,
-                       ".TB_PREF."grn_batch.id";
+               FROM ".TB_PREF."grn_items item,
+                       ".TB_PREF."grn_batch grn,
+                       ".TB_PREF."purch_order_details poline,
+                       ".TB_PREF."suppliers supplier
+               WHERE grn.supplier_id=supplier.supplier_id
+               AND grn.id = item.grn_batch_id
+               AND item.po_detail_item = poline.po_detail_item
+               AND qty_recd-quantity_inv!=0";
+
+       if ($fromsupp != ALL_TEXT)
+               $sql .= " AND grn.supplier_id =".db_escape($fromsupp);
+
+       $sql .= " ORDER BY grn.supplier_id,     grn.id";
 
     return db_query($sql, "No transactions were returned");
 }
@@ -64,13 +65,15 @@ function print_outstanding_GRN()
 
     $fromsupp = $_POST['PARAM_0'];
     $comments = $_POST['PARAM_1'];
-       $destination = $_POST['PARAM_2'];
+       $orientation = $_POST['PARAM_2'];
+       $destination = $_POST['PARAM_3'];
        if ($destination)
                include_once($path_to_root . "/reporting/includes/excel_report.inc");
        else
                include_once($path_to_root . "/reporting/includes/pdf_report.inc");
 
-       if ($fromsupp == reserved_words::get_all_numeric())
+       $orientation = ($orientation ? 'L' : 'P');
+       if ($fromsupp == ALL_TEXT)
                $from = _('All');
        else
                $from = get_supplier_name($fromsupp);
@@ -79,18 +82,20 @@ function print_outstanding_GRN()
        $cols = array(0, 40, 80, 190,   250, 320, 385, 450,     515);
 
        $headers = array(_('GRN'), _('Order'), _('Item') . '/' . _('Description'), _('Qty Recd'), _('qty Inv'), _('Balance'),
-               _('Std Cost'), _('Value'));
+               _('Act Price'), _('Value'));
 
        $aligns = array('left', 'left', 'left', 'right', 'right', 'right', 'right', 'right');
 
     $params =   array(         0 => $comments,
                                    1 => array('text' => _('Supplier'), 'from' => $from, 'to' => ''));
 
-    $rep = new FrontReport(_('Outstanding GRNs Report'), "OutstandingGRN", user_pagesize());
+    $rep = new FrontReport(_('Outstanding GRNs Report'), "OutstandingGRN", user_pagesize(), 9, $orientation);
+    if ($orientation == 'L')
+       recalculate_cols($cols);
 
     $rep->Font();
     $rep->Info($params, $cols, $headers, $aligns);
-    $rep->Header();
+    $rep->NewPage();
 
        $Tot_Val=0;
        $Supplier = '';
@@ -121,9 +126,9 @@ function print_outstanding_GRN()
                $rep->AmountCol(3, 4, $GRNs['qty_recd'], $dec2);
                $rep->AmountCol(4, 5, $GRNs['quantity_inv'], $dec2);
                $QtyOstg = $GRNs['qty_recd'] - $GRNs['quantity_inv'];
-               $Value = ($GRNs['qty_recd'] - $GRNs['quantity_inv']) * $GRNs['std_cost_unit'];
+               $Value = ($GRNs['qty_recd'] - $GRNs['quantity_inv']) * $GRNs['act_price'];
                $rep->AmountCol(5, 6, $QtyOstg, $dec2);
-               $rep->AmountCol(6, 7, $GRNs['std_cost_unit'], $dec);
+               $rep->AmountCol(6, 7, $GRNs['act_price'], $dec);
                $rep->AmountCol(7, 8, $Value, $dec);
                $Tot_Val += $Value;
                $SuppTot_Val += $Value;
@@ -147,4 +152,3 @@ function print_outstanding_GRN()
     $rep->End();
 }
 
-?>
\ No newline at end of file