Crystal reports 正在读取主报表页眉中的共享变量[在子报表中受影响]

Crystal reports 正在读取主报表页眉中的共享变量[在子报表中受影响],crystal-reports,reporting,crystal-reports-2008,Crystal Reports,Reporting,Crystal Reports 2008,我的问题是,在主报告的页眉部分,我显示了一个shared(shared numbervarx)变量的值 我试图在报告的两个不同部分修改此变量的内容(第1部分=>Shared NumberVar x:=1,第2部分=>Shared NumberVar x:=2),然后在子报告中分配变量x=3(子报告中的Shared NumberVar x:=3) 问题在于,页眉部分中x变量的结果没有更改为3,而在显示子报表后仍然为2 Crystal Reports不允许读取页眉部分中的共享变量,因为页眉位于子报表

我的问题是,在主报告的页眉部分,我显示了一个shared(shared numbervarx)变量的值

我试图在报告的两个不同部分修改此变量的内容(第1部分=>Shared NumberVar x:=1,第2部分=>Shared NumberVar x:=2),然后在子报告中分配变量x=3(子报告中的Shared NumberVar x:=3)

问题在于,页眉部分中x变量的结果没有更改为3,而在显示子报表后仍然为2

Crystal Reports不允许读取页眉部分中的共享变量,因为页眉位于子报表之前


是否有其他解决方案,以便我可以读取主报告标题中子报告中分配的共享变量?

由于变量和子报告的计算方式,恐怕这是不可能的。在主报表中,只要报表层次结构正确,您几乎可以在报表的每个部分重新分配一个变量。您可以在打印记录时正确使用
同时读取记录与子报告,即使您使用
WhileReadingRecords声明变量
在子报表中,打印记录时的
显示变量,该变量与子报表同时计算。因此,子报表在层次结构中的位置必须高于显示变量的公式。这是一个很好的图表,显示了报表运行时的不同过程。

我理解。但有没有其他方法可以解决这个问题,并在子报表中获取评估变量。我不太清楚为什么需要在报告的每个部分为同一变量指定不同的值。也许在您的原始问题中对此进行一点详细说明,然后我们可以看看是否有其他方法可以实现您的目标。我找到了一个解决方案,我扣除了子报告显示的页数,并根据检测到的页数,更改了主报告页眉部分的变量,谢谢