Forum Discussion
Help with dax
- 9 months ago
Hi,
you can create a measure which will give output as 0 or 1 based on your data and then add it to your table visual.
IsActive_FY2425 = VAR FY_Start = DATE(2024, 4, 1) // if you want you can take this from slicer using selected value VAR FY_End = DATE(2025, 3, 31) // if you want you can take this from slicer using selected value -- 1. Get the current row context from the visual VAR CurrentPerson = SELECTEDVALUE('YourTable'[Person ID]) VAR CurrentReg = SELECTEDVALUE('YourTable'[Registration Date]) VAR CurrentDed = SELECTEDVALUE('YourTable'[Deduction Date]) -- 2. Find the LATEST Registration Date (Chronologically) -- We only care that the registration happened before the FY ended. VAR MaxValidRegDate = CALCULATE( MAX('YourTable'[Registration Date]), FILTER( ALLEXCEPT('YourTable', 'YourTable'[Person ID]), 'YourTable'[Registration Date] <= FY_End ) ) RETURN IF( -- Check A: Is this the Latest Record? CurrentReg = MaxValidRegDate && -- Check B: Is the Deduction Date Valid? -- (Logic: It is BLANK (Active) OR it is AFTER the FY Start) ( ISBLANK(CurrentDed) || CurrentDed >= FY_Start ), 1, 0 )Please give kudos or mark it as solution once confirmed.
Thanks and Regards,
Praful
uc , With a date tbale having active join Registration date and inactive join with Deducted date
Current Employees = CALCULATE(COUNTx(FILTER(Employee,Employee[Registration Date]<=max('Date'[Date]) && (ISBLANK(Employee[Deducted Date]) || Employee[Deducted Date]>max('Date'[Date]))),(Employee[Person Id ])),CROSSFILTER(Employee[Registration Date],'Date'[Date],None))
Refer to the file attached after the signature
Power BI: HR Analytics - Employees as on Date : https://youtu.be/e6Y-l_JtCq4
https://community.powerbi.com/t5/Community-Blog/HR-Analytics-Active-Employee-Hire-and-Termination-trend/ba-p/882970
Power BI HR Active Employee Tenure Bucketing, and Hired, Terminated, and Active employees: https://youtu.be/fvgcx8QLqZU