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 https://gitlab.com/ivange94/lh-radiology.git
Then checkout the gsoc2017 branch
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.
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.
The concept data type must be complex and handler TextHandler
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.
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.
Click on a template from the suggestions
Click on claim report and you’ll be presented with a report editor that uses the MRRT template as a starting point.
Fill your report and save it by hitting Complete.
See my next blog post about my implementation of the above feature.