Se rendre au contenu
Menu
Cette question a été signalée
1 Répondre
17248 Vues

Guys,

Suppose I have a binary filed to upload xls file.

data = fields.Binary()

My requirement is I want to get the values of xls in a python function as a Two dimensional list.

[  [row1], [row2], [row3], [row4],.... ]

Is this possible  ... ?

or another way ?

Avatar
Ignorer
Meilleure réponse

 Use xlrd to read the file as given below. I have done it in odoo9. You may try this.

from xlrd import open_workbook
import base64

def read_excel(self):
    wb = open_workbook(file_contents = base64.decodestring(obj.data))
    sheet = wb.sheets()[0]

    for s in wb.sheets():

         values = []

         for row in range(s.nrows):

             col_value = []

             for col in range(s.ncols):

                 value  = (s.cell(row,col).value)

                 try : value = str(int(value))

                 except : pass

                 col_value.append(value)

             values.append(col_value)

     print values

Avatar
Ignorer
Auteur

Excellent !!!

Thank u Sebin, This is what I expected .

You are welcome Shameem.

obj should be your object in which you are using the binary field to save the xls file

Publications associées Réponses Vues Activité
2
juil. 25
4636
2
déc. 24
7778
2
nov. 24
28549
2
mai 24
7487
3
mars 24
6919