2

我在“account.invoice.line”中有一个“不可编辑”字段。

如果 uneditable 为真,我想禁用编辑行记录,但应该允许创建 enw 行。

我的视图代码如下

<record model="ir.ui.view" id="invoice_supplier_form_ext">
        <field name="name">account.invoice.supplier.form</field>
        <field name="model">account.invoice</field>
        <field name='inherit_id' ref='account.invoice_supplier_form'/>
        <field name="type">form</field>
        <field name="arch" type="xml">
        <data>
            <field name="product_id" position="before">
                <field name="uneditable" invisible="1"/>
            </field>

            <field name="quantity" position="attributes">
                <attribute name="attrs">{'readonly': [('uneditable','=', True)]}</attribute>
            </field>
          </data>
        </field>
    </record>

请告诉我我做错了什么。我在查看此代码时遇到错误,并且不会将该行设为只读。

4

1 回答 1

2

其实你的看法是错误的。您在 account.invoice.line 中定义了“数量”和“不可编辑”字段,然后在发票视图中添加。请检查 invoice_supplier_form 视图并在视图中正确添加字段。

<record model="ir.ui.view" id="invoice_line_form_ext">
    <field name="name">account.invoice.line.form</field>
    <field name="model">account.invoice.line</field>
    <field name='inherit_id' ref='account.view_invoice_line_form'/>
    <field name="type">form</field>
    <field name="arch" type="xml">
    <data>
        <field name="product_id" position="before">
            <field name="uneditable" invisible="1"/>
        </field>

        <field name="quantity" position="attributes">
            <attribute name="attrs">{'readonly': [('uneditable','=', True)]}</attribute>
        </field>
      </data>
    </field>
</record>
于 2013-01-04T09:03:31.127 回答