【发布时间】:2012-12-22 15:33:06
【问题描述】:
这可能是一个新手问题,但我无法解决这个问题。
我有一个 TQuery 组件 (Query1),它从数据库中返回一个数据集。
我想将其中的记录传递给 QuickReport QRDBText 组件 - 到目前为止没有成功。
我在运行时创建 Query1,然后快速报告会出现一个事件(按下按钮)。我已经做到了这一点:
QReport.DataSet:=Query1;
QRDBText1.DataSet:=Query1;
QRDBText1.Datafield:='Vnev'; //first field in query
QRDBText2.DataSet:=Query1;
QRDBText2.Datafield:='Knev'; //second field in query
QRDBText3.DataSet:=Query1;
QRDBText3.Datafield:='Idcard'; //third field in query
但这向我展示了灰色的大空。 如果我使用示例数据库操作并在 QuickReport 上放置一个 TTable,并通过 Object Inspector 设置连接,它就可以工作。但同样:我需要显示我的查询中的数据。 任何帮助都会派上用场!谢谢
【问题讨论】:
-
QRDBText1 属于哪种波段?
-
它是详细类型。这应该会不断重复,直到数据流结束。
-
显示更多代码。你在打开查询吗?您是否尝试在 Query 上进行“while not Query1.Eof do Next”测试以确保它实际上返回了一些数据?
-
感谢您帮助我。当然,我在从中收集任何数据之前打开了查询。但是我没有使用它的Next函数,因为当源是示例数据库时不需要它。
-
我取得了一些进展。现在 QuickReport 从查询中返回我的数据,但只返回第一行。我坚持认为,如果我将必要的数据文件放在报告的详细信息带中,它会不断重复,直到数据流结束。我怎样才能让它工作? (让它重复)
标签: delphi quickreports