[MIG] report_py3o_fusion_server to v16

Migration of report_py3o_fusion_server from v14 to v16
pull/696/head
Alexis de Lattre 2022-12-12 22:51:45 +01:00
parent 1186fe4ed7
commit b1ab01e36b
10 changed files with 69 additions and 60 deletions

View File

@ -2,10 +2,13 @@
Py3o Report Engine - Fusion server support Py3o Report Engine - Fusion server support
========================================== ==========================================
.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !! !! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !! !! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:ce9546831300e0c5d41211fac8272f14abfb1207bed3bf9acafc2653c5de68b6
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status :target: https://odoo-community.org/page/development-status
@ -14,16 +17,16 @@ Py3o Report Engine - Fusion server support
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3 :alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Freporting--engine-lightgray.png?logo=github .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Freporting--engine-lightgray.png?logo=github
:target: https://github.com/OCA/reporting-engine/tree/14.0/report_py3o_fusion_server :target: https://github.com/OCA/reporting-engine/tree/16.0/report_py3o_fusion_server
:alt: OCA/reporting-engine :alt: OCA/reporting-engine
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/reporting-engine-14-0/reporting-engine-14-0-report_py3o_fusion_server :target: https://translation.odoo-community.org/projects/reporting-engine-16-0/reporting-engine-16-0-report_py3o_fusion_server
:alt: Translate me on Weblate :alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/143/14.0 :target: https://runboat.odoo-community.org/builds?repo=OCA/reporting-engine&target_branch=16.0
:alt: Try me on Runbot :alt: Try me on Runboat
|badge1| |badge2| |badge3| |badge4| |badge5| |badge1| |badge2| |badge3| |badge4| |badge5|
This module was written to let a py3o fusion server handle format conversion instead of local libreoffice. If you install this module above the *report_py3o* module, you will have to deploy additionnal software components and run 3 daemons (libreoffice, py3o.fusion and py3o.renderserver). This additionnal complexiy comes with several advantages: This module was written to let a py3o fusion server handle format conversion instead of local libreoffice. If you install this module above the *report_py3o* module, you will have to deploy additionnal software components and run 3 daemons (libreoffice, py3o.fusion and py3o.renderserver). This additionnal complexiy comes with several advantages:
@ -139,8 +142,8 @@ Bug Tracker
Bugs are tracked on `GitHub Issues <https://github.com/OCA/reporting-engine/issues>`_. Bugs are tracked on `GitHub Issues <https://github.com/OCA/reporting-engine/issues>`_.
In case of trouble, please check there if your issue has already been reported. 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 If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/reporting-engine/issues/new?body=module:%20report_py3o_fusion_server%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_. `feedback <https://github.com/OCA/reporting-engine/issues/new?body=module:%20report_py3o_fusion_server%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
Do not contact contributors directly about support or help with technical issues. Do not contact contributors directly about support or help with technical issues.
@ -177,6 +180,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and mission is to support the collaborative development of Odoo features and
promote its widespread use. promote its widespread use.
This module is part of the `OCA/reporting-engine <https://github.com/OCA/reporting-engine/tree/14.0/report_py3o_fusion_server>`_ project on GitHub. This module is part of the `OCA/reporting-engine <https://github.com/OCA/reporting-engine/tree/16.0/report_py3o_fusion_server>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

View File

@ -3,7 +3,7 @@
{ {
"name": "Py3o Report Engine - Fusion server support", "name": "Py3o Report Engine - Fusion server support",
"summary": "Let the fusion server handle format conversion.", "summary": "Let the fusion server handle format conversion.",
"version": "14.0.1.0.0", "version": "16.0.1.0.0",
"category": "Reporting", "category": "Reporting",
"license": "AGPL-3", "license": "AGPL-3",
"author": "XCG Consulting," "author": "XCG Consulting,"
@ -13,7 +13,7 @@
"website": "https://github.com/OCA/reporting-engine", "website": "https://github.com/OCA/reporting-engine",
"depends": ["report_py3o"], "depends": ["report_py3o"],
"external_dependencies": { "external_dependencies": {
"python": ["py3o.template", "py3o.formats"], "python": ["py3o.template", "py3o.formats", "mock"],
"deb": ["libreoffice"], "deb": ["libreoffice"],
}, },
"demo": ["demo/report_py3o.xml", "demo/py3o_pdf_options.xml"], "demo": ["demo/report_py3o.xml", "demo/py3o_pdf_options.xml"],

View File

@ -19,7 +19,6 @@ class Py3oPdfOptions(models.Model):
# UseLosslessCompression (bool) # UseLosslessCompression (bool)
image_compression = fields.Selection( image_compression = fields.Selection(
[("lossless", "Lossless Compression"), ("jpeg", "JPEG Compression")], [("lossless", "Lossless Compression"), ("jpeg", "JPEG Compression")],
string="Image Compression",
default="jpeg", default="jpeg",
) )
# Quality (int) # Quality (int)
@ -65,11 +64,11 @@ class Py3oPdfOptions(models.Model):
# AllowDuplicateFieldNames (bool) # AllowDuplicateFieldNames (bool)
pdf_form_allow_duplicate = fields.Boolean("Allow Duplicate Field Names") pdf_form_allow_duplicate = fields.Boolean("Allow Duplicate Field Names")
# ExportBookmarks (bool) # ExportBookmarks (bool)
export_bookmarks = fields.Boolean("Export Bookmarks", default=True) export_bookmarks = fields.Boolean(default=True)
# ExportPlaceholders (bool) # ExportPlaceholders (bool)
export_placeholders = fields.Boolean("Export Placeholders", default=True) export_placeholders = fields.Boolean(default=True)
# ExportNotes (bool) # ExportNotes (bool)
export_comments = fields.Boolean("Export Comments") export_comments = fields.Boolean()
# ExportHiddenSlides (bool) ?? # ExportHiddenSlides (bool) ??
export_hidden_slides = fields.Boolean("Export Automatically Insered Blank Pages") export_hidden_slides = fields.Boolean("Export Automatically Insered Blank Pages")
# Doesn't make sense to have the option "View PDF after export" ! :) # Doesn't make sense to have the option "View PDF after export" ! :)
@ -81,7 +80,7 @@ class Py3oPdfOptions(models.Model):
default="0", default="0",
) )
# InitialPage (int) # InitialPage (int)
initial_page = fields.Integer(string="Initial Page", default=1) initial_page = fields.Integer(default=1)
# Magnification (int) # Magnification (int)
magnification = fields.Selection( magnification = fields.Selection(
[ [
@ -91,7 +90,6 @@ class Py3oPdfOptions(models.Model):
("3", "Fit Visible"), ("3", "Fit Visible"),
("4", "Zoom"), ("4", "Zoom"),
], ],
string="Magnification",
default="0", default="0",
) )
# Zoom (int) # Zoom (int)
@ -106,7 +104,6 @@ class Py3oPdfOptions(models.Model):
("2", "Continuous"), ("2", "Continuous"),
("3", "Continuous Facing"), ("3", "Continuous Facing"),
], ],
string="Page Layout",
default="0", default="0",
) )
# USER INTERFACE TAB # USER INTERFACE TAB
@ -119,11 +116,11 @@ class Py3oPdfOptions(models.Model):
# OpenInFullScreenMode (bool) # OpenInFullScreenMode (bool)
open_fullscreen = fields.Boolean(string="Open in Full Screen Mode") open_fullscreen = fields.Boolean(string="Open in Full Screen Mode")
# DisplayPDFDocumentTitle (bool) # DisplayPDFDocumentTitle (bool)
display_document_title = fields.Boolean(string="Display Document Title") display_document_title = fields.Boolean()
# HideViewerMenubar (bool) # HideViewerMenubar (bool)
hide_menubar = fields.Boolean(string="Hide Menubar") hide_menubar = fields.Boolean()
# HideViewerToolbar (bool) # HideViewerToolbar (bool)
hide_toolbar = fields.Boolean(string="Hide Toolbar") hide_toolbar = fields.Boolean()
# HideViewerWindowControls (bool) # HideViewerWindowControls (bool)
hide_window_controls = fields.Boolean(string="Hide Windows Controls") hide_window_controls = fields.Boolean(string="Hide Windows Controls")
# OpenBookmarkLevels (int) -1 = all (default) from 1 to 10 # OpenBookmarkLevels (int) -1 = all (default) from 1 to 10
@ -167,13 +164,13 @@ class Py3oPdfOptions(models.Model):
) )
# SECURITY TAB # SECURITY TAB
# EncryptFile (bool) # EncryptFile (bool)
encrypt = fields.Boolean("Encrypt") encrypt = fields.Boolean()
# DocumentOpenPassword (char) # DocumentOpenPassword (char)
document_password = fields.Char(string="Document Password") document_password = fields.Char()
# RestrictPermissions (bool) # RestrictPermissions (bool)
restrict_permissions = fields.Boolean("Restrict Permissions") restrict_permissions = fields.Boolean()
# PermissionPassword (char) # PermissionPassword (char)
permission_password = fields.Char(string="Permission Password") permission_password = fields.Char()
# TODO PreparedPasswords + PreparedPermissionPassword # TODO PreparedPasswords + PreparedPermissionPassword
# I don't see those fields in the LO interface ! # I don't see those fields in the LO interface !
# But they are used in the LO code... # But they are used in the LO code...
@ -184,7 +181,6 @@ class Py3oPdfOptions(models.Model):
("1", "Low Resolution (150 dpi)"), ("1", "Low Resolution (150 dpi)"),
("2", "High Resolution"), ("2", "High Resolution"),
], ],
string="Printing",
default="2", default="2",
) )
# Changes (int) # Changes (int)
@ -196,7 +192,6 @@ class Py3oPdfOptions(models.Model):
("3", "Commenting, Filling in Form Fields"), ("3", "Commenting, Filling in Form Fields"),
("4", "Any Except Extracting Pages"), ("4", "Any Except Extracting Pages"),
], ],
string="Changes",
default="4", default="4",
) )
# EnableCopyingOfContent (bool) # EnableCopyingOfContent (bool)

View File

@ -83,7 +83,7 @@ class Py3oReport(models.TransientModel):
fields["pdf_options"] = json.dumps(pdf_options_dict) fields["pdf_options"] = json.dumps(pdf_options_dict)
logger.debug("PDF Export options: %s", pdf_options_dict) logger.debug("PDF Export options: %s", pdf_options_dict)
start_chrono = datetime.now() start_chrono = datetime.now()
r = requests.post(url, data=fields, files=files) r = requests.post(url, data=fields, files=files, timeout=10)
if r.status_code != 200: if r.status_code != 200:
# server says we have an issue... let's tell that to enduser # server says we have an issue... let's tell that to enduser
logger.error("Py3o fusion server error: %s", r.text) logger.error("Py3o fusion server error: %s", r.text)

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="utf-8" ?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils 0.15.1: http://docutils.sourceforge.net/" /> <meta name="generator" content="Docutils: https://docutils.sourceforge.io/" />
<title>Py3o Report Engine - Fusion server support</title> <title>Py3o Report Engine - Fusion server support</title>
<style type="text/css"> <style type="text/css">
/* /*
:Author: David Goodger (goodger@python.org) :Author: David Goodger (goodger@python.org)
:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $ :Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $
:Copyright: This stylesheet has been placed in the public domain. :Copyright: This stylesheet has been placed in the public domain.
Default cascading style sheet for the HTML output of Docutils. Default cascading style sheet for the HTML output of Docutils.
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
customize this style sheet. customize this style sheet.
*/ */
@ -366,8 +366,10 @@ ul.auto-toc {
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! <!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !! !! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !! !! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:ce9546831300e0c5d41211fac8272f14abfb1207bed3bf9acafc2653c5de68b6
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/reporting-engine/tree/14.0/report_py3o_fusion_server"><img alt="OCA/reporting-engine" src="https://img.shields.io/badge/github-OCA%2Freporting--engine-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/reporting-engine-14-0/reporting-engine-14-0-report_py3o_fusion_server"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/143/14.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p> <p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/reporting-engine/tree/16.0/report_py3o_fusion_server"><img alt="OCA/reporting-engine" src="https://img.shields.io/badge/github-OCA%2Freporting--engine-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/reporting-engine-16-0/reporting-engine-16-0-report_py3o_fusion_server"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/reporting-engine&amp;target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p>This module was written to let a py3o fusion server handle format conversion instead of local libreoffice. If you install this module above the <em>report_py3o</em> module, you will have to deploy additionnal software components and run 3 daemons (libreoffice, py3o.fusion and py3o.renderserver). This additionnal complexiy comes with several advantages:</p> <p>This module was written to let a py3o fusion server handle format conversion instead of local libreoffice. If you install this module above the <em>report_py3o</em> module, you will have to deploy additionnal software components and run 3 daemons (libreoffice, py3o.fusion and py3o.renderserver). This additionnal complexiy comes with several advantages:</p>
<ul class="simple"> <ul class="simple">
<li>much better performances: Libreoffice runs permanently in the background, no need to spawn a new Libreoffice instance upon every document conversion.</li> <li>much better performances: Libreoffice runs permanently in the background, no need to spawn a new Libreoffice instance upon every document conversion.</li>
@ -382,20 +384,20 @@ ul.auto-toc {
<p><strong>Table of contents</strong></p> <p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents"> <div class="contents local topic" id="contents">
<ul class="simple"> <ul class="simple">
<li><a class="reference internal" href="#installation" id="id1">Installation</a></li> <li><a class="reference internal" href="#installation" id="toc-entry-1">Installation</a></li>
<li><a class="reference internal" href="#configuration" id="id2">Configuration</a></li> <li><a class="reference internal" href="#configuration" id="toc-entry-2">Configuration</a></li>
<li><a class="reference internal" href="#known-issues-roadmap" id="id3">Known issues / Roadmap</a></li> <li><a class="reference internal" href="#known-issues-roadmap" id="toc-entry-3">Known issues / Roadmap</a></li>
<li><a class="reference internal" href="#bug-tracker" id="id4">Bug Tracker</a></li> <li><a class="reference internal" href="#bug-tracker" id="toc-entry-4">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="id5">Credits</a><ul> <li><a class="reference internal" href="#credits" id="toc-entry-5">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="id6">Authors</a></li> <li><a class="reference internal" href="#authors" id="toc-entry-6">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="id7">Contributors</a></li> <li><a class="reference internal" href="#contributors" id="toc-entry-7">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="id8">Maintainers</a></li> <li><a class="reference internal" href="#maintainers" id="toc-entry-8">Maintainers</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</div> </div>
<div class="section" id="installation"> <div class="section" id="installation">
<h1><a class="toc-backref" href="#id1">Installation</a></h1> <h1><a class="toc-backref" href="#toc-entry-1">Installation</a></h1>
<p>Install several additional components and Python libs:</p> <p>Install several additional components and Python libs:</p>
<ul class="simple"> <ul class="simple">
<li><a class="reference external" href="https://bitbucket.org/faide/py3o.fusion">Py3o Fusion server</a>,</li> <li><a class="reference external" href="https://bitbucket.org/faide/py3o.fusion">Py3o Fusion server</a>,</li>
@ -454,7 +456,7 @@ sudo apt-get install msttcorefonts
</pre> </pre>
</div> </div>
<div class="section" id="configuration"> <div class="section" id="configuration">
<h1><a class="toc-backref" href="#id2">Configuration</a></h1> <h1><a class="toc-backref" href="#toc-entry-2">Configuration</a></h1>
<p>To configure the PDF export options:</p> <p>To configure the PDF export options:</p>
<ol class="arabic simple"> <ol class="arabic simple">
<li>Go to the menu <em>Settings &gt; Technical &gt; Reporting &gt; Py3o &gt; Py3o PDF Export Options</em> and create a PDF export options profile.</li> <li>Go to the menu <em>Settings &gt; Technical &gt; Reporting &gt; Py3o &gt; Py3o PDF Export Options</em> and create a PDF export options profile.</li>
@ -462,23 +464,23 @@ sudo apt-get install msttcorefonts
</ol> </ol>
</div> </div>
<div class="section" id="known-issues-roadmap"> <div class="section" id="known-issues-roadmap">
<h1><a class="toc-backref" href="#id3">Known issues / Roadmap</a></h1> <h1><a class="toc-backref" href="#toc-entry-3">Known issues / Roadmap</a></h1>
<ul class="simple"> <ul class="simple">
<li>Add support for PDF signatures (possible, but no easy because the signature certificate is a very particular PDF export option)</li> <li>Add support for PDF signatures (possible, but no easy because the signature certificate is a very particular PDF export option)</li>
</ul> </ul>
</div> </div>
<div class="section" id="bug-tracker"> <div class="section" id="bug-tracker">
<h1><a class="toc-backref" href="#id4">Bug Tracker</a></h1> <h1><a class="toc-backref" href="#toc-entry-4">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/reporting-engine/issues">GitHub Issues</a>. <p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/reporting-engine/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported. 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 If you spotted it first, help us to smash it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/reporting-engine/issues/new?body=module:%20report_py3o_fusion_server%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p> <a class="reference external" href="https://github.com/OCA/reporting-engine/issues/new?body=module:%20report_py3o_fusion_server%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p> <p>Do not contact contributors directly about support or help with technical issues.</p>
</div> </div>
<div class="section" id="credits"> <div class="section" id="credits">
<h1><a class="toc-backref" href="#id5">Credits</a></h1> <h1><a class="toc-backref" href="#toc-entry-5">Credits</a></h1>
<div class="section" id="authors"> <div class="section" id="authors">
<h2><a class="toc-backref" href="#id6">Authors</a></h2> <h2><a class="toc-backref" href="#toc-entry-6">Authors</a></h2>
<ul class="simple"> <ul class="simple">
<li>XCG Consulting</li> <li>XCG Consulting</li>
<li>ACSONE SA/NV</li> <li>ACSONE SA/NV</li>
@ -486,7 +488,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
</ul> </ul>
</div> </div>
<div class="section" id="contributors"> <div class="section" id="contributors">
<h2><a class="toc-backref" href="#id7">Contributors</a></h2> <h2><a class="toc-backref" href="#toc-entry-7">Contributors</a></h2>
<ul class="simple"> <ul class="simple">
<li>Florent Aide (<a class="reference external" href="http://odoo.consulting/">XCG Consulting</a>)</li> <li>Florent Aide (<a class="reference external" href="http://odoo.consulting/">XCG Consulting</a>)</li>
<li>Laurent Mignon &lt;<a class="reference external" href="mailto:laurent.mignon&#64;acsone.eu">laurent.mignon&#64;acsone.eu</a>&gt;,</li> <li>Laurent Mignon &lt;<a class="reference external" href="mailto:laurent.mignon&#64;acsone.eu">laurent.mignon&#64;acsone.eu</a>&gt;,</li>
@ -497,13 +499,13 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
</ul> </ul>
</div> </div>
<div class="section" id="maintainers"> <div class="section" id="maintainers">
<h2><a class="toc-backref" href="#id8">Maintainers</a></h2> <h2><a class="toc-backref" href="#toc-entry-8">Maintainers</a></h2>
<p>This module is maintained by the OCA.</p> <p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a> <a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose <p>OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and mission is to support the collaborative development of Odoo features and
promote its widespread use.</p> promote its widespread use.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/reporting-engine/tree/14.0/report_py3o_fusion_server">OCA/reporting-engine</a> project on GitHub.</p> <p>This module is part of the <a class="reference external" href="https://github.com/OCA/reporting-engine/tree/16.0/report_py3o_fusion_server">OCA/reporting-engine</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p> <p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
</div> </div>
</div> </div>

View File

@ -8,7 +8,7 @@
<field name="name">py3o.pdf.options.form</field> <field name="name">py3o.pdf.options.form</field>
<field name="model">py3o.pdf.options</field> <field name="model">py3o.pdf.options</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<form string="Py3o PDF Export Options"> <form>
<div class="oe_title"> <div class="oe_title">
<label for="name" /> <label for="name" />
<h1> <h1>
@ -182,7 +182,7 @@
<field name="name">py3o.pdf.options.tree</field> <field name="name">py3o.pdf.options.tree</field>
<field name="model">py3o.pdf.options</field> <field name="model">py3o.pdf.options</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<tree string="Py3o PDF Export Options"> <tree>
<field name="name" /> <field name="name" />
</tree> </tree>
</field> </field>
@ -194,8 +194,8 @@
</record> </record>
<menuitem <menuitem
id="py3o_pdf_options_menu" id="py3o_pdf_options_menu"
parent="report_py3o.py3o_config_menu" parent="base.reporting_menuitem"
action="py3o_pdf_options_action" action="py3o_pdf_options_action"
sequence="40" sequence="120"
/> />
</odoo> </odoo>

View File

@ -4,7 +4,7 @@
<field name="name">py3o.server.configuration.form.view</field> <field name="name">py3o.server.configuration.form.view</field>
<field name="model">py3o.server</field> <field name="model">py3o.server</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<form string="Py3o Server Configuration"> <form>
<group name="main"> <group name="main">
<field name="url" widget="url" /> <field name="url" widget="url" />
<field name="pdf_options_id" /> <field name="pdf_options_id" />
@ -17,7 +17,7 @@
<field name="name">py3o.server.configuration.tree.view</field> <field name="name">py3o.server.configuration.tree.view</field>
<field name="model">py3o.server</field> <field name="model">py3o.server</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<tree string="Py3o Servers Configuration"> <tree>
<field name="url" /> <field name="url" />
<field name="pdf_options_id" /> <field name="pdf_options_id" />
<field name="is_active" /> <field name="is_active" />
@ -31,7 +31,8 @@
</record> </record>
<menuitem <menuitem
id="py3o_server_configuration_menu" id="py3o_server_configuration_menu"
parent="report_py3o.py3o_config_menu" parent="base.reporting_menuitem"
action="py3o_server_configuration_action" action="py3o_server_configuration_action"
sequence="110"
/> />
</odoo> </odoo>

View File

@ -1,5 +1,6 @@
# generated from manifests external_dependencies # generated from manifests external_dependencies
lxml lxml
mock
openpyxl openpyxl
py3o.formats py3o.formats
py3o.template py3o.template

View File

@ -0,0 +1 @@
../../../../report_py3o_fusion_server

View File

@ -0,0 +1,6 @@
import setuptools
setuptools.setup(
setup_requires=['setuptools-odoo'],
odoo_addon=True,
)