我正在尝试在深入维度上自定义标签,经过一些研究后,这在前端显然是不可能的?当您在钻取中使用层次结构维度并且字段名称没有适合可视对象的标签时,这是一个问题。
正确,您不能使用表达式来动态修改主维度标签。不过,如果您愿意打破常规,您可以巧妙地使用
If()
语句来模拟向下钻取维度。
假设您有一个在层次结构中设置了 3 个维度的向下钻取维度:
您可以做的是创建一个名为 vDrilldownDim 或类似变量的新变量,并使用此表达式作为定义:
=If( GetPossibleCount(TransLineID) = 1
, If( GetPossibleCount(TransID) = 1
, 'Dim1'
, 'TransID'
)
, 'TransLineID'
)
此表达式利用
GetPossibleCount()
函数来检查给定字段中是否只有 1 个值可供选择,此时它将动态“向下钻取”到表达式中可能有超过 1 个值的下一个字段选择,这本质上也是向下钻取主维度的工作原理。在图表对象中,您可以像这样引用字段中的变量:
Possible
...并在您的字段标签中像这样:
=[$(vDrilldownDim)]
然后,其行为与向下钻取主维度基本相同,但您可以将上面的字段标签表达式修改为您需要的任何内容,甚至创建第二个变量来处理它。