Invoice Prepaid Orders: Added new payments column for direct review of order invoicin...
authorJanusz Dobrowolski <janusz@frontaccounting.eu>
Fri, 29 Apr 2022 07:38:02 +0000 (09:38 +0200)
committerJanusz Dobrowolski <janusz@frontaccounting.eu>
Fri, 29 Apr 2022 07:38:02 +0000 (09:38 +0200)
sales/includes/db/sales_order_db.inc
sales/inquiry/sales_orders_view.php

index 9d43fb3af94b8427c5cc9cb3d2da0f8e9ba81beb..9b790ce65861573f8bd9e803455c41d5256eb44d 100644 (file)
@@ -493,7 +493,8 @@ function get_sql_for_sales_orders_view($trans_type, $trans_no, $filter,
                        allocs.ord_payments,
                        inv.inv_payments,
                        sorder.total,
-                       sorder.trans_type
+                       sorder.trans_type,
+                       sorder.debtor_no
                FROM ".TB_PREF."sales_orders as sorder
                LEFT JOIN (SELECT trans_no_to, sum(amt) ord_payments FROM ".TB_PREF."cust_allocations WHERE trans_type_to=".ST_SALESORDER." GROUP BY trans_no_to)
                         allocs ON sorder.trans_type=".ST_SALESORDER." AND allocs.trans_no_to=sorder.order_no
index 6a7186d952e2f716cdf245e877b1da17250751e9..3d70d125b686a20001973dc4ef1d2a7521f7896a 100644 (file)
@@ -173,6 +173,21 @@ function tmpl_checkbox($row)
        . hidden('last['.$row['order_no'].']', $value, false);
 }
 
+function unallocated_prepayments($row)
+{
+
+    if ($row['ord_payments'] > 0) {
+        $pmts = get_payments_for($row['order_no'], $row['trans_type'], $row['debtor_no']);
+
+        foreach($pmts as $pmt)
+        {
+            $list[] = get_trans_view_str($pmt['trans_type_from'], $pmt['trans_no_from'], get_reference($pmt['trans_type_from'], $pmt['trans_no_from']));
+        }
+        return implode(',', $list);
+    } else
+        return '';
+}
+
 function invoice_prep_link($row)
 {
        // invoicing should be available only for partially allocated orders
@@ -297,7 +312,8 @@ if ($_POST['order_view_mode'] == 'OutstandingOnly') {
        );
 } else if ($_POST['order_view_mode'] == 'PrepaidOrders') {
        array_append($cols, array(
-                       array('insert'=>true, 'fun'=>'invoice_prep_link'))
+               _("New Payments") => array('insert'=>true, 'fun'=>'unallocated_prepayments'),
+               array('insert'=>true, 'fun'=>'invoice_prep_link'))
        );
 
 } elseif ($trans_type == ST_SALESQUOTE) {