希望能得到一些帮助,希望是一个简单的问题--我正在将MDX写入一个公司应用程序中的规则生成器。
IIF(Time.CurrentMember >= [Time].&[456], "Formula 1" , "Formula 2")
表达式应将报表中的每个日期与[Time].&[456](即2022年11月)进行比较,如果日期晚于或大于或等于[Time].&[456],则应返回公式1。如果日期早于或小于[Time].&[456],则应返回公式2。
当我把这个表达式输入到应用程序中时,除了2022年11月返回公式1之外,我看到的全部都是公式2,这个表达式似乎正确地解释了“=”符号,但没有解释任何其他运算符符号。
是否有方法更新此表达式,以便可以正确比较日期?
我还在表达式中添加了MemberValue--
IIF(Time.CurrentMember.MemberValue >= [Time].&[456].MemberValue, "Formula 1" , "Formula 2")
但这也没有正确评估-公式1和公式2在整个报告中随机返回。
任何帮助都将不胜感激!谢谢。
1条答案
按热度按时间ie3xauqp1#
我认为您的问题在于MemberValue“November 2022”实际上不是日期,而只是一个字符串,它将与“January 2022”或“February 2022”进行比较。您可能应该更改时间维度,并且仅在叶级别进行比较(例如,您不能比较2022年第4季度和2022年11月..))。但是,如果您的会员值是,例如,2022-11-31,您应该能够正确比较..