OpenMRS reporting update

  • How are people currently reporting with OpenMRS

    • BIRT in Lesotho, MVP

      • Lots of performance reports

      • Another problem with this is that you have to go down to the database level, easy to miss something (such as voided patients)

    • Cohort builder

    • Reporting framework, Jembi converting to XDMX-HD

    • ODBC links to pivot tables in Excel

  • Overview of reporting module

    • Create cohorts and indicators using queries similar to the existing cohort builder

    • Put these into an indicator report, example number of patients per criteria broken down by age and gender

    • Recently added row per patient view using logic module, can page through it

    • UI is still in preliminary stage due to various complexities of reporting needs

    • API built to handle the above queries, but larger custom reports are currently difficult to implement directly in the UI

  • What other types of reports?

    • Mastercard view

  • It would be good to get interest from the OpenMRS community to build various UIs on top of the reporting framework, such as:

    • A next generation cohort builder

    • A PEPFAR style report

  • Documentation for the reporting module is available on the Wiki

  • Detailed overview

    • Period indicator report supports indicators, dimensions, filters for patients

    • Reports can be saved and tagged to be able to be recalled later

    • Row per patient report

      • Uses the logic service

      • Adds gender and brithdate

      • Added recently to support work that AMPATH had requested

    • Custom templates are supported in Excel, HTML, XML, etc

    • Currently difficult to share reports from one environment to another because the reports are stored in the serialized object table

      • Hoping that metadata sharing module will fix this

      • In the interim, have been building custom modules on top of it using the API directly

    • PDF renderer not supported yet

    • SQL cohort and dataset support allows you to extend the framework if the core queries don't fit your needs

    • Eventually may support BIRT rendering

    • If you have the reporting compatibility module installed, the datasets and cohorts you have saved will be available in the reporting framework

  • What is needed for people to start using this?

    • Porting reports (move from one instance to another)

      • Metadata sharing module may work

    • Backwards compatibility (when upgrading the module)

    • Exporting all of the records in an indicator report

    • Better lists of patients in reports

    • Initial cohorts so we don't have to create all of them ourselves

    • Export tickets from PIH JIRA to OpenMRS JIRA

      • 100 open tickets

    • Better documentation (or just make the documentation easier to find)

      • Lots of screencasts available, linked from the wiki

    • Bulleted pro-con list of this compared to BIRT

    • Charts

  • Final comments

    • The EAV data model makes it hard to do comprehensive reporting

    • We have a critical mass here

    • This is meant to tackle various use cases

    • Eventually a data warehouse may be needed

    • This is only as smart as logic is smart;