mirror of
https://github.com/bringout/oca-report.git
synced 2026-04-18 03:22:00 +02:00
bi_sql_editor 19.0.1.0.1, report_csv 19.0.1.0.0,
report_qweb_element_page_visibility 19.0.1.0.0,
report_xlsx_helper 19.0.1.0.0, report_xml 19.0.1.0.0,
sql_request_abstract 19.0.1.0.0
🤖 assisted by claude
150 lines
4.9 KiB
ReStructuredText
150 lines
4.9 KiB
ReStructuredText
.. image:: https://odoo-community.org/readme-banner-image
|
|
:target: https://odoo-community.org/get-involved?utm_source=readme
|
|
:alt: Odoo Community Association
|
|
|
|
===============
|
|
Base report csv
|
|
===============
|
|
|
|
..
|
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
!! This file is generated by oca-gen-addon-readme !!
|
|
!! changes will be overwritten. !!
|
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
!! source digest: sha256:d1c3c4d459b6b087099930f6fa7a1626300259aa06098906b5e428b9e556dd28
|
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
|
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
|
|
:target: https://odoo-community.org/page/development-status
|
|
:alt: Production/Stable
|
|
.. |badge2| image:: https://img.shields.io/badge/license-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/19.0/report_csv
|
|
: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-19-0/reporting-engine-19-0-report_csv
|
|
:alt: Translate me on Weblate
|
|
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
|
|
:target: https://runboat.odoo-community.org/builds?repo=OCA/reporting-engine&target_branch=19.0
|
|
:alt: Try me on Runboat
|
|
|
|
|badge1| |badge2| |badge3| |badge4| |badge5|
|
|
|
|
This module provides a basic report class to generate csv report.
|
|
|
|
**Table of contents**
|
|
|
|
.. contents::
|
|
:local:
|
|
|
|
Configuration
|
|
=============
|
|
|
|
In case the exported CSV report should be encoded in another system than
|
|
UTF-8, following fields of the report record (*Settings > Technical >
|
|
Reports*) should be populated accordingly.
|
|
|
|
- Encoding: set an encoding system (such as cp932)
|
|
- Encode Error Handling: select 'Ignore' or 'Replace' as necessary.
|
|
|
|
- 'Ignore': in case of an encoding error, the problematic character
|
|
will be removed from the exported file.
|
|
- 'Replace': in case of an encoding error, the problematic character
|
|
will be replaced with '?' symbol.
|
|
- Leaving the field blank: in case of an encoding error, the report
|
|
generation fails with an error message.
|
|
|
|
Usage
|
|
=====
|
|
|
|
An example of CSV report for partners on a module called
|
|
\`module_name\`:
|
|
|
|
A python class :
|
|
|
|
::
|
|
|
|
from odoo import models
|
|
|
|
class PartnerCSV(models.AbstractModel):
|
|
_name = 'report.report_csv.partner_csv'
|
|
_inherit = 'report.report_csv.abstract'
|
|
|
|
def generate_csv_report(self, writer, data, partners):
|
|
writer.writeheader()
|
|
for obj in partners:
|
|
writer.writerow({
|
|
'name': obj.name,
|
|
'email': obj.email,
|
|
})
|
|
|
|
def csv_report_options(self):
|
|
res = super().csv_report_options()
|
|
res['fieldnames'].append('name')
|
|
res['fieldnames'].append('email')
|
|
res['delimiter'] = ';'
|
|
res['quoting'] = csv.QUOTE_ALL
|
|
return res
|
|
|
|
A report XML record :
|
|
|
|
::
|
|
|
|
<report
|
|
id="partner_csv"
|
|
model="res.partner"
|
|
string="Print to CSV"
|
|
report_type="csv"
|
|
name="module_name.report_name"
|
|
file="res_partner"
|
|
attachment_use="False"
|
|
/>
|
|
|
|
Update encoding with an appropriate value (e.g. cp932) as necessary.
|
|
|
|
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 to smash it by providing a detailed and welcomed
|
|
`feedback <https://github.com/OCA/reporting-engine/issues/new?body=module:%20report_csv%0Aversion:%2019.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
|
|
-------
|
|
|
|
* Creu Blanca
|
|
|
|
Contributors
|
|
------------
|
|
|
|
- Enric Tobella <etobella@creublanca.es>
|
|
- Jaime Arroyo <jaime.arroyo@creublanca.es>
|
|
- Rattapong Chokmasermkul <rattapongc@ecosoft.co.th>
|
|
- `Quartile <https://www.quartile.co>`__:
|
|
|
|
- Aung Ko Ko Lin
|
|
|
|
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/19.0/report_csv>`_ project on GitHub.
|
|
|
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|