[Zope3-Users] recusioin in zmi is not working
rchristie at decisiontech.com
rchristie at decisiontech.com
Fri Apr 15 11:33:48 EDT 2005
I am trying to have a script work in zmi that has recursion in it.i am posting
the simple version of the my script (i called it testscript) code here
def searchAssetType(param_object):
for object in param_object.objectValues('AssetType'):
if (object.getPartNumber()):
pn = object.getPartNumber().getPartNumber()
if (pn==partNum):
return 'found'
else:
searchAssetType(object)
return 'fail'
return searchAssetType(context)
i have a hirarchy of Objects of type AssetType. so an object of type AssetType
can contain another object of type AssetType. now the above script is written
to seearch for an object of type AssetType based on its attribute called
partNumber.
but the above script is not working for children objects..so if i search for the
AssetType on the top level it works fine but doesnt work for children AssetType
Objects.
for example follwing is the hieracy of AssetType Objects
--computer
-pc
-laptop
-tablet
it works for computer but doesnt work for its children. if i give partNumber of
computer, the script returs found but returns fail for any of other
AssetType's partNumber..
here is the stack trace..please help me.
2005-04-15T10:32:36 ERROR(200) SiteError
http://localhost:8082/dtitrackmodule/assettracking.2005-04-13.1452962360/assettypefolder.2005-04-13.1594566344/testscript
Traceback (most recent call last):
File "/home/reuben/zope/lib/python/ZPublisher/Publish.py", line 101, in
publish
request, bind=1)
File "/home/reuben/zope/lib/python/ZPublisher/mapply.py", line 88, in mapply
if debug is not None: return debug(object,args,context)
File "/home/reuben/zope/lib/python/ZPublisher/Publish.py", line 39, in
call_object
result=apply(object,args) # Type s<cr> to step into published object.
File "/home/reuben/zope/lib/python/Shared/DC/Scripts/Bindings.py", line 306,
in __call__
return self._bindAndExec(args, kw, None)
File "/home/reuben/zope/lib/python/Shared/DC/Scripts/Bindings.py", line 343,
in _bindAndExec
return self._exec(bound_data, args, kw)
File "/home/reuben/zope/lib/python/Products/PythonScripts/PythonScript.py",
line 323, in _exec
result = f(*args, **kw)
File "Script (Python)", line 11, in testscript
File "Script (Python)", line 3, in searchAssetType
More information about the Zope3-users
mailing list