콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
1 회신
5890 화면

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. 

아바타
취소
베스트 답변

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

아바타
취소
작성자

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

관련 게시물 답글 화면 활동
2
4월 16
11216
0
3월 15
3700
0
3월 15
3351
1
10월 22
5911
0
9월 15
6006