I am writing an expression to replace sub string.
I am developing a SSRS report for Microsoft Dynamics 365 using FetchXML. I have a grid on report shows related rows of a record.
I have to remove everything inside brackets.
I have written an expression, it is working good if value contains Brackets but not when value does not contains brackets.
=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, ")")),""))
The error is because Iif evaluates all expressions even when false
You can use regular expression replace
= System.Text.RegularExpressions.Regex.Replace(Fields!deal_name.Value , "[(].*[)]", "")