SSRS 表达式在替换括号“(” “)”时显示#Error

SSRS Expression shows #Error while replacing brackets "(" ")"

我正在编写一个表达式来替换子字符串。

我正在使用 FetchXML 为 Microsoft Dynamics 365 开发 SSRS 报告。我在报表上有一个网格显示了记录的相关行。

我必须删除括号内的所有内容。

我写了一个表达式,如果值包含括号,但当值不包含括号时,它工作正常。

=IIF(InStr(Fields!deal_name.Value, "(") = 0, Fields!deal_name.Value, Replace(Fields!deal_name.Value,Mid(Fields!deal_name.Value,InStr(Fields!deal_name.Value, "("),InStr(Fields!deal_name.Value, ")")),""))

原值:

表达式结果后:

错误是因为 Iif 计算所有表达式,即使是 false

可以使用正则表达式替换

=  System.Text.RegularExpressions.Regex.Replace(Fields!deal_name.Value , "[(].*[)]", "")