首页 > 解决方案 > Odoo 13 如何仅在客户会计模块中显示某些字段

问题描述

客户是基于 res.partner 的,而不仅仅是基于 res.partner vendor 的客户也是基于 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

解决方案


Odoo 13 使用客户排名,供应商根据客户 PO 和 SO 对该排名进行排名,因此如果客户有 1 个 PO,则供应商排名将变为 1,并且可以通过供应商排名 > 0 来识别客户

supplier_rank = fields.Integer(default=0)
customer_rank = fields.Integer(default=0)


请记住,这是一个整数字段,因此如果您想默认设置某个客户,您将设置一个整数值,该值越高,它将出现在搜索列表中越高,
所以我想这应该可以

 <field name="customer_group_id" attrs="{'invisible': [('customer_rank' ,'>', 0)]}" />

推荐阅读