From 63e9d972d6a7f14c64cce2a662c79cbfb74ba7fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Tue, 23 Mar 2010 11:23:08 +0100 Subject: [PATCH] searcher on Function fields take only one domain clause as argument --- location.py | 18 ++++++------------ move.py | 9 ++------- 2 files changed, 8 insertions(+), 19 deletions(-) diff --git a/location.py b/location.py index 1c5647d4f9..fb5f752441 100644 --- a/location.py +++ b/location.py @@ -123,18 +123,12 @@ class Location(ModelSQL, ModelView): def check_xml_record(self, cursor, user, ids, values, context=None): return True - def search_rec_name(self, cursor, user, name, args, context=None): - args2 = [] - i = 0 - while i < len(args): - ids = self.search(cursor, user, [('code', '=', args[i][2])], - context=context) - if ids: - args2.append(('id', 'in', ids)) - else: - args2.append((self._rec_name, args[i][1], args[i][2])) - i += 1 - return args2 + def search_rec_name(self, cursor, user, name, clause, context=None): + ids = self.search(cursor, user, [('code', '=', clause[2])], + order=[], context=context) + if ids: + return [('id', 'in', ids)] + return [(self._rec_name,) + clause[1:]] def get_quantity(self, cursor, user, ids, name, context=None): product_obj = self.pool.get('product.product') diff --git a/move.py b/move.py index 8f314d6886..4e95d627bb 100644 --- a/move.py +++ b/move.py @@ -378,13 +378,8 @@ class Move(ModelSQL, ModelView): res[m.id] = "%s%s %s" % (m.quantity, m.uom.symbol, m.product.rec_name) return res - def search_rec_name(self, cursor, user, name, args, context=None): - args2 = [] - i = 0 - while i < len(args): - args2.append(('product', args[i][1], args[i][2])) - i += 1 - return args2 + def search_rec_name(self, cursor, user, name, clause, context=None): + return [('product',) + clause[1:]] def search(self, cursor, user, args, offset=0, limit=None, order=None, context=None, count=False, query_string=False):