Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
2 Risposte
4675 Visualizzazioni

Hello everyone,

I am using Odoo 12 and need to run a code after printing a report.

The code I am inheriting from 'account.invoice' is:

    @api.multi
    def invoice_print(self):

         res = super(AccountInvoice, self).invoice_print()

         # First, I need to print the report... and then
         # ...run the code here (after printing the report)...

First, I need to print the report and then execute a code to change a value of a field.

Can anyone help me please?

Thank you all in advance

Regards

PM

Avatar
Abbandona
Risposta migliore

Hi Paulo,

If the order doesn't strictly matter, then the following code is the easiest approach:

@api.multi
def invoice_print(self):
    res = super(ReportController, self).invoice_print()
    self.write({'print_button_pressed': True})
    return res

The main thing to note is that you are returning the result of the super, which contains the print action. As I mentioned, the order wrong in this, but in most case it shouldn't matter. This change will technically come into effect before the invoice is printed, which will only matter if you are showing that field on the invoice and need the value from before the change.

If you do need the original value, you can use the following at the end of the invoice report:

<t t-set="dummy" t-value="o.your_function_name()"/>

Then create a function your_function_name on the invoice with the code you need.


Avatar
Abbandona
Autore

Thank you @Jake Robinson,

This is what I need: <t t-set="dummy" t-value="o.your_function_name()"/>

Best regards

PM

Risposta migliore

Report will print only if you return report action from a function which means you can not run code after print report.

You can call another function from qweb report which will get called during report print. With browse object you can call function of same class in qweb code.

Thanks

Avatar
Abbandona
Post correlati Risposte Visualizzazioni Attività
1
gen 20
4350
2
dic 19
5006
3
dic 19
7471
1
feb 19
9801
1
nov 24
1600