changeset f77077488738 in modules/account_asset:default
details: 
https://hg.tryton.org/modules/account_asset?cmd=changeset;node=f77077488738
description:
        Merge account kind and account type

        issue4990
        review68401002
diffstat:

 CHANGELOG                  |   2 ++
 __init__.py                |   2 ++
 account.py                 |  43 +++++++++++++++++++++++++++++++++++++++----
 account.xml                |  12 ++++++++++++
 asset.py                   |   2 +-
 invoice.py                 |   7 +++++++
 minimal_chart.xml          |  34 +++++++++++++++++++++++-----------
 minimal_chart_bg.xml       |  30 +++++++++++++++++++++++-------
 minimal_chart_ca.xml       |  30 +++++++++++++++++++++++-------
 minimal_chart_de.xml       |  30 +++++++++++++++++++++++-------
 minimal_chart_en.xml       |  30 +++++++++++++++++++++++-------
 minimal_chart_es.xml       |  30 +++++++++++++++++++++++-------
 minimal_chart_fr.xml       |  30 +++++++++++++++++++++++-------
 minimal_chart_nl.xml       |  30 +++++++++++++++++++++++-------
 minimal_chart_pt.xml       |  28 +++++++++++++++++++++-------
 minimal_chart_ru.xml       |  30 +++++++++++++++++++++++-------
 minimal_chart_sl.xml       |  30 +++++++++++++++++++++++-------
 product.py                 |   8 ++++----
 tests/tools.py             |  22 +++++++++-------------
 view/account_type_form.xml |   9 +++++++++
 20 files changed, 336 insertions(+), 103 deletions(-)

diffs (854 lines):

diff -r 57d2a1400de0 -r f77077488738 CHANGELOG
--- a/CHANGELOG Fri Mar 22 15:33:42 2019 +0100
+++ b/CHANGELOG Sun Mar 24 18:00:01 2019 +0100
@@ -1,3 +1,5 @@
+* Add asset on account type
+
 Version 5.0.0 - 2018-10-01
 * Bug fixes (see mercurial logs for details)
 * Allow to set when the depreciation move should be created
diff -r 57d2a1400de0 -r f77077488738 __init__.py
--- a/__init__.py       Fri Mar 22 15:33:42 2019 +0100
+++ b/__init__.py       Sun Mar 24 18:00:01 2019 +0100
@@ -25,6 +25,8 @@
         account.Configuration,
         account.ConfigurationAssetSequence,
         account.ConfigurationAssetDate,
+        account.AccountTypeTemplate,
+        account.AccountType,
         account.Move,
         account.Period,
         account.Journal,
diff -r 57d2a1400de0 -r f77077488738 account.py
--- a/account.py        Fri Mar 22 15:33:42 2019 +0100
+++ b/account.py        Sun Mar 24 18:00:01 2019 +0100
@@ -4,14 +4,11 @@
 from trytond.i18n import gettext
 from trytond.model import ModelSQL, fields
 from trytond.model.exceptions import AccessError
-from trytond.pyson import Eval
+from trytond.pyson import Eval, If, Bool
 from trytond.pool import PoolMeta, Pool
 from trytond.tools.multivalue import migrate_property
 from trytond.modules.company.model import CompanyValueMixin
 
-__all__ = ['Configuration', 'ConfigurationAssetSequence',
-    'ConfigurationAssetDate', 'Move', 'Period', 'Journal']
-
 asset_bymonthday = fields.Selection([
         ('1', "First"),
         ('-1', "Last"),
@@ -122,6 +119,44 @@
         return "12"
 
 
+def AccountTypeMixin(template=False):
+
+    class Mixin:
+        fixed_asset = fields.Boolean(
+            "Fixed Asset",
+            domain=[
+                If(Eval('statement') != 'balance',
+                    ('fixed_asset', '=', False), ()),
+                ],
+            states={
+                'invisible': ((Eval('statement') != 'balance')
+                    | ~Eval('assets', True)),
+                },
+            depends=['statement', 'assets'])
+    if not template:
+        for fname in dir(Mixin):
+            field = getattr(Mixin, fname)
+            if not isinstance(field, fields.Field):
+                continue
+            field.states['readonly'] = (
+                Bool(Eval('template', -1)) & ~Eval('template_override', False))
+    return Mixin
+
+
+class AccountTypeTemplate(AccountTypeMixin(template=True), metaclass=PoolMeta):
+    __name__ = 'account.account.type.template'
+
+    def _get_type_value(self, type=None):
+        values = super()._get_type_value(type=type)
+        if not type or type.fixed_asset != self.fixed_asset:
+            values['fixed_asset'] = self.fixed_asset
+        return values
+
+
+class AccountType(AccountTypeMixin(), metaclass=PoolMeta):
+    __name__ = 'account.account.type'
+
+
 class Move(metaclass=PoolMeta):
     __name__ = 'account.move'
 
diff -r 57d2a1400de0 -r f77077488738 account.xml
--- a/account.xml       Fri Mar 22 15:33:42 2019 +0100
+++ b/account.xml       Sun Mar 24 18:00:01 2019 +0100
@@ -8,5 +8,17 @@
             <field name="inherit" ref="account.configuration_view_form"/>
             <field name="name">configuration_form</field>
         </record>
+
+        <record model="ir.ui.view" id="account_type_template_view_form">
+            <field name="model">account.account.type.template</field>
+            <field name="inherit" 
ref="account.account_type_template_view_form"/>
+            <field name="name">account_type_form</field>
+        </record>
+
+        <record model="ir.ui.view" id="account_type_view_form">
+            <field name="model">account.account.type</field>
+            <field name="inherit" ref="account.account_type_view_form"/>
+            <field name="name">account_type_form</field>
+        </record>
     </data>
 </tryton>
diff -r 57d2a1400de0 -r f77077488738 asset.py
--- a/asset.py  Fri Mar 22 15:33:42 2019 +0100
+++ b/asset.py  Sun Mar 24 18:00:01 2019 +0100
@@ -913,7 +913,7 @@
 
             @cached_property
             def update_lines(self):
-                filter_ = lambda l: (l.account.kind == 'other'
+                filter_ = lambda l: (l.account.type.expense
                     and self.start_date < l.move.date <= self.end_date)
                 return list(filter(filter_,
                     (l for m in self.asset.update_moves for l in m.lines)))
diff -r 57d2a1400de0 -r f77077488738 invoice.py
--- a/invoice.py        Fri Mar 22 15:33:42 2019 +0100
+++ b/invoice.py        Sun Mar 24 18:00:01 2019 +0100
@@ -33,6 +33,13 @@
                 'account_asset.msg_invoice_line_asset_unique'),
             ]
 
+    @classmethod
+    def _account_domain(cls, type_):
+        domain = super()._account_domain(type_)
+        if type_ == 'in':
+            domain.append(('type.fixed_asset', '=', True))
+        return domain
+
     @fields.depends('product', 'invoice', 'invoice_type',
         '_parent_invoice.invoice_date', '_parent_invoice.accounting_date')
     def on_change_product(self):
diff -r 57d2a1400de0 -r f77077488738 minimal_chart.xml
--- a/minimal_chart.xml Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart.xml Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,25 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record model="account.account.type.template"
+                id="account_type_template_fixed_assets">
+            <field name="name" lang="en">Fixed Assets</field>
+            <field name="name" lang="bg">дълготрайни активи</field>
+            <field name="name" lang="ca">Actius fixos</field>
+            <field name="name" lang="de">Anlagevermögen</field>
+            <field name="name" lang="es">Activos fijos</field>
+            <field name="name" lang="fr">Immobilisations</field>
+            <field name="name" lang="nl">Vaste activa</field>
+            <field name="name" lang="pt">Ativo permanente</field>
+            <field name="name" lang="ru">Основные средства</field>
+            <field name="name" lang="sl">Osnovna sredstva</field>
+            <field name="parent" 
ref="account.account_type_template_asset_long_term"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record model="account.account.template"
             id="account_template_assets">
             <field name="name" lang="en">Assets</field>
@@ -15,16 +34,12 @@
             <field name="name" lang="pt">Ativos</field>
             <field name="name" lang="ru">Assets</field>
             <field name="name" lang="sl">Sredstva</field>
-            <field name="type"
-                ref="account.account_type_template_asset_long_term"/>
+            <field name="type" ref="account_type_template_fixed_assets"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root"/>
-            <field name="kind">expense</field>
         </record>
 
-        <record model="account.account.template"
-                id="account_template_depretiation">
+        <record model="account.account.template" 
id="account_template_depretiation">
             <field name="name" lang="en">Depreciation</field>
             <field name="name" lang="bg">Depreciation</field>
             <field name="name" lang="ca">Amortització</field>
@@ -35,12 +50,9 @@
             <field name="name" lang="pt">Depreciação</field>
             <field name="name" lang="ru">Depreciation</field>
             <field name="name" lang="sl">Amortizacija</field>
-            <field name="type"
-                ref="account.account_type_template_asset_long_term"/>
+            <field name="type" ref="account_type_template_fixed_assets"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_bg.xml
--- a/minimal_chart_bg.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_bg.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_bg" 
model="account.account.type.template">
+            
+            <field name="name">дълготрайни активи</field>
+            
+            
+            
+            
+            
+            
+            
+            
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_bg"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_bg" 
model="account.account.template">
             
             <field name="name">Assets</field>
@@ -13,11 +31,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_bg"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_bg"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_bg"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_bg" 
model="account.account.template">
@@ -30,11 +47,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_bg"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_bg"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_bg"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_bg"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_ca.xml
--- a/minimal_chart_ca.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_ca.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_ca" 
model="account.account.type.template">
+            
+            
+            <field name="name">Actius fixos</field>
+            
+            
+            
+            
+            
+            
+            
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_ca"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_ca" 
model="account.account.template">
             
             
@@ -13,11 +31,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_ca"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_ca"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_ca"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_ca" 
model="account.account.template">
@@ -30,11 +47,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_ca"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_ca"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_ca"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_ca"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_de.xml
--- a/minimal_chart_de.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_de.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_de" 
model="account.account.type.template">
+            
+            
+            
+            <field name="name">Anlagevermögen</field>
+            
+            
+            
+            
+            
+            
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_de"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_de" 
model="account.account.template">
             
             
@@ -13,11 +31,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_de"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_de"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_de"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_de" 
model="account.account.template">
@@ -30,11 +47,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_de"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_de"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_de"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_de"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_en.xml
--- a/minimal_chart_en.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_en.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_en" 
model="account.account.type.template">
+            <field name="name">Fixed Assets</field>
+            
+            
+            
+            
+            
+            
+            
+            
+            
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_en"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_en" 
model="account.account.template">
             <field name="name">Assets</field>
             
@@ -13,11 +31,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_en"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_en"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_en"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_en" 
model="account.account.template">
@@ -30,11 +47,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_en"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_en"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_en"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_en"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_es.xml
--- a/minimal_chart_es.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_es.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_es" 
model="account.account.type.template">
+            
+            
+            
+            
+            <field name="name">Activos fijos</field>
+            
+            
+            
+            
+            
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_es"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_es" 
model="account.account.template">
             
             
@@ -13,11 +31,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_es"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_es"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_es"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_es" 
model="account.account.template">
@@ -30,11 +47,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_es"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_es"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_es"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_es"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_fr.xml
--- a/minimal_chart_fr.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_fr.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_fr" 
model="account.account.type.template">
+            
+            
+            
+            
+            
+            <field name="name">Immobilisations</field>
+            
+            
+            
+            
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_fr"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_fr" 
model="account.account.template">
             
             
@@ -13,11 +31,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_fr"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_fr"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_fr"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_fr" 
model="account.account.template">
@@ -30,11 +47,10 @@
             
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_fr"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_fr"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_fr"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_fr"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_nl.xml
--- a/minimal_chart_nl.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_nl.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_nl" 
model="account.account.type.template">
+            
+            
+            
+            
+            
+            
+            <field name="name">Vaste activa</field>
+            
+            
+            
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_nl"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_nl" 
model="account.account.template">
             
             
@@ -13,11 +31,10 @@
             <field name="name">Assets</field>
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_nl"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_nl"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_nl"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_nl" 
model="account.account.template">
@@ -30,11 +47,10 @@
             <field name="name">Depreciation</field>
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_nl"/>
+            
+            <field name="type" ref="account_type_template_fixed_assets_nl"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_nl"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_nl"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_pt.xml
--- a/minimal_chart_pt.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_pt.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_pt" 
model="account.account.type.template">
+            
+            
+            
+            
+            
+            
+            
+            <field name="name">Ativo permanente</field>
+            
+            
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_pt"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_pt" 
model="account.account.template">
             
             
@@ -14,11 +32,9 @@
             <field name="name">Ativos</field>
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_pt"/>
+            <field name="type" ref="account_type_template_fixed_assets_pt"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_pt"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_pt" 
model="account.account.template">
@@ -32,11 +48,9 @@
             <field name="name">Depreciação</field>
             
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_pt"/>
+            <field name="type" ref="account_type_template_fixed_assets_pt"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_pt"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_pt"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_ru.xml
--- a/minimal_chart_ru.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_ru.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_ru" 
model="account.account.type.template">
+            
+            
+            
+            
+            
+            
+            
+            
+            <field name="name">Основные средства</field>
+            
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_ru"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_ru" 
model="account.account.template">
             
             
@@ -11,13 +29,12 @@
             
             
             
+            
             <field name="name">Assets</field>
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_ru"/>
+            <field name="type" ref="account_type_template_fixed_assets_ru"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_ru"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_ru" 
model="account.account.template">
@@ -28,13 +45,12 @@
             
             
             
+            
             <field name="name">Depreciation</field>
             
-            <field name="type" 
ref="account.account_type_template_asset_long_term_ru"/>
+            <field name="type" ref="account_type_template_fixed_assets_ru"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_ru"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_ru"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 minimal_chart_sl.xml
--- a/minimal_chart_sl.xml      Fri Mar 22 15:33:42 2019 +0100
+++ b/minimal_chart_sl.xml      Sun Mar 24 18:00:01 2019 +0100
@@ -3,6 +3,24 @@
 this repository contains the full copyright notices and license terms. -->
 <tryton>
     <data>
+        <record id="account_type_template_fixed_assets_sl" 
model="account.account.type.template">
+            
+            
+            
+            
+            
+            
+            
+            
+            
+            <field name="name">Osnovna sredstva</field>
+            <field name="parent" 
ref="account.account_type_template_asset_long_term_sl"/>
+            <field name="statement">balance</field>
+            <field name="assets" eval="True"/>
+            <field name="fixed_asset" eval="True"/>
+            <field name="sequence" eval="10"/>
+        </record>
+
         <record id="account_template_assets_sl" 
model="account.account.template">
             
             
@@ -12,12 +30,11 @@
             
             
             
+            
             <field name="name">Sredstva</field>
-            <field name="type" 
ref="account.account_type_template_asset_long_term_sl"/>
+            <field name="type" ref="account_type_template_fixed_assets_sl"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
             <field name="parent" ref="account.account_template_root_sl"/>
-            <field name="kind">expense</field>
         </record>
 
         <record id="account_template_depretiation_sl" 
model="account.account.template">
@@ -29,12 +46,11 @@
             
             
             
+            
             <field name="name">Amortizacija</field>
-            <field name="type" 
ref="account.account_type_template_asset_long_term_sl"/>
+            <field name="type" ref="account_type_template_fixed_assets_sl"/>
             <field name="reconcile" eval="False"/>
-            <field name="deferral" eval="True"/>
-            <field name="parent" ref="account_template_assets_sl"/>
-            <field name="kind">other</field>
+            <field name="parent" ref="account.account_template_root_sl"/>
         </record>
 
     </data>
diff -r 57d2a1400de0 -r f77077488738 product.py
--- a/product.py        Fri Mar 22 15:33:42 2019 +0100
+++ b/product.py        Sun Mar 24 18:00:01 2019 +0100
@@ -14,7 +14,7 @@
     __name__ = 'product.category'
     account_depreciation = fields.MultiValue(fields.Many2One('account.account',
             'Account Depreciation', domain=[
-                ('kind', '=', 'other'),
+                ('type.fixed_asset', '=', True),
                 ('company', '=', Eval('context', {}).get('company', -1)),
                 ],
             states={
@@ -26,7 +26,7 @@
     account_asset = fields.MultiValue(fields.Many2One('account.account',
             'Account Asset',
             domain=[
-                ('kind', '=', 'expense'),
+                ('type.fixed_asset', '=', True),
                 ('company', '=', Eval('context', {}).get('company', -1)),
                 ],
             states={
@@ -59,14 +59,14 @@
     account_depreciation = fields.Many2One(
         'account.account', "Account Depreciation",
         domain=[
-            ('kind', '=', 'other'),
+            ('type.fixed_asset', '=', True),
             ('company', '=', Eval('company', -1)),
             ],
         depends=['company'])
     account_asset = fields.Many2One(
         'account.account', "Account Asset",
         domain=[
-            ('kind', '=', 'expense'),
+            ('type.fixed_asset', '=', True),
             ('company', '=', Eval('company', -1)),
             ],
         depends=['company'])
diff -r 57d2a1400de0 -r f77077488738 tests/tools.py
--- a/tests/tools.py    Fri Mar 22 15:33:42 2019 +0100
+++ b/tests/tools.py    Sun Mar 24 18:00:01 2019 +0100
@@ -12,18 +12,14 @@
     if not company:
         company = get_company()
 
-    expense_accounts = Account.find([
-            ('kind', '=', 'expense'),
+    accounts['asset'], = Account.find([
+            ('type.fixed_asset', '=', True),
+            ('name', '=', "Assets"),
             ('company', '=', company.id),
-            ])
-    for account in expense_accounts:
-        if account.name == 'Expense':
-            accounts['expense'] = account
-        elif account.name == 'Assets':
-            accounts['asset'] = account
-    depreciation, = Account.find([
-            ('kind', '=', 'other'),
-            ('name', '=', 'Depreciation'),
-            ])
-    accounts['depreciation'] = depreciation
+            ], limit=1)
+    accounts['depreciation'], = Account.find([
+            ('type.fixed_asset', '=', True),
+            ('name', '=', "Depreciation"),
+            ('company', '=', company.id),
+            ], limit=1)
     return accounts
diff -r 57d2a1400de0 -r f77077488738 view/account_type_form.xml
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/view/account_type_form.xml        Sun Mar 24 18:00:01 2019 +0100
@@ -0,0 +1,9 @@
+<?xml version="1.0"?>
+<!-- This file is part of Tryton.  The COPYRIGHT file at the top level of
+this repository contains the full copyright notices and license terms. -->
+<data>
+    <xpath expr="//group[@id='checkboxes']" position="inside">
+        <label name="fixed_asset"/>
+        <field name="fixed_asset"/>
+    </xpath>
+</data>

Reply via email to