我已经在这里问了一个问题。
我的这个问题只是迈向同一个问题的一步。
我有一个非常适合调用报告的德尔福代码。
但是,现在我想在打开 rpt 文件之前显示一个 MessageBox。
我尝试单独查询它的记录数,然后决定使用 MessageBox。但是,这个解决方案有一个最坏的情况,即一个特定报告的查询本身需要 3 分钟来执行,然后在打开 rpt 时再次查询它需要 30 秒来加载(在第二个查询中它需要更少的时间可能是因为某些数据可能存在于缓冲区/临时位置等)。
qPODPhy.close;
qPODPhy.SQL.clear;
qPODPhy.SQL.text :='select * from ViewName';
qPODPhy.Open;
If qPODPhy.RecordCount < 1 Then
MessageBOx('No data To Display...');
Else
Begin
crRep.Somproperties := Initialization
.
.
.
CrRep.SQLQuery := qPODPhy.SQL.text;
crRep.action := 1
End
我的问题是:
如果特定视图的输出不会显示任何记录,我该如何显示 MessageBox。
或者
有没有一种方法可以让我在 delphi 代码中打开 .rpt 文件的数据集并检查记录数并做出决定?简而言之,水晶报告组件是否有一些属性可以做到这一点?