diff --git a/equipment.py b/equipment.py index f16527f..a46ba14 100644 --- a/equipment.py +++ b/equipment.py @@ -1,6 +1,6 @@ from collections import defaultdict from trytond.pool import Pool -from trytond.model import ModelSQL, ModelView, fields +from trytond.model import ModelSQL, ModelView, Unique, fields from trytond.exceptions import UserError class OpticalEquipment(ModelSQL, ModelView): @@ -36,3 +36,12 @@ class OpticalEquipment(ModelSQL, ModelView): @staticmethod def get_origin(): return None + + @classmethod + def __setup__(cls): + super(OpticalEquipment, cls).__setup__() + t = cls.__table__() + cls._sql_constraints = [ + ('serial_unique', Unique(t, t.serial), + 'optical_equipment.msg_serial_unique') + ] diff --git a/message.xml b/message.xml index b7d0dbf..d333f80 100644 --- a/message.xml +++ b/message.xml @@ -8,5 +8,8 @@ this repository contains the full copyright notices and license terms. --> Please, select only one purchase. + + The serial number of equipment, should be unique. + diff --git a/purchase.py b/purchase.py index 6048dfc..d693086 100644 --- a/purchase.py +++ b/purchase.py @@ -37,7 +37,7 @@ class Purchase(metaclass=PoolMeta): company=line.company, location=line.to_location, equipment_type=line.product.equipment_type, - propietary=line.company, + propietary=line.company.party, propietary_address=line.address_equipment, product=line.product, model_category=line.product.model_category,