I want to user upload excel file by "fields.Binary()";
when the user click a certain button, this excel file will be downloaded on server; and then use "xlrd.open_workbook(filename)" to get the excel data and do the next doings;
Odoo already have method for download file from binary data.
@http.route('/web/binary/saveas', type='http', auth="public")
def saveas(self, model, field, id=None, filename_field=None, **kw):
This method available on '/web/controllers/main.py'
You can use this method by pass parameter in url.
URL : localhost:8069/web/binary/saveas?model=ir.attachment&field=datas&filename_field=datas_fname&id=103
Using this url odoo will give you data of field datas from ir.attachment model of record id is 103.
------------------------- Code is For reading Excel file that store in Binary format--------------------------
from openerp import api, fields, models, _
from openpyxl import load_workbook
_name = "excel.read"
data_file_p = open('/tmp/test.xlsx','w')
wb = load_workbook('test.xlsx')
ws = wb['big_data']
for row in ws.rows:
for cell in row:
Hope this helps.
Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!
About This Community
|Asked: 7/17/16, 10:21 AM|
|Seen: 383 times|
|Last updated: 7/20/16, 10:10 PM|