Betegellátási folyamat adatsablonja
Betegellátási folyamat adatsablonja
- A klinikai háttér megértéséhez javasolt attribútumok
- A nyomon követendő fontos folyamatállomások
- Adatkinyerési útmutató az Epic EHR rendszerhez
A betegellátási folyamat attribútumai
| Név | Leírás | ||
|---|---|---|---|
| Betegellátási epizód PatientEpisodeId | Az adott betegellátási esemény vagy ellátási epizód egyedi azonosítója. | ||
| Leírás A betegellátási epizód a process mining elsődleges esetazonosítója. Egyetlen folyamatos ellátási időszakhoz, például fekvőbeteg-ellátáshoz vagy sürgősségi látogatáshoz kapcsolódó klinikai, adminisztratív és logisztikai eseményeket fogja össze. Az Epic Clarity rendszerben ez jellemzően a Contact Serial Number (CSN) vagy az Encounter ID mezőnek felel meg. Az attribútum elemzésével rekonstruálható a beteg teljes ellátási útja. A triázs, a diagnózis, a kezelés és az elbocsátás eseményei egyetlen összefüggő folyamatpéldányba rendezhetők. Miért fontos? Ez az alapvető kulcs, amellyel a különálló események egyetlen folyamat esetévé kapcsolhatók össze. Hol szerezhető be? Epic Clarity tábla: PAT_ENC, oszlop: PAT_ENC_CSN_ID Példák 200459112200459113200459114200459115 | |||
| Esemény időbélyege EventTimestamp | A tevékenység pontos dátuma és időpontja. | ||
| Leírás Ez az attribútum rögzíti, hogy az Epic rendszerben pontosan mikor naplózták az eseményt. A tevékenységek sorrendjének meghatározására és az időtartam-alapú mutatók, például az ápolási idő és az átfutási idők kiszámítására szolgál. A pontos időbélyeg elengedhetetlen a szűk keresztmetszetek azonosításához. A triázs átfutási idejét és a végleges diagnózisig eltelt időt bemutató dashboardok kezdő- és végpontjainak időbeli meghatározásához is ezt használják. Miért fontos? Lehetővé teszi az átfutási idők, az átfutási időtartamok és a folyamatlépések sorrendjének meghatározását. Hol szerezhető be? A forrástáblától függően különböző időbélyegoszlopok, például EFFECTIVE_TIME vagy ORDER_TIME. Példák 2023-10-15T08:30:00Z2023-10-15T09:15:22Z2023-10-16T14:20:00Z | |||
| Tevékenység neve ActivityName | Az elvégzett klinikai vagy adminisztratív művelet. | ||
| Leírás Ez az attribútum a betegellátás során bekövetkező esemény nevét rögzíti, például „Beteg regisztrálva”, „Gyógyszer beadva” vagy „Elbocsátási rendelés aláírva”. Ez határozza meg a folyamat menetét. Az elemzésben ez a mező adja a folyamattérkép csomópontjait. Az EHR különböző tranzakciós kódjaiból és rendelési állapotaiból származik, és ember által értelmezhető eseménynaplóvá alakítja az adatokat. Miért fontos? Meghatározza a folyamat lépéseit, és lehetővé teszi a munkafolyamat megjelenítését. Hol szerezhető be? A CLARITY_ADT, ORDER_PROC és ORDER_MED táblákból származik. Példák Triázs befejezveDiagnosztikai vizsgálat elrendelveBeteg elbocsátvaGyógyszer beadva | |||
| Forrásrendszer SourceSystem | Az adatokat nyilvántartó rendszer, jellemzően az Epic EHR. | ||
| Leírás Ez az attribútum azonosítja az adatok forrását. Ebben a nézetben ez többnyire az „Epic EHR”, de akkor is hasznos, ha az adatokat más rendszerekből, például külön LIS-ből (laboratóriumi információs rendszerből) vagy számlázórendszerből származó adatokkal egyesítik. Az elemzés során segít nyomon követni az adatok eredetét, és megkönnyíti a hibakeresést, ha egyes események hiányoznak vagy eltérnek a forrásban szereplőktől. Miért fontos? Nyomon követhetővé teszi az adatok eredetét, és kontextust ad hozzájuk. Hol szerezhető be? Rögzített érték vagy a kapcsolati karakterlánc beállításaiból származik. Példák Epic EHREpic ClarityEpic Caboodle | |||
| Utolsó adatfrissítés LastDataUpdate | Az időbélyeg, amely azt mutatja, mikor nyerték ki vagy frissítették utoljára az adatokat. | ||
| Leírás Ez az attribútum jelzi, mikor dolgozta fel utoljára a rekordot az ETL-folyamat. Nem azonos az esemény időbélyegével, és segít ellenőrizni az adatok frissességét. Az elemzők ebből állapíthatják meg, hogy a dashboard az aktuális állapotot mutatja-e, vagy az adatok késése miatt pontatlanok lehetnek a KPI-k, például a triázsra várakozási idők. Miért fontos? Segít megítélni, mennyire frissek és megbízhatók a process mining adatai. Hol szerezhető be? Az ETL-rendszer időbélyege. Példák 2023-10-27T23:59:59Z2023-10-28T06:00:00Z | |||
| Beteg MRN-azonosítója PatientMrn | A beteget azonosító egészségügyi nyilvántartási szám. | ||
| Leírás Az MRN a beteg egészségügyi rendszeren belüli egyedi azonosítója, amely különbözik az ellátási epizód azonosítójától. Segítségével több ellátási eseményen keresztül is nyomon követhető a beteg kórtörténete. Ezt az attribútumot az ismételt kórházi felvételek felismerésére és az egyes ellátási epizódok összekapcsolására használják az ismételt felvétel kockázatát bemutató dashboardon. Az általános modellben a „Ügyfél” mezőnek felel meg. Miért fontos? Elengedhetetlen az ismételt látogatások azonosításához és a beteg kórtörténetének elemzéséhez. Hol szerezhető be? Epic Clarity tábla: PATIENT, oszlop: PAT_ID vagy PAT_MRN_ID Példák MRN-882910MRN-112003MRN-554211 | |||
| Elbocsátás utáni elhelyezés DischargeDisposition | A beteg elbocsátás utáni tartózkodási helye, például otthon, ápolási intézmény vagy elhalálozás. | ||
| Leírás Ez az attribútum rögzíti, hová került a beteg a kórház elhagyása után. A „Beteg elbocsátva” tevékenység során rögzítik. Fontos adat az ismételt felvétel kockázatát bemutató dashboardhoz, mivel az ápolási intézménybe elbocsátott betegek ismételt felvételi kockázata eltér az otthonukba távozókétól. Miért fontos? Kontextusba helyezi az ellátási folyamat eredményét. Hol szerezhető be? Epic Clarity tábla: PAT_ENC, oszlop: DISCH_DISP_C Példák OtthonÁpolási intézményOtthoni egészségügyi ellátás | |||
| Ellátás típusa EncounterType | A betegellátás besorolása, például fekvőbeteg- vagy sürgősségi ellátás. | ||
| Leírás Ez az attribútum a betegellátási epizód jellegét sorolja kategóriákba. Gyakori értékei: „Sürgősségi”, „Fekvőbeteg”, „Járóbeteg” vagy „Virtuális”. A „CaseType” mezőhöz rendelve alapvető szűrési lehetőséget ad az elemzéshez. Az elbocsátás tervezését bemutató dashboard például elsősorban a fekvőbeteg-ellátásnál releváns, míg a triázs a sürgősségi ellátáshoz kapcsolódik. Miért fontos? Megadja a folyamatpéldány általános kontextusát. Hol szerezhető be? Epic Clarity tábla: PAT_ENC, oszlop: ENC_TYPE_C Példák Sürgősségi ellátásKórházi járóbeteg-ellátásFekvőbeteg-ellátás | |||
| Ellátó azonosítója ProviderId | A tevékenységet végző felhasználó vagy klinikai dolgozó azonosítója. | ||
| Leírás Ez az attribútum az eseményért felelős munkatárs egyedi azonosítóját rögzíti, például a gyógyszert beadó ápolóét vagy az elbocsátási rendelést aláíró orvosét. Az elemzéshez az általános „Felhasználó” attribútumhoz rendelik, így vizsgálható az erőforrások közötti eltérés és a munkaterhelés. Automatizált tevékenységeknél ez rendszerfelhasználói azonosító is lehet. Miért fontos? Lehetővé teszi a teljesítmény és a munkaterhelés munkatársak közötti eltéréseinek elemzését. Hol szerezhető be? Epic Clarity tábla: CLARITY_EMP, oszlop: USER_ID Példák EMP10023DOC5592SYSTEM | |||
| Elsődleges diagnóziskód PrimaryDiagnosisCode | A fő diagnózist jelölő ICD-10-kód vagy belső kód. | ||
| Leírás Ez az attribútum rögzíti a beteg megerősített egészségügyi állapotát. Általában a „Diagnózis megerősítve” tevékenység során töltik ki. A klinikai protokolloknak való megfelelést bemutató nézetben az eseteket egészségügyi állapot szerint csoportosítják vele. A „Termék” mezőhöz rendelve az elemzők azt is megvizsgálhatják, hogyan változik az ellátás menete az egyes betegségek szerint. Miért fontos? A protokollok elemzéséhez klinikai hasonlóság alapján csoportosítja az eseteket. Hol szerezhető be? Epic Clarity tábla: PAT_ENC_DX, oszlop: DX_ID Példák J18.9I21.9E11.9 | |||
| Esemény befejezési ideje EventEndTime | Az időbélyeg, amely azt mutatja, mikor fejeződött be a tevékenység. | ||
| Leírás Sok esemény egy pillanat alatt lezajlik, de egyes tevékenységek, például a „Diagnosztikai vizsgálat elvégzése” vagy a „Konzílium befejezése”, időtartammal rendelkeznek. Ez az attribútum rögzíti a befejezés időpontját. Segítségével elkülöníthető az aktív feldolgozási idő és a várakozási idő. Ez különösen fontos a diagnosztikai szolgáltatások átfutási idejét bemutató dashboard esetében. Miért fontos? Lehetővé teszi a tevékenységek időtartamának és az erőforrások kihasználtságának kiszámítását. Hol szerezhető be? Az ORDER_PROC táblában található befejezési időre vonatkozó oszlopokról az Epic EHR dokumentációjában tájékozódjon. Példák 2023-10-15T09:45:00Z2023-10-16T15:00:00Z | |||
| Ismételt felvétel jelzője ReadmissionFlag | Jelzi, hogy a beteg 30 napon belül váratlanul visszatért-e. | ||
| Leírás Ez a logikai attribútum azt jelzi, hogy az adott ellátási epizódot 30 napon belül követte-e ugyanannak a betegnek egy újabb, nem tervezett kórházi felvétele. Ez a 30 napon belüli nem tervezett ismételt felvételek arányát mérő KPI alapja. Az elemzésben fontos eredményváltozóként szolgál. A „True” értékkel jelölt esetekhez vezető folyamatokat az elbocsátás tervezésének lehetséges okai alapján vizsgálják. Miért fontos? Segít azonosítani a sikertelen elbocsátási folyamatokat és az ellátás minőségével kapcsolatos problémákat. Hol szerezhető be? SQL-lekérdezéssel számítják ki, amely az adott MRN-hez tartozó későbbi ellátási eseményeket vizsgálja. Példák truefalse | |||
| Osztály neve DepartmentName | Az a kórházi egység vagy osztály, ahol a tevékenység történt. | ||
| Leírás Ez az attribútum azonosítja az esemény helyszínét, például a „Sürgősségi osztályt”, a „Radiológiát” vagy az „Általános sebészeti osztályt”. Nélkülözhetetlen az osztályok közötti áthelyezések elemzéséhez. Az adatok alapján osztályonként szűrhető a folyamattérkép. Így a vezetők elkülöníthetik az adott egységre jellemző szűk keresztmetszeteket a kórház egészét érintő problémáktól. Miért fontos? Lehetővé teszi a szervezeti egység szerinti szűrést és az átadások elemzését. Hol szerezhető be? Epic Clarity tábla: CLARITY_DEP, oszlop: DEPARTMENT_NAME Példák Sürgősségi osztályRadiológiaICUGyermekgyógyászat | |||
| Triázs során meghatározott sürgősségi szint TriageAcuityLevel | A beteg triázs során meghatározott súlyossági besorolása. | ||
| Leírás Ez az attribútum a beteg állapotának sürgősségét jelzi, jellemzően egy skálán, például az ESI 1–5. szintje szerint. A „Triázs befejezve” tevékenység során rögzítik. Lehetővé teszi az erőforrásigény súlyossági szint szerinti elemzését bemutató dashboard adatainak csoportosítását. A magas sürgősségi szintű betegek ellátási útja eltér az alacsonyabb sürgősségi szintű betegekétől, ez a mező pedig segít elkülöníteni ezeket a változatokat. Miért fontos? A sürgősség és a várható erőforrás-felhasználás alapján csoportosítja a folyamatokat. Hol szerezhető be? Az ED-naplókban szereplő Acuity mezőről az Epic EHR dokumentációjában tájékozódjon. Példák 1 - Újraélesztés2 - Azonnali ellátás3 - Sürgős ellátás | |||
| A rendelő orvos szakterülete OrderingProviderSpecialty | A konzíliumot vagy vizsgálatot kérő orvos szakterülete. | ||
| Leírás Ez az attribútum rögzíti a rendelő orvos osztályát vagy szakterületét, például a „Kardiológiát” vagy az „Onkológiát”. A szakorvosi konzíliumok várakozási idejét bemutató dashboard használja. Segít megvizsgálni, hogy egyes szakterületeken hosszabb-e a belső szolgáltatásokra való várakozás, mint máshol. Így feltárhatók az egyes ellátási területeken jelentkező esetleges egyenlőtlenségek vagy erőforráshiányok. Miért fontos? A diagnosztikai és konzíliumi szolgáltatások iránti igényt csoportosítja. Hol szerezhető be? Az ellátók törzsadatairól az Epic EHR dokumentációjában tájékozódjon. Példák KardiológiaBelgyógyászatOrtopédia | |||
| Áthelyezésre várakozás időtartama TransferWaitDuration | Az áthelyezési rendelés és a tényleges áthelyezés között eltelt idő. | ||
| Leírás Ez a mutató a „Áthelyezés elrendelve” és a „Beteg áthelyezve” esemény közötti időt méri. Az osztályok közötti áthelyezések elemzésének elsődleges adatpontja. A magas értékek azt jelezhetik, hogy a betegek ágyra várnak, ami akadályozza a sürgősségi osztályról érkező betegek továbbhaladását. Miért fontos? Rávilágít a betegáramlás logisztikai és kapacitásbeli szűk keresztmetszeteire. Hol szerezhető be? Az áthelyezési rendelés és az áthelyezés eseményének időbélyege közötti különbségből számítják ki. Példák 2 óra 30 perc45 perc12 óra | |||
| Automatizált időpontfoglalás IsAutomatedScheduling | Jelzi, hogy az időpontfoglalás munkatársi közreműködés nélkül történt-e. | ||
| Leírás Ez a logikai attribútum az időpontfoglalás módjából származik. Ha az időpontot a MyCharton keresztül vagy automatizált Cadence-munkafolyamattal foglalták le, az értéke igaz. Közvetlenül támogatja a kontrollidőpontok automatizált foglalási arányának KPI-ját. Segít a működésért felelős vezetőknek felmérni, hogy az adminisztratív feladatok mekkora részét veszi át a technológia. Miért fontos? Méri a folyamat automatizálásának eredményességét. Hol szerezhető be? A SchedulingMethod mezőből származik. Példák truefalse | |||
| Diagnosztikai vizsgálat költsége DiagnosticOrderCost | A diagnosztikai vizsgálathoz vagy beavatkozáshoz kapcsolódó belső költség. | ||
| Leírás Ez az attribútum pénzügyi értéket rendel a „Diagnosztikai vizsgálat elvégzése” tevékenységekhez. Így a folyamattérkép pénzügyi adatokkal egészíthető ki. Bár nem elsődleges klinikai mutató, segít az adminisztrációnak megérteni az egyes folyamatváltozatok pénzügyi súlyát, különösen a nagy erőforrásigényű, magas súlyossági szintű eseteknél. Miért fontos? Pénzügyi szemponttal egészíti ki a folyamat hatékonyságának elemzését. Hol szerezhető be? Az eljáráshoz kapcsolt számlázási vagy költségelszámolási táblák. Példák 150.001200.0045.00 | |||
| Időpontfoglalás módja SchedulingMethod | Megmutatja, hogyan foglalták le a kontrollidőpontot. | ||
| Leírás Ez az attribútum rögzíti az időpontfoglalás csatornáját, például a „MyChart”, a „Cadence automatikus foglalás” vagy a „Recepció” lehetőséget. Fontos adat a járóbeteg-kontrollok automatizálási állapotát bemutató dashboardhoz. Ha az érték rendszer által működtetett vagy a beteg által használt digitális csatornát jelez, az „IsAutomated” jelző értéke igazra állítható. Így nyomon követhető a digitális fejlesztések eredménye. Miért fontos? Nyomon követi az automatizált és önkiszolgáló eszközök használatát. Hol szerezhető be? Az időpont létrehozásának forrásáról az Epic EHR dokumentációjában tájékozódjon. Példák MyChartCadenceTelefonSzemélyesen | |||
| Protokollkövetés állapota ProtocolAdherenceStatus | Jelzi, hogy az eset a szokásos klinikai ellátási útvonal szerint haladt-e. | ||
| Leírás Ez az attribútum összeveti az eset tevékenységeinek sorrendjét egy meghatározott referencia-modellel, például egy standard működési eljárással. A klinikai protokolloknak való megfelelést bemutató nézetet támogatja. Lehetséges értékei például: „Megfelelt”, „Kihagyott lépés” vagy „Eltérő sorrend”. Így a klinikai vezetők gyorsan kiszűrhetik a nem megfelelő eseteket anélkül, hogy minden folyamattérképet külön meg kellene vizsgálniuk. Miért fontos? Gyorsan azonosítja a bizonyítékokon alapuló ellátási standardoktól való eltéréseket. Hol szerezhető be? A process mining eszköz számítja ki, vagy előzetesen SQL-lel dolgozzák fel. Példák MegfeleltEltérőNem teljes | |||
| Régió neve RegionName | A földrajzi régió vagy a kórházi telephely. | ||
| Leírás Több telephellyel működő egészségügyi rendszereknél ez az attribútum azonosítja az intézmény helyét. Lehetővé teszi a különböző kórházi telephelyek teljesítményének összehasonlítását. A „Régió” mezőhöz rendelve több telephely adatai hasonlíthatók össze, így megállapítható, hogy az egyik kórházban gyorsabban halad-e a beteg a triázson, mint a másikban. Miért fontos? Lehetővé teszi az egészségügyi hálózat különböző intézményeinek összehasonlítását. Hol szerezhető be? Az osztályok vagy intézmények törzsadataiból származik. Példák Északi telephelyVárosközpontNyugati szárny | |||
A betegellátási folyamat tevékenységei
| Tevékenység | Leírás | ||
|---|---|---|---|
| Beteg elbocsátva | A fekvőbeteg-ellátási eset hivatalos lezárása. Akkor rögzítik, amikor a beteget virtuálisan elbocsátják a Census rendszerből. | ||
| Miért fontos? Az eset hivatalos lezárása az ápolási idő kiszámításához. Szükséges a „Betegút-változatok feltárása” elemzéshez. Hol szerezhető be? ADT Feed (Event A03), vagy PAT_ENC_HSP.DISCH_TIME. Rögzítés Akkor kerül rögzítésre, amikor az adminisztratív személyzet befejezi az elbocsátási munkafolyamatot. Eseménytípus explicit | |||
| Beteg regisztrálva | A betegellátási eset rekordjának első rögzítése a rendszerben, amely az ellátási folyamat kezdetét jelöli. Az eseményt akkor rögzítik, amikor a beteg megérkezik a regisztrációs pulthoz vagy a sürgősségi osztályra, és felveszik az Epic rendszerbe. | ||
| Miért fontos? Ez jelöli ki a teljes betegút kezdőpontját, és lehetővé teszi a teljes ápolási idő kiszámítását. Szükséges a „Triázs áteresztőképessége és várakozási idők” dashboardhoz. Hol szerezhető be? ADT-adatfolyam (A04 vagy A01 esemény), illetve a Clarity PAT_ENC táblája (HSP_ACCOUNT_ID létrehozása). Rögzítés A „Check In” vagy „Admit” tranzakció végrehajtásakor kerül rögzítésre. Eseménytípus explicit | |||
| Diagnózis megerősítve | A megerősített diagnózis rögzítése a beteg problémalistájában vagy az ellátási eset diagnózismezőjében. Ez jelzi a kivizsgálási szakasz végét. | ||
| Miért fontos? Szükséges a „Végleges diagnózisig eltelt idő” KPI-hoz. Jelzi az átmenetet a vizsgálattól a célzott kezelésig. Hol szerezhető be? A PAT_ENC_DX tábla vagy az ellátási esethez kapcsolódó PROBLEM_LIST-frissítés. Rögzítés Akkor kerül rögzítésre, amikor az orvos bejegyzést ad hozzá az Encounter Diagnosis tevékenységhez. Eseménytípus explicit | |||
| Triázs befejezve | Az első ápolói vizsgálat vagy triázsértékelés befejezése. Ezt általában akkor rögzítik, amikor a triázs adatlapját véglegesítik, vagy a triázs állapota „Complete” értékre változik. | ||
| Miért fontos? A „Triázs áteresztőképessége és várakozási idők” dashboardon ez az esemény mutatja a betegfelvétel kezdeti szakaszának hatékonyságát. Az itt keletkező késések a teljes ellátási folyamatra kihatnak. Hol szerezhető be? PAT_ENC_HSP.TRIAGE_END_TIME, vagy egy adott Flowsheet-sor rögzítésének időbélyege (FLO_MEASUREMENT). Rögzítés A triázsdokumentáció aláírásakor vagy az állapotmező frissítésekor kerül rögzítésre. Eseménytípus explicit | |||
| Áthelyezés elrendelve | Kérés a beteg másik osztályra vagy másik ellátási szintre helyezésére. A rendszerben „Bed Request” vagy „Transfer Order” formájában rögzítik. | ||
| Miért fontos? Az „Osztályok közötti áthelyezés átlagos ideje” kezdőpontja. Elkülöníti az áthelyezésről szóló klinikai döntést az ágy rendelkezésre állásától. Hol szerezhető be? ADT_TRANSFER_ORDER vagy ORDER_PROC (Bed Request). Rögzítés Akkor kerül rögzítésre, amikor az orvos beviszi az áthelyezési rendelést. Eseménytípus explicit | |||
| Beteg áthelyezve | A beteg tényleges áthelyezése egy másik osztályra vagy részlegre. Az eseményt az ADT áthelyezési eseményei rögzítik. | ||
| Miért fontos? Az „Osztályok közötti áthelyezés átlagos ideje” végpontja. A „Kórházon belüli áthelyezések elemzése” segítségével feltárhatók a kórházi logisztika szűk keresztmetszetei. Hol szerezhető be? ADT Feed (Event A02), vagy PAT_ENC_HSP_TRANSACTION (Transfer In). Rögzítés Akkor kerül rögzítésre, amikor az osztály adminisztrátora frissíti a beteg helyét a Census rendszerben. Eseménytípus explicit | |||
| Diagnosztikai vizsgálat elrendelve | Képalkotó (Radiology) vagy laborvizsgálat elrendelése. Akkor rögzítik, amikor az orvos beviszi és aláírja a rendelést a CPOE rendszerben. | ||
| Miért fontos? Ez a „Diagnosztikai szolgáltatások ciklusideje” dashboard kezdőpontja. Ha sok vizsgálatot rendelnek el, de nem érkeznek hozzájuk eredmények, az szűk keresztmetszetre utal. Hol szerezhető be? Az ORDER_PROC tábla, ahol az ORDER_TYPE értéke Lab vagy Imaging/Radiology. Rögzítés A rendelés állapotának „Signed” vagy „Active” értékre váltásakor kerül rögzítésre. Eseménytípus explicit | |||
| Diagnosztikai vizsgálat elvégezve | A diagnosztikai vizsgálat tényleges elvégzése vagy az eredmény rögzítése. Laborvizsgálatnál ez a minta feldolgozásakor, képalkotó vizsgálatnál a felvétel elkészültekor történik. | ||
| Miért fontos? Ez a „Diagnosztikai vizsgálat átlagos ciklusideje” KPI végpontja. Segít feltárni a klinikai döntéstámogató szolgáltatások késéseit. Hol szerezhető be? ORDER_PROC.PROC_END_TIME, vagy ORDER_STAT_HISTORY, amikor az állapot „Completed” vagy „Resulted” értékre változik. Rögzítés Akkor kerül rögzítésre, amikor a technikus befejezi a feladatot, vagy az eredményadatokat fogadó rendszer megkapja az adatokat. Eseménytípus explicit | |||
| Elbocsátás tervezése elindítva | A beteg távozásának előkészítésére irányuló tevékenységek megkezdése. Az eseményt az esetkezelési dokumentáció vagy egy adott „Discharge” típusú rendelés rögzíti. | ||
| Miért fontos? Az „Elbocsátás tervezése és végrehajtása” dashboard egyik fontos eseménye. A korai tervezés összefügg a rövidebb ápolási idővel. Hol szerezhető be? A HSP_DISCH_PLAN létrehozása, vagy az esetkezelő/szociális munkás első feljegyzése. Rögzítés A Discharge Navigator első használatából vagy az esetkezelési feljegyzésből következtethető ki. Eseménytípus inferred | |||
| Elbocsátási rendelés aláírva | Az orvos hivatalos engedélye arra, hogy a beteg elhagyja a kórházat. Az Epic rendszerben külön rendelésként rögzítik. | ||
| Miért fontos? Az „Elbocsátás tervezése és végrehajtása” folyamat fontos mérföldköve. Az aláírás és a tényleges távozás közötti idő az adminisztratív késést mutatja. Hol szerezhető be? Az ORDER_PROC, ahol a típus „Discharge Patient”. Rögzítés Akkor kerül rögzítésre, amikor az orvos aláírja az elbocsátási rendelést. Eseménytípus explicit | |||
| Ellátási terv elindítva | Egy adott klinikai betegút vagy protokoll hozzárendelése a beteghez. Akkor rögzítik, amikor egy szabványos Order Set vagy Care Plan kapcsolódik az ellátási esethez. | ||
| Miért fontos? A „Klinikai protokollok betartása” nézetben ez jelöli a standard ellátás követésének szándékát. Ettől a ponttól mérhetők a későbbi tervezett lépésektől való eltérések. Hol szerezhető be? Az ORDER_SET_BKG vagy az ellátási terv táblái jelzik, hogy protokollt kapcsoltak az ellátási esethez. Rögzítés Akkor kerül rögzítésre, amikor az orvos kiválaszt és aláír egy Order Setet. Eseménytípus explicit | |||
| Gyógyszer beadva | A gyógyszer beadása a betegnek ápoló vagy más ellátó által. Az eseményt a Medication Administration Record (MAR) rögzíti. | ||
| Miért fontos? A „Gyógyszerbeadás teljesítménye” dashboard alapvető eseménye. A „Kezelési terv elkészült” eseményhez való igazodást követi nyomon. Hol szerezhető be? A MAR_ADMIN_INFO tábla, azon belül a „Given” vagy „New Bag” műveletű események. Rögzítés Akkor kerül rögzítésre, amikor az ápoló beolvassa a beteg karszalagját és a gyógyszert (BCMA). Eseménytípus explicit | |||
| Konzultáció befejezve | A szakorvosi vizsgálat befejezése, amelyet általában a Consult Note aláírása vagy a konzultációs rendelés lezárása jelez. | ||
| Miért fontos? A „Szakorvosi konzultációig eltelt idő” végpontja. Jelzi, hogy a szakorvosi vélemény rendelkezésre áll, és folytatódhat az ellátási terv. Hol szerezhető be? HNO_NOTE_TEXT (Consult típusú feljegyzés), vagy az ORDER_PROC állapotának Completed értékre váltása. Rögzítés A Consult Note létrehozásának időpontjából vagy a rendelés állapotának frissítéséből következtethető ki. Eseménytípus inferred | |||
| Konzultáció kérve | A szakorvosi vizsgálat elrendelése. Az Epic rendszerben ezt a „Consult” eljárástípusú rendelésként rögzítik. | ||
| Miért fontos? A „Szakorvosi konzultációig eltelt idő” KPI kezdőpontja. Segít felismerni az egyes szakterületeken jelentkező kapacitáshiányt. Hol szerezhető be? Az ORDER_PROC, ahol az ORDER_CLASS = 'Consult', vagy a konkrét beutalási rendelések. Rögzítés A konzultációs rendelés aláírásakor kerül rögzítésre. Eseménytípus explicit | |||
| Utánkövetési időpont egyeztetve | A beteg későbbi járóbeteg-ellátásra szóló időpontjának lefoglalása. A betegnyilvántartáshoz kapcsolt Cadence időpontkezelő modulban rögzítik. | ||
| Miért fontos? A „Kontrollidőpontok automatizált foglalási aránya” KPI mérését támogatja. Segít biztosítani az ellátás folytonosságát és megelőzni az ismételt kórházi felvételt. Hol szerezhető be? A betegazonosítóhoz kapcsolt PAT_ENC_APPT, amelyet a beteg elbocsátásának időpontja körül hoznak létre. Rögzítés A Cadence rendszerben az időpont megerősítésekor rögzítik. Eseménytípus explicit | |||
Adatkinyerési útmutatók
Lépések
- Jelentkezzen be az Epic Hyperspace rendszerbe, majd indítsa el a Reporting Workbench (RWB) modult az Analytics vagy a My Reports tevékenységen keresztül.
- Hozzon létre új jelentést: válassza a Library lapot, majd keresse meg az "Encounter Search" vagy a "Patient Encounters" sablont. Ezzel a sablonnal a CSN (Contact Serial Number) alapján azonosított, találkozási szintű adatokat kérhet le.
- Állítsa be a feltételeket (Settings lap):
- Adja meg a dátumtartományt (például az elbocsátás dátuma az elmúlt 90 nap), hogy a lezárt ellátási epizódok kerüljenek be.
- Szűrjön találkozástípus szerint (például 'Hospital Encounter', 'Emergency'), hogy kizárja a nem releváns járóbeteg-látogatásokat.
- Ha meghatározott adatkörre van szüksége, szűrjön osztály vagy intézmény szerint.
- Állítsa be a megjelenítendő oszlopokat (Display lap):
- Ez az adatkinyerés lényegi lépése. Keresse meg és adja hozzá a szükséges tevékenységek időpontjainak megfelelő oszlopokat.
- Adja hozzá a betegazonosítókat:
CSN(betegellátási epizód),MRN(betegazonosító). - Adja hozzá a demográfiai adatokat és attribútumokat:
Department,Discharge Disposition,Primary Diagnosis Code,Provider. - Adja hozzá az időbélyegoszlopokat: keressen rá például az
Admission Time,Triage End Time,Discharge Time,Discharge Order Time,First Med Admin Timeoszlopokra. A pontos megfeleltetést a lekérdezési és konfigurációs részben találja.
- Futtassa a jelentést, majd ellenőrizze az eredményeket az előnézeti ablakban.
- Exportálja az adatokat:
- Kattintson a Toolbar > Export lehetőségre.
- Válassza a CSV vagy a Text (Tab Delimited) formátumot.
- Ellenőrizze, hogy be van-e jelölve az 'Include Column Headers'.
- Mentse a fájlt
Raw_Epic_Extract.csvnéven.
- Adatátalakítás (elengedhetetlen):
- Az RWB exportja „széles” adathalmazt hoz létre: minden betegellátási epizód egy sorban szerepel, több időbélyegoszloppal.
- Az adatokat alakítsa át sorokká (unpivot), hogy az eseménynaplóban minden időbélyegoszlop külön sorba kerüljön.
- Hozzon létre egy végleges fájlt a következő oszlopokkal:
PatientEpisodeId,ActivityName,EventTimestampés a hozzárendelt attribútumok.
- Formázza a dátumokat: a
EventTimestampértéke legyen ProcessMind-kompatibilis ISO-formátumú (YYYY-MM-DD HH:MM:SS). - Végezze el az utolsó ellenőrzést: ellenőrizze, hogy a fájlban szerepelnek-e a
PatientEpisodeId,ActivityName,EventTimestampfejlécek, majd töltse fel a ProcessMindba.
Konfiguráció
- Sablon: az Epic verziójától függően használja az "Encounter Search" (LBF) vagy a "Find Patients" sablont.
- Dátumtartomány: első lépésként legfeljebb 3–6 hónapot kérdezzen le, így elkerülheti az időtúllépést. Az RWB nem alkalmas nagy tömegű adatok kinyerésére.
- Sorszámkorlát: az Epic RWB gyakran korlátozza a sorok számát, például 25 000 vagy 50 000 sorra. Ellenőrizze, hogy a dátumtartományon belüli adatok nem lépik-e túl ezt a korlátot, vagy futtassa a lekérdezést több részletben.
- Jogosultságok: a Reporting Workbench 'Create' és 'Export' biztonsági jogosultságai szükségesek.
- Teljesítmény: nagyobb időszakok lekérdezését csúcsidőn kívülre időzítse.
- Részletesség: ez a módszer találkozási szintű összesített időpontokat ad vissza, például az 'First Med Admin' értékét. Nem nyeri ki az összes ismétlődő eseményt, például minden egyes beadott gyógyszert. Ehhez külön "Audit" sablonokra lenne szükség, amelyek ehhez a felhasználási módhoz ritkán állnak rendelkezésre.
Példa-lekérdezés sql
[REPORT CONFIGURATION SPECIFICATION]
# GENERAL SETTINGS
Application: Epic Reporting Workbench
Template_ID: Encounter_Search_LBF
Time_Horizon: Discharge Date between [Start Date] and [End Date]
Filters: Encounter Type IN ('Hospital Encounter', 'Emergency')
# COLUMN SELECTION MAPPING
# Map the following Epic RWB Columns (Display Names) to the Output Activities.
# Note: Column names may vary slightly by Epic customized build.
[MANDATORY ATTRIBUTES]
Column: Contact Serial Number (CSN) -> Target: PatientEpisodeId
Column: Patient MRN -> Target: PatientMrn
Column: Department at Discharge -> Target: DepartmentName
Column: Discharge Disposition -> Target: DischargeDisposition
Column: Primary Diagnosis ICD-10 -> Target: PrimaryDiagnosisCode
Column: Attending Provider -> Target: ProviderId
Column: Current Date -> Target: LastDataUpdate
Column: System Name (Fixed 'Epic') -> Target: SourceSystem
[ACTIVITY TIMESTAMP MAPPING]
# These columns represent the 'EventTimestamp' for the specific 'ActivityName'
1. Activity: Patient Registered
Epic_Column: Hospital Admission Time OR Check-In Time
2. Activity: Triage Completed
Epic_Column: Triage End Time OR Triage Acuity Time
3. Activity: Care Plan Initiated
Epic_Column: Care Plan Start Date
4. Activity: Diagnostic Test Ordered
Epic_Column: First Lab Order Time OR First Imaging Order Time
(Note: Select 'Earliest' if multiple columns exist)
5. Activity: Diagnostic Test Performed
Epic_Column: First Lab Result Time OR First Imaging End Time
6. Activity: Diagnosis Confirmed
Epic_Column: Principal Diagnosis Problem List Date
7. Activity: Consultation Requested
Epic_Column: Consult Order Create Time
8. Activity: Consultation Completed
Epic_Column: Consult Complete Time
9. Activity: Medication Administered
Epic_Column: First Medication Administration Time
10. Activity: Transfer Ordered
Epic_Column: Transfer Order Time
11. Activity: Patient Transferred
Epic_Column: Last Transfer In Time OR ADT Event Time
12. Activity: Discharge Planning Initiated
Epic_Column: Case Management Start Date
13. Activity: Discharge Order Signed
Epic_Column: Discharge Order Time
14. Activity: Patient Discharged
Epic_Column: Hospital Discharge Time
15. Activity: Follow-up Appointment Scheduled
Epic_Column: Discharge Follow-Up Appointment Made Date
# TRANSFORMATION LOGIC (PSEUDO-CODE)
# The export will be 'Wide'. Apply this logic to create the Event Log:
FOR EACH Row IN Exported_CSV:
EpisodeID = Row['Contact Serial Number']
FUNCTION CreateEvent(ActivityName, TimestampColumn):
IF Row[TimestampColumn] IS NOT NULL:
OUTPUT_ROW = {
'PatientEpisodeId': EpisodeID,
'ActivityName': ActivityName,
'EventTimestamp': Row[TimestampColumn],
'PatientMrn': Row['Patient MRN'],
'DepartmentName': Row['Department at Discharge'],
... [All Attributes]
}
APPEND OUTPUT_ROW TO Event_Log
# Execute for all 15 mappings defined above
CreateEvent('Patient Registered', 'Hospital Admission Time')
CreateEvent('Triage Completed', 'Triage End Time')
... [Repeat for all mapped columns]
END LOOP Lépések
Kérjen hozzáférést az adatbázishoz: gondoskodjon olvasási jogosultságról az Epic Clarity Console rendszerhez vagy a Clarity éles, illetve jelentéskészítési adatbázisához csatlakozó SQL-klienshez. A
PAT_ENC,ORDER_PROC,CLARITY_ADT,MAR_ADMIN_INFOés a kapcsolódó referenciatáblák elérésére is szüksége lesz.Határozza meg az adatkört és a szűrőazonosítókat: a teljes szkript futtatása előtt végezzen kisebb feltáró lekérdezéseket, hogy azonosítsa az adott Epic-példányban a laborvizsgálatokhoz, radiológiához, konzíliumokhoz és áthelyezésekhez tartozó
ORDER_TYPE_Cértékeket. Ezek az egyedi listák (kategórialisták) kórházanként eltérnek.Állítsa be az időszakot: keresse meg a megadott SQL-szkript
CONTACT_DATEvagyHOSP_ADMSN_TIMEmezőre szűrőWHEREfeltételeit. Módosítsa őket a kívánt időszakra, például az elmúlt 6 hónapra.Rendelje hozzá az egyedi flowsheeteket (nem kötelező): ha pontos időbélyegre van szüksége a triázshoz vagy az elbocsátás tervezéséhez, és ezek nem szerepelnek a fő találkozási táblában, azonosítsa a mezőkhöz tartozó
FLO_MEAS_ID(Flowsheet Measure ID) értékeket, majd frissítse a szkript helyőrzőit.Futtassa le a lekérdezést: futtassa a teljes SQL-szkriptet az SQL-kliensben, például SQL Server Management Studio vagy Oracle SQL Developer használatával. A szkript
UNION ALLsegítségével egyesíti a különböző klinikai eseményeket egy egységes eseménynaplóba.Utófeldolgozás: a lekérdezés egy soros listát ad vissza. Ellenőrizze, hogy az
EventTimestampmező nem üres-e. Ha a köztes rendszer megköveteli, alakítsa át az adatbázis-specifikus dátum- és időformátumokat ISO 8601 formátumra (YYYY-MM-DDTHH:MM:SS).Exportálja az adatokat: mentse az eredményhalmazt CSV-fájlként. Ellenőrizze, hogy a fejlécek megfelelnek-e a megadott attribútumoknak, például PatientEpisodeId, ActivityName.
Töltse fel a ProcessMindba: importálja a CSV-fájlt a ProcessMindba. A
PatientEpisodeIdmezőt rendelje az esetazonosítóhoz, azActivityNamemezőt a tevékenységhez, azEventTimestampmezőt pedig az időbélyeghez.
Konfiguráció
- Adatbázis-kapcsolat: Epic Clarity, jellemzően MSSQL vagy Oracle háttérrendszerrel.
- Dátumszűrés: a
PAT_ENC.HOSP_ADMSN_TIMEvagy aPAT_ENC.CONTACT_DATEmezőre szűrjön. A lekérdezés teljesítményének megőrzése érdekében első elemzésként 3–6 hónapos időszakot javaslunk. - Találkozástípusok: a szkript a fekvőbeteg- és sürgősségi találkozásokra szűr (
ENC_TYPE_Cértéke jellemzően 3 vagy 50, de ellenőrizze aZC_ENC_TYPEtáblában). - Rendeléstípusok: a laborvizsgálatok, képalkotó vizsgálatok és konzíliumok
ORDER_TYPE_Cértékeit a helyi ZC_ORDER_TYPE beállítások alapján kell megadni. - Teljesítmény: a szkript nagy forgalmú táblákat vizsgál (
ORDER_PROC,CLARITY_ADT). Gondoskodjon a megfelelő indexelésről, vagy futtassa csúcsidőn kívül.
Példa-lekérdezés sql
WITH Cohort AS (
SELECT
pe.PAT_ENC_CSN_ID,
pe.PAT_ID,
pe.HOSP_ADMSN_TIME,
pe.HOSP_DISCH_TIME,
pe.DEPARTMENT_ID,
dep.DEPARTMENT_NAME,
emp.NAME AS ProviderName,
pat.PAT_MRN_ID,
pe.ACUITY_LEVEL_C,
disch.NAME AS DischargeDisposition,
pe.ENC_TYPE_C
FROM PAT_ENC pe
LEFT JOIN CLARITY_DEP dep ON pe.DEPARTMENT_ID = dep.DEPARTMENT_ID
LEFT JOIN CLARITY_EMP emp ON pe.VISIT_PROV_ID = emp.PROV_ID
LEFT JOIN PATIENT pat ON pe.PAT_ID = pat.PAT_ID
LEFT JOIN ZC_DISCH_DISP disch ON pe.DISCH_DISP_C = disch.DISCH_DISP_C
WHERE pe.HOSP_ADMSN_TIME >= DATEADD(month, -6, GETDATE())
AND pe.ENC_TYPE_C IN (3, 50) -- 3=Inpatient, 50=Emergency (Verify local codes)
)
-- 1. Patient Registered
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)) AS PatientEpisodeId,
'Patient Registered' AS ActivityName,
c.HOSP_ADMSN_TIME AS EventTimestamp,
c.DepartmentName,
c.ProviderName AS ProviderId,
c.PAT_MRN_ID AS PatientMrn,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)) AS TriageAcuityLevel,
CAST(c.ENC_TYPE_C AS VARCHAR(50)) AS EncounterType,
NULL AS PrimaryDiagnosisCode,
NULL AS ReadmissionFlag,
c.DischargeDisposition,
'Epic EHR' AS SourceSystem,
GETDATE() AS LastDataUpdate
FROM Cohort c
WHERE c.HOSP_ADMSN_TIME IS NOT NULL
UNION ALL
-- 2. Triage Completed (Using Flowsheet or Triage Time)
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Triage Completed',
ISNULL(pe.TRIAGE_END_INSTANT, c.HOSP_ADMSN_TIME), -- Fallback if specific column unused
c.DepartmentName,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN PAT_ENC pe ON c.PAT_ENC_CSN_ID = pe.PAT_ENC_CSN_ID
WHERE pe.TRIAGE_END_INSTANT IS NOT NULL
UNION ALL
-- 3. Care Plan Initiated (Based on Order Type)
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Care Plan Initiated',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 100 -- Placeholder: Replace with ID for Care Plan/Protocol
UNION ALL
-- 4. Diagnostic Test Ordered (Lab/Radiology)
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Diagnostic Test Ordered',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C IN (1, 2) -- Placeholder: 1=Lab, 2=Radiology (Verify local codes)
UNION ALL
-- 5. Diagnostic Test Performed (Result Time or Procedure Start)
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Diagnostic Test Performed',
COALESCE(ord2.PROC_START_TIME, ord2.PROC_ENDING_TIME, ord.ORDER_INST),
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
JOIN ORDER_PROC_2 ord2 ON ord.ORDER_PROC_ID = ord2.ORDER_PROC_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C IN (1, 2)
AND ord2.PROC_START_TIME IS NOT NULL
UNION ALL
-- 6. Diagnosis Confirmed
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Diagnosis Confirmed',
dx.NOTED_DATE,
c.DepartmentName,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
edg.DX_NAME,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN PAT_ENC_DX dx ON c.PAT_ENC_CSN_ID = dx.PAT_ENC_CSN_ID
JOIN CLARITY_EDG edg ON dx.DX_ID = edg.DX_ID
WHERE dx.NOTED_DATE IS NOT NULL
UNION ALL
-- 7. Consultation Requested
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Consultation Requested',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 35 -- Placeholder: Replace with ID for Consult
UNION ALL
-- 8. Consultation Completed
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Consultation Completed',
ord.ORDER_END_TIME,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 35 -- Placeholder: Replace with ID for Consult
AND ord.ORDER_STATUS_C = 5 -- Placeholder: 5=Completed
AND ord.ORDER_END_TIME IS NOT NULL
UNION ALL
-- 9. Medication Administered
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Medication Administered',
mar.TAKEN_TIME,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_MED med ON c.PAT_ENC_CSN_ID = med.PAT_ENC_CSN_ID
JOIN MAR_ADMIN_INFO mar ON med.ORDER_MED_ID = mar.ORDER_MED_ID
LEFT JOIN CLARITY_EMP emp ON mar.TAKEN_USER_ID = emp.USER_ID
WHERE mar.TAKEN_TIME IS NOT NULL
AND mar.MAR_ACTION_C = 1 -- Placeholder: 1=Given
UNION ALL
-- 10. Transfer Ordered
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Transfer Ordered',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 60 -- Placeholder: Replace with ID for Transfer/Bed Request
UNION ALL
-- 11. Patient Transferred
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Patient Transferred',
adt.EFFECTIVE_TIME,
dep.DEPARTMENT_NAME,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN CLARITY_ADT adt ON c.PAT_ENC_CSN_ID = adt.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_DEP dep ON adt.DEPARTMENT_ID = dep.DEPARTMENT_ID
WHERE adt.EVENT_TYPE_C = 3 -- 3=Transfer In
UNION ALL
-- 12. Discharge Planning Initiated
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Discharge Planning Initiated',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 70 -- Placeholder: Case Management/Discharge Order Type
UNION ALL
-- 13. Discharge Order Signed
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Discharge Order Signed',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.PROC_CODE = 'DISCHARGE' -- Placeholder: Filter by specific discharge procedure code
UNION ALL
-- 14. Patient Discharged
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Patient Discharged',
c.HOSP_DISCH_TIME,
c.DepartmentName,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
WHERE c.HOSP_DISCH_TIME IS NOT NULL
UNION ALL
-- 15. Follow-up Appointment Scheduled
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Follow-up Appointment Scheduled',
next_pe.APPT_MADE_DATE,
c.DepartmentName,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN PAT_ENC next_pe ON c.PAT_ID = next_pe.PAT_ID
WHERE next_pe.APPT_MADE_DATE BETWEEN c.HOSP_ADMSN_TIME AND ISNULL(c.HOSP_DISCH_TIME, GETDATE())
AND next_pe.CONTACT_DATE > c.HOSP_ADMSN_TIME -- The appointment is for a future date relative to admission Kezdhetjük?
Kezdje el fejleszteni a klinikai működést: alkalmazza ezt a sablont az Epic adataira. Csapatunk segít az adatok kinyerésében, hogy mielőbb hasznos eredményeket érjen el.
Fejlessze a betegellátást, és csökkentse a folyamat átfutási idejét
Tárja fel a klinikai folyamatok szűk keresztmetszeteit, és csökkentse az átfutási időt 30%-kal.
Nincs szükség bankkártyára. A beállítás csak néhány percet vesz igénybe.