This question has been flagged
1 Reply
5420 Views

I have created a button named 'Confirm' in customer invoice. When i click 'Confirm' button 'state1' will be 'confirmed'. I want to hide Validate button when 'state1'='draft' and show the Validate button when 'state1'='confirmed'. I tried below code but it is not working. Can anyone help me?

<!-- 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>
Avatar
Discard
Best Answer

Use this --> attrs="{'invisible': [('state1','!=', 'confirmed')]}"

Avatar
Discard
Author

Thanks...i solved it by changing the account invoice workflow