Forum Discussion
DocCactus
1 year agoRegular Visitor
Calculating Active Employees from Most Recent Record
Hello, I am trying to analyze workforce metrics over time. I have a fact table that has a record for each time an employee file has changed. It has at least one record for every employee. This table...
johnt75
Super User
1 year agoYou could create a calculated column in the employee table like
Is Latest Record =
VAR MaxRecordOrder =
CALCULATE (
MAX ( Employee_Fact[RecordOrder] ),
ALLEXCEPT ( Employee_Fact, Employee_Fact[PS ID] )
)
VAR CurrentRecordOrder = Employee_Fact[RecordOrder]
VAR Result = CurrentRecordOrder = MaxRecordOrder
RETURN
Result
and then define your measure as
Active Employees =
VAR EndDatePerVisual =
MAX ( 'DateTable'[Date] )
VAR RESULT =
CALCULATE (
DISTINCTCOUNT ( Employee_Fact[PS ID] ),
REMOVEFILTERS ( 'DateTable' ),
Employee_Fact[Start Date] <= EndDatePerVisual
&& (
Employee_Fact[Term Date] > EndDatePerVisual
|| ISBLANK ( Employee_Fact[Term Date] )
)
&& Employee_Fact[Is Latest Record] = TRUE
)
RETURN
RESULT