Project numbers
bzr revid: pinky-6f68e63616750764c4fbc2d2801812d1e1497e3b
This commit is contained in:
parent
ef2f1349b4
commit
654507e5bc
|
@ -148,18 +148,14 @@ class account_analytic_account(osv.osv):
|
||||||
return res
|
return res
|
||||||
|
|
||||||
def name_search(self, cr, uid, name, args=[], operator='ilike', context={}):
|
def name_search(self, cr, uid, name, args=[], operator='ilike', context={}):
|
||||||
codes = name.split('.')
|
account = self.search(cr, uid, [('code', '=', name)]+args)
|
||||||
codes.reverse()
|
if not account:
|
||||||
parent_code = False
|
account = self.search(cr, uid, [('name', 'ilike', '%%%s%%' % name)]+args)
|
||||||
while codes:
|
newacc = account
|
||||||
current_code = codes.pop()
|
while newacc:
|
||||||
account = self.search(cr, uid, [('parent_id', '=', parent_code), ('code', '=', current_code)]+args)
|
newacc = self.search(cr, uid, [('parent_id', 'in', newacc)]+args)
|
||||||
if account:
|
account+=newacc
|
||||||
parent_code = account[0]
|
return self.name_get(cr, uid, account, context=context)
|
||||||
else:
|
|
||||||
account = self.search(cr, uid, [('name', 'ilike', '%%%s%%' % name)]+args)
|
|
||||||
break
|
|
||||||
return self.name_get(cr, uid, account)
|
|
||||||
|
|
||||||
account_analytic_account()
|
account_analytic_account()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue