OCA reporting engine fork for dev and update.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

145 lines
5.2 KiB

  1. ===========
  2. XML Reports
  3. ===========
  4. .. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  5. !! This file is generated by oca-gen-addon-readme !!
  6. !! changes will be overwritten. !!
  7. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  8. .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
  9. :target: https://odoo-community.org/page/development-status
  10. :alt: Beta
  11. .. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
  12. :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
  13. :alt: License: AGPL-3
  14. .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Freporting--engine-lightgray.png?logo=github
  15. :target: https://github.com/OCA/reporting-engine/tree/14.0/report_xml
  16. :alt: OCA/reporting-engine
  17. .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
  18. :target: https://translation.odoo-community.org/projects/reporting-engine-14-0/reporting-engine-14-0-report_xml
  19. :alt: Translate me on Weblate
  20. .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
  21. :target: https://runbot.odoo-community.org/runbot/143/14.0
  22. :alt: Try me on Runbot
  23. |badge1| |badge2| |badge3| |badge4| |badge5|
  24. This module was written to extend the functionality of the reporting engine to
  25. support XML reports and allow modules to generate them by code or by QWeb
  26. templates.
  27. **Table of contents**
  28. .. contents::
  29. :local:
  30. Installation
  31. ============
  32. To install this module, you need to:
  33. * Install lxml_ in Odoo's ``$PYTHONPATH``.
  34. * Install the repository `reporting-engine`_.
  35. But this module does nothing for the end user by itself, so if you have it
  36. installed it's probably because there is another module that depends on it.
  37. .. _reporting-engine: https://github.com/OCA/reporting-engine
  38. .. _lxml: http://lxml.de/
  39. Usage
  40. =====
  41. This module is intended as a base engine for other modules to use it, so no direct result if you are a user.
  42. If you are a developer
  43. ~~~~~~~~~~~~~~~~~~~~~~
  44. To learn from an example, just check the `demo report`_ on GitHub for
  45. the model ``res.company`` or check it in interface from companies views.
  46. To develop with this module, you need to:
  47. * Create a module.
  48. * Make it depend on this one.
  49. * Follow `instructions to create reports`_ having in mind that the
  50. ``report_type`` field in your ``ir.actions.report`` record must be
  51. ``qweb-xml``.
  52. In case you want to create a `custom report`_, the instructions remain the same
  53. as for HTML reports, and the method that you must override is also called
  54. ``_get_report_values``, even when this time you are creating a XML report.
  55. You can make your custom report inherit ``report.report_xml.abstract``, name
  56. it in such way ``report.<module.report_name>``. Also you can add a XSD file for
  57. report validation into ``xsd_schema`` field of your report (check
  58. `report definition`_) and have XSD automatic checking for
  59. free.
  60. You can customize rendering process and validation way via changing logic of
  61. ``generate_report`` and ``validate_report`` methods in your report class.
  62. You can visit ``http://<server-address>/report/xml/<module.report_name>/<ids>``
  63. to see your XML report online as a web page.
  64. For further information, please visit:
  65. * https://www.odoo.com/forum/help-1
  66. * https://github.com/OCA/reporting-engine
  67. .. _custom report: https://www.odoo.com/documentation/13.0/reference/reports.html#custom-reports
  68. .. _instructions to create reports: https://www.odoo.com/documentation/13.0/reference/reports.html
  69. .. _demo report: https://github.com/OCA/reporting-engine/blob/13.0/report_xml/demo/demo_report.xml
  70. .. _report definition: https://github.com/OCA/reporting-engine/blob/13.0/report_xml/demo/report.xml
  71. Bug Tracker
  72. ===========
  73. Bugs are tracked on `GitHub Issues <https://github.com/OCA/reporting-engine/issues>`_.
  74. In case of trouble, please check there if your issue has already been reported.
  75. If you spotted it first, help us smashing it by providing a detailed and welcomed
  76. `feedback <https://github.com/OCA/reporting-engine/issues/new?body=module:%20report_xml%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
  77. Do not contact contributors directly about support or help with technical issues.
  78. Credits
  79. =======
  80. Authors
  81. ~~~~~~~
  82. * Tecnativa
  83. * Avoin.Systems
  84. Contributors
  85. ~~~~~~~~~~~~
  86. * Enric Tobella <etobella@creublanca.es>
  87. * `Tecnativa <https://www.tecnativa.com>`_:
  88. * Jairo Llopis
  89. * `Avoin.Systems <https://avoin.systems/>`_:
  90. * Tatiana Deribina
  91. * Iván Antón <ozono@ozonomultimedia.com>
  92. Other credits
  93. ~~~~~~~~~~~~~
  94. * Icon taken from http://commons.wikimedia.org/wiki/File:Text-xml.svg
  95. Maintainers
  96. ~~~~~~~~~~~
  97. This module is maintained by the OCA.
  98. .. image:: https://odoo-community.org/logo.png
  99. :alt: Odoo Community Association
  100. :target: https://odoo-community.org
  101. OCA, or the Odoo Community Association, is a nonprofit organization whose
  102. mission is to support the collaborative development of Odoo features and
  103. promote its widespread use.
  104. This module is part of the `OCA/reporting-engine <https://github.com/OCA/reporting-engine/tree/14.0/report_xml>`_ project on GitHub.
  105. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.