Fixed bug in parent lines retrieveal during document edition.
[fa-stable.git] / sales / view / view_sales_order.php
index 5f5c67712e0ae618945efabcddaf1adafef37fa2..a9e780e22e2331f70bba43a7010ef45578418073 100644 (file)
@@ -94,25 +94,26 @@ if ($_GET['trans_type'] != ST_SALESQUOTE)
        $th = array(_("#"), _("Ref"), _("Date"), _("Total"));
        table_header($th);
 
-       $result = get_related_documents(ST_CUSTDELIVERY, $_GET['trans_no']);
-
+       $dn_numbers = array();
        $delivery_total = 0;
-       $k = 0;
-
-       while ($del_row = db_fetch($result))
-       {
 
-               alt_table_row_color($k);
+       if ($result = get_sales_child_documents(ST_SALESORDER, $_GET['trans_no'])) {
 
-               $this_total = $del_row["ov_freight"]+ $del_row["ov_amount"] + $del_row["ov_freight_tax"]  + $del_row["ov_gst"] ;
-               $delivery_total += $this_total;
+               $k = 0;
+               while ($del_row = db_fetch($result))
+               {
 
-               label_cell(get_customer_trans_view_str($del_row["type"], $del_row["trans_no"]));
-               label_cell($del_row["reference"]);
-               label_cell(sql2date($del_row["tran_date"]));
-               amount_cell($this_total);
-               end_row();
+                       alt_table_row_color($k);
+                       $dn_numbers[] = $del_row["trans_no"];
+                       $this_total = $del_row["ov_freight"]+ $del_row["ov_amount"] + $del_row["ov_freight_tax"]  + $del_row["ov_gst"] ;
+                       $delivery_total += $this_total;
 
+                       label_cell(get_customer_trans_view_str($del_row["type"], $del_row["trans_no"]));
+                       label_cell($del_row["reference"]);
+                       label_cell(sql2date($del_row["tran_date"]));
+                       amount_cell($this_total);
+                       end_row();
+               }
        }
 
        label_row(null, price_format($delivery_total), " ", "colspan=4 align=right");
@@ -125,28 +126,29 @@ if ($_GET['trans_type'] != ST_SALESQUOTE)
 
        $th = array(_("#"), _("Ref"), _("Date"), _("Total"));
        table_header($th);
-
-       $result = get_related_documents(ST_SALESINVOICE, $_GET['trans_no']);
-
+       
+       $inv_numbers = array();
        $invoices_total = 0;
-       $k = 0;
 
-       while ($inv_row = db_fetch($result))
-       {
+       if ($result = get_sales_child_documents(ST_CUSTDELIVERY, $dn_numbers)) {
 
-               alt_table_row_color($k);
+               $k = 0;
 
-               $this_total = $inv_row["ov_freight"] + $inv_row["ov_freight_tax"]  + $inv_row["ov_gst"] + $inv_row["ov_amount"];
-               $invoices_total += $this_total;
+               while ($inv_row = db_fetch($result))
+               {
+                       alt_table_row_color($k);
 
-               label_cell(get_customer_trans_view_str($inv_row["type"], $inv_row["trans_no"]));
-               label_cell($inv_row["reference"]);
-               label_cell(sql2date($inv_row["tran_date"]));
-               amount_cell($this_total);
-               end_row();
+                       $this_total = $inv_row["ov_freight"] + $inv_row["ov_freight_tax"]  + $inv_row["ov_gst"] + $inv_row["ov_amount"];
+                       $invoices_total += $this_total;
 
+                       $inv_numbers[] = $inv_row["trans_no"];
+                       label_cell(get_customer_trans_view_str($inv_row["type"], $inv_row["trans_no"]));
+                       label_cell($inv_row["reference"]);
+                       label_cell(sql2date($inv_row["tran_date"]));
+                       amount_cell($this_total);
+                       end_row();
+               }
        }
-
        label_row(null, price_format($invoices_total), " ", "colspan=4 align=right");
 
        end_table();
@@ -156,32 +158,32 @@ if ($_GET['trans_type'] != ST_SALESQUOTE)
        start_table(TABLESTYLE);
        $th = array(_("#"), _("Ref"), _("Date"), _("Total"));
        table_header($th);
-
-       $result = get_related_documents(ST_CUSTCREDIT, $_GET['trans_no']);
-
+       
        $credits_total = 0;
-       $k = 0;
+       
+       if ($result = get_sales_child_documents(ST_SALESINVOICE, $inv_numbers)) {
+               $k = 0;
 
-       while ($credits_row = db_fetch($result))
-       {
+               while ($credits_row = db_fetch($result))
+               {
 
-               alt_table_row_color($k);
+                       alt_table_row_color($k);
 
-               $this_total = $credits_row["ov_freight"] + $credits_row["ov_freight_tax"]  + $credits_row["ov_gst"] + $credits_row["ov_amount"];
-               $credits_total += $this_total;
+                       $this_total = $credits_row["ov_freight"] + $credits_row["ov_freight_tax"]  + $credits_row["ov_gst"] + $credits_row["ov_amount"];
+                       $credits_total += $this_total;
 
-               label_cell(get_customer_trans_view_str($credits_row["type"], $credits_row["trans_no"]));
-               label_cell($credits_row["reference"]);
-               label_cell(sql2date($credits_row["tran_date"]));
-               amount_cell(-$this_total);
-               end_row();
+                       label_cell(get_customer_trans_view_str($credits_row["type"], $credits_row["trans_no"]));
+                       label_cell($credits_row["reference"]);
+                       label_cell(sql2date($credits_row["tran_date"]));
+                       amount_cell(-$this_total);
+                       end_row();
 
-       }
+               }
 
+       }
        label_row(null, "<font color=red>" . price_format(-$credits_total) . "</font>",
                " ", "colspan=4 align=right");
 
-
        end_table();
 
        echo "</td></tr>";