Forum Discussion
Retirement calculations
I have a table with employee data with the following information-
Employee number, name, fte, dob, age, date
There is a row for every month they are employed with us.
I need to show a bar chart with a count by of staff sliced by age.
The outcome will mean I am able to see the count drop when people reach a set age
Example
If 25 staff hit 65 in Sept 2023 then the total number for sept will be 65 less.
I also have a date table.
Thank you
- Anonymous3 years ago
Hi SamBowdell ,
I suggest you to create a data model as below.
Fact table:
Measure:
Count by Age = VAR _SELECTAGE = SELECTEDVALUE ( DimAge[Age] ) VAR _STEP1 = ADDCOLUMNS ( ALL ( 'Table' ), "Current Age", QUOTIENT ( DATEDIFF ( 'Table'[Dob], MAX ( DimDate[Date] ), MONTH ), 12 ) ) RETURN COUNTAX ( FILTER ( _STEP1, [Current Age] < _SELECTAGE ), [Name] )Result is as below.
Best Regards,
Rico ZhouIf this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
4 Replies
- rubayatyasminCommunity Champion
Hi, SamBowdell
1. Create a calculated column using.
Retired = IF('EmployeeTable'[Age] >= 65, "Yes", "No")
2. Create measure for active employee count.
ActiveCount = CALCULATE(
COUNT('EmployeeTable'[Employee number]),
FILTER('EmployeeTable', 'EmployeeTable'[Retired] = "No")
)Hope this helps.
- SamBowdellNew Member
I want to be able to select any age
- rubayatyasminCommunity Champion
try using SELECTEDVALUE DAX. here is the documentation
https://learn.microsoft.com/en-us/dax/selectedvalue-function
- AnonymousNot applicable
Hi SamBowdell ,
I suggest you to create a data model as below.
Fact table:
Measure:
Count by Age = VAR _SELECTAGE = SELECTEDVALUE ( DimAge[Age] ) VAR _STEP1 = ADDCOLUMNS ( ALL ( 'Table' ), "Current Age", QUOTIENT ( DATEDIFF ( 'Table'[Dob], MAX ( DimDate[Date] ), MONTH ), 12 ) ) RETURN COUNTAX ( FILTER ( _STEP1, [Current Age] < _SELECTAGE ), [Name] )Result is as below.
Best Regards,
Rico ZhouIf this post helps, then please consider Accept it as the solution to help the other members find it more quickly.