-
Notifications
You must be signed in to change notification settings - Fork 25
/
report_aeroo.xml
90 lines (83 loc) · 4.35 KB
/
report_aeroo.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<?xml version="1.0" encoding="utf-8"?>
<!--
© 2018 Akretion (Alexis de Lattre <[email protected]>)
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
-->
<odoo>
<data>
<!-- pour remplacer un rapport existant -->
<record id="sale.report_sale_order" model="ir.actions.report.xml">
<field name="report_type">aeroo</field>
<field name="in_format">oo-odt</field>
<!-- available in formats :
oo-odt
oo-ods
genshi-raw
-->
<field name="report_rml">report_aeroo_sale/report/quotation.odt</field>
<field name="parser_state">default</field> <!-- 'default' par défaut, mais il faut quand même le mettre -->
<!-- si parseur : parser_state=loc et ajouter
<field name="parser_loc">nom_du_module/report/proforma_invoice.py</field>
-->
<field name="tml_source">file</field> <!-- database (default), file ou parser -->
<field name="multi" eval="0"/> <!-- ATTENTION: Si False, le rapport est accessible en vue form ET liste ; Si True, le rapport est UNIQUEMENT accessible en vue liste. Dans les 2 cas, si on veut que le rapport soit multi-recordset, il faut commencer par <for each="o in objects"> -->
<field name="out_format" ref="report_aeroo_ooo.report_mimetypes_pdf_odt"/>
<!-- available output formats :
report_aeroo.report_mimetypes_odt_odt
report_aeroo.report_mimetypes_ods_ods
report_aeroo.report_mimetypes_raw
v8 only
report_aeroo.report_mimetypes_pdf_odt
report_aeroo.report_mimetypes_pdf_ods
report_aeroo.report_mimetypes_doc_odt
report_aeroo.report_mimetypes_xls_odt (petite erreur de XMLID, la logique serait plutôt _xls_ods)
report_aeroo.report_mimetypes_csv_ods
v7 only
report_aeroo_ooo.report_mimetypes_pdf_odt
report_aeroo_ooo.report_mimetypes_pdf_ods
report_aeroo_ooo.report_mimetypes_doc_odt
report_aeroo_ooo.report_mimetypes_xls_odt
report_aeroo_ooo.report_mimetypes_csv_ods
-->
<field name="content_fname">txt</field> <!-- override extension -->
<field name="charset">cp1252</field> <!-- for raw files -->
<field name="fallback_false" eval="0"/> <!-- Si 1, désactive le fallback sur le rapport ODT si la conversion PDF ne marche pas. False par défaut -->
<field name="attachment">(object.state in ('draft','sent')) and ('%s_%s.pdf' %((object.name or ''), time.strftime('%Y-%m-%d_%Hh%M')))</field> <!-- False par défaut -->
<field name="attachment_use" eval="0"/> <!-- False par défault -->
<field name="styles_mode">default</field> <!-- 'default' par défaut. Autres valeurs possibles : global et specified -->
<field name="copies">2</field> <!-- Number of copies -->
</record>
<!-- The Proforma report uses the SAME report as the Quotation -->
<record id="report_proforma" model="ir.actions.report.xml">
<field name="name">Pro Forma</field>
<field name="model">sale.order</field>
<field name="report_name">sale.proforma</field>
<field name="report_type">aeroo</field>
<field name="in_format">oo-odt</field>
<field name="report_rml">report_aeroo_sale/quotation.odt</field>
<field name="parser_state">default</field>
<field name="tml_source">file</field>
<field name="multi" eval="0"/>
<field name="out_format" ref="report_aeroo.report_mimetypes_odt_odt"/>
<field name="fallback_false" eval="0"/>
<field name="attachment_use" eval="0"/>
<field name="download_filename">Akretion-proforma-${o.name}.pdf</field>
</record>
<record id="proforma_button_sale_order_form" model="ir.ui.view">
<field name="name">proforma_button_sale_order_form</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<button name="print_quotation" position="after">
<button name="%(report_proforma)d" string="Print Pro Forma" type="action" groups="base.group_user"/>
</button>
</field>
</record>
<record id="button_report_proforma" model="ir.values"> <!-- Add print button -->
<field name="key2">client_print_multi</field>
<field name="model">sale.order</field>
<field name="name">Pro Forma</field> <!-- ce qui apparaît dans la liste déroulante 'Print' n'est pas ce champ mais le "name" du ir.actions.report.xml -->
<field name="value" eval="'ir.actions.report.xml,%d'%report_proforma" />
</record>
</data>
</odoo>