Report Generator
by Alessandro Gessa http://www.bootando.com , Bootando http://www.bootando.com$ 153.72
Lines of code | 756 |
Technical Name |
report_generator |
License | LGPL-3 |
Website | http://www.bootando.com |
Lines of code | 756 |
Technical Name |
report_generator |
License | LGPL-3 |
Website | http://www.bootando.com |
Description
This module allows to generate PDF reports based on your models without using QWeb
or wkhtmltopdf
.
Usage
Once you finished your installation, you must create your first template.
Access Settings -> Technical Features -> Actions -> Report Generator
Set up your template by providing a name, a code reference (for eg. report.template.partner.contract)
Provide a starting PDF template and choose your reference model where Report Generator will fetch data dynamically.

Labels
Set up your customizations providing X, Y coordinates for each label and finish styling them changing colours, font families and font sizes.
code
field will be the processed value being printed in your report at your coordinates.
It is a Python field, you can use strings, functions or a record instance using record
.

Server Actions
Report Generator creates server actions for you to guarantee a completely no-code experience.
This does not means you won't be able to use your reports in your custom modules.
Don't forget to press Create Contextual Action to make it visible in your model actions.

Customizable Fonts
This module automatically imports system and pip ttf fonts.
You can also import your custom .TTF files in Settings -> Technical Features -> Actions -> Report Font

Integration
If you wish to integrate Report Generator in your custom modules, you can use generate_report
method.
All you need is your report identifier referience, for eg. report.template.partner.contract.
self.env['reportgenerator.report'].get_report('report.template.partner.contract').generate_report(record.id)
A base64 encoded string pdf will be returned.
Final Output

You're done!
If you encounter any problem with this module please contact us on the following email address: alessandro@gessa.net.
Please log in to comment on this module