[FIX] multi company, speed improvement
bzr revid: fp@tinyerp.com-20091222212426-z7gmxxj356hgjvvh
This commit is contained in:
parent
99fe46f0cb
commit
ac61176c3e
|
@ -509,6 +509,7 @@ class many2many(_column):
|
|||
d1, d2, tables = obj.pool.get('ir.rule').domain_get(cr, user, obj._name, context=context)
|
||||
if d1:
|
||||
d1 = ' and ' + ' and '.join(d1)
|
||||
else: d1 = ''
|
||||
|
||||
cr.execute('SELECT '+self._rel+'.'+self._id2+','+self._rel+'.'+self._id1+' \
|
||||
FROM '+self._rel+' , '+(','.join(tables))+' \
|
||||
|
@ -547,6 +548,8 @@ class many2many(_column):
|
|||
d1, d2,tables = obj.pool.get('ir.rule').domain_get(cr, user, obj._name, context=context)
|
||||
if d1:
|
||||
d1 = ' and ' + ' and '.join(d1)
|
||||
else:
|
||||
d1 = ''
|
||||
cr.execute('delete from '+self._rel+' where '+self._id1+'=%s AND '+self._id2+' IN (SELECT '+self._rel+'.'+self._id2+' FROM '+self._rel+', '+','.join(tables)+' WHERE '+self._rel+'.'+self._id1+'=%s AND '+self._rel+'.'+self._id2+' = '+obj._table+'.id '+ d1 +')', [id, id]+d2)
|
||||
|
||||
for act_nbr in act[2]:
|
||||
|
|
|
@ -3157,7 +3157,6 @@ class orm(orm_template):
|
|||
# compute the where, order by, limit and offset clauses
|
||||
(qu1, qu2, tables) = self._where_calc(cr, user, args, context=context)
|
||||
dom = self.pool.get('ir.rule').domain_get(cr, user, self._name, context=context)
|
||||
print '***', dom, qu1,qu2,tables
|
||||
qu1 = qu1 + dom[0]
|
||||
qu2 = qu2 + dom[1]
|
||||
for t in dom[2]:
|
||||
|
|
Loading…
Reference in New Issue