Forum Discussion
switch() and SelectedValue for multiple filter choices
- 3 years ago
Anonymous
=
VAR NumberoppsRenewals =
CALCULATE (
'Calculations'[Number of Opportunities (Historical)],
AND (
Fact_OpportunitiesHistorical[StageName] <> "Closed Won",
Fact_OpportunitiesHistorical[StageName] <> "Closed Lost"
),
Dim_SalesType[SalesType] = "Renewal"
)
VAR NumberoppsExpansion =
CALCULATE (
'Calculations'[Number of Opportunities (Historical)],
AND (
Fact_OpportunitiesHistorical[StageName] <> "Closed Won",
Fact_OpportunitiesHistorical[StageName] <> "Closed Lost"
),
Fact_OpportunitiesHistorical[SolutionFitStageDate] <> BLANK (),
Dim_SalesType[SalesType] = "Existing Customer"
)
VAR NumberoppsNewBiz =
CALCULATE (
'Calculations'[Number of Opportunities (Historical)],
AND (
Fact_OpportunitiesHistorical[StageName] <> "Closed Won",
Fact_OpportunitiesHistorical[StageName] <> "Closed Lost"
),
Fact_OpportunitiesHistorical[SolutionFitStageDate] <> BLANK (),
Dim_SalesType[SalesType] = "New Customer"
)
RETURN
SUMX (
VALUES ( Dim_SalesType[SalesType] ),
SWITCH (
Dim_SalesType[SalesType],
"New Customer", NumberoppsNewBiz,
"Existing Customer", NumberoppsExpansion,
"Renewal", NumberoppsRenewals
)
)
Hi Anonymous
Seems to me you just want to force additivity ove a DISTINCTCOUNT measure. Please try
MyMeasure =
SUMX (
VALUES ( Dim_A[SalesType] ),
CALCULATE ( DISTINCTCOUNT ( TableA[Column] ) )
)- Anonymous3 years agoNot applicable
Hi tamerj1 , thanks for the response. I gave the measure as a very simplified version, but if you wish to see the whole measure, please find it below:
VAR NumberoppsRenewals =CALCULATE ('Calculations'[Number of Opportunities (Historical)],AND (Fact_OpportunitiesHistorical[StageName] <> "Closed Won",Fact_OpportunitiesHistorical[StageName] <> "Closed Lost"),Dim_SalesType[SalesType] = "Renewal")VAR NumberoppsExpansion =CALCULATE ('Calculations'[Number of Opportunities (Historical)],AND (Fact_OpportunitiesHistorical[StageName] <> "Closed Won",Fact_OpportunitiesHistorical[StageName] <> "Closed Lost"),Fact_OpportunitiesHistorical[SolutionFitStageDate] <> BLANK (),Dim_SalesType[SalesType] = "Existing Customer")VAR NumberoppsNewBiz =CALCULATE ('Calculations'[Number of Opportunities (Historical)],AND (Fact_OpportunitiesHistorical[StageName] <> "Closed Won",Fact_OpportunitiesHistorical[StageName] <> "Closed Lost"),Fact_OpportunitiesHistorical[SolutionFitStageDate] <> BLANK (),Dim_SalesType[SalesType] = "New Customer")RETURNSWITCH (SELECTEDVALUE ( Dim_SalesType[SalesType] ),"New Customer", NumberoppsNewBiz,"Existing Customer", NumberoppsExpansion,"Renewal", NumberoppsRenewals,NumberoppsNewBiz+NumberoppsExpansion+NumberoppsRenewals)
Because I have so many additional filters, I used switch() to be able to toggle between the variables. Do you think your recommended measure will still work?- tamerj13 years ago
Community Champion
Anonymous
=
VAR NumberoppsRenewals =
CALCULATE (
'Calculations'[Number of Opportunities (Historical)],
AND (
Fact_OpportunitiesHistorical[StageName] <> "Closed Won",
Fact_OpportunitiesHistorical[StageName] <> "Closed Lost"
),
Dim_SalesType[SalesType] = "Renewal"
)
VAR NumberoppsExpansion =
CALCULATE (
'Calculations'[Number of Opportunities (Historical)],
AND (
Fact_OpportunitiesHistorical[StageName] <> "Closed Won",
Fact_OpportunitiesHistorical[StageName] <> "Closed Lost"
),
Fact_OpportunitiesHistorical[SolutionFitStageDate] <> BLANK (),
Dim_SalesType[SalesType] = "Existing Customer"
)
VAR NumberoppsNewBiz =
CALCULATE (
'Calculations'[Number of Opportunities (Historical)],
AND (
Fact_OpportunitiesHistorical[StageName] <> "Closed Won",
Fact_OpportunitiesHistorical[StageName] <> "Closed Lost"
),
Fact_OpportunitiesHistorical[SolutionFitStageDate] <> BLANK (),
Dim_SalesType[SalesType] = "New Customer"
)
RETURN
SUMX (
VALUES ( Dim_SalesType[SalesType] ),
SWITCH (
Dim_SalesType[SalesType],
"New Customer", NumberoppsNewBiz,
"Existing Customer", NumberoppsExpansion,
"Renewal", NumberoppsRenewals
)
)- Anonymous3 years agoNot applicable
This works perfectly!