【问题标题】:How to add a button on a tree inside a form in Odoo 10?如何在 Odoo 10 中的表单内的树上添加按钮?
【发布时间】:2023-03-05 15:12:02
【问题描述】:

我想在销售表单的 order_line 树中添加一个按钮,我是这样添加的:

<xpath expr="/form/sheet/notebook/page[1]/field[@name='order_line']/tree/field[@name='price_subtotal']" position="after">
    <button name="%{action_view_wizard}d" string="" type="action" icon="fa-archive" attrs="{'invisible':[('product_id','=', False)]}"/>
</xpath>

向导已定义

<record id="check_stock" model="ir.ui.view">
    <field name="name">sale_warehouse.check_stock_wizard</field>
    <field name="model">sale_warehouse.check_stock_wizard</field>
    <field name="arch" type="xml">
        <form string="Stock by warehouse">
            <group col="1">
                <field name="stock" nolabel="1"/>
            </group>
            <footer>
                <button string="Close" class="btn-default" special="cancel" />
            </footer>
        </form>
    </field>
</record>

<record id="action_view_wizard" model="ir.actions.act_window">
    <field name="name">Stock by warehouse</field>
    <field name="type">ir.actions.act_window</field>
    <field name="res_model">sale_warehouse.check_stock_wizard</field>
    <field name="view_type">form</field>
    <field name="view_mode">form</field>
    <field name="view_id" ref="check_stock"/>
    <field name="target">new</field>
</record>

按钮添加正常,但加载为禁用,因此单击向导时没有调用,如果我将按钮从树中取出,则调用向导正常,但我需要从 order_line 调用,因为我需要传递该行的 product_id 的上下文以获取每个仓库中的库存。

我正在使用 odoo10。 我做错了什么?

【问题讨论】:

    标签: openerp odoo-8 odoo-9 odoo-10


    【解决方案1】:

    试试这个:

    <xpath expr="/form/sheet/notebook/page[1]/field[@name='order_line']/tree position="inside">
        <button name="open_view_wizard" string="" type="object" icon="fa-archive" attrs="{'invisible':[('product_id','=', False)]}"/>
    </xpath>
    

    然后将函数 open_view_wizard 添加到您的 sale 模型中,并在该函数中打开向导:例如(您可能需要稍微更改此代码) .

    def open_view_wizard(self, cr, uid, ids, context=None):
    
                return {
                    'view_type': 'form',
                    'view_mode': 'form',
                    'res_model': 'sale_warehouse.check_stock_wizard',
                    'type': 'ir.actions.act_window',
                    'context': context
                }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多