Forum Discussion
YTD uptime using measures
- 6 years ago
For anyone following this topic, I have solved it myself.
I added a column to my table which finds the maximum uptime of the wells based on a facility filter.
Then with the calculate function I create an average over this value.
Using the filter for the current year only, it shows the average YTD.
Not sure if this is the most robust solution, but it works.
If anyone is interested in more details of these explanation, just let me know.
GerlofVisser , In datesyd and the date in the visual both should come from a date/calendar table.
example
YTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD('Date'[Date],"12/31"))
Last YTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(dateadd('Date'[Date],-1,Year),"12/31"))
To get the best of the time intelligence function. Make sure you have a date calendar and it has been marked as the date in model view. Also, join it with the date column of your fact/s. Refer :
https://radacad.com/creating-calendar-table-in-power-bi-using-dax-functions
https://www.archerpoint.com/blog/Posts/creating-date-table-power-bi
https://www.sqlbi.com/articles/creating-a-simple-date-table-in-dax/
See if my webinar on Time Intelligence can help: https://community.powerbi.com/t5/Webinars-and-Video-Gallery/PowerBI-Time-Intelligence-Calendar-WTD-YTD-LYTD-Week-Over-Week/m-p/1051626#M184
Appreciate your Kudos.
Thanks for your quick answer amitchandak , I tried answering yesterday, but an error occured...
Just to clarify a bit, I do have a date table and it's linked correctly, but I think the issue has to do with the max function.
This is my measure for checking whether the facility was up and running for 24hrs:
- amitchandak6 years agoSuper User
GerlofVisser , Do you max of row level data or sum till month level and then do max . If you can explain by a data example
- GerlofVisser6 years agoHelper I
Hi,
I have created a quick excel example, but this is what I want to achieve.
OwenAuger , I have seen your posts, maybe you can help as well?
Hope that this helps.
Thanks!
Gerlof
- GerlofVisser6 years agoHelper I
Ok, I have created some additional measures and am trying to get it right, but I think the issue lies with summing up measures.
I have also tried to summarize the column I am creating in mutiple steps in one formula, this looks something like:
Uptime_Field = SUMX( SUMMARIZE(energy_unit_data_fdc_value, Facility_Lookup[Facility_ID],"Max Hours", if((CALCULATE(max(energy_unit_data_fdc_value[hrs_online]),Facility_Lookup[Facility_ID]))=24 , 1 , (CALCULATE(max(energy_unit_data_fdc_value[hrs_online]),Facility_Lookup[Facility_ID]))/24)),[Max Hours])My original approach was the following:
With this measure, I am finding the max of all the wells which belong to a certain facility ID, this gives me a good result.
max hrs well = CALCULATE(max(energy_unit_data_fdc_value[hrs_online]),flowID_Lookup[FACILITY_ID])With the following measure I am normalizing the data on a daily basis
Uptime_Field_day = if([max hrs well]=24,1,[max hrs well]/24)And this measure "Uptime_Field_Day" gives exactly the same results as the "Uptime_Field" measure.
When I then use the YTD function to calculate the cumulative, the results are the same.
Cumulative hrs online = CALCULATE([Uptime_Field_day], DATESYTD(Rolling_Calendar[Date]))