Implementasi Arsitektur Data warehouse Implementasi Proses Transfer Data

48 Gambar 4.6 Tabel data_rekam_medis

4.2.2 Pembentukan Tabel Rekam Medis

4.2.2.1 Tabel rekam_medis

Gambar 4.7 Job rekam_medis 0.1 Pembentukan tabel rekam_medis. Langkah pembentukan tabel rekam_medis adalah sebagai berikut : 1. Membaca tabel data_rekam_medis input data_rekam_medis Gambar 4.8 Step input data_rekam_medis 49 Proses ini bertujuan untuk membaca data pada tabel data_rekam_medis dari database master_rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_master_rekam_medis. Query yang digunakan adalah “select from data_rekam_medis”. 2. Mengganti isi dari field sex tReplace_1 Gambar 4.9 Step tReplace_1 Proses ini bertujuan untuk mengganti isi dari field sex. Pada proses ini sistem akan melakukan search untuk field sex yang berisi “LK” diganti dengan “Pria” dan “PR” diganti dengan “Wanita”. 3. Membaca field dokter dari tabel data rekam_medis input dokter data_rekam_medis Gambar 4.10 Step input dokter data_rekam_medis Proses ini bertujuan untuk membaca field dokter pada tabel data_rekam_medis dari database master_rekam_medis. Koneksi menggunakan koneksi repository yaitu 50 koneksi_master_rekam_medis. Query yang digunakan adalah “select distinct dokter from data_rekam_medis”. 4. Mapping hasil dari membaca field dokter tMap_2 Gambar 4.11 Step tMap_2 Proses ini bertujuan untuk mengambil field dari proses input dokter data_rekam_medis dan menambahkan field kode_dokter. Field kode_dokter diambil dari var1 yang berisi expression Dokter +Numeric.sequences6,1,1, fungsi dari expression tersebut untuk membuat variable “Dokter” dan disambung dengan angka sekuensial, contoh : Dokter 1. 5. Mapping hasil dari tReplace_1 dan tMap_2 tMap_1 Gambar 4.12 Step tMap_1 Proses ini bertujuan untuk mengambil field yang diperlukan dari step tReplace_1 dan tMap_2. 51 Pada proses ini juga terdapat lookup antara hasil dari step tReplace_1 dan tMap_2 untuk field dokter. Proses ini juga melakukan penambahan field no, diambil dari var1 yang berisi expression Numeric.sequences7,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah no, bulan, tahun, no_rm, diagnosa, ruang, dokter, jenis_kasus, jenis_kelamin dan cara_bayar. Khusus untuk field diagnosa hanya diambil 3 huruf dari kiri StringHandling.LEFTrow5.kode_du,3. 6. Output tabel rekam_medis output rekam_medis Gambar 4.13 Step output rekam_medis Proses ini bertujuan untuk membuat output table rekam_medis di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table rekam_medis. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. Hasil dari pembentukan tabel rekam_medis seperti pada Gambar 4.14. Terdapat 10 field yaitu no, bulan, tahun, no_rm, diagnosa, ruang, dokter, jenis_kasus, jenis_kelamin dan cara_bayar. 52 Gambar 4.14 Tabel rekam_medis

4.2.3 Pembentukan Tabel Dimensi

4.2.3.1 Tabel dim_waktu

Gambar 4.15 Job dim_waktu 0.1 Pembentukan tabel dim_waktu. Langkah pembentukan tabel dim_waktu adalah sebagai berikut : 1. Membaca file excel tabel_waktu.xls input tabel_waktu Gambar 4.16 Step input table_waktu Proses ini bertujuan untuk membaca file excel tabel_waktu.xls dari folder directory. Proses ini akan membaca semua sheets pada file serta membuat baris pertama sebagai header hanya pada 53 sheets 1. Schema yang digunakan diambil dari repository yaitu tabel_waktu – metadata. 2. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.17 Step tMap_1 Proses ini bertujuan untuk mengambil field yang diperlukan. Proses ini juga melakukan penambahan field sk_waktu, diambil dari var1 yang berisi expression Numeric.sequences5,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_waktu, tahun dan bulan. 3. Output tabel dim_waktu output dim_waktu Gambar 4.18 Step output dim_waktu Proses ini bertujuan untuk membuat output table dim_waktu di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table dim_waktu. Action on table yang digunakan adalah 54 drop table if exist and create serta action on data yang digunakan adalah insert. Hasil dari pembentukan tabel rekam_medis seperti pada Gambar 4.19. Terdapat 3 field yaitu sk_waktu, tahun dan bulan. Gambar 4.19 Tabel dim_waktu

4.2.3.2 Tabel dim_pasien

Gambar 4.20 Job dim_pasien 0.1 Pembentukan tabel dim_pasien. Langkah pembentukan tabel dim_pasien adalah sebagai berikut : 1. Membaca file excel tabel_pasien.xls input tabel_pasien 55 Gambar 4.21 Step input tabel_pasien Proses ini bertujuan untuk membaca file excel tabel_pasien.xls dari folder directory. Proses ini akan membaca semua sheets pada file serta membuat baris pertama sebagai header semua sheets . Schema yang digunakan diambil dari repository yaitu tabel_pasien – metadata. 2. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.22 Step tMap_1 Proses ini bertujuan untuk mengambil field yang diperlukan. Proses ini juga melakukan penambahan field sk_pasien, diambil dari var1 yang berisi expression Numeric.sequences3,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_pasien, no_rm dan kecamatan. 56 3. Output tabel dim_pasien output dim_pasien Gambar 4.23 Step output dim_pasien Proses ini bertujuan untuk membuat output table dim_pasien di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table dim_pasien. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. Hasil dari pembentukan tabel dim_pasien seperti pada Gambar 4.24. Terdapat 3 field yaitu sk_pasien, no_rm dan kecamatan. Gambar 4.24 Tabel dim_pasien 57

4.2.3.3 Tabel dim_diagnosa

Gambar 4.25 Job dim_diagnosa 0.1 Pembentukan tabel dim_diagnosa. Langkah pembentukan tabel dim_diagnosa adalah sebagai berikut : 1. Membaca file excel tabel_diagnosa.xls input tabel_diagnosa Gambar 4.26 Step input tabel_diagnosa Proses ini bertujuan untuk membaca file excel tabel_diagnosa.xls dari folder directory . Proses ini akan membaca semua sheets pada file serta membuat baris pertama sebagai header semua sheets . Schema yang digunakan diambil dari repository yaitu tabel_diagnosa – metadata. 2. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.27 Step tMap_1 58 Proses ini bertujuan untuk mengambil field yang diperlukan. Proses ini juga melakukan penambahan field sk_diagnosa, diambil dari var1 yang berisi expression Numeric.sequences1,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_diagnosa, kode_diagnosa, kategori, sub_kategori dan diagnosa. 3. Output tabel dim_diagnosa output dim_diagnosa Gambar 4.28 Step output dim_diagnosa Proses ini bertujuan untuk membuat output table dim_diagnosa di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table dim_diagnosa. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. 59 Hasil dari pembentukan tabel dim_diagnosa seperti pada Gambar 4.29. Terdapat 5 field yaitu sk_diagnosa, kode_diagnosa, kategori, sub_kategori dan diagnosa. Gambar 4.29 Tabel dim_diagnosa

4.2.3.4 Tabel dim_ruang

Gambar 4.30 Job dim_ruang 0.1 Pembentukan tabel dim_ruang. Langkah pembentukan tabel dim_ruang adalah sebagai berikut : 1. Membaca file excel tabel_ruang.xls input tabel_ruang Gambar 4.31 Step input tabel_ruang Proses ini bertujuan untuk membaca file excel tabel_ruang.xls dari folder directory. Proses ini akan membaca semua sheets pada file serta 60 membuat baris pertama sebagai header semua sheets . Schema yang digunakan diambil dari repository yaitu tabel_ruang – metadata. 2. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.32 Step tMap_1 Proses ini bertujuan untuk mengambil field yang diperlukan. Proses ini juga melakukan penambahan field sk_ruang, diambil dari var1 yang berisi expression Numeric.sequences4,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_ruang, ruang, instalasi dan kelas. 3. Output tabel dim_ruang output dim_ruang Gambar 4.33 Step output dim_ruang Proses ini bertujuan untuk membuat output table dim_ruang di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table 61 dim_ruang. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. Hasil dari pembentukan tabel dim_ruang seperti pada Gambar 4.34. Terdapat 4 field yaitu sk_ruang, ruang, instalasi dan kelas. Gambar 4.34 Tabel dim_ruang

4.2.3.5 Tabel dim_dokter

Gambar 4.35 Job dim_dokter 0.1 Pembentukan tabel dim_dokter. Langkah pembentukan tabel dim_dokter adalah sebagai berikut : 1. Membaca tabel rekam_medis input rekam_medis 62 Gambar 4.36 Step input rekam_medis Proses ini bertujuan untuk membaca field dokter pada tabel rekam_medis dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select distinct dokter from rekam_medis”. 2. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.37 Step tMap_1 Proses ini bertujuan untuk mengambil field yang diperlukan. Proses ini juga melakukan penambahan field sk_dokter, diambil dari var1 yang berisi expression Numeric.sequences8,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_dokter dan dokter. 3. Output tabel dim_dokter output dim_dokter 63 Gambar 4.38 Step output dim_dokter Proses ini bertujuan untuk membuat output table dim_dokter di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table dim_dokter. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. Hasil dari pembentukan tabel dim_dokter seperti pada Gambar 4.39. Terdapat 2 field yaitu sk_dokter dan dokter. Gambar 4.39 Tabel dim_dokter 64

4.2.3.6 Tabel dim_jenis_kasus

Gambar 4.40 Job dim_jenis_kasus 0.1 Pembentukan tabel dim_jenis_kasus. Langkah pembentukan tabel dim_jenis_kasus adalah sebagai berikut: 1. Membaca tabel rekam_medis input rekam_medis Gambar 4.41 Step input rekam_medis Proses ini bertujuan untuk membaca field jenis_kasus pada tabel rekam_medis dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select distinct jenis_kasus from rekam_medis”. 2. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.42 Step tMap_1 65 Proses ini bertujuan untuk mengambil field yang diperlukan. Proses ini juga melakukan penambahan field sk_jenis_kasus, diambil dari var1 yang berisi expression Numeric.sequences10,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_jenis_kasus dan jenis_kasus. 3. Output tabel dim_jenis_kasus output dim_jenis_kasus Gambar 4.43 Step output dim_jenis_kasus Proses ini bertujuan untuk membuat output table dim_jenis_kasus di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table dim_jenis_kasus. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. Hasil dari pembentukan tabel dim_jenis_kasus seperti pada Gambar 4.44. Terdapat 2 field yaitu sk_jenis_kasus dan jenis_kasus. Gambar 4.44 Tabel jenis_kasus 66

4.2.3.7 Tabel dim_jenis_kelamin

Gambar 4.45 Job dim_jenis_kelamin 0.1 Pembentukan tabel dim_jenis_kelamin. Langkah pembentukan tabel dim_jenis_kelamin adalah sebagai berikut : 1. Membaca tabel rekam_medis input rekam_medis Gambar 4.46 Step input rekam_medis Proses ini bertujuan untuk membaca field jenis_kelamin pada tabel rekam_medis dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select distinct jenis_kelamin from rekam_medis”. 2. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.47 Step tMap_1 67 Proses ini bertujuan untuk mengambil field yang diperlukan. Proses ini juga melakukan penambahan field sk_jenis_kelamin, diambil dari var1 yang berisi expression Numeric.sequences9,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_jenis_kelamin dan jenis_kelamin. 3. Output tabel dim_jenis_kelamin output dim_jenis_kelamin Gambar 4.48 Step output jenis_kelamin Proses ini bertujuan untuk membuat output table dim_jenis_kelamin di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table dim_jenis_kelamin. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. Hasil dari pembentukan tabel dim_jenis_kelamin seperti pada Gambar 4.49. Terdapat 2 field yaitu sk_jenis_kelamin dan jenis_kelamin. Gambar 4.49 Tabel dim_jenis_kelamin 68

4.2.3.8 Tabel dim_cara_bayar

Gambar 4.50 Job dim_cara_bayar 0.1 Pembentukan tabel dim_cara_bayar. Langkah pembentukan tabel dim_cara_bayar adalah sebagai berikut : 1. Membaca tabel rekam_medis input rekam_medis Gambar 4.51 Step input rekam_medis Proses ini bertujuan untuk membaca field jenis_cara_bayar pada tabel rekam_medis dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select distinct cara_bayar from rekam_medis”. 2. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.52 Step tMap_1 Proses ini bertujuan untuk mengambil field yang diperlukan. Proses ini juga melakukan 69 penambahan field sk_cara_bayar, diambil dari var1 yang berisi expression Numeric.sequences11,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_cara_bayar dan cara_bayar. 3. Output tabel dim_cara_bayar output dim_cara_bayar Gambar 4.53 Step output dim_cara_bayar Proses ini bertujuan untuk membuat output table dim_cara_bayar di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table dim_cara_bayar. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. 70 Hasil dari pembentukan tabel dim_cara_bayar seperti pada Gambar 4.14. Terdapat 2 field yaitu sk_cara_bayar dan cara_bayar. Gambar 4.54 Tabel dim_cara_bayar

4.2.3.9 Tabel dim_kecamatan

Gambar 4.55 Job dim_kecamatana 0.1 Pembentukan tabel dim_kecamatan. Langkah pembentukan tabel dim_kecamatan adalah sebagai berikut : 1. Membaca tabel dim_pasien input dim_pasien Gambar 4.56 Step input dim_pasien 71 Proses ini bertujuan untuk membaca field kecamatan pada tabel dim_pasien dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select distinct kecamatan from dim_pasien”. 2. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.57 Step dim_kecamatan Proses ini bertujuan untuk mengambil field yang diperlukan. Proses ini juga melakukan penambahan field sk_kecamatan, diambil dari var1 yang berisi expression Numeric.sequences2,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_kecamatan dan kecamatan. 3. Output tabel dim_kecamatan output dim_kecamatan Gambar 4.58 Step output dim_kecamatan Proses ini bertujuan untuk membuat output table dim_kecamatan di database rekam_medis. 72 Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table dim_kecamatan. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. Hasil dari pembentukan tabel dim_kecamatan seperti pada Gambar 4.59. Terdapat 2 field yaitu sk_kecamatan dan kecamatan. Gambar 4.59 Tabel dim_kecamatan 73

4.2.4 Pembentukan Tabel Fakta fact_rekam_medis

Gambar 4.60 fact_rekam_medis Pembentukan tabel fact_rekam_medis. Langkah pembentukan tabel fact_rekam_medis adalah sebagai berikut : 1. Membaca tabel rekam_medis input rekam_medis Gambar 4.61 Step input rekam_medis Proses ini bertujuan untuk membaca tabel rekam_medis dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from rekam_medis”. 74 2. Membaca tabel dim_waktu input dim_waktu Gambar 4.62 Step input dim_waktu Proses ini bertujuan untuk membaca tabel dim_waktu dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from dim_waktu”. 3. Membaca tabel dim_pasien input dim_pasien Gambar 4.63 Step input dim_pasien Proses ini bertujuan untuk membaca tabel dim_pasien dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from dim_pasien”. 75 4. Membaca tabel dim_diagnosa input dim_diagnosa Gambar 4.64 Step input dim_diagnosa Proses ini bertujuan untuk membaca tabel dim_diagnosa dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from dim_diagnosa”. 5. Membaca tabel dim_ruang input dim_ruang Gambar 4.65 Step input dim_ruang Proses ini bertujuan untuk membaca tabel dim_ruang dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from dim_ruang”. 76 6. Membaca tabel dim_dokter input dim_dokter Gambar 4.66 Step input dim_dokter Proses ini bertujuan untuk membaca tabel dim_dokter dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from dim_dokter”. 7. Membaca tabel dim_jenis_kasus input dim_jenis_kasus Gambar 4.67 Step input dim_jenis_kasus Proses ini bertujuan untuk membaca tabel dim_jenis_kasus dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from dim_jenis_kasus”. 77 8. Membaca tabel dim_jenis_kelamin input dim_jenis_kelamin Gambar 4.68 Step input dim_jenis_kelamin Proses ini bertujuan untuk membaca tabel dim_jenis_kelamin dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from dim_jenis_kelamin”. 9. Membaca tabel dim_cara_bayar input dim_cara_bayar Gambar 4.69 Step input dim_cara_bayar Proses ini bertujuan untuk membaca tabel dim_cara_bayar dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from dim_cara_bayar”. 78 10. Membaca tabel dim_kecamatan input dim_kecamatan Gambar 4.70 Step input dim_kecamatan Proses ini bertujuan untuk membaca tabel dim_kecamatan dari database rekam_medis. Koneksi menggunakan koneksi repository yaitu koneksi_ rekam_medis. Query yang digunakan adalah “select from dim_kecamatan”. 11. Mapping untuk mendapatkan field yang dibutuhkan tMap_1 Gambar 4.71 Step tMap_1 Proses ini bertujuan untuk mengambil field yang diperlukan. Pada proses ini dilakukan lookup tabel untuk mengaitkan satu tabel dengan yang lainnya. Tabel 4.1 akan menjelaskan lookup tabel yang dilakukan. 79 Tabel 4.1 Lookup tMap_1 Field key Field lookup rekam_medis  bulan dim_waktu  bulan rekam_medis  tahun dim_waktu  tahun rekam_medis  no_rm dim_pasien  no_rm rekam_medis  diagnosa dim_diagnosa  kode_diagnosa rekam_medis  ruang dim_ruang  ruang rekam_medis  dokter dim_dokter  dokter rekam_medis  jenis_kasus dim_jenis_kasus  jenis_kasus rekam_medis  jenis_kelamin dim_jenis_kelamin  jenis_kelamin rekam_medis  cara_bayar dim_cara_baya  cara_bayar dim_pasien  kecamatan dim_kecamatan  kecamatan Proses ini juga melakukan penambahan field sk_fact_rekam_medis, diambil dari var1 yang berisi expression Numeric.sequences12,1,1, fungsi dari expression tersebut untuk membuat variable angka sekuensial. Field yang dihasilkan adalah sk_fact_rekam_medis, sk_waktu, sk_pasien, sk_diagnosa, sk_ruang, sk_dokter, sk_jenis_kasus, sk_jenis_kelamin, sk_cara_bayar dan sk_kecamatan. 12. Output tabel fact_rekam_medis output fact_rekam_medis Gambar 4.72 Step output fact_rekam_medis 80 Proses ini bertujuan untuk membuat output table fact_rekam_medis di database rekam_medis. Pada proses ini menggunakan koneksi repository yaitu koneksi_ rekam_medis dengan target table fact_rekam_medis. Action on table yang digunakan adalah drop table if exist and create serta action on data yang digunakan adalah insert. Hasil dari pembentukan tabel fact_rekam_medis seperti pada Gambar 4.72. Terdapat 10 field yaitu sk_fact_rekam_medis, sk_waktu, sk_pasien, sk_diagnosa, sk_ruang, sk_dokter, sk_jenis_kasus, sk_jenis_kelamin, sk_cara_bayar dan sk_kecamatan. Gambar 4.73 Tabel fact_rekam_medis 81

4.3 Implementasi Star Schema Untuk Database OLAP

4.3.1 Star Schema Cube_Rekam_Medis

Star Schema Cube_Rekam_Medis akan membaca data dari fact_rekam_medis di database rekam_medis. Gambar 4.74 Cube_Rekam_Medis Star Schema Cube_Rekam_Medis memiliki tabel fakta fact_rekam_medis. Dimensi yang digunakan adalah Dimensi_Waktu, Dimensi_Pasien, Dimensi_Diagnosa, Dimensi_Ruang, Dimensi_Dokter, Dimensi_Jenis_Kasus, Dimensi_Jenis_Kelamin, Dimensi_Cara_Bayar dan Dimensi_Kecamatan. Measure yang digunakan adalah Jumlah Kasus, Jumlah Pasien, Kasus Baru, Kasus Lama, Kasus Pria dan Kasus Wanita. 82 1. Dimensi_Waktu Gambar 4.75 Dimensi_Waktu Dimensi_Waktu menggunakan tabel dim_waktu dari database rekam_medis. Hierarchy yang dimiliki adalah Waktu. Level yang dimiliki adalah Tahun dan Bulan. 2. Dimensi_Pasien Gambar 4.76 Dimensi_Pasien Dimensi_Pasien menggunakan tabel dim_pasien dari database rekam_medis. Hierarchy yang dimiliki adalah Pasien. Level yang dimiliki adalah Pasien. 3. Dimensi_Diagnosa Gambar 4.77 Dimensi_Diagnosa Dimensi_Diagnosa menggunakan tabel dim_diagnosa dari database rekam_medis. Hierarchy yang dimiliki adalah 83 Diagnosa. Level yang dimiliki adalah Kategori dan Sub Kategori. 4. Dimensi_Ruang Gambar 4.78 Dimensi_Ruang Dimensi_Ruang menggunakan tabel dim_ruang dari database rekam_medis. Hierarchy yang dimiliki adalah Ruang. Level yang dimiliki adalah Instalasi, Kelas dan Ruang. 5. Dimensi_Dokter Gambar 4.79 Dimensi_Dokter Dimensi_Dokter menggunakan tabel dim_dokter dari database rekam_medis. Hierarchy yang dimiliki adalah Dokter. Level yang dimiliki adalah Dokter. 6. Dimensi_Jenis_Kasus Gambar 4.80 Dimensi_Kasus 84 Dimensi_Kasus menggunakan tabel dim_kasus dari database rekam_medis. Hierarchy yang dimiliki adalah Jenis Kasus. Level yang dimiliki adalah Jenis Kasus. 7. Dimensi_Jenis_Kelamin Gambar 4.81 Dimensi Jenis Kasus Dimensi_Jenis_Kelamin menggunakan tabel dim_jenis_kasus dari database rekam_medis. Hierarchy yang dimiliki adalah Jenis Kelamin. Level yang dimiliki adalah Jenis Kelamin. 8. Dimensi_Cara_Bayar Gambar 4.82 Dimensi_Cara_Bayar Dimensi_Cara_Bayar menggunakan tabel dim_cara_bayar dari database rekam_medis. Hierarchy yang dimiliki adalah Cara Bayar. Level yang dimiliki adalah Cara Bayar. 9. Dimensi_Kecamatan Gambar 4.83 Dimensi_Kecamatan 85 Dimensi_Kecamatan menggunakan tabel dim_kecamatan dari database rekam_medis. Hierarchy yang dimiliki adalah Kecamatan. Level yang dimiliki adalah Kecamatan.

4.3.2 Skema MDX

Berdasarkan implementasi Star Schema Cube_Rekam_Medis, maka deskripsi skema MDX adalah sebagai berikut : Tabel 4.2 Deskripsi Skema MDX Atribut MDX Nilai Atribut Tabel Database rekam_medis Cube Cube_Rekam_Medis fact_rekam_medis Measures Jumlah Kasus sk_fact_rekam_medis Jumlah Pasien sk_pasien Kasus Baru sk_jenis_kasus Kasus Lama sk_jenis_kasus Kasus Pria sk_jenis_kelamin Kasus Wanita sk_jenis_kelamin Dimension Dimensi Waktu dim_waktu Hierarchy Waktu dim_waktu.sk_waktu Level Tahun dim_Waktu.tahun Level Bulan dim_waktu.bulan Dimension Dimensi Pasien dim_pasien Hierarchy Pasien dim_pasien.sk_pasien Level Pasien dim_pasien.no_rm Dimension Dimensi Diagnosa dim_diagnosa Hierarchy Diagnosa dim_diagnosa.sk_diagnosa Level Kategori dim_diagnosa.kategori Level Sub Kategori dim_diagnosa.sub_kategori 86 Dimension Dimensi Ruang dim_ruang Hierarchy Ruang dim_ruang.sk_ruang Level Instalasi dim_ruang.instalasi Level Kelas dim_ruang.kelas Level Ruang dim_ruang.ruang Dimension Dimensi Dokter dim_dokter Hierarchy Dokter dim_dokter.sk_dokter Level Dokter dim_dokter.dokter Dimension Dimensi Jenis Kasus dim_jenis_kasus Hierarchy Jenis Kasus dim_jenis_kasus.sk_jenis_kasus Level Jenis Kasus dim_jenis_kasus.jenis_kasus Dimension Dimensi Jenis Kelamin dim_jenis_kelamin Hierarchy Jenis Kelamin dim_jenis_kelamin.sk_jenis_kelamin Level Jenis Kelamin dim_jenis_kelamin.jenis_kelamin Dimension Dimensi Cara Bayar dim_cara_bayar Hierarchy Cara Bayar dim_cara_bayar.sk_cara_bayar Level Cara Bayar dim_cara_bayar.cara_bayar Dimension Dimensi Kecamatan dim_kecamatan Hierarchy Kecamatan dim_kecamatan.sk_kecamatan Level Kecamatan dim_kecamatan.kecamatan

4.3.3 Schema_Rekam_Medis.xml

Schema dari Schema_Rekam_Medis.xml adalah sebagai berikut : Tabel 4.3 Schema_Rekam_Medis.xml Schema name=Skema Rekam Medis Dimension type=StandardDimension visible=true highCardinality=false name=Dimensi_Waktu 87 Hierarchy name=Waktu visible=true hasAll=true allMemberName=Semua Waktu primaryKey=sk_waktu Table name=dim_waktu Table Level name=Tahun visible=true column=tahun ordinalColumn=tahun type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Level name=Bulan visible=true column=bulan ordinalColumn=sk_waktu type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Hierarchy Dimension Dimension type=StandardDimension visible=true highCardinality=false name=Dimensi_Pasien Hierarchy name=Pasien visible=true hasAll=true allMemberName=Semua Pasien primaryKey=sk_pasien Table name=dim_pasien Table Level name=Pasien visible=true column=no_rm ordinalColumn=no_rm type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Hierarchy Dimension Dimension type=StandardDimension visible=true highCardinality=false name=Dimensi_Diagnosa Hierarchy name=Diagnosa visible=true hasAll=true allMemberName=Semua Diagnosa primaryKey=sk_diagnosa Table name=dim_diagnosa Table Level name=Kategori visible=true column=kategori ordinalColumn=kategori type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level 88 Level name=Sub Kategori visible=true column=sub_kategori ordinalColumn=sub_kategori type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Hierarchy Dimension Dimension type=StandardDimension visible=true highCardinality=false name=Dimensi_Ruang Hierarchy name=Ruang visible=true hasAll=true allMemberName=Semua Ruang primaryKey=sk_ruang Table name=dim_ruang Table Level name=Instalasi visible=true column=instalasi ordinalColumn=instalasi type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Level name=Kelas visible=true column=kelas ordinalColumn=kelas type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Level name=Ruang visible=true column=ruang ordinalColumn=ruang type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Hierarchy Dimension Dimension type=StandardDimension visible=true highCardinality=false name=Dimensi_Dokter Hierarchy name=Dokter visible=true hasAll=true allMemberName=Semua Dokter primaryKey=sk_dokter Table name=dim_dokter Table Level name=Dokter visible=true column=dokter ordinalColumn=dokter type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level 89 Hierarchy Dimension Dimension type=StandardDimension visible=true highCardinality=false name=Dimensi_Jenis_Kasus Hierarchy name=Jenis Kasus visible=true hasAll=true allMemberName=Semua Jenis Kasus primaryKey=sk_jenis_kasus Table name=dim_jenis_kasus Table Level name=Jenis Kasus visible=true column=jenis_kasus ordinalColumn=jenis_kasus type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Hierarchy Dimension Dimension type=StandardDimension visible=true highCardinality=false name=Dimensi_Jenis_Kelamin Hierarchy name=Jenis Kelamin visible=true hasAll=true allMemberName=Semua Jenis Kelamin primaryKey=sk_jenis_kelamin Table name=dim_jenis_kelamin Table Level name=Jenis Kelamin visible=true column=jenis_kelamin ordinalColumn=jenis_kelamin type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Hierarchy Dimension Dimension type=StandardDimension visible=true highCardinality=false name=Dimensi_Cara_Bayar Hierarchy name=Cara Bayar visible=true hasAll=true allMemberName=Semua Cara Bayar primaryKey=sk_cara_bayar Table name=dim_cara_bayar Table Level name=Cara Bayar visible=true column=cara_bayar ordinalColumn=cara_bayar type=String uniqueMembers=false levelType=Regular hideMemberIf=Never 90 Level Hierarchy Dimension Dimension type=StandardDimension visible=true highCardinality=false name=Dimensi_Kecamatan Hierarchy name=Kecamatan visible=true hasAll=true allMemberName=Semua Kecamatan primaryKey=sk_kecamatan Table name=dim_kecamatan Table Level name=Kecamatan visible=true column=kecamatan ordinalColumn=kecamatan type=String uniqueMembers=false levelType=Regular hideMemberIf=Never Level Hierarchy Dimension Cube name=Cube_Rekam_Medis visible=true cache=true enabled=true Table name=fact_rekam_medis Table DimensionUsage source=Dimensi_Waktu name=Dimensi_Waktu visible=true foreignKey=sk_waktu highCardinality=false DimensionUsage DimensionUsage source=Dimensi_Pasien name=Dimensi_Pasien visible=true foreignKey=sk_pasien highCardinality=false DimensionUsage DimensionUsage source=Dimensi_Diagnosa name=Dimensi_Diagnosa visible=true foreignKey=sk_diagnosa highCardinality=false DimensionUsage DimensionUsage source=Dimensi_Ruang name=Dimensi_Ruang visible=true foreignKey=sk_ruang highCardinality=false DimensionUsage DimensionUsage source=Dimensi_Dokter name=Dimensi_Dokter visible=true foreignKey=sk_dokter highCardinality=false DimensionUsage DimensionUsage source=Dimensi_Jenis_Kasus name=Dimensi_Jenis_Kasus visible=true foreignKey=sk_jenis_kasus 91 highCardinality=false DimensionUsage DimensionUsage source=Dimensi_Jenis_Kelamin name=Dimensi_Jenis_Kelamin visible=true foreignKey=sk_jenis_kelamin highCardinality=false DimensionUsage DimensionUsage source=Dimensi_Cara_Bayar name=Dimensi_Cara_Bayar visible=true foreignKey=sk_cara_bayar highCardinality=false DimensionUsage DimensionUsage source=Dimensi_Kecamatan name=Dimensi_Kecamatan visible=true foreignKey=sk_kecamatan highCardinality=false DimensionUsage Measure name=Jumlah Kasus column=sk_fact_rekam_medis datatype=Integer aggregator=count visible=true Measure Measure name=Jumlah Pasien column=sk_pasien datatype=Integer aggregator=distinct count visible=true Measure Measure name=Kasus Baru datatype=Integer aggregator=sum visible=true MeasureExpression SQL dialect=generic [CDATA[case when sk_jenis_kasus = 2 then 1 else 0 end]] SQL MeasureExpression Measure Measure name=Kasus Lama datatype=Integer aggregator=sum visible=true MeasureExpression SQL dialect=generic [CDATA[case when sk_jenis_kasus = 1 then 1 else 0 end]] SQL MeasureExpression 92 Measure Measure name=Kasus Pria datatype=Integer aggregator=sum visible=true MeasureExpression SQL dialect=generic [CDATA[case when sk_jenis_kelamin = 2 then 1 else 0 end]] SQL MeasureExpression Measure Measure name=Kasus Wanita datatype=Integer aggregator=sum visible=true MeasureExpression SQL dialect=generic [CDATA[case when sk_jenis_kelamin = 1 then 1 else 0 end]] SQL MeasureExpression Measure Cube Schema

4.4 Implementasi Proses Transfer Data

Proses transfer data pada OLAP dilakukan dengan cara mengeksekusi job transfer_data 0.1. Gambar 4.84 Job transfer_data 0.1 93

4.5 Implementasi Antar Muka Pengguna Sistem OLAP

4.5.1 Halaman Login

Gambar 4.85 Tampilan Halaman Login Gambar 4.85 adalah tampilan halaman Login. Proses login dilakukan dengan mengisi field username dan password kemudian memilih tombol “Login”. 94

4.5.2 Halaman Menu Utama

Gambar 4.86 Tampilan Halaman Menu Utama Gambar 4.86 adalah tampilan halaman Menu Utama. Pada halaman ini user dapat memilih OLAP view yang ingin dilihat.

4.5.3 Halaman View Diagnosa

Gambar 4.87 Tampilan Halaman View Diagnosa Gambar 4.87 adalah tampilan halaman View Diagnosa. Halaman ini menampilkan OLAP view diagnosa. Query MDX yang digunakan untuk halaman View Diagnosa adalah : 95 Tabel 4.4 Query MDX View Diagnosa select {[Measures].[Jumlah Kasus], [Measures].[Jumlah Pasien], [Measures].[Kasus Baru], [Measures].[Kasus Lama], [Measures].[Kasus Pria], [Measures].[Kasus Wanita]} ON COLUMNS, HierarchizeUnion{[Dimensi_Waktu.Waktu].[Semua Waktu], [Dimensi_Diagnosa.Diagnosa].[Semua Diagnosa]}, Crossjoin[Dimensi_Waktu.Waktu].[Semua Waktu].Children, {[Dimensi_Diagnosa.Diagnosa].[Semua Diagnosa]} ON ROWS from [Cube_Rekam_Medis]

4.5.4 Halaman View Ruang

Gambar 4.88 Tampilan Halaman View Ruang Gambar 4.88 adalah tampilan halaman View Ruang. Halaman ini menampilkan OLAP view ruang. Query MDX yang digunakan untuk halaman View Ruang adalah : Tabel 4.5 Query MDX View Ruang select {[Measures].[Jumlah Kasus], [Measures].[Jumlah Pasien], [Measures].[Kasus Baru], [Measures].[Kasus Lama], 96 [Measures].[Kasus Pria], [Measures].[Kasus Wanita]} ON COLUMNS, HierarchizeUnion{[Dimensi_Waktu.Waktu].[Semua Waktu], [Dimensi_Ruang.Ruang].[Semua Ruang]}, Crossjoin[Dimensi_Waktu.Waktu].[Semua Waktu].Children, {[Dimensi_Ruang.Ruang].[Semua Ruang]} ON ROWS from [Cube_Rekam_Medis]

4.5.5 Halaman View Cara Bayar

Gambar 4.89 Tampilan Halaman View Cara Bayar Gambar 4.89 adalah tampilan halaman View Cara Bayar. Halaman ini menampilkan OLAP view cara bayar. Query MDX yang digunakan untuk halaman View Cara Bayar adalah : Tabel 4.6 Query MDX View Cara Bayar select {[Measures].[Jumlah Kasus], [Measures].[Jumlah Pasien], [Measures].[Kasus Pria], [Measures].[Kasus Wanita]} ON COLUMNS, Crossjoin{[Dimensi_Waktu.Waktu].[Semua Waktu], [Dimensi_Waktu.Waktu].[2011], [Dimensi_Waktu.Waktu].[2012], [Dimensi_Waktu.Waktu].[2013], [Dimensi_Waktu.Waktu].[2014]}, 97 {[Dimensi_Cara_Bayar.Cara Bayar].[Semua Cara Bayar]} ON ROWS from [Cube_Rekam_Medis]

4.5.6 Halaman View Kecamatan

Gambar 4.90 Tampilan Halaman View Kecamatan Gambar 4.90 adalah tampilan halaman View Kecamatan. Halaman ini menampilkan OLAP view kecamatan. Query MDX yang digunakan untuk halaman View Kecamatan adalah : Tabel 4.7 Query MDX View Kecamatan select {[Measures].[Jumlah Kasus], [Measures].[Jumlah Pasien], [Measures].[Kasus Pria], [Measures].[Kasus Wanita]} ON COLUMNS, CrossjoinHierarchizeUnion{[Dimensi_Waktu.Waktu].[Semua Waktu]}, [Dimensi_Waktu.Waktu].[Semua Waktu].Children, {[Dimensi_Kecamatan.Kecamatan].[Semua Kecamatan]} ON ROWS from [Cube_Rekam_Medis]

Dokumen yang terkait

Action Research: Pelaporan Insiden Keselamatan Pasien di IBS RSUP Dr. Soeradji Tirtonegoro Klaten

0 3 14

GAMBARAN PROFIL PENDERITA TUBERKULOSIS PARU DI RSUP Dr SOERADJI TIRTONEGORO KLATEN Gambaran Profil Penderita Tuberkulosis Paru Di Rsup Dr Soeradji Tirtonegoro Klaten.

0 2 19

PENDAHULUAN Evaluasi Penggunaan Analgesik Pada Pasien Apendektomi Di Rsup Dr Soeradji Tirtonegoro Klaten 2014.

0 3 6

EVALUASI PENGGUNAAN ANALGESIK PADA PASIEN APENDEKTOMI DI RSUP DR SOERADJI TIRTONEGORO Evaluasi Penggunaan Analgesik Pada Pasien Apendektomi Di Rsup Dr Soeradji Tirtonegoro Klaten 2014.

2 19 12

EVALUASI PENGGUNAAN ANALGESIK PADA PASIEN APENDEKTOMI DI RSUP DR SOERADJI TIRTONEGORO Evaluasi Penggunaan Analgesik Pada Pasien Apendektomi Di Rsup Dr Soeradji Tirtonegoro Klaten 2014.

0 3 12

PENDAHULUAN Analisa Indikasi Dilakukan Persalinan Sectio Caesarea Di RSUP Dr. Soeradji Tirtonegoro Klaten.

0 1 6

HUBUNGAN ANTARA KUALITAS PELAYANAN PERAWAT DENGAN KEPUASAN PASIEN DI RSUP Dr. SOERADJI TIRTONEGORO KLATEN Hubungan Antara Kualitas Pelayanan Perawat Dengan Kepuasan Pasien Di Rsup Dr. Soeradji Tirtonegoro Klaten.

0 0 15

Kualitas Pelayanan Program Jamkesmas di RSUP Dr. Soeradji Tirtonegoro Kabupaten Klaten (Studi Deskriptif Kualitatif Pasien Jamkesmas di Ruang Rawat Inap Melati III RSUP Dr. Soeradji Tirtonegoro Kabupaten Klaten).

0 0 16

Implementasi Hiperkes Dan Kesetan Kerja Di Rsup Dr. Soeradji Tirtonegoro Klaten cover

0 0 10

ANALISIS PELAKSANAAN REKAM MEDIS BAGIAN FILING RAWAT JALAN BERDASARKAN STANDARD OPERATING PROCEDURES (SOP) REKAM MEDIS DI RSUP Dr. SOERADJI TIRTONEGORO KLATEN TAHUN 2011

0 0 9