Files
odoo-usability/base_usability/views/res_partner.xml
Alexis de Lattre ce3f10b8ca [IMP] base_usability: add industry_id in partner tree view
Show industry_id on form view of partner even when is_company=False ; hide for contacts
2025-11-03 12:14:16 +01:00

89 lines
3.9 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright 2014-2022 Akretion (http://www.akretion.com/)
@author: Alexis de Lattre <alexis.delattre@akretion.com>
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
-->
<odoo>
<record id="view_partner_form" model="ir.ui.view">
<field name="name">base_usability.title.on.partner.form</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">
<!-- Show title not only on Contacts -->
<xpath expr="//field[@name='child_ids']/form//field[@name='title']" position="attributes">
<attribute name="attrs"></attribute>
</xpath>
<!-- Show double VAT partner even when not in editable mode -->
<div attrs="{'invisible': [('same_vat_partner_id', '=', False)]}" position="attributes">
<attribute name="class">alert alert-warning</attribute>
</div>
<field name="industry_id" position="attributes">
<attribute name="attrs">{'invisible': [('parent_id', '!=', False)]}</attribute>
</field>
</field>
</record>
<record id="view_partner_simple_form" model="ir.ui.view">
<field name="name">base_usability.title.on.partner.simplified.form</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_simple_form"/>
<field name="arch" type="xml">
<field name="function" position="before">
<field name="title"/>
</field>
</field>
</record>
<record id="view_partner_tree" model="ir.ui.view">
<field name="name">base_usability.res.partner.tree</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_tree"/>
<field name="arch" type="xml">
<!-- By default, the tree view shows the field translated_display_name which is NOT stored
so the user cannot order by this column. I prefer to show display_name which is
a stored field. If the experience shows that some people prefer the native behavior
we'll go back to display translated_display_name -->
<field name="translated_display_name" position="attributes">
<attribute name="invisible">1</attribute>
</field>
<field name="display_name" position="attributes">
<attribute name="invisible">0</attribute>
</field>
<field name="display_name" position="after">
<field name="ref" optional="hide"/>
</field>
<field name="phone" position="after">
<field name="mobile" optional="show" widget="phone" class="o_force_ltr"/>
</field>
<field name="city" position="before">
<field name="street" optional="hide"/>
<field name="street2" optional="hide"/>
<field name="zip" optional="hide"/>
</field>
<field name="category_id" position="after">
<field name="industry_id" optional="hide"/>
</field>
</field>
</record>
<record id="view_res_partner_filter" model="ir.ui.view">
<field name="name">base_usability.partner.search.form</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_res_partner_filter"/>
<field name="arch" type="xml">
<field name="name" position="attributes">
<attribute name="string">Name or Email or VAT or Reference</attribute>
<!-- for 'ref', change '=' to 'start with' -->
<attribute name="filter_domain">['|', '|', '|', '|', ('display_name', 'ilike', self), ('ref', '=ilike', self + '%'), ('email', 'ilike', self), ('vat', 'ilike', self), ('company_registry', 'ilike', self)]</attribute>
</field>
<group name="group_by" position="inside">
<filter name="group_industry" string="Industry" context="{'group_by': 'industry_id'}"/>
</group>
</field>
</record>
</odoo>