环境:BIEE 11.1.1.7...
背景:
最近碰到一种情况,某需求要求添加某指标或者某维度到某报表上,该报表现在已上线。但是,添加某指标后突然维度无法下钻,表现为点击下钻列无响应,删除某列或者某部分列后可以正常下钻。
删除某列或某些列后,该列可以下钻,排除下钻列本身设置问题;
轮换删除某列,均可以下钻,排除某特殊列影响所致;
跟踪逻辑SQL解析,发现当点击下钻时候,无日志刷新。怀疑是逻辑SQL解析相关问题。遂把写在指标公式中的公用逻辑写在RPD逻辑层的物理列公式上,以减少逻辑SQL解析长度,后该问题解决;
举个栗子:
例如某指标公式为 filter(A USING B AND C AND D),那么在逻辑层设置flag列F,映射为case when B AND C AND D then 'Y' else 'N' end, 则列公式变更为filter(A USING F='Y') ,解析逻辑SQL的时候,不会出现 B AND C AND D 类似的逻辑SQL语句,在物理SQL的时候才会那样解析,从而缩短逻辑SQL生成长度。