cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
FiddeR74
Frequent Visitor

Visualize invoicing rate for customers in a gauge

Hi!

 

I have a problem that i am not able to solve. I have a table containing the following (simplified data):

  • Client - Name of the client
  • Year
  • Month
  • IsBillable
  • SpentHours

I want to show the invoice % with slicing possibilites on multiple levels in a gauge.

 

Example of data

Client Year Month IsBillable SpentHours
Client1 2016 1 Yes 12
Client1 2016 1 No 6

Client2 2016 1 Yes 100

 

For the simplifed example 112 hours was billable and 6 not. That gives us an invoice rate of 112/118=95%

If I only select Client1 the invoice rate should show 12/18=67%

How can I achieve this? Averages on a single field does not give accurate numbers.

 

Thanks in advance!

1 ACCEPTED SOLUTION
KGrice
Solution Sage
Solution Sage

You could do this all in one calculation, but for readability, I like to use building blocks. This will also help if you have to use some of these same measures in other places. Create the following four measures, using whatever names make sense for you:

 

Hours = SUM(TableName[SpentHours])

 

Billable Hours = CALCULATE([Hours], TableName[IsBillable]="Yes")

 

Non-Billable Hours = CALCULATE([Hours], TableName[IsBillable]="No")

 

Invoice Rate = [Billable Hours] / [Hours]

 

The non-billable hours measure isn't actually necessary for your end result, but it was useful for this visual:

 

billableHours.PNG

 

If you'll never use any of the building blocks elsewhere anyway, you can skip straight to the end result with a single measure:

 

Invoice Rate = CALCULATE(SUM(TableName[SpentHours]), TableName[IsBillable]="Yes") / SUM(TableName[SpentHours])

 

With your invoice rate measure selected in the Fields list, you can format it as a percent in the Modeling tab. Click the percent sign, then bump up or down the number of decimals you want to show. This will not affect the actual number in other calculations, i.e., 66.66666% will still be 0.6666666 in further calculations, even if shown as 67%.

View solution in original post

1 REPLY 1
KGrice
Solution Sage
Solution Sage

You could do this all in one calculation, but for readability, I like to use building blocks. This will also help if you have to use some of these same measures in other places. Create the following four measures, using whatever names make sense for you:

 

Hours = SUM(TableName[SpentHours])

 

Billable Hours = CALCULATE([Hours], TableName[IsBillable]="Yes")

 

Non-Billable Hours = CALCULATE([Hours], TableName[IsBillable]="No")

 

Invoice Rate = [Billable Hours] / [Hours]

 

The non-billable hours measure isn't actually necessary for your end result, but it was useful for this visual:

 

billableHours.PNG

 

If you'll never use any of the building blocks elsewhere anyway, you can skip straight to the end result with a single measure:

 

Invoice Rate = CALCULATE(SUM(TableName[SpentHours]), TableName[IsBillable]="Yes") / SUM(TableName[SpentHours])

 

With your invoice rate measure selected in the Fields list, you can format it as a percent in the Modeling tab. Click the percent sign, then bump up or down the number of decimals you want to show. This will not affect the actual number in other calculations, i.e., 66.66666% will still be 0.6666666 in further calculations, even if shown as 67%.

Helpful resources

Announcements
Microsoft Build 768x460.png

Microsoft Build is May 24-26. Have you registered yet?

Come together to explore latest innovations in code and application development—and gain insights from experts from around the world.

charticulator_carousel_with_text (1).png

Charticulator Design Challenge

Put your data visualization and design skills to the test! This exciting challenge is happening now through May 31st!

May UG Leader Call Carousel 768x460.png

What difference can a User Group make for you?

At the monthly call, connect with other leaders and find out how community makes your experience even better.

Power BI Release May 2022 768x460.png

Check it out!

Click here to read more about the May 2022 updates!