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

Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.

Reply
dataunknown
New Member

Setting up a Matrix

I currently have a dataset that is imported from a SharePoint list that looks like this:

PrimarySecondarySignatoryStatus
TomSamMaryIn Process
JoeTomKateOn Hold
JeffPaulMaryIn Process
PaulBradKateOn Hold
EdJeffKateIn Process

 

And I want the matrix to look like this:

NameIn ProcessOn HoldSignatory
Tom110
Joe100
Jeff110
Paul110
Ed100
Sam010
Brad010
Mary002
Kate003

 

Any suggestions would be greatly appreciated!

1 ACCEPTED SOLUTION
gmsamborn
Super User
Super User

Hi @dataunknown 

 

I created an Employee dimension table in Power Query and then used the following measures.

In Process = 
    COUNTROWS(
        FILTER(
            ALL( 'Table' ),
            'Table'[Status] = "In Process"
                && ( 'Table'[Primary] = SELECTEDVALUE( 'Employee'[Employee] )
                    || 'Table'[Secondary] = SELECTEDVALUE( 'Employee'[Employee] )
                )
        )
    )

On Hold = 
    COUNTROWS(
        FILTER(
            ALL( 'Table' ),
            'Table'[Status] = "On Hold"
                && ( 'Table'[Primary] = SELECTEDVALUE( 'Employee'[Employee] )
                    || 'Table'[Secondary] = SELECTEDVALUE( 'Employee'[Employee] )
                )
        )
    )

Signatory = 
    CALCULATE(
        COUNTROWS( 'Table' ),
        USERELATIONSHIP( 'Employee'[Employee], 'Table'[Signatory] )
    )

 

I hope this helps.

dataunknown.pbix



Proud to be a Super User!

daxformatter.com makes life EASIER!

View solution in original post

2 REPLIES 2
gmsamborn
Super User
Super User

Hi @dataunknown 

 

I created an Employee dimension table in Power Query and then used the following measures.

In Process = 
    COUNTROWS(
        FILTER(
            ALL( 'Table' ),
            'Table'[Status] = "In Process"
                && ( 'Table'[Primary] = SELECTEDVALUE( 'Employee'[Employee] )
                    || 'Table'[Secondary] = SELECTEDVALUE( 'Employee'[Employee] )
                )
        )
    )

On Hold = 
    COUNTROWS(
        FILTER(
            ALL( 'Table' ),
            'Table'[Status] = "On Hold"
                && ( 'Table'[Primary] = SELECTEDVALUE( 'Employee'[Employee] )
                    || 'Table'[Secondary] = SELECTEDVALUE( 'Employee'[Employee] )
                )
        )
    )

Signatory = 
    CALCULATE(
        COUNTROWS( 'Table' ),
        USERELATIONSHIP( 'Employee'[Employee], 'Table'[Signatory] )
    )

 

I hope this helps.

dataunknown.pbix



Proud to be a Super User!

daxformatter.com makes life EASIER!
Idrissshatila
Super User
Super User

Hello @dataunknown ,

 

check this out https://youtu.be/hGj2axffxHo?si=uWEBXL7Hu0C3mhaa



Did I answer your question? Mark my post as a solution! Appreciate your Kudos
Follow me on LinkedIn linkedIn
Vote for my Community Mobile App Idea

Proud to be a Super User!




Helpful resources

Announcements
FabCon Global Hackathon Carousel

FabCon Global Hackathon

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

Check out the October 2025 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.