I want to create a protocol that includes all patients who have never had a TSH. The protocol builder gives an option for "Where value exists", but not one that says, "Where value doesn't exist". There is an option for "is null" but it doesn't seem to work. Nothing is ever returned for any patients when I use that. Is it possible to do what I want?
Are you using Crystal Reports for Centricity EMR?
It's not a report. It's the built in protocol builder under administration.
Ah I see, sorry I can't help you on this one.
It does not look like it is currently possible. The reason why "is null" is not returning anything is because the record itself does not exist. A patient would not have an obs record with a value of null, the patient would simply not have a record for the obs.
This could be accomplished with a query or report, but you would have to check all obs records for the patient and verify they were not TSH. You could also use Not Exists.
You are right drewh1601 & I did notice the same thing. If TSH doesnt exist for the patient then it wont show up on the report so therefore it can't show null data/values. But what I did was create a formula where if TSH exists then set value to 1 then if else 0. Then it will tell me which patients haven't had the TSH ob done based on the value set from the formula.
Yeah, your answer makes sense. I think that is exactly what is happening. It's too bad though, because most of the protocols that my providers want are to notify them when a patient has NOT had something done. I could make it work using a crytal report, but I just don't see my providers running a report on each patient, in the middle of a visit, in order to see get the info.
set up a protocol and name it "TSH"
under "population" put the age range and/or gender. Example might be men or women over age 65.
Under "events" pick your "TSH" observation and declare how often you want it to show up as being due. If you want it just once at age 65, you do that here as well.
Once the patient hits age 65, the protocol engine will show that a TSH is due if there is not an observation for TSH within the specified time frame.
Of course the US preventive services task force doesn't recommend screening for TSH; however, other groups do.
Another approach would be to make several of these, eg:
Adult Females 65-99: Just add "TSH" every 5 years to the general USPSTF protocol
TSH Down Syndrome; if a problem of down syndrome exists then trigger a TSH at age 10 and every 5 years thereafter
TSH Lithium: if patient is on Lithium, trigger a TSH every year
these are just examples
The way the protocol engine works is as follows: You define a denominator definition based on age, gender, medications, problem(s) or the existance of a specific observation (or combination of these). The numerator event is then defined as the observation that you want to satisfy, and the frequency or initial age at which you want it satisfied.
Once this is all set up it will show up in the protocols icon on the chart and it can also be "seen" with MEL using one of the listprotocol… data symbols.
Then you could do something fun like
if match(listprotocolshort(), "TSH") ==0 then "" else if useryesno("Patient is due for a TSH; do you want to order it now?") == "Y" then mel_add_order(…..
and don't forget the endifs
Awesome, I tried what you suggested and it looks like it is working. I guess I was making it way more complicated that it needed to be. The next step is a little harder. I want to recommend TSH every 1 year if their last TSH was abnormal. I created a second protocol to handle it but protocol screen shows both.
It says,
TSH Every 3 years Due Now
TSH Every 12 monhs Due Now
I guess that's not the end of the world, but do you know any way to avoid this?
well, assuming the doc did order the TSH every year or so, then after the first entry point, the every 3 years logic would never fire.
Our shop uses the protocol engine extensively, so much so that I had to write a parsing engine to filter out all the duplicates. That way, at least on the form, you are only seeing each entry once.
it's long and messy but I will send it to you if you want.
Yes, please send it to me. So are you displaying protocol recommendations on a custom form instead of having providers click the "Protocol" button?
Steve Peterson
Circle of Life Women's Center
my email address is in previous post.