OpenERP报表浅析

来源:互联网 发布:淘宝刷欢乐豆原理 编辑:程序博客网 时间:2024/06/05 20:22

OpenERP主要有三种类型的报表:

1. OpenOffice.org报表

2. XML报表

3. 自定义报表(基于PostgreSQL视图,显示在界面上)

这一部分主要描述OpenOffice.org报表。

1.   基于OpenOffice模版的报表开发方式

1.1 OpenOffice.org报表

OpenOffice.org是OpenERP中最常用的报表格式。OpenOffice.org Writer被用来生成RML模板(生成方法见下节),而RML模板用来生成pdf报表。

 

1.2 报表开发

1. 新建dl_vehicle_management/dl_vehicle_report.xml文件


这里通过<report>标签添加一个报表记录到系统,也就是添加一条ir.actions.report.xml记录。

id:为本报表的id,同一个模块里必须唯一;

name:报表名字,可以根据自己需要自定义;

model:报表对应的模型;

rml:报表rml文件路径;

string:报表按钮名字;

header:是否在本报表中显示公司统一的表头和表尾;

auto:是否利用缺省方法分析.RML文件。

2. 修改dl_vehicle_management/__openerp__.py文件


3.     新增dl_vehicle_management/report/文件夹

包含__init__.py,dl_vehicle_report.py和dl_vehicle_report.rml三个文件,


4. 编辑__init__.py文件

 

引入dl_vehicle_report.py文件。

5. 编辑dl_vehicle_report.py文件


Rpt_dl_vehicle_management方法是固定的,只需要修改方法名。

report_sxw.report_sxw参数分别为:

l  报表名称('report.' + 'xml中定义的name')

l  报表使用的对象模型

l  rml文件路径addons/

l  报表提取方法,即为报表分析器的class名

l  是否增加公司表头

6. dl_vehicle_report.rml文件

模版文件,该文件可以通过OpenOffice进行图形化制作并生成。后面会详细介绍。

2.   OpenOffice制作RML文件

2.1软件/插件安装

1. 安装OpenOffice,下载后安装即可。

2. 安装OPENERP Report Designer

OPENERP Report Designer是一个OpenOffice的插件。ReportDesigner插件安装方法:

1、打开OpenOffice.org Writer;

2、点击“工具”->“扩展管理器…”;

3、点击“添加”按钮,并选择下载的openerp_report_designer.zip文件(在base_report_designer 模块目录下);

4、关闭OpenOffice.org Writer后重新打开会出现OPENERP Report Designer插件的菜单。

5、配置服务器参数,新建报表,编辑报表可以直接使用模块中定义的参数,完成的报表可以传到服务器。

注:尽量避免直接把报表传到服务器,使用下面的方法制作RML完成报表。

2.2 制作RML文件

OpenERP使用的报表渲染文件*.rml由OpenOffice的*.sxw文件转换而来。

首先通过Openerp report designer插件编辑好报表,然后另存为sxw格式的文件。


然后进入addons/base_report_designer/openerp_sxw2rml/路径下,运行:


成功后会生成对应的rml文件,OpenERP在打印的时候就会根据该文件来作为模版来渲染报表。


3.   测试

1.进入车辆管理模块,点击打印—打印车辆信息,提示保存为PDF文件。


2.打开PDF文件,显示格式如下。其中空白框为汉字没有正常显示导致。


4.   报表汉化解决

之前遇到打印的PDF文档中中文无法正常显示问题,网上已有多种解决方案。

1.安装第三方模块oecn_base_fonts

从网上下载oecn_base_fonts模块并安装,可以解决中文打印的问题。


2.Odoo8.0版本自带汉化功能

设置—常规设置—Report Font,选择打印字体(列出操作系统中已安装字体,如果没有则需要安装中文字体)。

注:该解决方法暂未测试。


 

0 0
原创粉丝点击