Hasta Yolculuğu Veri Template'iniz
Hasta Yolculuğu Veri Template'iniz
- Klinik bağlam için önerilen nitelikler
- İzleme için önemli süreç kilometre taşları
- `Epic EHR` için özel `veri` çıkarma rehberliği
Hasta Yolculuğu Nitelikleri
| Ad | Açıklama | ||
|---|---|---|---|
| Faaliyet Adı ActivityName | Gerçekleştirilen belirli klinik veya idari eylem. | ||
| Açıklama Bu Analizde, bu alan süreç haritasının düğümlerini oluşturur. İnsan tarafından okunabilir bir Neden önemli Sürecin adımlarını tanımlar ve iş akışının görselleştirilmesine olanak tanır. Nereden alınır CLARITY_ADT, ORDER_PROC ve ORDER_MED tablolarından türetilmiştir. Örnekler Ön Değerlendirme TamamlandıTanı Testi Sipariş EdildiHasta Taburcu Edildiİlaç Uygulandı | |||
| Hasta Vakası PatientEpisodeId | Belirli hasta vakası veya bakım `episode`'u için benzersiz tanımlayıcı. | ||
| Açıklama Hasta Vakası, Bu Neden önemli Farklı olayları tek bir süreç vakasına bağlamak 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 | Aktivitenin gerçekleştiği kesin tarih ve saat. | ||
| Açıklama Bu Bu alandaki doğruluk, Neden önemli Döngü sürelerinin, ön sürelerin ve süreç sıralamasının hesaplanmasını sağlar. Nereden alınır Kaynak tabloya bağlı olarak çeşitli Örnekler 2023-10-15T08:30:00Z2023-10-15T09:15:22Z2023-10-16T14:20:00Z | |||
| Kaynak Sistem SourceSystem | `Veri` için kayıt sistemi, genellikle `Epic EHR`. | ||
| Açıklama Bu Analizde, Neden önemli Veri kaynağı için izlenebilirlik ve bağlam sağlar. Nereden alınır Sabit kodlanmış veya bağlantı dizesi yapılandırmasından türetilmiş. Örnekler Epic EHREpic ClarityEpic Caboodle | |||
| Son Veri Güncellemesi LastDataUpdate | Verilerin çıkarıldığı veya son güncellendiği zaman damgası. | ||
| Açıklama Bu Analistler bunu, Neden önemli Process Mining verilerinin güncelliğini ve güvenilirliğini değerlendirmeye yardımcı olur. Nereden alınır ETL sistem zaman damgası. Örnekler 2023-10-27T23:59:59Z2023-10-28T06:00:00Z | |||
| Birincil Tanı Kodu PrimaryDiagnosisCode | Ana tanıyı temsil eden `ICD-10` veya dahili kod. | ||
| Açıklama Bu Klinik Protokol Neden önemli Vakaları protokol analizi için klinik benzerliğe göre gruplandırır. Nereden alınır Epic Clarity Tablosu: PAT_ENC_DX, Sütun: DX_ID Örnekler J18.9I21.9E11.9 | |||
| Departman Adı DepartmentName | Aktivitenin gerçekleştiği hastane birimi veya departmanı. | ||
| Açıklama Bu
Neden önemli Kurumsal filtreleme ve devir analizi sağlar. Nereden alınır Epic Clarity Tablosu: CLARITY_DEP, Sütun: DEPARTMENT_NAME Örnekler Acil ServisRadyolojiYoğun Bakım ÜnitesiPediatri | |||
| Hasta MRN'si PatientMrn | Hastayı tanımlayan Tıbbi Kayıt Numarası. | ||
| Açıklama
Bu Neden önemli Tekrar eden ziyaretleri belirlemek ve hasta geçmişini analiz etmek için temeldir. Nereden alınır Epic Clarity Tablosu: PATIENT, Sütun: PAT_ID veya PAT_MRN_ID Örnekler MRN-882910MRN-112003MRN-554211 | |||
| Karşılaşma Türü EncounterType | Hasta ziyaretinin sınıflandırılması (örneğin, Yatan Hasta, Acil Durum). | ||
| Açıklama Bu 'CaseType' ile eşleştirme, analizi filtrelemek için temeldir. Örneğin, Taburculuk Planlama Neden önemli Süreç örneği için üst düzey bağlamı sağlar. Nereden alınır Epic Clarity Tablosu: PAT_ENC, Sütun: ENC_TYPE_C Örnekler AcilHastane Ayakta TedaviYatan Hasta | |||
| Olay Bitiş Zamanı EventEndTime | Aktivitenin tamamlandığı `timestamp`. | ||
| Açıklama Birçok Aktif işleme süresi ile bekleme süresinin hesaplanmasını sağlar. Bu, Teşhis Hizmeti Döngü Süreleri Neden önemli Aktivite süresi ve kaynak kullanımının hesaplanmasını sağlar. Nereden alınır ORDER_PROC'taki belirli bitiş zamanı sütunları için Epic EHR dokümantasyonuna başvurun. Örnekler 2023-10-15T09:45:00Z2023-10-16T15:00:00Z | |||
| Sağlayıcı ID'si ProviderId | Aktiviteyi gerçekleştiren kullanıcı veya klinisyenin tanımlayıcısı. | ||
| Açıklama Bu Kaynak varyasyonunu ve iş yükünü analiz etmek için 'Kullanıcı' Neden önemli Personel genelindeki performans ve iş yükü varyasyonlarının analizini sağlar. Nereden alınır Epic Clarity Tablosu: CLARITY_EMP, Sütun: USER_ID Örnekler EMP10023DOC5592SİSTEM | |||
| Taburculuk Durumu DischargeDisposition | Hastanın taburculuk sonrası varış yeri (Ev, `SNF`, Vefat etti). | ||
| Açıklama Bu Nitelikli Bakım Tesisleri ( Neden önemli Bakım sürecinin sonucunu bağlamsallaştırır. Nereden alınır Epic Clarity Tablosu: PAT_ENC, Sütun: DISCH_DISP_C Örnekler Ana SayfaNitelikli Bakım TesisiEvde Sağlık Hizmeti | |||
| Triyaj Akutluk Seviyesi TriageAcuityLevel | Triyaj sırasında hastaya atanan şiddet puanı. | ||
| Açıklama Bu Şiddet Puanına Göre Kaynak Yoğunluğu Neden önemli Süreci aciliyet ve beklenen kaynak tüketimine göre bölümlendirir. Nereden alınır ED loglarındaki Aciliyet alanı için Epic EHR dokümantasyonuna başvurun. Örnekler 1 - Resüsitasyon2 - Acil3 - Acil | |||
| Yeniden Kabul Bayrağı ReadmissionFlag | Hastanın 30 gün içinde beklenmedik bir şekilde geri dönüp dönmediğini gösterir. | ||
| Açıklama Bu boolean Analizde, bu önemli bir sonuç değişkeni olarak hizmet eder. 'Doğru' bayrağına yol açan süreç yolları, taburculuk planlama aşamasındaki temel nedenleri bulmak için analiz edilir. Neden önemli Başarısız taburculuk süreçlerini ve bakım kalitesi sorunlarını tanımlar. Nereden alınır Aynı MRN için gelecekteki karşılaşmalara bakarak SQL aracılığıyla hesaplanır. Örnekler truefalse | |||
| Bölge Adı RegionName | Coğrafi bölge veya hastane kampüsü. | ||
| Açıklama Birden fazla kampüsü olan sağlık sistemleri için bu öznitelik tesisin konumunu tanımlar. Farklı hastane siteleri arasında performans karşılaştırmasına olanak tanır. 'Bölge'ye eşleme, bir hastanenin Triyaj Verimliliğini diğerinden daha iyi yönetip yönetmediğini görmek için çoklu site karşılaştırmalı değerlendirmesini sağlar. Neden önemli Bir sağlık ağındaki farklı tesisler arasında karşılaştırmalı değerlendirme yapılmasına olanak tanır. Nereden alınır Departman veya Tesis ana verilerinden türetilmiştir. Örnekler Kuzey KampüsüŞehir MerkeziBatı Kanadı | |||
| İlaç Uygulama Gecikmesi MedicationAdminDelay | Planlanan ve fiili ilaç uygulaması arasındaki zaman farkı. | ||
| Açıklama Bu Pozitif değerler, geç uygulamayı gösterir. Bu metrik, hemşirelik süpervizörlerinin iş yükünün zamanında bakım sunumunu etkilediği vardiyaları veya birimleri belirlemesine olanak tanır. Neden önemli Hemşirelik iş akışı uyumunun ve hasta güvenliğinin doğrudan bir ölçüsüdür. Nereden alınır MAR (Medication Administration Record) verilerinden hesaplanır. Örnekler 15m-5m1h 20m | |||
| Otomatik Planlama mı IsAutomatedScheduling | Planlamanın personel müdahalesi olmadan yapılıp yapılmadığını gösteren bayrak. | ||
| Açıklama Bu boolean Doğrudan Takip Planlama Otomasyon Oranı Neden önemli Süreç otomasyonu başarısını ölçer. Nereden alınır SchedulingMethod'dan türetilmiştir. Örnekler truefalse | |||
| Planlama Yöntemi SchedulingMethod | Takip randevusunun nasıl rezerve edildiğini gösterir. | ||
| Açıklama Bu Değer bir sistem veya hasta odaklı dijital kanalı gösteriyorsa, 'IsAutomated' bayrağı doğru olarak ayarlanabilir. Bu, dijital dönüşüm girişimlerinin başarısını vurgular. Neden önemli Otomatik veya self-servis araçların benimsenmesini izler. Nereden alınır Randevu oluşturma kaynağı için Epic EHR dokümantasyonuna başvurun. Örnekler MyChartCadenceTelefonYüz Yüze | |||
| Protokol Uygunluk Durumu ProtocolAdherenceStatus | Vakanın standart klinik yolu takip edip etmediğini gösteren durum. | ||
| Açıklama Bu Değerler arasında 'Uyumlu', 'Adım Atlandı' veya 'Sıra Dışı' bulunabilir. Bu, klinik liderlerinin her süreç haritasını manuel olarak incelemeden uyumsuz vakaları hızla filtrelemesine olanak tanır. Neden önemli Kanıta dayalı bakım standartlarından sapmaları hızla belirler. Nereden alınır Process Mining aracı içinde hesaplanır veya SQL'de önceden işlenir. Örnekler UyumluSapmalıTamamlanmamış | |||
| Sipariş Veren Sağlayıcı Uzmanlık Alanı OrderingProviderSpecialty | Konsültasyon veya test talep eden doktorun tıbbi uzmanlık alanı. | ||
| Açıklama Bu Belirli uzmanlık alanlarının dahili hizmetler için diğerlerinden daha uzun bekleme süreleri ile karşılaşıp karşılaşmadığını analiz etmeye yardımcı olur ve belirli hizmet hatlarında potansiyel yanlılık veya kaynak eksikliklerini ortaya çıkarır. Neden önemli Tanı ve konsültasyon hizmetlerine olan talebi segmentlere ayırır. Nereden alınır Sağlayıcı ana verileri için Epic EHR dokümantasyonuna başvurun. Örnekler KardiyolojiDahiliyeOrtopedi | |||
| Tanı Sipariş Maliyeti DiagnosticOrderCost | Bir teşhis testi veya prosedürü ile ilişkili dahili maliyet. | ||
| Açıklama Bu Birincil bir klinik metrik olmasa da, yönetimin farklı süreç varyantlarının, özellikle de yüksek kaynak şiddet puanları içerenlerin finansal ağırlığını anlamasına yardımcı olur. Neden önemli Süreç verimliliği analizine finansal bir boyut katar. Nereden alınır Prosedüre bağlı Faturalandırma veya Maliyet Muhasebesi tabloları. Örnekler 150.001200.0045.00 | |||
| Transfer Bekleme Süresi TransferWaitDuration | Bir transfer emri ile fiili transfer arasında geçen süre. | ||
| Açıklama Bu metrik, 'Transfer Sipariş Edildi' ile 'Hasta Sevk Edildi' arasındaki boşluğu ölçer. Dahili Servis Transfer Analizi için birincil Buradaki yüksek değerler, 'bekleme' (hastaların yatak beklediği) durumunu gösterir, bu da Acil Servis'ten yukarı yönlü akışı engeller. Neden önemli Hasta akışındaki lojistik ve kapasite darboğazlarını vurgular. Nereden alınır Sipariş ve transfer olayları arasındaki hesaplanmış zaman damgası farkı. Örnekler 2h 30m45m12h | |||
Hasta Yolculuğu Aktiviteleri
| Aktivite | Açıklama | ||
|---|---|---|---|
| Hasta Kaydedildi | Hastanın sistemdeki vaka kaydının ilk oluşturulması, bakım vakasının başlangıcını işaret eder. Bu, bir hasta kayıt masasına veya acil servise geldiğinde ve `Epic`'e giriş yaptığında açıkça yakalanır. | ||
| Neden önemli Tüm Hasta Yolculuğu için dayanak noktasını belirler ve toplam kalış süresinin hesaplanmasını sağlar. 'Triyaj Verimliliği ve Bekleme Süreleri' dashboard'u için temeldir. Nereden alınır ADT Beslemesi (Olay A04 veya A01) veya Clarity tablosu PAT_ENC (HSP_ACCOUNT_ID oluşturulması). Yakala 'Giriş Yap' veya 'Yatış' işlemi yürütüldüğünde kaydedilir Event tipi explicit | |||
| Hasta Taburcu Edildi | Yatan hasta vakasının resmi kapanışı. Hasta sanal olarak sayım listesinden taburcu edildiğinde yakalanır. | ||
| Neden önemli 'Kalıcılık Süresi' hesaplamaları için vakanın resmi sonu. 'Hasta Akışı Varyant Keşfi' için elzemdir. Nereden alınır ADT Beslemesi (Olay A03) veya PAT_ENC_HSP.DISCH_TIME. Yakala İdari personel taburculuk iş akışını tamamladığında kaydedilir Event tipi explicit | |||
| Ön Değerlendirme Tamamlandı | İlk hemşirelik değerlendirmesi veya triyaj değerlendirmesinin tamamlanması. Bu genellikle triyaj `flowsheet`'i dosyalandığında veya triyaj durumu 'Tamamlandı' olarak değiştiğinde yakalanır. | ||
| Neden önemli Ön uç verimliliğini ölçmek için 'Triyaj Verimliliği ve Bekleme Süreleri' dashboard'u için kritik öneme sahiptir. Buradaki gecikmeler tüm bakım yolculuğuna yayılır. Nereden alınır PAT_ENC_HSP.TRIAGE_END_TIME veya belirli Flowsheet satır dosyalama ( Yakala Triyaj dokümantasyonu imzalandığında veya durum alanı güncellendiğinde kaydedilir Event tipi explicit | |||
| Tanı Doğrulandı | Doğrulanmış bir tanının hastanın problem listesine veya vaka tanı alanına girişi. Araştırma aşamasının sonucunu temsil eder. | ||
| Neden önemli 'Kesin Tanı Süresi' Nereden alınır Vakaya bağlı PAT_ENC_DX tablosu veya PROBLEM_LIST güncellemesi. Yakala Klinisyen, Karşılaşma Tanısı aktivitesine bir giriş eklediğinde kaydedilir Event tipi explicit | |||
| Bakım Planı Başlatıldı | Hastaya belirli bir klinik yol veya protokolün atanması. Bu, standart bir Sipariş Seti veya Bakım Planının vaka bağlamına uygulandığında yakalanır. | ||
| Neden önemli Bir bakım standardını takip etme niyetini işaretleyerek 'Klinik Protokol Nereden alınır Bir protokolün vaka ile ilişkilendirildiğini gösteren ORDER_SET_BKG veya bakım planı tabloları. Yakala Klinisyen bir Sipariş Seti seçip imzaladığında kaydedilir Event tipi explicit | |||
| Hasta Sevk Edildi | Hastanın yeni bir departmana veya servise fiziksel hareketi. `ADT` transfer `event`'leri aracılığıyla yakalanır. | ||
| Neden önemli 'Ortalama Servisler Arası Transfer Süresi' için bitiş noktası. Hastane lojistiğindeki darboğazları bulmak için 'Dahili Servis Transfer Analizi'ni destekler. Nereden alınır ADT Beslemesi (Olay A02) veya PAT_ENC_HSP_TRANSACTION (Transfer Girişi). Yakala Birim katibi hastanın konumunu Nüfus Sayımı'nda güncellediğinde kaydedilir Event tipi explicit | |||
| İlaç Uygulandı | Bir hemşire veya sağlayıcının hastaya ilaç uygulama eylemi. İlaç Uygulama Kaydı (`MAR`)'nda yakalanır. | ||
| Neden önemli 'İlaç Teslim Performansı' dashboard'u için temel olay. 'Geliştirilen Tedavi Planı'na uyumu izler. Nereden alınır MAR_ADMIN_INFO tablosu, özellikle 'Verildi' veya 'Yeni Torba' eylemli olaylar. Yakala Hemşire hasta bilekliğini ve ilacı taradığında (BCMA) kaydedilir Event tipi explicit | |||
| Konsültasyon Talep Edildi | Bir uzmanın hastayı değerlendirmesi için verilen sipariş. Epic içinde 'Konsültasyon' olarak belirli bir prosedür sipariş türü olarak kaydedilir. | ||
| Neden önemli 'Uzman Konsültasyon Bekleme Süresi' Nereden alınır ORDER_CLASS = 'Konsültasyon' veya belirli sevk siparişleri olan ORDER_PROC. Yakala Konsültasyon siparişi imzalandığında kaydedilir Event tipi explicit | |||
| Konsültasyon Tamamlandı | Uzman değerlendirmesinin tamamlanması, genellikle bir Konsültasyon Notunun imzalanması veya konsültasyon siparişinin kapatılmasıyla işaretlenir. | ||
| Neden önemli 'Uzman Konsültasyon Süresi' için bitiş noktası. Uzman görüşünün sağlandığını ve bakım planının devam edebileceğini gösterir. Nereden alınır HNO_NOTE_TEXT (Konsültasyon tipiyle dosyalanan not) veya ORDER_PROC durumunun Tamamlandı olarak değişmesi. Yakala Konsültasyon Notu oluşturma zamanından veya Sipariş durumu güncellemesinden çıkarılmıştır Event tipi inferred | |||
| Taburculuk Planlaması Başlatıldı | Hastanın taburculuğuna hazırlanmak için faaliyetlerin başlangıcı. Vaka Yönetimi belgeleri veya belirli 'Taburculuk' sipariş türleri aracılığıyla yakalanır. | ||
| Neden önemli 'Taburculuk Planlaması ve Uygulaması' dashboard'u için anahtar. Erken başlangıç, kalış süresinin azalmasıyla ilişkilidir. Nereden alınır HSP_DISCH_PLAN oluşturulması veya Vaka Yöneticisi/Sosyal Hizmet Uzmanı tarafından ilk not. Yakala Taburculuk Navigatörü veya Vaka Yönetimi notuyla ilk etkileşimden çıkarılmıştır Event tipi inferred | |||
| Taburculuk Siparişi İmzalandı | Doktorun hastanın hastaneden ayrılması için resmi yetkilendirmesi. Bu, `Epic`'te belirli bir sipariş girişidir. | ||
| Neden önemli 'Taburculuk Planlaması ve Uygulaması'nda kritik bir kilometre taşı. Bununla gerçek ayrılış arasındaki fark, idari gecikmeyi temsil eder. Nereden alınır Türü 'Hasta Taburcu Etme' olan ORDER_PROC. Yakala MD taburculuk siparişini imzaladığında kaydedilir Event tipi explicit | |||
| Takip Randevusu Planlandı | Hasta için gelecekteki bir ayakta tedavi ziyaretinin planlanması. Hasta kaydına bağlı `Cadence` planlama modülünde yakalanır. | ||
| Neden önemli 'Takip Randevu Otomasyon Oranı'nı destekler. Bakım sürekliliğini sağlar ve yeniden kabulleri önlemeye yardımcı olur. Nereden alınır Hasta ID'sine bağlı, taburculuk zamanına yakın oluşturulan PAT_ENC_APPT. Yakala Randevu slotu Cadence'de onaylandığında kaydedilir Event tipi explicit | |||
| Tanı Testi Gerçekleştirildi | Teşhis testinin fiili yürütülmesi veya sonucun dosyalanması. Laboratuvarlar için bu, numunenin işlendiği zamandır; görüntüleme için ise tarama tamamlandığında. | ||
| Neden önemli 'Ortalama Tanı Testi Döngü Süresi' KPI'sı için bitiş noktası. Klinik karar destek hizmetlerindeki gecikmeleri anlamak için hayati öneme sahiptir. Nereden alınır Durum 'Tamamlandı' veya 'Sonuçlandı' olarak değiştiğinde ORDER_PROC.PROC_END_TIME veya ORDER_STAT_HISTORY kullanılır. Yakala Teknisyen görevi tamamladığında veya sonuç arayüzü veri aldığında kaydedilir Event tipi explicit | |||
| Tanı Testi Sipariş Edildi | Görüntüleme (Radyoloji) veya laboratuvar hizmetleri için bir siparişin girişi. Bir hekimin `CPOE` sistemine bir sipariş girip imzaladığı zaman yakalanır. | ||
| Neden önemli 'Teşhis Hizmeti Döngü Süreleri' Nereden alınır ORDER_PROC tablosu, ORDER_TYPE Lab veya Görüntüleme/Radyoloji olduğunda kullanılır. Yakala Sipariş durumu 'İmzalandı' veya 'Aktif' olduğunda kaydedilir Event tipi explicit | |||
| Transfer Sipariş Edildi | Hastanın farklı bir birime veya bakım seviyesine taşınması talebi. Sistemde 'Yatak Talebi' veya 'Transfer Emri' olarak kaydedilir. | ||
| Neden önemli 'Ortalama Servisler Arası Transfer Süresi' için başlangıç noktası. Taşınma yönündeki klinik karar ile bir yatağın lojistik mevcudiyeti arasında ayrım yapar. Nereden alınır ADT_TRANSFER_ORDER veya ORDER_PROC (Yatak Talebi). Yakala Doktor transfer siparişini girdiğinde kaydedilir Event tipi explicit | |||
Veri Çekim Kılavuzları
Adımlar
- Epic Hyperspace'e giriş yapın ve Analytics veya Raporlarım aktivitesi aracılığıyla Reporting Workbench'i (RWB) başlatın.
- Yeni bir Rapor Oluşturun: Kütüphane sekmesini seçerek ve "Encounter Search" veya "Patient Encounters" template'ini aratarak yeni bir rapor oluşturun. Bu template, CSN (Contact Serial Number) ile tanımlanan iletişim seviyesindeki detayların alınmasını sağlar.
- Kriterleri Yapılandırın (Ayarlar Sekmesi):
- Tamamlanmış bölümleri yakalamak için Tarih Aralığını (örn. Taburculuk Tarihi = Son 90 Gün) ayarlayın.
- İlgisiz ayakta tedavi ziyaretlerini hariç tutmak için Karşılaşma Türüne (örn. 'Hastane Karşılaşması', 'Acil') göre filtreleyin.
- Belirli bir kapsam gerekiyorsa Departmana veya Tesise göre filtreleyin.
- Görüntüleme Sütunlarını Yapılandırın (Görüntüleme Sekmesi):
- Bu, kritik veri çekme adımıdır. Gerekli aktivitelerin zaman damgalarına karşılık gelen belirli sütunları aramanız ve eklemeniz gerekir.
- Hasta Tanımlayıcıları ekleyin:
CSN(Hasta Bölümü),MRN(Hasta Kimliği). - Demografik/Öznitelikler ekleyin:
Departman,Taburculuk Durumu,Birincil Tanı Kodu,Sağlayıcı. - Zaman Damgası Sütunları ekleyin:
Yatış Zamanı,Triyaj Bitiş Zamanı,Taburculuk Zamanı,Taburculuk Siparişi Zamanı,İlk İlaç Uygulama Zamanıgibi sütunları arayın ve ekleyin (Tam 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:
- Araç Çubuğu > Dışa Aktar'a tıklayın.
- CSV veya Metin (Sekmeyle Ayrılmış) formatını seçin.
- 'Sütun Başlıklarını Dahil Et' seçeneğinin işaretli olduğundan emin olun.
- Dosyayı
Raw_Epic_Extract.csvolarak kaydedin.
- Veri Dönüşümü (Çok Önemli):
- RWB dışa aktarımı, "Geniş" bir veri kümesi (birden çok zaman damgası sütunu içeren her hasta bölümü için bir satır) üretir.
- Bu verileri, her zaman damgası sütununun olay log'unda ayrı bir satır haline gelmesi için Çözmeniz (yeniden şekillendirmeniz) gerekir.
PatientEpisodeId,ActivityName,EventTimestampve eşlenen nitelikler sütunlarını içeren nihai bir dosya oluşturun.
- Tarihleri Biçimlendirin:
EventTimestamp'ın ProcessMind ile uyumlu ISO formatında (YYYY-MM-DD HH:MM:SS) olduğundan emin olun. - Son Doğrulama: Dosyanın
PatientEpisodeId,ActivityName,EventTimestampbaşlıklarına sahip olduğunu kontrol edin ve ProcessMind'e yükleyin.
Konfigürasyon
- Template: Epic sürümüne 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 ay ile sınırlayın (RWB, büyük hacimli veri çekimi için optimize edilmemiştir).
- Satır Sınırı: Epic RWB'nin genellikle bir satır sınırı vardır (örn. 25.000 veya 50.000 satır). Tarih aralığınızın bu sınırı aşmadığından emin olun veya birden fazla parti halinde çalıştırın.
- İzinler: Reporting Workbench 'Oluştur' ve 'Dışa Aktar' güvenlik noktaları gereklidir.
- Performans: Büyük geçmiş aralıkları aranıyorsa yoğun olmayan saatlerde çalıştırın.
- Granülerlik: Bu yöntem, karşılaşma seviyesinde özet zaman damgaları (örn. 'İlk İlaç Uygulaması') sağlar. Belirli "Audit" template'leri kullanılmadıkça (ki bu kullanım senaryosu için nadirdir) her döngüyü (örn. verilen her bir hapı) çıkarmaz.
a Örnek Sorgu config
[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şim Talebi: Epic Clarity Konsolu'na veya Clarity üretim veya raporlama veritabanına bağlı bir SQL istemcisine okuma erişiminizin olduğundan emin olun.
PAT_ENC,ORDER_PROC,CLARITY_ADT,MAR_ADMIN_INFOve ilgili referans tabloları için izinlere ihtiyacınız olacaktır.Kapsam ve Filtre Kimliklerini Belirleyin: Tam script'i çalıştırmadan önce, özel Epic örneğinizdeki Laboratuvarlar, Radyoloji, Konsültasyonlar ve Transferler için belirli
ORDER_TYPE_Cdeğerlerini belirlemek üzere küçük keşif sorguları çalıştırın, çünkü bu Özel Listeler (Kategori Listeleri) hastaneye göre değişiklik gösterir.Zaman Penceresini Yapılandırın: Sağlanan SQL script'indeki
CONTACT_DATEveyaHOSP_ADMSN_TIMEüzerinde filtreleme yapanWHEREcümlelerini bulun. Bunları istediğiniz çekim penceresine (örn. son 6 ay) göre ayarlayın.Özel Akış Çizelgelerini Eşleştirin (İsteğe Bağlı): Ana karşılaşma tablosunda olmayan Triyaj veya Taburculuk Planlaması için hassas zaman damgalarına ihtiyacınız varsa, bu alanlar için belirli
FLO_MEAS_ID(Akış Çizelgesi Ölçü Kimliği) değerlerini belirleyin ve script'in yer tutucu bölümlerini güncelleyin.Sorguyu Çalıştırın: Tam SQL script'ini SQL istemcinizde (örn. SQL Server Management Studio, Oracle SQL Developer) çalıştırın. Script, farklı klinik olayları tek bir standart olay logu yapısında birleştirmek için
UNION ALLkullanır.İşlem Sonrası: Sorgu düz bir liste döndürür.
EventTimestamp'ın null olmadığını doğrulayın. Ara yazılımınız gerektiriyorsa, veritabanına özgü tüm tarih/saat formatlarını ISO 8601 (YYYY-MM-DDTHH:MM:SS) formatına dönüştürün.Verileri Dışa Aktarın: Sonuç kümesini bir CSV dosyası olarak kaydedin. Başlıkların tanımlanmış belirli özniteliklerle (PatientEpisodeId, ActivityName, vb.) eşleştiğinden emin olun.
ProcessMind'e Yükleyin: CSV dosyasını ProcessMind'e aktarın.
PatientEpisodeId'yi Vaka Kimliği,ActivityName'i Aktivite veEventTimestamp'ı Zaman Damgası olarak eşleştirin.
Konfigürasyon
- Veritabanı Bağlantısı: Epic Clarity (genellikle MSSQL veya Oracle arka ucu).
- Tarih Filtreleme:
PAT_ENC.HOSP_ADMSN_TIMEveyaPAT_ENC.CONTACT_DATEüzerinde filtreleme yapın. Sorgu performansını yönetmek için ilk analizde 3-6 aylık bir aralık önerilir. - Karşılaşma Türleri: Script, yatan hasta ve acil servis karşılaşmalarını filtreler (genellikle 3 ve 50 olan
ENC_TYPE_Cdeğerleri, ancakZC_ENC_TYPEile doğrulayın). - Sipariş Türleri: Laboratuvar, Görüntüleme ve Konsültasyonlar için
ORDER_TYPE_Cdeğerlerinin yerel ZC_ORDER_TYPE yapılandırmasına göre özelleştirilmesi gerekir. - Performans: Script, yüksek hacimli tabloları (
ORDER_PROC,CLARITY_ADT) tarar. Uygun indekslemenin kullanıldığından veya yoğun olmayan saatlerde çalıştırıldığından emin olun.
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