Ssas 基于固定值的MDX过滤器取决于层次级别

Ssas 基于固定值的MDX过滤器取决于层次级别,ssas,mdx,Ssas,Mdx,我需要用mdx构建一个命名集,它告诉我一整年哪些是大型记录。我无法共享我的数据,因此我将使用一个销售示例 所有销售代表。需要在应用程序中输入他们的销售编号,并且在该数据库的顶部配置了一个多维数据集。目标之一是在这个立方体中发现奇怪的销售行为。这意味着一个销售代表每年销售10万台,突然间每年只销售3万台 我创建了一个动态集,允许我使用名为“qualifies”的计算成员对此进行筛选。这个限定条件是这样定义的。之前已计算出差异 CREATE MEMBER Currentcube.qualifies

我需要用mdx构建一个命名集,它告诉我一整年哪些是大型记录。我无法共享我的数据,因此我将使用一个销售示例

所有销售代表。需要在应用程序中输入他们的销售编号,并且在该数据库的顶部配置了一个多维数据集。目标之一是在这个立方体中发现奇怪的销售行为。这意味着一个销售代表每年销售10万台,突然间每年只销售3万台

我创建了一个动态集,允许我使用名为“qualifies”的计算成员对此进行筛选。这个限定条件是这样定义的。之前已计算出差异

CREATE MEMBER Currentcube.qualifies AS iif(abs([Diff]) > 50000, 1, NULL),DISPLAY_FOLDER = 'Check big difference';
因此,此检查可用于筛选差异为50k销售额的所有销售代表

当我将另一个过滤器添加到我的多维数据集(例如region)时,将永远不会超过50k阈值,因为没有任何机构在一个地区的销售额超过50k。我想根据过滤器中的where子句创建50K动态


我的问题是,这可能吗?我是MDX的新手,所以如果这是一个简单的问题,请原谅我。我已经尝试了很多不同的场景,但是没有一个给出想要的结果。我一直在网上搜索,但这个特定场景还没有在我的搜索结果中传递。

与其根据绝对差异(如50k)进行过滤,不如使用百分比差异。结合ParallelPeriod函数,您应该能够显示任何查询的差异。如果你想在写MDX方面得到更多帮助,请告诉我。是的,这是真的,我正在考虑改变我的例子。我还需要过滤大鱼,当有人卖出2000条,而前年只有1000条时,这个数据并不有趣,因为绝对值非常小,这很公平。您还可以编写一个成员,该成员不考虑当前查询上下文,只在您需要的聚合级别进行计算,因此无论您如何筛选,都会显示正确的结果。您能深入了解一下吗,我真的不知道您是什么saying@jelle为什么不把这两种方法结合起来,,使用百分比差>10%和绝对差>10000作为过滤条件?