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_SALESTRANSVIEW';
13 $path_to_root = "../..";
14 include_once($path_to_root . "/sales/includes/cart_class.inc");
16 include_once($path_to_root . "/includes/session.inc");
17 include_once($path_to_root . "/includes/date_functions.inc");
19 include_once($path_to_root . "/sales/includes/sales_ui.inc");
20 include_once($path_to_root . "/sales/includes/sales_db.inc");
23 if ($use_popup_windows)
24 $js .= get_js_open_window(900, 600);
26 if ($_GET['trans_type'] == 32)
28 page(_("View Sales Quotation"), true, false, "", $js);
29 display_heading(sprintf(_("Sales Quotation #%d"),$_GET['trans_no']));
33 page(_("View Sales Order"), true, false, "", $js);
34 display_heading(sprintf(_("Sales Order #%d"),$_GET['trans_no']));
37 if (isset($_SESSION['View']))
39 unset ($_SESSION['View']);
42 $_SESSION['View'] = new Cart($_GET['trans_type'], $_GET['trans_no'], true);
44 start_table("$table_style2 width=95%", 5);
45 echo "<tr valign=top><td>";
46 display_heading2(_("Order Information"));
47 if ($_GET['trans_type'] != 32)
50 display_heading2(_("Deliveries"));
52 display_heading2(_("Invoices/Credits"));
56 echo "<tr valign=top><td>";
58 start_table("$table_style width=95%");
59 label_row(_("Customer Name"), $_SESSION['View']->customer_name, "class='tableheader2'",
62 label_cells(_("Customer Order Ref."), $_SESSION['View']->cust_ref, "class='tableheader2'");
63 label_cells(_("Deliver To Branch"), $_SESSION['View']->deliver_to, "class='tableheader2'");
66 label_cells(_("Ordered On"), $_SESSION['View']->document_date, "class='tableheader2'");
67 if ($_GET['trans_type'] == 32)
68 label_cells(_("Valid until"), $_SESSION['View']->due_date, "class='tableheader2'");
70 label_cells(_("Requested Delivery"), $_SESSION['View']->due_date, "class='tableheader2'");
73 label_cells(_("Order Currency"), $_SESSION['View']->customer_currency, "class='tableheader2'");
74 label_cells(_("Deliver From Location"), $_SESSION['View']->location_name, "class='tableheader2'");
77 label_row(_("Delivery Address"), nl2br($_SESSION['View']->delivery_address),
78 "class='tableheader2'", "colspan=3");
79 label_row(_("Reference"), $_SESSION['View']->reference, "class='tableheader2'", "colspan=3");
80 label_row(_("Telephone"), $_SESSION['View']->phone, "class='tableheader2'", "colspan=3");
81 label_row(_("E-mail"), "<a href='mailto:" . $_SESSION['View']->email . "'>" . $_SESSION['View']->email . "</a>",
82 "class='tableheader2'", "colspan=3");
83 label_row(_("Comments"), $_SESSION['View']->Comments, "class='tableheader2'", "colspan=3");
86 if ($_GET['trans_type'] != 32)
88 echo "</td><td valign='top'>";
90 start_table($table_style);
91 display_heading2(_("Delivery Notes"));
93 $th = array(_("#"), _("Ref"), _("Date"), _("Total"));
96 $sql = "SELECT * FROM ".TB_PREF."debtor_trans WHERE type=13 AND order_=" . $_GET['trans_no'];
97 $result = db_query($sql,"The related delivery notes could not be retreived");
102 while ($del_row = db_fetch($result))
105 alt_table_row_color($k);
107 $this_total = $del_row["ov_freight"]+ $del_row["ov_amount"] + $del_row["ov_freight_tax"] + $del_row["ov_gst"] ;
108 $delivery_total += $this_total;
110 label_cell(get_customer_trans_view_str($del_row["type"], $del_row["trans_no"]));
111 label_cell($del_row["reference"]);
112 label_cell(sql2date($del_row["tran_date"]));
113 amount_cell($this_total);
118 label_row(null, price_format($delivery_total), "", "colspan=4 align=right");
121 echo "</td><td valign='top'>";
123 start_table($table_style);
124 display_heading2(_("Sales Invoices"));
126 $th = array(_("#"), _("Ref"), _("Date"), _("Total"));
129 $sql = "SELECT * FROM ".TB_PREF."debtor_trans WHERE type=10 AND order_=" . $_GET['trans_no'];
130 $result = db_query($sql,"The related invoices could not be retreived");
135 while ($inv_row = db_fetch($result))
138 alt_table_row_color($k);
140 $this_total = $inv_row["ov_freight"] + $inv_row["ov_freight_tax"] + $inv_row["ov_gst"] + $inv_row["ov_amount"];
141 $invoices_total += $this_total;
143 label_cell(get_customer_trans_view_str($inv_row["type"], $inv_row["trans_no"]));
144 label_cell($inv_row["reference"]);
145 label_cell(sql2date($inv_row["tran_date"]));
146 amount_cell($this_total);
151 label_row(null, price_format($invoices_total), "", "colspan=4 align=right");
155 display_heading2(_("Credit Notes"));
157 start_table($table_style);
158 $th = array(_("#"), _("Ref"), _("Date"), _("Total"));
161 $sql = "SELECT * FROM ".TB_PREF."debtor_trans WHERE type=11 AND order_=" . $_GET['trans_no'];
162 $result = db_query($sql,"The related credit notes could not be retreived");
167 while ($credits_row = db_fetch($result))
170 alt_table_row_color($k);
172 $this_total = $credits_row["ov_freight"] + $credits_row["ov_freight_tax"] + $credits_row["ov_gst"] + $credits_row["ov_amount"];
173 $credits_total += $this_total;
175 label_cell(get_customer_trans_view_str($credits_row["type"], $credits_row["trans_no"]));
176 label_cell($credits_row["reference"]);
177 label_cell(sql2date($credits_row["tran_date"]));
178 amount_cell(-$this_total);
183 label_row(null, "<font color=red>" . price_format(-$credits_total) . "</font>",
184 "", "colspan=4 align=right");
194 if ($_SESSION['View']->so_type == 1)
195 display_note(_("This Sales Order is used as a Template."), 0, 0, "class='currentfg'");
196 display_heading2(_("Line Details"));
198 start_table("colspan=9 width=95% $table_style");
199 $th = array(_("Item Code"), _("Item Description"), _("Quantity"), _("Unit"),
200 _("Price"), _("Discount"), _("Total"), _("Quantity Delivered"));
203 $k = 0; //row colour counter
205 foreach ($_SESSION['View']->line_items as $stock_item) {
207 $line_total = round2($stock_item->quantity * $stock_item->price * (1 - $stock_item->discount_percent),
210 alt_table_row_color($k);
212 label_cell($stock_item->stock_id);
213 label_cell($stock_item->item_description);
214 $dec = get_qty_dec($stock_item->stock_id);
215 qty_cell($stock_item->quantity, false, $dec);
216 label_cell($stock_item->units);
217 amount_cell($stock_item->price);
218 amount_cell($stock_item->discount_percent * 100);
219 amount_cell($line_total);
221 qty_cell($stock_item->qty_done, false, $dec);
225 $items_total = $_SESSION['View']->get_items_total();
227 $display_total = price_format($items_total + $_SESSION['View']->freight_cost);
229 label_row(_("Shipping"), price_format($_SESSION['View']->freight_cost),
230 "align=right colspan=6", "nowrap align=right");
231 label_row(_("Total Order Value"), $display_total, "align=right colspan=6",
232 "nowrap align=right");