diff --git a/trytond/trytond/pool.py b/trytond/trytond/pool.py index 407ff358..0be2a41a 100644 --- a/trytond/trytond/pool.py +++ b/trytond/trytond/pool.py @@ -195,6 +195,16 @@ class Pool(object): self.add(cls, type) self.setup_mixin(self._modules, type='report', name=name) return self.get(name, type=type) + elif name[:15] == 'babi_execution_': + import sys + # Do not reload if babi model is accessed during update. + if not sys.argv[0].endswith('trytond-admin'): + with Transaction(new=True).start(self.database_name, 0, + readonly=False): + Execution = self.get('babi.report.execution') + execution = Execution(int(name[15:])) + execution.validate_model(avoid_registration=True) + return self._pool[self.database_name][type][name] raise def add(self, cls, type='model'):