Jika seluruh seri ini harus diringkas menjadi satu saran, isinya: buat mapping dulu, import belakangan.
Kenapa tidak bisa langsung salin
Hampir tidak ada dua SIMRS dengan struktur data yang persis sama. Kolomnya berbeda, nilainya berbeda, atau namanya sama tetapi maksudnya berbeda. Khanza punya cara sendiri menyimpan data master, SIMGos punya aturan sendiri, dan kita yang harus menjadi jembatannya.
Satu tabel mapping per domain
Untuk setiap domain (pasien, penjamin, ruangan, wilayah, satuan obat), saya membuat tabel mapping terpisah. Bentuknya sederhana. Sebagai gambaran, untuk penjamin kira-kira seperti ini:
map_penjamin
- kode_khanza : kode asal di Khanza
- nama_khanza : nama asal
- id_simgos : ID tujuan di SIMGos (kosong jika dilewati)
- keputusan : gabung / ganti / baru / lewati
- catatan : alasan keputusan
Nama kolom di atas hanya contoh. Yang penting ada empat hal: asal, tujuan, keputusan, dan alasan.
Contoh kasus per domain
- Penjamin: nama yang tampil ke pengguna berbeda dari nama aslinya di Khanza.
- Ruangan: satu bangsal di Khanza bisa menjadi beberapa unit di SIMGos, atau sebaliknya.
- Wilayah: ejaan dan singkatan kelurahan tidak seragam.
- Satuan obat: tidak selalu ada padanan satu banding satu.
Aturan untuk duplikasi pasien
Ini yang paling menguji kehati-hatian. NIK bisa ganda, bisa juga kosong atau tidak valid. Aturan saya: hanya NIK yang valid dan sama persis yang boleh digabung. Nama yang mirip, tanggal lahir yang sama, atau NIK yang janggal tidak cukup, dan datanya dibiarkan terpisah. Dua rekam pasien yang sebenarnya orang yang sama bisa digabung belakangan. Dua orang berbeda yang terlanjur digabung hampir mustahil dipisahkan lagi.
Boleh melewatkan data
Ada data di Khanza yang memang tidak punya padanan di SIMGos. Memaksakannya hanya menghasilkan data ngawur. Lewati, catat di tabel mapping dengan alasan, dan fokus pada master inti yang dibutuhkan pendaftaran.
Manfaat sesungguhnya: bisa diaudit
Saat ada yang bertanya, “Kenapa namanya berbeda?” atau “Kenapa jumlahnya segini?”, jawabannya ada di tabel mapping: berasal dari mana, dipetakan ke mana, dan mengapa. Tidak perlu membongkar skrip satu per satu, dan tabel ini tetap berguna sebagai bukti kapan pun diperlukan.
Pelajaran ketiga: jangan tergoda menyalin semua baris sekaligus. Meluangkan waktu untuk mencocokkan data adalah cara termurah agar Anda tidak dihantui pertanyaan “kok bisa salah masuk?”.
Seri migrasi SIMGos
Enam bagian catatan migrasi data master dari SIMRS Khanza ke SIMGos 2:
- 01. Migrasi Khanza ke SIMGos: Kenapa Saya Hanya Memindahkan Data Master
- 02. Menyiapkan Server SIMGos 2: Yang Harus Beres Sebelum Data Pertama Dipindahkan
- 03. Mapping: Fondasi Migrasi yang Bisa Diaudit (artikel ini)
- 04. Memindahkan Pasien, SDM, dan Obat: Keputusan Teknis dan Alasannya
- 05. Penjamin, Ruangan, dan Farmasi: Tiga Domain yang Tidak Sesuai Dugaan
- 06. Pembersihan, Uji Akses, dan Daftar Pelajaran dari Migrasi Khanza ke SIMGos