OpenMRS-DHIS2 module

I apologize for not attending the 10 AM design call today.

I did have interactions with a person from Novartis who was trying to setup the module on an instance in Ghana. They did offer to work but unfortunately, they were not interested to develop. They gave 15 day to 1 month deadline periods to complete the work and deliver it. I tried explaining the module only receives volunteer contributions and deadlines are not realistic. We lost interaction 2 months back.

yes - that list is available here https://wiki.openmrs.org/display/projects/OpenMRS+-+DHIS2+-+ADX+-+Reporting

I do not understand what you refer by this.

That said, I made sure we prioritized their goals to be done first for any contributions made to this module. We are trying our best and even are progressing with a GSOC project. In fact, we might have even completed what they require. But, there is still a lot of work to be done to make it an out of the box module that can be used by any implementation.

+1, we can demonstrate the current functionality and ascertain what is required for them and make it a community priority work.

@akanter would it be possible to get the Novartis team and yourself on Monday’s design forum? @burke and @darius should be able to join that call along with others.

I understood Andy to be saying that there are available developers who are underutilized because we aren’t able to guide them. That’s what I meant by that line. (I see it is more complicated than that.)

Maurya, You might not have known, but there was an entire project team which was working on ensuring the development of the OpenMRS-DHIS2 module was completed for Ghana by May. I think the thought was that to redevelop the module would be less efficient then waiting for the existing module to be updated. The developer WAS able to do development if they had support, but that didn’t happen. I’d like to have a discussion about how we can more this forward and have someone talk to the Novartis team on next Wednesday’s call at 10am CDT.

I apologize Andy. This was never communicated to me.

I requested his help to update the module in every one of our calls when he mentioned deadlines, until you asked him to do the development the person didn’t agree to even setup his environment for development.

Andy, I had about 10 - 15 calls with the person. 3-4 of which for just setting up his environment, our every conversation ended with “why do I trouble him to setup an environment when I could develop the code faster” and was asked to give deadlines by which I can complete it. This were literally our conversations. I have helped GSOC aspirants setup environments in under 1 hour.

Believe me Andy, I would literally sit with anyone who is interested to take this forward. I apologize that it didn’t meet the expectations. I did my best.

Water over the dam, Maurya, I am sorry that the communication was not clear and that the Novartis developer was unwilling or unable to assist. I will bring this back to the team. The fact is that they are taking the DHIS2 integration off the table for this year unless we are able to resolve the impass. What is the status of the module, and how hard would it be to finish it so that Ghana could build a set of reports to transfer from OpenMRS to their DHIMS2 platform?

Would you be available to be on the call next Wednesday?

reading the string. Andy, are you the POC and/or is someone else? and who is the ‘team’ that is mentioned? the water under the bridge may come back if we are unclear what the expectations are.

seems that the call should clarify the concept note/requirements ( i see the link to the list) and what has been done/needs to be done/ is part of a critical path ( i can’t tell from reading the post what has been done/whether there was agreement on what needs to be done) , what Novartis developer perceives to be the blockers ( and what they mean by ‘support’ to do the development) and what is a reasonable project plan.

this seems resolvable if there is agreement on the requirements/plan forward and resources. i can be on the call if that would help.

Yes Andy, I will be available. :slight_smile:

Who is on the project team? Is that headed up as an OpenMRS project? Are there developers assigned?

In addition, there’s so much work being done in this space, is it possible that we just aren’t leveraging work that could be used here to meet their needs? I feel like I hear about new OpenMRS-DHIS2 code every week and on every project. I also am aware of the IHE ADX profile that CDC was involved in and a module from that… is that integrated here?

1 Like

Yes, We have integrated ADX profile in the current module.

2 Likes

@maurya Great! Do you know if there was code/module that came out from the profile from CDC?

@janflowers - We have it integrated the profile in https://github.com/openmrs/openmrs-module-dhisreport. The specific classes being used to generate the profile can be viewed here - https://github.com/openmrs/openmrs-module-dhisreport/tree/master/api/src/main/java/org/openmrs/module/dhisreport/api/adx.

I am the Point of Contact for the Novartis team. The team involved a developer in India (Kishore Newell), a project manager (Derek Woznica) and an architect (Tim O’Sullivan) and overall Telemedicine Coordinator (Christina Wadhwani). From Ghana there were several technical and project contacts (Joe Sakyi-Baah and Joseph Adomako). This is part of larger telemedicine project which involves a longitudinal care record (OpenMRS) and integration with their DHIMS2 system (DHIS2). OpenMRS is being pushed out of the system, and the lack of easy integration with DHIMS2 is making it easier to ignore OpenMRS as a core longitudinal record.

@akanter what alternative are they using for the longitudinal care record? Does it already integrate with their DHIMS2 system?

They don’t have one. The alternative is eTracker where they use DHIS2 to enter the row level data. We are recommending using OpenMRS for patient level data.

Hi all,

OpenMRS and DHIS integration is the most requested feature by many of our clients as well. Good to see that this is now actively being worked on.

I tried setting up module few months ago and there were alot of issues in compiling and installing it. But just saw new commits on repository and tried it again and its working like a charm. Though module is under progress and any issues further would be resolved as well but just wanted to share the feedback or few things those were confusing and may be helpful in understanding requirements from different use cases.

  1. Since DHIS allows to add any entity without code the report templates downloaded can have data without code. This throws exception “ERROR - JDBCExceptionReporter.logExceptions(234) |2016-08-05 09:51:43,097| Duplicate entry ‘’ for key ‘code’”

  2. Basically module assumes that all dataSets should be synced. But in our scenario we wanted to sync only two dataSets for Immunizations. There could be a case when there is a central DHIS deployed on district level and different OpenMRS instances used in different institutions need to push different type of data or may be just a subset of data, so if we can have choice to filter dataSets from report template downloaded, it would be easier to maintain, since we can force to assign CODE to dataSets of our interest. Though DHIS allows to restrict user access by dataSets but I could not make it work. Not sure if there was something missing with configuration.

  3. For large number of data elements OpenMRS footer sticks out.

  4. May be this is from DHIS but when data is posted to DHIS and there is an issue it marks report as success and puts entry in ignores=# . As a new user it was difficult to understand why data is not showing up in DHIS since there was no detail associated

  5. Map Report doesnot show any Reports in OpenMRS (Most of our reports are mapped to SQL data set)

  6. ADX was not working for me. The data doesnot show up in DHIS. But when I changed code to post via DataValue template it works fine.

  7. One thing I noticed was that it doesnot post data with category mappings, or may be it just doesnot show it correctly

  8. Mapped Locations still show up in dropdown.

  9. Module enforces you to assign ‘CODE’ to every orgUnit. But DHIS allows it and works fine without a CODE for any entity. This becomes a little cumbersome when we want to integrate module with a deployed and working instance of DHIS. Since there are already 100s or 1000s of OrgUnits so it becomes a little difficult to revise whole process. This is true for other entities as well. But DHIS management without CODE is allowed by DHIS2 when we are using dataValue template for data exchange. Is there any option to choose between DataValue template and ADX, so that incase there are no CODE mappings and we are not in position to change that we still can post data to DHIS using alternative approach? Not sure if it would be recommended or not.

2 Likes

@akanter, can the PM for the Novartis group share their requirements/ expectations and where they encountered problems? Or at least the concept note the specific blockers?

without that, it may be difficult to figure out the problems and/or what has been completed/ is in the queue. I dont see that OpenMRS has a clear project plan for this ( though i may be misreading the thread).

Looks like we can step back from this a bit. There will not be any further technical calls about the DHIS2 bridge (@maurya you are off the hook for Wed) and the team has moved on to different issues. We can do a bit of a post-mortum to understand why this happened and what we can learn from it.

Awesome, really thankful for the feedback.

This is something we’ve not seen before - can you help give us directions on how to recreate this issue?

Correct - But currently we have shifted towards using the DHIS2WebAPI that will be released with the next version (2.1). But it makes sense to give the user the option to select the datasets. Created an issue for it - https://issues.openmrs.org/browse/DRM-26

Yeah, so this is the response we get from DHIS2 when we send the data, we could probably show ignored in red if that will help - or if you have anything in mind of how it will be more useful please let us know - I can create an issue and followup with you.

This gets only a particular type of reports - periodic indicator reports to be mapped. So only they will be displayed. But we might have to use Custom Reports to make disaggregation working through reporting.

Can you verify your DHIS2 version - we will need a version 2.21 or greater for ADX to work (Current I believe is 2.23)[quote=“maimoonak, post:21, topic:7502”] One thing I noticed was that it doesnot post data with category mappings, or may be it just doesnot show it correctly [/quote]

After Shifting the code to work with ADX, the module does not yet build datasets for category/disaggregations.[quote=“maimoonak, post:21, topic:7502”] Mapped Locations still show up in dropdown. [/quote]

Can you help understand what this refers to?

This was added as a codingScheme had to be selected, but even UID will work , created a ticket - https://issues.openmrs.org/browse/DRM-27

1 Like