GSoC First Evaluation Report


The first coding phase of GSoC just ended and here is my report.

The milestone for this phase was to make it possible to create radiology reports using MRRT report templates. And I’m happy to say the milestone was achieved and it’s now possible to create MRRT reports instead of the traditional free text reports. First I’ll demonstrate how to use it then I’ll go throw my implementation details.

Create an MRRT Report

This still in development so you’ll have to build the radiology module to test this. To build it clone my repo on gitlab

git clone

Then checkout the gsoc2017 branch

cd lh-radiology

git checkout gsoc2017

Now build a the .omod file

mvn clean install

You can now deploy your module to toolkit/core server. To setup a server see standard OpenMRS or LibreHealth Toolkit documentation for instructions. The following instructions assume you already have a server running OpenMRS 2.0.5. For rapid development I setup my server using the OpenMRS SDK. The server runs openmrs version 2.0.5. But any 2.x version should work fine.

To create a radiology report using an MRRT template, first you have to make sure you have at least one MRRT template imported into the system. To import a template, visit the Report Templates Tab on the radiology dashboard. And click on upload new template and select your template file.

Screen Shot 2017-06-28 at 9.13.37 PM

Now if template import is successful then you are one step closer to been ready to use these templates to create a radiology report.

These reports are saved as html files on the file system. We needed to make it possible to query these reports when querying observations for a patient. So instead of the radiology module taking care of saving the file, it’s uses an OpenMRS API Complex Obs. All the radiology module has to do is create a complex obs and set it’s complex data to the contents of the report and hand it over to the openmrs api to save the complex obs with the report. To use complex obs you must have at least one complex concept in the system. Concepts are normally added via a standard concept dictionary or via metadata sharing module. But for development and testing you can go ahead and manually create a complex concept. For that click on the ‘Dictionary’ link on the home page and click add new concept.

Screen Shot 2017-06-28 at 9.29.35 PM

The concept data type must be complex and handler TextHandler

Screen Shot 2017-06-28 at 9.32.16 PM

Save the concept and proceed to creating your report.

To create a report you need a completed radiology order obviously. We are reporting the findings of performing a radiology procedure after all.

Screen Shot 2017-06-28 at 9.35.24 PM

Save your order and you can now claim your report. If you you used the old version of the module you’ll release a drop down that specifies the kind of report you want to create. If you select Free text then you’ll proceed with creating a normal radiology report with using a template file. But if you select MRRT, you’ll be presented with a search box to search a template to use.

Screen Shot 2017-06-28 at 9.39.59 PM

Click on a template from the suggestions

Screen Shot 2017-06-28 at 9.41.23 PM

Click on claim report and you’ll be presented with a report editor that uses the MRRT template as a starting point.

Screen Shot 2017-06-28 at 9.47.16 PM

Fill your report and save it by hitting Complete.

See my next blog post about my implementation of the above feature.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s