IsFiltered和IsCrossFiltered的用法和差异

4. Isfiltered

A. 语法

Isfiltered (  )
参数 描述
TableNameOrColumnName 需要进行判断的表或者列,但是目前实际只能是针对列。

B. 返回

标量——逻辑值(True or False)

C. 注意事项

虽然dax.guide函数语法描述上是可以用表作为参数,但是实际情况则是必须使用列名而不能使用表名。在dax.guide上还有针对表的案例,但是实际操作中却实现不了。

D. 作用

判断列是否被筛选过,返回一个逻辑判断值。

E. 案例

案例
案例
IsFiltered判断:=If(IsFiltered('表2'[姓名]),1,2)
isfiltered判断

此时我们可以看下,如果加入HasoneFilter的差异。在选择多个姓名的时候,HasoneFilter则认定是false,而isfiltered认定为true。

isfiltered和HasoneFilter差异
isfiltered和HasoneFilter差异

5. Iscrossfiltered

A. 语法

IsCrossFiltered()
参数 描述
TableNameOrColumnName 需要进行判断的表或列

B. 返回

标量——逻辑值(Ture or False)

C. 注意事项

关联表的筛选也会导致被动筛选

D. 作用

判断是否被本表以及外部表进行筛选。

E. 案例

iscrossfiltered案例
iscrossfiltered案例
iscrossfiltered和isfiltered差异
iscrossfiltered和isfiltered差异

我们可以看到,通过另外一个表的筛选,iscrossfiltered判断的结果是被筛选,而isfiltered判断的结果是未被筛选。
如果是本表的列那更不用说了,和isfiltered判断一致。

更多内容亲关注公众号:


Data-Skill

你可能感兴趣的:(IsFiltered和IsCrossFiltered的用法和差异)