Skip to content
Snippets Groups Projects
Commit ac3cd7be authored by Daniil Digtyar Vasilieva's avatar Daniil Digtyar Vasilieva :call_me: Committed by Enrico Stano
Browse files

[IMP] energy_selfconsumption: wizard able to config csv parsing options

parent 283b8408
No related branches found
No related tags found
2 merge requests!187Release 14.0.1.1.13,!155[IMP] energy_selfconsumption: importation of selfconsumption inscriptions, supply points and distribution tables by CSV
......@@ -16,6 +16,10 @@ class DistributionTableImportWizard(models.TransientModel):
import_file = fields.Binary(string="Import File (*.csv)")
fname = fields.Char(string="File Name")
delimiter = fields.Char(default=',', required=True, string='File Delimiter', help='Delimiter in import CSV file.')
quotechar = fields.Char(default='"', required=True, string='File Quotechar', help='Quotechar in import CSV file.')
encoding = fields.Char(default='utf-8', required=True, string='File Encoding', help='Enconding format in import CSV file.')
@api.constrains('import_file')
def _constrains_import_file(self):
......@@ -47,10 +51,10 @@ class DistributionTableImportWizard(models.TransientModel):
try:
csv_options = {}
csv_options["delimiter"] = ','
csv_options["quotechar"] = '"'
csv_options["delimiter"] = self.delimiter
csv_options["quotechar"] = self.quotechar
try:
decoded_file = data_file.decode("utf-8")
decoded_file = data_file.decode(self.encoding)
except UnicodeDecodeError:
detected_encoding = chardet.detect(data_file).get("encoding", False)
if not detected_encoding:
......
......@@ -16,6 +16,11 @@
<field name="import_file" filename="fname" widget="binary"></field>
<field name="fname" invisible="1"></field>
</group>
<group>
<field name="delimiter"></field>
<field name="quotechar"></field>
<field name="encoding"></field>
</group>
</sheet>
<footer>
<button type="object" name="import_file_button">Import</button>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment