Commit Graph

58 Commits (6e28324d0dc0c99c7fde3bcb6ac44bd2ce063496)

Author SHA1 Message Date
Denis Leemann dcfd5c1ec4 run pre-commit 2021-11-23 15:56:02 +01:00
Elmeri Niemelä 0ddf462e04
[IMP] Remove except of IOError as its an alias to OSError in python3
Co-authored-by: Nils Hamerlinck <nilshamerlinck@users.noreply.github.com>
2021-11-07 14:03:59 +02:00
Elmeri Niemelä 6760507d72
[IMP] Cleanup unnecessary imports
Co-authored-by: Nils Hamerlinck <nilshamerlinck@users.noreply.github.com>
2021-11-07 14:01:44 +02:00
Elmeri Niemelä 779da4f952
[IMP] Workaround for genshi DeprecationWarning that makes runbot build red
Co-authored-by: Nils Hamerlinck <nilshamerlinck@users.noreply.github.com>
2021-11-07 14:00:56 +02:00
Elmeri Niemelä 08deb1e931 [IMP] Add ability to include properly formatted datetime field in a report displaying date and time 2021-11-05 17:06:57 +02:00
Elmeri Niemelä c2db522568 [MIG] Use safe_eval wrapped time module. Fix deprecation warnings.
Co-authored-by: Alexis de Lattre <alexis.delattre@akretion.com>
2021-02-02 08:20:17 +02:00
Elmeri Niemelä ec4a6ad6ec
Update report_py3o/models/ir_actions_report.py
In v 14.0 time module is already in safe_eval https://github.com/odoo/odoo/blob/14.0/odoo/tools/safe_eval.py#L38

Co-authored-by: mourad-ehm <mourad.elhadj.mimoune@akretion.com>
2020-11-07 16:44:14 +02:00
Elmeri Niemelä bee9ce47be [14.0][MIG] report_py3o: Migration to 14.0 2020-10-21 19:17:39 +03:00
sbejaoui 16cf7466b9 [12.0][FIX] - report_py3o: run libreoffice in an isolated user installation
Bug when more than one conversion print is launched within the same libreoffice instance.

The standard behavior of libreoffice when a user open it while another instance is
running is to show a new window and throw an error if a new instance is forced within
the same user installation [see](https://bugs.documentfoundation.org/show_bug.cgi?id=37531).

This implies a bug in report_py3o module when we call libreoffice at the same time for
different documents.

To reproduce this bug:

**Case 1:**
1.  Simultaneously print two documents.

**Case 2:**
1.  Run print jobs using job_queue module
2.  Manually print another document

**Case 3:**
2.  Open libreoffice
3.  Print a py3o report

This PR creates a temporary user installation for each libreoffice conversion to bypass this limitation.
2020-10-21 19:13:33 +03:00
Russell Briggs 716364437b Make sure value is always set for computed fields
(without these a CacheMiss error is thrown by odoo)
2020-10-21 19:13:33 +03:00
Laurent Mignon (ACSONE) 3fa05b0604 [MIG] report_py3o, report_py3o_fusion_server: Migration to 13.0 2020-10-21 19:13:33 +03:00
Laurent Mignon (ACSONE) 0bf0160d2d [IMP] report_py3o, report_py3o_fusion_server: black, isort 2020-10-21 19:13:33 +03:00
Laurent Mignon (ACSONE) ac6fc4eaaf [FIX] report_py3o: Access to ir.config_parameter with sudo 2020-10-21 19:13:33 +03:00
Laurent Mignon (ACSONE) e5e6e9d379 [IMP] py3o_report: Allow to specify the lang when calling o_format_lang
lang_code is already supported by o_format_date
2020-10-21 19:13:33 +03:00
Laurent Mignon (ACSONE) 4d0f2585d3 [FIX] report_py3o: Add missing 'user' and 'lang' into the parser context 2020-10-21 19:13:33 +03:00
Laurent Mignon (ACSONE) 6f6cf5688b [IMP][FIX] py3o_report, py3o_report_fusion_server: Compute the availability of py3o report
Before this change it was not possible to install modules declaring py3o report into a non native format without specifying a Fusion server once the module py3o_report_fusion_server was installed. With theses changes, we now take care of the availability of the libreoffice runtime to display/log a warning message when the report is in a non native runtime.
2020-10-21 19:13:33 +03:00
Laurent Mignon (ACSONE) ac6e75c7b4 [FIX] report_py3o: Add missing method _merge_pdf.
This method was previously provided by Odoo and is used to merge all the reports generated if the generation is called for more than one record
2020-10-21 19:13:33 +03:00
Laurent Mignon (ACSONE) bb36779e88 [IMP] report_py3o: remove obsolete methods 2020-10-21 19:13:33 +03:00
Laurent Mignon (ACSONE) 138a994b81 [FIX] report_py3o: Use the right naming convention for the render method
To determine the method to use to render a recport according to its type, the generic method 'render' defined into ir.action.report check if a method name  is defined on the model. https://github.com/odoo/odoo/blob/12.0/odoo/addons/base/models/ir_actions_report.py#L734
Therefore, we must provide this method to be compliant with what's expected by Odoo.
This change will also allows the usage of py3o template with mail_template once https://github.com/odoo/odoo/pull/30013 will be merged
2020-10-21 19:13:33 +03:00
Gilles Meyomesse 71a532f21b [12.0][MIG] improvement py3o_report_extender 2020-10-21 19:13:32 +03:00
Laurent Mignon (ACSONE) e65b6db22f [MIG] report_py3o, report_py3o_fusion_server: Migration to 12.0 2020-10-21 19:13:32 +03:00
Holger Brunn cb40a8e9ff [IMP] check for template data, not for the id 2020-10-21 19:13:32 +03:00
jesusVMayor a89aa2a2f9 [FIX]report_py3o: Escape correctly html characters. 2020-10-21 19:13:32 +03:00
Holger Brunn ecaa783529 [FIX] fallback to libreoffice conversion when no server is configured
fixes #200
2020-10-21 19:13:32 +03:00
Holger Brunn 0a706a660f [RFR] split off the fusion server to its own module
use libreoffice for conversions in the base version. Fixes #179
2020-10-21 19:13:32 +03:00
Omar e5f5f045f8 [FIX] report_py3o: Import new dependencies in try...except 2020-10-21 19:13:32 +03:00
Omar 01e61fe06f [FIX] report_py3o: Removes api.one 2020-10-21 19:13:32 +03:00
omar7r 9f9d437e41 [FIX] Deletes an unnecessary function call 2020-10-21 19:13:32 +03:00
Omar 6e59b1fa86 [IMP] report_py3o: Allows to interpret \n and \t in texts, cleans html tags too 2020-10-21 19:13:32 +03:00
Laurent Mignon f0d17fd206 [IMP] report_py3o: Take into account print_report_name
If a Printed Report Name is set on the action report, use it as
downloaded filename
refs #133
2020-10-21 19:13:32 +03:00
Laurent Mignon (ACSONE) 7f6c8129e5 [FIX] report_py3o: must return the path to the report
refs #119
2020-10-21 19:13:32 +03:00
Alexis de Lattre 65861e4afa Add option py3o_multi_in_one for Py3o reports 2020-10-21 19:13:32 +03:00
Guewen Baconnier 2d5a6cc521 Pass option for escaping False values to server
Needs https://bitbucket.org/faide/py3o.fusion/pull-requests/1
2020-10-21 19:13:32 +03:00
Guewen Baconnier 56d631eba2 Fix py3o freeze when using server fusion
The template file has been partially read for the parsing of the
expressions, so use the original template data instead.  When the fusion
server receives an incomplete template, we don't receive any answer
back.
2020-10-21 19:13:32 +03:00
Laurent Mignon (ACSONE) 4e96f362f0 [IMP] report_py3o: prevent injections when retrieving the template from path 2020-10-21 19:13:32 +03:00
Alexis de Lattre f18f6a537c [FIX] delete PDF invoice attachment on invoice back to draft (native feature now working with py3o) 2020-10-21 19:13:32 +03:00
Laurent Mignon (ACSONE) d29a3b3a8d [FIX] report_py3o: fix exception when report must be saved as attachement
The mehtod  must be called with a list of ids not with a list of browse records
2020-10-21 19:13:32 +03:00
Laurent Mignon (ACSONE) 3b00271ebb [IMP] Allow to override/extend the way we get the fallback template 2020-10-21 19:13:32 +03:00
Jonathan Nemry (ACSONE) 3dedfcf072 * travis.yml
* flake8
2020-10-21 19:13:32 +03:00
Laurent Mignon 714ea78ce8 [IMP] Minimizes memory consumption
Conflicts:
	report_py3o/models/py3o_report.py
2020-10-21 19:13:32 +03:00
Jonathan Nemry (ACSONE) e69592c5f7 [FIX] imports 2020-10-21 19:13:32 +03:00
Laurent Mignon 1871d9829d [IMP] Replace old style parser by TransientModel
The goal is to improve the modularity by making the parser a true inheritable odoo model and share part of the code with the 'report' model

Conflicts:
	report_py3o/models/ir_actions_report_xml.py
	report_py3o/models/py3o_report.py
	report_py3o/tests/test_report_py3o.py
2020-10-21 19:13:32 +03:00
Alexis de Lattre 34c554efde PEP8 fix 2020-10-21 19:13:32 +03:00
Alexis de Lattre 9c30326a49 Port report_py3o to Odoo v10 2020-10-21 19:13:32 +03:00
Laurent Mignon (ACSONE) 0b2d58a3e1 [FIX] Check constrains only if report_type == 'py3o' 2020-10-21 19:13:32 +03:00
Laurent Mignon ac39d060e4 Add more tests and fixes issues found by tests 2020-10-21 19:13:32 +03:00
Laurent Mignon 8c279cadcf rename module ir_report to ir_actions_report_xml 2020-10-21 19:13:32 +03:00
Laurent Mignon 6201dc9e73 Replace plain SQL by orm 2020-10-21 19:13:32 +03:00
Alexis de Lattre c3f8e1cd69 Take into accounts most remarks of @lasley
Remove <data> in views
Protect import of py3o libs
Remove dep on base module
Other small changes
2020-10-21 19:13:32 +03:00
Alexis de Lattre 46f901bbb0 Small usability improvements
Replace README.md by README.rst (not finished)
2020-10-21 19:13:32 +03:00