[IMP] base_module_record: Code improvement, remove pooler

bzr revid: mra@tinyerp.com-20110908064523-uqn87u5x32c97gib
This commit is contained in:
Mustufa Rangwala (OpenERP) 2011-09-08 12:15:23 +05:30
parent b02a18be74
commit bdc8dfc4cf
2 changed files with 27 additions and 28 deletions

View File

@ -20,8 +20,8 @@
#
##############################################################################
import pooler
import time
from osv import osv, fields
import tools
from tools.translate import _
@ -30,59 +30,56 @@ class base_module_data(osv.osv_memory):
_name = 'base.module.data'
_description = "Base Module Data"
def default_get(self, cr, uid, fields, context):
pool = pooler.get_pool(cr.dbname)
mod = pool.get('ir.model')
def default_get(self, cr, uid, fields, context=None):
mod = self.pool.get('ir.model')
res = super(base_module_data, self).default_get(cr, uid, fields, context=context)
list=('ir.ui.view', 'ir.ui.menu', 'ir.model', 'ir.model.fields', 'ir.model.access',\
list = ('ir.ui.view', 'ir.ui.menu', 'ir.model', 'ir.model.fields', 'ir.model.access',\
'res.partner', 'res.partner.address', 'res.partner.category', 'workflow',\
'workflow.activity', 'workflow.transition', 'ir.actions.server', 'ir.server.object.lines')
if 'objects' in fields:
res.update({'objects': mod.search(cr, uid, [('model', 'in', list)])})
cr.execute('select max(create_date) from ir_model_data')
c=(cr.fetchone())[0].split('.')[0]
c = (cr.fetchone())[0].split('.')[0]
c = time.strptime(c, "%Y-%m-%d %H:%M:%S")
sec=c.tm_sec!=59 and c.tm_sec + 1
c=(c[0],c[1],c[2],c[3],c[4],sec,c[6],c[7],c[8])
sec = c.tm_sec!=59 and c.tm_sec + 1
c = (c[0], c[1], c[2], c[3], c[4], sec, c[6], c[7], c[8])
if 'check_date' in fields:
res.update({'check_date': time.strftime("%Y-%m-%d %H:%M:%S",c)})
return res
_columns = {
'check_date': fields.datetime('Record from Date', size=64, required=True),
'check_date': fields.datetime('Record from Date', required=True),
'objects': fields.many2many('ir.model', 'base_module_record_object_rel', 'objects', 'model_id', 'Objects'),
'filter_cond': fields.selection([('created', 'Created'), ('modified', 'Modified'), ('created_modified', 'Created & Modified')], 'Records only', required=True),
'info_yaml': fields.boolean('YAML'),
}
_defaults = {
'check_date': time.strftime('%Y-%m-%d %H:%M:%S'),
'check_date': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'),
'filter_cond': 'created',
}
def _create_xml(self, cr, uid, data, context):
pool = pooler.get_pool(cr.dbname)
mod = pool.get('ir.module.record')
def _create_xml(self, cr, uid, data, context=None):
mod = self.pool.get('ir.module.record')
res_xml = mod.generate_xml(cr, uid)
return { 'res_text': res_xml }
def _create_yaml(self, cr, uid, data, context):
pool = pooler.get_pool(cr.dbname)
mod = pool.get('ir.module.record')
return {'res_text': res_xml }
def _create_yaml(self, cr, uid, data, context=None):
mod = self.pool.get('ir.module.record')
res_xml = mod.generate_yaml(cr, uid)
return { 'res_text': res_xml }
def record_objects(self, cr, uid, ids, context):
def record_objects(self, cr, uid, ids, context=None):
data = self.read(cr, uid, ids, [], context=context)[0]
check_date=data['check_date']
filter=data['filter_cond']
pool = pooler.get_pool(cr.dbname)
user=(pool.get('res.users').browse(cr, uid, uid)).login
mod = pool.get('ir.module.record')
mod_obj = pool.get('ir.model')
check_date = data['check_date']
filter = data['filter_cond']
user = (self.pool.get('res.users').browse(cr, uid, uid)).login
mod = self.pool.get('ir.module.record')
mod_obj = self.pool.get('ir.model')
mod.recording_data = []
for id in data['objects']:
obj_name=(mod_obj.browse(cr, uid, id)).model
obj_pool=pool.get(obj_name)
obj_pool=self.pool.get(obj_name)
if filter =='created':
search_condition =[('create_date','>',check_date)]
elif filter =='modified':
@ -147,6 +144,7 @@ class base_module_data(osv.osv_memory):
'type': 'ir.actions.act_window',
'target': 'new',
}
base_module_data()
class base_module_record_data(osv.osv_memory):
@ -156,6 +154,7 @@ class base_module_record_data(osv.osv_memory):
_columns = {
'res_text': fields.text('Result'),
}
base_module_record_data()
#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -7,7 +7,7 @@
<field name="model">base.module.data</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Objects Recording">
<form string="Data Recording">
<field name="check_date"/>
<newline/>
<field name="filter_cond"/>
@ -54,13 +54,13 @@
<field name="model">base.module.record.data</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Objects Recording">
<form string="Data Recording">
<separator string="Result, paste this to your module's xml" colspan="4" />
<field name="res_text" nolabel="1" colspan="4"/>
<separator colspan="4"/>
<group colspan="4" col="2">
<label string=""/>
<button icon="gtk-ok" string="Close" special="cancel"/>
<button icon="gtk-close" string="Close" special="cancel"/>
</group>
</form>
</field>