首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用Qlik意义上的过滤器动态更改列名(列标题)

如何用Qlik意义上的过滤器动态更改列名(列标题)
EN

Stack Overflow用户
提问于 2022-11-29 06:15:12
回答 1查看 18关注 0票数 0

我有一个过滤器在我的仪表板作为财政年度。在这个过滤器中,目前有两年。但是,2021和2022,当数据被加载时,也会有2023,所以我希望列名级别动态地更改到我从筛选窗格中选择的年份。就像。如果从筛选窗格中选择年份2022,则应显示秩2022。请大家帮帮我

公司名称编号2022

A 21 B 4 C 7

标题应动态更改

如果选择2022年

公司名称编号2022

A 21 B 4 C 7

如果选择2023年,公司名称等级为2022

A 21 B 4 C 7

EN

回答 1

Stack Overflow用户

发布于 2022-12-03 17:23:59

如果我理解正确,您可以通过更新您的字段的[Rank]标签属性来尝试以下选项之一:

Only()函数

='Rank ' & Only([Financial Year])

这使用Only()函数仅在可能的情况下显示当前可能的[Financial Year]。这意味着,如果选择多年,则[Rank]值仍将正确筛选到所选年份,但列名将不会显示年份,因为如果只有一个唯一值要返回,则列名将返回值。请注意,这是一个聚合函数,因此它并不严格地基于所选内容。如果您的数据模型更改为只有一个[Financial Year]值被加载,那么即使您没有实际选择它,标头也会在当年显示。这就是为什么我使用“可能”一词而不是“选择”的原因。

Concat()函数

='Rank ' & Concat(distinct [Financial Year], ', ')

这将使标题显示所有不同的,可能的年份作为逗号分隔的列表。这意味着,如果您有多个可能的或选定的年份,它们都将显示在标题中。就像Only()函数一样,这是一个聚合,所以它不是严格基于选择的。

GetFieldSelections()函数

='Rank ' & GetFieldSelections([Financial Year], ', ')

该函数的工作方式类似于Concat()函数,只不过它不是基于可能的值,而是严格基于选定的值。

if()GetFieldSelections()GetSelectedCount()函数

代码语言:javascript
复制
='Rank ' &
if( GetSelectedCount([Financial Year]) > 1, 'Multiple Years',
if( GetSelectedCount([Financial Year]) = 1, GetFieldSelections([Financial Year])))

这使用一个if()语句来查看所选的年份。如果选择的年份超过一年,它将显示文本“多年”。如果只选择一年,它将显示该年。如果没有选择年份,则不会显示任何内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74609808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档