使用XtraReport的CalculatedFiled(计算字段)实现RDLC报表中表达式

时间:2022-09-28 18:26:02

DevExpress报表确实强大,花样繁多,眼花缭乱。

这次使用XtraReport开发报表,很多问题在官方的文档中并没有详细的说明,特此记录。

1、XtraReport中FormattingRules属性是只能返回bool值的条件(Condition)判断,而不是我想要的表达式。

2、根据XtraReport官方文档中拖控件的方式创建的CalculatedFiled才是我想要的表达式。

1》拖控件的方式不灵活,而且XtraReport对象的DataSource(数据源)使用的DataSet类型,在构造XtraReport时必须指定DataMember属性。

this.calculatedField1 = new CalculatedField
{
DataMember = "Product",
Expression = "Iif([Id]==1,-2,2 )",
Name = "calculatedField1"
};
this.CalculatedFields.AddRange(new DevExpress.XtraReports.UI.CalculatedField[] {
this.calculatedField1});//把计算字段放到报表的计算字段集合中,否则无法表现此字段。
this.DataMember = "Product";
this.DataSource = ds;
this.xrTableCell1.DataBindings.Add("Text", null, "Product.calculatedField1");

不过,这些都是拖拖控件就会自动生成的,不需要手动去写。

2》用纯代码的方式来实现,我的数据源是List<>类型,这时候需要注意在构造时,一定不能指定DataMember属性。

this.calculatedField1 = new CalculatedField
{
//DataMember = "Product",//使用List作为数据源,一定不能设置DataMember属性
Expression = "Iif([Id]==1,-2,2 )",
Name = "calculatedField1"
};
this.CalculatedFields.AddRange(new DevExpress.XtraReports.UI.CalculatedField[] {
this.calculatedField1});
//this.DataMember = "Product";//使用List作为数据源,一定不能设置DataMember属性
this.DataSource = list;
this.xrTableCell1.DataBindings.Add("Text", null, "calculatedField1");

3、XtraReport报表似乎不支持RDLC中行组(RowGroup)和列组(ColumnGroup),或许是我没有发现。

使用XtraReport的CalculatedFiled(计算字段)实现RDLC报表中表达式的更多相关文章

  1. &lbrack;转&rsqb;rdlc报表中表达式的使用--switch和IIF范例

    本文转自:http://hi.baidu.com/oypx1234/item/5b35dec4e03a3ad697445266 =Switch( Fields!MLWHLO.Value = &quot ...

  2. 在RDLC报表中对纸张的设置

    RDLC报表是存放成XML文件格式的,这一点你可以直接打开RDLC报表文件看一下,而且在使用时,通过ReportViewer来读取报表并与数据源进行合成,也就是说RDLC是定义了一个格式,那就不能通过 ...

  3. C&num;中RDLC报表常用表达式&lpar;字符串和转换&rpar;

    字符串函数 (1)使用串联运算符和 Visual Basic 常量可将多个字段组合在一起.以下表达式返回两个字段,它们分别位于同一文本框的不同行中:=Fields!FirstName.Value &a ...

  4. C&num;中RDLC报表中日期显示格式

    转换为日期类型再格式化 =CDate(Fields!UseDate.Value).ToString("yyyy-MM-dd") 使用Format ==Format(Fields!C ...

  5. QuickBI助你成为分析师——计算字段功能

    摘要: 在用户创建报表时,通过现有字段数据不能直接满足展示需求,需要进行一定建模操作.目前产品支持在数据集编辑界面进行初步建模,下面主要介绍新建字段功能,以达到展示需求. 在用户创建报表时,有时通过现 ...

  6. django 模型中的计算字段

    models.py class Person(models.Model): family_name= models.CharField(max_length=20, verbose_name='姓') ...

  7. mysql必知必会--创建计算字段

    计算字段 存储在数据库表中的数据一般不是应用程序所需要的格式.下面举 几个例子. * 如果想在一个字段中既显示公司名,又显示公司的地址,但这两 个信息一般包含在不同的表列中. * 城市.州和邮政编码存 ...

  8. rdlc报表随笔心得 ,基本结构和一些表达式。

    Dataset Form RDLC 主要放数据集的文件夹 存放窗体的文件夹 存放各种报表的文件夹 第一部,创建报表结构 首先添加数据集项 添加完成之后我们会看到这个页面 之后我们在上面添加一些数据集 ...

  9. WPF中RDLC报表的钻取实现

    1.新建wpf项目,并引入3个程序集: Microsoft.ReportViewer.WinForms WindowsFormsIntegration System.Windows.Forms 如果无 ...

随机推荐

  1. node&period;js &plus; mongodb 做项目的详解(一)

    想写博客很长时间了,因为一直身患懒癌,所以一直拖到了现在.markdown的语法也是刚刚学,试验一下效果好了不说了,直接上干货了.----------------------------------- ...

  2. Command模式

    Command模式只是封装了一个没有任何变量的函数. interface Command{ void Excute();} 具有强烈的分解功能的味道.把函数层面的任务提升到了类的层面(一个类仅仅是为了 ...

  3. wp8&period;1 C&num;技巧: 计时器

    public MainPage() { this.InitializeComponent(); this.timer = new DispatcherTimer();//新建委托时间实例 timer. ...

  4. iOS 关于流媒体 的初级认识与使用

    1.流媒体指在Internet/Intranet中使用流式传输技术的连续时基媒体,如:音频.视频或多媒体文件.流式媒体在播放前并不下载整个文件,只将开始部分内容存入内存,流式媒体的数据流随时传送随时播 ...

  5. mybati之&num;与&dollar;的区别

    $是用于sql的拼接: //因为user_name是String类型,所以在sql中加上单引号,需要手动的判断数据类型,value是如果没有指定参数的话,value就是默认参数名称,获取穿的参数就是: ...

  6. android MessageQueue入门

    接触安卓几年了.但是感觉一直不是很明白,东西太多了.反过来说就是自己太菜了.很多东西其实都是模凌两可,不熟悉,很多知识点都是知道一点,最多大家都这样用.没问题,事件长了也一直这样用的.但是有个问题,安 ...

  7. Win7 IE11无法打开的可能解决办法

    IE11点击后无反应,应该如何解决呢?我的机器出现上述情况后,采用下面的方法解决了问题:第一步,进入Windows 7的运行,打开Regedit,即注册表编辑器.依次找到 >>HKEY_C ...

  8. javascript Object的新方法

    今天复习es6,又看到Object的一堆方法,与es5的表现又有不一致,耗费了一整天,整理一下: 前几天在司徒正美的书里又看到了es5 Object的字眼,为了向下兼容,大神们也是牛逼的整理出一系列i ...

  9. 解决如下问题:You are using pip version 8&period;1&period;1&comma; however version 18&period;0 is available&period; You should consider upgrading via the &&num;39&semi;pip install --upgrade pip&&num;39&semi; command&period;

    问题描述: 今天想学习一下TUM数据集RGBD-Benchmark工具的使用,利用python进行相关操作时,缺少一个第三方模块,于是打算用pip进行安装,便出现如下图所示的问题. 解决办法: 执行如 ...

  10. Python 错误和异常小结&lbrack;转&rsqb;

    原文链接    http://blog.csdn.net/sinchb/article/details/8392827 事先说明哦,这不是一篇关于Python异常的全面介绍的文章,这只是在学习Pyth ...