summaryrefslogtreecommitdiff
path: root/addons/base_import/static/src/xml/import.xml
diff options
context:
space:
mode:
authorXavier Morel <xmo@odoo.com>2015-08-26 16:04:14 +0200
committerXavier Morel <xmo@odoo.com>2015-08-26 16:50:09 +0200
commitf5a1693f064c4a85b7cbc71dc27d72bfcb5e66bf (patch)
tree631cb18936b1ca1c0d425fdf5ad4a43f49ac39af /addons/base_import/static/src/xml/import.xml
parentaa6ee3fddfbac63969d216ac2290766a63364006 (diff)
[ADD] base_import: support for XLS and ODS files
* added intermediate ``_read_file`` step dispatching between CSV, ODS and XLS(X) parsing - primary dispatch on mime type, secondary on file extension: + OS may not provide a relevant mime type if no software locally installed for the filetype (e.g. Windows sends excel files as application/octet-stream if excel is not installed, and ODS files as zip if OpenOffice/LibreOffice isn't installed) + applications may re-register extensions to non-standard mimetypes breaking the dispatcher So if the mimetype is found trust it, otherwise try with the filename's extension (if any) - all readers skip lines with only empty cells in their output - ODS and XLS content are "CSVified", rows are converted to arrays of unicode strings * UI altered to not assume CSV files everywhere, and avoid returning garbage preview data for non-CSV imports Various: * added a ``can_import`` utility function to tests.common, can be used to skip tests if an optional Python dependency is not installed (but one would like tests to run if the dependency is available) * fixed datetime issue in ir_fields * added converter for monetary fields (iso float) * spreadsheet don't have integers, twiddling required to ensure integral values won't be serialized as floats (breaking conversion back to Python) * improved some tests by asserting no error is generated (bonus: logs the error message if there is one, rather than just saying the result is blown) * because some systems only provide elderly versions of XLRD (e.g. current debian stable provides 0.9.2 from April 2013) - keep using xldate_as_tuple instead of 0.9.3's xldate_as_datetime, workaround is simple - check for xlrd.xlsx in case of pre-0.8 XLRD Authorship: Ronak Baxi <rba@odoo.com> Mohammed Shekha <msh@openerp.com> Task 10792 Closes #7285
Diffstat (limited to 'addons/base_import/static/src/xml/import.xml')
-rw-r--r--addons/base_import/static/src/xml/import.xml19
1 files changed, 8 insertions, 11 deletions
diff --git a/addons/base_import/static/src/xml/import.xml b/addons/base_import/static/src/xml/import.xml
index c3eb2dc2b0d..ae5c78c497d 100644
--- a/addons/base_import/static/src/xml/import.xml
+++ b/addons/base_import/static/src/xml/import.xml
@@ -5,15 +5,12 @@
<input type="hidden" name="session_id"
t-att-value="widget.session.session_id"/>
<input type="hidden" name="import_id"/>
- <p>Select the <a
- href="http://en.wikipedia.org/wiki/Comma-separated_values"
- target="_blank">.CSV</a>
- file to import. If you need a sample importable file, you
+ <p>Select the file to import. If you need a sample importable file, you
can use the export tool to generate one.</p>
<div class="oe_import_box">
- <label t-attf-for="file_#{_id}" autofocus="autofocus">CSV File:</label>
+ <label t-attf-for="file_#{_id}" autofocus="autofocus">File:</label>
<input type="file" id-attf-id="file_#{_id}"
- name="file" class="oe_import_file" accept=".csv"/>
+ name="file" class="oe_import_file" accept=".csv, .xls, .xlsx, .ods"/>
<button type="button" class="oe_import_file_reload"
disabled="disabled"
title="Reload data to check changes.">
@@ -21,7 +18,7 @@
</button>
<div class="oe_import_with_file">
<a href="#" class="oe_import_toggle">
- File Format Options…</a>
+ CSV Format Options…</a>
<div class="oe_import_toggled oe_import_options">
<p t-foreach="widget.opts" t-as="option">
<!-- no @name, avoid submission when file_update called -->
@@ -363,11 +360,11 @@
</t>
<t t-name="ImportView.preview.error">
<div class="oe_import_report oe_import_report_error">
- <p>Import preview failed due to: <t t-esc="error"/>. The issue is
- usually an incorrect file encoding.</p>
- <p>Here is the start of the file we could not import:</p>
+ <p>Import preview failed due to: <t t-esc="error"/>.</p>
+ <p>For CSV files, the issue could be an incorrect encoding.</p>
+ <p t-if="preview">Here is the start of the file we could not import:</p>
</div>
- <pre><t t-esc="preview"/></pre>
+ <pre t-if="preview"><t t-esc="preview"/></pre>
</t>
<ul t-name="ImportView.error">
<li t-foreach="errors" t-as="error"