Skip to content
Extraits de code Groupes Projets
Valider 5c918183 rédigé par Benjamin - Le Filament's avatar Benjamin - Le Filament
Parcourir les fichiers

[mig] migration v12

parent 29aef25a
Branches
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -2,15 +2,16 @@
{
'name': 'Import BPCE Bank Statement',
'category': 'Banking addons',
'version': '10.0.1.0.0',
'version': '12.0.1.0.0',
'license': 'AGPL-3',
'author': 'Odoo SA,'
'Akretion,'
'La Louve,'
'GRAP,'
'Nicolas JEUDY,'
'Aurélien DUMAINE',
'Odoo Community Association (OCA)',
'Aurélien DUMAINE,'
'Odoo Community Association (OCA),'
'Le Filament',
'website': 'https://odoo-community.org/',
'depends': [
'account_bank_statement_import',
......
# -*- coding: utf-8 -*-
import logging
import StringIO
from io import StringIO
import re
import datetime
......@@ -60,36 +60,41 @@ class AccountBankStatementImport(models.TransientModel):
try:
file_version = "version_A"
# for files generated before june 2017
test_versionA = re.compile(self.regexp_version[file_version]['line_1']).search(data_file[0])
test_versionA = re.compile(
self.regexp_version[file_version]['line_1']).search(data_file[0])
if (test_versionA == None):
# for files generated after june 2017 and before decembre 2017
file_version = "version_B"
test_versionB = re.compile(self.regexp_version[file_version]['line_1']).search(data_file[0])
test_versionB = re.compile(
self.regexp_version[file_version]['line_1']).search(data_file[0])
if (test_versionB == None):
# for files generated after december 2017
file_version = "version_C"
parse_line_1 = re.compile(self.regexp_version[file_version]['line_1']).search(data_file[0])
parse_line_1 = re.compile(
self.regexp_version[file_version]['line_1']).search(data_file[0])
bank_group_code = parse_line_1.group('bank_group_code')
openning_date = parse_line_1.group('opening_date')
closing_date = parse_line_1.group('closing_date')
parse_line_2 = re.compile(self.regexp_version[file_version]['line_2']).search(data_file[1])
parse_line_2 = re.compile(
self.regexp_version[file_version]['line_2']).search(data_file[1])
bank_account_number = parse_line_2.group('bank_account_number')
currency = parse_line_2.group('currency')
closing_balance = float(re.compile(self.regexp_version[file_version]['line_closing_balance']).search(data_file[3]).group('balance').replace(',','.'))
opening_balance = float(re.compile(self.regexp_version[file_version]['line_opening_balance']).search(data_file[len(data_file)-1]).group('balance').replace(',','.'))
except Exception as e:
_logger.debug(e)
_logger.error(e)
return False
return (file_version,bank_group_code,openning_date,closing_date,bank_account_number,opening_balance,closing_balance,currency)
return (file_version, bank_group_code, openning_date, closing_date,
bank_account_number, opening_balance, closing_balance,
currency)
@api.model
def _parse_file(self, data_file):
data_file = data_file.splitlines()
data_file = data_file.decode('iso-8859-1').splitlines()
result = self._check_file(data_file)
if not result:
return super(AccountBankStatementImport, self)._parse_file(
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter