Exporting patient information from one OpenMRS installation for import into another

We have a situation where an old OpenMRS installation crashed but a databackup is available, and a new installation was made but the old data was not restored and some of it was entered afresh. The configuration and concept dictionaries are similar, so begs the question. How do we move data from an old installation into a new one?

What module can we look into to do this?

@raff I am thinking that maybe MDS can come into play here. Do you think that it can export a patient all visits and encounters? Later can I customize MDS to only export specific data elements?

Since this involves more than just metadata, i do not see the MDS module helping out of the box. But yes, as you said, the MDS module would be a great place to start when looking for such a solution, for it is all about data vs metadata.

Would this be the place to use the FHIR module then @surangak

@burke @surangak is it possible to export patients, encounters and obs via FHIR?

@harsha89, @mayank, @sashrika @rasanjana any ideas on how this can be done?

@ssmusokewith with FHIR won’t be able to achieve this fully. AFAIR there are some modules which support data export and import. Otherwise you may export these patient data separately via REST API and use data import module to import them.

@harsha89 why isn’t this possible? If I can export data as FHIR can’t I build an import function based on the same specification?

@ssmusoke are you plan to implement some component to fetch patient data from FHIR REST API one by one and import back to OpenMRS deployment? FHIR module support getting all patient data with patient/{id}/$everything, but you have to write some code to import it back. AFAIR some attributes of patient can’t be fit exactly same as FHIR Patient defined, so some attributes of patient will not there.

@harsha89 A high level thought is to export the data into a file which will be imported into another installation across disparate facilities.

Writing code to import it back can be done.

My questions are:

  1. What advantages does the FHIR module have over writing a report object using the reporting module then adding a FHIR renderer?

  2. The FHIR module requires platform 2.x yet we are running on 1.11.x for the near future, any easy ways of getting the module to run on the older platform

  3. Are there any usage examples and documentation for the module and usages anywhere?