我正在尝试在SSRS(Visual Studio 2010,SQL Server 2012)中创建一个Employee Utilization报告
我们有为多个项目经理工作的员工。我需要一份报告,显示项目经理,为他们工作的员工,以及他们所工作的每位经理对每位员工的使用情况。这将使我们能够确定哪些员工没有正确分配其利用率。
数据集查询返回如下数据:
EmpID Emp Mgr Util Total Util 1234 Doe, John Lundy, Sal 100 100 2345 Ward, Joe Lundy, Sal 40 110 3456 Kline, Rob Smith, Bob 100 100 4567 Abbott, Fred Smith Bob 100 100 2345 Ward, Joe Smith, Bob 70 110
按经理分组时,结果应如下所示(加号表示展开切换):
Mgr Emp UtilMgr Util Total Util Lundy, Sal +Doe, John 100 +Ward, Joe 110 Smith, Bob +Kline, Rob 100 +Abbott, Fred 100 +Ward, Joe 110
当员工扩展时,详细信息将显示他们为其工作的不同项目经理分解的员工利用率:
Mgr Emp UtilMgr Util Total Util Lundy, Sal -Doe, John 100 Lundy, Sal 100 -Ward, Joe 110 Lundy, Sal 40 Smith, Bob 70 Smith, Bob +Kline, Rob 100 +Abbott, Fred 100 +Ward, Joe 110
我在报告中尝试了各种分组和属性组合(父母,孩子,显示详细信息),但无法按照我想要的方式对结果进行分组。我尝试将另一个管理器字段(别名为UtilMgr)添加到查询中,但仍然无法正确显示报告。
我正在寻找处理此问题的最佳方法。似乎解决方案是让程序管理器作为Employee的父级,然后有第二个组,其中Employee是Manager的父级,但我不确定如何实现它。
我是否需要对查询执行不同的操作?我是否需要使用嵌套在第一个中的子报表或第二个矩阵?有没有办法创建重叠的父/子组?
我只使用SSRS大约2周,所以我希望我使用的所有术语都清楚正确。在此先感谢您的帮助!
答案 0 :(得分:0)
您可以更改查询吗?
为了做你想做的事,你的数据集需要如下所示:
EmpID Emp Mgr UtilMgr Util Total Util
1234 Doe, John Lundy, Sal Lundy, Sal 100 100
2345 Ward, Joe Lundy, Sal Lundy, Sal 40 110
2345 Ward, Joe Lundy, Sal Smith, Bob 70 110
3456 Kline, Rob Smith, Bob Smith, Bob 100 100
4567 Abbott, Fred Smith, Bob Smith, Bob 100 100
2345 Ward, Joe Smith, Bob Smith, Bob 70 110
2345 Ward, Joe Smith, Bob Lundy, Sal 40 110