【发布时间】:2018-01-31 17:04:53
【问题描述】:
这将很难解释,也很难找到答案。
我的数据集包含员工工单的信息,包括估计成本以及基于已完成任务的实际成本。查询看起来像
Employee WorkOrder Planned Task Actual
John j101 500 1 300
John j101 500 2 300
John J102 500 1 100
John j101 500 2 200
Chris C201 300 1 150
Chris C201 300 2 150
Chris C202 400 1 200
Chris C202 400 2 100
Chris C202 400 3 100
Chris C202 400 4 100
每个工作订单在标题级别都有一个估计成本,该成本会与其任务的实际成本总和进行比较。 “预期成本”列取计划成本和实际成本总和的最大值。
这个表达式可以正常工作并且看起来像
IIf(Fields!PlannedCost.Value >= Sum(Fields!TaskActualCost.Value),
Fields!PlannedCost.Value,Sum(Fields!TaskActualCost.Value))
我现在必须按员工对这些预期成本进行小计,然后对整个数据集进行总计。
我一直在尝试将该 IIF 包装在另一个 SUM 表达式中,但它给我的值远远高于它应有的值。我在某处(找不到链接)读到我必须使用范围来计算总和,但这没有帮助。
我尝试了以下,但该值仍然比应有的高 3-4 倍
Sum(
IIf(Fields!PlannedCost.Value >= Sum(Fields!TaskActualCost.Value, "table1_Details_Group"),
Fields!PlannedCost.Value,
Sum(Fields!TaskActualCost.Value, "table1_Details_Group")
)
)
完成此任务的最佳方法是什么?我希望我只是缺少一些简单的东西,因为这看起来应该相当简单。
【问题讨论】:
标签: sql-server reporting-services ssrs-2008