Remove journal view

The feature can be emulated by contextual view inheritance.

issue6002
review31681002
This commit is contained in:
Cédric Krier committed 2016-10-31 17:25:11 +01:00
1 parent 68581bf1e8
commit 760f71d95d
12 files changed
+3 -220

No files matched your search

+1
View File
@@ -1,3 +1,4 @@
* Remove journal view
* Add amount second currency on Account
* Enforce second currency on Account
* Remove code from Fiscalyear and Period
-2
View File
@@ -40,8 +40,6 @@ def register():
Configuration,
Period,
JournalType,
JournalView,
JournalViewColumn,
Journal,
JournalCashContext,
JournalPeriod,
-2
View File
@@ -99,8 +99,6 @@ A Journal contains the following fields:
- Name
- Code
- Active: A checkbox that allow to disable the tax.
- View: Defines how the moves lines on this journal should be
displayed.
- Default Credit Account, Default Debit Account: Used as default
accounts on move lines for journals of *Cash* type.
- Type: By default take one of the following values: *General*,
+2 -45
View File
@@ -5,8 +5,7 @@ from decimal import Decimal
from sql import Null
from sql.aggregate import Sum
from trytond.model import ModelView, ModelSQL, fields, Unique, \
sequence_ordered
from trytond.model import ModelView, ModelSQL, fields, Unique
from trytond.wizard import Wizard, StateTransition
from trytond import backend
from trytond.pyson import Eval, Bool
@@ -14,7 +13,7 @@ from trytond.transaction import Transaction
from trytond.pool import Pool
from trytond.tools import reduce_ids, grouped_slice
__all__ = ['JournalType', 'JournalView', 'JournalViewColumn', 'Journal',
__all__ = ['JournalType', 'Journal',
'JournalCashContext',
'JournalPeriod', 'CloseJournalPeriod', 'ReOpenJournalPeriod']
@@ -45,47 +44,6 @@ class JournalType(ModelSQL, ModelView):
cls._order.insert(0, ('code', 'ASC'))
class JournalView(ModelSQL, ModelView):
'Journal View'
__name__ = 'account.journal.view'
name = fields.Char('Name', size=None, required=True)
columns = fields.One2Many('account.journal.view.column', 'view', 'Columns')
@classmethod
def __setup__(cls):
super(JournalView, cls).__setup__()
cls._order.insert(0, ('name', 'ASC'))
class JournalViewColumn(sequence_ordered(), ModelSQL, ModelView):
'Journal View Column'
__name__ = 'account.journal.view.column'
name = fields.Char('Name', size=None, required=True)
field = fields.Many2One('ir.model.field', 'Field', required=True,
domain=[('model.model', '=', 'account.move.line')])
view = fields.Many2One('account.journal.view', 'View', select=True)
required = fields.Boolean('Required')
readonly = fields.Boolean('Readonly')
@classmethod
def __register__(cls, module_name):
TableHandler = backend.get('TableHandler')
table = TableHandler(cls, module_name)
super(JournalViewColumn, cls).__register__(module_name)
# Migration from 2.4: drop required on sequence
table.not_null_action('sequence', action='remove')
@staticmethod
def default_required():
return False
@staticmethod
def default_readonly():
return False
class Journal(ModelSQL, ModelView):
'Journal'
__name__ = 'account.journal'
@@ -93,7 +51,6 @@ class Journal(ModelSQL, ModelView):
code = fields.Char('Code', size=None)
active = fields.Boolean('Active', select=True)
type = fields.Selection('get_types', 'Type', required=True)
view = fields.Many2One('account.journal.view', 'View')
sequence = fields.Property(fields.Many2One('ir.sequence', 'Sequence',
domain=[('code', '=', 'account.journal')],
context={'code': 'account.journal'},
-79
View File
@@ -72,85 +72,6 @@ this repository contains the full copyright notices and license terms. -->
<field name="code">write-off</field>
</record>
<record model="ir.ui.view" id="journal_view_view_form">
<field name="model">account.journal.view</field>
<field name="type">form</field>
<field name="name">journal_view_form</field>
</record>
<record model="ir.ui.view" id="journal_view_view_tree">
<field name="model">account.journal.view</field>
<field name="type">tree</field>
<field name="name">journal_view_tree</field>
</record>
<record model="ir.action.act_window" id="act_journal_view_form">
<field name="name">Journal Views</field>
<field name="res_model">account.journal.view</field>
</record>
<record model="ir.action.act_window.view" id="act_journal_view_form_view1">
<field name="sequence" eval="10"/>
<field name="view" ref="journal_view_view_tree"/>
<field name="act_window" ref="act_journal_view_form"/>
</record>
<record model="ir.action.act_window.view" id="act_journal_view_form_view2">
<field name="sequence" eval="20"/>
<field name="view" ref="journal_view_view_form"/>
<field name="act_window" ref="act_journal_view_form"/>
</record>
<menuitem parent="menu_journal_configuration"
action="act_journal_view_form" id="menu_journal_view_form"/>
<record model="ir.model.access" id="access_journal_view">
<field name="model" search="[('model', '=', 'account.journal.view')]"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<field name="perm_delete" eval="False"/>
</record>
<record model="ir.model.access" id="access_journal_view_account_admin">
<field name="model" search="[('model', '=', 'account.journal.view')]"/>
<field name="group" ref="group_account_admin"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
<record model="ir.ui.view" id="journal_view_column_view_list">
<field name="model">account.journal.view.column</field>
<field name="type">tree</field>
<field name="priority" eval="10"/>
<field name="name">journal_view_column_list</field>
</record>
<record model="ir.ui.view" id="journal_view_column_view_list_sequence">
<field name="model">account.journal.view.column</field>
<field name="type">tree</field>
<field name="priority" eval="20"/>
<field name="name">journal_view_column_list_sequence</field>
</record>
<record model="ir.ui.view" id="journal_view_column_view_form">
<field name="model">account.journal.view.column</field>
<field name="type">form</field>
<field name="name">journal_view_column_form</field>
</record>
<record model="ir.model.access" id="access_journal_view_column">
<field name="model" search="[('model', '=', 'account.journal.view.column')]"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<field name="perm_delete" eval="False"/>
</record>
<record model="ir.model.access" id="access_journal_view_column_account_admin">
<field name="model" search="[('model', '=', 'account.journal.view.column')]"/>
<field name="group" ref="group_account_admin"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
<record model="ir.ui.view" id="journal_view_form">
<field name="model">account.journal</field>
<field name="type">form</field>
-37
View File
@@ -1498,43 +1498,6 @@ class Line(ModelSQL, ModelView):
})
return toolbar
@classmethod
def fields_view_get(cls, view_id=None, view_type='form'):
Journal = Pool().get('account.journal')
result = super(Line, cls).fields_view_get(view_id=view_id,
view_type=view_type)
if view_type == 'tree' and 'journal' in Transaction().context:
journal = Journal(Transaction().context['journal'])
if not journal.view:
return result
xml = '<?xml version="1.0"?>\n' \
'<tree editable="top" on_write="on_write">\n'
fields = set()
for column in journal.view.columns:
fields.add(column.field.name)
attrs = []
if column.field.name == 'debit':
attrs.append('sum="Debit"')
elif column.field.name == 'credit':
attrs.append('sum="Credit"')
if column.readonly:
attrs.append('readonly="1"')
if column.required:
attrs.append('required="1"')
else:
attrs.append('required="0"')
xml += ('<field name="%s" %s/>\n'
% (column.field.name, ' '.join(attrs)))
for depend in getattr(cls, column.field.name).depends:
fields.add(depend)
fields.add('state')
xml += '</tree>'
result['arch'] = xml
result['fields'] = cls.fields_get(fields_names=list(fields))
return result
@classmethod
def reconcile(cls, lines, journal=None, date=None, account=None,
description=None):
-3
View File
@@ -14,9 +14,6 @@ this repository contains the full copyright notices and license terms. -->
<field name="type"/>
<label name="sequence"/>
<field name="sequence"/>
<label name="view"/>
<field name="view"/>
<newline/>
<label name="debit_account"/>
<field name="debit_account"/>
<label name="credit_account"/>
-17
View File
@@ -1,17 +0,0 @@
<?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. -->
<form>
<label name="name"/>
<field name="name"/>
<label name="sequence"/>
<field name="sequence"/>
<label name="field"/>
<field name="field"/>
<label name="view"/>
<field name="view"/>
<label name="required"/>
<field name="required"/>
<label name="readonly"/>
<field name="readonly"/>
</form>
-10
View File
@@ -1,10 +0,0 @@
<?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. -->
<tree>
<field name="view"/>
<field name="name"/>
<field name="field"/>
<field name="required"/>
<field name="readonly"/>
</tree>
@@ -1,9 +0,0 @@
<?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. -->
<tree sequence="sequence" editable="bottom">
<field name="name"/>
<field name="field"/>
<field name="required"/>
<field name="readonly"/>
</tree>
-10
View File
@@ -1,10 +0,0 @@
<?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. -->
<form col="2">
<label name="name"/>
<field name="name"/>
<field name="columns" colspan="2"
view_ids="account.journal_view_column_view_list_sequence">
</field>
</form>
-6
View File
@@ -1,6 +0,0 @@
<?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. -->
<tree>
<field name="name"/>
</tree>