- if ($trans_no[0]) {
- if ($type==30) { // sales order
- read_sales_order($trans_no[0], $this);
- if ($view) { // prepare for DN/IV entry
- for($line_no=0; $line_no<count($this->line_items); $line_no++) {
- $line= &$this->line_items[$line_no];
- $line->qty_dispatched = $line->quantity-$line->qty_done;
- }
- }
- } else { // derivative transaction
- read_sales_trans($type, $trans_no, $this);
- if ($this->order_no) { // free hand credit notes have no order_no
- $sodata = get_sales_order_header($this->order_no);
- $this->cust_ref = $sodata["customer_ref"];
-//set_customer($customer_name, $customer_id, $currency, $discount)
-//* $this->customer_name = $sodata["name"];
-//* $this->customer_currency = $sodata["curr_code"];
-//* $this->Comments = $sodata["comments"];
- $this->delivery_address = $sodata["delivery_address"];
-// $this->location_name = $sodata["location_name"];
-// $this->document_date = sql2date($myrow["ord_date"]);
- }
- if (!$view && ($type!=11 || $this->trans_link!=0)) {
- $src_type = get_parent_type($type);
- $src_details = 0;
- if ($src_type==30) { // get src data from sales_orders
- $this->src_docs = array( $sodata['order_no']=>$sodata['version']);
- $srcdetails = get_sales_order_details($this->order_no);
- } else { // get src_data from debtor_trans
- $this->src_docs = get_customer_trans_version($src_type, get_parent_trans($type,$trans_no[0]));
- $srcdetails = get_customer_trans_details($src_type,array_keys($this->src_docs));
- }
- // calculate & save: qtys on other docs and free qtys on src doc
- $line_no = 0;
- for($line_no=0; $srcline = db_fetch($srcdetails); $line_no++) {
- $sign = 1; // $type==13 ? 1 : -1; // this is strange debtor_trans atavism