You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

35 lines
1.2 KiB

# Copyright 2013-2018 Therp BV <https://therp.nl>.
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
from odoo import fields, models
class ResPartnerRelationTypeSelection(models.Model):
"""Virtual relation types"""
_inherit = 'res.partner.relation.type.selection'
tab_id = fields.Many2one(
comodel_name='res.partner.tab',
string='Show relation on tab',
readonly=True,
)
def _get_additional_view_fields(self):
"""Add tab_id to fields in view."""
return ','.join([
super(ResPartnerRelationTypeSelection, self)
._get_additional_view_fields(),
"CASE"
" WHEN NOT bas.is_inverse"
" THEN lefttab.id"
" ELSE righttab.id"
" END as tab_id"])
def _get_additional_tables(self):
"""Add two links to res_partner_tab."""
return ' '.join([
super(ResPartnerRelationTypeSelection, self)
._get_additional_tables(),
"LEFT OUTER JOIN res_partner_tab lefttab"
" ON typ.tab_left_id = lefttab.id",
"LEFT OUTER JOIN res_partner_tab righttab"
" ON typ.tab_right_id = righttab.id"])