客户基于res.partner,而不仅仅是基于res.partner的供应商的客户也基于res.partner。通常,当我添加res.partner时,我将添加一个类似于IsMember的布尔字段以标识记录是成员,但是我看不到任何字段来区分客户和供应商之间的区别。因为我只想在“客户”表单中显示某些字段。
<?xml version='1.0' encoding='utf-8'?>
<odoo>
<record model="ir.ui.view" id="partner_customer_form_view">
<field name="name">partner.customer</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='phone']/.." position="after">
<field name="customer_group_id" />
</xpath>
<xpath expr="//field[@name='mobile']/.." position="before">
<field name="groupid"/>
<field name="member_id"/>
</xpath>
</field>
</record>
</odoo>
Odoo 13使用客户排名和供应商排名基于客户PO和SO的此排名,因此,如果客户具有1个PO,则卖方排名将变为1,并且可以通过vendor_rank> 0来识别客户
supplier_rank = fields.Integer(default=0)
customer_rank = fields.Integer(default=0)
请记住,这是一个整数字段,因此,如果您要默认设置某位客户,则将设置一个整数值,该值越高,它将出现在搜索列表中所以我想这应该工作
<field name="customer_group_id" attrs="{'invisible': [('supplier_rank' ,'>', 0)]}" />