如何在Odoo中删除窗口动作?

Emipro Technologies Pvt。有限公司

我创建了一个模块,添加了窗口动作,现在我想在另一个模块中删除该窗口动作。有什么方法可以删除/隐藏窗口动作?

可以说以下是销售基本模块中可用的操作,我想在我的自定义模块中将其删除。

    <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>

在此处输入图片说明

达奇·达奇亚什维利(Dachi Darchiashvili)

我已经测试过并且可以正常工作。您只需要删除该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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章