Ad Hoc Analysis proposal for consolidated first step
I was excited to see development on the Ad-Hoc Analysis tool for OpenMRS 2.x; however, the first couple steps felt a little awkward or use-case-specific. Specifically, choosing parameters before selecting the type of report would work in some cases, but would confusing in others. It seems like filtering the list of available reports and completing any required parameters (global or report-specific) could be done fairly intuitively in a single step. I've created a mockup to explain my proposal:
The suggested changed include:
Combine parameter completion with cohort selection into a single step.
Users can start by searching for a cohort, using a quick filter links to apply filters in a single click, or search by report type (i.e., filter). Favorites, recently used, or popular reports could be used to pre-populate the list of reports, so selecting common reports could be added with a single click.
As reports are selected, any global or report-specific parameters would be displayed above the list of reports or inline, respectively.
Those parameters with natural default value would only need to be changed when needed.
Styling of reports (e.g., inline highlighting) could make it clear when required parameters are not yet filled.
Once required parameters (whether global and/or report-specific) were answered for a report, the count would show as a spinner and get replaced with a number.
A user running a weekly report that requires start date, end date, and location could select the report with a single click, fill in the parameters, and move on. Using the same screen, someone less familiar with the reports who might be flummoxed by a screen asking for start & end dates before they've seen available reports could still find a report and be guided through completing the necessary parameters without the need for additional steps. This proposal accommodates users who do not know or need global parameters up front without sacrificing efficiency for seasoned report users who may nearly always be selecting reports that required start & end dates + location.