From 5dec9f253e33541f2414b4b33a53e84b12fc4150 Mon Sep 17 00:00:00 2001 From: Kitti U Date: Wed, 19 Jun 2019 17:34:36 +0700 Subject: [PATCH 1/3] [12.0][FIX] excel_import_export Fix Import Excel wizard, cannot download template as in v12 core Odoo prevent download default binary. --- excel_import_export/__manifest__.py | 2 +- excel_import_export/readme/HISTORY.rst | 5 +++++ excel_import_export/readme/INSTALL.rst | 2 +- excel_import_export/readme/USAGE.rst | 8 ++++---- excel_import_export/wizard/import_xlsx_wizard.py | 15 +++++++++++++++ excel_import_export/wizard/import_xlsx_wizard.xml | 13 +++++++++---- .../tests/test_xlsx_import_export.py | 3 +++ 7 files changed, 38 insertions(+), 10 deletions(-) diff --git a/excel_import_export/__manifest__.py b/excel_import_export/__manifest__.py index fee958bc5..e82589091 100644 --- a/excel_import_export/__manifest__.py +++ b/excel_import_export/__manifest__.py @@ -4,7 +4,7 @@ { 'name': 'Excel Import/Export', 'summary': 'Base module for easy way to develop Excel import/export', - 'version': '12.0.1.0.0', + 'version': '12.0.1.0.1', 'author': 'Ecosoft,Odoo Community Association (OCA)', 'license': 'AGPL-3', 'website': 'https://github.com/OCA/server-tools/', diff --git a/excel_import_export/readme/HISTORY.rst b/excel_import_export/readme/HISTORY.rst index b8d1b41b6..bdec0bb7d 100644 --- a/excel_import_export/readme/HISTORY.rst +++ b/excel_import_export/readme/HISTORY.rst @@ -2,3 +2,8 @@ ~~~~~~~~~~~~~~~~~~~~~~~ * Start of the history + +12.0.1.0.2 (2019-06-24) +~~~~~~~~~~~~~~~~~~~~~~~ + +* Fix wizard on v12 can't download sample template file - https://github.com/OCA/server-tools/issues/1574 diff --git a/excel_import_export/readme/INSTALL.rst b/excel_import_export/readme/INSTALL.rst index f35fa5a09..f64a90e5b 100644 --- a/excel_import_export/readme/INSTALL.rst +++ b/excel_import_export/readme/INSTALL.rst @@ -2,4 +2,4 @@ To install this module, you need to install following python library, **xlrd, xl Then, simply install **excel_import_export**. -For samples, install **excel_import_export_sample**. +For demo, install **excel_import_export_demo**. diff --git a/excel_import_export/readme/USAGE.rst b/excel_import_export/readme/USAGE.rst index 372fda63b..297f93e3c 100644 --- a/excel_import_export/readme/USAGE.rst +++ b/excel_import_export/readme/USAGE.rst @@ -11,11 +11,11 @@ For reporting, also call `export_xlsx(...)` but through following method After install this module, go to Settings > Excel Import/Export > XLSX Templates, this is where the key component located. -As this module provide tools, it is best to explain as use cases. For example use cases, please install **excel_import_export_sample** +As this module provide tools, it is best to explain as use cases. For example use cases, please install **excel_import_export_demo** **Use Case 1:** Export/Import Excel on existing document -This add export/import action menus in existing document (example - excel_import_export_sample/import_export_sale_order) +This add export/import action menus in existing document (example - excel_import_export_demo/import_export_sale_order) 1. Create export action menu on document, with res_model="export.xlsx.wizard" and src_model="", and context['template_domain'] to locate the right template -- actions.xml 2. Create import action menu on document, with res_model="import.xlsx.wizard" and src_model="", and context['template_domain'] to locate the right template -- action.xml @@ -24,7 +24,7 @@ This add export/import action menus in existing document (example - excel_import **Use Case 2:** Import Excel Files -With menu wizard to create new documents (example - excel_import_export_sample/import_sale_orders) +With menu wizard to create new documents (example - excel_import_export_demo/import_sale_orders) 1. Create report menu with search wizard, res_model="import.xlsx.wizard" and context['template_domain'] to locate the right template -- menu_action.xml 2. Create Excel Template File (.xlsx), in the template, name the underlining tab used for import -- .xlsx @@ -32,7 +32,7 @@ With menu wizard to create new documents (example - excel_import_export_sample/i **Use Case 3:** Create Excel Report -This create report menu with criteria wizard. (example - excel_import_export_sample/report_sale_order) +This create report menu with criteria wizard. (example - excel_import_export_demo/report_sale_order) 1. Create report's menu, action, and add context['template_domain'] to locate the right template for this report -- .xml 2. Create report's wizard for search criteria. The view inherits ``excel_import_export.xlsx_report_view`` and mode="primary". In this view, you only need to add criteria fields, the rest will reuse from interited view -- diff --git a/excel_import_export/wizard/import_xlsx_wizard.py b/excel_import_export/wizard/import_xlsx_wizard.py index 49be5c07a..d3835551e 100644 --- a/excel_import_export/wizard/import_xlsx_wizard.py +++ b/excel_import_export/wizard/import_xlsx_wizard.py @@ -114,6 +114,21 @@ class ImportXLSXWizard(models.TransientModel): defaults['res_model'] = res_model return defaults + @api.multi + def get_import_sample(self): + self.ensure_one() + return { + 'name': _('Import Excel'), + 'type': 'ir.actions.act_window', + 'res_model': 'import.xlsx.wizard', + 'view_mode': 'form', + 'view_type': 'form', + 'res_id': self.id, + 'views': [(False, 'form')], + 'target': 'new', + 'context': self._context.copy() + } + @api.multi def action_import(self): self.ensure_one() diff --git a/excel_import_export/wizard/import_xlsx_wizard.xml b/excel_import_export/wizard/import_xlsx_wizard.xml index b1abc2144..0e91e789d 100644 --- a/excel_import_export/wizard/import_xlsx_wizard.xml +++ b/excel_import_export/wizard/import_xlsx_wizard.xml @@ -9,7 +9,11 @@ import.xlsx.wizard
+ + + + @@ -18,10 +22,11 @@ - - - - +
+
+
diff --git a/excel_import_export_demo/tests/test_xlsx_import_export.py b/excel_import_export_demo/tests/test_xlsx_import_export.py index d121c5799..8a6aa158a 100644 --- a/excel_import_export_demo/tests/test_xlsx_import_export.py +++ b/excel_import_export_demo/tests/test_xlsx_import_export.py @@ -41,6 +41,9 @@ class TestXLSXImportExport(TestExcelImportExport): with Form(self.env['import.xlsx.wizard'].with_context(ctx)) as f: f.import_file = self.export_file import_wizard = f.save() + # Test sample template + import_wizard.get_import_sample() + self.assertTrue(import_wizard.datas) # Test whether it loads correct template self.assertEqual(import_wizard.template_id, self.env.ref('excel_import_export_demo.' From dd89e1a51d8f8699bcb05ec0167a6654c2ba52ab Mon Sep 17 00:00:00 2001 From: oca-travis Date: Mon, 5 Aug 2019 12:58:51 +0000 Subject: [PATCH 2/3] [UPD] Update excel_import_export.pot --- excel_import_export/i18n/excel_import_export.pot | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/excel_import_export/i18n/excel_import_export.pot b/excel_import_export/i18n/excel_import_export.pot index 2623c200e..666256461 100644 --- a/excel_import_export/i18n/excel_import_export.pot +++ b/excel_import_export/i18n/excel_import_export.pot @@ -554,6 +554,12 @@ msgstr "" msgid "Import" msgstr "" +#. module: excel_import_export +#: code:addons/excel_import_export/wizard/import_xlsx_wizard.py:121 +#, python-format +msgid "Import Excel" +msgstr "" + #. module: excel_import_export #: model:ir.model.fields,field_description:excel_import_export.field_import_xlsx_wizard__import_file msgid "Import File (*.xlsx)" @@ -743,7 +749,7 @@ msgid "Optional for CSV, default is full quoting." msgstr "" #. module: excel_import_export -#: code:addons/excel_import_export/wizard/import_xlsx_wizard.py:131 +#: code:addons/excel_import_export/wizard/import_xlsx_wizard.py:146 #, python-format msgid "Please select Excel file to import" msgstr "" @@ -963,3 +969,8 @@ msgstr "" msgid "or" msgstr "" +#. module: excel_import_export +#: model_terms:ir.ui.view,arch_db:excel_import_export.import_xlsx_wizard +msgid "⇒ Get Sample Import Template" +msgstr "" + From 6a6146f541323be0851c44a381ee23c3634e899a Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 5 Aug 2019 13:09:56 +0000 Subject: [PATCH 3/3] [UPD] README.rst --- excel_import_export/README.rst | 15 +++-- .../static/description/index.html | 57 +++++++++++-------- 2 files changed, 42 insertions(+), 30 deletions(-) diff --git a/excel_import_export/README.rst b/excel_import_export/README.rst index ae02e1653..03a4a5423 100644 --- a/excel_import_export/README.rst +++ b/excel_import_export/README.rst @@ -43,7 +43,7 @@ To install this module, you need to install following python library, **xlrd, xl Then, simply install **excel_import_export**. -For samples, install **excel_import_export_sample**. +For demo, install **excel_import_export_demo**. Usage ===== @@ -61,11 +61,11 @@ For reporting, also call `export_xlsx(...)` but through following method After install this module, go to Settings > Excel Import/Export > XLSX Templates, this is where the key component located. -As this module provide tools, it is best to explain as use cases. For example use cases, please install **excel_import_export_sample** +As this module provide tools, it is best to explain as use cases. For example use cases, please install **excel_import_export_demo** **Use Case 1:** Export/Import Excel on existing document -This add export/import action menus in existing document (example - excel_import_export_sample/import_export_sale_order) +This add export/import action menus in existing document (example - excel_import_export_demo/import_export_sale_order) 1. Create export action menu on document, with res_model="export.xlsx.wizard" and src_model="", and context['template_domain'] to locate the right template -- actions.xml 2. Create import action menu on document, with res_model="import.xlsx.wizard" and src_model="", and context['template_domain'] to locate the right template -- action.xml @@ -74,7 +74,7 @@ This add export/import action menus in existing document (example - excel_import **Use Case 2:** Import Excel Files -With menu wizard to create new documents (example - excel_import_export_sample/import_sale_orders) +With menu wizard to create new documents (example - excel_import_export_demo/import_sale_orders) 1. Create report menu with search wizard, res_model="import.xlsx.wizard" and context['template_domain'] to locate the right template -- menu_action.xml 2. Create Excel Template File (.xlsx), in the template, name the underlining tab used for import -- .xlsx @@ -82,7 +82,7 @@ With menu wizard to create new documents (example - excel_import_export_sample/i **Use Case 3:** Create Excel Report -This create report menu with criteria wizard. (example - excel_import_export_sample/report_sale_order) +This create report menu with criteria wizard. (example - excel_import_export_demo/report_sale_order) 1. Create report's menu, action, and add context['template_domain'] to locate the right template for this report -- .xml 2. Create report's wizard for search criteria. The view inherits ``excel_import_export.xlsx_report_view`` and mode="primary". In this view, you only need to add criteria fields, the rest will reuse from interited view -- @@ -104,6 +104,11 @@ Changelog * Start of the history +12.0.1.0.2 (2019-06-24) +~~~~~~~~~~~~~~~~~~~~~~~ + +* Fix wizard on v12 can't download sample template file - https://github.com/OCA/server-tools/issues/1574 + Bug Tracker =========== diff --git a/excel_import_export/static/description/index.html b/excel_import_export/static/description/index.html index 56f33669e..8b247d6a7 100644 --- a/excel_import_export/static/description/index.html +++ b/excel_import_export/static/description/index.html @@ -379,30 +379,31 @@ ul.auto-toc {

Table of contents

-

Installation

+

Installation

To install this module, you need to install following python library, xlrd, xlwt, openpyxl.

Then, simply install excel_import_export.

-

For samples, install excel_import_export_sample.

+

For demo, install excel_import_export_demo.

-

Usage

+

Usage

This module contain pre-defined function and wizards to make exporting, importing and reporting easy.

At the heart of this module, there are 2 main methods

    @@ -414,9 +415,9 @@ ul.auto-toc {
  • self.env['xslx.report'].report_xlsx(...)

After install this module, go to Settings > Excel Import/Export > XLSX Templates, this is where the key component located.

-

As this module provide tools, it is best to explain as use cases. For example use cases, please install excel_import_export_sample

+

As this module provide tools, it is best to explain as use cases. For example use cases, please install excel_import_export_demo

Use Case 1: Export/Import Excel on existing document

-

This add export/import action menus in existing document (example - excel_import_export_sample/import_export_sale_order)

+

This add export/import action menus in existing document (example - excel_import_export_demo/import_export_sale_order)

  1. Create export action menu on document, <act_window> with res_model=”export.xlsx.wizard” and src_model=”<document_model>”, and context[‘template_domain’] to locate the right template – actions.xml
  2. Create import action menu on document, <act_window> with res_model=”import.xlsx.wizard” and src_model=”<document_model>”, and context[‘template_domain’] to locate the right template – action.xml
  3. @@ -424,14 +425,14 @@ ul.auto-toc {
  4. Create instruction dictionary for export/import in xlsx.template model – templates.xml

Use Case 2: Import Excel Files

-

With menu wizard to create new documents (example - excel_import_export_sample/import_sale_orders)

+

With menu wizard to create new documents (example - excel_import_export_demo/import_sale_orders)

  1. Create report menu with search wizard, res_model=”import.xlsx.wizard” and context[‘template_domain’] to locate the right template – menu_action.xml
  2. Create Excel Template File (.xlsx), in the template, name the underlining tab used for import – <import file>.xlsx
  3. Create instruction dictionary for import in xlsx.template model – templates.xml

Use Case 3: Create Excel Report

-

This create report menu with criteria wizard. (example - excel_import_export_sample/report_sale_order)

+

This create report menu with criteria wizard. (example - excel_import_export_demo/report_sale_order)

  1. Create report’s menu, action, and add context[‘template_domain’] to locate the right template for this report – <report>.xml
  2. Create report’s wizard for search criteria. The view inherits excel_import_export.xlsx_report_view and mode=”primary”. In this view, you only need to add criteria fields, the rest will reuse from interited view – <report.xml>
  3. @@ -441,23 +442,29 @@ ul.auto-toc {
-

Known issues / Roadmap

+

Known issues / Roadmap

  • Module extension e.g., excel_import_export_async, that add ability to execute as async process.
  • Ability to add contextual action in XLSX Tempalte, e.g., Add import action, Add export action. In similar manner as in Server Action.
-

Changelog

+

Changelog

+
+

12.0.1.0.2 (2019-06-24)

+ +
-

Bug Tracker

+

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed @@ -465,21 +472,21 @@ If you spotted it first, help us smashing it by providing a detailed and welcome

Do not contact contributors directly about support or help with technical issues.

-

Credits

+

Credits

-

Authors

+

Authors

  • Ecosoft
-

Maintainers

+

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose