changeset b899d860c265 in modules/account_invoice:default
details:
https://hg.tryton.org/modules/account_invoice?cmd=changeset;node=b899d860c265
description:
Merge account kind and account type
issue4990
review68401002
diffstat:
invoice.py | 37 ++++++++++++++++++++-----------------
1 files changed, 20 insertions(+), 17 deletions(-)
diffs (85 lines):
diff -r 77672b9a3ce9 -r b899d860c265 invoice.py
--- a/invoice.py Fri Mar 22 15:33:42 2019 +0100
+++ b/invoice.py Sun Mar 24 18:00:01 2019 +0100
@@ -149,8 +149,8 @@
domain=[
('company', '=', Eval('company', -1)),
If(Eval('type') == 'out',
- ('kind', '=', 'receivable'),
- ('kind', '=', 'payable')),
+ ('type.receivable', '=', True),
+ ('type.payable', '=', True)),
])
payment_term = fields.Many2One('account.invoice.payment_term',
'Payment Term', states=_STATES, depends=_DEPENDS)
@@ -1665,19 +1665,19 @@
('company', '=', Eval('company', -1)),
If(Bool(Eval('_parent_invoice')),
If(Eval('_parent_invoice', {}).get('type') == 'out',
- ('kind', 'in', cls._account_domain('out')),
+ cls._account_domain('out'),
If(Eval('_parent_invoice', {}).get('type') == 'in',
- ('kind', 'in', cls._account_domain('in')),
- ('kind', 'in',
- cls._account_domain('out')
- + cls._account_domain('in')))),
+ cls._account_domain('in'),
+ ['OR',
+ cls._account_domain('out'),
+ cls._account_domain('in')])),
If(Eval('invoice_type') == 'out',
- ('kind', 'in', cls._account_domain('out')),
+ cls._account_domain('out'),
If(Eval('invoice_type') == 'in',
- ('kind', 'in', cls._account_domain('in')),
- ('kind', 'in',
- cls._account_domain('out')
- + cls._account_domain('in'))))),
+ cls._account_domain('in'),
+ ['OR',
+ cls._account_domain('out'),
+ cls._account_domain('in')]))),
]
cls.account.depends += ['company', 'invoice_type']
cls.sequence.states.update({
@@ -1687,9 +1687,9 @@
@staticmethod
def _account_domain(type_):
if type_ == 'out':
- return ['revenue']
+ return ['OR', ('type.revenue', '=', True)]
elif type_ == 'in':
- return ['expense']
+ return ['OR', ('type.expense', '=', True)]
@classmethod
def __register__(cls, module_name):
@@ -2168,7 +2168,8 @@
'get_sequence_number')
account = fields.Many2One('account.account', 'Account', required=True,
domain=[
- ('kind', '!=', 'view'),
+ ('type', '!=', None),
+ ('closed', '!=', True),
('company', '=', Eval('_parent_invoice', {}).get('company', 0)),
],
states=_states, depends=_depends)
@@ -2370,14 +2371,16 @@
credit_account = fields.Many2One('account.account', "Credit Account",
required=True,
domain=[
- ('kind', '!=', 'view'),
+ ('type', '!=', None),
+ ('closed', '!=', True),
('company', '=', Eval('company')),
],
depends=['company'])
debit_account = fields.Many2One('account.account', "Debit Account",
required=True,
domain=[
- ('kind', '!=', 'view'),
+ ('type', '!=', None),
+ ('closed', '!=', True),
('company', '=', Eval('company')),
],
depends=['company'])