Following Patient Statuses, Tracking Process Flow

achc wrote on Thursday, August 22, 2013:

Hi

For a while now I’ve wanted a way to figure out how long patients are waiting to be seen, etc. I came up with a quick and dirty (very dirty as you’ll see below), query to build a subtable that has a timestamp, patient status, encounter id, and patient id. So from this table you could take a look at, on average, how long it takes a patient to be seen etc. It would be cool to make this a bit more robust so you could correlate how long it takes a patient to be seen with how many patients are scheduled, or with time of day, or with how many noshows came in that day, etc ect. But for now this is a good start. Curious to see what you all think

select date,

substring_index(substring_index(substring_index(substring_index(comments, “pc_apptstatus”,-1),‘pc_prefcatid’,1), “’”, -2), “’”, 1) status,

substring_index(substring_index(substring_index(substring_index(comments, “pc_eid”,-1),’,’,1), “’”, -2), “’”, 1) encounter,

substring_index(substring_index(substring_index(substring_index(comments, “pc_pid”,-1),‘pc_title’,1), “’”, -2), “’”, 1) patientID

from log

where event = “scheduling-update”;

bradymiller wrote on Thursday, August 22, 2013:

Hi,

I remember somebody bringing this up before and suggested to perhaps create a sql table to do this. I had no idea this stuff went to the log. Very cool, any way to turn this into something that can be seen within OpenEMR (ie. gui or perhaps a current report that it can be offered in).

-brady
OpenEMR