FastReport 指定sql,修改数据源,非DataSet修改
- 介绍
- 报告文件: codetest.frx 文件
- 核心代码:
- (扩展)小结一下:
介绍
在FastReport
中,经常会遇到需要给 sql
加条件的情况。
(废话不多说)比如下面这个案例。
报告文件: codetest.frx 文件
如果直接运行的话,就会查询出数据库中的全部:
但是我们现在要通过改变Sql来查询,所以需要调整sql语句,可以通过下面代码来改变:
核心代码:
通过核心代码修改Sql之后,就可以实现下图效果了。
完整代码:
(扩展)小结一下:
通过 tableDataSource
来设置了Sql
,是不是也代表其他地方
也可以设置呢。
答:没错
在这里,其实还有很多方法可以实现。我们可以通过配置字典来观察等等。
着一些都是可以通过 DataComponentBase
来接触底层的一些代码。如下图和介绍
FastReport.Utils.DataComponentBase
是 FastReport 报表生成器中的一个类,它是 FastReport 中的数据组件基类。FastReport 是一个用于生成复杂报表的工具,它支持多种数据源,包括数据库、XML、Excel 文件等。
DataComponentBase
类提供了一系列方法,用于处理报表中的数据。这些方法包括:
-
GetData()
: 获取数据源中的数据。 -
SetData()
: 设置数据源中的数据。 -
Refresh()
: 刷新数据源,重新从数据源获取数据。 -
GetRow()
: 获取数据源中的指定行。 -
SetRow()
: 设置数据源中的指定行的数据。 -
AddRow()
: 在数据源中添加新行。 -
DeleteRow()
: 删除数据源中的指定行。
这些方法为报表提供了基本的数据操作功能,使得用户可以轻松地处理报表数据。此外,DataComponentBase
类还可能包含其他用于数据处理的方法和属性。
在使用 FastReport 创建报表时,您可能需要从DataComponentBase
派生出自己的类,以便为特定的数据源或数据操作提供自定义逻辑。这可以通过继承DataComponentBase
类并重写其方法来实现。
请注意,FastReport 的具体类和方法可能会随着版本的更新而变化,因此建议查阅最新的 FastReport 文档以获取最准确的信息。