聚集表达式AggregateExpression主要包括几种:Avg(),Count(),Exists(),Max(),Min(),Single()和Sum()。其中对于Sum(),在我看来主要有两种用法,一种是Group时的合计,另一种是整个页面某个列的值的合计。但是对于Count(),由于以前对DevExpress的了解不足,所以对Count()也不是很了解。

  今天就是在开发报表的过程中遇到了一个问题,经过DevExpress支持的帮助,通过Count()完成了较为复杂的功能。具体情况:我有三条记录,如下图1所示,想生成如图2所示的报表内容,怎么做呢?

  如果放在以前,我可能需要创建2个CalculatedField,并且分别添加表达式内容:Iif([VisitStatus]=='VISITED',1,0) 和Iif([VisitStatus]=='CANCELLED',1,0),然后再使用Sum()与Group结合的方式来实现,但有了Count()情况便有了不同,具体实现如下:

  首先,我们也需要建立两个CalculatedField,并且分别添加表达式内容:[][[^.ClinicName] == [ClinicName] AND [VisitStatus] == 'VISITED'].Count()和[][[^.ClinicName] == [ClinicName] AND [VisitStatus] == 'CANCELLED'].Count(),从中我们可以看到,具体的数量已经通过遍历ClinicName并且限制VisitStatus实现了,所以无需向以前一样再使用Sum()。

  通过以上对比,方案1可以作为方案2的一个备用,两个的相同点都是仅在GroupHeader中进行操作,并且都可以实现最终结果,但两者还是有着些许的区别,特别是在使用GroupBy时,具体区别如下所示:

具体聚集表达式AggregateExpression的具体用法参见以下官网链接:

How to: Calculate an Aggregate Function

转载于:https://www.cnblogs.com/sccd/p/6522229.html

Dev Express Report 学习总结(五)在分组中使用聚集表达式AggregateExpression相关推荐

  1. Dev Express Report 动态表头设置

    例:比如一个表头有多个值组成,但要实现动态显示时,要经过以下几步操作来完成; 步骤一:把要显示的动态值分开,把要实现动态的控件放到XrPanel中,前端设计完成: 步骤二:Dev Express Re ...

  2. 【python教程入门学习】五、Python中的列表(list)

    列表是在Python中是一组数据的集合 如: li = ['jack','tom','jim'] 列表中的数据类型也可以不同 如: li = ['jack',123,'tom',89] 列表中也可以嵌 ...

  3. Docker学习笔记五 在测试中使用Docker

    2019独角兽企业重金招聘Python工程师标准>>> 5.1 使用Docker测试静态网站(Nginx) 将项目命名为Sample 首先建立构建环境 mkdir sample cd ...

  4. JAVA学习第五篇--java中对象的创建过程以及函数的调用过程

    下面本文将详细介绍java语言中对象的创建过程,以及函数的调用过程. class Person{public String name="zhao";public int ege;p ...

  5. Mule学习(五、Mule Expression Language - MEL表达式)

    1. MEL的优势 在Mule ESB上有很多方法可以操作Mule Message,比如Java语言或者其他脚本语言(比如JavaScript等).但是MEL表达式是Mule推荐使用,在Mule应用中 ...

  6. CAD二次开发学习笔记五(在ObjectARX中使用MFC)

    要实现的功能是: 执行ArxModal命令,弹出如图所示对话框 选择点,则得到点坐标,选择角度则得到角度值. 步骤一: 新建基于MFC的ObjectArx项目, 参考:http://www.cnblo ...

  7. 大数据学习系列:Hadoop3.0苦命学习(五)

    传送门: 大数据学习系列:Hadoop3.0苦命学习(一) 大数据学习系列:Hadoop3.0苦命学习(二) 大数据学习系列:Hadoop3.0苦命学习(三) 大数据学习系列:Hadoop3.0苦命学 ...

  8. PostgreSQL学习手册(五) 函数和操作符

    PostgreSQL学习手册(五) 函数和操作符 一.逻辑操作符:     常用的逻辑操作符有:AND.OR和NOT.其语义与其它编程语言中的逻辑操作符完全相同. 二.比较操作符:     下面是Po ...

  9. 3.5 集束搜索的误差分析-深度学习第五课《序列模型》-Stanford吴恩达教授

    集束搜索的误差分析 (Error analysis in beam search) 在这五门课中的第三门课里,你了解了误差分析是如何能够帮助你集中时间做你的项目中最有用的工作,束搜索算法是一种近似搜索 ...

最新文章

  1. SoapUI启动报错:The JVM could not be started. The maximum heap size (-Xmx) might be too large
  2. Java多线程中run和start的区别
  3. 高斯模糊java代码_OpenCV3 Java图形图像上的高斯模糊(Imgproc.GaussianBlur)
  4. 前端入行两年--教会了我这些道理
  5. 奇妙的安全旅行之国密算法
  6. flowable实战(六)flowable的意见表和附件表应用
  7. php安卓直播抓取,hls,android_安卓大部分浏览器播放HLS协议直播流会从头开始,hls,android,ffmpeg,m3u8 - phpStudy...
  8. UI素材实用模板|2.5D等距风格插画专辑
  9. Flex(try-catch-finally)机制
  10. Flask开发服务器
  11. redis JAVA hmset_Spring boot 连接Redis实现HMSET操作
  12. PAIP.提升安全性----COOKIE绑定IP与城市与运营商
  13. ERROR: Unexpected bus error encountered in worker. This might be caused by insufficient shared memor
  14. 动态贝叶斯网络DBN
  15. AI之语音转写项目实践
  16. 线粒体靶向的纳米递送PCN-224 纳米粒子-瑞禧
  17. 思翼FM30高频头蓝牙数传连接地面站远距离通信功能
  18. php pcntl_alarm,pcntl_alarm定时闹钟信号详解
  19. 猫哥教你写爬虫 031--爬虫基础-html
  20. 陶华碧: 就懂辣椒酱,作为吃的东西,即使过了几代,也依然能够传的下去。

热门文章

  1. MySQL 字符串分割 SUBSTRING_INDEX函数
  2. autoconf.mk详析
  3. [Redux/Mobx] 在React中你是怎么对异步方案进行选型的?
  4. React-Router面试题汇总
  5. react(79)--ant design确认框
  6. 前端学习(3186):ant-design的button介绍按钮属性
  7. [html] 写一个布局,当页面滚动一定高时,导航始终固定在顶部,反之恢复原位
  8. [html] 制作一个多选的下拉框
  9. [vue] 分析下vue项目本地开发完成后部署到服务器后报404是什么原因呢?
  10. [js] 写一个格式化时间的方法