New form "track anything"

produnis wrote on Friday, February 28, 2014:

Hi folks,
today I coded my first form. It is called “track anything” and is ment to track any desired parameter over time.
I coded this, because I need to track patients’ blood glucose during the day…

The form uses “Top-Level-Procedures” to get information about what to track, so anything you wish to track is possible, as long as your desired parameters fit with Procedure-Items.

The code is available on github:
https://github.com/produnis/track_anything

I use OpenEMR 4.1.2 on Linux
For me, it works well, though this is the initial “release”.

Any comments welcome,
please do not laugh about my “McGyver-Coding Style”…
Code-Improvement welcome
:wink:

TODO:

  • Add a smarter way to get Date/Time (I don’t know how to embed OpenEMR’s DateTime-Template)
  • Improve SQL-Code. It works, but it seems to be quite a beginner’s style

mdsupport wrote on Saturday, March 01, 2014:

You are probably on the bleeding edge of what’s coming down the road. Many devices now have background interfaces to PHR like HealthVault. These PHRs also have ability to export that data to EMRs. So we should be expecting patient to send their measurements (say blood sugars) for last 3 months taken n times a day. This EMR needs a careful strategy to capture, display and re-transmit that data in a meaningful way.

Re. your code, you may want to review the procedure* tables related to storage of results and see if you can leverage those rather than create a new set of structures. Apart from that being similar structure, three is purely selfish reason - Once you start capturing your data, in very short order you would realize the glaring need to show the trends and co-relations with other measurements. If you do deliver that, hopefully the project will get facility to show graphs/trends for various test results…

produnis wrote on Saturday, March 01, 2014:

thx for your suggestions.
I thought about saving data into procedure*-tables, but currently they are missing a column where I could to set a “this comes from track_anything”-flag. … and I did not want to change “official” db structures…

blankev wrote on Wednesday, March 19, 2014:

I posted this message also in an other thread, but that seems to be beyond the scope of that development.

So again:

Is it possible to display graphs for Vital and/or Track-XY in semi transparent new Windows, so they can be displayed on top of each other? Just a thought that might solve the problems in an easy way for multi graphing of more than one line in a graph.

blankev wrote on Wednesday, March 19, 2014:

A need tiny little program could handle this feature I think is important to show graph’s:

http://chime.tv/products/glass2k/Glass2k.exe

Any Window screen becomes a look through-glass, with 10 % to 90 % look through effect.

The next thing we should ask any developer is to let the Graph screen open for any Vital field or Track XY field to open in a new window. Placing a window on top of a Window might not be that easy but with some effort it is quite accurate.

produnis wrote on Sunday, March 23, 2014:

new version of track_anything was pushed to github and should be ready for testing in a couple of hours.

If you like to test the “track_anything”-multiplot-feature, here are some example-data for use with e.g.
http://demo.open-emr.org:2105

Go to patiente Zoid Berg, select any Track ( in demographics on the very right, just below “Prescriptions”) and try to plot some data. Note the Track-History, where you can plot data from several encounters in one graph.

blankev wrote on Sunday, March 23, 2014:

The web address is still in problems…

It works!

This is the default web page for this server.

The web server software is running but no content has been added, yet.

I have seen this message before due to incomplete install of all OpenEMR Software files.

blankev wrote on Sunday, March 23, 2014:

http://demo.open-emr.org:2105/openemr

the last part of the site, openemr is missing and just this liitle word gives the LoginScreen.

Please correct the Link towards your test page!

blankev wrote on Sunday, March 23, 2014:

Just tracked your efforts and it works great! Some blank lines in between the results screen might make the reading nicer. Getting it to work this way, was just beyond what I expected to see!

Congratulations!

Now we might have to do some brainstorming with other users to see if the projected results in the graphic give what is the need in the OpenEMR Community.

produnis wrote on Sunday, March 23, 2014:

http://demo.open-emr.org:2105/openemr now works and is currently filled with test-data (Zoid Berg)

Thx for your feedback, Pieter!

produnis wrote on Wednesday, March 26, 2014:

I uploaded a demo-video of track_anything here:

bradymiller wrote on Tuesday, April 01, 2014:

Hi,

Placed a code review on github:
https://github.com/produnis/openemr/commit/7d739df748dce8f573e4226f07c04f5ef9ce858d

thanks and look forward to next revision,
-brady
OpenEMR

produnis wrote on Tuesday, April 01, 2014:

ThanK you very much, Brady!

A new version was pushed to branch track_anything2
I fixed the xl*()-issues and renamed vars into english

Need help with the Widget-button in demographics, and I need advice in how to support esign.

produnis wrote on Wednesday, April 02, 2014:

Folks,
I separated track_anything from “procedures”, means, you need to create the items to track “on your own” via the track_anything-form.
If the user clicks “Clinical => Track anything”, there is a new button “Configure tracks”, which allows to set up the tracks.

Brady, please note that this major change needs a new “test-dummy.sql”-file for http://demo.open-emr.org:2105/openemr in order to show demo-tracks. Please find this new deno-data here:
produnis-public/openemr_track_anything_labdata_demo.sql at master · produnis/produnis-public · GitHub

The new version is now on Github, and should be available for testing in 3hours here: http://demo.open-emr.org:2105/openemr

Greetings,
Joe

blankev wrote on Wednesday, April 02, 2014:

Something is missing in FireFox, I can’t seem to find the Add Track for Track anything. Might have to do with my old including Track XY implementation but even after a reset of some values I could not find the Track anything ADD button.

The old way through Procedures is not working. Please give me some more information on how to make the new Tracking available.

I tried this Demo:

http://demo.open-emr.org:2105/openemr

blankev wrote on Wednesday, April 02, 2014:

The Track button is still sending the USER to the Make Appointment Agenda form. It could be placed at the top and/or at the Bottom of the screen or just below Track Anything.

Where it is now it is very confusing.

Better to use the EDIT button as is used in the Forms just above in Summary.

produnis wrote on Wednesday, April 02, 2014:

Should work now,
please note, that this demo-site uses the old demo-sql-data. As today a major change of track_anything was submitted, this demo-instance now uses the new code with old demo-sql-data… :wink:

However, I created the missing table “form_track_anything_type”, and now it works…
Go to a encounter, select “Administr -> Track anything” and there you go…

happy testing
:wink:

blankev wrote on Wednesday, April 02, 2014:

The “Good old Joe” feeling is back again! Tomorrow we might have two dates at the bottom? How difficult is it to give the hour (24 hour scheme) of the test at the bottom line? You can see it in the circles, so don’t know if it is needed.

Now for Procedures and Labdata tracking, would it be an option to use for the Labdata a desert kind of color for the fields and for procedures something like light blue to make a difference? I think it would help for the WIKI that is needed to explain the difference.

blankev wrote on Wednesday, April 02, 2014:

Ok, I got the renewal, was still working with Procedures the old ways. Great! Is it possible to make the fields in the Add Track frame longer so the scrolling of the text becomes easier?Double or triple the length of the second input field?

blankev wrote on Wednesday, April 02, 2014:

Most lists in OpenEMR have the option to give a sort order by a digital (10, 20, 30, etc) . See example Lists. It might be handy if there are a couple of things to check like my idea of tracking Delivery status, now more or less ready as input track. So the Diastolic and Systolic pressure can be followed in the correct order if need. Could also use 1. Diastolic and 2. Systolic, but seems nice to have it the same hidden as in other lists.

In the Report of the patient you make the Track list available with all buttons. This need some adaptions to be able to print nice output.