Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
1 Balas
14112 Tampilan

Hi,

I try to extend res.company model in order to allow upload of a PNG image, and integrate it in generated report as header.

Here is my code, but I get an blank header, and can't figure out why.


My views for company configuration :

<record model="ir.ui.view" id="cap_company">

<field name="name">cap_company_form</field>

<field name="model">res.company</field>

<field name="inherit_id" ref="base.view_company_form" />

<field name="arch" type="xml">

<xpath expr="//page[@string='Report Configuration']/group" position="before">

<group string="Configuration Header">

<field name="document_header_png" />

</group>

</xpath>

</field>

</record>


My layout extension :

<template id="report_header_custom" inherit_id="report.external_layout_header">

<xpath expr="//div[@class='header']/div[@class='row']/div[@class='col-xs-3']" position="replace">

<div class="col-xs-3">

<img t-if="company.document_header_png" t-att-src="'data:image/png;base64,%s' % company.document_header_png" style="max-height: 45px;"/>

</div>

</xpath>

</template>


My model :

class company(osv.osv):

_inherit = 'res.company'

_columns = {

'document_header_png': fields.binary("Header PNG",),

}


And I double checkd my __openerp__.py which effectively have :


"depends": ["base", "report",],

"data": ['reports/external_layouts.xml','views/company.xml'


Thank you for your help     

Avatar
Buang
Jawaban Terbai

Have you tried by simply putting the image file in static folder and giving its path. Please check whether it works. If yes, we can correct this. Also I don't think you need alter views for company configuration. Just need to inherit and override the report_layout_header like you did. You want to have the change in all reports? anyway first you just try by simply putting the image in static folder. Also check your "wkhtmltopdf" versions are correct. I have did overriding the report headers with images and worked.

Eg:


<template id="report_header_custom" inherit_id="report.external_layout_header">

<xpath expr="//div[@class='header']/div[@class='row']/div[@class='col-xs-3']" position="replace">

<div class="col-xs-3">

<img src='/your_module/static/img/header.png' style="max-height: 45px;"/>

</div>

</xpath>

</template>

Avatar
Buang
Penulis

Thanks, I finally achieve to do it following your recomendations

Post Terkait Replies Tampilan Aktivitas
8
Jun 16
23223
1
Apr 25
1269
2
Mar 25
1454
4
Nov 24
7131
1
Mar 24
2064