No display of shipping if there are no shipping costs on sales documents or views.
[fa-stable.git] / sales / view / view_dispatch.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_SALESTRANSVIEW';
13 $path_to_root = "../..";
14 include_once($path_to_root . "/includes/session.inc");
15
16 include_once($path_to_root . "/sales/includes/sales_ui.inc");
17
18 include_once($path_to_root . "/sales/includes/sales_db.inc");
19
20 $js = "";
21 if ($use_popup_windows)
22         $js .= get_js_open_window(900, 600);
23 page(_($help_context = "View Sales Dispatch"), true, false, "", $js);
24
25
26 if (isset($_GET["trans_no"]))
27 {
28         $trans_id = $_GET["trans_no"];
29 }
30 elseif (isset($_POST["trans_no"]))
31 {
32         $trans_id = $_POST["trans_no"];
33 }
34
35 // 3 different queries to get the information - what a JOKE !!!!
36
37 $myrow = get_customer_trans($trans_id, ST_CUSTDELIVERY);
38
39 $branch = get_branch($myrow["branch_code"]);
40
41 $sales_order = get_sales_order_header($myrow["order_"], ST_SALESORDER);
42
43 display_heading(sprintf(_("DISPATCH NOTE #%d"),$trans_id));
44
45 echo "<br>";
46 start_table(TABLESTYLE2, "width='95%'");
47 echo "<tr valign=top><td>"; // outer table
48
49 /*Now the customer charged to details in a sub table*/
50 start_table(TABLESTYLE, "width='100%'");
51 $th = array(_("Charge To"));
52 table_header($th);
53
54 label_row(null, $myrow["DebtorName"] . "<br>" . nl2br($myrow["address"]), "nowrap");
55
56 end_table();
57
58 /*end of the small table showing charge to account details */
59
60 echo "</td><td>"; // outer table
61
62 /*end of the main table showing the company name and charge to details */
63
64 start_table(TABLESTYLE, "width='100%'");
65 $th = array(_("Charge Branch"));
66 table_header($th);
67
68 label_row(null, $branch["br_name"] . "<br>" . nl2br($branch["br_address"]), "nowrap");
69 end_table();
70
71 echo "</td><td>"; // outer table
72
73 start_table(TABLESTYLE, "width='100%'");
74 $th = array(_("Delivered To"));
75 table_header($th);
76
77 label_row(null, $sales_order["deliver_to"] . "<br>" . nl2br($sales_order["delivery_address"]),
78         "nowrap");
79 end_table();
80
81 echo "</td><td>"; // outer table
82
83 start_table(TABLESTYLE, "width='100%'");
84 start_row();
85 label_cells(_("Reference"), $myrow["reference"], "class='tableheader2'");
86 label_cells(_("Currency"), $sales_order["curr_code"], "class='tableheader2'");
87 label_cells(_("Our Order No"),
88         get_customer_trans_view_str(ST_SALESORDER,$sales_order["order_no"]), "class='tableheader2'");
89 end_row();
90 start_row();
91 label_cells(_("Customer Order Ref."), $sales_order["customer_ref"], "class='tableheader2'");
92 label_cells(_("Shipping Company"), $myrow["shipper_name"], "class='tableheader2'");
93 label_cells(_("Sales Type"), $myrow["sales_type"], "class='tableheader2'");
94 end_row();
95 start_row();
96 label_cells(_("Dispatch Date"), sql2date($myrow["tran_date"]), "class='tableheader2'", "nowrap");
97 label_cells(_("Due Date"), sql2date($myrow["due_date"]), "class='tableheader2'", "nowrap");
98 end_row();
99 comments_display_row(ST_CUSTDELIVERY, $trans_id);
100 end_table();
101
102 echo "</td></tr>";
103 end_table(1); // outer table
104
105
106 $result = get_customer_trans_details(ST_CUSTDELIVERY, $trans_id);
107
108 start_table(TABLESTYLE, "width='95%'");
109
110 if (db_num_rows($result) > 0)
111 {
112         $th = array(_("Item Code"), _("Item Description"), _("Quantity"),
113                 _("Unit"), _("Price"), _("Discount %"), _("Total"));
114         table_header($th);
115
116         $k = 0; //row colour counter
117         $sub_total = 0;
118         while ($myrow2 = db_fetch($result))
119         {
120                 if($myrow2['quantity']==0) continue;
121                 alt_table_row_color($k);
122
123                 $value = round2(((1 - $myrow2["discount_percent"]) * $myrow2["unit_price"] * $myrow2["quantity"]),
124                    user_price_dec());
125                 $sub_total += $value;
126
127             if ($myrow2["discount_percent"] == 0)
128             {
129                         $display_discount = "";
130             }
131             else
132             {
133                         $display_discount = percent_format($myrow2["discount_percent"]*100) . "%";
134             }
135
136                 label_cell($myrow2["stock_id"]);
137                 label_cell($myrow2["StockDescription"]);
138         qty_cell($myrow2["quantity"], false, get_qty_dec($myrow2["stock_id"]));
139         label_cell($myrow2["units"], "align=right");
140         amount_cell($myrow2["unit_price"]);
141         label_cell($display_discount, "nowrap align=right");
142         amount_cell($value);
143         end_row();
144         } //end while there are line items to print out
145         $display_sub_tot = price_format($sub_total);
146         label_row(_("Sub-total"), $display_sub_tot, "colspan=6 align=right",
147                 "nowrap align=right width='15%'");
148
149 }
150 else
151         display_note(_("There are no line items on this dispatch."), 1, 2);
152
153 if ($myrow['ov_freight'] != 0.0)
154 {
155         $display_freight = price_format($myrow["ov_freight"]);
156         label_row(_("Shipping"), $display_freight, "colspan=6 align=right", "nowrap align=right");
157 }
158 $tax_items = get_trans_tax_details(ST_CUSTDELIVERY, $trans_id);
159 display_customer_trans_tax_details($tax_items, 6);
160
161 $display_total = price_format($myrow["ov_freight"]+$myrow["ov_amount"]+$myrow["ov_freight_tax"]+$myrow["ov_gst"]);
162
163 label_row(_("TOTAL VALUE"), $display_total, "colspan=6 align=right",
164         "nowrap align=right");
165 end_table(1);
166
167 is_voided_display(ST_CUSTDELIVERY, $trans_id, _("This dispatch has been voided."));
168
169 end_page(true, false, false, ST_CUSTDELIVERY, $trans_id);
170
171 ?>