报表设计器使用手册Word下载.docx
- 文档编号:22632913
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:12
- 大小:318.11KB
报表设计器使用手册Word下载.docx
《报表设计器使用手册Word下载.docx》由会员分享,可在线阅读,更多相关《报表设计器使用手册Word下载.docx(12页珍藏版)》请在冰豆网上搜索。
新编制
文档状态标识:
C–CreatedA–AddedM–ModifiedD–Deleted
阅读指南
人员/部门
建议阅读内容
1.概述
我们选择了目前市场上非常流行的一款报表系统FastReport来开发我们的报表模块,其报表设计器的图形化界面做的非常精置,较典型的控件拖放的设计模式,其支持的页面类型比较多,基本能实现您想要的所有报表风格。
包括统计图的支持,和脚本的支持等。
为适应我们的系统我们对其进行了一些精减和相应的开发,由于FastReport功能比较强大,有些功能我也不是完全了解,在这里我只讲述在KBSS系统中我经常使用的元素,以及我为适应KBSS系统对FastReport所做改动的部分(需要按照我具体的规则来配置相应的报表元素)
我们可以通过两种方式来编辑报表模板
1、通过rdsigner.exe程序直接打开模板
2、通过KBSS_Client前端打开具体的功能点,当调出打印框时,按设计按纽。
第二种方法可以看到具体的数据(最右边变量选项卡和数据选项卡)将会列出所有可配的数据集变量和普通变量
第一种方法与具体数据脱离,看不到相应的变量,(具体变量名称)需要资询开发人员
2.如何新建一个报表
我们提供了一个名为rdsigner.exe的执行程序,双击它就能打开我们的报表设计器,通过文件菜单下的新建或新建报表就可以新建一个报表。
在新建里有有多个项目,如下图:
我们一般使用两种项目(标准报表和标准报表向导)
1、标准报表会为你自动创建一个新页,但里面没有任何报表元素。
2、标准报表向导会创建一个新页并在此页为你创建四个元素(报表标题控件,报表页头控件,报表主数据控件,页尾控件)。
如下图
3.报表控件元素
上图最左边的一列小图标就是报表的所有控件元素,我们可以通过鼠标拖动的方式将这些元素拖动到页的指定位置,如上图就有四个控件。
我在下面着重介绍几个重要的控件。
(注:
我们首先要新建一页才能操作这些控件)
3.1报表页
在介绍控件元素前我们首先说一下报表页,因为所有控件元素都要放到报表页中,如上图中的Page1就是报表页,我们可以通过文建菜单中的新建页或工具栏的快捷按纽创建,在第二章中会自动创建一页。
当报表页里面放了Band控件(3.5节介绍),如果里面关联了数据集(有多条数据),在打印时一页放不下,它会自动创建新页显示完数据。
页属性(上图左下区域的属性选项卡),这些属性会有一些默认值。
如
PaperSize会默认为A4(代表A4纸大小)
Orientation:
poPortrait(竖打),poLandscape(横打)默认竖打等
你可以根据需要来设置这些属性
3.2文本控件
1、配置方法
这个控件是我们最常使用的,它有几种配置方法
●简单文本:
直接收入你要的字符串如:
用户姓名
●变量:
用[]括起来如:
[USER_NAM]
●数据集变量:
[CSDB+数据集名.”变量名”]如:
[CSDBagPrintCloseTrdAcct."
SZ_A"
]
数据集变量要与Band控件配合使用,一般用于有多条数据的时候
变量名和数据集名由开发人员提供)
2、重要属性
Align(排列):
通过改这个属性可以使该控件排列在左中右底和客户区排放
CharSpacing:
这个属性在套打时比较有用,是字符之间的间隔,如下图
Frame(边框):
通过这个属性来改变边框,也可以直接通过工具栏来改变如下图:
3.3条码控件
1、主要属性:
BarType(条码类型):
默认为Code39条码
Text(条码文本):
你要显示的条款文本
2、配置方法
在平安的规定条码中有些是固定的,有些是根据某种规则动态生成的
固定:
直接把相应的条码文本写到Text属性中
动态生成:
需要写相应脚本,先选中条码控件,在事件选项卡中双击OnBeforePrint事件,会自动在代码选项卡中生成一段代码如;
procedureBarCode1OnBeforePrint(Sender:
TfrxComponent);
begin
end;
我们在里面加入如下代码
BarCode1.Text:
=VartoStr(<
BAR_CODE_NO>
);
其中BarCode1是条码控件Name属性对应的名字
BAR_CODE_NO是变量名,这个变量名由开发人员提供
3.4复选框控件
复选框控件主要用于套打的情况,需要通过脚本来支持
1、主要属性:
Checked(是否选中):
True选中False:
不选中
CheckStyle(样式):
csCheck打钩csCross打小叉csLineCorss打大叉csPlus十字
先将Checked属性置为False;
然后单击Page1(有可能你的页的名字不是page1)
选中事件选项卡,双击OnBeforePrint事件,相应会在代码选项卡中生成如下代码,红色代码是手动加进去的
procedurePage1OnBeforePrint(Sender:
if<
STK_SH_A_NEWOPEN>
='
1'
then
begin
CheckBox1.Checked:
=True;
end;
其中if<
then是判断条件,这里不一定是正确的根据什么来判断由开发人员决定CheckBox1是复选框控件的Name
3.5Band控件
Band控件里面包括多种控件,其中有ReportTitle(报表标题栏),PageHeader(页头栏),PageFooter(页尾栏),Header(主数据头),MasterData(主数据),Footer(主数据尾)等,这几个是我们较常用的,其它的不在详述
Band其实是个母控件,您可以在里面放一些其它的控件如文本控件,每个Band控件位置是固定的。
3.5.1ReporTitle(报表标题栏)
每一页可以放一个ReportTitle控件,它会顶在一页的最前面,一般用做放标题,我们可以拖一个文本控件到其中,在文本控件中输入你要的标题及可
3.5.2PageHeader(页头栏)和PageFooter(页尾栏)
PageHeader会自动放在ReporTitle(如果有的话)的后面,其它控件的前面,充当一个页的页头,如果该页里面有MasterData控件的话,当一页显示不完在后续的页里面也会存在该页头(只包括该页自已打印时显示不完自动创建的页,不包括在设计器里面创建的其它页)。
PageFooter与PageHeader相对应充当一个页的页尾,它和页头一样在打印时默认是会在其自动创建的后续页中也会显示这个页尾。
PageFooter主要属性
PrintOnFirstPrint:
True在第一页中打印False在第一页中不打印
PrintOnLastPrint:
True在最后一页中打印False在最后一页中不打印
一般页头和页尾会放一些系统变量(如当前时间,当前页号等)
例:
我们可以拖动一个文本控件放到页尾栏控件中,然后双击文本控件在里面输入Page[Page#],其中Page是一个文本串后面的[Page#]是一个系统变量,它的意思代表当前页的页号,然后把文本控件的Align属性置为baRight,这个文本控件就会排列在页尾栏的最右面,这样在打印时,每页的页尾就会出现该页的页号,不妨你可以试一下
小技巧:
如果在打印时一页显示不完,页尾会自动存在后续页中,如果你现在只想该页尾只在最后一页中显示,而在其它页中不显示,你可以按照下面的步骤来配置
1、首先你拖一个PageFooter控件到页中,该PageFooter控件的Name属性为PageFooter1,并将其Visible属性置为False;
2、双击PageFooter1的OnbeforePrint事件,在代码选项卡中会出现下面的代码,红色的代码是要你手动加进去的
procedurePageFooter1OnBeforePrint(Sender:
if<
Page>
=<
TotalPages>
PageFooter1.Visible:
3、
在上图区域中选中Report,然后将其EngineOptions属性中的DoublePass置为Ture;
4、按上面步骤操作后,在打印时PageFooter1控年只会显示在最后一页中。
3.5.3Header(主数据头),MasterData(主数据),Footer(主数据尾)
Header,MasterData,Footer这三个控件是相互对应的。
Header一般放主数据的标题,MasterData是真正的数据,Footer是主数据尾。
MasterData只能与最近的一个Header和Footer对应,MasterData一般存在一个数据集(一般是指存在多条数据的集合),里面会配数据集变量。
如下图所示
上图中,MasterData控件里面都是放了文本控件(文本控件里面配置了数据集变量,参考3.2节),里面的文本控件需要对齐,如果需要边框的话可以增加边框。
注意:
文本控件到它的包含它的MasterData底的间距是在打印时每条数据之间的间距,最好将文本控件的底与MasterData的底重合。
另外MasterData属性Name必须为MasterData+数据集名,数据集名由开发人员提供
小知识:
我们可以通过快捷键来改变控件的大小,和移动
选中一个控件,按
Shift+向上箭头减小控件高度
Shift+向下箭头增大控件高度
Shift+向左箭头减小控件宽度
Shift+向右箭头增大控件宽度
Ctrl+向上箭头向上移动
Ctrl+向下箭头向下移动
Ctrl+向左箭头向左移动
Ctrl+向右箭头向右移动
一下调整一个幅度
4.脚本
FastReport支持PascalScript,C++Script,BasicScript,Jscript四种脚本,我们在前面所用的都是PascalScript,如果你熟悉其它脚本语言的话你可以使用其它的脚本。
事件脚本需要双击具体事件生成,然后在点击代码选项卡,输入你需执行的语句,您可以通过系统变量(我增加了IntOrgName(当前机构名),OperCode(操作员代码),OperName(操作员名)等系统变量)和函数,和类来补助
5.示例
我们主要是通过文本控件来显示数据,我们以两个示例来说明
示例1:
把文本控件拖到指定位置,按你的需要再文本控件填入字符串,或变量(参考3.2节)
示例2(这种是具有数据集的)
我们将主数据头栏和主数据栏控件拖到指定位置,然后再拖相应的文本控件到这些栏中,双击文本控件输入标题字符串或数据集变量。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 报表 设计 使用手册