I am creating an option called Master Account within the customer portion of an Odoo 8.0 setup. If selected, it will set another account as the grandparent. This is useful for companies/customers who have multiple locations, but just one billing center. I was able to apply this functionality, but now I do not want to display the option to set a master account to a company that is already set as someone's master.
I have tried the following and it does not work:
PYTHON
from openerp import models, fields, api, _
class res_partner(models.Model):
_inherit = 'res.partner'
related_partner_id = fields.Many2one('res.partner', 'Master Account')
related_partner_ids = fields.One2many('res.partner', 'Master Account')
XML
<?xml version="1.0" ?>
<openerp>
<data>
<record model="ir.ui.view" id="base_view_partner_demo_inherit">
<field name="name">res.partner.form.demo</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form" />
<field name="arch" type="xml">
<field name="website" position="after">
<field name="related_partner_id" attrs="{'invisible': [('related_partner_ids','>', '0')]}"/>
<field name="related_partner_ids" invisible="1"/>
<label string="Master Account" attrs="{'invisible': [['related_partner_id', '!=', False]]}"/>
</field>
</field>
</record>
</data>
</openerp>
Any help would be greatly appreciated. I'm brand new to Odoo.
Try following,
from openerp import models, fields, api, _
class res_partner(models.Model):
_inherit = 'res.partner'
related_partner_id = fields.Many2one('res.partner', 'Master Account')
related_partner_ids = fields.One2many('res.partner', 'related_partner_id', 'Master Account')
One2many required inverse field id as well. And set attrs like this,
<field name="related_partner_id" attrs="{'invisible': [('related_partner_ids','!=', False)]}"/>
Or You should write like this
<field name="related_partner_id" attrs="{'invisible': [('related_partner_ids','!=', [])]}"/>
For Many2many fields, attrs should be applied in following manner.
<field name="m2m_field" attrs="{'invisible': [('m2m_field','=', [(6,0,[])])]}"/>
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.