Subreport 在子报表-水晶报表席中连接字符串

Subreport 在子报表-水晶报表席中连接字符串,subreport,crystal-reports-xi,Subreport,Crystal Reports Xi,我有一份现有报告的工作原理如下: 主要报告 分报告1 次级报告2 子报表1中有一个字段需要是某个相关记录中的串联字符串。如果我能在子报表中创建子报表,我现在就可以完成了。但由于这是不可能的,我的想法是在Main中创建另一个(非打印)子报表,它循环遍历我需要的记录,并将我想要的值转换成一个共享变量。然后在子报表1中显示该共享变量 嗯,我已经尝试了很多方法,我有很多问题,但首先,我甚至不能正确填充字符串。我的子报表中的公式仅获取第一个值 这是我的公式: WhilePrintingRecords; s

我有一份现有报告的工作原理如下:

主要报告 分报告1 次级报告2

子报表1中有一个字段需要是某个相关记录中的串联字符串。如果我能在子报表中创建子报表,我现在就可以完成了。但由于这是不可能的,我的想法是在Main中创建另一个(非打印)子报表,它循环遍历我需要的记录,并将我想要的值转换成一个共享变量。然后在子报表1中显示该共享变量

嗯,我已经尝试了很多方法,我有很多问题,但首先,我甚至不能正确填充字符串。我的子报表中的公式仅获取第一个值

这是我的公式:

WhilePrintingRecords;
shared stringvar PressMats;
PressMats := PressMats + {PV_JobStep.ItemCode} + "    ";
对于我正在运行的测试报告,表PV_JobStep中有两条记录需要提取。它只拾取第一个。公式放置在子报表的报表标题中。这是它将运行的唯一地方,尽管在我看来,它应该在子报告的详细信息部分是有道理的,但我什么也得不到


请让我知道我能提供的其他细节。我不熟悉Crystal Reports。

创建另一个用于重置变量的公式,并将其放置在页脚中。 打印记录时;
共享stringvar PressMats=''

创建另一个用于重置变量的公式,并将其放在页脚中。 打印记录时;
共享stringvar PressMats=''

这防止了字符串在第二次传递期间被复制,但仍然没有拾取第二个ItemCode。当子报表运行时,它是否会遍历该数据集中的所有记录?我需要它来运行每个记录的公式。我不清楚为什么将此公式放置在子报表的“详细信息”部分时不运行。在组标题中添加组放置串联公式,在组页脚重置公式这防止了字符串在第二次传递期间重复,但仍然没有拾取第二个项代码。当子报表运行时,它是否会遍历该数据集中的所有记录?我需要它来运行每个记录的公式。我不清楚为什么将此公式放置在子报表的详细信息部分时不运行。在组标题中添加组放置串联公式,在组页脚中重置公式