Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
key_to
Advocate I
Advocate I

Distinct count of active employees over time period

Hello.
 
I am strugglig to get my number of employees by month right. The issue is that some employees hold two positions and appear each month twice. I don't know how to include "if a variable is true, count distinct"  into my formula below.  The 'Var result' with the 'if' formula does not work. 
 
Distinct count of active employees =
VAR currentDate =
    MAX ( 'DimDates'[Dates] )
VAR _active =
        FILTER (
            FactEmployement,
            ('FactEmployement'[Ansatt fra] <= currentDate
                && OR((FactEmployement[Ansatt til] >= currentDate ), ISBLANK(FactEmployement[Ansatt til]))
        )
    )
    VAR result = CALCULATE(DISTINCTCOUNT(FactEmployement[Ansattnr]),IF(_active=1,1,0))
    Return result
 
I would appreciate any suggestion!
Thanks in advance!
1 ACCEPTED SOLUTION
Jihwan_Kim
Super User
Super User

Hi,

I am not sure how your datamodel looks like, but please try disconnect the relationship between date table and fact table. And then try the below measure.

 

Distinct count of active employees =
VAR _active =
    SUMMARIZE (
        FILTER (
            FactEmployement,
            (
                'FactEmployement'[Ansatt fra] <= MAX ( 'DimDates'[Dates] )
                    && OR (
                        ( FactEmployement[Ansatt til] >= MIN ( 'DimDates'[Dates] ) ),
                        ISBLANK ( FactEmployement[Ansatt til] )
                    )
            )
        ),
        FactEmployement[Ansattnr]
    )
VAR result =
    COUNTROWS ( _active )
RETURN
    result

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Go to My LinkedIn Page


View solution in original post

3 REPLIES 3
Ashish_Mathur
Super User
Super User

Hi,

Share some data and show the expected result.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
Jihwan_Kim
Super User
Super User

Hi,

I am not sure how your datamodel looks like, but please try disconnect the relationship between date table and fact table. And then try the below measure.

 

Distinct count of active employees =
VAR _active =
    SUMMARIZE (
        FILTER (
            FactEmployement,
            (
                'FactEmployement'[Ansatt fra] <= MAX ( 'DimDates'[Dates] )
                    && OR (
                        ( FactEmployement[Ansatt til] >= MIN ( 'DimDates'[Dates] ) ),
                        ISBLANK ( FactEmployement[Ansatt til] )
                    )
            )
        ),
        FactEmployement[Ansattnr]
    )
VAR result =
    COUNTROWS ( _active )
RETURN
    result

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Go to My LinkedIn Page


Thank you so much! This is exactly what I was looking for! 

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.