mirror of
https://gitlab.com/flectra-community/reporting-engine.git
synced 2024-11-15 02:32:05 +00:00
163 lines
5.7 KiB
ReStructuredText
163 lines
5.7 KiB
ReStructuredText
=======================
|
|
Qweb PDF reports signer
|
|
=======================
|
|
|
|
.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
!! This file is generated by oca-gen-addon-readme !!
|
|
!! changes will be overwritten. !!
|
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
|
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
:target: https://odoo-community.org/page/development-status
|
|
:alt: Beta
|
|
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
|
|
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
|
:alt: License: AGPL-3
|
|
.. |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_qweb_signer
|
|
:alt: OCA/reporting-engine
|
|
.. |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_qweb_signer
|
|
:alt: Translate me on Weblate
|
|
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
|
|
:target: https://runbot.odoo-community.org/runbot/143/14.0
|
|
:alt: Try me on Runbot
|
|
|
|
|badge1| |badge2| |badge3| |badge4| |badge5|
|
|
|
|
This module extends the functionality of report module to sign
|
|
PDFs using a PKCS#12 certificate.
|
|
|
|
**Table of contents**
|
|
|
|
.. contents::
|
|
:local:
|
|
|
|
Installation
|
|
============
|
|
|
|
To install this module, you need to install Java JDK Headlees, e.g.:
|
|
|
|
apt-get install default-jre-headless
|
|
|
|
Configuration
|
|
=============
|
|
|
|
In order to start signing PDF documents you need to configure certificate(s)
|
|
to use in your company.
|
|
|
|
* Go to ``Settings > Companies > Companies > Your company``
|
|
* Go to ``Report configuration`` tab
|
|
* Click ``Edit``
|
|
* Add a new item in ``PDF report certificates`` list
|
|
* Click ``Create``
|
|
* Set name, certificate file, password file and model
|
|
* Optionally you can set a domain and filename pattern for saving as attachment
|
|
|
|
For example, if you want to sign only customer invoices in open or paid state:
|
|
|
|
* Model: ``account.invoice``
|
|
* Domain: ``[('type','=','out_invoice'), ('state', 'in', ('open', 'paid'))]``
|
|
* Save as attachment: ``(object.number or '').replace('/','_') + '.signed.pdf'``
|
|
|
|
**Note**: Linux user that executes Odoo server process must have
|
|
read access to certificate file and password file
|
|
|
|
Java Memory Settings
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
|
|
If you are signing large amounts of reports at the same time, or if you have a
|
|
lower worker memory size than the JVM defaults, you may need to tune the JVM
|
|
heap memory limits. Do so by adding a ``$JVM_ARGS`` environment variable that
|
|
contains the required flags. Check out these links too:
|
|
|
|
- `StackOverflow answer <https://stackoverflow.com/a/14763095/1468388>`_.
|
|
- `Java docs <https://docs.oracle.com/cd/E15523_01/web.1111/e13814/jvm_tuning.htm#PERFM161>`_.
|
|
|
|
Usage
|
|
=====
|
|
|
|
User just prints PDF documents (only Qweb PDF reports supported) as usual,
|
|
but signed PDF is automatically downloaded if this document model is configured
|
|
as indicated above.
|
|
|
|
If 'Save as attachment' is configured, signed PDF is saved as attachment and
|
|
next time saved one is downloaded without signing again. This is appropiate
|
|
when signing date is important, for example, when signing customer invoices.
|
|
|
|
You can try the signing with the demo report that is included for customers
|
|
called "Test PDF certificate".
|
|
|
|
You can set extra parameters of JSignPdf library in the system parameter
|
|
named 'report_qweb_signer.java_position_parameters', for example '-V' to
|
|
visible signature into pdf. You can also set extra parameters for Java in the
|
|
system parameter named 'report_qweb_signer.java_parameters'.
|
|
|
|
Known issues / Roadmap
|
|
======================
|
|
|
|
* When signing multiple documents (if 'Allow only one document' is disable)
|
|
then 'Save as attachment' is not applied and signed result is not
|
|
saved as attachment.
|
|
* Add tests.
|
|
|
|
Bug Tracker
|
|
===========
|
|
|
|
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.
|
|
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
|
`feedback <https://github.com/OCA/reporting-engine/issues/new?body=module:%20report_qweb_signer%0Aversion:%2014.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.
|
|
|
|
Credits
|
|
=======
|
|
|
|
Authors
|
|
~~~~~~~
|
|
|
|
* Tecnativa
|
|
|
|
Contributors
|
|
~~~~~~~~~~~~
|
|
|
|
* `Tecnativa <https://www.tecnativa.com>`_:
|
|
|
|
* Rafael Blasco
|
|
* Antonio Espinosa
|
|
* Pedro M. Baeza
|
|
* Jairo Llopis
|
|
* David Vidal
|
|
* Santi Argüeso <santi@comunitea.com>
|
|
* Omar Castiñeira <omar@comunitea.com>
|
|
|
|
Other credits
|
|
~~~~~~~~~~~~~
|
|
|
|
External utilities
|
|
++++++++++++++++++
|
|
|
|
* JSignPdf: © Josef Cacek - License `MPL <http://www.mozilla.org/MPL>`__ or `LGPL2 <http://www.gnu.org/licenses/old-licenses/lgpl-2.0.html>`__ - http://jsignpdf.sourceforge.net/
|
|
|
|
Icon
|
|
++++
|
|
|
|
`Created by Anton Noskov from the Noun Project <https://thenounproject.com/search/?q=signed+contract&i=65694>`__
|
|
|
|
Maintainers
|
|
~~~~~~~~~~~
|
|
|
|
This module is maintained by the OCA.
|
|
|
|
.. image:: https://odoo-community.org/logo.png
|
|
:alt: Odoo Community Association
|
|
:target: https://odoo-community.org
|
|
|
|
OCA, or the Odoo Community Association, is a nonprofit organization whose
|
|
mission is to support the collaborative development of Odoo features and
|
|
promote its widespread use.
|
|
|
|
This module is part of the `OCA/reporting-engine <https://github.com/OCA/reporting-engine/tree/14.0/report_qweb_signer>`_ project on GitHub.
|
|
|
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. |