diff --git a/production.py b/production.py index 2bebfcdf9f..5aa68639db 100644 --- a/production.py +++ b/production.py @@ -101,6 +101,7 @@ class Production(metaclass=PoolMeta): for production in draft_productions: works.extend(production.get_works(work_center_picker)) Work.save(works) + Work.set_state([w for p in productions for w in p.works]) def get_works(self, work_center_picker): if not self.routing: diff --git a/work.py b/work.py index 7af4642f1a..fa1fcc37b8 100644 --- a/work.py +++ b/work.py @@ -214,7 +214,7 @@ class Work(sequence_ordered(), ModelSQL, ModelView): @property def _state(self): - if self.production.state == 'waiting': + if self.production.state == 'waiting' and not self.cycles: return 'request' elif self.production.state == 'done': return 'done'