Odoo Help


Modify / override button action in header of form ?

on 12/6/13, 7:26 AM 5,698 views


It's a bit confusing for me : I would like to modify / override a button displayed in the header of a form to match the action of the button to one of mine defined in Configuration -> Actions -> Actions.

An example: I've defined a new action which type is "ir.actions.report.xml" to output a special report for the sale.order form. I would like to replace the print button in the header of this form by one to launch my new action. I found the line : button name="print_quotation" string="Print" type="object" states="draft" class="oe_highlight" groups="base.group_user"

But what's next ? override with a new button ? Which is the button "type" I need to fill in my xml ?

Many thanks for your advices. Regards.


Hello Benoit,

You need to inherit the sale.order view in you custom module and then try the following code.

Following code will replace the button:

<button name="print_quotation" position="replace">
    <button name="%(your_action)d" string="Print" type="action" states="draft" class="oe_highlight"/>

After this, you need to update your module.


Serpent Consulting Services

Thank for your answer. After deep searching, that doesn't suit my needs. I will keep the button but just need to delete the default standard report defined in sale order module. I know how to add a new one but what about deleting the default report in code ???

on 12/7/13, 1:37 PM
On 12/6/13, 3:17 PM

Thank you for your answer.

After searching deep, I don't need to change the default button action. I must change the default report opened by the button.

Doing this manually is like : Configuration -> Actions -> Reports remove the 'standard' sale order for example and make my new report service name = sale.order

But the problem is that OpenERP will rollback my changes at each module update.

I can create a new module to define my report but how do I delete the entry brought by sale_order module ? : report auto="False" id="report_sale_order" model="sale.order" name="sale.order" rml="sale/report/sale_order.rml" string="Quotation / Order" usage="default"/>

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

1 follower(s)


Asked: 12/6/13, 7:26 AM
Seen: 5698 times
Last updated: 9/12/17, 12:20 AM