Crystal报表将每个组中的最后一行数据传递给父报表

时间:2012-09-14 09:21:20

标签: crystal-reports report

我对从子报告到父报告的水晶报告传递值有一些疑问。

现在我有一个userID的子报告组。现在我想要传递最后一行数据每个UserID。例如子报告:

UserID : Jack
           id     No    Time     Diff
           1      1    08:10       0
           1      2    08:20      10
           1      3    08:35      15
Last Row:  1      4    09:10      35 

UserID : Peter
           id     No    Time      Diff
           2      1     08:10       0
           2      2     08:40      30
           2      3     08:45       5
           2      4     08:55      10
Last row:  2      5     09:00       5    

家长报告需要这样:

  UserID    No    Time     Diff
   Jack     4     09:10     35       (show last row for jack  in sub report)
   peter    5     09:00      5       (show last row for Peter in sub report)

如何将每个用户的最后一行传递给父级?如何归档此功能?

1 个答案:

答案 0 :(得分:1)

我意识到这是一个老问题,但希望这仍然对你有用。

由于您要向主报表返回多个值,并且未定义总行数,因此可能更容易执行以下操作:

  • 创建第二个子报表,该子报表是第一个子报表的副本
  • 在新子报表的详细信息部分中,将以下代码添加到详细信息部分的抑制公式中:Next ({YourTable.id}) = {YourTable.id}

基本上,如果下一条记录id与当前id相同,则公式将取消详细记录。这样,只会显示每个id的最后一条记录。

您可以在第二个子报表中格式化细节线,以显示您想要的效果。

唯一的缺点是子报表基本上会运行两次,所以如果报告速度很慢,报表就会变慢。

相关问题