Forum Discussion
Switch function not working
- Anonymous4 years ago
anacpint , this is my suggestion:
Create a new Calculated Table called dimClassification:
dimClassification = VALUES('factRFTC'[Classification])Add a relationship between the dimClassification table and factRFTC table. Make sure the relationship is Many to One, and the direction flows from the dimClassification table to the FactRFTC table.
The measure that you use for the conditional formatting in the matrix should be changed to this:
ColorSwitchRFT = VAR vClassification = SELECTEDVALUE('dimClassification'[Classification]) RETURN SWITCH( TRUE(), vClassification = "Correct", "#11A82B", vClassification = "Low","#A9CC0D", vClassification = "Moderate","#F2CB49", vClassification = "New_Requirement", "#12ABDB", vClassification = "Severe","#FF6961" )Then delete the Fact_RFTC[rft_classification] field from the Rows field from the matrix, and add dimClassification[Classification] in its place.
Set the Conditional Formatting of the RFTC_NoBlank field in the matrix for Background Color to be Format Style "Field Value", and set the "What field should we base this on" to your [RFTC_NoBlank] measure.
When I do that with some test data, this is what I get. Note that my test data in FactRFTC has no rows at all for month March 2021, but the cell for {Mar-21, Low} is correctly coloured green because it gets the value for Classification from dimClassification.
Hope this helps.
That measure is the one that I developed first.
anacpint , could you plase try this test measure and place it on the matrix? This will help work out what is going on.
ColorSwitchRFT_Test =
VAR vSelectedClassification = SELECTEDVALUE(Fact_RFTC[rft_classification])
RETURN IF(ISBLANK(vSelectedClassification), "It is blank", vSelectedClassification)Please post the results.
- anacpint4 years agoHelper I
- Anonymous4 years agoNot applicable
anacpint , can you please please post the field name and the table name for the source of your matrix row headers for CPV and PQR?
In any case, you can see from your results that the matrix only has blank values to use for Fact_RFTC[rft_classification] in most cells. The only cells for which there is non-blank data is for cells
Feb-22, Fact_RFTC[rft_classification] = Severe, and
Jul-22, Fact_RFTC[rft_classification] = Moderate.
In all the other cells, the conditional formatting measure only has a blank value for Fact_RFTC[rft_classification] available, and so cannot work out the cell colour.
I think you need to create a dimension table for all the possible [rft_classification] values (call the table dim_RFT), and then use the dim_RFT[rft_classification] column in your matrix and measure instead of Fact_RFTC[rft_classification]. You will need a relationship in your data model between the dim_RFT and Fact_RFTC on the rft_classification column.
- anacpint4 years agoHelper I
The field name is type_of_report and the table is DimTypeReport.
I changed the measure to check if it recognizes the zeros from the RFTC_NoBlank and it does.
Maybe this test helps to understand the behavior...