4: GSoC18 at LibreHealth — Report generator Logic!

Tigpezeghe Rodrige
3 min readJul 8, 2018

--

This is the fourth writing on my GSoC 2018 journey at the most amazing open source community, LIBREHEALTH. Below is the outline of this article.

  • What has been happening?
  • Present state of things.
  • What am I doing now?
  • What is still to be done?
  • Documentation

What has been happening?

Coping with GSoC and school!!! That’s what has been happening. This is a great learning experience for me. I’ve learned how to push limits in several aspects in my life. One of these, is waking up early, and getting tasks done!

Looking at my GSoC project, I’ve been coding for some time now, and most of the logic of the report generator is ready.

STOP!!! Read the THIRD article of my Google Summer of Code 2018 journey before continuing with this piece.

Present state of things

The main function of the report generator is complete, and working fine. However, some small touches have to be done as usual with software development and maintenance. The image below shows a sample report of patients with patient id, full name and phone contacts in the system.

Figure 1: Sample patient list created using LibreEHR report generator

From the figure above, it is clear that the user can add new system features and save the format of the generated report. The report generator ships with default system features and report formats. There’s also the ability for the user to add these. Below is the form to save the format of the report generated above.

Figure 2: Form used to save generated report format

The user has to specify the system feature under which this report format will fall, and specify the name of the report format with a short description. These details are enough to regenerate the report without dragging and dropping components.

Subsequently, the user will be able to see all system features and report formats, and do all the necessary edit and delete actions.

What am I doing now?

Currently, work is being done on the actions to be done on the various system features and report formats that the user created. Of course, the user wouldn’t be able to edit or delete the default system features and report formats that come with the report generator.

The next thing that’s in the pool, is creating a method to handle clauses such as WHERE and ORDER BY. This will include creating an interface for the users to specify these. The interface would be very intuitive and easy to use and understand.

What is still to be done?

There are many things that are left to complete this report generator. For example the development of this module will go on for a while after it’s in the hands of the users. This is because the users have different report formats that they desire, and may not find draggable components to create these reports. So we will have to continue looking into these issues and solving them.

However below is a short list of the things that are left to be done:

  • implementing the ability to have WHERE and ORDER BY clauses in the report generator.
  • Make provision for many default draggable components, system features and report formats.
  • Work on automatic installation of the module.
  • Add the module into the main system.
  • Work on documentation.
  • Send it out to users, and work on users’ various issues.

Are you new to open source??? Even if you’re old Open source contributor, why not join LibreHealth, and start writing code to save lives!

Do you want reasons to join an open source community??? Find them here.

Thank you for reading!

READ the FIFTH PART of my Google Summer of Code 2018 journey.

--

--

Tigpezeghe Rodrige

FullStack Web Developer (Ruby, Rails, PHP, Laravel, React).