Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
3 years ago
Solved

Using SWITCH or IF functions to determine which SELECTEDVALUE statement to use

I have situation depending on slicer selection to execute the correct  SelectedValue function.  For some reason I am pulling all records, not just the records being requested.

The formats I have tried are as follows

 

SWITCH( _case,
               1, SelectedValue(slicervalue))

IF ( _case = 1, SelectedValue(slicervalue))

 

I have researched and attemted many optons with none of them working.

 

What is happening and how can I make this work.

 

I appreciate your help.

 

pjb120 

 

  • Is it a measure you are creating(you cannot create a column) ? With the measure switch usually goes with min/max

    switch(max(index),

    1, SelectedValue())

2 Replies

  • olgad's avatar
    olgad
    Resident Rockstar

    Is it a measure you are creating(you cannot create a column) ? With the measure switch usually goes with min/max

    switch(max(index),

    1, SelectedValue())

    • Anonymous's avatar
      Anonymous
      Not applicable

      Thanks for the quick reply.  I cannot use the MAX function as I am using the variable  _sterm.   I also tried with the If statement to no success.

       

      Below is my measure, the objective is to substitute one of the following Fall, Spring, or Summer into the variable _iterm , it should only return the records for one off these terms.   If I make _iterm = SELECTEDVALUE(FallFilter[Term]) only he Fall records are returned.

       

      Any advice you can offer is appreciated.,

       

      -----------------------------------------------------------------------------------------------------------------------------------------------

       

      EnrollmentCountX =

      VAR _program = Enrollment[ProgramSelection]
      VAR _termyear = Enrollment[TermYearSelection]
      VAR _intdate =(Int(Right(Enrollment[AYYearSelection],4)))

      VAR _sterm = Left(SELECTEDVALUE(Enrollment[Start Term and Year]) ,2)

      VAR _iterm = If (_sterm = "Fa",  SELECTEDVALUE(FallFilter[Term]))
                         
      VAR _enddate = SWITCH(_intdate,
                          2024, TODAY(),
                          2023, TODAY(),
                          2022,  EDATE(TODAY(), -12),
                          2021,  EDATE(TODAY(), -24),
                          2020,  EDATE(TODAY(), -36),
                          2019,  EDATE(TODAY(), -48)
                        )
       
      VAR _count =    CALCULATE(COUNTROWS(Enrollment),
                      All(Enrollment[Deposit Intent to Enroll Date/Time]),
                      Enrollment[Program] = _program,
                      Enrollment[Start Term and Year] = _termyear,
                      Enrollment[Deposit Intent to Enroll] = "Yes",
                      Enrollment[Deposit Intent to Enroll Date/Time] <= _enddate,
                      FILTER('Enrollment',CONTAINSSTRING('Enrollment'[Start Term and Year], _iterm)))
      RETURN
      _count