Scenario:
Suppose we have the Data Model as follows.
Based on the above Model we need to calculate and show which Months are Met the Target Sales or Not.
To fulfill the above Scenario, we need to create the below Measures:
Net Sales = SUMX ( tbl_Sales, ( tbl_Sales[Unit_Price] * tbl_Sales[Units_Sold] ))
I have defined a Dummy Target value per Month using the Average value of Sales across the Years per Month. You can define your Targets as per your data.
Target Val =
AVERAGEX( ALL(tbl_Calendar[Year], tbl_Calendar[Month_Name]), [Net Sales])
Sales Base = MIN( [Net Sales], [Target Val])
Sales Cap = MAX( [Net Sales], [Target Val])
Now based on the above Measures, we will calculate the Monthly Sales which are above the Target (Surplus) or below Target (Deficit), as per below:
Target Deficit =
VAR vSales = [Sales Base]
VAR vTarget = [Target Val]
RETURN
IF(
vTarget > vSales,
[Sales Cap]-[Sales Base]
)
Target Surplus =
VAR vSales = [Sales Base]
VAR vTarget = [Target Val]
RETURN
IF(
vSales >= vTarget,
[Sales Cap]-[Sales Base]
)
The ratio of Target Deficit and Surplus values can calculated as per below:
% Target Deficit =
VAR vSales = [Sales Base]
VAR vTarget = [Target Val]
RETURN
IF(
vTarget > vSales, DIVIDE(([Sales Cap]-[Sales Base]), [Sales Cap])
)
% Target Surplus =
VAR vSales = [Sales Base]
VAR vTarget = [Target Val]
RETURN
IF(
vSales >= vTarget, DIVIDE(([Sales Cap]-[Sales Base]),[Sales Cap])
)
Now we can calculate the no. of Months that Missed the Target using the blow logic :
MonthsMissedTarget =
VAR vSales = [Sales Base]
VAR vTarget =
AVERAGEX( ALL(tbl_Calendar[Year],tbl_Calendar[Month_Name]), [Net Sales])
VAR vCountRows =
CALCULATE(DISTINCTCOUNT(tbl_Calendar[Month_Name]),
FILTER(ALL(tbl_Calendar[Month_Name]), [Sales Base] < vTarget)
)
RETURN
vCountRows
TargetTitle = "( " & [MonthsMissedTarget] &" Months Missed the Target )"
Finally, we can see the result of all the Measures in a Table and a Line and Stacked Column Chart as shown below:
On the Line and Stacked Column Chart, I have used the Measures as per below.
Though, I have used the Target on the Line, I have made the Line Stroke Width to Zero, then enabled the Marker (-) with Blue Color.
--------------------------------------------------------------------------------------------------------
Thanks, TAMATAM ; Business Intelligence & Analytics Professional
--------------------------------------------------------------------------------------------------------
No comments:
Post a Comment
Hi User, Thank You for visiting My Blog. Please post your genuine Feedback or comments only related to this Blog Posts. Please do not post any Spam comments or Advertising kind of comments which will be Ignored.