Dieter Maurer schrieb:
I can call this method on whatever folder inside the product instance I want, it will always return the id of the product and not the id of the product I call it on.
I fear you will need to more clearly describe what you mean with "the product" (on one hand) and "the product I call it on" (on the other hand).
Yes sorry I got this wrong. The sentence should be like that: I can call this method on whatever folder inside the product instance (instance of the base class ZLTMS) I want, it will always return the id of the instace of the base class (where the method is defined) and not the id of the object (Folder object or File object) I call it on. Once again: The module that holds the base class looks like this: __doc__="""Das ist ZLMTS""" __version__='0.1' from Globals import InitializeClass, Persistent from Products.PageTemplates.PageTemplateFile import PageTemplateFile from AccessControl import ClassSecurityInfo from AccessControl.Role import RoleManager from Acquisition import Implicit from OFS.SimpleItem import SimpleItem from OFS.PropertyManager import PropertyManager from OFS.ObjectManager import ObjectManager from OFS.Folder import Folder from Lasttest import Lasttest manage_addZLTMSForm=PageTemplateFile('zpt/manage_addZLTMSForm',globals()) def manage_addZLTMS(self,id,title='',REQUEST=None,submit=None): "Add a ZLMTS to a folder." id=id.replace(' ','_') #Jetzt wird das Product als Instanz erzeugt ... zltmsObj=ZLTMS(id,title) #... und persitiert id=self._setObject(id, zltmsObj) folder=getattr(self, id) #Create a container for the Loadtests folder.manage_addFolder(id='LoadTests',title='Collection') #irgned ein WODOO falls jemand das PRoduct programmatisch hinzufuegt. if REQUEST is not None: try: destURL=self.DestinationURL() except: destURL=REQUEST['URL1'] REQUEST.RESPONSE.redirect(destURL+'/manage_main') return '' class ZLTMS(Lasttest,Implicit, Persistent, PropertyManager, ObjectManager, SimpleItem): """ZLMTS object""" security = ClassSecurityInfo() meta_type = 'ZLMTS' manage_options = ObjectManager.manage_options + ( {'label' : 'View', 'action' : ''}, {'label' : 'Settings', 'action' : 'manage_editSettingsForm'}, ) + PropertyManager.manage_options + SimpleItem.manage_options _properties=({'id':'title','type':'string','mode':'w'}, {'id':'description','type':'text','mode':'w'}, ) def __init__(self, id, title='', description='' ): "initialise a new instance of ZLMTS" self.id=id self.title=title self.description=description self.location_types=['http','path'] self.manage_targets={'gr_sys' : {'name' : '', 'phy_mem' : '', 'location_sar' : '', 'grinder_home' : '', 'server_start_url' : ''}, 'sys1' : {'name' : '', 'phy_mem' : '', 'location_sar' : '', 'server_start_url' : ''}} and so on ...