Odoo 使用增值税号搜索合作伙伴

Odoo searching partner using vat number

大家好,我使用的是 Odoo 10,有没有办法在创建发票时使用增值税号而不是合作伙伴名称来搜索合作伙伴?

提前致谢

是的。有一种方法可以做到这一点。你可以试试我的解决方案

  1. 在要设置的 partner 字段中添加上下文,您希望通过 vat 进行搜索。这里可以使用xpath
context="{'search_by_vat': True}"
  1. 覆盖res.partner中的函数name_search:
class Partner(models.Model):
_inherit = 'res.partner'

    @api.model
    def name_search(self, name='', args=None, operator='ilike', limit=100):
        if self._context.get('search_by_vat', False):
            if name:
                args = args If i Want to search in both name and vat what should i do?if args else []
                args.append(['vat', 'ilike', name])
                name = ''
        return super(Partner, self).name_search(name=name, args=args, operator=operator, limit=limit)

If i Want to search in both name and vat what should i do?

您可以使用['name', 'ilike', name] or ['vat', 'ilike', name]

class Partner(models.Model):
_inherit = 'res.partner'

    @api.model
    def name_search(self, name='', args=None, operator='ilike', limit=100):
        if self._context.get('search_by_vat', False):
            if name:
                args = args if args else []
                args.extend(['|', ['name', 'ilike', name], ['vat', 'ilike', name]])
                name = ''
        return super(Partner, self).name_search(name=name, args=args, operator=operator, limit=limit)