diff --git a/trytond/trytond/modules/party_relationship/party.py b/trytond/trytond/modules/party_relationship/party.py index 5ab3464..e55208f 100644 --- a/trytond/trytond/modules/party_relationship/party.py +++ b/trytond/trytond/modules/party_relationship/party.py @@ -5,6 +5,7 @@ from sql import Union, As, Column, Null from trytond.pool import Pool, PoolMeta from trytond.model import ModelSQL, ModelView, fields from trytond.transaction import Transaction +from trytond.pyson import Eval, If __all__ = ['RelationType', 'PartyRelation', 'PartyRelationAll', 'Party'] @@ -29,6 +30,17 @@ class PartyRelation(ModelSQL): ondelete='CASCADE') type = fields.Many2One('party.relation.type', 'Type', required=True, select=True) + start_date = fields.Date("Start Date", domain=[ + If(Eval('start_date') & Eval('end_date'), + ('start_date', '<=', Eval('end_date', None)), + ()), + ], depends=['end_date']) + end_date = fields.Date("End Date", domain=[ + If(Eval('start_date') & Eval('end_date'), + ('end_date', '>=', Eval('start_date', None)), + ()), + ], depends=['start_date']) + @classmethod def search_rec_name(cls, name, clause): diff --git a/trytond/trytond/modules/party_relationship/view/relation_form.xml b/trytond/trytond/modules/party_relationship/view/relation_form.xml index 2c1cddd..572e45d 100644 --- a/trytond/trytond/modules/party_relationship/view/relation_form.xml +++ b/trytond/trytond/modules/party_relationship/view/relation_form.xml @@ -8,4 +8,9 @@ this repository contains the full copyright notices and license terms. -->