我正在尝试创建一个计算成员来计算员工年初至今的nb。 YTD我指的是任何给定时间段内的员工数量。我的事实表有2个日期维度StartDate和EndDate。我想按如下方式计算YTD员工。
StartDate的成员等于或等于当前期间 和 当前期间的EndDate或者EndDate为NULL
答案 0 :(得分:1)
我有类似的任务,最终得到以下解决方案:
SUM(
[EmployeeChanging].[EmployeeChanging].[EmployeeChanging].Members,
IIF(
[Measures].[EmployeeFrom] <= [Measures].[MaxDay]
and
[Measures].[EmployeeTo] >= [Measures].[MinDay],
[Measures].[EmployeeChangingCount],
NULL
)
)
有以下格式的暗淡/事实表:
EmployeeID + StartDate + EndDate
创建一个新维度EmployeeChanging,其中键是EmployeeID + StartDate,一个度量组基于与[Measures]相同的表。[EmployeeFrom],[Measures]。[EmployeeTo],[Measures]。[EmployeeChangingCount]测量最大,最大,计数聚合。此外,您还必须提供[Measures]。[MaxDay]和[Measures]。[MinDay]根据您的日期维度测量相同日期字段的最大和最小聚合。就是这样。 您也可以隐藏您的EmployeeChanging维度,因为它仅适用于MDXing。