diff --git a/message.xml b/message.xml index 44ce6f3..2e751d2 100644 --- a/message.xml +++ b/message.xml @@ -16,7 +16,7 @@ this repository contains the full copyright notices and license terms. --> Party %(party)s has no any account receivable defined. Please, assign one. - Statement %(journal)s opened. + Statement %(statement)s opened. Statement %(statement)s already opened. diff --git a/sale.py b/sale.py index 9e8cbd2..7e1a94f 100644 --- a/sale.py +++ b/sale.py @@ -69,13 +69,15 @@ class Sale(metaclass=PoolMeta): to_post = set() for sale in sales: grouping = getattr(sale.party, 'sale_invoice_grouping_method', - False) + False) + if Transaction().context.get('skip_grouping', False): + grouping = None if getattr(sale, 'invoices', None) and not grouping: for invoice in sale.invoices: if not invoice.state == 'draft': continue sale.set_basic_values_to_invoice(invoice) - invoices.extend(([invoice], invoice._save_values)) + invoices.extend(([invoice], invoice._save_values())) to_post.add(invoice) if to_post: diff --git a/tests/scenario_sale_payment.rst b/tests/scenario_sale_payment.rst index 2a52c36..98dc53e 100644 --- a/tests/scenario_sale_payment.rst +++ b/tests/scenario_sale_payment.rst @@ -203,7 +203,7 @@ Open statements for current device:: >>> open_statment = Wizard('open.statement') >>> open_statment.execute('create_') >>> open_statment.form.result == 'sale_payment.open_statement' - True + False >>> payment_statement, = Statement.find([('state', '=', 'draft')]) Partially pay the sale::