Wiki Spaces

Documentation
Projects
Resources

Get Help from Others

Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack

Projects

Page tree
Skip to end of metadata
Go to start of metadata

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

  1. Gather requirements by communicating with the teams who have currently deployed the OpenMRS to understand the problems using the current DHIS2 Integration module
  2. Upgrade the module to work with the latest version of the DHIS2 data model

Extra Credit

  1. Upgrade the UI of the module to be used with the micro frontend architecture

Skills Needed

  1. OpenMRS data model/understanding of OpenMRS terms.
  2. DHIS data model
  3. Reporting Module functionality.
  4. Basic understanding of Spring and Hibernate.

Basic understanding of XML and JAXB is needed as the OpenMRS-DHIS2 Integration Module implements them.


Future Work

  1. 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
  2. Develop the UI using Micro Frontends
  3. Add custom SQL Queries support
  4. Add Export functionality (export SQL-mapped dataset from the module)
  5. Push data to DHIS2 automatically
  6. 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)

  1. http://www.dhis2.org/ (see documentation)
  2. http://www.sdmx-hd.org/
  3. http://folk.uio.no/bojo/sdmx/sdmxhd_doc.xhtml
  4. https://jembiprojects.jira.com/wiki/display/SDMXLIB/Home
  5. https://lists.launchpad.net/dhis2-users/msg03768.html (read the complete thread)
  6. http://jhia-online.org/index.php/jhia/article/view/65 (paper on integrating OpenMRS and DHIS2 using demo data)
  7. Progress thread: https://talk.openmrs.org/t/gsoc-2020-improving-openmrs-dhis2-integration/28623
  8. Project’s wiki page: https://wiki.openmrs.org/display/projects/GSoC+2020+%3A+Improved+OpenMRS+DHIS2+Integration
  9. COVID-19 Public Health Response - Improving OMRS to DHIS2 Integration: https://wiki.openmrs.org/display/projects/Improving+OMRS+to+DHIS2+Integration
  10. COVID-Squad notes: https://notes.openmrs.org/covidsquad2020
  11. ADX specification: https://ihe.net/uploadedFiles/Documents/QRPH/IHE_QRPH_Suppl_ADX.pdf
  12. 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
  13. Dive into DHIS2 Integration work: What's done, and gaps to know: https://docs.google.com/presentation/d/1QkyaN9L14fu_iSjURZ5F4hlDj7viz6ufQtaKfLwN9kw/edit?usp=sharing
  14. Comparison between the DHIS2 Connector Module, DHIS2 Reporting Module branches, and UgandaEMR approach: https://medium.com/@jayasanka_sack/comparison-between-openmrs-dhis2-integrations-9742272bb8b6
  15. Summary: Comparison between OpenMRS DHIS2 integrations: https://docs.google.com/presentation/d/16-20-UgZLnU2KuMps2HXMzu9ZEmdIRVWmY1qXz-pOG4/edit?usp=sharing
  16. Summary: Reconcile DHIS2 Reporting module branches: https://docs.google.com/presentation/d/1IdN2mo1acBKrBDV3cIGCNpy0__lQldQbgn9ZCO1lrJ4/edit?usp=sharing
  • No labels

8 Comments

  1. what sort of background knowledge should be there to do this ? (smile)

    1. 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 KummamuruSaptarshi Purkayastha or Roger Friedman may have something additional to offer.

      Ciao,
      Pascal

  2. 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.

  3. 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.

    1. 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 

      1. I will surely do that.

  4. 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

  5. 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