0

顧客請求書に「確認」という名前のボタンを作成しました。「確認」ボタンをクリックすると、「state1」が「確認済み」になります。「state1」=「ドラフト」の場合は検証ボタンを非表示にし、「state1」=「確認済み」の場合は検証ボタンを表示します。以下のコードを試しましたが、うまくいきません。誰でも私を助けることができますか?

<!-- inherit account invoice form -->
    <record id="invoice_form_inheritai" model="ir.ui.view">
        <field name="name">account.invoice.form.inheritai</field>
        <field name="model">account.invoice</field>
        <field name="inherit_id" ref="account.invoice_form"/>
        <field name="arch" type="xml">
            <button name="invoice_print" position="after">
                <field name="state1" invisible="1"/>
                <button name="invoice_check" string="Confirm" type="object"  attrs="{'invisible': [('state1','not in', ['draft'])]}" class="oe_highlight" groups="base.group_user"/>
            </button>
            <button name="invoice_open" position="replace">
                <button name="invoice_open" state="draft" string="Validate" attrs="{'invisible': [('state1','!=', ['confirmed'])]}" groups="base.group_user"/>
            </button>
        </field>
    </record>
4

2 に答える 2

1
<button name="invoice_open" string="Validate" attrs="{'invisible': [('state1','not in', ['confirmed']),('state','not in',['draft'])]}" groups="base.group_user"/>

非表示の属性と状態の両方を使用することは避けてください。

于 2014-02-07T05:31:11.330 に答える
0

「状態」の代わりに「状態」を使用してみてください。また、attr も必要ありません。自動的に機能します。元:

<button name="invoice_open" states="confirmed" string="Validate" groups="base.group_user"/>
于 2014-02-06T10:14:57.460 に答える