diff --git a/CHANGELOG b/CHANGELOG index b40d94fc34..30f830b049 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,5 @@ +* Remove required on request origin + Version 4.4.0 - 2017-05-01 * Bug fixes (see mercurial logs for details) * Add requests on purchase line diff --git a/purchase_request.py b/purchase_request.py index 56a23eaa3f..bc226bc153 100644 --- a/purchase_request.py +++ b/purchase_request.py @@ -76,8 +76,7 @@ class PurchaseRequest(ModelSQL, ModelView): ('id', If(In('company', Eval('context', {})), '=', '!='), Eval('context', {}).get('company', -1)), ]) - origin = fields.Reference('Origin', selection='get_origin', readonly=True, - required=True) + origin = fields.Reference('Origin', selection='get_origin', readonly=True) exception_ignored = fields.Boolean('Ignored Exception') state = fields.Selection([ ('purchased', "Purchased"), @@ -161,6 +160,9 @@ class PurchaseRequest(ModelSQL, ModelView): [state], where=request.id == request_id)) + # Migration from 4.4: remove required on origin + tablehandler.not_null_action('origin', action='remove') + def get_rec_name(self, name): product_name = (self.product.name if self.product else self.description.splitlines()[0]) @@ -252,7 +254,7 @@ class PurchaseRequest(ModelSQL, ModelView): models = IrModel.search([ ('model', 'in', list(cls._get_origin())), ]) - return [(m.model, m.name) for m in models] + return [(None, '')] + [(m.model, m.name) for m in models] @classmethod def create(cls, vlist):