ssas - 多个度量的 MDX 计算
问题描述
我必须在我的 OLAP 中为 20 个不同的度量创建下一个计算。如您所见,所描述的函数计算前一年的度量值。我必须重复代码 20 次,只更改特定度量 ( [Measures].[Sales]
),我认为有一种方法可以动态更改特定度量。
create MEMBER CURRENTCUBE.[Measures].[Sales ant] as
(ParallelPeriod(
[Dim Calendar].[Calendar].[Year]
,1
,[Dim Calendar].[Calendar].CurrentMember
), [Measures].[Sales]),
VISIBLE = 1 ,ASSOCIATED_MEASURE_GROUP = 'Fact Sales';
MDX 中有没有办法知道[Measures]
正在使用组中的哪个度量?在这种情况下,这是实现它的最佳方式。
解决方案
如果我没记错的话,你可以像这样创建一组隐藏的度量:
CREATE HIDDEN STATIC SET CURRENTCUBE.[My Set Of Measures] AS
{
[Measures].[Measure 1],
[Measures].[Measure 2],
[Measures].[Measure 3]
};
然后您可以为此集合创建范围分配:
Scope ([My Set Of Measures]);
this = (ParallelPeriod(
[Dim Calendar].[Calendar].[Year]
,1
,[Dim Calendar].[Calendar].CurrentMember
), Measures.CurrentMember)
End Scope;
请注意,不是具体的度量 - [Measures].[Sales],您将使用Measures.CurrentMember 引用度量,因此当您在报告中选择[Measures].[Sales] 时,上述范围将适用。
希望它会奏效。
推荐阅读
- indexing - 赛普拉斯,获取第 th 元素的索引,以便稍后将其用于它的 td 元素
- python - 将索引显示为熊猫图的 xticks
- angular - 我应该如何使用 formControlName 而不是 [(ngmodel)] 初始化 ngbDatepicker
- android - 我可以从 Plivo 调用其他 API 吗?
- android - Kotlin 运算符分配
- ios - UIColor colorWithDisplayP3RGBA 转换为 CGColor 失去广色域
- java - SecureRandom setSeed 方法在 MacOS 上失败
- azure - 为什么我在为 Runbook 创建 Webhook 时遇到授权失败异常?
- apache - Imgur、Google、Facebook 等网站如何管理这么多独立的网络服务器?
- javascript - 使用javascript(或jquery)在json文件中查找当前成员总数