--- ZSQLExtend/ZSQLExtend.py 2011/02/11 19:08:49 1.137 +++ ZSQLExtend/ZSQLExtend.py 2011/02/17 18:23:58 1.140 @@ -10,6 +10,8 @@ from Products.PageTemplates.ZopePageTemp from Products.PageTemplates.PageTemplateFile import PageTemplateFile from Products.ZSQLMethods.SQL import SQLConnectionIDs +from Shared.DC.ZRDB.Results import Results + from xml.sax.saxutils import escape from types import * import Shared.DC.ZRDB.DA @@ -586,12 +588,13 @@ class ZSQLExtendFolder(Folder,Persistent return pt() - def changeZSQLExtend(self,label,description,weight=0,connection_id=None,REQUEST=None,): + def changeZSQLExtend(self,label,description,weight=0,connection_id=None,autocommit=None,REQUEST=None,): """change the Konfiguration""" self.connection_id=connection_id self.weight=weight self.label=label self.description=description + self.autocommit = (autocommit == "on") if REQUEST is not None: return self.manage_main(self, REQUEST) @@ -987,7 +990,22 @@ class ZSQLExtendFolder(Folder,Persistent except: logger("ZSQLResetConnection",logging.ERROR, '%s %s'%sys.exc_info()[:2]) + def ZSQLSimpleSearch(self,query=None,max_rows=1000000): + """new simple search""" + logging.debug("new ZSQLSimpleSearch X %s"%query) + # get Connection instance + con = self.getConnectionObj() + # call to get db object + dbc = con() + if getattr(self, 'autocommit', False): + # force transaction isolation level (for psycopg2 0=autocommit) + dbc.tilevel = 0 + res = dbc.query(query, max_rows=max_rows) + # return result set as Result object with Brains + return Results(res) + + def oldZSQLSimpleSearch(self,query=None,max_rows=1000000): """simple search""" logging.error("ZSQLSimpleSearch X %s"%query) #print query