ODOO 8 – Editions Qweb – Suppression entête (9/9)

Il est parfois utile de supprimer l'entête (par exemple, avoir une entête uniquement sur la 1ère page).
Pour cela, il faut modifier le fichier x_sale_report.xml :

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data>
        <template id="x_header" inherit_id="report.external_layout_header">
            <xpath expr="//div[@class='header']" position="replace" />

        </template>

        <!-- etc ... -->

    </data>
</openerp>

Il faut ensuite créer un nouveau fichier x_report_paperformat.xml, en se basant sur le fichier par défaut odoo/addons/report/data/report_paperformat.xml et en modifiant les 2 lignes en gras ci-dessous :

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data>
        <record id="paperformat_xxx" model="report.paperformat">
            <field name="name">A4 xxx</field>
            <field name="default" eval="True" />
            <field name="format">A4</field>
            <field name="page_height">0</field>
            <field name="page_width">0</field>
            <field name="orientation">Portrait</field>
            <field name="margin_top">5</field>
            <field name="margin_bottom">23</field>
            <field name="margin_left">7</field>
            <field name="margin_right">7</field>
            <field name="header_line" eval="False" />
            <field name="header_spacing">0</field>
            <field name="dpi">90</field>
        </record>
    </data>
</openerp>

puis ajouter dans le fichier __openerp__.py , la référence à ce fichier (cf en gras) :
{
    "name" : "Customization Sale Report",
    "version" : "1.0",
    "category" : "Generic Modules",
    'depends' : ['sale',],
    "data" : ['x_sale_report.xml','x_report_paperformat.xml',],
    "installable": True,
    "active": True
}

Pour terminer, il faut modifier la configuration de la société en affectant au champ "paper format", la nouvelle valeur créée "A4 xxx"

 

9 réflexions au sujet de « ODOO 8 – Editions Qweb – Suppression entête (9/9) »

    1. Le principe est de supprimer définitivement l'entête et de mettre son contenu uniquement dans le corps de la 1ère page du rapport (balise * div class="page" *)

  1. Bonjour,
    lorsque j'essaie d'applique votre méthode pour créer un nouveau format de papier, j'ai le message d'erreur suivant
    ———————————–
    ParseError: "report.paperformat" while parsing /usr/lib/python2.7/site-packages/openerp/custom-addons/osconseils/x_report_paperformat.xml:4, near

    A4 xxx

    A4
    0
    0
    Portrait
    5
    23
    7
    7

    0
    90

    ———————————–
    Auriez-vous un conseil ?

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *