报表生成器FastReport .Net用户指南:表达式(下)

翻译|行业资讯|编辑:胡涛|2024-03-07 11:18:32.870|阅读 27 次

概述:本文将继续向您介绍报表生成器FastReport .Net中有关表达式(下)部分,欢迎查阅~

#助力企业成功·知名软控件产品销售,立即咨询>>

相关链接:

在上一篇文章《报表生成器FastReport .Net用户指南:表达式(上)》中,我们已经介绍了表达式中的表达式编辑器引用报告对象使用 .Net 函数数据元素参考这四部分,接下来让我们继续介绍表达式中的:引用数据源引用总值参考报告参数

FastReport .Net是一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案,使用FastReport .NET可以创建独立于应用程序的.NET报表,同时FastReport .Net支持中文、英语等14种语言,可以让你的产品保证真正的国际性。

FastReport.NET官方版下载

引用数据源

在引用数据源列时,使用以下格式:

[DataSource.Column]

例如,源名称与列名称之间用句号隔开:

[Employees.FirstName]

如果使用关系引用数据源,源名称可以是复合的。更多详情,请参阅 "数据 "部分。例如,可以这样引用相关数据源列:

[Products.Categories.CategoryName]

让我们看看下面这个在表达式中使用列的示例:

[Employees.FirstName] + " " + [Employees.LastName]

这里需要注意的是:每一列都有明确的数据类型,该类型在 "DataType(数据类型)"属性中设置(如果事先在 "Data(数据)"窗口中选择了数据列,则可以在 "Properties(属性)"窗口中看到)。表达式中如何使用列取决于列的类型。例如,在上述示例中,名和姓这两列都是字符串类型,因此可以这样使用。在下面的示例中,我们将尝试使用数值类型的 "Employees.Age "列,这将导致错误:

[Employees.FirstName] + " " + [Employees.Age]

出现错误的原因是,字符串和数字不能混用。为此,您需要将数字转换为字符串:

[Employees.FirstName] + " " + [Employees.Age].ToString()

在本例中,我们把 "Employees.Age "列当作一个整数变量来引用。事实也是如此。我们知道,所有表达式都是经过编译的。从编译器的角度来看,所有非标准的东西(如引用数据列)都会被转换成另一种类型,而这种类型是编译器可以理解的。因此,最后一个表达式将被转换成下面的形式:

(string)(Report.GetColumnValue("Employees.FirstName")) + " " +
(int)(Report.GetColumnValue("Employees.Age")).ToString()

如图所示,FastReport 按以下方式更改对数据列的引用:
[Employees.FirstName] --> (string)(Report.GetColumnValue("Employees.FirstName"))

[Employees.FirstName] --> (string)(Report.GetColumnValue("Employees.FirstName"))

[Employees.Age] --> (int)(Report.GetColumnValue("Employees.Age"))


也就是说,我们可以在表达式中将数据列当作具有确定类型的变量来使用。例如,下面的表达式将返回雇员姓名的第一个符号:

[Employees.FirstName].Substring(0, 1)

引用总值

要引用一个总值,请使用其名称:

[TotalSales]

FastReport 将引用总数转换为以下形式:

Report.GetTotalValue("TotalSales")

正如您所看到的,这里没有使用数据类型。之所以如此,是因为总值属于 FastReport.Variant 类型。它可以在任何表达式中直接使用,因为它会自动转换为任何类型。例如:

[TotalSales] * 0.2f

参考报告参数

要用报告参数,应使用其名称:

[Parameter1]

参数可以嵌套。在这种情况下,父参数名和子参数名都应使用以下形式:

[ParentParameter.ChildParameter]

参数有明确的数据类型。它在参数的 "DataType "属性中设置。在表达式中的使用方式取决于参数的数据类型。

FastReport 将对报告参数的引用转换为以下方式:

((string)Report.GetParameterValue("Parameter1"))

本次关于 FastReport .Net 介绍就讲解到这里了,点击此处查看关于用户指南的更多内容。如果您想获取更多产品试用/授权/价格信息,请点击FastReport .Net了解,或者点击咨询慧都在线客服


FastReport技术QQ群:585577353      欢迎进群一起讨论


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问

在线咨询
联系我们

客服热线
023-68661681

QQ客服

意见反馈


添加微信获专业服务

TOP
在线客服系统
live chat