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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
pvarley
Helper I
Helper I

Power BI Desktop hangs when adding a column

I'm adding a column to an existing table. The table contains about 20,000 rows, so it should not take long, but after I hit Enter, Power BI Desktop says "Working on it" and never finishes. I have updated to the latest version and restarted my computer, but it still happens. I have to force the app to quit in Task Manager.

 

This is the definition of the column:

IsInternal = if( [Measure1] > 0 && [Measure2] = 0, TRUE(), FALSE() )

1 ACCEPTED SOLUTION


@v-shex-msft wrote:

HI @pvarley,

 

I think the performanc issue is related to your masure, each measure will calculate throught the UsersTenants table. If this is a case, your calculate column will calculate about almost 1,368,000,000(19,000* 36,000*2) times.

 

Regards,

Xiaoxin Sheng


 

That may be the problem. I worked around it by moving the string comparison into the query and generating two new columns in the UsersTenants table with True/False values. Now the measures just look at those two values, and the calculation is much faster. The new measures look like this:

 

CALCULATE( DISTINCTCOUNT( UsersTenants[Email] ),
FILTER( UsersTenants,
UsersTenants[IsProvisioningUser] = FALSE && UsersTenants[IsInternalUser] = TRUE
)
)

View solution in original post

6 REPLIES 6
vanessafvg
Super User
Super User

how long have you waited? are you creating a column or a measure?  if you basing it off measures, should you not be creating a measure?

 

or alternatlively swap out true with 1, 0 for false or something and see if that makes any difference.





If I took the time to answer your question and I came up with a solution, please mark my post as a solution and /or give kudos freely for the effort 🙂 Thank you!

Proud to be a Super User!




I left it alone for about an hour, and it had finished when I returned. I am creating a column because I want to use it as a filter in reports. I don't believe I can do that with a measure because a measure would not have a row context. 

Hi @pvarley,

 

Can you share some detail content of your issue? It will be help for troubleshooting.(e.g. screenshots, formula, operate steps)

 

In addition, I'd like to suggest you use measure instead the calculate column and test again.

 

Regards,

Xiaoxin Sheng

Community Support Team _ Xiaoxin
If this post helps, please consider accept as solution to help other members find it more quickly.

I created a measure with the same formula as the column, but Power BI will not allow me to use the measure as a filter in a report. That is why I'm using a calculated column.

 

The measures behind the column look like this:

 

Measure = CALCULATE( DISTINCTCOUNT( UsersTenants[Email] ),
FILTER( UsersTenants,
UsersTenants[Email] <> "specificuser@example.com" && FIND("@example.com", UsersTenants[Email], ,0) > 0
)
)

 

The UserTenants table has about 36,000 rows, and the Orgs table, which is related and has the column has about 19.000 rows, so it's not a lot of data. The column takes at least 20 minutes to calculate, which seems like an eternity for 19,000 rows. 

HI @pvarley,

 

I think the performanc issue is related to your masure, each measure will calculate throught the UsersTenants table. If this is a case, your calculate column will calculate about almost 1,368,000,000(19,000* 36,000*2) times.

 

Regards,

Xiaoxin Sheng

Community Support Team _ Xiaoxin
If this post helps, please consider accept as solution to help other members find it more quickly.


@v-shex-msft wrote:

HI @pvarley,

 

I think the performanc issue is related to your masure, each measure will calculate throught the UsersTenants table. If this is a case, your calculate column will calculate about almost 1,368,000,000(19,000* 36,000*2) times.

 

Regards,

Xiaoxin Sheng


 

That may be the problem. I worked around it by moving the string comparison into the query and generating two new columns in the UsersTenants table with True/False values. Now the measures just look at those two values, and the calculation is much faster. The new measures look like this:

 

CALCULATE( DISTINCTCOUNT( UsersTenants[Email] ),
FILTER( UsersTenants,
UsersTenants[IsProvisioningUser] = FALSE && UsersTenants[IsInternalUser] = TRUE
)
)

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.