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

Crystal reports Crystal report将每个组中的最后一行数据传递给父报表,crystal-reports,report,Crystal Reports,Report,我对crystal报表从子报表传递到父报表的值有一些疑问 现在我有了一个按userID划分的子报表组。现在我想为每个userID传递最后一行数据。例如,子报告如下所示: UserID : Jack id No Time Diff 1 1 08:10 0 1 2 08:20 10 1 3 08:35 15 La

我对crystal报表从子报表传递到父报表的值有一些疑问

现在我有了一个按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)
父报表需要如下所示:

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)

如何将每个用户的最后一行传递给家长?如何存档此功能?

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

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

  • 创建作为第一个子报表副本的第二个子报表
  • 在新子报表的detail部分,将以下代码添加到detail部分的抑制公式中:
    Next({YourTable.id})={YourTable.id}
基本上,如果下一条记录的
id
与当前的
id
相同,则公式将抑制细节记录。这样,只会显示每个
id
的最后一条记录

您可以在第二个子报告中设置详细信息行的格式,使其按所需方式显示


唯一的缺点是子报表实际上会运行两次,因此如果它是一个慢报表,您的报表就会变慢。

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

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

  • 创建作为第一个子报表副本的第二个子报表
  • 在新子报表的detail部分,将以下代码添加到detail部分的抑制公式中:
    Next({YourTable.id})={YourTable.id}
基本上,如果下一条记录的
id
与当前的
id
相同,则公式将抑制细节记录。这样,只会显示每个
id
的最后一条记录

您可以在第二个子报告中设置详细信息行的格式,使其按所需方式显示

唯一的缺点是子报表实际上会运行两次,因此如果它是一个慢报表,那么您的报表就会变慢