From 9d66479afa7d2d853728324fd53c2a60cd86d205 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Fri, 23 May 2014 11:55:03 +0200 Subject: [PATCH] Add domain on start/end date to enforce order issue2773 review9371002 --- fiscalyear.py | 6 ++++-- period.py | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/fiscalyear.py b/fiscalyear.py index 5a96934057..f98d0b1547 100644 --- a/fiscalyear.py +++ b/fiscalyear.py @@ -25,9 +25,11 @@ class FiscalYear(ModelSQL, ModelView): name = fields.Char('Name', size=None, required=True, depends=DEPENDS) code = fields.Char('Code', size=None) start_date = fields.Date('Starting Date', required=True, states=STATES, - depends=DEPENDS) + domain=[('start_date', '<=', Eval('end_date', None))], + depends=DEPENDS + ['end_date']) end_date = fields.Date('Ending Date', required=True, states=STATES, - depends=DEPENDS) + domain=[('end_date', '>=', Eval('start_date', None))], + depends=DEPENDS + ['start_date']) periods = fields.One2Many('account.period', 'fiscalyear', 'Periods', states=STATES, depends=DEPENDS) state = fields.Selection([ diff --git a/period.py b/period.py index 36f3de4115..f3ce207e85 100644 --- a/period.py +++ b/period.py @@ -22,9 +22,11 @@ class Period(ModelSQL, ModelView): name = fields.Char('Name', required=True) code = fields.Char('Code') start_date = fields.Date('Starting Date', required=True, states=_STATES, - depends=_DEPENDS, select=True) + domain=[('start_date', '<=', Eval('end_date', None))], + depends=_DEPENDS + ['end_date'], select=True) end_date = fields.Date('Ending Date', required=True, states=_STATES, - depends=_DEPENDS, select=True) + domain=[('end_date', '>=', Eval('start_date', None))], + depends=_DEPENDS + ['start_date'], select=True) fiscalyear = fields.Many2One('account.fiscalyear', 'Fiscal Year', required=True, states=_STATES, depends=_DEPENDS, select=True) state = fields.Selection([