我创建了一个模块,添加了窗口动作,现在我想在另一个模块中删除该窗口动作。有什么方法可以删除/隐藏窗口动作?
可以说以下是销售基本模块中可用的操作,我想在我的自定义模块中将其删除。
<record id="action_view_sale_advance_payment_inv" model="ir.actions.act_window">
<field name="name">Invoice Order</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">sale.advance.payment.inv</field>
<field name="view_type">form</field>
<field name="view_mode">form</field>
<field name="target">new</field>
<field name="groups_id" eval="[(4,ref('sales_team.group_sale_salesman'))]"/>
</record>
<!-- TODO: check if we need this -->
<record model="ir.values" id="sale_order_line_make_invoice">
<field name="model_id" ref="sale.model_sale_order_line" />
<field name="name">Invoice Orders</field>
<field name="key2">client_action_multi</field>
<field name="value" eval="'ir.actions.act_window,' + str(ref('action_view_sale_advance_payment_inv'))" />
<field name="key">action</field>
<field name="model">sale.order</field>
</record>
我已经测试过并且可以正常工作。您只需要删除该ir.value
记录
self.env.ref('sale.sale_order_line_make_invoice').unlink()
并且下拉列表为空
要使其自动发生,您需要进行以下更改:
创建XML
<?xml version="1.0"?>
<openerp>
<data noupdate="1">
<function model="*model_name*" name="_test_function"/>
</data>
</openerp>
使用此功能创建模型
@api.model
def _test_function(self):
self.env.ref('sale.sale_order_line_make_invoice').unlink()
祝好运
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句