iccube - The purpose of NON_EMPTY_BEHAVIOR
问题描述
I need the clarification about the meaning and purpose of NON_EMPTY_BEHAVIOR
when defining calculated member.
As I understood so far the purpose of NON_EMPTY_BEHAVIOR
is to tell icCube that if NON_EMPTY_BEHAVIOR
measure is null then entire calculated measure is null, so icCube does not need to evaluate calculation any further? Is that right?
Thanks.
解决方案
The NON_EMPTY_BEHAVIOR property is used in calculated members to speed up some internal calculations. It defined a measure, or measure group, that has the same empty behavior as the calculated member.
An example,
MEMBER [Calculated] as [Measures].[Amount] * 23
As we can see from the formula when [Amount] is empty [Calculated] member will be empty. you could have another case :
MEMBER [Calculated] as [Measures].[Amount] * [Fx Rates].[Euros]
Here it's going to be empty if any of the two members is empty, for simplicity you could again define your NON_EMPTY_BEHAVIOR only on [Amount] as you know the is always an Fx rate.
So we coud define in icCube
MEMBER [Calculated] as [Measures].[Amount] * [Fx Rates].[Euros], NON_EMPTY_BEHAVIOR='Amount'
What is the use ?
It's mainly used in icCube to speed up axis NON EMPTY tag and when callling NonEmptyX function.
Pay attention that if you define it wrongly, using a wrong measure, you might find yourself with less members than expected ( NON EMPTY on axis, NonEmptyX function ... )
推荐阅读
- flutter - 颤动如何在用户点击外部时保持键盘显示/激活
- node.js - 在服务器 laravel+nuxt+nginx 上部署时所有路由都返回 404
- powerbi - Power BI 报表服务器:无法上传此报表。我们无法保存此 Power BI Desktop 报表,因为它是较新版本或包含的组件
- git - Git 日志组创建/修改文件
- java - 在 Java 中,如何为特定方法调用重定向 System.err?
- javascript - 如何在测试库/反应库中干涸查询
- php - 在 IIS 服务器上部署时,在 laravel 中上传图像时出错
- java - 文本视图上的随机文本
- javascript - js canvas - 高效的多点渐变
- c++ - 输出在 C++ 中有额外的 % 符号