Add script fix_invoice_attachment_filename
This commit is contained in:
@@ -121,6 +121,30 @@ class AccountInvoice(models.Model):
|
|||||||
lines.unlink()
|
lines.unlink()
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
def fix_invoice_attachment_filename(self):
|
||||||
|
# This script is designed to fix attachment of invoices
|
||||||
|
# badly generated by Odoo v8. I found this problem in Nov 2018 at
|
||||||
|
# Encres Dubuit when investigating a bug where Odoo would create a
|
||||||
|
# new attachment when printing an old invoice that already had the
|
||||||
|
# PDF of the invoice as attachment
|
||||||
|
logger.info('START fix customer invoice attachment filename')
|
||||||
|
# Run this script as admin to fix problem in all companies
|
||||||
|
self = self.sudo()
|
||||||
|
attachs = self.env['ir.attachment'].search([
|
||||||
|
('res_model', '=', 'account.invoice'),
|
||||||
|
('res_id', '!=', False),
|
||||||
|
('type', '=', 'binary'),
|
||||||
|
('name', '=like', 'INV%.pdf'),
|
||||||
|
('datas_fname', '=like', 'INV%.pdf.pdf')])
|
||||||
|
for attach in attachs:
|
||||||
|
inv = self.browse(attach.res_id)
|
||||||
|
if inv.type in ('out_invoice', 'out_refund'):
|
||||||
|
attach.datas_fname = attach.name
|
||||||
|
logger.info(
|
||||||
|
'Fixed field datas_fname of attachment ID %s name %s',
|
||||||
|
attach.id, attach.name)
|
||||||
|
logger.info('END fix customer invoice attachment filename')
|
||||||
|
|
||||||
|
|
||||||
class AccountInvoiceLine(models.Model):
|
class AccountInvoiceLine(models.Model):
|
||||||
_inherit = 'account.invoice.line'
|
_inherit = 'account.invoice.line'
|
||||||
|
|||||||
Reference in New Issue
Block a user