Hasta yolculuğu Veri Templateiniz
Hasta yolculuğu Veri Templateiniz
- Klinik bağlam için önerilen öznitelikler
- İzlenecek temel süreç kilometre taşları
- Epic EHR için özel veri çıkarma yönergeleri
Hasta yolculuğu öznitelikleri
| Ad | Açıklama | ||
|---|---|---|---|
| Etkinlik adı ActivityName | Gerçekleştirilen klinik veya idari işlem. | ||
| Açıklama Bu öznitelik, 'Hasta kaydedildi', 'İlaç uygulandı' veya 'Taburculuk istemi imzalandı' gibi hasta yolculuğunda gerçekleşen olayın adını içerir. Süreç akışını tanımlayan temel unsurdur. Analizde bu alan, süreç haritasındaki düğümleri oluşturur. EHR sistemindeki çeşitli işlem kodları ve istem durumlarından elde edilen veriler, insanların okuyabileceği bir olay günlüğü oluşturmak için kullanılır. Neden önemli? Sürecin adımlarını tanımlar ve iş akışını görselleştirmenizi sağlar. Nereden alınır? CLARITY_ADT, ORDER_PROC ve ORDER_MED tablolarından elde edilir. Örnekler Triyaj tamamlandıTanı testi istendiHasta taburcu edildiİlaç uygulandı | |||
| Hasta bakım süreci PatientEpisodeId | Belirli bir hasta kabulünü veya bakım sürecini tanımlayan benzersiz kimlik. | ||
| Açıklama Hasta bakım süreci, Process Mining için temel vaka kimliğidir. Yatarak tedavi veya acil servis ziyareti gibi kesintisiz bir bakım dönemine ait tüm klinik, idari ve lojistik olayları bir araya getirir. Epic Clarity’de bu kimlik genellikle Contact Serial Number (CSN) veya Encounter ID alanına karşılık gelir. Bu özniteliği analiz ederek hastanın baştan sona yolculuğunu yeniden oluşturabilirsiniz. Triyaj, tanı, tedavi ve taburculuk etkinliklerini tek bir süreç örneğinde ilişkilendirebilirsiniz. Neden önemli? Birbirinden ayrı olayları tek bir süreç vakasında birleştirmek için temel anahtardır. Nereden alınır? Epic Clarity tablosu: PAT_ENC, sütun: PAT_ENC_CSN_ID Örnekler 200459112200459113200459114200459115 | |||
| Olay zaman damgası EventTimestamp | Etkinliğin gerçekleştiği kesin tarih ve saat. | ||
| Açıklama Bu öznitelik, bir olayın Epic sistemine kaydedildiği kesin zamanı belirtir. Etkinlikleri sıralamak ve yatış süresi ile çevrim süreleri gibi süreye dayalı metrikleri hesaplamak için kullanılır. Darboğazları belirlemek için bu alanın doğru olması önemlidir. Başlangıç ve bitiş noktalarının zamanını göstererek Triyaj İşlem Hacmi ve Kesin Tanıya Ulaşma Süresi Dashboardlarını destekler. Neden önemli? Çevrim sürelerini, teslim sürelerini ve süreç sıralamasını hesaplamanızı sağlar. Nereden alınır? Kaynak tabloya bağlı olarak çeşitli zaman damgası sütunları (ör. EFFECTIVE_TIME, ORDER_TIME). Örnekler 2023-10-15T08:30:00Z2023-10-15T09:15:22Z2023-10-16T14:20:00Z | |||
| Kaynak sistem SourceSystem | Verilerin kayıt sistemi, genellikle Epic EHR. | ||
| Açıklama Bu öznitelik, verilerin kaynağını belirtir. Bu görünümde kaynak çoğunlukla 'Epic EHR' olsa da veriler ayrı bir LIS (Laboratuvar Bilgi Sistemi) veya faturalandırma sistemi gibi başka sistemlerle birleştirildiğinde de bu alan işe yarar. Analizde veri kökenini izlemeyi sağlar. Kaynaktaki verilere kıyasla belirli olaylar eksik veya hatalı görünüyorsa sorunun giderilmesine yardımcı olur. Neden önemli? Verilerin kaynağını izlemeyi ve kaynağa ilişkin bağlamı sağlar. Nereden alınır? Sabit kodlanır veya bağlantı dizesi yapılandırmasından elde edilir. Örnekler Epic EHREpic ClarityEpic Caboodle | |||
| Son veri güncellemesi LastDataUpdate | Verilerin çıkarıldığı veya en son yenilendiği zaman damgası. | ||
| Açıklama Bu öznitelik, kaydın ETL hattında en son ne zaman işlendiğini gösterir. Olay zaman damgasından farklıdır ve verilerin güncelliğini izlemenize yardımcı olur. Analistler bu alanı kullanarak Dashboardun güncel durumu yansıtıp yansıtmadığını veya Triyaj Bekleme Süreleri gibi KPI’ların doğruluğunu etkileyen bir veri gecikmesi olup olmadığını belirler. Neden önemli? Process Mining verilerinin güncelliğini ve güvenilirliğini değerlendirmenize yardımcı olur. Nereden alınır? ETL sistemi zaman damgası. Örnekler 2023-10-27T23:59:59Z2023-10-28T06:00:00Z | |||
| Birincil tanı kodu PrimaryDiagnosisCode | Ana tanıyı gösteren ICD-10 veya kurum içi kod. | ||
| Açıklama Bu öznitelik, hastanın kesinleşmiş sağlık durumunu kaydeder. Genellikle 'Tanı doğrulandı' etkinliği sırasında doldurulur. Klinik Protokol Uyumluluğu Görünümü için vakaları klinik duruma göre gruplandırmak amacıyla kullanılır. 'Ürün' alanına eşlenmesi, analistlerin bakımın 'üretim' biçiminin sağlık durumuna göre nasıl değiştiğini görmesini sağlar. Neden önemli? Protokol analizinde vakaları klinik benzerliklerine göre gruplandırır. Nereden alınır? Epic Clarity tablosu: PAT_ENC_DX, sütun: DX_ID Örnekler J18.9I21.9E11.9 | |||
| Bölüm adı DepartmentName | Etkinliğin gerçekleştiği hastane birimi veya bölümü. | ||
| Açıklama Bu öznitelik, olayın gerçekleştiği işlevsel konumu belirtir. Örneğin acil servis, radyoloji veya genel cerrahi servisi. Kurum İçi Servis Nakli Analizi için önemlidir. Veriler, süreç haritasını bölümlere göre ayırmak için kullanılır. Böylece yöneticiler kendi birimlerindeki darboğazları hastane genelindeki sorunlardan ayrı inceleyebilir. Neden önemli? Kuruluş genelinde filtreleme ve devir teslim analizine olanak tanır. Nereden alınır? Epic Clarity tablosu: CLARITY_DEP, sütun: DEPARTMENT_NAME Örnekler Acil servisRadyolojiICUÇocuk hastalıkları | |||
| Hasta kabulü türü EncounterType | Hasta ziyaretinin sınıflandırması (ör. yatarak tedavi, acil). | ||
| Açıklama Bu öznitelik, hasta bakım sürecinin türünü sınıflandırır. Yaygın değerler arasında 'Acil', 'Yatarak tedavi', 'Ayaktan tedavi' ve 'Sanal' bulunur. 'Vaka türü' alanına eşlenen bu öznitelik, analizi filtrelemek için temel oluşturur. Örneğin Taburculuk Planlama Dashboardu çoğunlukla yatarak tedavi vakaları için geçerliyken triyaj, acil vakalara özgüdür. Neden önemli? Süreç örneğine genel bağlam sağlar. Nereden alınır? Epic Clarity tablosu: PAT_ENC, sütun: ENC_TYPE_C Örnekler AcilHastanede ayaktan tedaviYatarak tedavi | |||
| Hasta MRN numarası PatientMrn | Hastayı tanımlayan tıbbi kayıt numarası. | ||
| Açıklama MRN, hastanın sağlık sistemi genelindeki benzersiz kimliğidir ve bakım süreci kimliğinden farklıdır. Hastanın birden fazla ziyaret boyunca geçmişinin izlenmesini sağlar. Bu öznitelik, yeniden yatışları belirlemek ve Yeniden Yatış Riski Dashboardu için ayrı bakım süreçlerini ilişkilendirmek amacıyla kullanılır. Genel modelde 'Müşteri' alanına eşlenir. Neden önemli? Tekrarlanan ziyaretleri belirlemek ve hasta geçmişini analiz etmek için gereklidir. Nereden alınır? Epic Clarity tablosu: PATIENT, sütun: PAT_ID veya PAT_MRN_ID Örnekler MRN-882910MRN-112003MRN-554211 | |||
| Olay bitiş zamanı EventEndTime | Etkinliğin tamamlandığı zaman damgası. | ||
| Açıklama Birçok olay anlık gerçekleşse de 'Tanı testi yapıldı' veya 'Konsültasyon tamamlandı' gibi bazı etkinlikler belirli bir süre alır. Bu öznitelik, etkinliğin tamamlandığı zamanı kaydeder. Etkin işlem süresiyle bekleme süresini ayrı ayrı hesaplamanızı sağlar. Tanı Hizmeti Çevrim Süreleri Dashboardu için özellikle önemlidir. Neden önemli? Etkinlik süresini ve kaynak kullanımını hesaplamanızı sağlar. Nereden alınır? ORDER_PROC tablosundaki bitiş zamanı sütunları için Epic EHR dokümantasyonuna başvurun. Örnekler 2023-10-15T09:45:00Z2023-10-16T15:00:00Z | |||
| Sağlık çalışanı kimliği ProviderId | Etkinliği gerçekleştiren kullanıcı veya klinisyenin kimliği. | ||
| Açıklama Bu öznitelik, ilaç uygulayan hemşire veya taburculuk istemini imzalayan hekim gibi olaydan sorumlu personelin benzersiz kimliğini kaydeder. Kaynaklar arasındaki farklılıkları ve iş yükünü analiz etmek için genel modeldeki 'Kullanıcı' özniteliğiyle eşleştirilir. Otomatik etkinliklerde bu alan bir sistem kullanıcı kimliği olabilir. Neden önemli? Personel arasındaki performans ve iş yükü farklılıklarını analiz etmenizi sağlar. Nereden alınır? Epic Clarity tablosu: CLARITY_EMP, sütun: USER_ID Örnekler EMP10023DOC5592SYSTEM | |||
| Taburculuk sonrası gidilecek yer DischargeDisposition | Taburculuk sonrasında hastanın gideceği yer (ev, bakım merkezi, vefat). | ||
| Açıklama Bu öznitelik, hastanın hastaneden ayrıldıktan sonra nereye gittiğini kaydeder. 'Hasta taburcu edildi' etkinliği sırasında girilir. Yeniden Yatış Riski Dashboardu için önemlidir; çünkü nitelikli bakım merkezlerine taburcu edilen hastaların yeniden yatış profili, evine gönderilen hastalardan farklıdır. Neden önemli? Bakım sürecinin sonucunu bağlam içinde değerlendirmenizi sağlar. Nereden alınır? Epic Clarity tablosu: PAT_ENC, sütun: DISCH_DISP_C Örnekler EvNitelikli bakım merkeziEvde sağlık hizmeti | |||
| Triyaj aciliyet düzeyi TriageAcuityLevel | Triyaj sırasında hastaya verilen şiddet puanı. | ||
| Açıklama Bu öznitelik, hastanın durumunun aciliyetini genellikle bir ölçeğe göre gösterir (ör. ESI düzeyleri 1-5). 'Triyaj tamamlandı' etkinliği sırasında kaydedilir. Şiddet puanına göre kaynak yoğunluğu Dashboardunda segmentasyon yapılmasını sağlar. Aciliyet düzeyi yüksek hastalar, düşük olanlardan farklı süreç yollarını izler. Bu alan, söz konusu farklılıkları ayırt etmeye yardımcı olur. Neden önemli? Süreci aciliyet ve beklenen kaynak tüketimine göre gruplandırır. Nereden alınır? Acil servis kayıtlarındaki Acuity alanı için Epic EHR dokümantasyonuna başvurun. Örnekler 1 - Resüsitasyon2 - Acil3 - Öncelikli | |||
| Yeniden yatış işareti ReadmissionFlag | Hastanın 30 gün içinde beklenmedik şekilde geri dönüp dönmediğini gösterir. | ||
| Açıklama Bu mantıksal öznitelik, aynı hastanın söz konusu bakım sürecini izleyen 30 gün içinde plansız bir yatışının olup olmadığını gösterir. 30 Gün İçinde Plansız Yeniden Yatış Oranı KPI’ının temelini oluşturur. Analizde önemli bir sonuç değişkeni olarak kullanılır. Değeri 'True' olan vakalara yol açan süreç yolları, taburculuk planlama aşamasındaki temel nedenleri bulmak için incelenir. Neden önemli? Başarısız taburculuk süreçlerini ve bakım kalitesiyle ilgili sorunları belirler. Nereden alınır? Aynı MRN için sonraki hasta kabullerini inceleyen SQL sorgusuyla hesaplanır. Örnekler truefalse | |||
| Bölge adı RegionName | Coğrafi bölge veya hastane yerleşkesi. | ||
| Açıklama Birden fazla yerleşkesi olan sağlık kuruluşlarında bu öznitelik, tesisin konumunu belirtir. Farklı hastane yerleşkelerindeki performansı karşılaştırmanızı sağlar. 'Bölge' alanına eşlenmesi, bir hastanenin triyaj işlem hacmini diğerlerinden daha iyi yönetip yönetmediğini görmek için birden fazla tesisi karşılaştırmaya olanak tanır. Neden önemli? Sağlık ağı içindeki farklı tesislerin performansını karşılaştırmanızı sağlar. Nereden alınır? Bölüm veya tesis ana verilerinden elde edilir. Örnekler Kuzey yerleşkesiŞehir merkeziBatı kanadı | |||
| İstemi veren hekimin uzmanlık alanı OrderingProviderSpecialty | Konsültasyon veya test isteyen hekimin uzmanlık alanı. | ||
| Açıklama Bu öznitelik, istemi veren sağlık çalışanının bölümünü veya uzmanlık alanını (ör. 'Kardiyoloji', 'Onkoloji') kaydeder. Uzman Konsültasyonu Bekleme Süresi Dashboardunda kullanılır. Bazı uzmanlık alanlarının kurum içi hizmetler için diğerlerinden daha uzun süre bekleyip beklemediğini analiz etmeye yardımcı olur. Böylece belirli hizmet birimlerindeki olası eşitsizlikler veya kaynak eksiklikleri ortaya çıkar. Neden önemli? Tanı ve konsültasyon hizmetlerine yönelik talebi gruplandırır. Nereden alınır? Sağlık çalışanlarına ait ana veriler için Epic EHR dokümantasyonuna başvurun. Örnekler KardiyolojiDahiliyeOrtopedi | |||
| Nakil bekleme süresi TransferWaitDuration | Nakil istemiyle naklin gerçekleşmesi arasında geçen süre. | ||
| Açıklama Bu metrik, 'Nakil istendi' ile 'Hasta nakledildi' arasındaki süreyi ölçer. Kurum İçi Servis Nakli Analizi için temel veri noktasıdır. Yüksek değerler, hastaların yatak beklediği 'koridorda bekleme' durumuna işaret eder. Bu durum, acil servisten gelen hasta akışını yavaşlatır. Neden önemli? Hasta akışındaki lojistik ve kapasite darboğazlarını ortaya çıkarır. Nereden alınır? İstem ve nakil olaylarının zaman damgaları arasındaki fark hesaplanarak bulunur. Örnekler 2 sa. 30 dk.45 dk.12 sa. | |||
| Otomatik randevu planlama IsAutomatedScheduling | Randevunun personel müdahalesi olmadan planlanıp planlanmadığını gösteren işaret. | ||
| Açıklama Bu mantıksal öznitelik, randevu planlama yönteminden elde edilir. Randevu MyChart üzerinden veya otomatik bir Cadence iş akışıyla alındıysa değer True olur. Kontrol Randevusu Planlama Otomasyon Oranı KPI’ını doğrudan destekler. Operasyon yöneticilerinin idari iş yükünün ne kadarının teknolojiye aktarıldığını anlamasına yardımcı olur. Neden önemli? Süreç otomasyonunun başarısını ölçer. Nereden alınır? SchedulingMethod alanından elde edilir. Örnekler truefalse | |||
| Protokole uyum durumu ProtocolAdherenceStatus | Vakanın standart klinik bakım yolunu izleyip izlemediğini gösteren durum. | ||
| Açıklama Bu öznitelik, vakadaki etkinlik sırasını tanımlanmış bir referans modelle (Standart İşletim Prosedürü) karşılaştırır. Klinik Protokol Uyumluluğu Görünümünü destekler. Değerler arasında 'Uyumlu', 'Adım atlandı' veya 'Sıra dışı' bulunabilir. Klinik yöneticileri, her süreç haritasını tek tek incelemeden uyumsuz vakaları hızla filtreleyebilir. Neden önemli? Kanıta dayalı bakım standartlarından sapmaları hızla belirler. Nereden alınır? Process Mining aracında hesaplanır veya SQL ile önceden işlenir. Örnekler UyumluSapma varTamamlanmamış | |||
| Randevu planlama yöntemi SchedulingMethod | Kontrol randevusunun nasıl alındığını gösterir. | ||
| Açıklama Bu öznitelik, randevu almak için kullanılan kanalı kaydeder. Örneğin 'MyChart', 'Cadence Auto' veya 'Danışma'. Ayaktan Hasta Kontrol Randevusu Otomasyon Durumu Dashboardu için önemlidir. Değer, sistem üzerinden veya hastanın kullandığı dijital bir kanalı gösteriyorsa 'IsAutomated' işareti true olarak ayarlanabilir. Bu alan, dijital dönüşüm çalışmalarının başarısını gösterir. Neden önemli? Otomatik veya self servis araçların kullanımını izler. Nereden alınır? Randevunun hangi kaynaktan oluşturulduğu için Epic EHR dokümantasyonuna başvurun. Örnekler MyChartCadenceTelefonYüz yüze | |||
| Tanı istemi maliyeti DiagnosticOrderCost | Tanı testi veya prosedürle ilişkili kurum içi maliyet. | ||
| Açıklama Bu öznitelik, 'Tanı testi yapıldı' etkinliklerine finansal bir değer atar. Süreç haritasına maliyet bilgisi eklemenizi sağlar. Temel bir klinik metrik olmasa da yöneticilerin farklı süreç türlerinin maliyetini anlamasına yardımcı olur. Bu, özellikle yüksek kaynak gerektiren şiddet puanlarına sahip vakalar için yararlıdır. Neden önemli? Süreç verimliliği analizine finansal bir boyut katar. Nereden alınır? Prosedürle bağlantılı faturalandırma veya maliyet muhasebesi tabloları. Örnekler 150.001200.0045.00 | |||
Hasta yolculuğu etkinlikleri
| Aktivite | Açıklama | ||
|---|---|---|---|
| Hasta kaydı oluşturuldu | Bakım sürecinin başlangıcını belirleyen hasta başvuru kaydının sistemde ilk kez oluşturulmasıdır. Hasta kayıt masasına veya acil servise geldiğinde ve Epic sistemine kaydedildiğinde bu olay açıkça kayda alınır. | ||
| Neden önemli? Tüm Hasta Yolculuğu için başlangıç noktasını belirler ve toplam yatış süresinin hesaplanmasını sağlar. 'Triyaj kapasitesi ve bekleme süreleri' Dashboardu için gereklidir. Nereden alınır? ADT Feed (Event A04 veya A01) ya da Clarity tablosu PAT_ENC (HSP_ACCOUNT_ID oluşturulması). Kaydedin 'Check In' veya 'Admit' işlemi gerçekleştirildiğinde kaydedilir Olay türü explicit | |||
| Hasta taburcu edildi | Yataklı hasta başvuru kaydının resmen kapatılmasıdır. Hasta Census sisteminden sanal olarak taburcu edildiğinde kayda alınır. | ||
| Neden önemli? 'Yatış süresi' hesaplamalarında sürecin resmî bitiş noktasıdır. 'Hasta akışı varyantı keşfi' için gereklidir. Nereden alınır? ADT Feed (Event A03) veya PAT_ENC_HSP.DISCH_TIME. Kaydedin İdari personel taburculuk iş akışını tamamladığında kaydedilir Olay türü explicit | |||
| Tanı kesinleşti | Kesinleşen tanının hastanın sorun listesine veya başvuru tanısı alanına girilmesidir. Araştırma aşamasının tamamlandığını gösterir. | ||
| Neden önemli? 'Kesin tanıya ulaşma süresi' KPI’ı için gereklidir. Değerlendirmeden hedefe yönelik tedaviye geçişi gösterir. Nereden alınır? Başvuru kaydıyla ilişkilendirilmiş PAT_ENC_DX tablosu veya PROBLEM_LIST güncellemesi. Kaydedin Klinisyen Encounter Diagnosis etkinliğine bir kayıt eklediğinde kaydedilir Olay türü explicit | |||
| Triyaj tamamlandı | İlk hemşirelik değerlendirmesinin veya triyaj değerlendirmesinin tamamlanmasıdır. Genellikle triyaj akış formu kaydedildiğinde veya triyaj durumu 'Complete' olarak değiştiğinde kayda alınır. | ||
| Neden önemli? Ön hizmet aşamasının verimliliğini ölçmek için 'Triyaj kapasitesi ve bekleme süreleri' Dashboardunda gereklidir. Buradaki gecikmeler bakım sürecinin tamamını etkiler. Nereden alınır? PAT_ENC_HSP.TRIAGE_END_TIME veya belirli bir Flowsheet satırının kaydedildiği zaman damgası (FLO_MEASUREMENT). Kaydedin Triyaj belgeleri imzalandığında veya durum alanı güncellendiğinde kaydedilir Olay türü explicit | |||
| Bakım planı başlatıldı | Hastaya belirli bir klinik bakım yolunun veya protokolün atanmasıdır. Standart bir Order Set veya Care Plan başvuru kaydına uygulandığında kayda alınır. | ||
| Neden önemli? 'Klinik protokol uyumluluğu görünümü' için standart bakıma uyma niyetini gösterir. Sonraki planlı adımlardan sapmalar bu noktadan itibaren ölçülebilir. Nereden alınır? Protokolün başvuru kaydıyla ilişkilendirildiğini gösteren ORDER_SET_BKG veya bakım planı tabloları. Kaydedin Klinisyen bir Order Set seçip imzaladığında kaydedilir Olay türü explicit | |||
| Hasta nakledildi | Hastanın yeni bir bölüme veya servise fiziksel olarak nakledilmesidir. ADT transfer olayları aracılığıyla kayda alınır. | ||
| Neden önemli? 'Servisler arası ortalama transfer süresi’nin bitiş noktasıdır. Hastane lojistiğindeki darboğazları bulmak için 'Dahili servis transferi analizi’ni destekler. Nereden alınır? ADT Feed (Event A02) veya PAT_ENC_HSP_TRANSACTION (Transfer In). Kaydedin Birim görevlisi Census içinde hastanın konumunu güncellediğinde kaydedilir Olay türü explicit | |||
| İlaç uygulandı | Hemşirenin veya sağlık hizmeti sunucusunun hastaya ilaç vermesidir. Medication Administration Record (MAR) içinde kayda alınır. | ||
| Neden önemli? 'İlaç uygulama performansı' Dashboardu için temel olaydır. 'Tedavi planı oluşturuldu' adımına uyumu izler. Nereden alınır? Özellikle action değeri 'Given' veya 'New Bag' olan MAR_ADMIN_INFO tablosu olayları. Kaydedin Hemşire hastanın bilekliğini ve ilacı taradığında kaydedilir (BCMA) Olay türü explicit | |||
| Konsültasyon istendi | Uzmanın hastayı değerlendirmesi için verilen istemdir. Epic’te belirli bir 'Consult' prosedür istemi türü olarak kayda alınır. | ||
| Neden önemli? 'Uzman konsültasyonu için bekleme süresi' KPI’ının başlangıç noktasıdır. Belirli uzmanlık alanlarındaki personel eksikliklerini belirlemeye yardımcı olur. Nereden alınır? ORDER_CLASS değeri 'Consult' olan ORDER_PROC veya belirli sevk istemleri. Kaydedin Konsültasyon istemi imzalandığında kaydedilir Olay türü explicit | |||
| Konsültasyon tamamlandı | Uzman değerlendirmesinin tamamlanmasıdır. Genellikle Consult Note imzalandığında veya konsültasyon istemi kapatıldığında kayda alınır. | ||
| Neden önemli? 'Uzman konsültasyonu için bekleme süresi’nin bitiş noktasıdır. Uzman görüşünün verildiğini ve bakım planının ilerleyebileceğini gösterir. Nereden alınır? HNO_NOTE_TEXT (Consult türünde kaydedilen not) veya Completed durumuna geçen ORDER_PROC. Kaydedin Consult Note oluşturulma zamanından veya istem durumu güncellemesinden çıkarılır Olay türü inferred | |||
| Taburculuk istemi imzalandı | Hastanın hastaneden ayrılması için hekimin verdiği resmî onaydır. Epic’te belirli bir istem kaydı olarak yer alır. | ||
| Neden önemli? 'Taburculuk planlaması ve uygulaması' sürecinde önemli bir aşamadır. Bu aşama ile hastanın gerçekten ayrılması arasındaki süre idari gecikmeyi gösterir. Nereden alınır? Türü 'Discharge Patient' olan ORDER_PROC. Kaydedin Hekim taburculuk istemini imzaladığında kaydedilir Olay türü explicit | |||
| Taburculuk planlaması başlatıldı | Hastanın taburcu edilmesine yönelik hazırlıkların başlamasıdır. Case Management belgeleri veya belirli 'Discharge' istem türleri aracılığıyla kayda alınır. | ||
| Neden önemli? 'Taburculuk planlaması ve uygulaması' Dashboardu için önemlidir. Planlamanın erken başlaması, yatış süresinin kısalmasıyla ilişkilidir. Nereden alınır? HSP_DISCH_PLAN oluşturulması veya Case Manager/Social Worker tarafından girilen ilk not. Kaydedin Discharge Navigator ile ilk etkileşimden veya Case Mgmt notundan çıkarılır Olay türü inferred | |||
| Takip randevusu planlandı | Hastanın gelecekteki ayaktan hasta ziyaretinin planlanması. Hasta kaydıyla bağlantılı Cadence planlama modülünde kaydedilir. | ||
| Neden önemli? 'Kontrol randevusu planlama otomasyon oranı' metriğini destekler. Bakımın sürekliliğini sağlar ve yeniden yatışların önlenmesine yardımcı olur. Nereden alınır? Hasta kimliğine bağlı PAT_ENC_APPT kaydı, taburculuk saatine yakın oluşturulur. Kaydedin Cadence’te randevu saati onaylandığında kaydedilir. Olay türü explicit | |||
| Tanı testi istendi | Görüntüleme (Radiology) veya laboratuvar hizmetleri için istem girilmesidir. Hekim CPOE sisteminde istemi girip imzaladığında kayda alınır. | ||
| Neden önemli? 'Tanı hizmeti çevrim süreleri' Dashboardunun başlangıç noktasıdır. Sonuçlarla karşılık bulmayan yüksek istem hacmi darboğazlara işaret eder. Nereden alınır? ORDER_TYPE değerinin Lab veya Imaging/Radiology olduğu ORDER_PROC tablosu. Kaydedin İstem durumu 'Signed' veya 'Active' olduğunda kaydedilir Olay türü explicit | |||
| Tanı testi yapıldı | Tanı testinin gerçekten yapılması veya sonucun kaydedilmesidir. Laboratuvar testlerinde numunenin işlenmesi, görüntülemede ise taramanın tamamlanması bu olayı belirtir. | ||
| Neden önemli? 'Ortalama tanı testi çevrim süresi' KPI’ının bitiş noktasıdır. Klinik karar destek hizmetlerindeki gecikmeleri anlamak için önemlidir. Nereden alınır? ORDER_PROC.PROC_END_TIME veya durum 'Completed' ya da 'Resulted' olduğunda ORDER_STAT_HISTORY. Kaydedin Teknisyen görevi tamamladığında veya sonuç arayüzü verileri aldığında kaydedilir Olay türü explicit | |||
| Transfer istendi | Hastanın başka bir birime veya bakım düzeyine nakledilmesi için verilen istektir. Sistemde 'Bed Request' veya 'Transfer Order' olarak kayda alınır. | ||
| Neden önemli? 'Servisler arası ortalama transfer süresi' için başlangıç noktasıdır. Hastayı nakletme yönündeki klinik kararla yatağın lojistik açıdan hazır olmasını birbirinden ayırır. Nereden alınır? ADT_TRANSFER_ORDER veya ORDER_PROC (Bed Request). Kaydedin Hekim transfer istemi girdiğinde kaydedilir Olay türü explicit | |||
Veri çıkarma rehberleri
Adımlar
- Epic Hyperspace’e giriş yapın ve Analytics veya My Reports etkinliği üzerinden Reporting Workbench’i (RWB) açın.
- Yeni bir rapor oluşturun: Library sekmesini seçin ve "Encounter Search" veya "Patient Encounters" Templateini arayın. Bu Template, CSN (Contact Serial Number) ile tanımlanan başvuru düzeyindeki ayrıntıları almanızı sağlar.
- Ölçütleri yapılandırın (Settings sekmesi):
- Tamamlanmış vakaları dahil etmek için Tarih aralığını belirleyin (ör. Taburcu tarihi = Son 90 gün).
- İlgisiz ayaktan hasta ziyaretlerini hariç tutmak için Başvuru türüne göre filtreleyin (ör. 'Hospital Encounter', 'Emergency').
- Belirli bir kapsam gerekiyorsa Departman veya Sağlık tesisi ölçütüne göre filtreleyin.
- Görüntülenecek sütunları yapılandırın (Display sekmesi):
- Bu, veri çıkarmanın en önemli adımıdır. Gerekli etkinliklerin zaman damgalarına karşılık gelen sütunları arayıp eklemeniz gerekir.
- Hasta tanımlayıcılarını ekleyin:
CSN(Hasta vakası),MRN(Hasta kimliği). - Demografik bilgileri/öznitelikleri ekleyin:
Department,Discharge Disposition,Primary Diagnosis Code,Provider. - Zaman damgası sütunlarını ekleyin:
Admission Time,Triage End Time,Discharge Time,Discharge Order Time,First Med Admin Timegibi sütunları arayın. (Kesin eşleştirme için Sorgu/Yapılandırma bölümüne bakın.)
- Raporu çalıştırın ve sonuçları önizleme penceresinde doğrulayın.
- Verileri dışa aktarın:
- Toolbar > Export seçeneğine tıklayın.
- CSV veya Text (Tab Delimited) biçimini seçin.
- 'Include Column Headers' seçeneğinin işaretli olduğundan emin olun.
- Dosyayı
Raw_Epic_Extract.csvadıyla kaydedin.
- Veri dönüşümü (önemli):
- RWB dışa aktarımı, her hasta vakasının birden fazla zaman damgası sütunu içeren tek bir satırda yer aldığı "geniş" bir Veri Seti oluşturur.
- Her zaman damgası sütununun olay günlüğünde ayrı bir satıra dönüşmesi için verileri Unpivot işlemiyle yeniden şekillendirmeniz gerekir.
- Şu sütunları içeren son bir dosya oluşturun:
PatientEpisodeId,ActivityName,EventTimestampve eşleştirilmiş öznitelikler.
- Tarihleri biçimlendirin:
EventTimestampdeğerinin ProcessMind ile uyumlu ISO biçiminde (YYYY-MM-DD HH:MM:SS) olduğundan emin olun. - Son doğrulama: Dosyada
PatientEpisodeId,ActivityName,EventTimestampbaşlıklarının bulunduğunu kontrol edin ve dosyayı ProcessMind’e yükleyin.
Yapılandırma
- Template: Epic sürümünüze bağlı olarak "Encounter Search" (LBF) veya "Find Patients" kullanın.
- Tarih aralığı: Zaman aşımı hatalarını önlemek için başlangıçta 3-6 ayla sınırlayın (RWB büyük hacimli toplu veri çıkarma işlemleri için optimize edilmemiştir).
- Satır sınırı: Epic RWB’de genellikle satır sınırı bulunur (ör. 25.000 veya 50.000 satır). Tarih aralığınızın bu sınırı aşmadığından emin olun veya verileri birkaç parti halinde alın.
- İzinler: Reporting Workbench için 'Create' ve 'Export' güvenlik noktaları gerekir.
- Performans: Geniş tarih aralıklarında arama yaparken yoğun olmayan saatleri tercih edin.
- Ayrıntı düzeyi: Bu yöntem, başvuru düzeyinde özet zaman damgaları sağlar (ör. 'First Med Admin'). Belirli "Audit" Templateleri kullanılmadıkça (bu kullanım senaryosunda nadirdir) her döngüyü (ör. verilen her bir hapı) çıkarmaz.
a Örnek sorgu 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 Adımlar
Veritabanı erişimi isteyin: Epic Clarity Console’a veya Clarity üretim ya da raporlama veritabanına bağlı bir SQL istemcisine salt okunur erişiminiz olduğundan emin olun.
PAT_ENC,ORDER_PROC,CLARITY_ADT,MAR_ADMIN_INFOve ilgili referans tabloları için izin gerekir.Kapsamı ve filtre kimliklerini belirleyin: Tam betiği çalıştırmadan önce, Epic örneğinizde Laboratuvar, Radyoloji, Konsültasyon ve Transfer için kullanılan belirli
ORDER_TYPE_Cdeğerlerini bulmak üzere küçük keşif sorguları çalıştırın. Bu Özel Listeler (Kategori Listeleri) hastaneye göre değişir.Zaman aralığını yapılandırın: Sağlanan SQL betiğinde
CONTACT_DATEveyaHOSP_ADMSN_TIMEalanlarına göre filtreleme yapanWHEREkoşullarını bulun. Bunları istediğiniz veri çıkarma aralığına göre ayarlayın (ör. son 6 ay).Özel akış sayfalarını eşleştirin (isteğe bağlı): Ana başvuru tablosunda bulunmayan kesin triyaj veya taburcu planlama zaman damgalarına ihtiyacınız varsa, bu alanlara ait
FLO_MEAS_ID(Flowsheet Measure ID) değerlerini belirleyin ve betikteki yer tutucu bölümleri güncelleyin.Sorguyu çalıştırın: SQL istemcinizde (ör. SQL Server Management Studio, Oracle SQL Developer) tam SQL betiğini çalıştırın. Betik, farklı klinik olayları tek bir standart olay günlüğü yapısında birleştirmek için
UNION ALLkullanır.İşlem sonrası kontroller: Sorgu düz bir liste döndürür.
EventTimestampalanının boş olmadığını doğrulayın. Ara katman yazılımınız gerektiriyorsa veritabanına özgü tarih-saat biçimlerini ISO 8601 biçimine (YYYY-MM-DDTHH:MM:SS) dönüştürün.Verileri dışa aktarın: Sonuç kümesini CSV dosyası olarak kaydedin. Başlıkların tanımlanan özniteliklerle (PatientEpisodeId, ActivityName vb.) eşleştiğinden emin olun.
ProcessMind’e yükleyin: CSV dosyasını ProcessMind’e aktarın.
PatientEpisodeIdalanını Vaka kimliği,ActivityNamealanını Aktivite,EventTimestampalanını ise Zaman damgası olarak eşleştirin.
Yapılandırma
- Veritabanı bağlantısı: Epic Clarity (genellikle MSSQL veya Oracle arka ucu).
- Tarih filtresi:
PAT_ENC.HOSP_ADMSN_TIMEveyaPAT_ENC.CONTACT_DATEalanına göre filtreleyin. Sorgu performansını korumak için ilk analizde 3-6 aylık aralık önerilir. - Başvuru türleri: Betik, yatan hasta ve acil servis başvurularını filtreler (
ENC_TYPE_Cdeğerleri genellikle 3 ve 50’dir; ancakZC_ENC_TYPEtablosundan doğrulayın). - Sipariş türleri: Yerel ZC_ORDER_TYPE yapılandırmasına göre Laboratuvar, Görüntüleme ve Konsültasyon için
ORDER_TYPE_Cdeğerlerinin özelleştirilmesi gerekir. - Performans: Betik, yüksek hacimli tablolarda (
ORDER_PROC,CLARITY_ADT) tarama yapar. Uygun dizinlerin kullanıldığından emin olun veya betiği yoğun olmayan saatlerde çalıştırın.
a Örnek sorgu 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 Başlamaya hazır mısınız?
Bu Templatei bugün Epic verilerinize uygulayarak klinik operasyonlarınızı iyileştirmeye başlayın. Ekibimiz, hızlı sonuç alabilmeniz için veri çıkarma sürecinde size yardımcı olmaya hazır.
Hasta yolculuğunuzu iyileştirin, çevrim süresini bugün kısaltın
Çevrim süresini %30 azaltmak için klinik darboğazları belirleyin.
Kredi kartı gerekmez... Kurulum birkaç dakika sürer.