Forum Discussion
Active Employees per Period
- 9 years ago
Thank you for the advice. I tried it and do not get the correct result, either. What I do get is the number of employees, who left in a specific period (e.g. month).
As I have to deliver the report today, I resolved to take a different approach, showing the number of joiners, leavers and overall evolution of active personnel as in the chart below.
Anonymous - I have an active relationship between the date table and the employee table with a one to many relationship between date[date] and employee[hiredate].
Each bar in the bar chart (using your example) represents a given period (i.e., date range). This date range sets the date context for the DAX statement. The date context filters the employee table to only those employees hired within the date range context (because of the relationship with the date table). Think of it as if the DAX statement is getting executed separately for each period. When looking for all active employees at the end of the period, all employees hired before the date range context have to be included as they may still be active employees. The ALL() function allows the CalculateTable to ignore the period's date range context.
I tried using your DAX statement and found (in my model) that it doesn't include employees hired prior to the period. Have you verified that your formula includes all requisitions opened prior to the period and are still open?
Anonymous - I did a little more digging. Since you don't have an active relationship between date and requisition, then you don't have a date context that limits records in your calculate statement. So, if you modified your DAX statement to look like the below, it should behave the same as mine. This assumes the Last Modified date is blank if the requisition is still open.
Requisitions Open =
VAR MaxDate =
MAX ( 'Date Table'[Date] )
RETURN
CALCULATE (
DISTINCTCOUNT (Requisitions[Job Req ID] ),
Requisitions[Approved Date] <= MaxDate,
OR(ISBLANK(Requisitions[Last Modified]),
Requisitions[Last Modified] > MaxDate)
)
- Anonymous7 years agoNot applicable
rl_evans Thanks for digging into this - it's a trickier one to reoslve than I first thought!
I've tried the formula you suggested, but this still doesn't allow me to filter using the chart unfortunately.
I've also tried replicating what you have by removing my relationship with [Last Modified Date] and the [Date] in my Date Table, then making the relationship between [Approved Date] and [Date] active. I've then used your original formula. The chart looks fine, but when I seect a month in the chart to filter by, all my rows come up blank (see screenshot below).
Are you able to successfully filter for the relevant employees active in the period using you chart?
- Anonymous7 years agoNot applicable
rl_evans I assume the filtering not working is due to the fact that if I'm selecting a particular month, and the relationship between [Approved Date] and [Date] is active, then I'm just filtering the data for all [Approved Dates] in that month. The filter doesn't take into account the measure at all.
- Anonymous7 years agoNot applicable
rl_evans I've done a bit of testing and this does seem to be the case