zoukankan      html  css  js  c++  java
  • 使用XtraReport的CalculatedFiled(计算字段)实现RDLC报表中表达式

    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),或许是我没有发现。

  • 相关阅读:
    CodeForces 288A Polo the Penguin and Strings (水题)
    CodeForces 289B Polo the Penguin and Matrix (数学,中位数)
    CodeForces 289A Polo the Penguin and Segments (水题)
    CodeForces 540C Ice Cave (BFS)
    网站后台模板
    雅图CAD
    mbps
    WCF学习-协议绑定
    数据库建表经验总结
    资源位置
  • 原文地址:https://www.cnblogs.com/kexxxfeng/p/4722477.html
Copyright © 2011-2022 走看看