← Back to team overview

openerp-dev-web team mailing list archive

[Merge] lp:~openerp-dev/openobject-addons/trunk-bug-756606-pso into lp:openobject-addons

 

pso (Open ERP) has proposed merging lp:~openerp-dev/openobject-addons/trunk-bug-756606-pso into lp:openobject-addons.

Requested reviews:
  OpenERP Core Team (openerp)
Related bugs:
  Bug #756606 in OpenERP Addons: "v6 POS Module - making payment doesn't register 'payment date'"
  https://bugs.launchpad.net/openobject-addons/+bug/756606

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-bug-756606-pso/+merge/57134

Fixed bug: 756606 (https://bugs.launchpad.net/openobject-addons/+bug/756606)
Making payment doesn't register payment date.
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-bug-756606-pso/+merge/57134
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-addons/trunk-bug-756606-pso.
=== modified file 'point_of_sale/point_of_sale.py'
--- point_of_sale/point_of_sale.py	2011-02-23 14:34:55 +0000
+++ point_of_sale/point_of_sale.py	2011-04-11 10:25:54 +0000
@@ -114,10 +114,18 @@
             if date_p:
                 res[order.id] = date_p
                 return res
-            cr.execute(" SELECT MAX(l.date) "
-                        " FROM account_move_line l, account_move m, account_invoice i, account_move_reconcile r, pos_order o "
-                        " WHERE i.move_id = m.id AND l.move_id = m.id AND l.reconcile_id = r.id AND o.id = %s AND o.invoice_id = i.id",
-                        (order.id,))
+            if order.invoice_id:
+                cr.execute(" SELECT MAX(l.date) "
+                            " FROM account_move_line l, account_move m, account_invoice i, account_move_reconcile r, pos_order o "
+                            " WHERE i.move_id = m.id AND l.move_id = m.id AND l.reconcile_id = r.id AND o.id = %s AND o.invoice_id = i.id",
+                            (order.id,))
+            else:
+                cr.execute("SELECT MAX(l.date) from account_move_line l "
+                            "left join account_bank_statement abs on (l.statement_id=abs.id)"
+                            "left join account_bank_statement_line absl on (absl.statement_id=abs.id) "
+                            "left join pos_order p on (p.id=absl.pos_statement_id) "
+                            "left join account_account a on (a.id=absl.account_id) "
+                            "where p.id=%s and l.reconcile_id is not NULL and a.reconcile=True", (order.id,))
             val = cr.fetchone()
             val = val and val[0] or None
             if val:


Follow ups