Se rendre au contenu
Menu
Cette question a été signalée
2 Réponses
15087 Vues

I want to print a text file (.txt) just like how to print a pdf file in odoo. Is it there a way on how to do this feat? I've been searching in other forums with this same question but can't find a sufficient answer.

Avatar
Ignorer

Hi,

Check this link, in this you can see how to create a .txt file and how to do operations in it.

You can give this python code in some button action so that the ..txt file we get created on clicking on it.

http://www.pythonforbeginners.com/files/reading-and-writing-files-in-python

Meilleure réponse

Hello jmevic amortizado,

You can use below python code in some button action so you can download your text file as odoo reports

Following python code:

f_read = Your test file file_data = f_read.read()#Pass your text file data using encoding.


values = {
 'name': "Name of text file.txt",
 'datas_fname': 'print_file_name.txt',
 'res_model': 'ir.ui.view',
 'res_id': False,
 'type': 'binary',
 'public': True,
 'datas': file_data.encode('utf8').encode('base64'),
  }

#Using your data create as attachment.
attachment_id = self.env['ir.attachment'].sudo().create(values)

#Prepare your download URL download_url = '/web/content/' + str(attachment_id.id) + '?download=True'

base_url = self.env['ir.config_parameter'].get_param('web.base.url')

# Return so it will download in your system return {
 "type": "ir.actions.act_url",
 "url": str(base_url) + str(download_url),
 "target": "new",
 }

Hope this helps you!

Thanks.

Avatar
Ignorer
Publications associées Réponses Vues Activité
1
nov. 22
6430
4
sept. 24
2208
2
sept. 24
1353
0
mars 15
3977
9
nov. 19
11554