2010-07-22 82 views
2

我有一个主要报告,其中包含用户信息 - 和一个子报表,包含所述用户的多个项目。Crystal Reports:在这种情况下如何避免嵌套的子报表?

问题是,我需要主要报告根据需要重复我提交给DataSource的用户数量 - 我如何执行此操作,以便生成一个大型报告(包含多个主报告)?

编辑:让我用一个具体的例子(类似我自己)重新问:比方说,我想为一家杂货店购物者的报告 - 所有购物者的人口统计数据将是对主报告然而,需要有一个包含所有购买物品的特定购物行程的部分(或子报表)。

现在,这里是clencher。我需要为许多不同的购物行程运行此报告(这也意味着不同的购物者)。

甚至可以说这是一个“购物之旅”报告,可以运行一批购物旅行。

进一步的进展:

(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 
+----------------------------------------------- 

回答

2

Mov e将主要报告写入报告的细节中(如果需要,分成若干小节进行格式化),并将子报告放入细节中。

这样,你会得到每个用户的主要报告(加上子报表)。

编辑

我越去想它,你可能甚至不需要一个报表。如果您在主要报告中将购物者和购物旅行表结合在一起,则可以将购物旅行信息放入详细信息中,所有信息均按购物者ID进行分组。

在组头中,您将把当前所有内容放在主报告中。

从这里,您可以将报告的购物行程ID列表作为参数传递,并在您的记录选择公式中使用此参数。

您应该结束了,像这样(编辑 2010/07/25):

+----------------------- 
| Report Header 
+----------------------- 
| Page Header 
+----------------------- 
| Group Header (Grouped by **ShoppingTripID**) 
| Display your shopper information here 
+----------------------- 
| Details 
| Display your shopping trip information 
| for the shopper here 
+----------------------- 
| Group Footer 
+----------------------- 
| Page Footer 
+----------------------- 
| Report Footer 
+----------------------- 
+0

让我对这个问题提出一个微小的变化要求澄清: 如果我做一个空报告,然后在包含用户报告主要部分的“详细信息A”下创建一个子报告 - 我将如何获取多个项目以显示在用户下方 - 将为多行添加“详细信息”部分项目不需要是一个子报表来显示所有的项目? – 2010-07-22 16:51:53

+0

嵌套子报表是一个非常糟糕的主意。在您的报告中,您是通过购物旅行ID,购物者ID还是通过购物ID进行搜索? – LittleBobbyTables 2010-07-22 17:06:36

+0

我的理解是,如果我想要,我无法做到嵌套,所以这就是为什么我正在寻找解决方案的原因。初始数据集将根据shoppingTripID进行提取。实际上,数据集本身将会是许多shoppingTripID,而不是特定的。 – 2010-07-22 17:15:30

相关问题