Search code examples
reporting-servicesssrs-2008reportbuilderreport-designermicrosoft-reporting

Microsoft Report Designer Line Through Text when value not Empty


Has anyone used LineThrough text on Microsoft Report Designer within the expression value? Example:

=Switch(Fields!a.Value is Nothing, "text here".LineThrough, Not(Fields!a.Value is Nothing), CStr(Fields!a.Value))

I need the "text here" to be strikethrough if a.Value is nothing.


Solution

  • You need to use an expression to show the value you want and then Harry's answer to set the LineThrough.

    You can simplify your SWITCH statement for the value like this..

    =SWITCH(
        Fields!a.Value Is Nothing, "Text Here",
        True, Fields!a.Value)
    

    or if the expression will not get any more complex than you have then use IIF

    =IIF(Fields!a.Value Is Nothing, "Text Here", Fields!a.Value)
    

    If you need only part of the textbox then the easiest way is to use placeholders. These act almost the same way as a textbox but you can have several placeholders in a single cell/textbox each with it's own properties.

    To add a placeholder click the cell/textbox first to get focus then right-click before or after any existing text/placeholders. Select Insert placeholder and set the expression as you wish, you can also format the placeholders font/color/decoration etc.

    As an example I've got a small dataset with country names. If the country contains the word "Island" then I show different text and change the text decoration on one of the place holders. In the design you can see there are 3 placeholders, some text then a field then some more text.

    enter image description here

    When I run this I get the following output. enter image description here

    I've set strike thru on the countrydesc field placeholder but you can do the same on a text placeholder. You still have to do it in two parts, and expression to set the text value and an expression in the placeholders font properties to set LineThrough