Typo in dtml-in statement...
I have a ZCatalog which contains about 850k entries. Each entry is a zclass instance which is NOT 'catalog aware' (ie. catalog_object was used to explicitly add the record to the zcatalog).
The records exist in the zcatalog and I can access a single record's data_record_id_ by:
<dtml-call "REQUEST.set('recid', '1049298593')"> <dtml-in "Catalog({'master_recid' : recid})"> <dtml-call "REQUEST.set('drid', data_record_id_)"> </dtml-in> drid= <dtml-var drid>
Incorrect (typo): <dtml-in "Catalog({'master_recid' : recid})"> Corrected: <dtml-in "Catalog({'id' : recid})">
Displays:
drid= 17223047659
All is well, so far... I now want to remove the record from the ZCatalog:
<dtml-call "Catalog.uncatalog_object(recid)">
generates the following error in my log file:
2004-07-02T11:13:07 ERROR(200) Catalog uncatalogObject unsuccessfully attempted to uncatalog an object with a uid of 1049298593.
and
<dtml-call "Catalog.uncatalog_object(drid)">
generates the following error in my log file:
2004-07-02T11:21:07 ERROR(200) Catalog uncatalogObject unsuccessfully attempted to uncatalog an object with a uid of 1722304759.
So, how do you remove a 'non-catalog aware' object from a zcatalog? (this is the first time I have used non-catalog aware instances, in previous projects I used catalog-aware objects and just deleted the object in the folder and the object was automatically removed from the zcatalog).
I don't understand why the uid of 1049298593 works in retrieving the record from the zcatalog, but not when used to delete the record from the zcatalog?! (I have looked at the code in Catalog.py and nothing in the uncatalog_object method provides any hints as to why this problem is occuring). Any ideas would be really appreciated! Thanks, Jonathan