SSRS 包含或类似表达式

问题描述 投票:0回答:1

我正在尝试从数据集中的字段创建计算表达式。我需要从一个字段中查找包含“交易所交易”一词的所有内容,并且在我的新字段中包含“ETF 13F”一词。如果没有任何匹配,那么它只是空白。

我尝试过 Like("Exchange Traded") 和 Contains ("Exchange Traded") 函数,在运行报告时,我在新字段中收到 #error。

这是我尝试过的...

=IIf(Fields!DESC2.Value.like("*Exchange Traded*"),"ETF_13F", false)

如何编写此通配符表达式,然后在新的计算字段中替换为不同的文本?

提前致谢

reporting-services ssrs-expression
1个回答
28
投票

String 是你的朋友。您将 2 个参数传递给函数 InStr(),第一个是要搜索的文本,第二个是您要搜索的文本,它返回一个 Integer,表示您要查找的文本在文本中的起始位置你告诉它去搜索。如果找不到文本,则返回 0,您可以将其用作 false(或简单地使用

>0
来表示 true)。所以...

=iif(InStr(Fields!DESC2.Value, "Exchange Traded") > 0, "ETF_13F", Nothing)

这就是在“DESC2”字段中查找字符串“Exchange Traded”。如果它找到“Exchange Traded”,那么它会返回一个大于 0 的值,因此我们所做的就是说“如果该值大于 0,则显示 ETF_13F,否则不显示任何内容”

希望有帮助

编辑:

有几个人对此表示赞同,所以随着它得到一些关注,我将更新答案,说有人向我提供了更好的方法。您可以简单地在字符串字段上使用 .Contains() 来执行相同的检查:

=iif(Fields!DESC2.Value.Contains("Exchange Traded"), "ETF_13F", Nothing)
© www.soinside.com 2019 - 2024. All rights reserved.