diff --git a/order_point.py b/order_point.py
index 1b1dbc5276..b48eb26c95 100644
--- a/order_point.py
+++ b/order_point.py
@@ -119,6 +119,23 @@ class OrderPoint(OSV):
res.append((op.id, "%s@%s" % (op.product.name, op.location.name)))
return res
+ def name_search(self, cursor, user, name='', args=None, operator='ilike',
+ context=None, limit=None):
+ if not args:
+ args=[]
+ names = name.split('@', 1)
+ query = ['AND', ('product.template.name', operator, names[0]), args]
+ if len(names) == 1 or not names[1]:
+ ids = self.search( cursor, user, query, limit=limit, context=context)
+ else:
+ location_args = self.search_location(
+ cursor, user, 'location', [('location', operator, names[1])],
+ context=context)
+ ids = self.search(
+ cursor, user, ['AND', query, location_args], limit=limit,
+ context=context)
+ return self.name_get(cursor, user, ids, context)
+
def get_location(self, cursor, user, ids, name, args, context=None):
location_obj = self.pool.get('stock.location')
res = {}
diff --git a/purchase_request.py b/purchase_request.py
index 90ae58aaeb..fbdeaa8c16 100644
--- a/purchase_request.py
+++ b/purchase_request.py
@@ -53,6 +53,20 @@ class PurchaseRequest(OSV):
res.append((pr.id, "%s@%s" % (pr.product.name, pr.warehouse.name)))
return res
+ def name_search(self, cursor, user, name='', args=None, operator='ilike',
+ context=None, limit=None):
+ if not args:
+ args=[]
+ names = name.split('@',1)
+ query = ['AND', ('product.template.name', operator, names[0]), args]
+ if len(names) == 1 or not names[1]:
+ ids = self.search( cursor, user, query, limit=limit, context=context)
+ else:
+ warehouse_arg = [('warehouse', operator, names[1])]
+ ids = self.search(
+ cursor, user, query + warehouse_arg, limit=limit, context=context)
+ return self.name_get(cursor, user, ids, context)
+
def default_company(self, cursor, user, context=None):
company_obj = self.pool.get('company.company')
if context is None:
diff --git a/purchase_request.xml b/purchase_request.xml
index 541c6b0643..ba25930db6 100644
--- a/purchase_request.xml
+++ b/purchase_request.xml
@@ -45,7 +45,7 @@
-
+