Fitur CPOPE di RME yang Wajib Ada Menurut Akreditasi
Sobat IT RS pasti sudah sering dengar istilah CPOPE, apalagi kalau sudah pernah bongkar-bongkar regulasi akreditasi atau implementasi Rekam Medis Elektronik (RME). Sering juga, fitur CPOPE cuma dianggap sekadar “input order dokter pakai komputer”. Padahal, urusan CPOPE ini bisa jadi penentu lolos-tidaknya SIMRS waktu survei akreditasi. Apalagi kalau auditor kepo minta klik-klik di depan mereka, yang kadang bikin jantung deg-degan, apalagi kalau fitur kita cuma “asal jalan”.
Yang sering kejadian: tim IT sudah ngebut develop atau beli modul RME, tapi waktu audit, malah kena semprit karena fitur CPOPE belum sesuai regulasi. Nah, biar nggak ngalamin sesi “ditekan” sama auditor atau user sendiri, yuk otopsi bareng fitur CPOPE yang wajib ada menurut akreditasi, plus contoh nyata di lapangan dan ngulik sedikit ke bagian ‘daleman’ SIMRS.
Apa Itu CPOPE dan Kenapa Wajib?
CPOPE (Computerized Provider Order Entry) = sistem komputer untuk input instruksi dokter, mulai dari order obat, permintaan lab, radiologi, diet, hingga tindakan medis. Di Indonesia, istilah aslinya sering dibelokkan jadi CPOE (Computerized Physician Order Entry), tapi versi regulasi KARS dan Peraturan Menteri Kesehatan konsisten pakai CPOPE. Intinya: dokter wajib entry instruksi lewat sistem, bukan di kertas.
- Mengurangi risiko salah baca tulisan tangan dokter (sumber error abadi di RS)
- Mempercepat komunikasi antar unit (farmasi, lab, radiologi, perawat)
- Jejak audit instruksi: siapa entry, kapan, status order
- Wajib buat lulus Standar Nasional Akreditasi Rumah Sakit (SNARS Edisi 1.1, Bab Pelayanan Medik dan Rekam Medis Elektronik)
Regulasi Terkait Fitur CPOPE
1. Standar Akreditasi KARS & Permenkes RME
- KARS SNARS Edisi 1.1 (PM.6, PMKP.5, dan RM.7): Dokter harus input instruksi lewat sistem, lengkap, aman, terekam log-nya.
- Permenkes No. 24 Tahun 2022 tentang RME: Sistem wajib punya fitur CPOPE yang mendukung pengelolaan order secara elektronik, dapat diakses multidisiplin, dan punya traceability (jejak digital).
2. Elemen Penilaian (EP) Paling Sering Dicek Auditor
- Instruksi dokter harus dientri langsung di sistem oleh dokter (bukan perawat/tenaga lain)
- Dokumen instruksi/hasil order terintegrasi dalam rekam medis elektronik
- Ada jejak waktu (timestamp) dan identitas user yang entry
- Order otomatis diteruskan ke unit terkait (farmasi, lab, radiologi, dsb) tanpa delay manual
- Riwayat revisi/void order tercatat (audit trail)
Komponen Minimum Fitur CPOPE Agar Lolos Akreditasi
Jangan sampai fitur CPOPE cuma jadi tampilan form order sederhana. Biar nggak kena “semprit” waktu audit, minimal ada beberapa komponen yang kudu nongol:
- Order Entry Langsung Oleh Dokter: Hak akses jelas, dokter harus login sendiri untuk entry instruksi.
- Multi Order Tersentral: Satu layar bisa input order obat, lab, radiologi, tindakan, diet, konsultasi.
- Otorisasi & Verifikasi: Beberapa order (misal, resep narkotika) wajib ada mekanisme verifikasi/validasi khusus.
- Notifikasi & Routing Otomatis: Setelah order, sistem langsung push data ke unit tujuan (farmasi, lab, dsb).
- Audit Trail: Semua aktivitas order terekam. Harus bisa dicek: siapa, kapan, order apa, revisi/cancel reason.
- Integrasi dengan Modul Terkait: Order masuk ke antrian farmasi, lab, dsb, tanpa input ulang.
- Support RME & Cetak Legal: Semua order dan hasil terintegrasi ke riwayat rekam medis, siap dicetak/legalisasi jika perlu.
Contoh Struktur Tabel Order CPOPE (SQL Server)
CREATE TABLE dbo.OrderInstruksiDokter (
OrderID INT IDENTITY(1,1) PRIMARY KEY,
NoRM VARCHAR(16) NOT NULL, -- Nomor Rekam Medis Pasien
VisitID INT NOT NULL, -- Kunjungan/Rawat
DokterID INT NOT NULL, -- Dokter Penanggung Jawab Order
JenisOrder VARCHAR(32) NOT NULL, -- Obat/Lab/Rad/Tindakan/Diet/Konsul
DetailOrder NVARCHAR(MAX) NOT NULL, -- JSON detail item order
TanggalOrder DATETIME NOT NULL DEFAULT GETDATE(),
StatusOrder VARCHAR(16) NOT NULL DEFAULT 'Baru', -- Baru, Dalam Proses, Selesai, Dibatalkan
UserEntry INT NOT NULL, -- User yang input (harus role dokter)
TglEntry DATETIME NOT NULL DEFAULT GETDATE(),
UserVoid INT NULL,
TglVoid DATETIME NULL,
ReasonVoid NVARCHAR(255) NULL
)
- DetailOrder disimpan JSON biar fleksibel (daftar kode obat, parameter lab dsb)
- UserEntry dan DokterID harus sama untuk certified entry
- Field void & reason buat audit jika ada pembatalan order
Contoh Data Order (JSON Detail)
{
"obat": [
{"kode": "OBT123", "nama": "Amoxicillin 500mg", "dosis": "3x500mg", "rute": "oral", "durasi": "5 hari"}
],
"lab": [
{"kode": "HB", "nama": "Hemoglobin", "catatan": "segera"}
]
}
Dengan model di atas, tim bisa parsing DetailOrder ke berbagai modul (farmasi, lab) tanpa tabel terpisah per order. Simpel, scalable, fleksibel.
Flow CPOPE yang Ideal di SIMRS
Gambaran Alur Praktis
- Dokter login ke SIMRS, buka rekam medis pasien
- Input satu atau beberapa order sekaligus di form CPOPE (obat, lab, radiologi, dsb)
- Submit order, sistem validasi: user role = dokter, data wajib isi, duplikasi order dicek
- Order otomatis ter-routing ke antrian dashboard farmasi, lab, atau radiologi sesuai jenisnya
- Order terekam di rekam medis elektronik pasien, auto-update status kalau sudah tereksekusi di unit terkait
- Semua aktivitas (entry, edit, void/cancel) terekam audit trail dan bisa ditracking oleh auditor
Contoh Endpoints API Order (SIMRS Modern)
POST /api/v1/cpope/order
{
"no_rm": "1000123",
"visit_id": 4567,
"dokter_id": 13,
"orders": {
"obat": [
{"kode": "OBT123", "dosis": "3x500mg", "rute": "oral", "durasi": "5 hari"}
],
"lab": [
{"kode": "HB", "catatan": "segera"}
]
}
}
GET /api/v1/cpope/order?visit_id=4567
Sobat IT RS wajib pastikan: API bisa trace semua order, tampilkan di timeline EMR, statusnya up-to-date. Kalau ada void/cancel, field ReasonVoid wajib muncul.
Contoh Audit Trail Order: Query SQL Monitoring
SELECT
o.OrderID,
o.NoRM,
o.JenisOrder,
o.TanggalOrder,
u.NamaUser AS EntryBy,
o.StatusOrder,
o.TglVoid,
uv.NamaUser AS VoidBy,
o.ReasonVoid
FROM
dbo.OrderInstruksiDokter o
LEFT JOIN dbo.UserRS u ON o.UserEntry = u.UserID
LEFT JOIN dbo.UserRS uv ON o.UserVoid = uv.UserID
ORDER BY o.TanggalOrder DESC
- Pakai query ini buat daily check order activity (wajib waktu audit)
- Bisa disaring per pasien, dokter, tanggal
- Pastikan perubahan status (misal, void) tercatat lengkap
Praktik Baik: Hak Akses & Validasi User Entry
Sering kejadian, perawat atau admin “mewakili” order dokter karena alasan “dokternya sibuk”. Di akreditasi: NOPE. Dokter wajib entry sendiri. Sistem wajib enforce:
- Role check pada endpoint/order page. Boleh input order = role dokter saja
- Form order dokter: wajib login ulang (re-auth) bila idle > X menit
- Log user dan IP address input, simpan timestamp
Contoh Middleware Role Check (Node.js/Express)
function cekRoleDokter(req, res, next) {
if (req.user && req.user.role === 'dokter') {
return next();
}
return res.status(403).json({ error: 'Akses hanya untuk dokter.' });
}
Integrasi CPOPE ke Modul Farmasi, Lab, Radiologi
- Order masuk ke antrian farmasi (untuk obat), lab (untuk pemeriksaan), radiologi, dsb, tanpa input ulang
- Status order auto-update di dashboard CPOPE setelah dieksekusi unit terkait
- Notifikasi otomatis ke user & unit: push/email/WA internal (opsional, tapi nilai plus waktu audit)
Studi Kasus: Routing Order ke Farmasi
// Pseudocode
onNewOrder(order) {
if (order.jenisOrder === 'Obat') {
kirimKeFarmasi(order);
}
}
function kirimKeFarmasi(order) {
// Simpan ke tabel antrian farmasi
// Notify farmasi via dashboard/WA
}
Farmasi tinggal buka dashboard, cek order masuk, verifikasi, proses dispensing, update status order.
Antisipasi Masalah Umum di Lapangan
- Order ganda: Dokter kadang klik submit dua kali (internet lemot). Tambahkan validasi duplikasi order dalam X menit untuk pasien sama.
- Order batal: Kadang dokter batalin order, wajib minta alasan pembatalan (required field).
- Perawat input order: Hard block role selain dokter di endpoint order.
- Order tidak terkirim ke unit: Pastikan mekanisme retry/push manual kalau ada error komunikasi antar modul.
Tips Lolos Akreditasi: Demo CPOPE ke Auditor
- Siapkan user dummy role dokter untuk simulasi demo
- Step-by-step: login dokter, input order, cek list order, show audit trail, tunjukkan order masuk ke unit terkait
- Siapkan query/monitoring audit trail, print jika diminta auditor
- Pastikan ada order void/cancel di data dummy, tunjukkan jejak log/penjelasan alasan pembatalan
Ringkasan Ciri CPOPE Siap Akreditasi
- Order dokter langsung diinput oleh dokter via login SIMRS
- Order otomatis terdistribusi ke farmasi, lab, radiologi, dsb
- Semua order terekam di EMR pasien, ada audit trail lengkap
- Role check ketat: tidak bisa diinput selain dokter
- Fitur void/cancel dengan alasan (traceable)
- Monitoring/rekap order dan audit trail siap print/export
Kesalahan Fatal yang Sering Muncul
- Order via perawat/admin: langsung gagal akreditasi
- Tidak ada audit trail: auditor minta print, tim IT panik
- Order tidak otomatis ke unit: user teriak, proses lambat
- Status order tidak update/berantakan: “order tidak jalan”
- Field waktu/identitas user hilang: order tidak sah secara hukum
Checklist Implementasi CPOPE di SIMRS
- Struktur tabel order & audit trail siap
- Form order hanya tampil jika login dokter
- Order langsung terekam dan terdistribusi ke modul terkait
- Status order bisa dilihat dari dashboard/dokter/unit
- Audit trail lengkap, siap monitoring/tracking
- Data order bisa di-export/print
- Dokumentasi user (SOP, panduan) siap buat demo ke auditor
Penutup: No Kertas, No Drama — CPOPE Bukan Sekadar Fitur, Tapi Tiket Lolos Akreditasi
Sobat IT RS, jangan sampai fitur CPOPE dianggap “cukup asal jalan”. Akreditasi makin detail, regulasi makin ketat, dan user makin jeli. Invest waktu buat cek ulang workflow, audit trail, hak akses, dan integrasi antar modul. Siapkan selalu data dummy buat latihan demo dan query monitoring order. Kalau semua sudah sesuai, pas sesi audit tinggal senyum: klik-klik, show log, finish. CPOPE RME yang proper = tidur lebih nyenyak buat tim IT dan manajemen RS.
PETIRS