[FIX] base_module_record: avoid duplications

bzr revid: chs@taupe-20090903130649-d7f3hg9lr7shg94l
This commit is contained in:
Christophe Simonis
2009-09-03 15:06:49 +02:00
parent f7c7f0bb7f
commit fafe3c939a
2 changed files with 6 additions and 9 deletions
@@ -145,14 +145,11 @@ class base_module_record(osv.osv):
newid,update = self._get_id(cr, uid, fields[key]['relation'], valitem[1])
if not newid:
newid = self._create_id(cr, uid, fields[key]['relation'], valitem[2])
# if valitem[0]==0:
# newid = self._create_id(cr, uid, fields[key]['relation'], valitem[2])
# else:
# newid,update = self._get_id(cr, uid, fields[key]['relation'], valitem[1])
self.ids[(fields[key]['relation'], valitem[1])] = newid
childrecord, update = self._create_record(cr, uid, doc, fields[key]['relation'],valitem[2], newid)
noupdate = noupdate or update
record_list += childrecord
self.ids[(fields[key]['relation'],newid)] = newid
else:
pass
elif fields[key]['type'] in ('many2many',):
@@ -161,7 +158,7 @@ class base_module_record(osv.osv):
if valitem[0]==6:
for id2 in valitem[2]:
id,update = self._get_id(cr, uid, fields[key]['relation'], id2)
self.ids[(fields[key]['relation'],id)] = id
self.ids[(fields[key]['relation'],id2)] = id
noupdate = noupdate or update
res.append(id)
field = doc.createElement('field')
@@ -265,7 +262,7 @@ class base_module_record(osv.osv):
elif rec[4]=='create':
id = self._create_id(cr, uid, rec[3],rec[5])
record,noupdate = self._create_record(cr, uid, doc, rec[3], rec[5], id)
self.ids[(rec[3],result)] = id
self.ids[(rec[3], result)] = id
record_list += record
elif rec[4]=='copy':
@@ -276,7 +273,7 @@ class base_module_record(osv.osv):
self.recording_data=rec_data
id = self._create_id(cr, uid, rec[3],rec[6])
record,noupdate = self._create_record(cr, uid, doc, rec[3], rec[6], id)
self.ids[(rec[3],result)] = id
self.ids[(rec[3], result)] = id
record_list += record
return record_list,noupdate
@@ -89,7 +89,7 @@ def _record_objects(self, cr, uid, data, context):
search_ids=obj_pool.search(cr,uid,search_condition)
for s_id in search_ids:
args=(cr.dbname,uid,user,obj_name,'copy',s_id,{},context)
mod.recording_data.append(('query',args, {},s_id))
mod.recording_data.append(('query',args, {}, s_id))
return {}
def inter_call(self,cr,uid,data,context):