Power BI Builds 5 - Optical Data

Hi uriah1977 ,
Thank you for you for your great feedback. Even though you created an impressive report before I even try to think about creating a report.

2 Likes

Hi @MudassirAli and @BrianJ,

Thank you both so much for your kind words, really appreciate it!
Iā€™m sorry to say I canā€™t publish to web within my tenant but will definitely share the PBIX file in the final write up after the closing date. :+1:

What I love most about seeing all submissions - is that although we all start with the same dataset - everyone finds a different way to get amazing insights from it and create appealing reports.

2 Likes

Hi All:

Here is my submission for eDNA challenge #5, Optical Data.



I tried to make this ā€œreportā€ look more like an app, so I made minimal use of analytical visuals, instead concentrating on the main ā€œAppointmentsā€ page; the secondary ā€œPatientsā€ page was to be accessed as a drill-through target of the ā€œAppointmentsā€ page only, and the ā€œExportā€ page was added to allow not only allow easy export of the patients needing appointments, but one that would ā€œsyncā€ with the main ā€œAppointmentsā€ page.

NOTES:

Data:

  • made assumption that the optician that did the patientā€™s last appointment would do the next appointment

Data Model:

  • imported [Optical Data Set.xlsx] as a staging query, and created references in new [Data Model] group for [Patients], [Opticians], [Appointments]

  • [Patients] table:

  • [Opticians] table

    • merged first and last name columns; duplicated column; split columns to re-create first name and last name
  • added [Dates] table using eDNA Extended Date Table M Code;

    • marked as Date table
    • used parameter to get and set start date to Jan 1 of first appointment year
    • used parameter to get and set end date to Dec 31 of the year after this year
  • added [Periods] table using eDNA Period Table M Code (Dynamic Date Range Slicer- Query M); adjusted for ā€œthisā€ and ā€œnextā€ periods (week, month, quarter, year)

Measures:

Visuals:

  • General:

    • added pages for [Appointments], [Patients], [Export]
    • hid all pages except for [Export] page for so PDF export (in either Power BI Desktop or Power BI Service) will output only the [Export] page
    • added buttons for page navigation to header (font bold white for current, font regular grey for options)
    • added card for [Session Admin] to footer to display last refresh, report ID, report version, report version date (these in card title and whitespace character in card field well)
    • added card for [Report Admin] to footer to display current date, current user (these in card title and whitespace character in card field well)
    • made extensive use of the [General] section in the Visualizations pane to confirm and adjust the values X/Y/Width/Height as necessary
    • used object layering (selection pane grouping) to make the user experience more ā€œapp-likeā€ (https://www.youtube.com/watch?v=PKIcjGz_Swg)
    • calculated whether user was accessing report in Power BI Desktop or the Power BI Service and used this info to present tooltips relevant to the userā€™s environment
      • (used difference between NOW() and UTCNOW() to see if user was on Desktop or Service; I know this is a hack, and doesnā€™t work if the time in your time zone is the same as UTC, and I would have preferred to use USERNAME() and USERPRINCIPLENAME(), but against my understanding, for whatever reason [perhaps my free PBI license type?], these both gave me the same value irrespective of environment) (*** Iā€™m not happy with this method, Iā€™m still looking for a better way, and would be interested in anyoneā€™s experiences/thoughts/comments ***)
  • [Appointments] page:

    • used standard list slicers complete with ā€œSearchā€ for (Next) Opticians and Patients
    • used ā€œChiclet Slicerā€ custom visual for Periods, Age Groups, and Next Appointment Status
    • used ā€œReset Slicersā€ button complete with bookmark to allow user to easily return to the original state
    • changed font colour of [Patient Name] column to blue to indicated that you can do something (in this case drill-through to [Patients] page for the selected patient)
  • [Patients] page:

    • used 3 multi-row cards to display General, Appointment, and Personal information for the selected patient
    • set ā€œPatient Nameā€ as drill-through target
    • presented the patientā€™s appointment history in a table, complete with data bars and up and down triangle icons as necessary to denote a changed right-eye or left-eye value from the previous appointment
  • [Export] page:

    • changed page size to ā€œLetterā€ and increased spacing from edges in case PDF export was printed
    • used ā€œChiclet Slicerā€ custom visual for Periods, Age Groups, and Next Appointment Status
    • syncā€™d slicers to [Appointments] page to allow export of the patients/appointments that had been selected (via slicers) on the [Appointments] page
    • added PDF Download icon to permit use of the current environment (Desktop, Service) to display the tooltip relevant to the userā€™s environment
8 Likes

@Greg Good report and great explanation of what you have done in the report. I like the PDF export concept in the report too. I was wondering how you did you calculate the Next Optician for a particular patient.
Are next optician was selected randomly or you used/assumed a particular concept behind this?

Thanks.

1 Like

I just made an assumption.

1 Like

Wow

Some incredible submissions so far.

Looking forward to getting into my development today.

1 Like

Below is my submission as Newcomer.

The main goal is to track patientā€™s appointments.

  1. Did Age Category in Power Query itself
  2. Break down into 2 dimensions(Patients, Opticians) and Fact table(Appts)
  3. Main challenge is to come up with Next Appointment date based on the age, Frequency and the last appointment date
  4. Few measures to get the counts
  5. Conditional formatting to get the flag based on the appointment status

Vision Appointment Tracker

5 Likes

Wow this is good

3 Likes

WOW! WOW! WOW! WOW! WOW! WOW!

We are seriously lifting the bar some amazing entries and techniques on display.

Great to see you guys have given me the easy task of having to pick a winner from this lot :worried:

No but seriously some amazing entries and great to see some new faces joining in.

Iā€™m looking forward to reviewing your submissions and sharing some feedback with you.

Any one sat on the fence, there is still time to join in so get involved you wont regret it.

P.S Some great prizes on offer for the new entrants category be sure to check out the post below.

Thanks All
Haroon

@sunip,

I like the way you structured your report, and showed all of the data that was required. One area I would suggest to improve on is the color theme. This is one thing, even if you are a newbie to Power BI , can help take you to the next level! First of all, I will proclaim that Iā€™m color blind, and without the help of additional tools my report color schemes would be awful. You have a great image in the top left corner of the report. Use this to your advantage, and create your color scheme off this. Here are step by step instructions to help create this.

  1. Go to https://analysthub.enterprisedna.co/colour-theme-generator
  2. Select Image to Colours
  3. Upload your image
    Here is what it came up with:

I also use this website as well to compare:

** All you do is upload your image, and here is what it came back with**

** If you want to take these colors a step farther and create your own JSON theme, go to this site and enter all of the HEX codes: https://themes.powerbi.tips/

Selecting a color scheme is very first thing I do when Iā€™m creating reports. Nothing beats a great first impression!

Cheers!
Jarrett

4 Likes

#NewToPowerBI.
My Submission to this challenge 5. Tried to create a simple Dashboard with Key information.

Screen1: All Key info about Patient including Upcoming and historical Appointments.

Screen2:
Appoinment Details including overdue appointments and upcoming appointments for effective planning.

Any constructive feedbacks are welcome. #LearningFromEveryone.

9 Likes

@JarrettM
Thank you very much for your input and feedback. I am learning a lot with the challenges and valuable feedback from others. This will really help me for next my challenges.

3 Likes

@uriah1977

Thank you very much! I have to say, first time on the community, Iā€™m blown away by peoples designs. The standard is amazing.

Sam

1 Like

@uriah1977,

You raise an awesome and very important point here that I think is relevant to the vast majority of us here on the forum. The eDNA content does SUCH a good job on DAX training, that for almost all of us thatā€™s our comfort zone.

However, @nick_m and @melissa have both said something to the effect of (and Iā€™m grossly oversimplifying here) ā€œif something can be done upfront in Power Query, it probably should beā€. This was a huge revelation to me, but as Iā€™ve tried to implement it more and more over the past few months rather than just jumping right into DAX, Iā€™ve come to realize that in many/most cases, it is the best approach both from a performance standpoint and also in terms of making your DAX much simpler and easier for others to understand.

Toward that end, I canā€™t recommend @melissaā€™s Enterprise DNA TV YouTube Videos highly enough. By working through these in detail (often multiple views per video) and forcing myself in my own work not to jump immediately into back DAX when I struggle with PQ, Iā€™ve started to gain a much more balanced skill set that has been enormously beneficial. Itā€™s hard work at times, but also really rewarding because, while totally different in structure and operation from DAX, M code is incredibly interesting and powerful in its own right.

So, you are spot on in thinking about DAX as just one force among many.

  • Brian
5 Likes

Yep, SQL > PQ > DAX whenever possible.

4 Likes

Once again I look at these and fail to see how they help us to get any better.

I look at the submissions and figure why am I doing this Iā€™m not a graphic artist or a design person.

Itā€™s intimidating at best to us out there that donā€™t have any design/artistic abilities. What is wrong with a couple of charts and a couple of tables to get the point across.

Sorry but just my feeling on this.

Guy

@GuyJohnson It is all about Data Story telling, if your end user can get the idea of what you are showing them in first 10 seconds of seeing the dashboard then your end goal is achieved. You donā€™t need to decorate a dashboard to make it look good, only few elements related to the data and boom you have a great report, for example someone above used glasses and without even looking at the data I know this report is somehow related to eyes.

5 Likes

@GuyJohnson,

Without debating the relative merits of the various design elements (or anything other than basic design elements at all), I would say if you donā€™t find the design aspect relevant for you and your work, just ignore it and focus on the incredible range of PQ, DAX and visualization techniques exhibited across the range of the submissions. These techniques are extremely versatile and can be applied across a wide range of problems, industries, etc.

I can say for certain that Iā€™ve gotten significantly better in a number of areas by participating in these challenges and learning from the entries submitted and the subsequent write ups/discussions, and find it very hard to imagine that wouldnā€™t be true for everyone, although individually our takeaways will be different.

  • Brian
5 Likes

@GuyJohnson Donā€™t forget that its all about your audience, and what they expect. If the ā€œreportā€ will be client-facing or executive-facing, then theyā€™re (often) used to high-quality presentations/graphics. One has more latitude when developing for internal audiences, but Iā€™ve personally had many (consulting, granted) instances where a blocking ā€œmustā€ is something like:

> ā€¦ if the layout and formatting are not consistent and ideal, how can I trust the data? ā€¦

So, for good or bad, the audience rules ā€¦ whatever they need to have confidence in their analysis/decisions, and each organization/report series will have their own design criteria.

Greg

4 Likes

@Brian

The truth is that time pressure always puts me back in my comfort zone. Although I canā€™t solve problems with DAX like a walk in the park I know where to look for resources that can help me to get to a solution within a certain time. On the other hand I canā€™t find so many resources on M code. Well there are resources, but the amount of DAX resources seems much larger to me. Maybe I have to improve the way I searchā€¦ I donā€™t know for sure.

I will certainly look at @melissaā€™s Enterprise DNA TV YouTube Videos. Thanks!

Daniel