diff -r f5ce0a0d7852 move.py --- a/trytond/trytond/modules/stock/move.py Sun Feb 07 11:51:19 2016 +0100 +++ b/trytond/trytond/modules/stock/move.py Sun Feb 07 12:12:24 2016 +0100 @@ -623,11 +623,15 @@ @Workflow.transition('done') def do(cls, moves): cls.check_origin(moves) + to_write = [] for move in moves: move.set_effective_date() move._do() - move.state = 'done' - move.save() + to_write.extend(([move], move._save_values)) + + if to_write: + cls.write(*to_write) + def _do(self): if (self.from_location.type in ('supplier', 'production')