I documented how to create reports in OpenMRS here:
Creating Reports in OpenMRS
and I consolidated and cleaned up other reporting-related docs based on older pages here:
Reporting overview
There are basically 3 ways to create reports:
1. Configuration-based reports
Defined using YAML config files + SQL via the initializer.
Docs:
Configuration-Based Reporting with OpenMRS Initializer
Reference implementation used:
PIH report descriptors
2. Programmatic reports
Defined in Java code inside OpenMRS modules.
Docs:
Programmatic Reporting in OpenMRS
Reference implementation used:
PATH DRC reports module
3. UI-defined reports
Created via the OpenMRS web UI.
This approach is deprecated. Some parts still work, some don’t, so I’ve added a clear use-at-your-own-risk warning in the docs.
I also consolidated and cleaned up other reporting-related docs based on older pages here:
Reporting overview
Feedback request
I’d especially love feedback on programmatic and config-based reports:
-
Config-based reports:
@mseaton if you get a chance, could you skim this doc and let me know if anything needs adjusting?
Configuration-Based Reporting with OpenMRS Initializer -
Programmatic reports:
@reagan @ibacher would love your eyes on this one as well.
Programmatic Reporting in OpenMRS
Any nitpicks, corrections, or “this part is confusing” feedback is very welcome! ![]()