Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
3 Odpovědi
11656 Zobrazení

I want to create a custom page to let user send the file to server.

After receiving the file, openerp will create records into the database base on the value in the file

what should I do?

Avatar
Zrušit

Hi, I can help you with that. I have created custom import module for bank statement import, bom import etc. The csv import is already there, but to import, for example, the product should already available in DB and no option to create products on the fly if not existing, while doing the import. So custom import functions are useful. In front end, the user just need to upload a file, rest of the import can be done according to our needs, by reading data from it. Also different file formats like csv, xls, qif etc can be done. Contact me: akhilpsivan@outlook.com. Because its difficult to paste few codes and make you understand the things.

Nejlepší odpověď

If you want to import function, first clear which file extension are use for data like .CSV or .XLS.

anyways, you have to create a function and read the data from .CSV or .XLS file.



import tempfile

import xlrd

from xlrd import open_workbook

def import_data(self, cr, uid, ids, context=None):

          temp_path = tempfile.gettempdir()

          test_obj = self.pool.get('test.test')

          xls_data = base64.decodestring(xls_file)

          fp=open(temp_path+'/xsl_file.xls', 'wb+')

          fp.write(xls_data)

          fp.close()

          wb = open_workbook(temp_path+'/xsl_file.xls')

          for sheet in wb.sheets():

               for rownum in range(sheet.nrows):

                   if rownum == 0:

                       header_list = sheet.row_values(rownum)

                       .....................

                       .....................

Hope this will help you alot


Avatar
Zrušit

Can You Complete this Code...

Nejlepší odpověď

The Import function already lets us upload a csv file to the server, and then creates records based on the value in the file.

If you want to customize this module, you will want to look in addons\base_import for the models and views to import. 

Avatar
Zrušit
Nejlepší odpověď

If out of the box import function is not good enough for you, you could try with this module: https://www.youtube.com/channel/UCVH4PLttdt09h1Di4yA2aUA

Avatar
Zrušit