ELSEIF在THEN中有2个两个选项

时间:2019-03-13 19:35:30

标签: tableau

是否可以执行if if语句,但是在then端有2个选项? 我正在为仪表板实现一些管理链层次结构控件,并且我想让助手也可以选择查看其领导者组织。一些助手跨越多个组织(例如支持两个人的Ali)。这个想法是让您“欺骗”表格,使您认为登录的用户实际上是另一位用户。

我正在尝试的东西是这样的:

if [prefullname]='Liz' then 'Bob' Elseif [prefullname] = 'Ali' then 'Rich or Karl' elseif [prefullname] = 'Brian' then 'Jim' End

2 个答案:

答案 0 :(得分:1)

处理访问权限的最佳方法是通过用户过滤器This article很好地说明了它们的用法。

从本质上讲,每个用户都可以使用非常特定的高级筛选器(例如Ali只能看到Rich和Karl。)此方法允许在Tableau Desktop中进行微调,并且在发布到Tableau Server之后,许可仍然存在。这是一种非常安全的方法。

不幸的是,否则,不可能编写双重条件IF THEN语句。唯一的选择是以某种方式更改/添加到基础关系数据以反映访问的需求。 (即:列出[助手]的字段)

我希望这会有所帮助!

答案 1 :(得分:0)

我将在上面提到Daniel的方法-这实际上不是管理权限的方法,尤其是在数据是机密或敏感的情况下。 但是,如果您必须按照说明进行操作,那么它看起来可能像这样。

首先,像上面一样定义每个'access_list'变量:

if [prefullname]='Liz' then 'Bob' 
    elseif [prefullname] = 'Ali' then 'Rich, Karl'
    elseif [prefullname] = 'Brian' then 'Jim'
End

然后您可以检查“ has_access”条件以了解每个人的权限匹配。

IF CONTAINS([access_list], [prefullname]) THEN TRUE
    ELSE FALSE

我不太了解这里的数据结构或您如何过滤权限,但是其想法是为每个人定义一个名称数组,然后为每个用户检查-哪个名称是或不存在。