diff --git a/addons/base_import/i18n/base_import.pot b/addons/base_import/i18n/base_import.pot index 38c450f9f48..8bd249014bc 100644 --- a/addons/base_import/i18n/base_import.pot +++ b/addons/base_import/i18n/base_import.pot @@ -255,6 +255,16 @@ msgstr "" msgid "Error at row %s: \"%s\"" msgstr "" +#. module: base_import +#. odoo-python +#: code:addons/base_import/models/base_import.py:0 +#, python-format +msgid "" +"Error while importing records: all rows should be of the same size, but the " +"title row has %d entries while the first row has %d. You may need to change " +"the separator character." +msgstr "" + #. module: base_import #. odoo-javascript #: code:addons/base_import/static/src/import_data_progress/import_data_progress.xml:0 diff --git a/addons/base_import/models/base_import.py b/addons/base_import/models/base_import.py index 660b11da9a3..5f0bd1af8a1 100644 --- a/addons/base_import/models/base_import.py +++ b/addons/base_import/models/base_import.py @@ -1040,6 +1040,10 @@ class Import(models.TransientModel): import_fields = [f for f in fields if f] _file_length, rows_to_import = self._read_file(options) + if len(rows_to_import[0]) != len(fields): + raise ImportValidationError( + _("Error while importing records: all rows should be of the same size, but the title row has %d entries while the first row has %d. You may need to change the separator character.", len(fields), len(rows_to_import[0])) + ) if options.get('has_headers'): rows_to_import = rows_to_import[1:]