我正在为包含库存数据的多维数据集建模。为简单起见,我们试图维护一个日期维度。其中一些措施包含库存水平。
最终用户使用Excel查看分析服务中的数据。我想要做的是阻止这个维度显示实际股票交易结束的值。
多维数据集中还有其他需要未来信息的措施,因此不允许在将来删除所有日期条目。
简化示例措施:
CREATE [Measures].[Quantity On Hand];
SCOPE ([Measures].[Quantity On Hand]);
this = Aggregate(null:[Transaction Date].[Year - Quarter - Month].CurrentMember, [Measures].[Quantity Purchased])
- Aggregate(null:[Transaction Date].[Year - Quarter - Month].CurrentMember, [Measures].[Quantity Sold])
FORMAT_STRING(this) = "#,#.00;-#,#.00; ";
END SCOPE;
日期维度包含未来日期。
我可以让[Transaction Date]
维度停止显示此度量中最后一笔交易后的信息(事实表中的最高交易日期)吗?
答案 0 :(得分:1)
您应该可以使用CLOSINGPERIOD(Dim,Measure)
功能。它将显示使用Measure的时间维度上的最后一个成员。在您的情况下,数量Purhased或数量已售出的最后一个条目。使用此作为检查以不计算未来日期。
此外,如果您 - 无论何时加载任何未来日期,您也可以使用“今天”作为未加载未来日期的检查:StrToMember("[Time].[Day].&[" + Format(Now(), "yyyyMMdd") + "]")
- 其中yyyyMMdd
是您在当天使用的格式水平。