Crystal reports 将子报表包含到分组节中

Crystal reports 将子报表包含到分组节中,crystal-reports,parameter-passing,subreport,Crystal Reports,Parameter Passing,Subreport,问了同样的问题,但我希望对接受的答案的评论是错误的:因为子报告必须在详细信息部分中,所以不能这样做。此外,选择的答案说要做的事情不起作用(可能是因为其他细节,没有双关语) 因此,这个看起来像是一个重复的问题,但原始问题似乎没有得到回答,当然,我无法使用已接受的“答案” (另见) “我的子报表”可以列出一到多个项目,每个项目都可以连接到主报表详细信息中的一个或多个项目。它们加入的公共字段是分组项。因此,例如,子报表可能有三个项目和五个细节,但如果我把它们全部放在细节中,我将有十五行,第一部分重复五

问了同样的问题,但我希望对接受的答案的评论是错误的:因为子报告必须在详细信息部分中,所以不能这样做。此外,选择的答案说要做的事情不起作用(可能是因为其他细节,没有双关语)

因此,这个看起来像是一个重复的问题,但原始问题似乎没有得到回答,当然,我无法使用已接受的“答案”

(另见)

“我的子报表”可以列出一到多个项目,每个项目都可以连接到主报表详细信息中的一个或多个项目。它们加入的公共字段是分组项。因此,例如,子报表可能有三个项目和五个细节,但如果我把它们全部放在细节中,我将有十五行,第一部分重复五次,第二部分重复三次


公共项显示为“命令字段”和“报告字段”。和组项。但无论我将其中哪一个链接为子报表参数,当我尝试查看报表时,子报表都不会得到任何结果,并要求我输入一个值。

在Crystal Reports的最新版本中,您有两个选项:您可以通过“子报表参数”对话框将子报表连接到主报表上的值。也可以在报告之间传递共享变量。如果使用的是“子报表参数”对话框,则传入的值将是显示组时该值的任何值。如果该值来自该组中的详细信息或来自主报表上的变量,则应通过罚款。如果该值是在组显示在报告上(从上到下)之后显示的值,则该值将不会被写入,并将作为null或空白传递给报告

共享变量在报表及其所有子报表之间共享。如果您需要从子报表获取数据或将单个值传递给多个子报表,那么它可能是更好的选择。如果在报表或子报表中更改了共享变量,它将在此后的所有内容中使用新值

SAP对这两种技术都有很好的指导:


请记住,Crystal变量总是根据它们在报告中的位置和打印顺序填充的。如果在另一个组或子报表打印后需要发生某些事情,则需要使用WhilePrintingRecords关键字。

第一个选项不起作用——我甚至在将其链接到子报表参数之前,将要使用的项放在了组标题的开头。子报表仍然要求我提供一个值。我将尝试共享变量。真是直肠痛。(再过五周,我就再也不用忍受水晶报告了!)@chargeric我也有同样的问题,但我的问题与子报告链接有关。你能告诉我为什么它会重复组内的所有子报告几次吗?