Ir al contenido
Menú
Se marcó esta pregunta
1 Responder
5535 Vistas

I would like to run a pentaho report from a button within a form view (openERP 7.0).  Are there any examples out there of this so I can get an idea of what steps should be taken? i.e. what actions should be created and what should be placed in the xml and py files. 

Avatar
Descartar
Mejor respuesta

In your XML View definition put:

<button name=print_report" string="Print" type="object">

In your class definition add a new method:

    def print_report(self, cr, uid, ids, context=None): 
        return { 'type': 'ir.actions.report.xml', 'report_name': 'my.report.name',
             'nodestroy' : True
        }

Your report action XML should be like:

		<record id="my_report" model="ir.actions.report.xml">
			<field name="name">my report name</field>
			<field name="report_name">my.report.name</field>
			<field name="model">report.model</field>
			<field name="auto" eval="False"/>
                        <field name="is_pentaho_report" eval="True"/> <field name="pentaho_report_model_id" ref="module.model_report_model"/> <field name="pentaho_report_output_type">pdf</field> <field name="pentaho_filename">module/report/my_report.prpt</field> <field name="pentaho_load_file" eval="True"/> </record

Button @name and print method should have the same name

Also report_name should be the same in method and report action XML

Be very careful setting pentaho_report_model_id. Format is: module name with no spaces + ".model_" + report model with dots converted to underscores

Avatar
Descartar
Autor

This worked for me fine. Once minor amendment to the xml view -

Publicaciones relacionadas Respuestas Vistas Actividad
2
abr 16
10839
0
mar 15
3358
0
mar 15
3079
1
oct 22
5607
0
sept 15
5670