C# Crystal Reports:在这种情况下,如何避免嵌套子报表?
我有一个包含用户信息的主报告和一个包含该用户的多个项的子报告 问题是,我需要主报告根据我输入到数据源的用户数量复制尽可能多的数据——我如何做到这一点,以便它生成一个大报告(包含主报告的倍数) 编辑:让我用一个具体的例子(类似于我自己的例子)再问一次:假设我想要一份杂货店购物者的报告——购物者的所有人口统计数据都会出现在主报告中,但是,对于一次特定的购物旅行,需要有一个包含所有购买物品的部分(或子报告) 现在,这是握把。我需要为许多不同的购物旅行运行此报告(这也意味着不同的购物者) 甚至可以更好地说,这是一个“购物之旅”报告,可以运行一批购物之旅 进一步进展:当我的数据如下所示时,如何使分组工作:C# Crystal Reports:在这种情况下,如何避免嵌套子报表?,c#,visual-studio-2008,crystal-reports,reporting,subreport,C#,Visual Studio 2008,Crystal Reports,Reporting,Subreport,我有一个包含用户信息的主报告和一个包含该用户的多个项的子报告 问题是,我需要主报告根据我输入到数据源的用户数量复制尽可能多的数据——我如何做到这一点,以便它生成一个大报告(包含主报告的倍数) 编辑:让我用一个具体的例子(类似于我自己的例子)再问一次:假设我想要一份杂货店购物者的报告——购物者的所有人口统计数据都会出现在主报告中,但是,对于一次特定的购物旅行,需要有一个包含所有购买物品的部分(或子报告) 现在,这是握把。我需要为许多不同的购物旅行运行此报告(这也意味着不同的购物者) 甚至可以更好地
(shoppingTripId, shopperId, shopperName, shoppingDate, itemBought)
------------------------------------------------------------------
1, 1, Chris, July-24-2009, Computer
1, 1, Chris, July-25-2009, Laptop
2, 3, John, June-14-2009, Ipod
2, 3, John, June-14-2009, Television
+-----------------------------------------------
| Chris ShoppingTripID: 1
| 123 Main Street CustomerID: 1
| Anytown, CA 90210
+-----------------------------------------------
| Computer $999.00
| Laptop $1099.00
+-----------------------------------------------
+-----------------------------------------------
| John ShoppingTripID: 2
| 123 Main Street CustomerID: 3
| Anytown, CA 90210
+-----------------------------------------------
| Ipod $999.00
| Television $1099.00
+-----------------------------------------------
如果一切顺利,该报告将如下所示:
(shoppingTripId, shopperId, shopperName, shoppingDate, itemBought)
------------------------------------------------------------------
1, 1, Chris, July-24-2009, Computer
1, 1, Chris, July-25-2009, Laptop
2, 3, John, June-14-2009, Ipod
2, 3, John, June-14-2009, Television
+-----------------------------------------------
| Chris ShoppingTripID: 1
| 123 Main Street CustomerID: 1
| Anytown, CA 90210
+-----------------------------------------------
| Computer $999.00
| Laptop $1099.00
+-----------------------------------------------
+-----------------------------------------------
| John ShoppingTripID: 2
| 123 Main Street CustomerID: 3
| Anytown, CA 90210
+-----------------------------------------------
| Ipod $999.00
| Television $1099.00
+-----------------------------------------------
现在,我明白了:
+-----------------------------------------------
| Chris ShoppingTripID: 1
| 123 Main Street CustomerID: 1
| Anytown, CA 90210
+-----------------------------------------------
| Chris ShoppingTripID: 1
| 123 Main Street CustomerID: 1
| Anytown, CA 90210
+-----------------------------------------------
| John ShoppingTripID: 2
| 123 Main Street CustomerID: 3
| Anytown, CA 90210
+-----------------------------------------------
| John ShoppingTripID: 2
| 123 Main Street CustomerID: 3
| Anytown, CA 90210
+-----------------------------------------------
| Computer $999.00
| Laptop $1099.00
+-----------------------------------------------
| Computer $999.00
| Laptop $1099.00
+-----------------------------------------------
| Ipod $999.00
| Television $1099.00
+-----------------------------------------------
| Ipod $999.00
| Television $1099.00
+-----------------------------------------------
将主报告移动到报告的详细信息中(如有必要,分为多个子部分进行格式化),并将子报告放置到详细信息中 这样,您将为每个用户获得一个主报告(加上子报告) 编辑 我想得越多,你甚至不需要子报告。如果在主报告中将购物者表和购物行程表合并在一起,则可以将购物行程信息放入详细信息中,所有信息都按购物者ID分组 在组标题中,您将放置当前主报告中的所有内容 从这里,您可以将购物旅行ID列表作为参数传递给报表,并在记录选择公式中使用此参数 你应该以这样的方式结束(编辑2010/07/25):
让我对这个问题稍作修改,要求澄清:如果我做了一份空报告,然后在“详细信息a”下创建一个子报告,其中包含用户报告的主要部分--我如何让多个项目显示在用户下--为多行项目添加的“详细信息”部分是否不需要是一个子报告来显示所有项目?嵌套子报告是一个非常糟糕的主意。在您的报告中,您是通过购物旅行ID、购物者ID还是两者中的任何一个进行搜索?我的理解是,如果我愿意,我无法进行嵌套式搜索,因此我一直在寻找一种方法来改变这种心态。初始数据集将基于shoppingTripID提取。事实上,数据集本身将是大量的ShoppingTripID,而不是一个特定的。在重新阅读您的回复后,一个小灯泡亮了,所以我将在尝试您的建议后发回。谢谢这个建议听起来很像我希望听到的。如果我使用的是从codebehind检索的数据集,而不是报告,应该不会有很大的不同,是吗?我现在正在尝试,但我仍然是新的分组,因为到目前为止我已经能够避免它。