quarta-feira, 12 de junho de 2013

Ler arquivo csv Openerp + python

Adaptei do modulo ea_import.

    def import_to_db(self, cr, uid, ids, context={}):
        context['result_ids'] = []
        result_pool = self.pool.get('ea_import.chain.result')
        for chain in self.browse(cr, uid, ids, context=context):
            csv_reader=unicode_csv_reader(StringIO(base64.b64decode(chain.input_file)),delimiter=str(";"),quoting=(not
chain.delimiter and csv.QUOTE_NONE) or csv.QUOTE_MINIMAL,quotechar=chain.delimiter and str("'") or None, charset=chain.charset)

            if chain.header:
                csv_reader.next()
            result_ids = {}

            #return res
            csv_reader.next()
            for row in csv_reader:
                if len(row)>0:

                    print row[2], row[-2], row[-1]