美文网首页BI学习笔记
注意!避免计算组覆盖!

注意!避免计算组覆盖!

作者: Fabric丨白茶 | 来源:发表于2024-07-12 13:07 被阅读0次

    问题描述:
    PowerBI在实际使用中,针对于某些数据,需要呈现文本类型的标签,一般这类需求,都是通过计算组来解决的。
    但计算组在使用中,也会存在一些问题,就是一旦点击交互,就会影响到其它度量值。

    案例

    案例数据非常的简单,我们继续添加如下度量值。

    计算组格式 =
    SUM ( [计算组值] )
    
    其他度量值 =
    SUM ( '案例数据'[其他值] )
    

    将其拖拽到可视化中呈现如下:

    打开Tabular,添加计算组

    也可以直接在PowerBI中添加,看个人操作习惯。


    SELECTEDMEASURE()
    
    IF ( SELECTEDVALUE ( '案例数据'[维度] ) = "A", "上升", "下降" )
    

    将计算组添加到页面切片器,结果如下:

    产生原因

    SELECTEDMEASURE会根据上下文,获取当前计算项的度量值,因此,会获取到页面的所有度量值进行覆盖。

    解决办法

    对度量值添加条件判断即可:

    IF (
        SELECTEDMEASURENAME () = "计算组格式",
        IF ( SELECTEDVALUE ( '案例数据'[维度] ) = "A", "上升", "下降" ),
        SELECTEDMEASUREFORMATSTRING ()
    )
    
    IF (
        ISSELECTEDMEASURE ( [计算组格式] ),
        IF ( SELECTEDVALUE ( '案例数据'[维度] ) = "A", "上升", "下降" ),
        SELECTEDMEASUREFORMATSTRING ()
    )
    

    最终展示结果如下:

    代码解释

    • 通过SELECTEDMEASURENAME来获取度量值的名称,或通过ISSELECTEDMEASURE来判断是不是需要转换格式的度量值

    • 只有符合条件的度量值才会进行格式转换

    • 不符合条件的度量值会按照原本的格式进行输出

    • SELECTEDMEASUREFORMATSTRING是获取当前度量值的数据格式

    注意

    通过SELECTEDMEASURENAME判断度量值名称,这种方式就要求计算组判断的度量值,没有被其他可视化图形引用,不然引用的地方,也会进行格式转换。


    相关文章

      网友评论

        本文标题:注意!避免计算组覆盖!

        本文链接:https://www.haomeiwen.com/subject/dxlfhjtx.html