我想将sale_manager组添加到action_invoice_cancel
中的customer invoice
(发票取消)按钮。我的目的是只为sale_manager中的用户看到该按钮。
我试过这样:
代码
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="orchid_invoice_cancel_request_inherit" model="ir.ui.view">
<field name="name">invoice_cancel_request</field>
<field name="model">account.invoice</field>
<field name="inherit_id" ref="account.invoice_form"/>
<field name="arch" type="xml">
<button name="action_invoice_cancel" position="after">
<button string="Cancel Request" type="object" name="cancel_request" attrs="{'invisible':[('state','not in',('open','paid'))]}"/>
</button>
<field name = "move_id" position="after">
<field name = "od_cancel_reason" />
</field>
<button name="action_invoice_cancel" position="replace">
<button name="action_invoice_cancel" type="object" states="draft,proforma2,open" string="Cancel Invoice" groups="base.group_no_one,sales_team.group_sale_manager"/>
</button>
</field>
</record>
</odoo>
但它不起作用。该怎么办 ? 提前谢谢。
答案 0 :(得分:1)
发票表单的取消发票按钮当然可以修改(通过attributes
替换或更新)。根据您的问题,您的模块似乎很可能无法加载您的视图,或者您没有重新升级模块。
至于您的方法,我将展示如何使用attributes
来更改该按钮的groups
,而无需完全替换它(如@Cherif建议的那样)。
这将更新现有元素的一个“属性”,而无需重新定义整个元素。您应该能够更改元素的任何一个(或多个)属性,但我们只想在您的情况下更改groups
。
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="orchid_invoice_cancel_request_inherit" model="ir.ui.view">
<field name="name">invoice_cancel_request</field>
<field name="model">account.invoice</field>
<field name="inherit_id" ref="account.invoice_form"/>
<field name="arch" type="xml">
<button name="action_invoice_cancel" position="attributes">
<attribute name="groups">sales_team.group_sale_manager"</attribute>
</button>
</field>
</record>
</odoo>