I want to convert the ir.attachment file in the sales module into a PDF file using python. I have a custom report which needs to be added, no matter if Save as Attachment is set or not. Can you explain this briefly?
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Accounting
- Inventory
- PoS
- Project
- MRP
This question has been flagged
Hello Nivetha,
Have you tried the old way?
import base64
pdf = self.env['report'].sudo().get_pdf([invoice.id], 'account.report_invoice')
self.env['ir.attachment'].create({
'name': 'Cats',
'type': 'binary',
'datas': base64.encodestring(pdf),
'res_model': 'account.invoice',
'res_id': invoice.id,
'mimetype': 'application/x-pdf'
})
If you need more explanation go with this tutorial
https://www.cybrosys.com/blog/creating-pdf-attachment-automatically-odoo-13
Or older one:
https://medium.com/hendrasj/how-to-create-attachment-pdf-report-automatically-on-odoo-10-odoo-11-79dd3ad19f23
You will find a way that should work for you also in Odoo 15.
I you found it helpful please vote +1 👍
If it solves completely you problem - mark as best answer 😎
Hi,
Try refer the following number.
https://www.cybrosys.com/blog/how-to-create-pdf-attachment-automatically-in-odoo-15
Regards
Api to get pdf file preview:
@http.route(['/schedule_pdf'], type='http', auth="public", website=True, sitemap=False)
def schedule_pdf(self, **kw):
if kw.get('id'):
as_model = request.env['alwathba.schedule'].sudo().browse([int(kw.get('id'))])
content = base64.b64decode(str(as_model.pdf_file.decode("utf-8")))
pdfhttpheaders = [('Content-Type', 'application/pdf'),('Content-Length', u'%s' % len(content))]
return request.make_response(content, headers=pdfhttpheaders)
to access pdf: https://yourcompany.com/schedule_pdf?id=14
Enjoying the discussion? Don't just read, join in!
Create an account today to enjoy exclusive features and engage with our awesome community!
Sign upRelated Posts | Replies | Views | Activity | |
---|---|---|---|---|
|
1
Nov 21
|
4574 | ||
|
1
Jun 23
|
4352 | ||
|
0
Nov 23
|
953 | ||
|
1
Nov 22
|
4988 | ||
|
0
Dec 21
|
3275 |