January 30, 2013 at 8:02 pm
Hi,
I need to write expression in my report to get the characters between "_" and "-".
I have two columns in my report, group_number and group_name. Using the characters in the group_name, I need to write the group_number.
For example,
Suppose the group_name is:
abc_def-ghi
Then my group_number should be "def".
And the number of characters can vary from 2 to 3. That is, group number can be "de" or "def". The thing is it should be between underscore(_) and (-).
Thanks in advance.
February 4, 2013 at 4:14 am
You can do it in SQL in the dataset, or an expression in the report itself, both using substring and charindex/indexof:
SQL:
SUBSTRING(group_name, CHARINDEX('_', group_name), CHARINDEX('-', group_name) - CHARINDEX('_', group_name))
Expression:
=Substring(Fields!group_name.Value, Fields!group_name.IndexOf('_'), Fields!group_name.IndexOf('-') - Fields!group_name.IndexOf('_'))
Note both are untested & you might need to put in something to handle cases where _ or - don't appear.
Cheers
Gaz
April 14, 2013 at 2:20 pm
Hi Gaz,
Thanks for the response.
I tried the below expression and it worked.
=Mid(Fields!group_name.Value, InStr(Fields!group_name.Value,"_")+1, (InStr(Fields!group_name.Value, "-") - InStr(Fields!group_name.Value, "_") - 1))
April 16, 2013 at 2:29 pm
No problem, glad you found a solution!
June 1, 2015 at 2:43 pm
Well I'm trying the same thing here and I get a "#error" in the field using the following expression, what am I doing wrong...:
=Mid(Fields!storageDimensionCode.Value,InStr(Fields!storageDimensionCode.Value," "),(InStr(Fields!storageDimensionCode.Value," ") - InStr(Fields!storageDimensionCode.Value,"H")))
Thank you all for posting....
Viewing 5 posts - 1 through 5 (of 5 total)
You must be logged in to reply to this topic. Login to reply
This website stores cookies on your computer.
These cookies are used to improve your website experience and provide more personalized services to you, both on this website and through other media.
To find out more about the cookies we use, see our Privacy Policy