Mẫu dữ liệu hành trình bệnh nhân
Mẫu dữ liệu hành trình bệnh nhân
- Thuộc tính nên dùng để bổ sung bối cảnh lâm sàng
- Các mốc quy trình chính cần theo dõi
- Hướng dẫn trích xuất dữ liệu cụ thể từ Epic EHR
Thuộc tính hành trình bệnh nhân
| Tên | Mô tả | ||
|---|---|---|---|
| Dấu thời gian sự kiện EventTimestamp | Ngày và giờ chính xác khi hoạt động diễn ra. | ||
| Mô tả Thuộc tính này ghi lại thời điểm chính xác một sự kiện được lưu trong hệ thống Epic. Dữ liệu này dùng để sắp xếp hoạt động và tính các chỉ số dựa trên thời lượng, chẳng hạn như thời gian nằm viện và thời gian xử lý. Trường này cần chính xác để xác định điểm nghẽn. Dữ liệu hỗ trợ các bảng điều khiển về tốc độ xử lý phân loại và thời gian đến khi có chẩn đoán xác định, bằng cách cung cấp mốc thời gian bắt đầu và kết thúc. Vì sao điều này quan trọng Thuộc tính này giúp tính thời gian xử lý, thời gian hoàn thành và thứ tự các bước trong quy trình. Lấy dữ liệu ở đâu Các cột dấu thời gian khác nhau, chẳng hạn như EFFECTIVE_TIME và ORDER_TIME, tùy theo bảng nguồn. Ví dụ 2023-10-15T08:30:00Z2023-10-15T09:15:22Z2023-10-16T14:20:00Z | |||
| Đợt điều trị của bệnh nhân PatientEpisodeId | Mã định danh duy nhất của lượt khám hoặc đợt điều trị cụ thể của bệnh nhân. | ||
| Mô tả Đợt điều trị của bệnh nhân là mã hồ sơ chính dùng trong process mining. Mã này nhóm tất cả sự kiện lâm sàng, hành chính và hậu cần trong một giai đoạn chăm sóc liên tục, chẳng hạn như một đợt nằm viện hoặc một lần khám tại khoa cấp cứu. Trong Epic Clarity, mã này thường tương ứng với Contact Serial Number (CSN) hoặc Encounter ID. Phân tích thuộc tính này giúp tái dựng hành trình chăm sóc từ đầu đến cuối. Nhờ đó, bạn có thể liên kết các hoạt động phân loại, chẩn đoán, điều trị và xuất viện thành một quy trình thống nhất. Vì sao điều này quan trọng Đây là khóa chính để liên kết các sự kiện rời rạc thành một hồ sơ quy trình duy nhất. Lấy dữ liệu ở đâu Bảng Epic Clarity: PAT_ENC, cột: PAT_ENC_CSN_ID Ví dụ 200459112200459113200459114200459115 | |||
| Tên hoạt động ActivityName | Hành động lâm sàng hoặc hành chính cụ thể đã được thực hiện. | ||
| Mô tả Thuộc tính này ghi lại tên sự kiện trong hành trình chăm sóc bệnh nhân, chẳng hạn như “Đã đăng ký bệnh nhân”, “Đã cấp thuốc” hoặc “Đã ký y lệnh xuất viện”. Đây là yếu tố chính để xác định luồng quy trình. Trong phân tích, trường này tạo thành các nút trên sơ đồ quy trình. Dữ liệu được lấy từ nhiều mã giao dịch và trạng thái y lệnh trong EHR để tạo nhật ký sự kiện dễ đọc. Vì sao điều này quan trọng Thuộc tính này xác định các bước trong quy trình và giúp trực quan hóa quy trình làm việc. Lấy dữ liệu ở đâu Lấy từ các bảng CLARITY_ADT, ORDER_PROC và ORDER_MED. Ví dụ Hoàn tất phân loạiChỉ định xét nghiệm chẩn đoánBệnh nhân xuất việnĐã cấp thuốc | |||
| Hệ thống nguồn SourceSystem | Hệ thống lưu trữ dữ liệu gốc, thường là Epic EHR. | ||
| Mô tả Thuộc tính này xác định nguồn gốc dữ liệu. Trong chế độ xem này, nguồn thường là “Epic EHR”, nhưng thuộc tính cũng hữu ích khi kết hợp dữ liệu với hệ thống khác, chẳng hạn như LIS riêng (hệ thống thông tin xét nghiệm) hoặc hệ thống thanh toán. Khi phân tích, thuộc tính này giúp theo dõi nguồn gốc dữ liệu và xử lý sự cố nếu một số sự kiện bị thiếu hoặc sai lệch so với dữ liệu nguồn. Vì sao điều này quan trọng Thuộc tính này giúp truy xuất nguồn gốc và hiểu rõ xuất xứ của dữ liệu. Lấy dữ liệu ở đâu Được thiết lập cố định hoặc lấy từ cấu hình chuỗi kết nối. Ví dụ Epic EHREpic ClarityEpic Caboodle | |||
| Lần cập nhật dữ liệu gần nhất LastDataUpdate | Dấu thời gian cho biết dữ liệu được trích xuất hoặc làm mới lần cuối. | ||
| Mô tả Thuộc tính này cho biết lần gần nhất bản ghi được xử lý qua quy trình ETL. Thời điểm này khác với dấu thời gian sự kiện và giúp theo dõi độ mới của dữ liệu. Chuyên viên phân tích dùng thông tin này để xác định bảng điều khiển có phản ánh tình hình thực tế hay không, hoặc dữ liệu có bị trễ khiến các KPI như thời gian chờ phân loại kém chính xác hay không. Vì sao điều này quan trọng Thuộc tính này giúp đánh giá mức độ cập nhật và độ tin cậy của dữ liệu process mining. Lấy dữ liệu ở đâu Dấu thời gian của hệ thống ETL. Ví dụ 2023-10-27T23:59:59Z2023-10-28T06:00:00Z | |||
| Cờ tái nhập viện ReadmissionFlag | Cho biết bệnh nhân có quay lại ngoài dự kiến trong vòng 30 ngày hay không. | ||
| Mô tả Thuộc tính dạng đúng/sai này cho biết sau đợt điều trị cụ thể, bệnh nhân có phải nhập viện ngoài kế hoạch lần nữa trong vòng 30 ngày hay không. Đây là chỉ số cốt lõi của KPI Tỷ lệ tái nhập viện ngoài kế hoạch trong 30 ngày. Trong phân tích, đây là biến kết quả quan trọng. Các luồng quy trình dẫn đến giá trị “True” được phân tích để tìm nguyên nhân gốc rễ trong giai đoạn lập kế hoạch xuất viện. Vì sao điều này quan trọng Thuộc tính này giúp phát hiện quy trình xuất viện chưa hiệu quả và các vấn đề về chất lượng chăm sóc. Lấy dữ liệu ở đâu Được tính bằng SQL, dựa trên các lượt khám tiếp theo của cùng một MRN. Ví dụ truefalse | |||
| ID nhân viên y tế ProviderId | Mã định danh của người dùng hoặc nhân viên y tế thực hiện hoạt động. | ||
| Mô tả Thuộc tính này ghi lại ID duy nhất của nhân viên phụ trách sự kiện, chẳng hạn như điều dưỡng cấp thuốc hoặc bác sĩ ký y lệnh xuất viện. ID này được ánh xạ sang thuộc tính chung “Người dùng” để phân tích khác biệt về nguồn lực và khối lượng công việc. Với hoạt động tự động, ID có thể là tài khoản hệ thống. Vì sao điều này quan trọng Thuộc tính này giúp phân tích sự khác biệt về hiệu suất và khối lượng công việc giữa các nhân viên. Lấy dữ liệu ở đâu Bảng Epic Clarity: CLARITY_EMP, cột: USER_ID Ví dụ EMP10023DOC5592SYSTEM | |||
| Loại lượt khám EncounterType | Phân loại lượt khám của bệnh nhân, chẳng hạn như nội trú hoặc cấp cứu. | ||
| Mô tả Thuộc tính này phân loại loại đợt điều trị của bệnh nhân. Các giá trị thường gặp gồm “Cấp cứu”, “Nội trú”, “Ngoại trú” hoặc “Khám từ xa”. Trường này được ánh xạ sang “Loại hồ sơ” và là cơ sở để lọc phân tích. Ví dụ, bảng điều khiển về lập kế hoạch xuất viện chủ yếu áp dụng cho lượt khám nội trú, còn phân loại chỉ áp dụng cho cấp cứu. Vì sao điều này quan trọng Thuộc tính này cung cấp bối cảnh tổng quan cho một trường hợp trong quy trình. Lấy dữ liệu ở đâu Bảng Epic Clarity: PAT_ENC, cột: ENC_TYPE_C Ví dụ Cấp cứuKhám ngoại trú tại bệnh việnNội trú | |||
| Mã chẩn đoán chính PrimaryDiagnosisCode | Mã ICD-10 hoặc mã nội bộ đại diện cho chẩn đoán chính. | ||
| Mô tả Thuộc tính này ghi lại tình trạng bệnh đã được xác nhận của bệnh nhân. Thông tin thường được điền trong hoạt động “Xác nhận chẩn đoán”. Thuộc tính này dùng để nhóm hồ sơ theo tình trạng bệnh trong chế độ xem tuân thủ phác đồ lâm sàng. Khi ánh xạ sang “Sản phẩm”, chuyên viên phân tích có thể xem cách thức cung cấp dịch vụ chăm sóc thay đổi theo từng tình trạng bệnh. Vì sao điều này quan trọng Thuộc tính này nhóm các hồ sơ có tình trạng bệnh tương tự để phân tích việc tuân thủ phác đồ. Lấy dữ liệu ở đâu Bảng Epic Clarity: PAT_ENC_DX, cột: DX_ID Ví dụ J18.9I21.9E11.9 | |||
| MRN bệnh nhân PatientMrn | Mã số hồ sơ bệnh án dùng để nhận diện bệnh nhân. | ||
| Mô tả MRN là mã định danh duy nhất của bệnh nhân trong toàn hệ thống y tế, khác với ID đợt điều trị. Mã này giúp theo dõi lịch sử của bệnh nhân qua nhiều lần khám. Thuộc tính này giúp phát hiện các trường hợp tái nhập viện và liên kết những đợt điều trị riêng biệt cho bảng điều khiển về nguy cơ tái nhập viện. Trong mô hình chung, thuộc tính này được ánh xạ sang “Khách hàng”. Vì sao điều này quan trọng Thuộc tính này rất cần thiết để nhận diện các lần khám lặp lại và phân tích lịch sử bệnh nhân. Lấy dữ liệu ở đâu Bảng Epic Clarity: PATIENT, cột: PAT_ID hoặc PAT_MRN_ID Ví dụ MRN-882910MRN-112003MRN-554211 | |||
| Mức độ cấp cứu khi phân loại TriageAcuityLevel | Điểm mức độ nghiêm trọng được xác định cho bệnh nhân trong quá trình phân loại. | ||
| Mô tả Thuộc tính này cho biết mức độ khẩn cấp của tình trạng bệnh nhân, thường theo thang điểm như ESI từ 1 đến 5. Thông tin được ghi nhận trong hoạt động “Hoàn tất phân loại”. Thuộc tính này giúp phân nhóm trong bảng điều khiển về cường độ sử dụng tài nguyên theo mức độ nghiêm trọng. Bệnh nhân có mức độ cấp cứu cao thường đi theo quy trình khác với bệnh nhân ít cấp cứu hơn. Trường này giúp phân biệt các biến thể đó. Vì sao điều này quan trọng Thuộc tính này phân nhóm quy trình theo mức độ khẩn cấp và lượng tài nguyên dự kiến cần dùng. Lấy dữ liệu ở đâu Tham khảo tài liệu Epic EHR để biết trường Acuity trong nhật ký ED. Ví dụ 1 - Hồi sức cấp cứu2 - Cấp cứu khẩn cấp3 - Cần xử lý khẩn | |||
| Nơi đến sau xuất viện DischargeDisposition | Nơi bệnh nhân đến sau khi xuất viện, chẳng hạn như về nhà, đến cơ sở điều dưỡng chuyên môn hoặc tử vong. | ||
| Mô tả Thuộc tính này ghi lại nơi bệnh nhân đến sau khi rời bệnh viện. Thông tin được ghi nhận trong hoạt động “Bệnh nhân xuất viện”. Đây là dữ liệu quan trọng cho bảng điều khiển về nguy cơ tái nhập viện, vì bệnh nhân đến cơ sở điều dưỡng chuyên môn (SNF) có nguy cơ tái nhập viện khác với bệnh nhân về nhà. Vì sao điều này quan trọng Thuộc tính này giúp đặt kết quả của quy trình chăm sóc vào đúng bối cảnh. Lấy dữ liệu ở đâu Bảng Epic Clarity: PAT_ENC, cột: DISCH_DISP_C Ví dụ Về nhàCơ sở điều dưỡng chuyên mônChăm sóc sức khỏe tại nhà | |||
| Tên khoa DepartmentName | Khoa hoặc đơn vị bệnh viện nơi hoạt động diễn ra. | ||
| Mô tả Thuộc tính này xác định địa điểm chức năng của sự kiện, chẳng hạn như “Khoa cấp cứu”, “Chẩn đoán hình ảnh” hoặc “Khoa ngoại tổng quát”. Đây là thông tin quan trọng cho phân tích chuyển khoa nội bộ. Dữ liệu giúp phân nhóm sơ đồ quy trình theo khoa, để quản lý xác định điểm nghẽn riêng của từng đơn vị và phân biệt với vấn đề chung của toàn bệnh viện. Vì sao điều này quan trọng Thuộc tính này hỗ trợ lọc theo đơn vị và phân tích các lần bàn giao. Lấy dữ liệu ở đâu Bảng Epic Clarity: CLARITY_DEP, cột: DEPARTMENT_NAME Ví dụ Khoa cấp cứuChẩn đoán hình ảnhICUNhi khoa | |||
| Thời điểm kết thúc sự kiện EventEndTime | Dấu thời gian cho biết hoạt động đã hoàn tất khi nào. | ||
| Mô tả Nhiều sự kiện diễn ra tức thời, nhưng một số hoạt động như “Thực hiện xét nghiệm chẩn đoán” hoặc “Hoàn tất hội chẩn” có thời lượng. Thuộc tính này ghi lại thời điểm hoàn tất. Dữ liệu giúp tính thời gian xử lý thực tế và thời gian chờ. Đây là thông tin đặc biệt hữu ích cho bảng điều khiển về thời gian xử lý dịch vụ chẩn đoán. Vì sao điều này quan trọng Thuộc tính này giúp tính thời lượng hoạt động và mức độ sử dụng tài nguyên. Lấy dữ liệu ở đâu Tham khảo tài liệu Epic EHR để biết các cột thời gian kết thúc cụ thể trong ORDER_PROC. Ví dụ 2023-10-15T09:45:00Z2023-10-16T15:00:00Z | |||
| Chi phí y lệnh chẩn đoán DiagnosticOrderCost | Chi phí nội bộ liên quan đến xét nghiệm hoặc thủ thuật chẩn đoán. | ||
| Mô tả Thuộc tính này gán giá trị tài chính cho các hoạt động “Thực hiện xét nghiệm chẩn đoán”. Nhờ đó, bạn có thể xem thông tin tài chính trên sơ đồ quy trình. Đây không phải chỉ số lâm sàng chính, nhưng giúp bộ phận quản lý hiểu chi phí của từng biến thể quy trình, nhất là các trường hợp có điểm mức độ nghiêm trọng cao và cần nhiều tài nguyên. Vì sao điều này quan trọng Thuộc tính này bổ sung góc nhìn tài chính cho phân tích hiệu quả quy trình. Lấy dữ liệu ở đâu Các bảng thanh toán hoặc kế toán chi phí liên kết với thủ thuật. Ví dụ 150.001200.0045.00 | |||
| Chuyên khoa của người chỉ định OrderingProviderSpecialty | Chuyên khoa của bác sĩ yêu cầu hội chẩn hoặc xét nghiệm. | ||
| Mô tả Thuộc tính này ghi lại khoa hoặc chuyên khoa, chẳng hạn như “Tim mạch” hoặc “Ung bướu”, của người chỉ định. Thuộc tính được dùng trong bảng điều khiển về thời gian chờ hội chẩn chuyên khoa. Thuộc tính này giúp phân tích liệu một số chuyên khoa có thời gian chờ dịch vụ nội bộ lâu hơn các chuyên khoa khác hay không, qua đó phát hiện khả năng có sự thiên lệch hoặc thiếu tài nguyên ở một số dịch vụ. Vì sao điều này quan trọng Thuộc tính này phân nhóm nhu cầu về dịch vụ chẩn đoán và hội chẩn. Lấy dữ liệu ở đâu Tham khảo tài liệu Epic EHR để biết dữ liệu danh mục nhân viên y tế. Ví dụ Tim mạchNội khoaChấn thương chỉnh hình | |||
| Đặt lịch tự động IsAutomatedScheduling | Cờ cho biết lịch được đặt mà không cần nhân viên can thiệp. | ||
| Mô tả Thuộc tính dạng đúng/sai này được suy ra từ Phương thức đặt lịch. Nếu lịch được đặt qua MyChart hoặc quy trình làm việc tự động của Cadence, giá trị là True. Thuộc tính này hỗ trợ trực tiếp KPI Tỷ lệ tự động hóa đặt lịch tái khám. Nhờ đó, người phụ trách vận hành có thể biết công nghệ đang giúp giảm bao nhiêu khối lượng công việc hành chính. Vì sao điều này quan trọng Thuộc tính này đo lường hiệu quả tự động hóa quy trình. Lấy dữ liệu ở đâu Được suy ra từ SchedulingMethod. Ví dụ truefalse | |||
| Phương thức đặt lịch SchedulingMethod | Cho biết lịch tái khám được đặt bằng cách nào. | ||
| Mô tả Thuộc tính này ghi lại kênh đặt lịch, chẳng hạn như “MyChart”, “Cadence tự động” hoặc “Quầy tiếp nhận”. Đây là thông tin quan trọng cho bảng điều khiển về tình trạng tự động hóa đặt lịch tái khám ngoại trú. Nếu giá trị cho biết lịch được đặt qua hệ thống hoặc kênh số do bệnh nhân sử dụng, bạn có thể đặt cờ “IsAutomated” thành true. Thuộc tính này cho thấy hiệu quả của các sáng kiến chuyển đổi số. Vì sao điều này quan trọng Thuộc tính này theo dõi mức độ sử dụng công cụ tự động hoặc tự phục vụ. Lấy dữ liệu ở đâu Tham khảo tài liệu Epic EHR để biết nguồn tạo lịch hẹn. Ví dụ MyChartCadenceĐiện thoạiTrực tiếp | |||
| Tên khu vực RegionName | Khu vực địa lý hoặc cơ sở bệnh viện. | ||
| Mô tả Với hệ thống y tế có nhiều cơ sở, thuộc tính này xác định địa điểm của từng cơ sở. Nhờ đó, bạn có thể so sánh hiệu quả hoạt động giữa các bệnh viện. Khi ánh xạ sang “Khu vực”, thuộc tính này hỗ trợ so sánh giữa nhiều cơ sở để xem bệnh viện nào xử lý phân loại nhanh hơn. Vì sao điều này quan trọng Thuộc tính này hỗ trợ so sánh hiệu quả giữa các cơ sở trong cùng mạng lưới y tế. Lấy dữ liệu ở đâu Được suy ra từ dữ liệu danh mục khoa hoặc cơ sở. Ví dụ Cơ sở phía BắcTrung tâm thành phốKhu phía Tây | |||
| Thời gian chờ chuyển khoa TransferWaitDuration | Khoảng thời gian từ lúc có y lệnh chuyển khoa đến khi bệnh nhân thực sự được chuyển. | ||
| Mô tả Chỉ số này đo khoảng thời gian từ “Đã chỉ định chuyển khoa” đến “Đã chuyển bệnh nhân”. Đây là dữ liệu chính cho phân tích chuyển khoa nội bộ. Giá trị cao cho thấy bệnh nhân phải chờ giường, làm cản trở luồng bệnh nhân từ khoa cấp cứu. Vì sao điều này quan trọng Chỉ số này làm rõ các điểm nghẽn về hậu cần và năng lực tiếp nhận trong luồng bệnh nhân. Lấy dữ liệu ở đâu Được tính bằng chênh lệch dấu thời gian giữa sự kiện ra y lệnh và sự kiện chuyển khoa. Ví dụ 2 giờ 30 phút45 phút12 giờ | |||
| Tình trạng tuân thủ phác đồ ProtocolAdherenceStatus | Tình trạng cho biết hồ sơ có tuân theo lộ trình chăm sóc lâm sàng tiêu chuẩn hay không. | ||
| Mô tả Thuộc tính này so sánh thứ tự hoạt động trong hồ sơ với mô hình tham chiếu đã xác định (quy trình vận hành tiêu chuẩn). Thuộc tính hỗ trợ chế độ xem tuân thủ phác đồ lâm sàng. Các giá trị có thể gồm “Tuân thủ”, “Bỏ qua bước” hoặc “Sai thứ tự”. Nhờ đó, người phụ trách lâm sàng có thể nhanh chóng lọc các hồ sơ không tuân thủ mà không cần kiểm tra thủ công từng sơ đồ quy trình. Vì sao điều này quan trọng Thuộc tính này giúp nhanh chóng phát hiện sai lệch so với tiêu chuẩn chăm sóc dựa trên bằng chứng. Lấy dữ liệu ở đâu Được tính trong công cụ process mining hoặc xử lý trước bằng SQL. Ví dụ Tuân thủSai lệchChưa hoàn tất | |||
Hoạt động trong hành trình bệnh nhân
| Hoạt động | Mô tả | ||
|---|---|---|---|
| Bệnh nhân đăng ký | Tạo hồ sơ lượt khám của bệnh nhân trong hệ thống, đánh dấu thời điểm bắt đầu đợt chăm sóc. Sự kiện này được ghi nhận khi bệnh nhân đến quầy đăng ký hoặc khoa cấp cứu và được làm thủ tục tiếp nhận trong Epic. | ||
| Vì sao điều này quan trọng Xác định mốc bắt đầu cho toàn bộ hành trình bệnh nhân và giúp tính tổng thời gian nằm viện. Đây là dữ liệu thiết yếu cho dashboard 'Triage Throughput and Wait Times'. Lấy dữ liệu ở đâu ADT Feed (Event A04 hoặc A01) hoặc bảng Clarity PAT_ENC (tạo HSP_ACCOUNT_ID). Thu thập Được ghi nhận khi thực hiện giao dịch 'Check In' hoặc 'Admit'. Loại sự kiện explicit | |||
| Bệnh nhân xuất viện | Đóng chính thức lượt điều trị nội trú. Sự kiện này được ghi nhận khi bệnh nhân được đưa ra khỏi danh sách bệnh nhân nội trú. | ||
| Vì sao điều này quan trọng Đánh dấu kết thúc chính thức của đợt điều trị để tính 'Length of Stay'. Đây là dữ liệu thiết yếu cho 'Patient Flow Variant Discovery'. Lấy dữ liệu ở đâu ADT Feed (Event A03) hoặc PAT_ENC_HSP.DISCH_TIME. Thu thập Được ghi nhận khi nhân viên hành chính hoàn tất quy trình xuất viện. Loại sự kiện explicit | |||
| Hoàn tất phân loại | Hoàn tất đánh giá điều dưỡng ban đầu hoặc phân loại bệnh nhân. Sự kiện này thường được ghi nhận khi biểu mẫu phân loại được lưu hoặc trạng thái phân loại chuyển thành 'Complete'. | ||
| Vì sao điều này quan trọng Đây là dữ liệu thiết yếu để đo hiệu quả khâu tiếp nhận trên dashboard 'Triage Throughput and Wait Times'. Chậm trễ ở bước này sẽ ảnh hưởng đến toàn bộ lộ trình chăm sóc. Lấy dữ liệu ở đâu PAT_ENC_HSP.TRIAGE_END_TIME hoặc dấu thời gian khi lưu một dòng Flowsheet cụ thể (FLO_MEASUREMENT). Thu thập Được ghi nhận khi ký hồ sơ phân loại hoặc khi trường trạng thái được cập nhật. Loại sự kiện explicit | |||
| Xác nhận chẩn đoán | Ghi chẩn đoán đã xác nhận vào danh sách vấn đề sức khỏe của bệnh nhân hoặc trường chẩn đoán của lượt khám. Sự kiện này đánh dấu kết thúc giai đoạn tìm nguyên nhân bệnh. | ||
| Vì sao điều này quan trọng Dữ liệu cần thiết để tính KPI 'Time to Definitive Diagnosis'. Đánh dấu thời điểm chuyển từ đánh giá sang điều trị có mục tiêu. Lấy dữ liệu ở đâu Bảng PAT_ENC_DX hoặc cập nhật PROBLEM_LIST được liên kết với lượt khám. Thu thập Được ghi nhận khi nhân viên y tế thêm mục vào hoạt động Encounter Diagnosis. Loại sự kiện explicit | |||
| Bắt đầu kế hoạch chăm sóc | Gán lộ trình hoặc phác đồ lâm sàng cụ thể cho bệnh nhân. Sự kiện này được ghi nhận khi Order Set hoặc Care Plan tiêu chuẩn được áp dụng cho lượt khám. | ||
| Vì sao điều này quan trọng Hỗ trợ 'Clinical Protocol Compliance View' bằng cách đánh dấu ý định tuân theo tiêu chuẩn chăm sóc. Từ mốc này, có thể đo các sai lệch so với những bước dự kiến tiếp theo. Lấy dữ liệu ở đâu Bảng ORDER_SET_BKG hoặc các bảng care plan cho biết phác đồ đã được liên kết với lượt khám. Thu thập Được ghi nhận khi nhân viên y tế chọn và ký Order Set. Loại sự kiện explicit | |||
| Bắt đầu lập kế hoạch xuất viện | Bắt đầu các hoạt động chuẩn bị cho bệnh nhân xuất viện. Sự kiện này được ghi nhận qua hồ sơ Case Management hoặc các loại chỉ định 'Discharge' cụ thể. | ||
| Vì sao điều này quan trọng Dữ liệu quan trọng cho dashboard 'Discharge Planning and Execution'. Bắt đầu sớm có liên quan đến việc rút ngắn thời gian nằm viện. Lấy dữ liệu ở đâu Tạo HSP_DISCH_PLAN hoặc ghi chú đầu tiên của Case Manager/Social Worker. Thu thập Suy ra từ lần tương tác đầu tiên với Discharge Navigator hoặc ghi chú Case Mgmt. Loại sự kiện inferred | |||
| Chỉ định xét nghiệm chẩn đoán | Tạo chỉ định chẩn đoán hình ảnh (Radiology) hoặc xét nghiệm. Sự kiện này được ghi nhận khi bác sĩ nhập và ký chỉ định trong hệ thống CPOE. | ||
| Vì sao điều này quan trọng Đây là mốc bắt đầu để tính thời gian xử lý trên dashboard 'Diagnostic Service Cycle Times'. Số lượng chỉ định cao nhưng không có kết quả tương ứng là dấu hiệu của điểm nghẽn. Lấy dữ liệu ở đâu Bảng ORDER_PROC với ORDER_TYPE là Lab hoặc Imaging/Radiology. Thu thập Được ghi nhận khi trạng thái chỉ định chuyển thành 'Signed' hoặc 'Active'. Loại sự kiện explicit | |||
| Đã cấp thuốc | Điều dưỡng hoặc nhân viên y tế cấp thuốc cho bệnh nhân. Sự kiện này được ghi nhận trong Medication Administration Record (MAR). | ||
| Vì sao điều này quan trọng Sự kiện cốt lõi trên dashboard 'Medication Delivery Performance', dùng để theo dõi mức độ tuân thủ 'Treatment Plan Developed'. Lấy dữ liệu ở đâu Bảng MAR_ADMIN_INFO, cụ thể là các sự kiện có hành động 'Given' hoặc 'New Bag'. Thu thập Được ghi nhận khi điều dưỡng quét vòng tay bệnh nhân và thuốc (BCMA). Loại sự kiện explicit | |||
| Đã chuyển bệnh nhân | Bệnh nhân được chuyển đến khoa hoặc đơn vị mới. Sự kiện này được ghi nhận qua các sự kiện chuyển khoa ADT. | ||
| Vì sao điều này quan trọng Đây là mốc kết thúc để tính 'Average Inter-Ward Transfer Time'. Hỗ trợ 'Internal Ward Transfer Analysis' nhằm tìm điểm nghẽn trong khâu điều phối nội viện. Lấy dữ liệu ở đâu ADT Feed (Event A02) hoặc PAT_ENC_HSP_TRANSACTION (Transfer In). Thu thập Được ghi nhận khi nhân viên hành chính của khoa cập nhật vị trí bệnh nhân trong Census. Loại sự kiện explicit | |||
| Đã đặt lịch tái khám | Đặt lịch khám ngoại trú trong tương lai cho bệnh nhân. Thông tin được ghi nhận trong mô-đun lập lịch Cadence, liên kết với hồ sơ bệnh nhân. | ||
| Vì sao điều này quan trọng Hỗ trợ KPI “Tỷ lệ tự động hóa đặt lịch tái khám”. Giúp duy trì tính liên tục trong chăm sóc và giảm nguy cơ tái nhập viện. Lấy dữ liệu ở đâu PAT_ENC_APPT liên kết với ID bệnh nhân, được tạo gần thời điểm xuất viện. Thu thập Được ghi nhận khi khung giờ khám được xác nhận trong Cadence Loại sự kiện explicit | |||
| Gửi yêu cầu hội chẩn | Tạo chỉ định để chuyên gia đánh giá bệnh nhân. Trong Epic, sự kiện này được ghi nhận bằng loại chỉ định thủ thuật 'Consult'. | ||
| Vì sao điều này quan trọng Đây là mốc bắt đầu để tính KPI 'Specialist Consultation Lead Time'. Giúp xác định tình trạng thiếu nhân lực ở một số chuyên khoa. Lấy dữ liệu ở đâu ORDER_PROC với ORDER_CLASS = 'Consult' hoặc các chỉ định chuyển khám chuyên khoa cụ thể. Thu thập Được ghi nhận khi ký chỉ định hội chẩn. Loại sự kiện explicit | |||
| Hoàn tất hội chẩn | Hoàn tất đánh giá của chuyên gia, thường được đánh dấu khi ký Consult Note hoặc đóng chỉ định hội chẩn. | ||
| Vì sao điều này quan trọng Đây là mốc kết thúc để tính 'Specialist Consultation Lead Time'. Cho biết chuyên gia đã đưa ra ý kiến và kế hoạch chăm sóc có thể tiếp tục. Lấy dữ liệu ở đâu HNO_NOTE_TEXT (ghi chú được lưu với loại Consult) hoặc trạng thái ORDER_PROC chuyển thành Completed. Thu thập Suy ra từ thời điểm tạo Consult Note hoặc cập nhật trạng thái chỉ định. Loại sự kiện inferred | |||
| Ký lệnh xuất viện | Bác sĩ chính thức cho phép bệnh nhân rời bệnh viện. Sự kiện này được ghi nhận bằng một chỉ định cụ thể trong Epic. | ||
| Vì sao điều này quan trọng Đây là mốc quan trọng trong 'Discharge Planning and Execution'. Khoảng thời gian từ lúc ký lệnh đến khi bệnh nhân thực sự rời viện thể hiện độ trễ hành chính. Lấy dữ liệu ở đâu ORDER_PROC với loại 'Discharge Patient'. Thu thập Được ghi nhận khi bác sĩ ký lệnh xuất viện. Loại sự kiện explicit | |||
| Tạo yêu cầu chuyển khoa | Yêu cầu chuyển bệnh nhân sang đơn vị hoặc cấp độ chăm sóc khác. Sự kiện này được ghi nhận dưới dạng 'Bed Request' hoặc 'Transfer Order' trong hệ thống. | ||
| Vì sao điều này quan trọng Đây là mốc bắt đầu để tính 'Average Inter-Ward Transfer Time'. Giúp phân biệt quyết định lâm sàng về việc chuyển bệnh nhân với thời điểm giường bệnh sẵn sàng. Lấy dữ liệu ở đâu ADT_TRANSFER_ORDER hoặc ORDER_PROC (Bed Request). Thu thập Được ghi nhận khi bác sĩ nhập yêu cầu chuyển khoa. Loại sự kiện explicit | |||
| Thực hiện xét nghiệm chẩn đoán | Thực hiện xét nghiệm chẩn đoán hoặc lưu kết quả. Với xét nghiệm, sự kiện này xảy ra khi mẫu được xử lý; với chẩn đoán hình ảnh, khi hoàn tất chụp. | ||
| Vì sao điều này quan trọng Đây là mốc kết thúc để tính KPI 'Mean Diagnostic Test Cycle Time'. Chỉ số này rất quan trọng để hiểu rõ chậm trễ trong các dịch vụ hỗ trợ quyết định lâm sàng. Lấy dữ liệu ở đâu ORDER_PROC.PROC_END_TIME hoặc ORDER_STAT_HISTORY khi trạng thái chuyển thành 'Completed' hoặc 'Resulted'. Thu thập Được ghi nhận khi kỹ thuật viên hoàn tất công việc hoặc hệ thống nhận dữ liệu kết quả. Loại sự kiện explicit | |||
Hướng dẫn trích xuất dữ liệu
Các bước
- Đăng nhập Epic Hyperspace và mở Reporting Workbench (RWB) từ mục Analytics hoặc My Reports.
- Tạo báo cáo mới bằng cách chọn thẻ Library rồi tìm mẫu "Encounter Search" hoặc "Patient Encounters". Mẫu này cho phép lấy thông tin chi tiết ở cấp lượt khám, được xác định bằng CSN (Contact Serial Number).
- Thiết lập tiêu chí (thẻ Settings):
- Đặt Khoảng ngày (ví dụ: Ngày xuất viện = 90 ngày gần nhất) để lấy các đợt điều trị đã hoàn tất.
- Lọc theo Loại lượt khám (ví dụ: 'Hospital Encounter', 'Emergency') để loại các lượt khám ngoại trú không liên quan.
- Lọc theo Khoa/phòng hoặc Cơ sở y tế nếu cần giới hạn phạm vi.
- Thiết lập các cột hiển thị (thẻ Display):
- Đây là bước trích xuất quan trọng. Bạn cần tìm và thêm các cột tương ứng với dấu thời gian của những hoạt động cần lấy.
- Thêm Thông tin nhận dạng bệnh nhân:
CSN(đợt điều trị),MRN(ID bệnh nhân). - Thêm Thông tin nhân khẩu học/thuộc tính:
Department,Discharge Disposition,Primary Diagnosis Code,Provider. - Thêm Cột dấu thời gian: Tìm các cột như
Admission Time,Triage End Time,Discharge Time,Discharge Order Time,First Med Admin Time, v.v. (Xem phần Truy vấn/Cấu hình để biết cách ánh xạ chính xác).
- Chạy báo cáo và kiểm tra kết quả trong cửa sổ xem trước.
- Xuất dữ liệu:
- Chọn Toolbar > Export.
- Chọn định dạng CSV hoặc Text (Tab Delimited).
- Đảm bảo đã chọn 'Include Column Headers'.
- Lưu tệp với tên
Raw_Epic_Extract.csv.
- Chuyển đổi dữ liệu (bước quan trọng):
- Dữ liệu xuất từ RWB có dạng "rộng", mỗi hàng là một đợt điều trị của bệnh nhân với nhiều cột dấu thời gian.
- Bạn cần chuyển cột thành hàng để mỗi cột dấu thời gian trở thành một hàng riêng trong nhật ký sự kiện.
- Tạo tệp cuối cùng gồm các cột:
PatientEpisodeId,ActivityName,EventTimestampvà các thuộc tính đã ánh xạ.
- Định dạng ngày giờ: Đảm bảo
EventTimestampdùng định dạng ISO (YYYY-MM-DD HH:MM:SS) tương thích với ProcessMind. - Kiểm tra lần cuối: Xác nhận tệp có các tiêu đề
PatientEpisodeId,ActivityName,EventTimestamp, rồi tải lên ProcessMind.
Cấu hình
- Mẫu: Dùng "Encounter Search" (LBF) hoặc "Find Patients", tùy phiên bản Epic.
- Khoảng ngày: Ban đầu chỉ nên chọn 3-6 tháng để tránh lỗi hết thời gian chờ. RWB không được tối ưu cho việc trích xuất hàng loạt dữ liệu lớn.
- Giới hạn số hàng: Epic RWB thường giới hạn số hàng (ví dụ: 25.000 hoặc 50.000). Đảm bảo khoảng ngày không vượt giới hạn này hoặc chia thành nhiều đợt chạy.
- Quyền truy cập: Cần có quyền bảo mật 'Create' và 'Export' trong Reporting Workbench.
- Hiệu suất: Nếu tìm kiếm dữ liệu lịch sử trong khoảng thời gian dài, hãy chạy vào giờ thấp điểm.
- Mức độ chi tiết: Cách này cung cấp dấu thời gian tóm tắt ở cấp lượt khám (ví dụ: 'First Med Admin'). Phương pháp không trích xuất từng lần thực hiện (ví dụ: từng viên thuốc được cấp), trừ khi dùng các mẫu "Audit" chuyên biệt. Những mẫu này ít được dùng cho trường hợp này.
Truy vấn mẫu 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 Các bước
Yêu cầu quyền truy cập cơ sở dữ liệu: Đảm bảo bạn có quyền đọc Epic Clarity Console hoặc ứng dụng SQL kết nối với cơ sở dữ liệu Clarity dùng cho vận hành hoặc báo cáo. Bạn cần quyền truy cập
PAT_ENC,ORDER_PROC,CLARITY_ADT,MAR_ADMIN_INFOvà các bảng tham chiếu liên quan.Xác định phạm vi và mã lọc: Trước khi chạy toàn bộ tập lệnh, hãy chạy các truy vấn khám phá nhỏ để xác định giá trị
ORDER_TYPE_Ccụ thể cho xét nghiệm, chẩn đoán hình ảnh, hội chẩn và chuyển khoa trong hệ thống Epic của bạn. Các danh sách tùy chỉnh này (Category Lists) khác nhau giữa các bệnh viện.Thiết lập khoảng thời gian: Tìm các mệnh đề
WHEREtrong tập lệnh SQL được cung cấp, có lọc theoCONTACT_DATEhoặcHOSP_ADMSN_TIME. Điều chỉnh theo khoảng thời gian bạn muốn trích xuất, chẳng hạn 6 tháng gần nhất.Ánh xạ flowsheet tùy chỉnh (không bắt buộc): Nếu cần dấu thời gian chính xác cho Sàng lọc hoặc Lập kế hoạch xuất viện nhưng dữ liệu không có trong bảng lượt khám chính, hãy xác định
FLO_MEAS_ID(Flowsheet Measure ID) tương ứng với các trường này và cập nhật phần giữ chỗ trong tập lệnh.Chạy truy vấn: Chạy toàn bộ tập lệnh SQL trong ứng dụng SQL, chẳng hạn SQL Server Management Studio hoặc Oracle SQL Developer. Tập lệnh dùng
UNION ALLđể kết hợp các sự kiện lâm sàng khác nhau thành một cấu trúc nhật ký sự kiện chuẩn hóa.Xử lý sau trích xuất: Truy vấn trả về danh sách phẳng. Kiểm tra
EventTimestampkhông có giá trị null. Nếu phần mềm trung gian yêu cầu, hãy chuyển định dạng ngày giờ riêng của cơ sở dữ liệu sang ISO 8601 (YYYY-MM-DDTHH:MM:SS).Xuất dữ liệu: Lưu kết quả thành tệp CSV. Đảm bảo tiêu đề cột khớp với các thuộc tính đã xác định, chẳng hạn PatientEpisodeId, ActivityName...
Tải lên ProcessMind: Nhập tệp CSV vào ProcessMind. Ánh xạ
PatientEpisodeIdsang Mã trường hợp,ActivityNamesang Hoạt động vàEventTimestampsang Dấu thời gian.
Cấu hình
- Kết nối cơ sở dữ liệu: Epic Clarity (thường dùng hệ quản trị cơ sở dữ liệu MSSQL hoặc Oracle).
- Lọc ngày: Lọc theo
PAT_ENC.HOSP_ADMSN_TIMEhoặcPAT_ENC.CONTACT_DATE. Khi mới phân tích, nên chọn khoảng 3-6 tháng để đảm bảo truy vấn chạy hiệu quả. - Loại lượt khám: Tập lệnh lọc các lượt khám nội trú và cấp cứu (giá trị
ENC_TYPE_Cthường là 3 và 50, nhưng hãy kiểm tra trongZC_ENC_TYPE). - Loại chỉ định: Cần tùy chỉnh các giá trị
ORDER_TYPE_Ccho xét nghiệm, chẩn đoán hình ảnh và tư vấn theo cấu hìnhZC_ORDER_TYPEtại cơ sở của bạn. - Hiệu suất: Tập lệnh quét các bảng có lượng dữ liệu lớn (
ORDER_PROC,CLARITY_ADT). Đảm bảo có chỉ mục phù hợp hoặc chạy vào giờ thấp điểm.
Truy vấn mẫu 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 Sẵn sàng bắt đầu?
Hãy áp dụng mẫu này vào dữ liệu Epic ngay hôm nay để cải thiện hoạt động lâm sàng. Đội ngũ của chúng tôi có thể hướng dẫn bạn qua các bước trích xuất dữ liệu để sớm tạo ra tác động.
Cải thiện hành trình bệnh nhân và rút ngắn thời gian xử lý ngay hôm nay
Xác định điểm nghẽn trong chăm sóc lâm sàng để giảm 30% thời gian xử lý.
Không cần thẻ tín dụng. Thiết lập chỉ mất vài phút.