论坛首页 编程语言技术论坛

(z)水晶报表的5种表格设计模式

浏览 21732 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-11-21  
水晶报表的5种表格设计模式

概述

与国外不同,国内的报表多以表格为主,所以用水晶报表实现表格虽然不太方便,但必须面对!
组成表格的框线分为上框线、下框线、左框线、右框线、内部横框线、内部竖框线六种,而上框线、下框线、内部横框线又属于横框线,左框线、右框线、内部竖框线又属于竖框线。在水晶报表里可以通过线、框、对象边框来实现,且听我慢慢道来……


目录

一、准线协助
1. 对象未动,准线先行。
2. 使用准线对齐表格的框线。
3. 使用准线对齐行、列。
4. 使用准线定位行、列。
5. 使用准线调整列宽和行高。

二、多节框
1. 绘制表格的外部框线。
2. 绘制表格的内部横框线。
3. 绘制表格的内部竖框线。

三、节内线
1. 将表格的标题行和数据行分离,分别绘制表格框线。
2. 绘制标题行部分的表格框线。
3. 绘制数据行部分的表格框线。

四、多节定位
1. 防止可变长度的对象相互覆盖。
2. 防止数据库字段和下框线相互覆盖。

五、对象边框
1. 用对象边框模拟表格的框线。
2. 将表格的标题行和数据行分离,并用对象边框模拟表格框线。
3. 用文本对象的边框模拟标题行部分的表格框线。
4. 用数据库字段的边框模拟数据行部分的表格框线。



一、准线协助

1. 对象未动,准线先行。

准线是一些非打印线条,可以将其放在"设计"选项卡和"预览"选项卡上的任何位置以帮助对齐。它们具有对齐属性,使对象自动与其对齐。对齐功能不仅使您能够轻松加精确地对齐报表对象,而且还可以同时对多个对象重新定位并调整大小。

(1) 显示、插入、移动和删除准线
① 显示准线
选择"视图"菜单上的"准线"命令。
使用"设计"命令可以在"设计"选项卡中显示或隐藏准线。使用"预览"命令可以在"预览"选项卡中显示或隐藏准线。
注意:在"预览"选项卡上,必须选择一个对象才能看到准线。
② 插入准线
在"设计"或"预览"选项卡中,单击顶部的标尺可以插入垂直准线;单击左侧的标尺可以插入水平准线。
注意:每条准线均与其起始标尺位置上的一个箭头相连。
③ 移动准线
要将准线放置到目标位置,请将其箭头沿标尺拖至相应的位置上。
④ 删除准线
要删除准线,将其箭头拖出标尺。

注意:如果选择了"网格线对齐"选项,则只能以网格为单位增量插入或移动准线。要去除这个限制,右击报表的空白处,在快捷菜单取消"与网格对齐"命令。

(2) 使对象与准线对齐
① 要使对象与准线对齐,将报表对象拖至准线之上,直至对象边缘落在准线之上。
② 可以将多个对象与同一条准线对齐,以同时对多个对象重新定位并调整大小。
③ 可以使对象的顶部或底部与水平准线对齐,也可以使对象的左侧、右侧或中垂线(垂直平分对象的不可见线条)与垂直准线对齐。
④ 如果是对齐多个对象,要用对象的同一侧对齐准线。

(3) 使用准线定位对象
使一个或多个对象与某条准线对齐之后,通过移动该准线即可同时移动所有对象。要移动准线,沿标尺拖动其箭头。
注意:当移动准线时,所有与之对齐的对象也一起移动。但如果移动的是与准线对齐的对象,该准线并不随之移动。

(4) 使用准线调整对象大小
使用两条准线可以对两个或多个大小(高度或宽度)相同或不同的对象调整大小。两种情况下使用两个准线调整大小的过程是一样的。
① 创建一个准线。
② 将对象的一侧与该准线对齐。
③ 在该对象的另一侧创建第二条准线。
注意:此准线不应接触到该对象。
④ 单击对象以激活大小调整控柄。
⑤ 将调整大小控柄拖至第二条准线,让对象与该准线对齐。
⑥ 对于每一个要与这两条准线对齐的其他对象,重复执行第 2 步到第 5 步。
⑦ 如果对象不是所需要的大小,则拖动准线之一或全部准线直到对象大小正确为止。

2. 使用准线对齐表格的框线。

注意:如果选择了"网格线对齐"选项,则只能以网格为单位增量插入或移动准线。要去除这个限制,右击报表的空白处,在快捷菜单取消"与网格对齐"命令。

(1) 插入框
① 在"设计"选项卡中,通过单击左侧的标尺插入两条水平准线。一上一下,分别对应表格的上框线和下框线。
② 通过单击顶部的标尺插入两条垂直准线。一左一右,分别对应表格的左框线和右框线。
③ 插入框,并调整大小,使框的四边分别对齐四条准线。

(2) 插入竖线
① 在"设计"选项卡中,通过单击左侧的标尺插入两条水平准线。一上一下,分别对应竖框线的上下顶点。
② 单击顶部的标尺插入一条垂直准线,用于在水平方向上辅助定位竖框线。
③ 插入竖线,并对齐垂直准线。
④ 调整竖线的大小,使之上下两侧分别对齐上下两条水平准线。

(3) 插入横线
① 在"设计"选项卡中,通过单击顶部的标尺插入两条垂直准线。一左一右,分别对应横框线的左右顶点。
② 单击左侧的标尺插入一条水平准线,用于在垂直方向上辅助定位横框线。
③ 插入横线,并对齐水平准线。
④ 调整横线的大小,使之左右两侧分别对齐左右两条垂直准线。

3. 使用准线对齐行、列。
(1) 对齐行
① 在"设计"选项卡中,单击左侧的标尺插入水平准线。
② 将同一行上的数据字段或者表格标题的底部与水平准线对齐。

(2) 对齐列
① 在"设计"选项卡中,单击顶部的标尺插入垂直准线。
② 将同一列上的数据字段和表格标题的左侧与垂直准线对齐。

4. 使用准线定位行、列。
每条准线均与其起始标尺位置上的一个箭头相连。将行与水平准线对齐或者将列与垂直准线对齐后,沿标尺拖动其箭头,就可以移动行和列。

5. 使用准线调整列宽和行高。
(1) 调整列宽
① 在"设计"选项卡中,单击顶部的标尺插入垂直准线1,并将同一列上的数据字段和表格标题的左侧与垂直准线1对齐。
② 在列的右侧,单击顶部的标尺插入垂直准线2。
注意:此准线不应接触到数据字段和表格标题。
④ 按住 Ctrl 连续单击,以选中同一列上的数据字段和表格标题,在最后一个被选中的对象上会出现大小调整控柄。
⑤ 将调整大小控柄拖至垂直准线2,让列与该准线对齐。
⑥ 如果列不是所需要的大小,则拖动准线之一或全部准线直到列大小正确为止。

(2) 调整行高
① 在"设计"选项卡中,单击左侧的标尺插入水平准线1,并将同一行上的数据字段或者表格标题的顶部与水平准线1对齐。
② 在行的底部,单击左侧的标尺插入水平准线2。
注意:此准线不应接触到数据字段或者表格标题。
④ 按住 Ctrl 连续单击,以选中同一行上的所有数据字段,在最后一个被选中的对象上会出现大小调整控柄。
⑤ 将调整大小控柄拖至水平准线2,让行与该准线对齐。
⑥ 如果行不是所需要的大小,则拖动准线之一或全部准线直到行大小正确为止。



二、多节框

1. 绘制表格的外部框线。
(1) 插入框,跨越"页眉"和"详细资料"两节。
(2) 调整"详细资料"的大小,使其底部与表格的下框线对齐。

2. 绘制表格的内部横框线。
(1) 在"详细资料"插入横线。
(2) 在垂直方向上移动横线,使其与"详细资料"顶部对齐。
(3) 调整横线的大小,使其左右两端与外部框线对齐。

3. 绘制表格的内部竖框线。
(1) 根据列的多少在报表插入相应数量的竖线。
(2) 在水平方向上移动竖线,使其恰好处于两列之间。
(3) 调整竖线的大小,使其上下两端与外部框线对齐。

问题:如果你在"报表页脚"插入了子报表,那么表格的竖框线和下框线将出现在子报表上,显示效果混乱不戡!所以就有了下面的……



三、节内线

1. 将表格的标题行和数据行分离,分别绘制表格框线。
(1) 将表格的标题行放在"页眉",框线绘制不超出"页眉"。
(2) 将表格的数据行放在"详细资料",框线绘制不超出"详细资料"。

2. 绘制标题行部分的表格框线。
(1) 在"页眉"中,用线绘制表格的上框线,表格的内部横框线,表格左框线、右框线、内部竖框线的标题栏部分。
绘制横框线和竖框线请参考本文的:二、多节框 2. 绘制表格的内部横框线。 3. 绘制表格的内部竖框线。
(4) 调整"页眉"的大小,使其底部与表格的内部横框线对齐。

3. 绘制数据行部分的表格框线。
(1) 在"详细资料"中,用线绘制表格的下框线,表格左框线、右框线、内部竖框线的标题栏部分。
绘制横框线和竖框线请参考本文的:二、多节框 2. 绘制表格的内部横框线。 3. 绘制表格的内部竖框线。
(2) 调整"详细资料"的大小,使其底部与表格的下框线对齐。

问题:如果数据行的行高不固定,即数据库字段设置为"可以扩大",以根据数据大小自动垂直扩展。则数据将超出表格的下框线,而且竖线无法自动垂直扩展,显示效果非常难看!所以就有了下面的……



四、多节定位

1. 防止可变长度的对象相互覆盖。
创建多个节,并将对象放在可变长度对象所在节的下面的节,可消除这种套印问题。

2. 防止数据库字段和下框线相互覆盖。
(1) 在"详细资料"创建两个节:"详细资料 a"、"详细资料 b"。
(2) 在"详细资料 a"中放置数据库字段。
(3) 在"详细资料 b"中,用线绘制表格的下框线,并调整"详细资料b"的大小,使其底部与下框线对齐。
(4) 在"详细资料"用线绘制竖框线,并跨越"详细资料 a"和"详细资料 b"两节。



五、对象边框

1. 用对象边框模拟表格的框线。
(1) 选择报表对象并从"格式"菜单或右击菜单中选择格式命令,进入"格式设置编辑器"对话框。
(2) 选择"边框"选项卡。
(3) 将左、右、顶部、底部框线的"线型"设置为"单线"。

2. 将表格的标题行和数据行分离,并用对象边框模拟表格框线。
(1) 将表格的标题行放在"页眉",用文本对象的边框模拟标题行的框线。
(2) 将表格的数据行放在"详细资料",用数据库字段的边框模拟数据行的框线。

3. 用文本对象的边框模拟标题行部分的表格框线。
(1) 最左侧文本对象边框的左、右、顶部、底部框线的"线型"设置为"单线"。
(2) 其它文本对象的边框的右、顶部、底部框线的"线型"设置为"单线"。
(3) 将各个文本对象从左到右紧密相连, 则顶部框线就组成了表格的上框线,底部框线就组成了表格的内部横框线,左、右框线便是表格左框线、右框线、内部竖框线的标题栏部分。
(4) 调整"页眉"的大小,使其底部与表格的内部横框线对齐。

4. 用数据库字段的边框模拟数据行部分的表格框线。
(1) 最左侧文本对象边框的左、右、底部框线的"线型"设置为"单线"。
(2) 其它文本对象的边框的右、底部框线的"线型"设置为"单线"。
(3) 将各个文本对象从左到右紧密相连,底部框线便组合成了表格的下框线,左、右框线便是表格左框线、右框线、内部竖框线的标题栏部分。
(4) 调整"详细资料"的大小,使其底部与表格的下框线对齐。


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=21548
   发表时间:2007-11-21  
借助"多列格式化"功能实现。

1. 启用"多列格式化"功能。

(1) 进入“节专家”对话框,并在“节”中选择“详细资料”。

(2) 在"公用"选项卡选中“多列格式化”,此时会出现“布局”选项卡。

2. 调整布局,实现分栏效果。

要想分两栏,调整“详细资料大小”的宽度,确保宽度的两倍小于去除页边距后的页面宽度,才能一行显示两行记录。

要想分三栏,调整“详细资料大小”的宽度,确保宽度的三倍小于去除页边距后的页面宽度,才能一行显示三行记录。

依次类推,实现其它栏数的分栏。


参考:“布局”选项卡(节专家)介绍
当选定详细信息部分且选中“公用”选项卡上的“多列格式化”框后,出现“布局”选项卡。

使用“布局”选项卡以多列格式设置报表。即,不是一直沿着页面向下打印数据,而是可以设置多列以使数据在列之间流动。还可以在页面上按先行后列的方式打印数据,即先打印每列中的第一个记录,然后打印每列中的第二个记录,然后打印第三个记录,依此类推。该对话框分为四个更小的框。

详细资料大小
该框使您能够指定一个详细资料的尺寸(高度和宽度)。确定所希望的每个详细资料的宽度(基于字符数、字体大小,等等)并在“宽度”编辑框中输入该值。

确定所希望的每个详细资料的高度(基于详细资料内的行数、字体大小等)并在“高度”编辑框中输入该值。

详细资料间距
使用该框可以指定希望在详细资料间留出的空白区域(间距、装订线,等等)。水平 = 详细资料的横向间距,垂直 = 详细信息的纵向间距。

确定希望允许的间距。在“水平”编辑框中输入数据水平间距,并在“垂直”编辑框中输入垂直间距。

打印方向
“打印方向”框使您能够指定程序在报表页上打印详细资料时所遵循的路径。选项有:

先行后列
从左到右打印各列中的详细资料,即先打印第一列中的第一则详细资料,然后打印下一列中的第一则详细资料,依此类推。然后,当所有列都包含详细资料后,程序沿着页面向下移动,打印第一列中的第二则详细资料,然后打印第二列中的第二则详细资料,依此类推。

先列后行
沿着第一列向下打印详细资料,然后沿着第二列,依此类推。

格式化带有多列的组
如果希望程序使用为选定节指定的“宽度”、“详细资料间距”和“打印方向”格式化带有多列的组,则选择该复选框。
0 请登录后投票
   发表时间:2007-11-21  
水晶报表公式使用必读    CSDN Blog推出文章指数概念,文章指数是对Blog文章综合评分后推算出的,综合评分项分别是该文章的点击量,回复次数,被网摘收录数量,文章长度和文章类型;满分100,每月更新一次。

目录:
一、公式组件
二、公式语法
三、公式类型
----------------------------------------------------------------
公式包含两个关键部分:组件和语法。组件是创建公式所添加的部分,而语法是组织组件所遵循的规则。
在 Crystal Reports 中有几种不同种类的公式:报表、格式化、选定、搜索、运行总计条件和警报公式。报表中的多数公式为报表公式和条件格式化公式。
----------------------------------------------------------------
一、公式组件
在 Crystal Reports 中创建公式与在任何电子数据表应用程序中创建公式类似。可以在公式中使用下列组件:

字段
示例:{客户.客户名}、{客户.去年销售额}

数字
示例:1、2、3.1416

Text
示例:“数量”、“:”、“您的文本”

运算符
示例:+(加)、/(除)、-x(求负)

运算符是可以在公式中使用的操作。

函数
示例:Round (x)、Trim (x)

函数执行求平均值、求和与计数之类的计算。列出所有可用的函数,其参数一并列出,并根据用途排列。

自定义函数
示例:cdFirstDayofMonth、cdStatutoryHolidays

自定义函数提供了一种共享和重复使用公式逻辑的途径。它们可存储在 Crystal 储备库中,而后可将其添加到报表中。一旦自定义函数添加到报表后,当创建公式时,用户就可在“公式专家”中使用自定义函数。

控制结构
示例:“If”和“Select”、“For”循环

组字段值
示例:Average (fld, condFld)、Sum (fld, condFld, "条件")

组字段值对组进行汇总。例如,可以使用组字段值来得出各个组在总计中所占百分比。

其它公式
示例:{@GrossProfit}、{@QUOTA}

有关详细信息,请参阅公式语法。
----------------------------------------------------------------
二、公式语法
语法规则用于创建正确的公式。一些基本规则有:

将文本字符串括在引号内。
将参数括在括号内(在合适的位置)。
引用的公式使用前导 @ 符号标识。
Crystal 语法和 Basic 语法
创建公式时,可以选择使用 Crystal 语法或 Basic 语法。几乎任何使用某种语法编写的公式都可以使用另一种语法来编写。报表可以包含使用 Crystal 语法的公式,也可以包含使用 Basic 语法的公式。

Crystal 语法是包括在 Crystal Reports 的所有版本中的公式语言。

如果熟悉 Microsoft Visual Basic 或 Basic 的其他版本,则您可能更熟悉 Basic 语法。总而言之,除了有特定扩展以处理报表外,Basic 语法以 Visual Basic 为模型。

如果您已经习惯了 Crystal 语法,则可以继续使用它,并且可受益于由 Visual Basic 所产生的新函数、运算符和控制结构。

注意:  

记录选定和组选定公式不能用 Basic 语法编写。
使用 Basic 语法不会减慢报表的处理过程。使用 Basic 语法公式的报表可以在运行 Crystal Reports 的任何机器上运行。
使用 Basic 语法公式无需同报表一起分发任何附加文件。
相关主题
若要了解 Basic 语法,请参阅使用 Basic 语法创建公式。

若要了解 Crystal 语法,请参阅使用 Crystal 语法创建公式。
----------------------------------------------------------------
三、公式类型
在 Crystal Reports 中有几种不同种类的公式:报表、格式化、选定、搜索、运行总计条件和警报公式。报表中的多数公式为报表公式和条件格式化公式。

报表公式
报表公式是在报表中创建的单独公式。例如,计算订购日期与发货日期之间天数的公式即为报表公式。

条件格式化公式
格式化公式更改报表的布局和设计,以及文本、数据库字段、对象或整个报表节的外观。通过“格式编辑器”来设置文本的格式。如果需要创建格式化公式,请从“格式编辑器”访问公式工作室。请参阅使用条件格式化。

选定公式
选定公式指定并限制在报表中出现的记录和组。您可直接输入这些公式,或者可使用“选择专家”指定选定内容。Crystal Reports 接着将生成记录选定和组选定公式。可以选择手动编辑这些公式,但必须使用 Crystal 语法。请参阅选择记录。

搜索公式
搜索公式帮助您在报表中定位数据。与选定公式类似,一般您不需要直接输入这些公式,而是使用“搜索专家”来指定搜索判据。Crystal Reports 生成该公式。可以选择手动编辑这些公式,但必须使用 Crystal 语法。

注意:    如果您已经了解 Basic 语法,则只需要了解少量的 Crystal 语法便可以修改大多数选定公式和搜索公式。

运行总计条件公式
运行总计条件公式使您能够定义运行总计求值或重置所依据的条件。请参阅创建条件运行总计。

警报公式
警报公式帮助您定义报表警报的条件和消息。请参阅关于报表警报。


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=21527
0 请登录后投票
   发表时间:2007-11-21  
经典水晶报表设计——用交叉报表实现成绩单!

需求:
我现在有一个数据表,它的列名分别是学生名,学生号,课程名,成绩.
现在我希望做一个报表,报表里的字段分别是学生号,和各门课的成绩.
也就是说,假如我有两门课,分别是语文和数学,那我的报表里的字段就应该是学生号,语文课成绩和数学课成绩.
------------------------------------------------
解决方案:
用交叉报表……

                  -----------------------
                  |  列:课程名字段     |
|-----------------|---------------------|
| 行:学生号字段  |  摘要字段:         |
|                 |  Maximum (成绩字段) |
|---------------------------------------|

------------------------------------------------
参考:
1、什么是交叉表对象?
“交叉表”对象是一个网格,用来根据指定的条件返回值。数据显示在压缩行和列中。这种格式易于比较数据并辨别其趋势。它由三个元素组成:



摘要字段

“交叉表”中的行沿水平方向延伸(从一侧到另一侧)。在上面的示例中,“手套”(Gloves) 是一行。
“交叉表”中的列沿垂直方向延伸(上下)。在上面的示例中,“美国”(USA) 是一列。
汇总字段位于行和列的交叉处。每个交叉处的值代表对既满足行条件又满足列条件的记录的汇总(求和、计数等)。在上面的示例中,“手套”和“美国”交叉处的值是四,这是在美国销售的手套的数量。
“交叉表”还可以包括若干总计:

每行的结尾是该行的总计。在上面的例子中,该总计代表一个产品在所有国家/地区的销售量。“手套”行结尾处的值是 8,这就是手套在所有国家/地区销售的总数。
注意:    总计列可以出现在每一行的开头。

每列的底部是该列的总计。在上面的例子中,该总计代表所有产品在一个国家/地区的销售量。“美国”一列底部的值是四,这是所有产品(手套、腰带和鞋子)在美国销售的总数。
注意:    总计列可以出现在每一行的顶部。

“总计”(Total) 列(产品总计)和“总计”(Total) 行(国家/地区总计)的交叉处是总计。在上面的例子中,“总计”列和“总计”行交叉处的值是 12,这是所有产品在所有国家/地区销售的总数。


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=21529
0 请登录后投票
   发表时间:2007-11-21  
高级参数功能
在报表内使用参数的方法有很多种。本节介绍一些使用参数的高级方法:

1、创建具有多个值的参数 
2、使用参数字段应用条件格式设置 
3、使用参数字段创建报表标题 
4、指定单个值或范围值 
5、将参数包含在公式中 
6、使用参数字段定义排序顺序 
7、使用编辑掩码定义输入类型和格式  
----------------------------------
1、创建具有多个值的参数
在“视图”菜单上单击“字段资源管理器”。 
  选择“参数字段”并单击“新建”。 
输入“名称”和“提示文本”。 
选择“值类型”。 
选择“允许多个值”复选框以便能将多个值输入到参数中。允许单独使用或组合使用离散类型的值和范围类型的值。 
注意:        有关单个值或范围值的详细信息,请参阅指定单个值或范围值。

单击“设置默认值”以确定允许输入的输入值类型。 
出现“设置默认值”对话框。

从“浏览表”下拉列表中选择默认值的表。 
从“浏览字段”下拉列表中选择默认值的字段。 
与该表和字段相关联的值出现在“选择或输入要添加的值”区域中。

选择列出的值或创建您自己的值,然后使用箭头按钮将它们移动到“默认值”区域。 
根据需要调整显示、顺序和长度限制。 
单击“确定”。  
----------------------------------
2、使用参数字段应用条件格式设置
参数字段可用于创建条件格式设置公式。每当刷新报表数据时,都可以自定义这些公式。条件格式设置公式可用于对满足特定条件的数据做颜色标记。例如:

销售额超过  10%  限额的销售代表。 
在上一季度没有定货的客户。 
上个月没有任何周转的存货。 
如果标记这些项所基于的条件永不更改,则不需使用参数字段。可只使用公式(对于文本标记)或条件格式设置(对于边框标记)。但是,若要更改报表间的条件,则需要在公式和条件格式设置公式中使用参数字段。

使用参数字段应用条件格式设置
创建公式所需数据类型的参数字段。 
创建公式并使用参数字段代替通常使用的固定值。 
  例如,若要让程序提示去年购买金额超过特定值的所有客户并将他们的姓名打印成红色,请选择“去年销售额”字段并单击“专家工具”工具栏上的“格式”。

出现“格式编辑器”。

  单击“字体”选项卡上“颜色”属性旁边的“条件公式”按钮,并使用条件格式设置公式将字段进行格式设置,如下所示: 
If  {客户.去年销售额}  >  {?SalesTarget}  Then
          Red
Else
          Black

现在,当刷新数据时,程序将提示您输入触发颜色标记的值(称为阈值),然后运行报表并标记所有去年销售额在阈值数字之上的客户。可在每次运行报表时更改该数字,程序将标记不同的“客户名称”组。

有关更多信息,请参阅条件格式化函数(Basic  语法)。
----------------------------------
3、使用参数字段创建报表标题
Crystal  Reports使您得以使用参数字段创建在每次刷新报表时都可更改的报表标题。

使用参数字段创建报表标题
在“视图”菜单上单击“字段资源管理器”。 
出现“字段资源管理器”。

  选择“参数字段”并单击“新建”。 
出现“创建参数字段”对话框。

在“名称”字段中键入参数字段的名称。 
在“提示文本”字段中键入所需的任何提示文本。 
从“值类型”下拉列表中选择“字符串”。 
单击“设置默认值”。 
出现“设置默认值”对话框。

若要指定默认标题,请在“选择或输入要添加的值”字段中键入想要的文本,然后单击  >  将标题添加到“默认值”区域。 
注意:        根据需要继续添加标题。

单击“确定”。 
出现“创建参数字段”对话框。

单击“确定”。 
出现“字段资源管理器”,其中的新参数被选定。

将参数字段放在报表的“页眉”节中,以使标题在每页中都出现;或者如果想让标题只在报表的第一页出现,则将其放在“报表标题”节中。 
现在,当刷新数据时,程序将提示您输入报表标题。如果需要,可在每次运行报表时更改标题。
----------------------------------
4、指定单个值或范围值
既可以创建要求用户输入单个(离散)值的参数,也可以创建要求用户输入范围值的参数。如果随后将这些参数包括在报表的记录选定区域中,则可帮助用户找到特定信息。例如,在记录选定参数使用离散值的情况下,用户可以输入单个的国家/地区名称,以便只查看该国家/地区的销售额。在记录选定参数使用范围值的情况下,用户可以输入国家/地区的范围(例如,Canada  和  France),以查看在此范围中的所有国家/地区(在此条件下包括  Chili、China、Denmark、England  等等)的销售额。

指定单个值或范围值
选择“离散值”选项或“范围值”选项以指定参数字段是否接受范围值。 
如果选择“离散值”,则参数字段将接受单个值(而不是范围值)。
如果选择“范围值”,则当提示您输入参数值时,可以输入起始值和结束值。例如,如果输入值“5”和“10”,则范围为  5-10,将此参数用于记录选定区域的报表会显示介于值  5  和  10  之间的所有记录。这也适用于字符串参数字段。对于起始值“A”和结束值“E”,将此参数用于记录选定区域的报表会显示字母范围  A-E  内的所有记录。
注意:        如果选中“允许多个值”和“离散值”选项,则该参数字段将接受多个单个值。在这种情况下,可输入多个值,但是这些值将被分别求值并且不会被解释为范围。如果选中的是“允许多个值”和“范围值”选项,则参数字段将接受多个范围。

如可用,单击“设置默认值”选择“长度限制”复选框以指定字段的长度。如果选择“长度限制”复选框: 
对于“货币”或“数字”参数字段,出现用于输入“最小值”和“最大值”的选项。
对于“日期时间”参数字段,出现用于输入“开始日期时间”和“结束日期时间”的选项。
对于“日期”参数字段,出现用于输入“开始日期”和“结束日期”的选项。
对于“时间”参数字段,出现用于输入“开始时间”和“结束时间”的选项。
----------------------------------
5、将参数包含在公式中
在“视图”菜单上单击“字段资源管理器”。 
出现“字段资源管理器”。

  选择“参数字段”并单击“新建”。 
出现“创建参数字段”对话框。

创建参数字段并保存它。 
选择“公式字段”,并单击“新建”。 
出现“公式名称”对话框。

输入公式的名称,然后单击“使用编辑器”。 
像使用常量值那样使用参数字段创建公式。例如,与其创建国家和地区名称硬编码的公式: 
{客户.国家和地区}  =  "USA"

使用参数字段代替“USA”。

{客户.国家和地区}  =  {?Country}

为此,请双击数据库字段,按  =  键,然后双击参数。

提示:        通过查找  (?)  可以很容易识别参数字段。

单击公式工作室上的“关闭”。 
出现“字段资源管理器”对话框。刚才创建的公式名称突出显示在“公式”列表框中。

将该公式拖放到报表中。 
  单击“刷新”生成报表。 
出现对话框,提示您输入值。
----------------------------------
6、使用参数字段定义排序顺序
若要使用参数字段设置排序顺序,首先需要创建包含参数字段的公式,然后基于该公式进行排序。例如,假设您有一个基于“客户”表的客户列表报表。对于每个客户,显示“客户名称”、“城市”、“地区”、“国家和地区”和“电话”。您想根据当时的需要,能够按“国家和地区”、按“地区”或按“城市”排序。

创建参数字段并称之为“排序字段”。 
在“提示文本”编辑框中输入类似下面的提示: 
键入  R  按“地区”排序,或键入  C  按“城市”排序;否则,数据将按“国家和地区”排序。

从“值类型”下拉列表中选择“字符串”。 
您或许想将用户可键入的字符数限制为  1  个。为此,请单击“设置默认值”。 
出现“设置默认值”对话框。

选中“长度限制”复选框,将数字  1  键入到“最小长度”和“最大长度”文本框中,然后单击“确定”。 
现在,参数字段将只接受单个字符值。该字段将接受“C”作为值,而不接受“City”。

创建类似于下面这样的公式并称之为“排序”: 
If  {?SortField}  =  "C"  Then  {客户.城市}
Else
          If  {?SortField}  =  "R"  Then  {客户.地区}
          Else
                    {客户.国家和地区}


该公式提示您输入参数字段  {?SortField}  的值。如果输入“C”,则该公式将按“城市”字段排序。如果输入“R”,则按“地区”字段排序。如果输入别的内容,或根本不输入任何内容,该公式将按“国家和地区”字段排序。

有关更多信息,请参阅If  语句(Basic  语法)。

  将公式放置在报表的“报表页眉”节中,然后选择“节专家”中的“取消(无深化)”,以便不输出该公式。 
  单击“对记录排序”。 
选择公式,然后单击“添加”。 
单击“确定”。 
现在,当运行报表时,程序将提示您输入排序字段,公式将根据选定内容返回值,而排序工具将使用该值作为排序字段。
----------------------------------
7、使用编辑掩码定义输入类型和格式
在“视图”菜单上单击“字段资源管理器”。 
  选择“参数字段”并单击“新建”。 
出现“创建参数字段”对话框。

输入“名称”、“提示文本”和“值类型”。 
单击“设置默认值”。 
对于要为其设置默认值的字符串参数字段,可选择在  “编辑掩码”  字段中输入编辑掩码,而不是指定范围。编辑掩码可以是任何一组屏蔽字符,用于限制可作为参数值输入的值(编辑掩码还限制可作为默认提示值输入的值)。

可输入下列任意屏蔽字符,或这些字符的任意组合:

“A”(允许字母数字字符并要求在参数值中输入字符)。
“a”(允许字母数字字符,不要求在参数值中输入字符)。
“0”(允许数字  [0  到  9]  并要求在参数值中输入字符)。
“9”(允许数字或空格,不要求在参数值中输入字符)。
“#”(允许数字、空格或加/减号,不要求在参数值中输入字符)。
“L”(允许字母  [A  到  Z]  并要求在参数值中输入字符)。
“?”(允许字母,不要求在参数值中输入字符)。
“&”(允许任何字符或空格并要求在参数值中输入字符)。
“C”(允许任何字符或空格,不要求在参数值中输入字符)。
“.  ,  :  ;  -  /”(分隔字符)。在编辑掩码中插入分隔字符有点像对参数字段进行硬编码格式设置。将字段放到报表上后,分隔字符将出现在字段对象框架中,就像这样:LLLL/0000。本例描述要求  4  个字母后跟  4  个数字的编辑掩码。
“<”(使随后的字符转换为小写字符)。
“>”(使随后的字符转换为大写字符)。
“\”(使随后的字符显示为字面值)。例如,编辑掩码“\A”将显示参数值“A”。如果编辑掩码为“00\A00”,则有效的参数值将依次包含两个数字、字母“A”以及另外两个数字。
“密码”。允许将编辑掩码设置成“密码”,可创建条件公式指定报表的某些部分只有在输入特定的用户密码后才可见。
注意:        一些编辑掩码字符要求在它们的位置输入字符(当输入参数值时),而另一些允许在需要时保留空格。例如,如果编辑掩码是  000099,由于编辑掩码字符“9”不要求输入字符,因此可输入  4  个数字、5  个数字或  6  个数字的参数值。但是,由于“0”要求输入字符,因此输入的参数值不能少于  4  个数字。

将值添加到“选择或输入要添加的值”列表或突出显示该列表中值,并使用  >  和  >>  按钮将这些值添加到“默认值”列表,以此来输入默认提示值。 
可以使用  <  和  <<  按钮从列表中删除提示值。添加的项出现在“输入参数值”对话框上的下拉列表中,其中含有指定的默认提示值。

单击“确定”。 
出现“创建参数字段”对话框。

注意:        当“默认值”列表框中有多项时,将出现“允许编辑默认值”复选框。默认情况下选定该复选框,以指定在提示输入参数值后可编辑或输入新值。根据需要选择或清除该复选框。

单击“确定”。 
出现“字段资源管理器”对话框,其中的参数被选定。

将该参数拖放到报表中。


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=21533
0 请登录后投票
   发表时间:2007-11-21  
目录
一、什么是子报表?
二、通过使用子报表组合不相关的报表
三、对无法链接的数据使用子报表
四、在单个报表中显示相同数据的不同视图
五、一对多链接
----------------------------------
一、什么是子报表?
子报表是报表中的报表。创建子报表的过程与创建常规报表的过程相似。子报表有报表的大多数特性,包括它自己的记录选择条件。子报表与主报表之间的唯一区别是子报表:
是作为对象插入到主报表中;它不能独立存在(但可以将子报表另存为主报表)。
可以放置在报表的任意一节内,整个子报表将在该节中打印。
不能包含另一个子报表。
不要包含页眉或页脚节。

有四种情况通常要使用子报表:
1、将不相关的报表组合到单个报表中。请参阅通过使用子报表组合不相关的报表。
2、协调本无法链接的数据。请参阅对无法链接的数据使用子报表。
3、在单个报表中显示相同数据的不同视图。请参阅在单个报表中显示相同数据的不同视图。
4、从在查阅字段上没有索引的字段中执行一对多查阅。有关更多信息,请参阅一对多链接。

注意:    使用按需要显示子报表而不使用常规的现场子报表可以提高包含子报表的报表的性能。
----------------------------------
二、通过使用子报表组合不相关的报表
有时,可能希望将不相关的报表组合到单个报表中。例如,可能希望创建单个报表来表示:
按销售代表分组的销售额。
按项目分组的销售额。

虽然两个报表都处理销售数据,但两个报表之间没有真正的线性关系。
可以使用子报表将不相关的报表组合到像这样的单个报表中。虽然报表可以基于相同的数据集,但不必非这样。它们可以分别基于完全不同的数据集。
这些报表中的每一个都是独立的;任何报表中的数据不以任何方式链接到另一个报表中的数据。这是最容易使用的子报表选项。

有关所有详细信息,请参阅组合两个或更多不相关的报表。
----------------------------------
三、对无法链接的数据使用子报表
只要满足下列条件,就可以在报表中链接表:
链接字段都是数据库字段。
链接字段包含相似数据。
链接字段的长度相同。
与(查阅)表链接的链接字段有索引(仅对于 PC 数据库)。
链接表很少有问题。但是,有些情况下不能协调不同表中的数据,因为数据不满足链接条件。

例如,不能在单个报表中与公式字段进行相互链接,也不能链接两个没有索引的表。这时必须使用子报表。
----------------------------------
四、在单个报表中显示相同数据的不同视图
子报表可用于在主报表中提供数据的不同视图。例如,可能需要在报表上部显示汇总值,在下部显示详细信息。
这可以通过多种不同的方法完成。两种最容易的方法是:
将汇总报表创建成主报表,将详细信息报表创建成子报表。在此方法中,详细信息子报表放置在“报表页脚”节中。
将详细信息报表创建成主报表,将汇总报表创建成子报表。在此方法中,汇总报表放置在“报表页眉”节中。

使用适当的链接字段链接报表和协调数据。
----------------------------------
五、一对多链接
本教程说明如何使用 Xtreme.mdb 示例数据库中的“客户”、“信用”和“订单”表来创建 A 到 B、A 到 C 报表。Xtreme.mdb 数据库位于 \Program Files\Crystal Decisions\Crystal Reports\Samples\Chs\Databases 目录。请将这里的说明作为使用自己的数据库文件创建 A 到 B、A 到 C 报表的指导方针。

创建 A 到 B、A 到 C 链接

在“标准”工具栏上,单击“新建”。
在 Crystal Reports 库 上单击“作为空白报表”,然后单击“确定”。
展开“数据库文件”文件夹。
选择 Xtreme.mdb 数据库文件,然后展开它的“表”文件夹。
突出显示“信用”表,然后将其添加到“选定的表”区域。
对“客户”和“订单”表重复前面的步骤。
添加完全部三个表后,单击“数据库专家”对话框上的“链接”选项卡。
如果默认情况下这些表之间存在链接,单击“清除链接”。
手动将“信用”表中的“客户信用 ID”字段链接到其它两个表中的“客户 ID”字段。
单击“对链接排序”。
出现“对链接排序”对话框。

选择一个链接,然后使用向上或向下箭头按照所需顺序排列链接。
单击“确定”返回“数据库专家”的“链接”选项卡。
单击“确定”关闭“数据库专家”。

现在在三个表中建立了 A 到 B、A 到 C 的关系。
0 请登录后投票
   发表时间:2007-11-21  
级参数功能
在报表内使用参数的方法有很多种。本节介绍一些使用参数的高级方法:

1、创建具有多个值的参数 
2、使用参数字段应用条件格式设置 
3、使用参数字段创建报表标题 
4、指定单个值或范围值 
5、将参数包含在公式中 
6、使用参数字段定义排序顺序 
7、使用编辑掩码定义输入类型和格式  
----------------------------------
1、创建具有多个值的参数
在“视图”菜单上单击“字段资源管理器”。 
  选择“参数字段”并单击“新建”。 
输入“名称”和“提示文本”。 
选择“值类型”。 
选择“允许多个值”复选框以便能将多个值输入到参数中。允许单独使用或组合使用离散类型的值和范围类型的值。 
注意:        有关单个值或范围值的详细信息,请参阅指定单个值或范围值。

单击“设置默认值”以确定允许输入的输入值类型。 
出现“设置默认值”对话框。

从“浏览表”下拉列表中选择默认值的表。 
从“浏览字段”下拉列表中选择默认值的字段。 
与该表和字段相关联的值出现在“选择或输入要添加的值”区域中。

选择列出的值或创建您自己的值,然后使用箭头按钮将它们移动到“默认值”区域。 
根据需要调整显示、顺序和长度限制。 
单击“确定”。  
----------------------------------
2、使用参数字段应用条件格式设置
参数字段可用于创建条件格式设置公式。每当刷新报表数据时,都可以自定义这些公式。条件格式设置公式可用于对满足特定条件的数据做颜色标记。例如:

销售额超过  10%  限额的销售代表。 
在上一季度没有定货的客户。 
上个月没有任何周转的存货。 
如果标记这些项所基于的条件永不更改,则不需使用参数字段。可只使用公式(对于文本标记)或条件格式设置(对于边框标记)。但是,若要更改报表间的条件,则需要在公式和条件格式设置公式中使用参数字段。

使用参数字段应用条件格式设置
创建公式所需数据类型的参数字段。 
创建公式并使用参数字段代替通常使用的固定值。 
  例如,若要让程序提示去年购买金额超过特定值的所有客户并将他们的姓名打印成红色,请选择“去年销售额”字段并单击“专家工具”工具栏上的“格式”。

出现“格式编辑器”。

  单击“字体”选项卡上“颜色”属性旁边的“条件公式”按钮,并使用条件格式设置公式将字段进行格式设置,如下所示: 
If  {客户.去年销售额}  >  {?SalesTarget}  Then
          Red
Else
          Black

现在,当刷新数据时,程序将提示您输入触发颜色标记的值(称为阈值),然后运行报表并标记所有去年销售额在阈值数字之上的客户。可在每次运行报表时更改该数字,程序将标记不同的“客户名称”组。

有关更多信息,请参阅条件格式化函数(Basic  语法)。
----------------------------------
3、使用参数字段创建报表标题
Crystal  Reports使您得以使用参数字段创建在每次刷新报表时都可更改的报表标题。

使用参数字段创建报表标题
在“视图”菜单上单击“字段资源管理器”。 
出现“字段资源管理器”。

  选择“参数字段”并单击“新建”。 
出现“创建参数字段”对话框。

在“名称”字段中键入参数字段的名称。 
在“提示文本”字段中键入所需的任何提示文本。 
从“值类型”下拉列表中选择“字符串”。 
单击“设置默认值”。 
出现“设置默认值”对话框。

若要指定默认标题,请在“选择或输入要添加的值”字段中键入想要的文本,然后单击  >  将标题添加到“默认值”区域。 
注意:        根据需要继续添加标题。

单击“确定”。 
出现“创建参数字段”对话框。

单击“确定”。 
出现“字段资源管理器”,其中的新参数被选定。

将参数字段放在报表的“页眉”节中,以使标题在每页中都出现;或者如果想让标题只在报表的第一页出现,则将其放在“报表标题”节中。 
现在,当刷新数据时,程序将提示您输入报表标题。如果需要,可在每次运行报表时更改标题。
----------------------------------
4、指定单个值或范围值
既可以创建要求用户输入单个(离散)值的参数,也可以创建要求用户输入范围值的参数。如果随后将这些参数包括在报表的记录选定区域中,则可帮助用户找到特定信息。例如,在记录选定参数使用离散值的情况下,用户可以输入单个的国家/地区名称,以便只查看该国家/地区的销售额。在记录选定参数使用范围值的情况下,用户可以输入国家/地区的范围(例如,Canada  和  France),以查看在此范围中的所有国家/地区(在此条件下包括  Chili、China、Denmark、England  等等)的销售额。

指定单个值或范围值
选择“离散值”选项或“范围值”选项以指定参数字段是否接受范围值。 
如果选择“离散值”,则参数字段将接受单个值(而不是范围值)。
如果选择“范围值”,则当提示您输入参数值时,可以输入起始值和结束值。例如,如果输入值“5”和“10”,则范围为  5-10,将此参数用于记录选定区域的报表会显示介于值  5  和  10  之间的所有记录。这也适用于字符串参数字段。对于起始值“A”和结束值“E”,将此参数用于记录选定区域的报表会显示字母范围  A-E  内的所有记录。
注意:        如果选中“允许多个值”和“离散值”选项,则该参数字段将接受多个单个值。在这种情况下,可输入多个值,但是这些值将被分别求值并且不会被解释为范围。如果选中的是“允许多个值”和“范围值”选项,则参数字段将接受多个范围。

如可用,单击“设置默认值”选择“长度限制”复选框以指定字段的长度。如果选择“长度限制”复选框: 
对于“货币”或“数字”参数字段,出现用于输入“最小值”和“最大值”的选项。
对于“日期时间”参数字段,出现用于输入“开始日期时间”和“结束日期时间”的选项。
对于“日期”参数字段,出现用于输入“开始日期”和“结束日期”的选项。
对于“时间”参数字段,出现用于输入“开始时间”和“结束时间”的选项。
----------------------------------
5、将参数包含在公式中
在“视图”菜单上单击“字段资源管理器”。 
出现“字段资源管理器”。

  选择“参数字段”并单击“新建”。 
出现“创建参数字段”对话框。

创建参数字段并保存它。 
选择“公式字段”,并单击“新建”。 
出现“公式名称”对话框。

输入公式的名称,然后单击“使用编辑器”。 
像使用常量值那样使用参数字段创建公式。例如,与其创建国家和地区名称硬编码的公式: 
{客户.国家和地区}  =  "USA"

使用参数字段代替“USA”。

{客户.国家和地区}  =  {?Country}

为此,请双击数据库字段,按  =  键,然后双击参数。

提示:        通过查找  (?)  可以很容易识别参数字段。

单击公式工作室上的“关闭”。 
出现“字段资源管理器”对话框。刚才创建的公式名称突出显示在“公式”列表框中。

将该公式拖放到报表中。 
  单击“刷新”生成报表。 
出现对话框,提示您输入值。
----------------------------------
6、使用参数字段定义排序顺序
若要使用参数字段设置排序顺序,首先需要创建包含参数字段的公式,然后基于该公式进行排序。例如,假设您有一个基于“客户”表的客户列表报表。对于每个客户,显示“客户名称”、“城市”、“地区”、“国家和地区”和“电话”。您想根据当时的需要,能够按“国家和地区”、按“地区”或按“城市”排序。

创建参数字段并称之为“排序字段”。 
在“提示文本”编辑框中输入类似下面的提示: 
键入  R  按“地区”排序,或键入  C  按“城市”排序;否则,数据将按“国家和地区”排序。

从“值类型”下拉列表中选择“字符串”。 
您或许想将用户可键入的字符数限制为  1  个。为此,请单击“设置默认值”。 
出现“设置默认值”对话框。

选中“长度限制”复选框,将数字  1  键入到“最小长度”和“最大长度”文本框中,然后单击“确定”。 
现在,参数字段将只接受单个字符值。该字段将接受“C”作为值,而不接受“City”。

创建类似于下面这样的公式并称之为“排序”: 
If  {?SortField}  =  "C"  Then  {客户.城市}
Else
          If  {?SortField}  =  "R"  Then  {客户.地区}
          Else
                    {客户.国家和地区}


该公式提示您输入参数字段  {?SortField}  的值。如果输入“C”,则该公式将按“城市”字段排序。如果输入“R”,则按“地区”字段排序。如果输入别的内容,或根本不输入任何内容,该公式将按“国家和地区”字段排序。

有关更多信息,请参阅If  语句(Basic  语法)。

  将公式放置在报表的“报表页眉”节中,然后选择“节专家”中的“取消(无深化)”,以便不输出该公式。 
  单击“对记录排序”。 
选择公式,然后单击“添加”。 
单击“确定”。 
现在,当运行报表时,程序将提示您输入排序字段,公式将根据选定内容返回值,而排序工具将使用该值作为排序字段。
----------------------------------
7、使用编辑掩码定义输入类型和格式
在“视图”菜单上单击“字段资源管理器”。 
  选择“参数字段”并单击“新建”。 
出现“创建参数字段”对话框。

输入“名称”、“提示文本”和“值类型”。 
单击“设置默认值”。 
对于要为其设置默认值的字符串参数字段,可选择在  “编辑掩码”  字段中输入编辑掩码,而不是指定范围。编辑掩码可以是任何一组屏蔽字符,用于限制可作为参数值输入的值(编辑掩码还限制可作为默认提示值输入的值)。

可输入下列任意屏蔽字符,或这些字符的任意组合:

“A”(允许字母数字字符并要求在参数值中输入字符)。
“a”(允许字母数字字符,不要求在参数值中输入字符)。
“0”(允许数字  [0  到  9]  并要求在参数值中输入字符)。
“9”(允许数字或空格,不要求在参数值中输入字符)。
“#”(允许数字、空格或加/减号,不要求在参数值中输入字符)。
“L”(允许字母  [A  到  Z]  并要求在参数值中输入字符)。
“?”(允许字母,不要求在参数值中输入字符)。
“&”(允许任何字符或空格并要求在参数值中输入字符)。
“C”(允许任何字符或空格,不要求在参数值中输入字符)。
“.  ,  :  ;  -  /”(分隔字符)。在编辑掩码中插入分隔字符有点像对参数字段进行硬编码格式设置。将字段放到报表上后,分隔字符将出现在字段对象框架中,就像这样:LLLL/0000。本例描述要求  4  个字母后跟  4  个数字的编辑掩码。
“<”(使随后的字符转换为小写字符)。
“>”(使随后的字符转换为大写字符)。
“\”(使随后的字符显示为字面值)。例如,编辑掩码“\A”将显示参数值“A”。如果编辑掩码为“00\A00”,则有效的参数值将依次包含两个数字、字母“A”以及另外两个数字。
“密码”。允许将编辑掩码设置成“密码”,可创建条件公式指定报表的某些部分只有在输入特定的用户密码后才可见。
注意:        一些编辑掩码字符要求在它们的位置输入字符(当输入参数值时),而另一些允许在需要时保留空格。例如,如果编辑掩码是  000099,由于编辑掩码字符“9”不要求输入字符,因此可输入  4  个数字、5  个数字或  6  个数字的参数值。但是,由于“0”要求输入字符,因此输入的参数值不能少于  4  个数字。

将值添加到“选择或输入要添加的值”列表或突出显示该列表中值,并使用  >  和  >>  按钮将这些值添加到“默认值”列表,以此来输入默认提示值。 
可以使用  <  和  <<  按钮从列表中删除提示值。添加的项出现在“输入参数值”对话框上的下拉列表中,其中含有指定的默认提示值。

单击“确定”。 
出现“创建参数字段”对话框。

注意:        当“默认值”列表框中有多项时,将出现“允许编辑默认值”复选框。默认情况下选定该复选框,以指定在提示输入参数值后可编辑或输入新值。根据需要选择或清除该复选框。

单击“确定”。 
出现“字段资源管理器”对话框,其中的参数被选定。

将该参数拖放到报表中。


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=21533
0 请登录后投票
   发表时间:2007-11-28  
本文详细讲述一下如何创建交叉表以及交叉表的一些简单定制

水晶报表9.2,同样适用于水晶报表10(含)及以下版本

准备

首先你要知道什么是交叉表,又是在什么情况下需要用交叉表
“交叉表”对象是一个网格,用来根据指定的条件返回值。
数据显示在压缩行和列中。这种格式易于比较数据并辨别其趋势。它由三个元素组成:


摘要字段

我做了简单的表格进行说明,相信你可以很快跟你的应用对上号了


好,现在我们开始

Step1:从头开始创建交叉表 


在这里我简单的选取了一个表,这个表的数据并不适合用来做交叉表
不过我在这里只做演示用,就不管那么多了

这里选你要在行和列上显示的数据,以及相应的汇总

图表在这里就不要选了
好,交叉表这就完成了



Step2:设置行列的数据显示顺序

有时候,我们发现数据显示的顺序不是自己想要的,这个时候我们可以自己设置一下。
进入交叉表专家
选中你要进行重新排序的字段,点“组选项”
出现一个小窗口,这里的顺序有三种:升序、降序、指定顺序

这里没有按“原始顺序”,所以顺序经常会乱
这个时候我们来选“指定顺序”重新指定,需要提醒的是,如果数据太多,这样就很费劲,但是没办法。
此时这个界面上多了两个标签页

水晶报表会自动感知数据罗列出来,你可以选一下,就可以依次列在下面的列表里

如果你使用的是字段定义等不直接连接数据库的方式的话,此处就没有数据了
需要自己指定,点“新建”就可以操作了
你也可以只设定自己比较关心的几个数据靠前,如果是这样的话,你需要注意后面一个“其他”标签页
这个上面有三个选项
第一个是:其他全部丢弃。
第二个是:其他的放在一起,作为一项来像是
第三个是:保留在各自的组中。没有设置顺序的数据按原来的显示顺序排列在你设置好数据的后面
我们一般选第三个

好,现在数据出来了,看到效果了吧?你还可以设置行数据的显示顺序

交叉表还有一些别的设置,进入交叉表专家,在“自定义样式”里可以做些设置
如抑制空行/空列显示之类的



交叉表左上角是个缺口,这应该是交叉表的一个标示,但是很不符合中国的报表习惯
如果只是一页的话,你还可以自己画个线或者是弄个图片堵上,
但是跨页的时候这个缺口在后面的页上还是会显示出来。
0 请登录后投票
   发表时间:2008-03-23  
建立Crystal Report文件
資料來源
報表設計 5 招式:
認識報表結構
查詢條件與參數
群組、總計及排行榜
公式 (Formula)
格式化報表物件
製作報表範本

提取模式(Pull)
由報表引擎直接連接到資料庫
包含:
OLEDB
ODBC
Access/Excel
Outlook
Informix, DB2, …
推入模式(Push)
報表引擎不直接連接資料庫
利用程式、XML、物件模型等提取資料後, 推入報表引擎
適用:
分散式 與 Web Service 應用程式
包含:
ADO .NET
ADO
COM Data Provider
欄位定義(*.ttx結構檔)
CDO (Crystal資料物件)

Report Header
報表表頭
整份報表只出現一次
Page Header
頁表頭
出現在每頁開頭
Details
記錄明細
Report Footer
報表表尾
Page Footer
頁表尾

查詢條件
Select Expert
過濾報表出現記錄
參數欄位可以應用在:
查詢條件
公式
文字物件
條件格式化 …

0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics