计算报表中的字段

可以使用报表设计器 在报表中创建不存在于数据源中的字段。此方法在创建依赖于数据源中其他属性的动态字段时十分有用。要创建动态字段,可使用 C# 表达式处理字符串、日期或数值字段类型。

可通过两种方式在报表设计器 中创建已计算的字段。第一种方法是将文本框添加到报表中并将表达式输入到文本框中,当生成报表时将执行此表达式。以下概述了此方法的步骤,包括表达式示例。第二种方法是将未绑定的“已计算”字段添加到报表中。可通过“报表节”树仅执行此操作。右键单击树中的“已计算”结点并选择“添加”。将创建可在报表使用的未绑定字段。未绑定字段的表达式应在字段的“公式”属性中设置。设置“公式”后,将字段拖动到报表中要用到它的部分。

未绑定字段允许您使用公式中的其他未绑定字段。因此,您可以创建“汇总”字段,通过未绑定字段在报表中生成动态内容。

注注:

您将不能使用未绑定的已计算字段来计算在公式中使用其他汇总统计数据的汇总统计数据。

步骤:
  1. 在“报表设计器”中打开报表
  2. 设计元素列表中,单击文本框,然后将元素拖到报表布局上的相应位置。
  3. 元素属性格网的数据字段区域中输入表达式。表达式始终以等号(=)开头。

    数学

    =Quantity + 5

    =Quantity - 3

    =Diameter * 3.14

    =Population / Area

    =(double)System.Math.Round(CostPerUnit*Inventory)

    有关所支持的数学函数的详细信息,请参阅 Math 类的 MSDN 帮助

    条件分析

    =(ValueField == 1)?"One":"Not One"

    =(Price < 10)?"Clearance":"Price-Change"

    =(SoilType == System.DBNull.Value) ?"No soil type specified" :SoilType

    日期/时间

    =System.DateTime.Now.ToString()

    =System.DateTime.UtcNow.ToString()

    有关所支持的日期/时间函数的详细信息,请参阅 DateTime 结构的 MSDN 帮助

    串连

    ="Average Cost:" + avgCostField

    =ZipCode + ZipCode4Digit

    字符串

    =Name.Substring(0,4)

    =Name.Replace("Test", "Final")

    =Name.ToUpper()

    有关所支持的字符串函数的详细信息,请参阅 String 类的 MSDN 帮助

  4. 单击运行报表查看预览。
  5. 如果字段值返回错误消息控件的控制脚本失败,请检查字段名拼写或表达式语法。

相关主题

9/15/2013