changeset 31e99858b795 in modules/account_es:5.2
details:
https://hg.tryton.org/modules/account_es?cmd=changeset;node=31e99858b795
description:
Exclude refunds from cancelled invoices on ES VAT List
issue9097
review289441002
(grafted from fef002013c637aae9851c680fae4a8b92d01e7c6)
diffstat:
reporting_tax.py | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diffs (31 lines):
diff -r 520b40f6bea4 -r 31e99858b795 reporting_tax.py
--- a/reporting_tax.py Sat Apr 04 16:58:37 2020 +0200
+++ b/reporting_tax.py Mon Apr 06 13:05:05 2020 +0200
@@ -9,6 +9,7 @@
from sql.aggregate import Count, Max, Min, Sum
from sql.conditionals import Case
from sql.functions import Substring, Position, Extract
+from sql.operators import Exists
from trytond.i18n import gettext
from trytond.model import ModelSQL, ModelView, fields
@@ -427,6 +428,7 @@
Date = pool.get('ir.date')
context = Transaction().context
invoice = Invoice.__table__()
+ cancel_invoice = Invoice.__table__()
invoice_tax = InvoiceTax.__table__()
tax = Tax.__table__()
@@ -437,7 +439,10 @@
& (invoice.state.in_(['posted', 'paid']))
& (tax.es_vat_list_code != Null)
& (Extract('year', invoice.invoice_date)
- == context.get('date', Date.today()).year))
+ == context.get('date', Date.today()).year)
+ & ~Exists(cancel_invoice.select(
+ cancel_invoice.cancel_move, distinct=True,
+ where=(cancel_invoice.cancel_move == invoice.move))))
return (invoice_tax
.join(invoice,
condition=invoice_tax.invoice == invoice.id)