问题描述
这是我第一次使用子报表,但我有大约 6 个月的 Crystal 经验。
我正在为销售经理构建每日报告,他们可以在其中获得每个销售人员活动(未结订单、报价等)的摘要。此报告已作为单独的销售报告存在,他们可以在其中获得有关其活动的更多详细信息,因此我使用该报告的摘要副本作为新管理器版本的子报告。
我的问题是
- 生成销售经理下的销售人员列表,例如: “如果参数= managercode 然后选择salesperson where salesperson_managercode = managercode” 卡在这个逻辑上,似乎无法破解。
- 通过子报表传递上述列表,一次一个。本质上是一个循环。从那里我想汇总所有内容以在底部提供团队总计。
感谢任何帮助!
解决方法
您不必担心循环结构。报告会为您解决这个问题。如果您有一个数据集,其中每行代表 1 个经理,那么将您的子报表放在对数据集中的每条记录重复的部分中,将允许子报表有效地循环遍历数据集中的每条记录。
然后可以使用主报表和子报表之间的“链接”选择每个经理监督的员工。通过在主报告中的数据库中声明一个字段和在子报告的数据库中声明一个字段,在子报告的设置中定义了一个“链接”。子报表中的字段应该是与主报表中的字段对应的外键。以经理和员工为例,您的主报表将有一个代表经理的数据集。这个数据集应该有一个主键,比如 Manager_ID。然后,表示员工的子报表将有一个数据集,其中包含 Employee_ID 等列作为每个员工唯一的主键,以及一个外键,例如 Manager_ID,指示哪个经理负责给定的员工。链接子报表和主报表时,您需要使用 Manager_ID 作为它们之间的“链接”。
我希望这会有所帮助,或者至少可以帮助您入门!