Hello,
I am working with GE Centricity 9.8, and we having been using the CQIC forms for immunization management.
The form writes values to a series of Obs terms (TD BOOSTER, TD BOOST EXP, TD BOOST SIT, TD BOOST VIS, TD BOOSTERBY, TD BOOSTERLO, TD BOOSTERMF, TD BOOSTERRT, TDBOOSTERDSE, TDBOOSTNDC) when an immunization is administered for a patient.
Currently when the form is used to document the administration of TD or TDAP, they both are saved into the obs terms above.
We have a need to separate the TDAP related entries into the TDAP Obs terms (TDAP, TDAP EXP, TDAP SITE, TDAP VIS, TDAP BY, TDAP LOT#, TDAP MFR, TDAP RTE, TDAP DOSE, TDAPNDC).
Does anyone know how to query the Oracle database and establish a relationship between the parent ob term ("TD BOOSTER") and the others (Ex: TD BOOST EXP, TD BOOST SIT, TD BOOST VIS)?
I can query the OBS table and target entries with a "GroupID" of 1246, and a "OtherCode" of "CVX-139", which will isolate the query to entries stored in TD Booster, but if there is a TDAP and TD documented in the same update, the query will display both.
If I add an additional qualifier to the query to look at the value of "TD BOOSTER" and if it contains TDAP, or BOOSTRIX, or Adacel, then I can identify the parent ob term, but how do I accurately link the sub-ob terms to this parent entry?
Both the TDAP and TD entries will have the same ObsDate and PubTime, so the date/time doesn't seem to be a valid determination point.
Any help is greatly appreciated.
Alas, there is no parent-child relationship in the obs tables.
Hello jfitzmd,
Thank you for your reply.
I'm fairly new to GE's Centricity product, and that was what I was seeing as well..I was just hoping there was something that I was missing.
I guess this begs the question, if there is no concept of relationships between the parent Ob term (Ex: TD BOOSTER) and the Sub-Ob terms (Ex: TD BOOSTERLO), then what good are the Sub-ob terms since they can't be reliably linked to each other?
So far I haven't seen any forms (CQIC included) that make attempts to use the Sub-Ob terms in conjunction with the parent Ob term.
Everything I've seen so far only displays the value from the parent Ob term and its ObsDate.
Interesting enough, GE's Immunization Migration tool has some logic that can determine the relationship between the parent Ob term and the Sub-Ob terms that are entered in the same update. I didn't try to see what occurs when a TD / TDAP are entered in the same update, but I guess if the tool was using the ObsDate / PubTime as the determination point, the tool would fail too in correctly linking the terms.
I think I have found my answer regarding how to target the parent Ob term and the sub-ob terms.
I'm still testing this, but basically it uses the PID, ObsDate, PubTime, and PubUser as the linking pieces, with the Obsdate being the crucial piece.
I did not realize it, but the ObsDate contains both the date AND time (Oracle SQL Developer only outputs the date component in the result window). The time portion is granular to the second.
The query below is for Oracle:
/*
Find all OBS Terms and SubTerms related to TDAP
The first portion of the CTE searches for any TDAP entries that are stored in the Obs Term "TD BOOSTER"
The second portion uses the PID, OBSDATE, PUBTIME, and PUBUSER from the TDAP "TD BOOSTER" entry to find all other related terms
that were entered at time the TDAP "TD BOOSTER" entry was entered
*/
WITH CTE_TDAP AS (
SELECT O.PID, O.OBSDATE, O.PUBTIME, O.PUBUSER
FROM OBS O
WHERE O.HDID = 90 -- HDID for "TD BOOSTER"
AND ( UPPER(O.OBSVALUE) LIKE UPPER('%TDAP%') OR
UPPER(O.OBSVALUE) LIKE UPPER('%ADACEL%') OR
UPPER(O.OBSVALUE) LIKE UPPER('%BOOSTRIX%'))
AND O.CHANGE NOT IN (10,11,12) -- NOT Filed in Error
)
SELECT O.PID, O.HDID, H.NAME, O.OBSVALUE, TO_CHAR(O.OBSDATE, 'MM/DD/YYYY HH24:MI:SS A.M.') AS OBSDATE, O.PUBTIME, O.PUBUSER
FROM OBS O
INNER JOIN OBSHEAD H
ON H.HDID = O.HDID
INNER JOIN CTE_TDAP
ON CTE_TDAP.PID = O.PID
AND CTE_TDAP.OBSDATE = O.OBSDATE
AND CTE_TDAP.PUBTIME = O.PUBTIME
AND CTE_TDAP.PUBUSER = O.PUBUSER
WHERE O.CHANGE NOT IN (10,11,12) -- NOT Filed in Error
AND O.HDID IN (4071, 4054, 6752, 90, -- Ensure only TD BOOSTER related Obs Terms are targeted
2150, 2064, 2021, 2107,
15607, 226690)
Perhaps this will be helpful to someone else.