8

I have worked on only possible 2 in rdlc Expression values as like

=iif((Fields!Gender.Value="1"),"Male","Female")

Here I can work with only 2 possibilities. But if I want to check 3 or more conditions than how can I?

Imran Ali Khan
  • 8,469
  • 16
  • 52
  • 77
Sonam Mohite
  • 885
  • 4
  • 19
  • 51

4 Answers4

13

Use the Switch if you have more conditions, it is also more readable.

=Switch(
    Fields!Gender.Value = 1, "Male", 
    Fields!Gender.Value = 2, "Female"
    )

rdlc expression iif use?

Community
  • 1
  • 1
9

You can use the Code property of the report. Right-click a blank space outside your report and click Report Properties or click the Report menu and click report properties.

Click the "Code" tab and type your condition checking statement as below

Public Function GetGender(ByVal val as String) As String
   Dim retVal as String = ""

   If(val = "1")
    retVal = "Male"
   Else If (val = "2")
    retVal = "???"
   Else If (val = "3")
    retVal = "???"
   Else
    retVal = "???"
   End If

   Return retVal

End Function

Then call the function in the expression of your textbox

= Code.GetGender(Fields!Gender.Value)
codingbiz
  • 26,179
  • 8
  • 59
  • 96
  • Hey this is very good option to enter write a code in report.thanx..i found other solution of using the switch statement just like iif.even this will work – Zara Sep 27 '12 at 07:50
  • You mean `IIf` in one line in the expression box? That is hard to debug but it's useful too – codingbiz Sep 27 '12 at 07:54
6

try this one :

=iif(Fields!Gender.Value="1","Male", iif(Fields!Gender.Value="2","Female","Undefined"))

the format is :

=iif(expression=value, true, false)

you can change with :

=iif(expression=value, true, iif(expression2=value2, true, false))
Asromi rOmi
  • 197
  • 1
  • 7
3

Switch and Custom Code look's nice, Thank you Guys

But if you insist using iif() condition then,

=iif( (Fields!Gender.Value="1"), "Male", iif( (Fields!Gender.Value="2"), "Female", "Something Else" ) )

Ok, Bye