Abstract
A lot of great work was done during GSoC 2013 to integrate OpenMRS and DHIS2. The aim of this project is to extend the OpenMRS-DHIS2 Integration Module. The new features to be added will be sourced from the community.Objectives
- Gather requirements by communicating with the teams who have currently deployed the OpenMRS to understand the problems using the current DHIS2 Integration module
- Upgrade the module to work with the latest version of the DHIS2 data model
- Upgrade the UI of the module to be used with the micro frontend architecture
Skills Needed
- OpenMRS data model/understanding of OpenMRS terms.
- DHIS data model
- Reporting Module functionality.
- Basic understanding of Spring and Hibernate.
Basic understanding of XML and JAXB is needed as the OpenMRS-DHIS2 Integration Module implements them.
Future Work
- Reconcile DHIS2 Reporting module branches
To make the module available in production, the `adx` and `adx-disaggregations` branches should be merged to master to ensure the module has the following,
- Use CODE values instead of UIDs
- Use DHIS2 friendly terms at the dataset level
- Define a standard set of concepts/terms to use
- Import datasets using a connected DHIS2 instance
- Support multiple Period Types
- Map OMRS locations with DHIS2 Organisation Unit codes - Develop the UI using Micro Frontends
- Add custom SQL Queries support
- Add Export functionality (export SQL-mapped dataset from the module)
- Push data to DHIS2 automatically
- Store multiple DHIS2 connections
More details on the next steps can be found here: COVID-19 Public Health Response — Improving OMRS to DHIS2 Integration
Resources
OpenMRS-DHIS2-SDMX-HD Integration (see also child pages)
- http://www.dhis2.org/ (see documentation)
- http://www.sdmx-hd.org/
- http://folk.uio.no/bojo/sdmx/sdmxhd_doc.xhtml
- https://jembiprojects.jira.com/wiki/display/SDMXLIB/Home
- https://lists.launchpad.net/dhis2-users/msg03768.html (read the complete thread)
- http://jhia-online.org/index.php/jhia/article/view/65 (paper on integrating OpenMRS and DHIS2 using demo data)
- Progress thread: https://talk.openmrs.org/t/gsoc-2020-improving-openmrs-dhis2-integration/28623
- Project’s wiki page: https://wiki.openmrs.org/display/projects/GSoC+2020+%3A+Improved+OpenMRS+DHIS2+Integration
- COVID-19 Public Health Response - Improving OMRS to DHIS2 Integration: https://wiki.openmrs.org/display/projects/Improving+OMRS+to+DHIS2+Integration
- COVID-Squad notes: https://notes.openmrs.org/covidsquad2020
- ADX specification: https://ihe.net/uploadedFiles/Documents/QRPH/IHE_QRPH_Suppl_ADX.pdf
- ADX-HIV content profile: https://ihe.net/uploadedFiles/Documents/QRPH/IHE_QRPH_Suppl_ADX-HIV.pdfhttps://medium.com/@jayasanka_sack/comparison-between-openmrs-dhis2-integrations-9742272bb8b6
- Dive into DHIS2 Integration work: What's done, and gaps to know: https://docs.google.com/presentation/d/1QkyaN9L14fu_iSjURZ5F4hlDj7viz6ufQtaKfLwN9kw/edit?usp=sharing
- Comparison between the DHIS2 Connector Module, DHIS2 Reporting Module branches, and UgandaEMR approach: https://medium.com/@jayasanka_sack/comparison-between-openmrs-dhis2-integrations-9742272bb8b6
- Summary: Comparison between OpenMRS DHIS2 integrations: https://docs.google.com/presentation/d/16-20-UgZLnU2KuMps2HXMzu9ZEmdIRVWmY1qXz-pOG4/edit?usp=sharing
- Summary: Reconcile DHIS2 Reporting module branches: https://docs.google.com/presentation/d/1IdN2mo1acBKrBDV3cIGCNpy0__lQldQbgn9ZCO1lrJ4/edit?usp=sharing
8 Comments
Akshika Wijesundara
what sort of background knowledge should be there to do this ?
Pascal Brandt
Hi,
Ideally you should be familiar with the OpenMRS and DHIS2 technologies stacks. A good understanding of the data models would also be helpful. Perhaps Sri Maurya Kummamuru, Saptarshi Purkayastha or Roger Friedman may have something additional to offer.
Ciao,
Pascal
Sri Maurya Kummamuru
I updated the page with skills needed. As Pascal Brandt mentioned, good understanding of the data models would be helpful. Having the mentioned skills will make your profile stronger. But, even if you are new and are able to at least show that you are interested by describing what you understand about them in your proposal, it would be great.
This is a new project and not yet implemented.The project you are going to work on is going through a porting phase and it will shortly be uploaded in the openmrs github modules. We will update this page with the official link to the code soon.
Vaibhav Agarwal
Hi,Pascal Brandt
Do we have any specific objectives?or they are all objectives based on community source.
And can I put a mailing list asking for any major requirements or should I wait until the project time starts.
Pascal Brandt
Hi,
I'm sure Sri Maurya Kummamuru already has some ideas, but we'll develop the specification once the student selection process has been completed. Remember to use this time to engage with the community and contribute to the core codebase to increase your chances of being accepted.
Cheers,
Pascal
Vaibhav Agarwal
I will surely do that.
Sri Maurya Kummamuru
Hi Vaibhav Agarwal,
As I mentioned earlier the objectives will be mainly to improve the module features. It is undergoing some changes and we are making sure a first version is released before others can start working on it. I will be updating this page with more details as soon as I can. This would be around the time students are selected. So be active and keep following the pages.
-Regards,
Maurya
Vaibhav Agarwal
Hi Pascal Brandt and Sri Maurya Kummamuru,
Thank you very much for providing information,I will be Active and follow the pages.
Regards,
Vaibhav Agarwal