diff --git a/product/ERP5Type/Base.py b/product/ERP5Type/Base.py index d513c2d28f75b45ec22edd601a2ae9f21ad2a367..0748428288083fac1d1350366051b5fdcd2eba77 100755 --- a/product/ERP5Type/Base.py +++ b/product/ERP5Type/Base.py @@ -428,7 +428,7 @@ class Base( CopyContainer, PortalContent, ActiveObject, ERP5PropertyManager ): if not Base.aq_related_generated: from Utils import createRelatedValueAccessors generated = 1 - portal_categories = getToolByName(self, 'portal_categories', None) + portal_types = getToolByName(self, 'portal_types', None) generated_bid = {} for pid, ps in PropertySheet.__dict__.items(): if pid[0] != '_': @@ -437,6 +437,12 @@ class Base( CopyContainer, PortalContent, ActiveObject, ERP5PropertyManager ): #LOG( "Create createRelatedValueAccessors %s" % bid,0,'') createRelatedValueAccessors(Base, bid) generated_bid[bid] = 1 + for ptype in portal_types.objectValues('ERP5 Type Information') : + for bid in ptype.base_category_list : + if bid not in generated_bid : + createRelatedValueAccessors(Base, bid) + generated_bid[bid] = 1 + Base.aq_related_generated = 1 # Always try to return something after generation