diff --git a/__init__.py b/__init__.py index 072af28..00d2404 100644 --- a/__init__.py +++ b/__init__.py @@ -10,7 +10,7 @@ from .currency import Currency from .evaluation_context import EvaluationContext from .evaluation_wizard import OpenChartWizard from .investment import InvestmentEvaluation, InvestmentLine -from .ir import Rule +from .ir import Rule, IrActWindow def register(): @@ -20,6 +20,7 @@ def register(): EvaluationLine, EvaluationContext, Rule, + IrActWindow, module='cashbook_report', type_='model') Pool.register( OpenChartWizard, diff --git a/evaluation.py b/evaluation.py index ed0be2b..122d084 100644 --- a/evaluation.py +++ b/evaluation.py @@ -221,7 +221,7 @@ class Evaluation(sequence_ordered(), ModelSQL, ModelView): 'name': evaluation.name, 'res_model': 'cashbook_report.eval_line', 'usage': 'dashboard', - 'domain': '[["evaluation", "=", %d]]' % evaluation.id, + 'context_domain': '[["evaluation", "=", %d]]' % evaluation.id, }]) dashb_actview, = ActView.create([{ diff --git a/ir.py b/ir.py index a8057c8..1573ebf 100644 --- a/ir.py +++ b/ir.py @@ -18,3 +18,30 @@ class Rule(metaclass=PoolMeta): 'ir.action.act_window', 'cashbook_report.evaluation'] # end Rule + + +class IrActWindow(metaclass=PoolMeta): + __name__ = 'ir.action.act_window' + + @classmethod + def __register__(cls, module_name): + super(IrActWindow, cls).__register__(module_name) + + # migrate (6.0 --> 7.0): domain --> context_domain + records = cls.search([ + ('res_model', '=', 'cashbook_report.eval_line'), + ('domain', '!=', None), + ('context_domain', '=', None), + ('context_model', '=', None)]) + if records: + to_write = [] + for record in records: + to_write.extend([ + [record], + { + 'context_domain': record.domain, + 'domain': None, + }]) + cls.write(*to_write) + +# end IrActWindow diff --git a/tests/test_report.py b/tests/test_report.py index a9b0f7f..b9f9c79 100644 --- a/tests/test_report.py +++ b/tests/test_report.py @@ -788,8 +788,9 @@ class ReportTestCase(CashbookInvestmentTestCase): self.assertEqual( evaluation.dashb_actwin.usage, 'dashboard') + self.assertEqual(evaluation.dashb_actwin.domain, None) self.assertEqual( - evaluation.dashb_actwin.domain, + evaluation.dashb_actwin.context_domain, '[["evaluation", "=", %d]]' % evaluation.id) # action-view self.assertEqual(evaluation.dashb_actview.sequence, 10)