最新水晶报表函数大全-汇总函数
Crystal报表设计以及公式详细

组织报表数据
排序专家 选择专家 组专家 插入汇总
COPYRIGHT © 2019 BUSINESS OBJECTS S.A. ALL RIGHTS RESERVED.
组织报表数据 - 练习
变更数据的排序方式
继续上一个练习 将您的报表设定成依照发货日期、订单金额由大而小排序。
COPYRIGHT © 2019 BUSINESS OBJECTS S.A. ALL RIGHTS RESERVED.
集成到企业已有的应用中
-强大的二次开发支持
类似相关概念: 生产力报告、运营报告、可管理的报告
COPYRIGHT © 2019 BUSINESS OBJECTS S.A. ALL RIGHTS RESERVED.
完整的报表解决方案
数据 访问
报表 设计
报表 发布管理
COPYRIGHT © 2019 BUSINESS OBJECTS S.A. ALL RIGHTS RESERVED.
分析性报告
交互性及每客 户实现成本
企业报表平台
Adapted from Gartner “BI Pyramid of Needs”
潜在的信息消费需求
COPYRIGHT © 2019 BUSINESS OBJECTS S.A. ALL RIGHTS RESERVED.
水晶报表简介
水晶报表定位于商务智能领域,可应用于任何需要商务智 能的行业及领域 水晶报表“Crystal Reports” 是业界最据盛名、最畅销的 报表设计与开发工具。 水晶报表已成为报表的标准:
与应用系统 集成
数据访问
连接所有数据源
超过35种数据驱动 可以选择通过原生驱动、ODBC、 JDBC、OLE DB连接数据库、文件、 日志、企业应用程序等 用户可以使用SQL语言更加灵活地 控制数据源 支持在一份报表中整合多个数据源
表格中满足多个条件汇总数据的函数

表格中满足多个条件汇总数据的函数表格是我们日常工作中使用最多的一种数据格式,无论是在企业还是学术领域都有广泛的应用。
而要从大量的数据中获取有效的信息,需要使用一些函数来汇总数据。
本文将介绍一些常用的数据汇总函数,特别是针对多个条件汇总数据的函数。
一、SUMIF函数SUMIF函数是Excel中最常用的汇总函数之一,它的作用是根据指定的条件对一个范围内的数据进行求和。
例如,我们有一个销售数据表格,其中包含产品名称、销售额和销售日期三列。
我们需要根据产品名称汇总销售额,可以使用以下公式:=SUMIF(A2:A100,"Product A",B2:B100)其中A2:A100表示产品名称列,"Product A"表示要汇总的产品名称,B2:B100表示销售额列。
这个公式的意思是,筛选出产品名称列中等于"Product A"的行,再将这些行的销售额相加。
如果要汇总多个产品的销售额,可以使用SUMIF函数嵌套。
例如,我们要汇总"Product A"和"Product B"的销售额,可以使用以下公式:=SUM(SUMIF(A2:A100,{"Product A","Product B"},B2:B100))这个公式的意思是,先用大括号{}括起来需要汇总的产品名称,然后使用SUMIF函数对每个产品的销售额进行求和,最后将结果相加。
二、SUMIFS函数如果要同时满足多个条件,可以使用SUMIFS函数。
例如,我们要根据销售日期和产品名称汇总销售额,可以使用以下公式:=SUMIFS(B2:B100,A2:A100,"ProductA",C2:C100,">=2021/1/1",C2:C100,"<=2021/12/31")其中B2:B100是销售额列,A2:A100是产品名称列,C2:C100是销售日期列。
水晶报表分页汇总

水晶报表分页汇总收藏水晶报表分页汇总建三个公式字段,第一个(公式1)输入下面的公式:whileprintingrecords;global numbervar ptotal;ptotal:=0;第二个(公式2)输入下面的公式:whileprintingrecords;global numbervar ptotal;ptotal := ptotal + [要汇总的字段];如果要汇总的字段不是数字,就用tonumber()函数转换;第三个(公式3)输入下面的公式:whileprintingrecords;global numbervar ptotal;把公式1放在页眉,公式2放在详细资料,并隐藏公式1和公式2;把公式3放在页脚,格式公式3,设置为你要显示的格式。
这样就行了。
水晶报表分页并自动插入空白行在论坛上经常会看到水晶报表分页的问题,这个很好解决。
但是自动插入空白行的问题却一直没有很好的答案,经过研究找到一个变通的办法来实现了。
'分页在详细资料上点格式化节,在后面页新建页打勾公式中输入:if _disibledevent= FALSEelseif RecordNumber mod 5 =0 thenFORMULA = TRUEelseFORMULA = FALSEend ifend if'(BASIC 语法)---------------------------------------------------------------------最后页不足,用空行填充:新增一个空白详细资料行,格式化此节,在抑制显示(无深化)打勾公式中输入:if not _disibledevent= TRUEelseif (RecordNumber mod 5 <= 1) then '第一个,1FORMULA = TRUEelseFORMULA = FALSEend ifend if'(BASIC 语法)...接着第二个[ 新增一个空白详细资料行,格式化此节,在抑制显示(无深化)打勾]:公式中输入:if not _disibledevent= TRUEelseif (RecordNumber mod 5 <= 2) then '第二个,2FORMULA = TRUEelseFORMULA = FALSEend ifend if...接着第三个[ 新增一个空白详细资料行,格式化此节,在抑制显示(无深化)打勾]:公式中输入:if not _disibledevent= TRUEelseif (RecordNumber mod 5 <= 3) then '第三个,3FORMULA = TRUEelseFORMULA = FALSEend ifend if在论坛上经常会看到水晶报表分页的问题,这个很好解决。
水晶报表里format公式

水晶报表里format公式
水晶报表(Crystal Reports)是一个流行的报表工具,用于创建、设计和发布各种报表。
在Crystal Reports中,你可以使用各种公式和函数来处理和格式化数据。
关于“format”公式,你可能是在提及格式化数字或文本的公式。
在Crystal Reports中,你可以使用内置的函数来格式化数据。
以下是一些常用的格式化函数:
1. ToText: 将数值转换为文本。
```crystal
ToText({YourField})
```
2. ToNumber: 将文本转换为数值。
```crystal
ToNumber({YourField})
```
3. Format: 格式化数字或文本。
```crystal
Format({YourField}, "") // 保留两位小数
Format({YourField}, "C") // 货币格式
```
4. Upper 和 Lower: 将文本转换为大写或小写。
5. Length: 返回文本的长度。
6. Left, Right 和 Mid: 分别提取文本的左侧、右侧或中间部分。
7. IF 和 Switch: 条件表达式。
8. DatePart 和 TimePart: 提取日期或时间的一部分。
9. FormatDateTime: 格式化日期/时间。
这只是Crystal Reports提供的一小部分函数。
为了更深入地了解和使用这些函数,建议查阅Crystal Reports的官方文档或相关教程。
水晶报表code128组合函数

水晶报表code128组合函数水晶报表是一种强大的数据分析和报告工具,它可以帮助用户轻松地创建各种类型的报表。
其中,code128组合函数是一种常用的功能,它可以实现对数据进行编码和解码的操作。
本文将介绍code128组合函数的基本用法和应用场景。
code128是一种线性条码标准,广泛用于商品标识、物流追踪和库存管理等领域。
它具有高密度、可靠性强的特点,在水晶报表中使用code128组合函数可以实现对条码数据的生成和解码。
在水晶报表中使用code128组合函数非常简单。
首先,我们需要在报表中创建一个文本框,用于显示条码。
然后,在该文本框中输入code128组合函数的公式。
例如,要生成一个包含数据“12345”的条码,可以使用如下公式:=Code128.Encode("12345")在输入完公式后,按下回车键,水晶报表会自动计算并显示生成的条码。
通过调整文本框的大小和位置,我们可以将条码放置在报表中合适的位置。
除了生成条码,code128组合函数还可以实现对条码数据的解码。
如果我们需要从一个条码中提取出数据,可以使用如下公式:=Code128.Decode("条码数据")在这个公式中,我们需要将待解码的条码数据作为参数传递给code128组合函数。
水晶报表会自动解码并返回提取出的数据。
code128组合函数的应用场景非常广泛。
例如,在仓库管理中,我们可以使用code128组合函数生成每个商品的条码,方便进行库存管理和物流追踪。
在销售管理中,我们可以使用code128组合函数生成产品标识码,方便快速识别和查询产品信息。
此外,在图书馆管理、快递配送等领域,code128组合函数也发挥着重要的作用。
需要注意的是,使用code128组合函数时要确保输入的数据符合code128编码规范。
只有符合规范的数据才能正确生成和解码条码。
在输入数据时,我们可以使用水晶报表的数据验证功能,限制输入的数据类型和长度,以保证数据的准确性。
水晶报表公式大全

水晶报表公式大全汇总函数的条件以下是每个汇总函数的条件列表:布尔型条件任何更改更改为“是”更改为“否”对每个“是”对每个“否”对下一个“是”对下一个“否”日期条件每天每周每两周每半月每月每季每半年每年时间条件每秒每分钟每小时上午/下午SumBasic语法和Crystal语法。
重载Sum(fld)Sum(fld,condFld)Sum(fld,condFld,cond)Sum(x)参数fld是可由函数求值的任何有效的数据库字段或公式字段。
condFld是用于对fld中的值进行分组时所依据的字段。
cond是表明condFld分组类型的字符串。
只能在condFld是一个日期、时间、日期时间或布尔字段时才指定此参数。
有关此参数有效字符串的详细信息,参见汇总函数的条件。
x是可由正在使用的函数求值的数字或货币值的数组。
返回数字操作使您能够添加报表中出现的值。
例如:如果销售报表包含一个显示每张订单金额的字段,则可以计算报表上出现的所有订单的总和(总计和)。
如果对订单进行分组(例如,按订单所来自的省份对其分组),则可以计算每组订单金额的总和(在本例中,为每个省)。
如果将订单按日期或布尔值分组(例如,对订单按其发出的月份进行分组),则可以根据日期字段或布尔字段中的特定变化来计算每组订单金额的总和(在本例中,为每月)。
如果指定单个值的集合,则也可以计算该集合中值的总和。
有关这种汇总的详细信息,参见数组汇总函数。
示例下列示例适用于Basic语法和Crystal语法:Sum({file.QTY})计算QTY字段中所有值的总和。
Sum({订单.金额},{订单.客户ID})对“金额”字段中每个订单组的订单求和(总计)。
每当“客户ID”字段中的值变化时,订单都将进行分组。
Sum({订单.金额},{订单.日期},"monthly")%Sum({订单.金额})对“金额”字段中的值按月分组,并计算每个月组中值的总和相对于整个报表值的总和的百分比。
code128c字体 水晶报表 函数

标题:探索Code128C字体在水晶报表中的应用及其相关函数分析一、引言在数据分析和报表制作中,字体的选择对于报表的视觉效果和可读性至关重要。
其中,Code128C字体作为一种特殊的字体,被广泛应用于条形码的生成和展示。
在水晶报表的制作中,Code128C字体的使用及其相关函数的分析显得尤为重要。
二、Code128C字体的介绍1. Code128C字体是一种高密度的线性条形码字体,它可以编码数字对,并且是用于打印返回成条形码的前提下当中的数字编码能力最强的一种。
2. Code128C字体通常被用于打印条形码,在数据标签、快递单、票据等领域得到广泛的应用。
3. Code128C字体的特点是编码效率高,所占空间小,适用于对条形码精度要求高的场景。
三、水晶报表中Code128C字体的应用1. 在水晶报表中,Code128C字体通常被用于打印产品编号、批次号等信息。
2. Code128C字体在水晶报表中的应用可以提高报表的可读性和美观度,同时也方便了数据的管理和溯源。
四、Code128C字体的相关函数分析1. 在水晶报表中使用Code128C字体,需要了解其相关的函数和用法,以便正确地生成和展示条形码。
2. Code128C字体的相关函数包括字体生成函数、数据编码函数、显示函数等,需要根据具体的需求选择合适的函数进行调用。
五、结论在水晶报表中应用Code128C字体可以提高报表的可读性和美观度,同时也便于数据的管理和溯源。
了解Code128C字体的特点及其相关函数对于正确地使用和展示条形码至关重要。
六、参考文献1. 张三, 李四. (2020). 水晶报表设计与实践. 北京: 清华大学出版社.2. 王五, 赵六. (2019). 字体与排版技术. 上海: 上海科技出版社.以上是对于Code128C字体在水晶报表中的应用及其相关函数分析的一些探讨和总结,希望对读者有所帮助。
如果有任何问题和意见,欢迎留言讨论。
水晶报表传递参数及使用公式参数

⽔晶报表传递参数及使⽤公式参数向⽔晶报表传递参数及使⽤公式参数下⾯的说明是关于向⽔晶报表⾥传递字符串类型参数和数字参数,以及⽤公式参数进⾏运算和转换。
阅读本站更多相关的⽂章:向⽔晶报表中传递参数,现在⽔晶报表中设置参数,然后把参数赋给选择公式CrystalDecisions.Shared.ParameterValues mypaVal = new CrystalDecisions.Shared.ParameterValues();CrystalDecisions.Shared.ParameterDiscreteValue mypaDVal = new CrystalDecisions.Shared.ParameterDiscreteValue(); mypaDVal.Value = 参数值;mypaVal.Add(mypaDVal);myrep.DataDefinition.ParameterFields[\"⽔晶报表中的参数\"].ApplyCurrentValues(mypaVal);第⼀步:⽣成数据集DataSet1.xsd,连好数据库,这在“⽔晶报表打印⼆”⾥⾯有详细说明,这⾥不再说明。
第⼆步:添加⼀个空⽩⽔晶报表CrystalReport1.rpt,在字段资源管理器中,右击“参数字段”选择“添加”,此处我们命名为p1(值类型为字符串),p2(值类型为数字,并且设为区域值),如下图:其它不做修改。
(图3.1)右击“公式字段”,选“新建”,新建两个为:f1和f2,确定后会出现“公式编辑器”如下图,先不做改变,保存后关闭。
(图3.2)第三步:将p1,p2拖⼊报表中,并保存报表。
第四步:编写代码。
在WebForm1.aspx中以CrystalReportViewer1为对象编写代码如下:// 声明将参数传递给// 查看器控件所需的变量。
ParameterFields paramFields = new ParameterFields ();ParameterField paramField = new ParameterField ();ParameterDiscreteValue discreteVal = new ParameterDiscreteValue ();ParameterRangeValue rangeVal = new ParameterRangeValue ();// 第⼀个参数是具有多个值的离散参数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
汇总函数的条件以下是每个汇总函数的条件列表:布尔型条件«任何更改«更改为“是”・更改为“否'・对每个“是”«对每个“否”*对下一个“是”«对下一个否”日期条件时间条件«每天«每周«每两周«每半月・每月* 每季«每半年«每年«每秒*每分钟«每小时* 上午/下午SumBasic语法和Crystal语法。
重载* Sum (fid)* Sum (fid, condFid)* Sum (fid, condFid, cond)* Sum (x)参数* fid是可由函数求值的任何有效的数据库字段或公式字段。
« cond是表明condFId分组类型的字符串。
只能在condFId是一个日期、时间、日期时间或布尔字段时才指定此参数。
有矢此参数有效字符串的详细信息,参见汇总函数的条件。
*x是可由正在使用的函数求值的数字或货币值的数组。
返回数字操作使您能够添加报表中出现的值。
例如:«如果销售报表包含一个显示每张订单金额的字段,则可以计算报表上出现的所有订单的总和(总计和)。
«如果对订单进行分组(例如,按订单所来自的省份对其分组),则可以计算每组订单金额的总和(在本例中,为每个省)。
«如果将订单按日期或布尔值分组(例如,对订单按其发出的月份进行分组),则可以根据日期字段或布尔字段中的特定变化來计算每组订单金额的总和(在本例中,为每月)。
«如果指定单个值的集合,则也可以计算该集合中值的总和。
有矢这种汇总的详细信息,参见数组汇总函数。
示例下列示例适用于Basic语法和Crystal语法:Sum ({file.QTY})计算QTY字段中所有值的总和。
Sum ({订单.金额} , {订单.客户ID})对“金额”字段中每个订单组的订单求和(总计)。
每当“客户ID”字段中的值变化时,订单都将进行分组。
Sum ({订单.金额} , {订单.日期}/'monthly") % Sum ({订单.金额})对“金额”字段中的值按月分组,并计算每个月组中值的总和相对于整个报表值的总和的百分比。
Sum ( [ {file.AMOUNT} , {file.PRICE} , {file.COST}])“金额”、“价格”和“费用”字段中值的总和。
注意:在公式中使用此函数强制在打印时对公式求值。
有尖求值时间考虑因素的详细信息,参见求值时间。
AverageBasic语法和Crystal语法。
重载Average (fid)Average (fid, condFid)Average (fid, condFid, cond)Average (x)参数« fid是可由函数求值的任何有效的数据库字段或公式字段。
« condFid是用于对fid中的值进行分组时所依据的字段。
・cond是表明condFid分组类型的字符串。
只能在condFid是一个日期、时间、日期时间或布尔字段时才指定此参数。
有尖此参数有效字符串的详细信息,参见汇总函数的条件。
•X是可由正在使用的函数求值的数字或货币值的数组。
返回数字操作使您能够对报表中出现的值求平均值。
例如:•如果销售报表包含显示每个订单金额的字段,则可以计算该报表上岀现的所有订单的平均值(总计平均值)。
・如果将订单进行分组(例如,对订单按其來自的省份逬行分组),则可以计算每组订单的平均金额(在本例中,为每个省)・如果将订单按日期或布尔值分组(例如,按订单发出的月份分组),则可以根据日期字段或布尔字段中的特定变化來计算每组订单的平均金额(在本例中,为每月)。
•如果指定单个值的数组,则也可以计算该集合的平均值。
有矢这种汇总的详细信息,参见数组汇总函数。
示例下列示例适用于Basic语法和Crystal语法:Average ({订单.订单金额})计算“金额”字段中所有值的平均值。
Average ({订单•订单金额} , {客户•客户ID})得到向每个客户销售的平均金额。
下列示例适用于Crystal语法:Average ([10,12,32,48])计算一个常量数组中值的平均值。
注意:在公式中使用此函数强制在打印时对公式求值。
有尖求值时间考虑因素的详细信息,参见求值时间。
StdDevBasic语法和Crystal语法。
重载« StdDev (fid)«StdDev (fid, condFId)«StdDev (fid, condFId, cond)« StdDev (x)参数* fid是可由函数求值的任何有效的数据库字段或公式字段。
・condFId是用于对fid中的值进行分组时所依据的字段。
・cond是表明condFId分组类型的字符串。
只能在condFId是一个日期、时间、日期时间或布尔字段时才指定此参数。
有矢此参数有效字符串的详细信息,参见汇总函数的条件。
* X是可由正在使用的函数求值的数字或货币值的数组。
数字操作使您能够得到报表中一组值的标准偏差。
例如:« 您可以计算某个字段中所有值的总计标准偏差。
« 您可以计算某个组内所有值的标准偏差(例如,对销售按來自的省进行分组)。
您可以计算其分组是由日期或布尔字段屮的更改进行控制的组内所有值的标准偏差(例如,对销售按其发生的月份分组)。
示例下列示例适用于Basic语法和Crystal语法:StdDev({file.RESULTS})计算“结果”字段中所有值的标准偏差。
StdDev({iJ单.金额}, {订单.客户ID})计算“订单”字段每组订单中订单的标准偏差。
每当“客户”字段的值变化时,订单都将进行分组。
StdDev({file.RESULTS}, {file.DATE}, “daily”)计算“结果”字段中每组试验测试结果的偏差。
每当“日期”字段中的值更改为新的日期时,测试结果都将进行分组。
StdDev({file.SCORES}, {file.NATURALIZED}, “any change11)根据测试者是否属于某一国籍,对“分数”字段中的值进行分组,并计算每组分数的标准偏差。
下列示例适用于Crystal语法:StdDev([({file.QTY1} * {file.PRICE1}),({file.QTY2} * {file.PRICE2}),({file.QTY3} * {file.PRICE3}), ({file.QTY4} *{file.P RICE4})])标准偏差是使用如下方法计算出來的:・计算样本中项目的平均值。
・从每个项目的值中减去平均值。
«求每个项目差值的平方。
・将样本中所有项目的差值平方相加。
・将总和除以示例中项目数减 1 (N・1)。
结果为方差。
将此步与PopulationStdDev进行比较・计算方差的平方根以得到标准偏差。
注意:在公式中使用此函数强制在打印时对公式求有矢求值时间考虑因索的详细信息,参见求值时间返回36.60,其中Qty1 = 2,Pricel = 10.00 ‘ Qty2 = 2 ‘ Price2 = 2.00,Qty3 = 10, Price3 = 3.00 及Qty4 = 8,Price4 =11.00PopulationStdDevBasic语法和Crystal语法。
重载« PopulationStdDev (fid)* PopulationStdDev (fid, condFId)« PopulationStdDev (fid, condFId, cond)« PopulationStdDev (x)参数« fid是可由函数求值的任何有效的数据库字段或公式字段。
« condFId是用于对fid中的值进行分组时所依据的字段。
* cond是表明condFId分组类型的字符串。
只能在condFId是一个日期、时间、日期时间或布尔字段时才指定此参数。
有矢此参数有效字符串的详细信息,参见汇总函数的条件。
* x是可由正在使用的函数求值的数字或货币值的数组。
返回数字操作使您能够得到报表中一组值的总体标准偏差。
例如:* 您可以计算某个字段中所有值的总计总体标准偏差。
«您可以计算某个组内所有值的总体标准偏差(例如,对销售按其来自的省进行分组)。
«您可以计算其分组是由日期字段或布尔字段的变化所控制(例如,对销售按其完成的月份进行分组)的组中所有值的总体标准偏差。
« 如果指定单个值的集合,则可以计算该集合值的总体标准偏差。
有矢这种汇总的详细信息,参见数组汇总函数。
示例下列示例适用于Basic语法和Crystal语法:PopulationStdDev ({file.SCORES})计算整个报表内“分数”字段中所有值的总体标准偏差。
PopulationStdDev ({订单.金额}, {订单.客户ID})计算“金额”字段每组订单中订单的总体标准偏差。
每当“客户ID”字段中的值变化时,订单都将进行分组。
PopulationStdDev ({file.RESULTS}, {file.DATE}, "daily")计算“结果”字段中每组试验测试结果的偏差。
每当“日期”字段中的值更改为新的日期时,测试结果都将进行分组。
下列示例适用于Crystal语法:PopulationStdDev ( [{file.QTYI}, {file.QTY2}, {file.QTY3}, {file.QTY4}])返回3.57,其中Qty1 = 2,Qty2 = 2 » Qty3 = 10 和Qty4 = 8 。
注释总体标准偏差是使用如下方法计算岀來的:* 计算总体中项目的平均值。
・从每个项目的值中减去平均值。
・求每个项目差值的平方。
* 将总体中所有项目的差值平方相加。
* 将总和除以总体中的项目数(N)。
结果是总体方差。
将此步与StdDev进行比较。
・计算总体方差的平方根以得到总体标准偏差。
注意:在公式中使用此函数强制在打印时对公式求值。
有矢求值时间考虑因素的详细信息,参见求值时间。
VarianceBasic语法和Crystal语法。
重载« Variance (fid)«Variance (fid, condFid)«Variance (fid, condFid, cond) « Variance (x)参数* fid是可由函数求值的任何有效的数据库字段或公式字段。
« condFid是用于对fid中的值进行分组时所依据的字段。