繁体   English   中英

如何使ReportBuilder中的主/明细子报表正确显示?

[英]How do I make Master/Detail subreports in ReportBuilder come out right?

我在ReportBuilder中有一个报告,该报告应该报告两个对象。 我没有创建此报告,也无法询问做此事的人。 在运行报告之前,我们需要执行一些代码,查找对象上的所有属性,然后将它们加载到如下所示的内存数据集中:

OBJECT_ID: TStringField
PROP_NAME: TStringField
PROP_VALUE: TStringField

然后,报表引擎会在报表上为此数据集中的每个属性创建一行。 这是在子报表中实现的,该报表的父报表仅包含OBJECT_ID,这是人类可读的名称。

一切都进行得很顺利,直到我们必须在报告中显示任意大小的“注释”。 我使用TMemoField制作了第二个子报表,以便它可以容纳文本,并在报表设计器中设置报表。

运行报表时,我期望的结果如下所示:

HEADER
   Object 1 properties
   Object 1 comment
   Object 2 properties
   Object 2 comment

我已经成功地获得关于一切 我使用了子报表管道的MasterDataPipeline和MasterFieldLinks属性来尝试将子报表的OBJECT_ID与标题的OBJECT_ID链接起来,这是我设法找到的最接近的,但是现在我看到的是:

HEADER
   Object 1 properties
   Object 1 comment
   Object 2 comment

即使我已手动验证数据已正确将其放入数据集,也看不到“对象2属性”部分。

这让我发疯。 那里的任何ReportBuilder专家都知道发生了什么,现在要解决它?

您做对了,但是必须在数据集(即TTable,TClentDataSet)而不是管道中设置master-detail链接。 请参阅RBuilder PDF手册的第291页(可以在Digital Metaphors网站上找到)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM