1

我经常在 Visual Studio 的 Crystal Reports 中创建报表,并希望有一个主从或一对多类型的东西。像这样的东西:

Invoice Number 13245
   Total: $1,000,000
   Date Raised: 1-Jan-1989
   Date Due: 1-Jan-2019
Line items:
   #   Desc                  Cost
   1   Hat                  23.00
   2   Gloves                7.00
   3   Walking Stick   999,970.00

我可以将单个数据集用于这么简单的事情,然后对“父”值进行分组,但通常我有多种类型的详细信息行或想要详细记录的图表,或者出于任何原因我想要两个数据集:一个一个用于父记录,一个用于子记录。

我一直采用的方法是将报表基于一个数据集,将子报表添加到报表并为子记录使用另一个数据集。这很好用,看起来也不错——即当我运行报告时,我在一个视图中看到所有数据,详细信息部分展开以适合所有记录。但是,子报告始终是可点击的,这是我的问题。如果用户单击子报表,即子记录或图表或我在那里的任何内容,他们将被带到子报表。这对他们来说很奇怪,因为他们会看到一个新的“页面”,上面只有该部分的详细信息。

我真正想要的是一种让我的报告基于多个数据集的方法,就像我现在对子报告所做的那样,但要使用户无法单击这些子报告并深入了解它们。我从来没有弄清楚如何做到这一点。那是因为我只是在接近这一切都是错误的,还是只是水晶报表的限制,或者有解决方案吗?

我正在使用 Visual Studio 2005 附带的 Crystal Reports。

4

1 回答 1

2

双击子报表将始终打开向下钻取选项卡——这是产品的一项功能。

选项 1:采用向下钻取功能并使用它来增强用户体验。

选项 2:使用包含发票和行项目详细信息的单个数据集。将报表按发票编号分组,并将您的总计放在“组的标题”部分。使用详细信息部分显示行项目。请记住,您可以有多个部分,这可能有助于显示您的图表(在第二个组标题部分中)。

您可能需要考虑将查询构建到报表中,而不是在代码中这样做。这将极大地简化报告和您的代码,并使维护报告和代码变得更加容易。

于 2009-11-04T15:35:07.987 回答