如何删除默认过滤器并在销售订单搜索菜单中添加新过滤器(查看名称:sale.order.search.inherit.sa



版本 : odoo 10 原始文件 :(sale_views.xml(

<record id="sale_order_view_search_inherit_sale" model="ir.ui.view">
<field name="name">sale.order.search.inherit.sale</field>
<field name="model">sale.order</field>
<field name="mode">primary</field>
<field name="inherit_id" ref="sale.view_sales_order_filter"/>
<field name="arch" type="xml">
<xpath expr="//filter[@name='my_sale_orders_filter']"     position="after">
<separator/>
<filter string="Sales" name="sales" domain="[('state','in',('progress','done'))]" />
<separator/>
<filter string="To Invoice" domain="[('invoice_status','=','to invoice')]" />
<filter string="Upselling" domain="[('invoice_status','=','upselling')]" />
</xpath>
</field>
</record>

继承此视图时应执行哪些操作? 如何删除或隐藏所有默认过滤器? 替换筛选器字符串时出现问题。我试过这样:

<xpath expr="//filter[@string='Upselling']" position="replace"/>

但是得到这样的错误:

视图继承不能使用属性"字符串"作为选择器。

有解决办法吗?

提前感谢:(

尝试使用域的 xpath。引发此错误的原因是 xml 节点中定义的字符串属性容易被转换,并且您的 xpath 应该以多个语言中的相同字符串为目标,并且不支持。

这样的事情应该有效:

<xpath expr="//filter[@domain='[('invoice_status','=','upselling')]']" position="replace"/>

或更简单:

<filter domain="[('invoice_status','=','upselling')]" position="replace"/>

尝试此操作以删除继承视图中的筛选器,

<xpath expr="//filter[@name='filter_name']" position="replace"/>

最新更新