diff --git a/modules/stock_supply_day/purchase.py b/modules/stock_supply_day/purchase.py index 2641d7f8b0..1b61f570f4 100644 --- a/modules/stock_supply_day/purchase.py +++ b/modules/stock_supply_day/purchase.py @@ -16,7 +16,8 @@ class ProductSupplier(metaclass=PoolMeta): date = super().compute_supply_date(date=date) earlier_date = None if date != datetime.date.max: - for weekday in self.weekdays: + # Use getattr because it can be called with an unsaved instance + for weekday in getattr(self, 'weekdays', []): diff = weekday.index - date.weekday() if diff < 0: diff += 7 @@ -29,7 +30,8 @@ class ProductSupplier(metaclass=PoolMeta): def compute_purchase_date(self, date): later_date = None - for weekday in self.weekdays: + # Use getattr because it can be called with an unsaved instance + for weekday in getattr(self, 'weekdays', []): diff = (date.weekday() - weekday.index) % 7 new_date = date - datetime.timedelta(diff) if later_date and later_date >= new_date: