水晶报表初级教程:对比FineReport之报表设计

合集下载

水晶报表入门教程:对比FineReport之报表参数

水晶报表入门教程:对比FineReport之报表参数

水晶报表入门教程:对比FineReport之报表参数水晶报表入门教程:对比FineReport之报表参数水晶报表(crystal report)和FineReport都是很常用的报表工具,这里对比一下它们的报表参数设置功能。

水晶报表参数设置功能如下:参数提示报表用户输入信息。

将参数看作是在报表生成之前用户需要回答的问题。

用户输入的信息或用户响应的方式决定报表的内容。

例如,在销售人员使用的报表中,或许有要求用户选择地区的参数。

该报表将返回特定地区的结果,而不是返回所有地区的结果。

通过在公式、选定公式和报表中使用参数字段,可创建单个报表,并可随时根据需要对其进行修改。

参数字段也可用于子报表。

、创建参数字段1.进行检查以确保报表已在“设计”选项卡中打开。

该过程使用Crystal Reports软件中包含的示例报表Group.rpt。

2.在“视图”菜单上单击“字段资源管理器”。

提示:执行此任务的另一种方法是单击“标准”工具栏上的“字段资源管理器”按钮。

3.出现“字段资源管理器”对话框。

4.选择“参数字段”并单击“新建”。

出现“创建参数字段”对话框。

5.在“名称”字段中输入参数的名称(最多255个字母数字字符)。

本例使用“国家和地区”。

6.在“提示文本”字段中输入想要的提示文本(最多255个字母数字字符)。

这是在刷新报表后,出现在“输入参数值”对话框中的文本。

本示例使用“选择一个国家/地区”。

7.从列表中选择适当的“值类型”。

本示例使用“字符串”。

使用参数字段时,需要注意下列事项:参数字段支持下列数据类型:布尔值:要求回答是/否或true/false。

示例:在摘要中包括计划预算数吗?货币:要求一个美元金额。

示例:显示购买金额超过XXXXX的客户。

日期:要求采用日期格式回答。

示例:输入季度的开始和结束日期。

日期时间:要求日期和时间。

示例:显示07/04/19991:00pm-2:00pm之间的统计。

数字:要求一个数值。

FineReport报表制作流程

FineReport报表制作流程

一般来说,一个完整的报表设计流程,大体分为如下几个步骤:1:打开设计器2:配置数据源3:新建报表4:配置私有数据源5:报表设计6:预览报表7:发布报表第一部分:配置数据源步骤一:新建数据库打开报表设计器,在设计器最上方的菜单栏当中,选择服务器,在该下拉菜单当中选择公有的数据源管理器,弹出一个数据源管理器对话框。

点击该对话框左上角的增加数据源按钮来添加新的数据源。

在这里我们为数据源命名为FRDemo。

用鼠标选中刚刚命名的数据源,右边显示对应的数据源属性编辑面板,共有五项属性:驱动,URL,用户名和密码,以及一个测试数据库连接按钮。

步骤二:设置数据库属性首先设置驱动器,在驱动项中选择sun.jdbc.odbc.JdbcOdbcDriver,然后点击URL文本框旁边的…按钮,系统会根据选择的驱动自动显示对应的URL格式。

将jdbc:odbc:DatabaseName中的DatabaseName换成正在使用的数据库的名字:FRDemo,即jdbc:odbc:FRDemo。

由于FRDemo并未设置用户名和密码,因此这两项属性留空。

点击测试连接按钮,系统弹出连接成功的消息框表明数据库连接成功。

如果您的数据库并非Microsoft Access数据库,请根据您原有数据源选择其数据源驱动器。

因为URL是根据您的数据源类型来设定的,单击后面的按钮则生成URL的对应模本,如您的数据库是Mysql,那么在驱动程序框中选择“org.gjt.mm.mysql.Driver”,对应可以生成URL 为“jdbc:mysql://localhost/DatabaseName”,将DataBaseName更换成您的数据库名字。

下面依次填写您数据库的用户名和密码,如没有则留空。

配置完成后选择下面的“测试链接”,如链接成功则可以进入下一个步骤。

如非本地数据源请将其中的localhost换成数据库的IP;如在local后有“:”则将“:”后的数字改为对应的网络服务器端口即可。

水晶报表的基本操作

水晶报表的基本操作

水晶报表的基本操作一.配置ODBC1.打开控制面板,双击管理工具2. 在管理工具页面,双击数据源(ODBC)3. 在打开的数据源页面,点击添加按钮4. 会出现如下页面,找到相应的数据库类型,双击打开。

5. 以oracle 10g 为例,出现如下页面。

以图示步骤,先填写DB信息,完成后点击Test,测试是否连通。

连通后,点击OK6. 点击Finsh完成配置。

二.修改水晶报表模板文件1.为模板文件添加数据源1)双击打开模板文件,在Field Explorer窗口右击Data Field,选择Database Expert,打开如下窗口。

2)点击ODBC,会打开如下窗口。

3)选择已经配置的数据源,点击Finsh。

2.修改模板文件的数据源1)双击打开模板文件,在Field Explorer窗口右击Data Field,选择Set Datasource Location,打开如下窗口2)在Replace with对话框中选择新的数据源,点击update。

会弹出如下窗口3)填写一个Job_id(如果不知道,要随便填一数字),点击OK。

3.在模板文件中添加数据行1)在Design窗口最左侧的数据行的title上右击,选择Insert Section Below会在当前section下插入一行section。

2)在新加入的行中右击,选择Insert Text Object将插入一个文本对象。

在此Section的空白处点击,即可插入。

3)此时可从Field Explorer窗口中拖拽字段放入Text Object注意:添加的Section行是不会产生横线的,如果需要,选择划线工具,画出一条横线。

4.修改模板文件中的字段显示格式1)在数据字段上右击,点击Format Field,可在出现的对话框中,去控制格式。

如果需要变更显示内容,可点击common选项卡。

在Display String一行中点击后方的按钮,可在出现的对话框中用VB脚本控制显示。

FineReport报表软件设计流程及步骤

FineReport报表软件设计流程及步骤

FineReport报表软件设计流程及步骤一般来说,一个完整的报表设计流程,大体分为如下几个步骤:1:打开设计器2:配置数据源3:新建报表4:配置私有数据源5:报表设计6:预览报表7:发布报表第一部分:配置数据源步骤一:新建数据库打开报表设计器,在设计器最上方的菜单栏当中,选择服务器,在该下拉菜单当中选择公有的数据源管理器,弹出一个数据源管理器对话框。

点击该对话框左上角的增加数据源按钮来添加新的数据源。

在这里我们为数据源命名为FRDemo。

用鼠标选中刚刚命名的数据源,右边显示对应的数据源属性编辑面板,共有五项属性:驱动,URL,用户名和密码,以及一个测试数据库连接按钮。

步骤二:设置数据库属性首先设置驱动器,在驱动项中选择sun.jdbc.odbc.JdbcOdbcDriver,然后点击URL文本框旁边的…按钮,系统会根据选择的驱动自动显示对应的URL格式。

将jdbc:odbc:DatabaseName中的DatabaseName换成正在使用的数据库的名字:FRDemo,即jdbc:odbc:FRDemo。

由于FRDemo并未设置用户名和密码,因此这两项属性留空。

点击测试连接按钮,系统弹出连接成功的消息框表明数据库连接成功。

如果您的数据库并非Microsoft Access数据库,请根据您原有数据源选择其数据源驱动器。

因为URL是根据您的数据源类型来设定的,单击后面的按钮则生成URL的对应模本,如您的数据库是Mysql,那么在驱动程序框中选择“org.gjt.mm.mysql.Driver”,对应可以生成URL 为“jdbc:mysql://localhost/DatabaseName”,将DataBaseName更换成您的数据库名字。

下面依次填写您数据库的用户名和密码,如没有则留空。

配置完成后选择下面的“测试链接”,如链接成功则可以进入下一个步骤。

如非本地数据源请将其中的localhost换成数据库的IP;如在local后有“:”则将“:”后的数字改为对应的网络服务器端口即可。

类excel报表开发工具FineReport教程之表单设计

类excel报表开发工具FineReport教程之表单设计

类excel报表开发工具FineReport教程之表单设计类excel报表开发工具FineReport教程之表单设计1.描述不同于普通报表设计,表单设计拥有很多普通报表设计无法企及的优势,如下:整体性:普通报表是一个整体,无法实现局部刷新,表单是由各个组件组件,可以实现组件内刷新,即局部刷新;自适应:普通报表无法实现自适应,表单可以完美的实现自适应,更好的支持移动端的使用;控件:普通报表实现参数查询,只能将控件添加到参数面板中,表单不仅可以在参数面板中添加控件,同时还可以单独使用控件,实现数据的过滤;联动:普通报表中单元格或图表无法直接与单元格实现联动,表单却可以实现报表块或图表块与报表块的联动。

2.表单界面打开设计器,点击文件>新建表单,即可新建一张表单,如下图:表单各组件介绍请查看表单组件介绍。

3.表单设计步骤如下图,表单设计的一般操作步骤:新建表单:FineReport支持新建工作薄,即普通cpt模板,还支持新建表单,两种设计模式;拖入组件:FineReport表单支持多种不同的组件类型,包括报表、参数、图表和控件,后续详细介绍;定义数据集:定义各个组件数据来源,与普通模板的数据来源一样,图表组件数据即可来源于数据集,也可来源于单元格设置表单样式:即设置表单的显示样式,详细请查看表单样式表单组件介绍1.描述从上一节的表单设计整体界面可以看出,FineReport的表单设计组件由4部分组成:报表、参数、图表和控件,下面我们一一介绍各个组件的使用方法。

1.1报表报表块组件,可在该组件中绑定单元格数据,以表格的形式在组件范围内显示数据,报表块的具体设置模板与cpt模板一致,cpt模板的制作请参照报表,并且报表块中的数据可作为图表块的数据源。

1.2参数参数面板是指,为表单添加过滤参数面板,所有过滤控件全部添加在该面板上,也可以理解为参数面板时为了承载参数控件而存在的,其制作方式与参数查询类似。

水晶报表初级教程:对比FineReport之参数默认值

水晶报表初级教程:对比FineReport之参数默认值

水晶报表初级教程:对比FineReport之参数默认值水晶报表初级教程:对比FineReport之参数默认值水晶报表(crystal report)和FineReport都是很常用的报表工具,这里对比一下它们的参数默认值功能。

水晶报表默认值参数设置方式:使用“设置默认值”对话框可以指定希望与参数字段一起出现的默认提示。

当单击“创建参数字段”对话框或“编辑参数字段”对话框中的“设置默认值”按钮时,出现该对话框。

注意:与定义默认值相关的选项(本节中的前九项)对于值类型为“布尔值”的参数是不可用的。

标注出了其他不可用的选项。

浏览表使用该列表选取一个表,浏览该表以查找要用来更改参数字段的“默认值”的字段/值。

浏览字段使用该列表选取一个字段,浏览该字段以查找要用来更改参数字段的“默认值”的值。

选择或输入要添加的值使用“选择或输入要添加的值”框将值输入“默认值”列表中。

可以在“选择或输入要添加的值”框中键入新值,然后按“添加”按钮(>),或者从“选择或输入要添加的值”列表(该列表将放置在“选择或输入要添加的值”框中)中选择一个值,然后按“添加”按钮(>)。

添加(>)使用“添加”按钮将值从“选择或输入要添加的值”框中移至“默认值”列表中。

全部添加(>>)使用“全部添加”按钮将“选择或输入要添加的值”列表中的所有值都移至“默认值”列表中。

删除(<)使用“删除”按钮从“默认值”列表中删除某个值。

全部删除(<<)使用“全部删除”按钮删除“默认值”列表中的所有值。

顺序箭头按钮使用“顺序箭头”按钮将某个值在“默认值”列表中上移或下移。

例如,您为新雇员Zoe创建了一个值,并且希望值Zoe作为正在创建的参数字段的默认值出现。

可在“默认值”列表中选定值Zoe,并一直单击该值直到它位于列表的顶端,例如,位于值Alex的前面。

默认值使用该列表为正在创建的参数字段创建一列默认值。

为“默认值”列表选择的项目可能代表在“浏览表”列表和“浏览字段”列表中所选项目的子集。

c#水晶报表入门教程:对比FineReport之用户入门

c#水晶报表入门教程:对比FineReport之用户入门

c#水晶报表入门教程:对比FineReport之用户入门水晶报表(crystal report)和FineReport都是很常用的报表工具,这里对比一下它们的用户入门功能。

水晶报表用户入门如下:新用户快速入门下面的教程帮助您在创建第一张报表时即树立信心。

请使用本联机帮助的“目录”选项卡在教程中进行浏览。

在本教程中,当创建“客户列表”报表时,会获得有关该程序的介绍。

“客户列表”是最基本的商务报表,一般含有诸如客户名称、城市、地区和联系人姓名之类的信息。

现在开始学习基本概念:选择数据库,在报表中放置一些字段,然后选择要包含的特定记录。

接下来学习如何:插入和移动数据库字段。

添加标题并设置格式。

在“预览”选项卡中显示报表,以便可以精细调整报表。

使用“选择专家”以确保在报表中只包含所需的数据。

移动对象。

数据分组及排序。

插入图片。

打印报表。

开始之前本教程假设您已经熟悉了Microsoft Windows,并使用Windows环境中常见的惯用术语和过程。

如果您还不熟悉Windows,请参考Microsoft Windows文档,以获得进一步的解释。

程序中所有报表节的默认字体都设置为宋体、10磅。

如果更改了默认字体,或者打印机不支持这种字体,那么字段大小、字段间距和屏幕显示看上去将和教程中的不一样。

本教程是在Microsoft Windows2000平台上设计的。

如果使用不同的平台,则屏幕显示可能略有不同。

如果您还不熟悉Crystal Reports环境,请查看格式化,其中介绍了如何使用网格、自由格式位置、使用准线及格式设置活动。

创建报表1.单击“标准”工具栏上的“新建”。

Crystal Reports库出现。

2.3.库中包含了许多向导,用于指导您创建特定类型的报表。

因为在此处是学习报表的概念,所以可以跳过向导,从头开始创建报表。

在完成本教程的学习之后,可以使用向导创建一些报表,以比较哪种报表创建方法最适合您。

水晶报表入门教程:对比FineReport之报表设计

水晶报表入门教程:对比FineReport之报表设计

水晶报表入门教程:对比FineReport之报表设计水晶报表(crystal report)和FineReport都是很常用的报表工具,这里对比一下它们的报表设计功能。

FineReport报表软件针对复杂格式的报表数据及Web报表的展现,通过多源分片、不规则分组、双向扩展来轻松拖拽做复杂格式的报表,制作报表从此摆脱了复杂的SQL和表达式,不需要编程,大大提高了报表制作的效率。

相对于水晶报表(Crystal Report),FineReport报表无论是在报表设计,数据展现,还是表单,应用集成等方面,都具有明显的优势。

报表设计在报表设计方面,FineReport报表工具的优势主要体现在以下几个方面:多数据源FineReport报表设计天然支持多数据源(集),同一张报表的数据可同时来自多个数据表,多个不同的数据库,或者多个不同的用户自定义数据视图,然后在报表中可直接相互运算形成最终的报表。

并且连接数据源的方式也多种多样,支持JDBC,JNDI数据源,如Oracle,DB2,SQLServer,MySQL等主流的数据库,自定义的程序数据源,文本数据源,Hibernate数据源,Remedy等等,同时数据源具有无限的扩展性,可以支持WebService,SOA等标准的数据。

水晶报表(Crystal Report)在理论上只支持单数据集,对多集的支持依赖于数据库的运算能力(叉乘与联合等或写存储过程),多库一般难以支持。

另外一种处理方式,就是将多数据源先变相整理成单一数据源,然后再进行其它操作,并不是真正意义上的多数据源。

分组的调整,不完全分组分组是报表数据当中,最常见的方式。

FineReport报表工具的分组,是建立在单元格的基础之上,因此删除分组,更改分组字段等操作,就只需要对单元格进行操作,与报表内其它的数据无关。

另外,在很多情况下,数据并非枚举式的完全分组,而是一些固定行列,或者按段分组等形式,FineReport报表提供了用户自定义分组,只需要添加一些条件,即可达到不规则分组的目的。

水晶报表完整教程:对比FineReport之交叉表

水晶报表完整教程:对比FineReport之交叉表

水晶报表完整教程:对比FineReport之交叉表水晶报表(crystal report)和FineReport都是很常用的报表工具,这里对比一下它们的交叉表功能。

水晶报表交叉表功能如下:创建交叉表报表本节介绍在新报表中创建“交叉表”对象的步骤以及如何在已有报表中添加“交叉表”对象。

在使用“交叉表”对象时应记住以下几点:可以有多个行、列以及汇总字段。

可以用作行、列或汇总字段的报表字段包括打印时间公式和运行总计字段。

您可以在“交叉表”的行上包括组排序(前N个或后N个)。

注意:不能将组排序应用于列。

如果需要,可以在一个报表中插入多个“交叉表”对象。

可以将“交叉表”插入报表页眉或报表页脚,也可以插入组页眉或组页脚。

可以将“交叉表”对象放在子报表中。

当要引用来自其他报表中的结果时,这一点很有用。

表交叉表示例此示例展示如何使用“交叉表”对象使复杂的数据变得易于理解。

本报表的目的是分析五种不同的自行车锁在四个不同地区的销售情况(按地区划分的车锁销售报表)。

为了更清楚起见,只包含了报表中最基本的信息:订单所来自的地区。

车锁名称。

所订数量。

第一种浏览数据的方式是采用最基本的报表形式,即未分组、未排序的纵栏式报表。

订单数据的报表-未排序/未分组此报表给出了详细的信息。

每行代表一份订单。

对于不同车锁,每个地区都有多份订单。

但是由于缺少汇总信息,几乎不可能从这样一张报表中得到任何有用的信息。

下面合乎逻辑的步骤就是以某种方式对数据进行分组。

既可以按地区分组也可以按产品线分组。

下面一节将创建新“交叉表”报表在“文件”菜单上,单击“新建”。

提示:创建OLAP报表的另一种方法是单击“标准”工具栏上的“新建”按钮。

出现“Crystal Reports库”。

在“选择向导”区中,单击“交叉表”。

单击“确定”。

出现“交叉表报表创建向导”。

展示这两种分组方法。

在交叉表汇总上绘制图表选择绘制图表所基于的交叉表。

在“插入”菜单上,单击“图表”。

c#水晶报表完整教程:对比FineReport之图表布局

c#水晶报表完整教程:对比FineReport之图表布局

c#水晶报表完整教程:对比FineReport之图表布局水晶报表(crystal report)和FineReport都是很常用的报表工具,这里对比一下它们的图表布局功能。

水晶报表图表布局功能如下:图表布局图表类型不同的数据组适合不同的图表类型。

下面是主要图表类型及其常见用途的概述。

条形图大多数条形图(也称作柱形图)显示或比较多个数据组。

两种有用的条形图是并排条形图和堆积条形图。

∙并排条形图并排条形图以一系列垂直条显示数据。

这种类型的图表最适于表示跨越一段时间的多个数据组(例如AZ、CA、OR和WA地区去年的销售数字)。

∙堆积条形图堆积条形图以一系列垂直条显示数据。

这种类型的图表最适合表示三个系列的数据,每个系列的数据由一种颜色表示,堆积在一个柱形中(例如1997年、1998年、1999年的销售)。

∙折线图折线图用一系列以折线相连的点表示数据。

这种类型的图表最适于表示大批分组的数据(例如过去几年的销售总额)。

面积图面积图用填充了颜色或图案的面积来显示数据。

这种类型的图表最适于显示有限数量的若干组数据(例如,AZ、CA、OR和WA地区在销售总额中所占的百分比)。

饼图饼图用分割并填充了颜色或图案的饼形来表示数据。

饼图通常用来表示一组数据(例如销售占整个库存的百分比),然而,您也可以选择多个饼图来显示多组数据。

圆环图圆环图类似于饼图,将数据显示在圆圈或圆环上。

例如,如果在一个特定报表上绘制按地区分类的销售图表,会在圆环的中心看到销售总量(数据),各地区的销售额以不同颜色显示在圆环上。

像饼图一样,您可以选择多个圆环图来显示多组数据。

三维梯形图三维梯形图以一系列三维对象显示数据,这些三维对象在三维平面并列排列。

三维梯形图显示报表数据中的极端情况。

例如,客户以及国家/地区间的销售额差异在此图中可以动态地显示出来。

三维曲面图三维曲面图展示多组数据的地形视图。

例如,如果需要一张图表,以可视的动态及相互关联的格式、按客户及国家/地区显示销售数量,或许会考虑使用三维曲面图。

快速教程:如何用FineReport制作一张报表

快速教程:如何用FineReport制作一张报表

如何用FineReport制作一张报表1.描述这篇文档通过制作一张简单普通报表,让大家可以快速了解FineReport报表的制作流程。

1.1报表设计流程图1.2第一张报表效果在制作这张简单普通报表之前,我们先来看一下报表最终呈现出来的效果,然后我们再根据这个效果来设计报表的样式。

这张报表包含的功能模块:●控件面板:下拉框可以选择地区,点击查询按钮后,只查询出该地区对应的表格和柱形图数据。

●表格:表格统计该地区下各销售员每个产品的总销量。

●柱形图:柱形图将该地区下各销售员每个产品的总销量以图表的形式进行展示。

介绍完报表的实现效果,下面我们根据报表制作流程图来设计这张简单普通报表。

2.制作步骤2.1新建数据连接新建数据连接的目的是让FineReport设计器连接数据库,这样报表就可以在数据库中读取、写入或修改数据。

数据连接的方式有两种,分别是连接内置数据库和连接外置数据库。

制作这张报表连接的是FineReport内置的SQLite类型的数据库。

1)打开设计器,菜单栏选择服务器>定义数据连接。

2)弹出「定义数据连接」对话框,设计器已经默认连接了一个名为FRDemo的内置数据库,点击测试链接,弹出「连接成功」提示框,表示数据库FRDemo成功与设计器建立连接。

接下来就可以从这个数据库中取数用于报表的设计。

2.2新建报表类型菜单栏选择文件>新建普通报表或者点击新建普通报表按钮,新建一张空白的普通报表。

2.3新建数据集数据集通过SQL查询语句从已经建立连接的数据库中取数,将数据以二维表的形式保存并显示在数据集管理面板处。

简单而言数据集是报表设计时的直接数据来源。

数据集按照作用范围分为两种:服务器数据集和模板数据集,它们之间的区别大家可以参见对应文档中的说明。

我们制作的这张普通报表将新建两个模板数据集ds1和ds2。

1)数据集管理面板选择模板数据集,点击上方的,在弹出的模板数据集类型选择框中点击数据库查询。

水晶报表简单制作步骤

水晶报表简单制作步骤

为什么水晶报表那么麻烦,每做一张报表都要选表,画线画格子,有没有一种方法可以一劳永逸?做一个模板,然后用不同的表都能用?还有就是能不能动态选择列,而且选择列后能报表能自动适用这个变化?甚至有些人也因为放弃了水晶报表,实际上这些都是水晶报表可以做到的。

在这里,我来讲解一下原理和实现。

希望该文章,能基本上解决这个问题。

当然,这个也不是万能的,也有其适用环境。

本文开发环境:VS2005 / CR XI R2 for .Net第一步:新建一个C#的水晶报表的WinForm空白项目。

在弹出报表数据源选择框的时候,不要选择任何任何数据源,直接点确定,创建一个空白报表。

第二步:项目中添加一个Dataset1.xsd,手工建立一个DataTable,命名为B igTable。

建立6个字段,全部为String型。

为什么用6个呢?这个数字6的确立,是根据你的实际需要,这个表的列的数目,需要大于等于你所需要操作的事实表的最大列数。

用为什么用String型呢?我们知道基本上所有的基础数据类型都可以转换为String,这样我们的这个表基本上可以容纳所有的数据类型。

好了,在报表中添加这个B igtable.将6个字段拖到详细资料节。

对齐。

()注意!不要使用框和线来画格子,这里用的是字段边框,初次操作可以暂时不用,我后面会专门讲一下这个格线的处理。

好了,这样我们的万能模板就做成了。

很简单,是吗?呵呵。

第三步:在w inform上拖上一个combox,一个button,用默认名称接口。

combox1用来选表的名称。

这样界面也完成了。

第四步:实现原理上面的几步下来,有经验的朋友基本上看出来我们是要用PUSH模式来实现了。

既然我们已经在报表里用到了BigTable,那么我们要传递给报表的数据,也就要整形成B igTable的样子。

也就是说,只要能把来源数据表的数据,整形成B igTable的样子,就能用这一个模板显示出来。

而不用管来源表从哪里来,表名是什么,有几个字段(但是字段数目需要小于等于6),字段名是什么,有多少数据。

c#水晶报表入门教程:对比FineReport之图表设计

c#水晶报表入门教程:对比FineReport之图表设计

c#水晶报表入门教程:对比FineReport之图表设计水晶报表(crystal report)和FineReport都是很常用的报开发工具,这里对比一下它们的图表设计功能。

水晶报表图表设计功能如下:图表Crystal Reports使您能够用多彩的、易读的图表显示汇总的数据。

本节介绍如何创建图表,以及如何在报表中使用图表,使得报表数据更有意义并且更易于理解。

不但可以从大量图表布局和类型中选择,而且能够深化以查看图形汇总的详细资料并格式化图表对象。

图表布局“图表专家”提供四种布局,分别对应特定的数据集。

您可以用下列布局中的任意一种来创建图表,并可根据所用数据更改图表的布局。

高级当有多个图表值或在报表中没有分组和摘要字段时,请使用“高级”布局。

“高级”图表布局支持一个或两个条件字段:您可以使用这些条件字段创建二维图表、三维图表或饼图。

“高级”布局中的其他特殊功能包括:数值可按升序、降序、指定的顺序、合计的最前N个或排序来分组。

可为每个记录绘制值。

可为所有记录绘制总计值。

图表可基于公式和运行总计字段。

组“分组”布局是一种简化的布局,可以用来表示国家/地区等主题字段更改时的摘要。

注意:为了用“分组”布局创建图表,您必须至少有一个分组和用于该分组的摘要字段。

交叉表使用“交叉表”布局在交叉表对象上绘制图表。

交叉表图表使用交叉表中的字段作为其条件和摘要字段。

OLAP使用OLAP布局在OLAP网格上绘制图表。

OLAP图表使用OLAP网格中的字段作为其条件和摘要字段。

在详细资料或公式字段上绘制图表(高级布局)“高级”布局允许您根据特定值创建图表。

因为图表是一种表示汇总信息的好方法,所以通常基于报表的汇总字段。

使用“高级”布局,您可以使用报表“详细资料”节的值来创建图表,而无须使用汇总字段。

若要创建基于“高级”布局的图表,您必须指定以下两方面内容:条件(可以有两个)。

值(可以有多个值)。

条件条件用来指定什么时候绘制点。

水晶报表制作说明

水晶报表制作说明

BS报表制作向导一、制作报表样式1.新建水晶报表样式打开Visual Studio或水晶报表工具,点击菜单条中的文件—新建项目,在弹出的页面中选择其他语言-Visual J#-Crystal Reports应用程序修改名称和位置后,点击确定按钮,再在弹出的页面中选择作为空白报表,再点击确定按钮;如果已有一个水晶报表,要在现有项中再新增一个水晶报表样式,可以在解决方案资源管理器中在解决方案子主目录下,右键-添加新项,弹出以下页面,选择Crystal报表即可水晶报表工具Crystal Reports2008制作报表:工具栏文件->新建->空白报表/标准报表/交叉报表->数据库专家2.将报表数据源绑定数据库在显示的页面中,单击鼠标右键选择数据库-数据库专家在创建新连接中,点击OLE DB(ADO),弹出页面,提供程序中选择Microsoft OLE DB Provide for SQL Server,再点击下一步按钮,在弹出的页面中输入内容后,点击下一步按钮在弹出的页面中点击添加命令,输入SQL查询—报表所需字段(也可以是视图或存储过程),再点击确定按钮。

3.制作水晶报表A.工具箱--在左边工具箱中,可以选择工具画报表,文本对象(文本框及内容的输入),线条对象(画线),框对象(表格外面的框)水晶报表工具Crystal Reports2008:工具栏插入->文本对象/线/框B.字段--在字段中可以直接将要显示在报表中的字段拖放到报表中去C.合计的显示—选中要合计的字段,如金额,点击右键,插入-汇总在弹出的页面中,选择要汇总的字段和方式(求和,差,平均~~)点击确定后自动生成一个汇总字段,将该字段拖放到合计金额的位置即可水晶报表工具Crystal Reports2008:在“公式字段”新建“合计”,汇总字段为CalFee,拖动到页脚D.合计金额小写转换成大写—在右边字段中,选择公式字段,右键-新增(名为test),点击使用专家按钮,在弹出的页面中,选择报表自定义函数,再点击右键-新建,在弹出的页面中输入自定义函数有的名称(AmountToWord2),点击使用编辑器在下面的输入框中,输入以下函数(语法选择Basic语法)选择之前添加的公式字段test,在下面的输入框中输入以下内容(调用上面的函数)(语法选择Basic语法)Function CNMoney(ls As Number) As StringDim dx_sz As StringDim dx_dw As StringDim str_int As StringDim str_dec As StringDim dx_str As StringDim fu As StringDim a As StringDim b As StringDim c As StringDim d As StringDim b2 As StringDim num_int As NumberDim num_dec As NumberDim len_int As NumberDim i As NumberDim a_int As NumberDim pp As Numberdx_sz = "零壹贰叁肆伍陆柒捌玖"dx_dw = "万仟佰拾亿仟佰拾万仟佰拾圆"If ls = 0 ThenCNMoney = "零圆整"Exit FunctionEnd IfIf ls < 0 Thenls = Abs(ls) --返回绝对值fu = "负"Elsefu = ""End Ifdx_str = CStr(ls) --返回表达式,该表达式已被转换为String 子类型的V ariant--Dim MyDouble, MyString--MyDouble = 437.324 - ' MyDouble 是双精度值。

sap水晶报表制作

sap水晶报表制作

格式化编辑器-字体
在代码中无法直接更改字体属性,必 须使用ApplyFont()方法; System.Drawing.Font newFont; System.Drawing.FontStyle newFontStyle = System.Drawing.FontStyle.Regular; newFontStyle = newFontStyle | System.Drawing.FontStyle.Bold; newFont = new System.Drawing.Font(obj_FieldObj , obj_FieldObject.Font.Size, newFontStyle); obj_FieldObject.ApplyFont(newFont);
this.CrystalReportViewer1.S electionFormula = "{Hr_Staff.Sex} = '男'";
排序记录
1.使用记录排序专家 2.使用代码排序
//定义排序字段 FieldDefinition FieldDef0 = this.CrystalReportSource1.Rep ortDocument.Database.Tables[" Hr_Staff"].Fields["Age"]; //设置排序字段 this.CrystalReportSource1.Rep ortDocument.DataDefinition.Sor tFields[0].Field = FieldDef0; //设置排序方式 this.CrystalReportSource1.Rep ortDocument.DataDefinition.Sor tFields[0].SortDirection = CrystalDecisions.Shared.SortDi rection.AscendingOrder;

finereport操作手册

finereport操作手册

FineReport是一款功能强大的报表工具,广泛应用于企业级报表的制作和展示。

以下是FineReport的基本操作手册:
1.启动软件:打开FineReport Designer,你将看到一个直观的用户界面,包
括菜单栏、工具栏、画布区和属性面板。

2.新建报表:在菜单栏上,选择“文件”->“新建”,然后选择报表类型。

有多种类型的报表供你选择,包括表格、图表、交叉表等。

3.数据源配置:为你的报表配置数据源。

选择“数据”->“数据源”,然后
选择适合你数据源的类型,如数据库、Excel、API等。

4.报表设计:在画布区,你可以开始设计你的报表。

使用工具栏上的工具添
加控件、调整布局和格式化数据。

5.数据绑定:将数据源中的数据绑定到报表控件上。

在属性面板中,选择数
据集和相应的字段来绑定数据。

6.报表预览:完成设计后,你可以预览报表的效果。

点击工具栏上的“预
览”按钮或从菜单栏选择“预览”->“实时预览”。

7.导出和发布:当你满意报表的设计和效果时,可以选择导出为PDF、Excel
或其他格式,或发布到FineReport Server上进行共享和查看。

8.关闭软件:完成所有操作后,选择“文件”->“关闭”来关闭当前报表。

如果你想退出软件,选择“文件”->“退出”。

水晶报表开发

水晶报表开发

创建简单水晶报表步骤1:打开VS工具,新建解决方案和项目2:先创建一个一个ds文件,在ds文件中添加一个datatable,并添加需要显示的列(此处的列和你从数据库中查询出来的字段名称相同),右击属性,选择相应字段的相应类型3:创建水晶报表文件(rptShow)选择标准- 在项目数据中找到刚刚创建好的数据集,并选择相应的datatable至右面的文本框中,点击完成,创建好报表文件。

5-1:在我做的报表文件中主要遇到的一个困难是求和;所以这里特别记录下1:新建【运行总计字段】并取名,这里设计名称为:Sum_Qty从报表字段中选择需要求和的字段,在汇总类型中选择和即可,此种方法为其一,还有一种方法则是建立好名称后,在公式工作室选择公式--→函数-→选择需要的函数并把相应的字段填充进去,我这里需要的是数量的求和,所以,选择好后是Sum(Qty) 即可,然后直接把之前创建好的名称放在报表文件中。

2:求和不同类型的数据,则需要进行判断,在我的数据库中有金和石两种数据,所以我要对石和金进行统计并求和。

同样需要创建运行总计字段,Sum_Qty,进入到公式工作室,找到刚刚创建好的运行总计字段名称(Sum_Qty),在右面的空白处写上判断格式:if UOM=’G’ then金的重量字段4:调整好相应的格式,再新建一个项目文件(这里是针对winform程序,web的我还没试过,等试了再写)5:在form表单中拉近一个报表显示控件,如图:6:编写代码实现报表的显示:Dim rpt As New rptDetails ------rptDetails 指的前文创建的报表文件名称Dim ds As New dsSummary.DeatilsQtyDataTable ------dsSummary(创建的数据集文件,DeatilsQtyDataTable 指的是数据集中,你想要使用的数据表,在此使用时,它会自动加上DataTable后缀,其实代表的就是你数据集中的DeatilsQty)rpt.SetDataSource(DBHelper.GetDetailsSummary(ds, PosCodes, txtFrom.Text.Trim,txtTo.Text.Trim)) -----调用方法(该方法返回的是dataTable类型)Me.rptShowDetails.ReportSource = rpt ---填充报表7:完成,显示效果如图:。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

水晶报表初级教程:对比FineReport之报表设计
水晶报表(crystal report)和FineReport都是很常用的报表工具,这里对比一下它们的报表设计功能。

FineReport报表软件针对复杂格式的报表数据及Web报表的展现,通过多源分片、不规则分组、双向扩展来轻松拖拽做复杂格式的报表,制作报表从此摆脱了复杂的SQL和表达式,不需要编程,大大提高了报表制作的效率。

相对于水晶报表(Crystal Report),FineReport报表无论是在报表设计,数据展现,还是表单,应用集成等方面,都具有明显的优势。

报表设计
在报表设计方面,FineReport报表工具的优势主要体现在以下几个方面:多数据源
FineReport报表设计天然支持多数据源(集),同一张报表的数据可同时来自多个数据表,多个不同的数据库,或者多个不同的用户自定义数据视图,然后在报表中可直接相互运算形成最终的报表。

并且连接数据源的方式也多种多样,支持JDBC,JNDI数据源,如Oracle,DB2,SQLServer,MySQL等主流的数据库,自定义的程序数据源,文本数据源,Hibernate数据源,Remedy等等,同时数据源具有无限的扩展性,可以支持WebService,SOA等标准的数据。

水晶报表(Crystal Report)在理论上只支持单数据集,对多集的支持依赖于数据库的运算能力(叉乘与联合等或写存储过程),多库一般难以支持。

另外一种处理方式,就是将多数据源先变相整理成单一数据源,然后再进行其它操作,并不是真正意义上的多数据源。

分组的调整,不完全分组
分组是报表数据当中,最常见的方式。

FineReport报表工具的分组,是建立在单元格的基础之上,因此删除分组,更改分组字段等操作,就只需要对单元格进行操作,与报表内其它的数据无关。

另外,在很多情况下,数据并非枚举式的完全分组,而是一些固定行列,或者按段分组等形式,FineReport报表提供了用户自定义分组,只需要添加一些条件,即可达到不规则分组的目的。

水晶报表(Crystal Report),所有的数据都被划分在条带状的模型当中,删除分组时会将相关的分组汇总单元一并删除,调整分组字段只能删掉重建,整个操作比较繁琐,且会导致重复工作。

而不规则分组,在Crystal Report当中,则仅仅只是修改组名,无法修改其它跟随数据的计算。

数据扩展和交叉表
FineReport报表工具的数据扩展,是双向的,也就是行列对称,横纵方向能力一致,可以方便地制作交叉报表(多层),可同行式表一样制作复杂表头。

水晶报表(Crystal Report)制作交叉报表的方式,是采用专门的交叉表模型,其表头是按照向导自动生成的,缺乏灵活性。

报表分片
复杂报表当中,报表分为多片的现象非常常见,即整个报表是一个大的规则的报表,但是实际上可以分为多个不规则的小区域,各个区域之间看似没有联系,但是数据之间实际可以相互关联。

FineReport由于支持多数据源,以及数据的行列对成扩展,因此支持报表的各片独立重复或者相互运算,并且允许固定和变动分片的混合。

水晶报表(Crystal Report)的单表模型不能支持分片。

对于分片的报表,一种处理方法是事先编程准备数据,另一种则是靠子报表拼接来完成。

处理相当繁琐,并且这两种处理方法也并非每次都能够达到要求,设计出需要的报表格式。

跨行组运算
报表中常常需要有跨行组的运算,如比上期、比去年同期等。

FineReport 报表的单元格层次坐标概念可以精确地引用任何一个扩展之后的单元格,然后通用地写出表达式进行这些跨行组运算。

水晶报表(Crystal Report)只能简单地支持某些固定的跨行运算,如累积值、比上期等,更复杂的跨行组计算只能事先编程准备数据。

报表展现和输出

类Excel的界面风格

FineReport报表工具的界面风格,是完全类似于Excel的,格线对齐的编辑方式,极大的便利了报表的设计和输出,并且单元格内属性比较自由灵活,可以得到格式任意复杂的报表。


水晶报表(Crystal Report)均采用控件拖拽式绘制报表,这种方案完全没有体现表格的规律性,当表头复杂的时候,对齐非常繁琐。

而且与分辨率相关,屏幕上对齐的表格,在网页上和打印时又无法对齐。



输入输出

FineReport报表支持单个或者批量导入Excel文件,这样可以由业务人员,事先画好表样,提高制作报表的效率,并且,批量导入,更加的减轻重复的工作。

生成的报表文件可输出为HTML、不失真的PDF、Excel、Word、CSV、SVG和文本文件等多种样式。

另外,还可生成内置的模板文件。


水晶报表(Crystal Report)无法支持导入Excel文件,最多只能从Excel 读取数据。

其生成的HTML一般只能支持IE;导出EXCEL时经常只有数据而丧失格式,个别工具完成得比较仔细,但也严重依赖于表格绘制时对齐的程度,生成的文本也只包括数据而丧失格式,无法支持字符终端的报表打印需求。



套打

FineReport报表采用底图描绘,绝对定位的方式完成套打表样的绘制,用户可将要套打的票据扫描进来作为背景图,用报表设计器进行数据的位置摆放,可以精确定位数据的位置。


水晶报表(Crystal Report)只能采用精确度量的方案,量好套打票据的尺寸来设置表格控件的大小,操作繁琐,效率很低。



分页打印,分栏以及其它打印控制

FineReport提供了全部的报表打印控制:按照分组或者其它任意的方式来进行强制分页,补足空行。


分页时标题可重复,不仅是上表头,表格较宽的报表,其左表头也可设置分页时重复显示。


数据可进行自由分栏,较长的报表,可以按照行分栏,显示成多列;列数较多的报表,可以使用列分栏来多行显示到同一个页面当中。


水晶报表(Crystal Report),一般只能支持上表头重复,不可以进行强制分页,补足空行,分栏等操作。

∙。

相关文档
最新文档