i SISTEM INFORMASI PEMBAYARAN BIAYA PERAWATAN PASIEN YANG MENGGUNAKAN ASURANSI KESEHATAN PADA SEBUAH PERUSAHAAN (Studi Kasus : Rumah Sakit Santa Maria Pekanbaru) SKRIPSI Ditujukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika Disusun Oleh: Vinsensius Hartanto 015314077 JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2008 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
174
Embed
SISTEM INFORMASI PEMBAYARAN BIAYA PERAWATAN … · 2.3 Contoh dari E -R Diagram 12 2.4 Contoh dari Entity 12 2.5 Contoh dari Atribut 13 2.6 Contoh dari identifier atau key 14 2.7
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
i
SISTEM INFORMASI PEMBAYARAN BIAYA PERAWATANPASIEN YANG MENGGUNAKAN ASURANSI KESEHATAN
PADA SEBUAH PERUSAHAAN
(Studi Kasus : Rumah Sakit Santa Maria Pekanbaru)
SKRIPSI
Ditujukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika
Disusun Oleh:
Vinsensius Hartanto
015314077
JURUSAN TEKNIK INFORMATIKAFAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMAYOGYAKARTA
2008
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
INFORMATION SYSTEM OF THE PAYMENT OF PATIENT
CARE COST THAT USES HEALTH INSURANCE FROM
COMPANY
(Case Study : Rumah Sakit Santa Maria Pekanbaru)
A Thesis
Presented as Partial Fulfillment of the Requirements
to Obtain the Sarjana Teknik Degree
in Informatics Engineering
By :
Vinsensius Hartanto
015314077
DEPARTMENT OF INFORMATICS ENGINEERINGFACULTY OF TECHNOLOGY AND SAINS
SANATA DHARMA UNIVERSITYYOGYAKARTA
2008
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
HALAMAN MOTTO
Tak ada sesuatupun di dunia ini yang dapat menggantikan keuletan. Talenta tidak; tak
ada yang lebih umum daripada orang-orang bertalenta yang tidak sukses. Kejeniusan
tidak; kejeniusan yang sia-sia sudah hampir menjadi peribahasa. Pendidikan tidak; dunia
ini penuh dengan pecundang yang berpendidikan. Keuletan dan tekat kuat saja yang
selamanya ampuh.
Untuk bertahan hidup, bersabarlah –pasang mata, pasang telinga dan jangan banyak
omomg. Untuk menang, bersabarlah –bertahan hidup, mengatur rencana, dan
menyerang dengan cepat.
Kamu bisa mendapatkan hasil lebih banyak dengan kata-kata manis dan sepucuk senjata
daripada hanya dengan kata-kata manis.
Jangan sekali-kali menggunakan logika dan nalar untuk mengatur masalah manusia.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAN PERSEMBAHAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRAKSI
Sistem informasi pembayaran biaya perawatan pasien yang menggunakan
asuransi kesehatan dari perusahaan merupakan salah satu bagian dari system
informasi rumah sakit yang digunakan untuk membantu proses penyelesaian
tagihan perawatan pasien yang menggunakan asuransi kesehatan perusahaan.
Sistem informasi ini dibuat ditujukan khususnya bagi bagian penagihan di
rumah sakit Santa Maria Pekanbaru. Seperti halnya system informasi rumah sakit
lainnya, sistem informasi ini memberikan beberapa manfaat antara lain membantu
proses penyelesaian tagihan perawatan pasien yang menggunakan asuransi
kesehatan perusahaan, mempermudah perincian biaya asuransi kesehatan, dan
menghasilkan laporan penagihan yang akan dikirimkan bagian penagihan kepada
pihak perusahaan atau instansi. Sistem informasi ini diharapkan dapat
meningkatkan efisiensi dalam pengelolaan tarif, pembayaran dan penagihan.
Sistem ini dibuat dengan menggunakan teknologi perangkat lunak Visual
Basic.Net dengan dukungan database SQL SERVER 2000 yang diharapkan
mampu dan dapat memberikan kemudahan untuk pengembangan sistem informasi
rumah sakit yang lebih kompleks lagi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
ABSTRACT
Information system of the payment of patient care cost that uses health
insurance from company is one of the parts of the hospital information system
which is applied to help the finishing process of patient care claim that uses the
company health insurance.
This information system is created especially for the sector of claiming at
Saint Mary Hospital, Pekanbaru. Like the other information systems in many
hospitals, this information system gives some advantages such as to help the
finishing process of patient care claim that uses the company health insurance, to
facilitate the details of the health insurance cost, and to produce the report of
claiming which will be sent by the sector of claiming to the company or
institution. This information system is expected to be able to increase the
efficiency in managing the cost, payment, and claim.
This system is created by applying the technology of software Visual
Basic.Net which is supported by the database SQL Server 2000 that is expected to
be able to give facility for the development of more complex hospital information
system.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Kuasa
yang telah melimpahkan berkat-Nya sehingga penulis dapat menyelesaikan
Laporan Tugas Akhir ini. Penulisan tugas akhir ini ditujukan untuk memenuhi
salah satu syarat memperoleh gelar Sarjana Teknik Jurusan Teknik Informatika.
Terselesaikannya penulisan tugas akhir ini tidak lepas dari peran serta
beberapa pihak, baik secara langsung maupun secara tidak langsung. Oleh karena
itu, penulis ingin menyampaikan terima kasih kepada pihak-pihak yang telah ikut
membantu dalam penulisan tugas akhir ini, baik dalam memberikan bimbingan,
petunjuk, kerjasama, kritikan, maupun saran, antara lain kepada:
1. Bapak Albertus Agung Hadhiatma, S.T., M.T., selaku Dosen Pembimbing ,
yang telah banyak membantu dalam memberikan bimbingan, dukungan,
terutama atas pengertian dan kebijaksanaannya kepada penulis sehingga
penulis dapat menyelesaikan tugas akhir ini.
2. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Jurusan Teknik
Informatika Universitas Sanata Dharma.
3. Seluruh Dosen Universitas Sanata Dharma, khususnya Dosen yang mengajar
di Teknik Informatika, yang telah memberikan dan mengajarkan banyak ilmu
kepada penulis.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
4. Kepada Bapak dan Ibu yang telah dengan sabar memberikan kesempatan yang
tiada batasnya dan doa yang tiada hentinya. Terima kasih atas semua perhatian
dan kasih sayang yang tidak ternilai.
5. My Little Sister, Vinsensia Harsanty yang telah dengan ikhlas
menyumbangkan dana nya demi kelangsungan hidup penulis.
DAFTAR PUSTAKA ....................................................................................... 151
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xix
DAFTAR GAMBAR
Gambar Keterangan Halaman
2.1 Simbol Use Case 11
2.2 Simbol Aktor 11
2.3 Contoh dari E-R Diagram 12
2.4 Contoh dari Entity 12
2.5 Contoh dari Atribut 13
2.6 Contoh dari identifier atau key 14
2.7 Contoh dari Relasi 14
2.8 Notasi dari Cardinality 15
2.9 Simbol Proses menurut Gane dan Sarson 16
2.10 Simbol dari arus data 16
2.11 Simbol kesatuan luar menurut Gane dan Sarson 17
2.12 Simbol penyimpanan data menurut Gane dan Sarson 17
3.1 Use Case Admin 46
3.2 Use Case Kasir 47
3.3 Use Case Penagihan 47
3.4 Entity Relational Model 48
3.5 Context Diagram 49
3.6 Diagram Berjenjang bagian 1 50
3.7 Diagram Berjenjang bagian 2 51
3.8 Diagram Berjenjang bagian 3 52
3.9 Overview Diagram 53
3.10 DFD Level 1 Proses 1 54
3.11 DFD Level 1 Proses 2 55
3.12 DFD Level 1 Proses 2.2 56
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xx
3.13 DFD Level 2 Proses 1.2 56
3.14 DFD Level 2 Proses 1.4 57
3.15 DFD Level 2 Proses 1.6 57
3.16 DFD Level 2 Proses 1.8 58
3.17 DFD Level 2 Proses 1.10 58
3.19 DFD Level 2 Proses 1.14 59
3.20 DFD Level 2 Proses 1.16 60
3.21 DFD Level 2 Proses 2.4 60
3.22 DFD Level 2 Proses 3.2 61
3.23 Relasi Antar Tabel 64
3.24 Desain Splash Screen 70
3.25 Desain Menu Form Utama 70
3.26 Desain Form Login 71
3.27 Desain Form Data User 71
3.28 Desain Form Data Perusahaan 72
3.29 Desain Form Pasien 72
3.30 Desain Form Biaya Pasien Pasien 73
3.31 Desain Form Data Pembayaran Pasien Rawat Jalan 74
3.32 Desain Form Data Penagihan Biaya Pasien 75
3.33 Desain Form Data Dokter 75
3.34 Desain Form Poliklinik 76
4.1 User Interface untuk Splash Screen 79
4.2 User Interface untuk Welcome Screen 81
4.3 User Interface Proses Login 82
4.4 Kotak Pesan Konfirmasi Data Tidak Lengkap 86
4.5 Kotak Pesan Konfirmasi Data Tidak Terdaftar 86
4.6 Kotak pesan Konfirmasi Akses Ditolak 87
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xxi
4.7 Halaman Utama Administrator 88
4.8 Halaman Detail Data User 93
4.9 Halaman Data User 99
4.10 Halaman Detail Data Perusahaan 104
4.11 Halaman Data Perusahaan 105
4.12 Halaman Detail Data Pasien 107
4.13 Halaman Data Pasien 109
4.14 Halaman Detail Biaya Pasien 112
4.15 Halaman Biaya Pasien Rawat Jalan 113
4.16 Halaman Detail Pembayaran Pasien Rawat Jalan 117
4.17 Halaman Data Pembayaran Pasien Rawat Jalan 118
4.18 Halaman Detail Penagihan Pasien Rawat Jalan 124
4.19 Halaman Data Penagihan Pasien Rawat Jalan 125
4.20 Halaman Detail Data Dokter 127
4.21 Halaman Pengelolaan Dokter 128
4.22 Halaman Detail Poliklinik 129
4.23 Halaman Pengelolaan Poliklinik 130
4.24 Laporan User 133
4.25 Laporan Perusahaan 133
4.26 Laporan Pasien Rawat Jalan 134
4.27 Laporan Biaya Pasien Rawat Jalan 134
4.28 Laporan Pembayaran Pasien Rawat Jalan 135
4.29 Laporan Penagihan Pasien Rawat Jalan 135
4.30 Laporan Dokter 136
4.31 Laporan Poliklinik 136
4.32 Halaman Utama Kasir 138
4.33 Halaman Utama Penagihan 140
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xxii
DAFTAR TABEL
Tabel Keterangan Halaman
2.1 Namespace Database dalam .NET Framework 19
2.2 Objek –objek Kontrol dalam Visual Basic.Net 20
2.3 Fitur Akses Database ADO.NET 22
3.1 Tabel Entity, Input, Output 62
3.2 Tabel User1 65
3.3 Tabel Role 65
3.4 Tabel Poliklinik 65
3.5 Tabel Perusahaan 66
3.6 Tabel Pembayaran 67
3.7 Tabel Pasien 68
3.8 Tabel Dokter 69
3.9 Tabel Biaya 69
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Pesatnya perkembangan teknologi informasi saat ini memberikan dampak
positif bagi dunia usaha dan masyarakat luas. Salah satu implementasinya yaitu
pada sistem informasi rumah sakit yang difokuskan sebagai sarana untuk
meningkatkan dan merampingkan proses pelayanan di rumah sakit.
Rumah Sakit Santa Maria Pekanbaru merupakan instansi yang bergerak di
bidang pelayanan kesehatan bagi masyarakat luas. Kompleksitas operasional
rumah sakit kerap kali menimbulkan masalah-masalah yang berakibat pada
penurunan kualitas dan efisiensi pelayanan rumah sakit. Salah satu masalah yang
dialami adalah kurangnya efisiensi pada sistem administrasi dan keuangan pada
bagian proses penyelesaian tagihan perawatan khususnya tagihan perawatan yang
menggunakan restitusi kesehatan. Hal ini disebabkan banyaknya perusahaan dan
instansi yang bekerjasama dengan pihak rumah sakit dalam memberikan
tunjangan kesehatan dalam bentuk asuransi kesehatan kepada karyawannya.
Untuk mengatasi masalah ini, maka salah satu alternatif yang dapat
dilakukan adalah menyediakan suatu sistem informasi pembayaran biaya
perawatan pasien yang menggunakan asuransi kesehatan dari perusahaan atau
instansi. Sistem informasi tersebut merupakan salah satu bagian dari sistem
informasi rumah sakit yang digunakan untuk membantu proses penyelesaian
tagihan perawatan pasien yang menggunakan asuransi kesehatan perusahaan,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
mempermudah perincian biaya asuransi kesehatan, dan menghasilkan laporan
penagihan yang akan dikirimkan bagian penagihan kepada pihak perusahaan atau
instansi. Sistem informasi ini diharapkan dapat meningkatkan efisiensi dalam
pengelolaan tarif, pembayaran dan penagihan.
1.2 Batasan Masalah
Agar perancangan ini dapat dilakukan secara tepat maka dilakukan
pembatasan cakupan sistem yang meliputi:
1. Studi kasus yang dipilih adalah Rumah Sakit Santa Maria Pekanbaru.
2. Sistem Informasi hanya dibuat bagi instansi, perusahaan atau lembaga
yang sudah tercatat memiliki kontrak kerja dengan pihak Rumah Sakit
Santa Maria Pekanbaru.
3. Sistem Informasi ini hanya menangani pembayaran biaya perawatan yang
menggunakan jasa asuransi kesehatan perusahaan pada pasien rawat jalan
saja.
4. Sistem Informasi ini tidak membahas perhitungan akuntasi biaya
perawatan yang dibayarkan secara tunai.
5. Sistem Informasi ini tidak membahas proses dan cara pembayaran tagihan
oleh instansi, perusahaan atau lembaga yang sudah tercatat memiliki
kontrak kerja dengan pihak rumah sakit.
6. Sistem Informasi yang dibuat meliputi perincian dan total biaya asuransi
kesehatan perusahaan, dan pembuatan laporan penagihan untuk bagian
penagihan yang digunakan untuk
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
7. proses penagihan biaya ke instansi, perusahaan atau lembaga yang sudah
tercatat memiliki kontrak kerja dengan pihak rumah sakit.
8. Sistem Informasi ini tidak membahas rekam medis.
9. Sistem Informasi ini tidak membahas keamanan jaringan.
10. Sistem Informasi ini dibuat dengan menggunakan perangkat lunak Visual
Basic.Net untuk user interface-nya dan SQL SERVER 2000 sebagai basis
data sistemnya.
1.3 Tujuan Dan Manfaat Penelitian
Tujuan penelitian yang dilakukan adalah untuk membangun suatu aplikasi
Sistem Informasi Pembayaran Biaya Perawatan Rumah Sakit yang dapat
membantu proses penyelesain tagihan, perincian biaya tagihan, dan pembuatan
laporan tagihan biaya perawatan pasien yang melakukan pembayaran dengan
menggunakan asuransi kesehatan perusahaan. Sistem Informasi ini diharapkan
dapat memberikan informasi biaya perawatan pasien yang menggunakan asuransi
kesehatan perusahaan untuk bagian penagihan. Sistem informasi yang akan dibuat
ini meggunakan bahasa pemrograman Visual Basic.Net dan database SQL Server
2000.
1.4 Rumusan Masalah
Sistem informasi ini diimplementasikan untuk membantu beberapa proses
dalam penyelesaian tagihan pembayaran biaya pasien rawat jalan yang
menggunakan asuransi kesehatan perusahaan antara lain:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
1. Membantu proses perhitungan biaya tagihan biaya perawatan pasien rawat
jalan khususnya yang menggunakan asuransi kesehatan perusahaan.
2. Sistem informasi ini mempermudah perincian biaya yang akan ditagihkan
ke instansi, perusahaan, dan lembaga.
3. Sistem informasi ini menghasilkan keluaran berupa detail laporan biaya
keseluruhan perawatan pasien rawat jalan berupa biaya yang harus
ditanggung pasien dan biaya yang akan ditanggung oleh instansi,
perusahaan,lembaga.
1.5 Metodologi Penelitian
Metodologi Penelitian yang digunakan untuk membuat aplikasi Sistem
Informasi Pembayaran Biaya Rumah Sakit yang Menggunakan Asuransi
Kesehatan dengan Suatu Perusahaan adalah metodologi terstruktur pada tahap
analisis dan perancangan sistem. Sedangkan untuk tahap implementasinya
menggunakan pemrograman berorientasi objek. Adapun alat-alat dan teknik yang
digunakan dalam penelitian ini adalah:
1. Observasi
Yaitu pengamatan pada objek dan kegiatan secara langsung dilapangan
sehingga diperoleh kebenaran data.
2. Wawancara
Melakukan wawancara dengan pihak yang bersangkutan dalam hal ini bagian
administrasi dan keuangan rumah sakit Santa Maria, Pekanbaru.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
3. Studi Literatur
Mengumpulkan data dan informasi dari buku-buku, laporan-laporan ,
dokumen, karya ilmiah dan makalah yang dapat dijadikan sebagai bahan
masukkan atau informasi yang berkaitan dengan topik.
4. Analisis
Menggunakan use case diagram, diagram arus data ( DFD ) dan diagram relasi
entitas ( ERD ) dalam perancangan sistem.
5. Penulisan Program
Translasi disain yang lebih detail yaitu dengan penulisan program sesuai
dengan disain yang telah dibuat dengan menggunakan pemrograman
berorientasi objek.
6. Implementasi Perancangan
Melakukan pengimplementasian program untuk menguji program berjalan
dengan baik atau terjadi kekurangan.
1.6 Sistematika Penulisan
BAB I PENDAHULUAN
Pada Bab ini berisi tentang latar belakang masalah, rumusan masalah,
batasan masalah, tujuan dan manfaat penelitian, dan metodologi penelitian
yang digunakan serta sistematika isi penulisan laporan.
BAB II LANDASAN TEORI
Pada bab ini berisi tentang dasar teori yang akan digunakan untuk
pembahasan dalam penulisan skripsi ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
BAB III ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini berisi tentang cara penerapan konsep dasar yang telah
diuraikan pada bab sebelumnya untuk menganalisa dan merancang sebuah
aplikasi sistem informasi rumah sakit yang baik berupa perancangan database,
perancangan input, perancangan output maupun perancangan user interface.
BAB IV IMPLEMENTASI SISTEM
Pada bab ini akan berisi tentang implementasi dari perancangan yang
telah dibuat yang meliputi cara kerja program yaitu berupa hasil input program
maupun hasil output program.
BAB V ANALISA HASIL
Pada bab ini berisi tentang kelebihan dan kekurangan pada sistem yang
telah dibuat.
BAB VI KESIMPULAN DAN SARAN
Pada bab ini berisi tentang kesimpulan dan saran dari penulisan tugas
akhir yang disusun
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
BAB II
LANDASAN TEORI
2.1 Sistem
2.1.1 Konsep Dasar Sistem
Sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk
mencapai suatu tujuan tertentu (Jogiyanto, 1999). Sebuah perusahaan juga
merupakan suatu sistem. Komponen atau unsur-unsur di dalamnya seperti
pemasaran,penjualan, penelitian, pembukuan, dan personalia yang mana
semuanya bekerja sama untuk mencapai keuntungan baik bagi para pekerjanya
maupun bagi pemilik perusahaan.
2.1.2 Karakteristik Sistem
Suatu sistem mempunyai karakteristik atau sifat-sifat tertentu, yaitu
mempunyai komponen-komponen(components), batas sistem (boundary),
lingkungan luar sistem (environment), penghubung (interface), masukkan (input),
keluaran (output), pengolah (proses) dan sasaran (objectives) atau tujuan (goal).
1. Komponen Sistem
Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi,
yang artinya saling bekerja sama membentuk satu kesatuan. Komponen-
komponen sistem atau elemen-elemen sistem dapat berupa suatu subsistem
atau bagian-bagian dari sistem.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
2. Batas sistem
Batas sistem (boundary) merupakan daerah yang membatasi antara suatu
sistem dengan sistem yang lainnya atau dengan lingkungan luarnya. Batas
sistem itu memungkinkan suatu sistem dipandang sebagai satu kesatuan.
Batas suatu sistem menunjukkan ruang lingkup (scope) dari sistem
tersebut.
3. Lingkungan Luar Sistem
Lingkungan luar (environment) dari suatu sistem adalah apapun diluar
batas dari sistem yang mempengaruhi operasi sistem.
a. Penghubung Sistem.
Penghubung (interface) merupakan media penghubung antara satu
subsistem dengan subsistem lainnya. Melalui penghubung ini
memungkinkan sumber-sumber daya mengalir dari satu subsistem
ke subsistem lainnya.
b. Masukkan Sistem
Masukan (input) adalah energi yang dimasukkan ke dalam sistem.
Masukan dapat berupa masukan perawatan (maintenance input)
dan masukan sinyal (signal input) agar sistem tersebut dapat
beroperasi.
c. Keluaran Sistem
Keluaran (output) adalah hasil dari energi yang diolah dan
diklasifikasikan menjadi keluaran yang berguna. Keluaran dapat
merupakan masukan untuk subsistem yang lain.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
d. Pengolah Sistem
Bagian pengolah sistem ini merupakan bagian yang akan merubah
masukkan menjadi keluaran.
e. Sasaran Sistem
Suatu sistem pasti mempunyai tujuan (goal) atau sasaran
(objective). Jika suatu sistem tidak mempunyai sasaran, maka
operasi sistem tidak akan ada gunanya. Sasaran dari sistem sangat
menentukan sekali masukan yang dibutuhkan sistem dan keluaran
yang akan dihasilkan sistem. Sistem dikatakan berhasil bila
mengenai sasaran atau tujuannya.
2.2 Informasi
2.2.1 Konsep Dasar Informasi
Informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan
lebih berarti bagi yang menerimanya (Jogiyanto, 1999).
2.2.2 Siklus Informasi
Data yang diolah melalui suatu model menjadi informasi, penerima
kemudian menerima informasi tersebut, membuat suatu keputusan dan melakukan
tindakan, yang berarti menghasilkan suatu tindakan lain yang akan membuat
sejumlah data kembali. Data tersebut akan ditangkap sebagai input, diproses
kembali lewat suatu model dan seterusnya membentuk suatu siklus. Siklus ini
disebut dengan siklus informasi (information cycle). Siklus ini juga disebut
dengan siklus pengolahan data (data processing cycles).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
2.2.3 Kualitas Informasi
Kualitas dari suatu informasi (quality of information) tergantung dari tiga
hal antara lain :
Akurat yang berarti informasi harus bebas dari kesalahan-kesalahan
dan tidak menyesatkan dan juga harus jelas mencerminkan maksudnya.
Tepat pada waktunya, berarti informasi yang datang pada penerima
tidak boleh terlambat. Karena informasi merupakan landasan di dalam
pengambilan keputusan.
Relevan, berarti informasi tersebut mempunyai manfaat untuk
pemakainya.
2.2.4. Nilai Informasi
Informasi dikatakan bernilai bila manfaatnya lebih efektif dibandingkan
dengan biaya mendapatkannya.
2.3 Sistem Informasi
Sistem informasi adalah suatu sistem di dalam suatu organisasi yang
mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi,
bersifat managerial dan kegiatan startegi dari suatu organisasi dan menyediakan
pihak luar tertentu dengan laporan-laporan yang diperlukan (Robert A Leitch/K.
Roscoe Davis, 1983).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
2.4 Metodologi Pengembangan Sistem
2.4.1 Use Case Diagram
Use case diagram adalah sebuah diagram yang menggambarkan interaksi
antara sistem dan eksternal sistem dan pemakai. Use case merupakan bagian dari
keseluruhan sistem. Digambarkan secara grafik dengan elips yang horizontal
dengan nama dari use case tertera diatas, dibawah atau di dalam ellips. Gambar
2.1 merupakan simbol use case :
Gambar 2.1. Simbol Use Case
Actor merupakan segala sesuatu yang dibutuhkan untuk berinteraksi
dengan sistem untuk mengubah informasi. Dapat berupa orang, organisasi atau
sistem informasi yang lain atau juga suatu waktu kejadian.
Gambar 2.2 merupakan simbol dari actor :
Gambar 2.2. Simbol Aktor
Use case depends on relationship merupakan sebuah relasi use case yang
menentukan bahwa use case yang lain harus dibuat sebelum use case yang
sekarang. Digambarkan sebagai anak panah yang dimulai dari satu use case dan
Simbol Use case
Simbol Actor
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
menunjuk ke use case yang depend on kepadanya. Setiap relasi depend on diberi
label “<<depend on>>”
2.4.2 ERD (Entity Relationship Diagram)
ERD merupakan sebuah data model yang memanfaatkan beberapa notasi
untuk menggambarkan data dalam entity dan relasi yang dijelaskan oleh data.
Data model adalah sebuah teknik untuk mengorganisasikan dan
mendokumentasikan data dari sistem. Juga disebut dengan database modeling.
Gambar 2.3 merupakan contoh E-R diagram
Gambar 2.3. Contoh dari E-R Diagram
Entity adalah sebuah kumpulan dari orang, tempat, objek, kejadian atau
konsep yang diperlukan untuk menyimpan data. Nama entity berupa kata benda
tunggal (singular noun). Gambar 2.4 merupakan contoh dari entity student
Gambar 2.4 Contoh dari Entity
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
Atribut merupakan sebuah properti yang deskriptif atau karakteristik dari
sebuah entity. Sinonimnya adalah element, property, dan field.
Gambar 2.5 merupakan contoh dari atribut student
Gambar 2.5 Contoh dari Atribut
Key adalah sebuah atribut atau kelompok atribut yang diasumsikan
memiliki nilai yang unik untuk setiap instance. Sering juga disebut dengan
identifier.
1. Concatenated key merupakan sekelompok atribut yang memiliki
identitas instance dari sebuah entity yang unik Sinonimnya composite
key dan compound key.
2. Candidate key merupakan satu dari nilai key yang akan berfungsi
sebagai primary key dari sebuah entity. Sinonimnya adalah candidate
identifier
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
3. Primary key merupakan sebuah candidate key yang paling umum
digunakan untuk mengidentifikasikan secara unik instance dari entity
yang tunggal.
4. Alternate key merupakan sebuah candidate key yang tidak dapat dipilih
untuk menjadi primary key. Sinonimnya adalah secondary key.
Gambar 2.6 merupakan contoh dari identifier atau key
Gambar 2.6. Contoh dari identifier atau key
Relationship adalah sebuah asosiasi bisnis normal yang ada antara satu
atau lebih entity. Relasi mungkin juga mewakili suatu kejadian yang
menghubungkan antara entity atau logika gabungan antara entity. Gambar 2.7
merupakan contoh dari relasi
Gambar 2.7. Contoh dari Relasi
Student CurriculumIs being studied by is enrolled in
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
Cardinality merupakan minimum dan maksimum kejadian dari sebuah
entity yang dihubungkan dengan kejadian tunggal dari entity yang lain. Karena
seluruh relasi adalah bidirectional maka cardinality haru didefinisikan pada kedua
direction untuk setiap relasi. Gambar 2.8 merupakan notasi dari cardinality.
Gambar 2.8. Notasi dari Cardinality
Foreign key adalah sebuah primary key dari sebuah entity yang digunakan
oleh entity yang lain untuk mengidentifikasikan instance dari sebuah relasi.
Nonspecific relationship merupakan relasi dimana banyak instance dari
sebuah entity berasosiasi dengan banyak instance dari entity yang lainnya. Disebut
juga dengan relasi many-to-many relationship. Nonspecific relationship harus
diselesaikan. Kebanyakan dari nonspecific relationship diselesaikan dengan
sebuah associative entity.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
Key-base data model bertujuan untuk mengeliminasikan nonspecific
relationship jika ada, menambah asosiatif entity termasuk primary dan alternate
key, dan kardinalitas yang tepat.
Fully attributed data model bertujuan untuk memasukkan seluruh atribut.
2.4.3 DFD (Data Flow Diagram)
Data Flow Diagram merupakan sebuah model proses yang digunakan
untuk mengambarkan aliran dari data yang melalui sebuah sistem dan proses yang
dibentuk oleh sistem.
DFD terdiri dari 4 buah simbol yaitu :
1. Proses (Process)
Proses adalah kerja yang dilakukan oleh sistem dalam merespon arus data
yang datang atau suatu kondisi.
Gambar 2.9 merupakan simbol proses menurut Gane dan Sarson :
Gambar 2.9 Simbol Proses menurut Gane dan Sarson
2. Arus data (Data Flow)
Arus data adalah data sebagai masukan ke proses atau keluaran dari
sebuah proses.
Gambar 2.10 merupakan simbol dari arus data :
Gambar 2.10 Simbol dari arus data
Nama Proses
Nama Arus Data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
Arus data juga digunakan untuk mewakili creation, reading, deleting, atau
updating dari data dalam file atau database (disebut datastore atau
penyimpanan data).
3. Kesatuan Luar (External Agent).
Kesatuan luar adalah orang, unit organisasi, sistem atau organisasi luar
yang berinteraksi dengan sistem. Disebut juga dengan external entity.
Gambar 2.11 merupakan simbol kesatuan luar menurut Gane dan Sarson :
Gambar 2.11 Simbol kesatuan luar menurut Gane dan Sarson
4. Penyimpanan data (Data Store)
Penyimpanan data digunakan untuk menyimpan data hasil proses maupun
menyediakan data untuk diproses. Sinonim dengan file dan database.
Gambar 2.12 merupakan simbol penyimpanan data menurut Gane dan
Sarson
Gambar 2.12 Simbol penyimpanan data menurut Gane dan Sarson
2.5 .NET Framework Dan Visual Basic.Net
2.5.1 .NET Framework
.NET Framework adalah lingkungan untuk membangun,
deploying/menyebarkan dan menjalankan services Web dan aplikasi lainnya (Drs.
Ario Suryo Kusumo, 2004).
Namakesatuan
luar
Penyimpanan data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
.NET Framework disusun oleh dua komponen utama, yaitu Common
Language Runtime (runtime bahasa umum) dan .NET Framework Class Library.
Secara sederhana .NET Framework adalah platform tunggal di mana
semua orang dapat mengembankan aplikasi menggunakan suatu system yang
mirip dengan JVM (Java Virtual Machine). Hanya berbeda dengan Java, tidak ada
penghalang bahasa dengan Dot NET sehingga aplikasi dapat
dikembangkanmenggunakan bahasa : VB, C++, C#, J# dan 20 bahasa-bahasa
pemrograman lainnya yang kompatibel dengan Dot NET Framework.
Tujuan dari .NET Framework adalah :
1. Menyediakan lingkungan pemrograman berorientasi objek, apakah kode
objek disimpan dan dijalankan secara local, dijalankan secara local tetapi
disebarkan melalui internet atau dijalankan secara remote (dijalankan dari
suatu tempat).
2. Menyediakan lingkungan untuk menjalan suatu kode yang meminimalkan
konflik saat software deployment/disebarkan dan versioning/tentang versi.
3. Menyediakan lingkungan untuk menjalankan suatu kode yang menjamin
keamanan saat kode dijalankan, termasuk kode yang dibuat oleh pihak
yang tidak diketahui atau pihak ketiga yang setengah dipercaya.
4. Menyediakan lingkungan untuk menjalankan suatu kode yang dapat
mengeliminasi masalah performa dari lingkungan scripted dan interpreted.
5. Membuat pengembang memiliki pengalaman yang konsisten dalam
berbagai tipe aplikasi seperti aplikasi berbasi Windows dan aplikasi
berbasis Web.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
Tabel 2.1 merupakan namespace database dalam .NET Framework
Namespace Keterangan
System.Data
Merupakan namespace dasar baginamespace lainnya. Berisi class untukmenangani objek utama sepertiDataTable, DataColumn, DataView,dan constraint.
System.Data.Common Berisi kumpulan class yang digunakanuntuk mengakses sumber data
System.Data.OleDb
Class yang menangani .NET dataprovider untuk sumber data OLE DBatau yang kompatibel. Class dapatdigunakan untuk melakukan koneksi kedata sumber OLE DB, menjalankancommand ke sumber data dan melihathasilnya.
System.Data.SqlClient
Class yang menangani .NET dataprovider untuk sumber data SQLServer. Class dapat digunakan untukmelakukan koneksi ke data sumberSQL Server, menjalankan command kesumber data dan melihat hasilnya.
System.Data.SqlTypes Menyediakan class untuk tipe datanative dalam SQL Server.
System.Data.OdbcMenyediakan class untuk bekerja samadengan berbagai macam driver ODBC(Open DabaBase Connectivity).
Tabel 2.1 Namespace database dalam .NET Framework
2.5.2 Visual Basic.Net
Pengembangan aplikasi Visual Basic.Net menggunakan software Visual
Studio.Net. Visual Studio.Net menyediakan lingkungan yang disebut IDE
(Integrated Development Environment) untuk menyederhanakan proses
pengembangan aplikasi.
IDE ini menyediakan tool untuk mendesain, mengekesekusi dan men-
debug (mencari kesalahan program) aplikasi yang dibuat.
Untuk mengakses database, Visual Basic.Net menggunakan ADO.Net.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
2.5.2.1 Objek-objek Kontrol Visual Basic.Net
Tabel 2.2 merupakan tabel objek-objek control Visual Basic.Net
Fungsi Nama Penjelasan
Menampilkan teks(read only)
Label Menampilkan teks tetapi pemakaitidak dapat mengubahnya secaralangsung
LinkLabel Menampilkan teks dengan modellink web dan akan memicu suatuevent/kejadian ketika pemakaimengkliknya. Teks di-link kejendela lain atau situs web.
StatusBar Terletak di bagian bawah forminduk dan berisi informasi tentangkeadaan aplikasi sekarang.Informasi ditampilkan dalanjendela yang memiliki frame/panel
Edit teks
TextBox Menampilkan teks yang dapatdiedit oleh pemakai pada saatprogram dijalankan atau diubaholeh program
RichTextBox Menampilkan teks dengan formatplain text atau rich-text format(RTF)
Memilih dari suatudaftar
ListBox Menampilkan daftar teks dan itemgambar (icon)
CheckedListBox Menampilkan daftar item yangdapat digulung, masing-masingitem disertai dengan kotak cek
ComboBox Menampilkan dafta drop-down dariitem
ListView Menampilkan item dengan satu diantara empat cara: Tampilan tekssaja, teks dengan icon kecil, teksdengan icon besar dan tampilanreport
Menangani gambar
PictureBox Menampilkan file gambarImageList Berfungsi sebagai tempat
penyimpanan gambar. KontrolImageList dan gambar yang ada didalamnya dapat digunakan padalebih dari satu objek
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
Mengatur tanggaldan waktu
DateTimePicker Menampilkan kalender secaragrafikal dan pemakai dapatmemilih tanggal atau jam
MonthCalender Menampilkan kalender secaragrafikal pemakai dapat memilihrange tanggal
Timer Untuk mengeksekusi waktukejadian pada rutin programtermasuk interval (selang waktu)
Membuat menu
MainMenu Menyediakan antarmuka untukmendesain menu secara langsung
ContextMenu Menampilkan menu popup ketikapemakai mengklik mouse kananpada suatu objek
Command
Button Digunakan untuk memulai,menghentikan atau menginterupsisuatu proses
ToolBar Berisi kumpulan kontrol tombol
Bantu
GroupBox Mengelompokkan kumpulancontrol (seperti radio button), bisadiberi label judul dan frame yangtidak dapat digulung.
HelpProvider Menggabungkan help HTMLdengan aplikasi Windows
Tooltip Menampilkan teks ketika pemakaimenunjuk pada suatu control
ErrorProvider Menampilkan informasi kesalahanpemakai
PrintPreviewControl Menampilkan dokumen bagaimanaakan terlihat ketika dicetak
Mengatur print danreport
PrintDocument Mengatur property mencetak danmencetak dokumen dalam aplikasiWindows
CrystalReportViewer Menampilkan jendela bagaimanatampilan objek Crystal Reportterlihat ketika dicetak
Menampilkan data DataGrid Menampilkan data secara tabulardari suatu dataset
Tabel 2.2 Objek-objek Kontrol dalam Visual Basic.Net
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
2.5.2.2 ADO.NET
ADO.NET (Active X Data Objects untuk .NET Framework) adalah
kumpulan class yang berisi komponen untuk melakukan koneksi, akses dan
manipulasi database.
Tabel 2.3 berikut berisi fitur akses data ADO.NET :
Fitur Keterangan
Representasi data dalam memoriMenggunakan objek DataSet yangdapat berisi satu atau lebih table yangmewakili objek DataTable
Relasi di antara banyak tabel
Adanya objek DataRelation untukmenghubungkan baris dalam sebuahobjek DataTable dengan baris dalamobjek DataTable lainnya.
Navigasi data
DataSet menggunakan akses non-sequential ke baris dalam table. Aksesdata tersebut mirip akses data padasuatu collection atau array. Hal inidimungkinkan karena adanya collectionRows dari DataTable yang digunakanuntuk mengakses baris melalui index,mengikuti relasi untuk navigasi daribaris dalam suatu tabel yangberhubungan dengan baris pada tabellainnya.
Koneksi Database
Menggunakan class Data Adapter,kemudian Data Adapter akanmelakukan pemanggilan ke providerOLEDB atau SQL Server
Skabilitas
ADO.NET menggunakan modelkoneksi disconnected database, artinyahanya sekali mengirim data daridatabase, setelah itu koneksinya akanputus. Dengan demikian koneksi tidakakan memakan sumber system sehinggaakan mengurangi jumlah koneksi yangaktif. Juga akan mempermudah transferdata dari satu komponen ke lainnya
Tabel 2.3 Fitur Akses Database ADO.NET
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
Untuk memberikan dukungan terhadap model koneksi disconnected, pada
komponen ADO.NET dipisahkan antara akses data dari manipulasi data.
Pemisahan ini terlihat dari dua komponen utam ADO.NET yaitu NET Data
Provider dan Data Storage.
Ada empat objek utama yang dimiliki NET Data Provider, yaitu objek
Connection, Command, DataReader dan DataAdapter.
2.5.2.2.1 Objek Connection
Objek Connection digunakan untuk membuat koneksi ke database.
2.5.2.2.2 Objek Command
Setelah melakukan koneksi, dapat digunakan objek Command untuk
menjalankan perintah yang akan memanggil data dari sumber data. Perintah
ditentukan oleh property CommandText. Properti CommandText berisi nama
tabel, Pernyataan SQL atau nama dari stored procedure dari SQL Server.
2.5.2.2.3 Objek DataAdapter
Objek DataAdapter akan melakukan koordinasi antara representasi data
dalam memori dan sumber data permanent. Objek DataAdapter bekerja sebagai
duta antara data dengan mekanisme akses data sehingga dapat memanggil dan
menyimpan data dari sumber data dan objek DataSet.
2.5.2.2.4 Objek DataReader
Objek DataReader merupakan mekanisme secara cepat untuk memanggil
aliran data yang bersifat forward-only dan read-only. NET Provider SQL Server
melakukan optimasasi dalam mekanisme DataReader sehingga dapat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
menggunakannya sesering yang diinginkan untuk menampilkan secara cepat data
yang bersifat read-only.
2.5.2.2.5 Objek DataSet
DataSet merupakan representasi data dalam memori yang memberikan
model pemrograman relational yang konsisten, tanpa memperhatikan asal dari
sumber data. Suatu DataSet mewakili serangkaian data secara lengkap termasuk
tabel yang
2.5.2.2.6 Collection DataTable Dan DataRelation
Berbeda dengan Recordset dari ADO yang hanya berisi objek tabel
tunggal, DataSet dari ADO.NET berisi satu atau lebih tabel (DataTabel) yang
disimpan sebagai collection DataTable (DataTableCollection).
Untuk membuat relasi antartabel dapat digunakan collection DataRelation.
DataSet berisi suatu collection dari objek DataRelation dalam property Relation.
Tiap-tiap objek DataRelation dikaitkan dengan DataTable yang berbeda dengan
menggunakan referential integrity seperti primary key, foreign key dan
constraints.
2.6 Database Dan Microsoft SQL Server 2000
2.6.1 Database
SQL server memakai sebuah tipe database yang dinamakan database
relational. Database relational adalah database yang mengorganisasikan data
dalam bentuk tabel (Ir. Inge Martina, 2003). Tabel dibentuk dengan
mengelompokkan data yang mempunyai subjek yang sama. Tabel berisi baris-
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
baris dan kolom-kolom informasi. Tabel-tabel dapat saling berhubungan jika
diinginkan.
Database adalah sekumpulan data yang saling berhubungan (Ir. Inge
Martina, 2003). Dalam SQL server database bukanlah sebuah file tetapi
merupakan sebuah konsep logis yang berisi sekumpulan objek-objek yang
berhubungan. Objek-objek dalam sebuah database antara lain : tabel, kolom, tipe
Elsei = i + 1MsgBox("Maaf, Login dan Password Anda Tidak
Terdaftar!!!", MsgBoxStyle.OKOnly, "Info")Clear()If i = 3 Then
MsgBox("Maaf, Anda Bukan User, Akses MasukAnda Ditolak!!!", MsgBoxStyle.Exclamation, "Warning")
Dim form As New Welcomeform.Show()Me.Hide()
End IfEnd IfConn.Close()
Catch ex As ExceptionMessageBox.Show("Maaf, Anda Bukan User, Akses
Masuk Anda Ditolak!!!", "Warning", MessageBoxButtons.OK,MessageBoxIcon.Information)
Dim form As New WelcomeForm.Show()Me.Hide()
End TryEnd If
End Sub
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
84
Berikut ini adalah perintah untuk koneksi ke database SQL Server 2000.
Module ConnectionPublic Function Database()
Dim myConn As SqlConnectionmyConn = New SqlConnection("server=CHIMERA; database=RS;
Trusted_Connection=yes")Return myConn
End FunctionEnd Module
Berikut ini adalah perintah untuk fungsi membaca data numeric, membaca
database, dan mengeksekusi query pada database.
Module FungsiPrivate myConn As SqlConnection
Public Function getNumeric(ByVal sqlQuery As String) AsInteger
myConn = Database()myConn.Open()Dim myReader As SqlDataReaderDim cmd As SqlCommandDim data As Integercmd = New SqlCommand(sqlQuery, myConn)myReader = cmd.ExecuteReaderTry
If myReader.Read Thendata = myReader.GetValue(0)
End IfCatch ex As Exception
MessageBox.Show("Failed to reader cause " &ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)
End TrymyReader.Close()myConn.Close()Return data
End Function
Public Function isEmpty(ByVal sqlQuery As String) As IntegermyConn = Database()myConn.Open()Dim myReader As SqlDataReaderDim cmd As SqlCommandcmd = New SqlCommand(sqlQuery, myConn)myReader = cmd.ExecuteReaderTry
If myReader.HasRows ThenisEmpty = 0
ElseisEmpty = 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
85
End IfCatch ex As Exception
MessageBox.Show("Failed to reader cause " &ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)
End TrymyReader.Close()myConn.Close()Return isEmpty
End Function
Public Function executeQuery(ByVal sqlQuery As String)myConn = Database()myConn.Open()Try
Dim commandExe As New SqlCommand(sqlQuery, myConn)commandExe.ExecuteNonQuery()
Catch ex As ExceptionMessageBox.Show("Failed to reader cause " &
Proses login ini harus dilakukan oleh semua user untuk bisa menggunakan
aplikasi ini. Data yang diinputkan adalah nama user dan data password petugas.
Jika data yang diinputkan tidak sesuai, maka aplikasi tidak bisa digunakan oleh
user. Jika user lupa memasukkan salah satu dari nama user atau data passwordnya
maka akan muncul kotak pesan yang mengatakan bahwa data yang dimasukkan
tidak lengkap, dan diharapkan user melengkapi data inputannya. Gambar 4.4
merupakan user interface yang berupa kotak pesan pemberitahuan bahwa data
yang dimasukkan belum lengkap.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
86
Gambar 4.4 Kotak Pesan Konfirmasi Data Tidak Lengkap
Jika data login yang diinputkan salah maka akan muncul kotak pesan
pemberitahuan bahwa data yang diinputkan tidak terdaftar . Gambar 4.5
merupakan user interface yang berupa kotak pesan pemberitahuan bahwa data
yang dimasukkan salah atau tidak terdaftar.
Gambar 4.5 Kotak Pesan Konfirmasi Data Tidak Terdaftar
Jika data login yang dimasukkan user salah selama tiga kali maka akan
muncul kotak pesan pemberitahuan bahwa akses masuk ditolak dan user otomatis
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
87
akan keluar dari aplikasi. Gambar 4.6 merupakan user interface yang berupa kotak
pesan pemberitahuan bahwa akses masuk ditolak.
Gambar 4.6 Kotak Pesan Konfirmasi Akses Ditolak
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
88
4.3.1.4 User Interface Halaman Utama Administrator
Setelah proses login berhasil, selanjutnya user akan masuk ke halaman
utama. Halaman utama yang ditampilkan sesuai dengan hak akses atau bagian
masing-masing dari user. Gambar 4.7 merupakan user interface halaman utama
untuk administrator.
Gambar 4.7 Halaman Utama Administrator
Berikut ini adalah perintah untuk user interface halaman utama
administrator.
Public Class frmUtamaInherits System.Windows.Forms.Form
Private Sub Form3_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
mnuLogin.Enabled = FalseEnd Sub
Private Sub mnuLapPembayaran_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuLapPembayaran.Click
Dim frmlappembayaran As New frmLapPembayaranfrmlappembayaran.ShowDialog()
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
89
End Sub
Private Sub mnuExit_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles mnuExit.Click
EndEnd Sub
Private Sub mnuPerusahaan_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuPerusahaan.Click
Dim frmdetailperusahaan As New frmDetailPerusahaanfrmdetailperusahaan.ShowDialog()
End Sub
Private Sub mnuLapPerusahaan_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesmnuLapPerusahaan.Click
Dim frmlapperusahaan As New frmLapPerusahaanfrmlapperusahaan.ShowDialog()
End Sub
Private Sub mnuPenagihan_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuPenagihan.Click
Dim frmdetailpenagihan As New frmDetailPenagihanfrmdetailpenagihan.ShowDialog()
End Sub
Private Sub mnuLogin_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuLogin.Click
Dim form As New Loginform.MdiParent = Meform.Show()
End Sub
Private Sub mnuLogout_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuLogout.Click
Dim form As New Welcomeform.Show()Me.Hide()
End Sub
Private Sub mnuUser_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles mnuUser.Click
Dim frmdetailuser As New frmDetailUserfrmdetailuser.ShowDialog()
End Sub
Private Sub mnuPasien_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuPasien.Click
Dim frmdetailpasien As New frmDetailPasienfrmdetailpasien.ShowDialog()
End SubPrivate Sub mnuContact_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles mnuContact.ClickDim HelpUser As New HelpHelpUser.ShowDialog()
End Sub
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
90
Private Sub mnuPembayaran_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuPembayaran.Click
Dim frmdetailpembayaran As New frmDetailPembayaranfrmdetailpembayaran.ShowDialog()
End Sub
Private Sub mnuData_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles mnuData.Click
End Sub
Private Sub mnuBiaya_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuBiaya.Click
Dim frmdetailbiaya As New frmDetailBiayafrmdetailbiaya.ShowDialog()
End Sub
Private Sub mnuLapUser_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuLapUser.Click
Dim frmlapuser As New frmLapUserfrmlapuser.ShowDialog()
End Sub
Private Sub mnuDokter_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuDokter.Click
Dim frmdetaildokter As New frmDetailDokterfrmdetaildokter.Show()
End Sub
Private Sub mnuPoliklinik_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuPoliklinik.Click
Dim frmdetailpoli As New frmDetailPolifrmdetailpoli.ShowDialog()
End Sub
Private Sub mnuLapPasien_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuLapPasien.Click
Dim frmlappasien As New frmLapPasienfrmlappasien.ShowDialog()
End Sub
Private Sub mnuLapBiaya_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuLapBiaya.Click
Dim frmlapbiaya As New frmLapBiayafrmlapbiaya.ShowDialog()
End Sub
Private Sub mnuLapPenagihan_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesmnuLapPenagihan.Click
Dim frmlappenagihan As New frmLapPenagihanfrmlappenagihan.ShowDialog()
End Sub
Private Sub mnuLapDokter_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles mnuLapDokter.Click
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
91
Dim frmlapdokter As New frmLapDokterfrmlapdokter.ShowDialog()
End Sub
Private Sub mnuLapPoliklinik_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesmnuLapPoliklinik.Click
Dim frmlappoliklinik As New frmLapPolifrmlappoliklinik.ShowDialog()
End Sub
Private Sub mnuFile_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles mnuFile.Click
End SubEnd Class
Pada halaman utama untuk administrator ini terdapat menu File, Data,
Laporan, dan Help.
Menu File terdiri dari sub menu:
Login
Logout
Exit
Menu Data terdiri dari sub menu:
User
Perusahaan
Pasien Rawat Jalan
Biaya Pasien Rawat Jalan
Pembayaran Pasien Rawat Jalan
Penagihan Pasien Rawat Jalan
Dokter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
92
Poliklinik
Menu Laporan terdiri dari sub menu:
Laporan User
Laporan Perusahaan
Laporan Pasien Rawat Jalan
Laporan Biaya Pasien Rawat Jalan
Laporan Pembayaran Pasien Rawat Jalan
Laporan Penagihan Pasien Rawat Jalan
Laporan Dokter
Laporan Poliklinik
Menu Help terdiri dari sub menu :
About
Setiap menu dan sub menu pada halaman utama administrator mempunyai fungsi
yang berbeda. Menu File, menu ini berisi sub menu yang mendukung proses
login, logout, dan exit bagi administrator. Menu Data, menu ini berisi sub menu
yang digunakan untuk mengakses dan memanipulasi semua data yang berada
dalam sistem informasi ini. Administrator memiliki hak akses penuh pada bagian
menu Data ini. Menu Laporan, menu ini berisi sub menu yang digunakan untuk
proses pembuatan laporan. Sedangkan menu Help berisi keterangan singkat
tentang program.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
93
4.3.1.5 User Interface Detail Data User
Untuk mengakses dan memanipulasi data user, administrator harus masuk
ke user interface detail data user dengan cara memilih sub menu User yang
terdapat pada menu Data. Gambar 4.8 merupakan halaman detail data user untuk
bagian admnistrator.
Gambar 4.8 Halaman Detail Data User
Halaman ini menampilkan user name, password, dan bagian dari user dalam
bentuk form data grid. Pada halaman detail data user ini juga terdapat tombol Add
yang berfungsi untuk menambah data user, tombol Edit yang berfungsi untuk
mengupdate data user, tombol Delete yang berfungsi untuk menghapus data user,
tombol Refresh yang berfungsi untuk menampilkan keseluruhan data user yang
ada di database, dan tombol Exit yang berfungsi untuk keluar dari program.
Halaman detail data user ini juga dilengkapi dengan dengan fasilitas pencarian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
94
user dengan kategori pencarian berdasarkan user name dan bagian. Berikut ini
adalah perintah untuk user interface halaman detail data user.
Imports System.DataImports System.Data.SqlClientPublic Class frmDetailUser
Inherits System.Windows.Forms.Form
Public Sub Data_Grid()Dim myConn As SqlConnectionDim daUser As SqlDataAdapterDim dsUser As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select User1.User_Name 'User
Name',User1.Password 'Password',ROLE.Role 'Bagian' from User1,ROLEWhere" & _
" ROLE.Id_Role=User1.Id_Role"daUser = New SqlDataAdapter(sqlselect, myConn)dsUser = New DataSetdaUser.Fill(dsUser, "USER1")dgUser.DataSource = dsUserdgUser.DataMember = ("USER1")dgUser.ReadOnly = TruemyConn.Close()
End Sub
Private Sub dgUser_DoubleClick(ByVal sender As Object,ByVal e As System.EventArgs) Handles dgUser.DoubleClick
If isEmpty("Select User1.User_Name 'UserName',User1.Password 'Password',ROLE.ROLE 'Bagian' from User1,ROLEWhere" & _
" ROLE.Id_Role=User1.Id_Role order by User_Name") ThenMsgBox("Data kosong", MsgBoxStyle.Exclamation, "Info")
ElseIf (dgUser.IsSelected(dgUser.CurrentRowIndex)) ThenDim frmDataUser As New frmdatauserDim myConn As SqlConnectionDim myReader As SqlDataReadermyConn = Database()myConn.Open()Dim sql As StringTry
sql = "SelectUser1.User_Name,User1.Password,ROLE.ROLE from User1,ROLE Where" &_
Private Sub btnAdd_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles btnAdd.Click
Dim frmDataUser As New frmdatauserfrmDataUser.btnEdit.Enabled = FalsefrmDataUser.btnDelete.Enabled = FalsefrmDataUser.txtUsername.Focus()frmDataUser.Show()
End Sub
Private Sub btnSearch_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btnSearch.Click
Dim myConn As SqlConnectionIf cmbKategori.Text = "" Then
MsgBox("Masukan Kategori Masih Kosong",MsgBoxStyle.Exclamation, "Info")
cmbKategori.Focus()Else
myConn = Database()myConn.Open()Dim sql As StringTry
If cmbKategori.Text = "User Name" ThenDim daUser As SqlDataAdapterDim dsUser As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select
USER1.USER_NAME as [User Name],USER1.PASSWORD as[Password],ROLE.ROLE as [Bagian] from USER1,ROLE Where" & _
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
96
" USER1.USER_NAME like '%" +txtSearch.Text + "%' and ROLE.ID_ROLE=USER1.ID_ROLE order byUSER_NAME"
daUser = New SqlDataAdapter(sqlselect, myConn)dsUser = New DataSetdaUser.Fill(dsUser, "USER1")dgUser.DataSource = dsUserdgUser.DataMember = ("User1")dgUser.ReadOnly = TruemyConn.Close()
ElseDim daUser As SqlDataAdapterDim dsUser As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select
USER1.USER_NAME as [User Name],USER1.PASSWORD as[Password],ROLE.ROLE as [Bagian] from USER1,ROLE Where" & _
" ROLE.ROLE like '%" + cmbCari.Text +"%' and ROLE.ID_ROLE=USER1.ID_ROLE order by USER_NAME"
daUser = New SqlDataAdapter(sqlselect, myConn)dsUser = New DataSetdaUser.Fill(dsUser, "USER1")dgUser.DataSource = dsUserdgUser.DataMember = ("USER1")dgUser.ReadOnly = TruemyConn.Close()
Private Sub btnDelete_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btnDelete.Click
If isEmpty("Select USER1.USER_NAME as 'UserName',USER1.PASSWORD as 'Password',ROLE.ROLE as 'Bagian' fromUSER1,ROLE Where ROLE.ID_ROLE=USER1.ID_ROLE order by USER_NAME")Then
MsgBox("Data kosong", MsgBoxStyle.Exclamation)ElseIf (dgUser.IsSelected(dgUser.CurrentRowIndex)) Then
Dim myConn As SqlConnectionTry
myConn = Database()myConn.Open()Dim deleteUsername As String =
Trim(dgUser.Item(dgUser.CurrentRowIndex, 0))If (MessageBox.Show("Apakah anda yakin akan
menghapus data " & Trim(dgUser.Item(dgUser.CurrentRowIndex, 0)) &" ?", "Info", MessageBoxButtons.YesNo, MessageBoxIcon.Question) =DialogResult.Yes) Then
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
97
Dim sql As String = "Delete From USER1" & _" Where USER_NAME='" &
Trim(deleteUsername) & "'"Dim command As SqlCommand = New
SqlCommand(sql, myConn)Try
Dim status As Integer =command.ExecuteNonQuery()
If status = 1 ThenMsgBox("Hapus Data Berhasil",
MsgBoxStyle.Information, "Konfirmasi")Else
MsgBox("Hapus Data Gagal",MsgBoxStyle.Critical, "Konfirmasi")
End IfData_Grid()Clear()
Catch ex As ExceptionMsgBox("Error: " & ex.Source & ": " &
Catch ex As ExceptionMsgBox("Error: " & ex.Source & ": " & ex.Message,
MsgBoxStyle.Critical, "Koneksi Error !")Clear()
FinallymyConn.Close()
End TryElse
MsgBox("Pilih Data Terlebih Dahulu",MsgBoxStyle.Exclamation, "Info")
End IfEnd Sub
Private Sub btnRefresh_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btnRefresh.Click
Clear()Data_Grid()
End Sub
Private Sub btnEdit_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles btnEdit.Click
If isEmpty("Select USER1.USER_NAME as 'UserName',USER1.PASSWORD as 'Password',ROLE.ROLE as 'Bagian' fromUSER1,ROLE Where ROLE.ID_ROLE=USER1.ID_ROLE order by USER_NAME")Then
MsgBox("Data kosong", MsgBoxStyle.Exclamation)ElseIf (dgUser.IsSelected(dgUser.CurrentRowIndex)) Then
Dim frmDataUser As New frmdatauserDim myConn As SqlConnectionDim myReader As SqlDataReader
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
98
myConn = Database()myConn.Open()Dim sql As StringTry
sql = "SelectUSER1.USER_NAME,USER1.PASSWORD,ROLE.ROLE from USER1,ROLE Where" &_
Catch ex As ExceptionMsgBox("Error: " & ex.Source & ": " & ex.Message,
MsgBoxStyle.OKOnly, "Koneksi Error !")Clear()
End TryEnd Sub
End Class
4.3.1.6 User Interface Detail Data Perusahaan.
User interface halaman detail data perusahaan digunakan untuk melihat
data perusahaan yang sudah terikat kontrak dengan pihak rumah sakit. Data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
104
perusahaan akan ditampilkan dalam bentuk form data grid.Gambar 4.10
merupakan user interface halaman detail perusahaan untuk administrator.
Gambar 4.10 Halaman Detail Data Perusahaan
Berikut perintah untuk user interface halaman detail data perusahaan:
Imports System.DataImports System.Data.SqlClientPublic Class frmDetailPerusahaan
Inherits System.Windows.Forms.Form
Public flag As IntegerPublic Sub Data_Grid()
Dim myConn As SqlConnectionDim daPerusahaan As SqlDataAdapterDim dsPerusahaan As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select ID_PERUSAHAAN as [Id],
NAMA_PERUSAHAAN as [Perusahaan],ALAMAT_PERUSAHAAN as[Alamat],CONTACT_PERSON as [Contact],UMUM as [Umum],ANAK as[Anak],SPOG as [SPOG],BKIA as [BKIA],THT as [THT], BEDAH as[Bedah],DALAM as [Dalam],GIGI as [Gigi],FISIOTERAPI as[Fisioterapi],KULIT as [Kulit],MATA as [Mata],ODS as [ODS],RONTGENas [Rontgen],LAB as [Lab],USG as [USG],OBAT as [Obat] fromPERUSAHAAN"
daPerusahaan = New SqlDataAdapter(sqlselect, myConn)dsPerusahaan = New DataSetdaPerusahaan.Fill(dsPerusahaan, "PERUSAHAAN")dgPerusahaan.DataSource = dsPerusahaan
4.3.1.7 User Interface Halaman Pasien Rawat Jalan.
User interface halaman pasien rawat jalan digunakan untuk melihat data pasien
secara lengkap. Halaman pasien rawat jalan ini juga dilengkapi dengan fasilitas
pencarian data pasien berdasarkan kategori No MR, nama pasien, tanggal masuk
dan perusahaan yang akan menanggung biaya pasien. Data pasien secara lengkap
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
107
akan ditampilkan melalui data grid pasien tersedia. Gambar 4.12 merupakan user
interface halaman detail data pasien.
Gambar 4.12 Halaman Detail Data Pasien
Berikut perintah untuk user interface halaman detail data pasien:
Imports System.DataImports System.Data.SqlClientPublic Class frmDetailPasien
Inherits System.Windows.Forms.Form
Public flag As IntegerPublic Sub Data_Grid()
Dim myConn As SqlConnectionDim daPasien As SqlDataAdapterDim dsPasien As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select NO_MR as [No MR],
NAMA_PASIEN as [Nama],ALAMAT_PASIEN as [Alamat],TGL_LAHIR as [Tgllahir],KOTA as [Kota],UMUR as [Umur],JNS_KELAMIN as[Kelamin],STATUS as [Status],AGAMA as [Agama], NAMA_ORTU as [NamaOrang Tua],NAMA_PERUSAHAAN as [Perusahaan],ID_PERUSAHAAN as[Id],TGL_MASUK as [Tgl masuk] from PASIEN"
daPasien = New SqlDataAdapter(sqlselect, myConn)dsPasien = New DataSetdaPasien.Fill(dsPasien, "PASIEN")dgPasien.DataSource = dsPasiendgPasien.DataMember = ("PASIEN")dgPasien.ReadOnly = TruemyConn.Close()
Tombol add pada halaman detail data pasien digunakan untuk menambah
data pasien baru. Sedangkan untuk tombol update dan delete digunakan untuk
proses mengupdate dan menghapus data pasien. Halaman data pasien akan
ditampilkan jika administrator menekan tombol add yang ada pada halaman detail
data pasien. Gambar 4.13 merupakan user interface halaman data pasien.
Gambar 4.13 Halaman Data Pasien
Pada user interface halaman data pasien ini, untuk penambahan pasien
baru digunakan generate No MR. No MR pasien secara langsung akan muncul
jika ada data pasien baru yang ditambahkan. Selain itu id perusahaan secara
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
110
otomatis akan ditampilkan sesuai dengan nama perusahaan pasien. Berikut
perintah generate No MR pasien:
Public Sub generate_mr()Dim myConn As SqlConnectionDim myReader As SqlDataReaderDim angka, angka2 As Integerangka2 = 0Dim no_mr As StringDim no_mr1 As StringDim n As IntegermyConn = Database()myConn.Open()Dim sql As String = "Select NO_MR from PASIEN"Dim command As SqlCommand = New SqlCommand(sql, myConn)Try
myReader = command.ExecuteReader()If myReader.HasRows Then
While myReader.Read()no_mr = myReader.Item("NO_MR")n = Len(no_mr)angka = CInt(Mid$(no_mr, 4, n))If angka2 < angka Then
Catch ex As ExceptionMsgBox("Tidak ada data", MsgBoxStyle.OKOnly, "Info")
End TrymyConn.Close()
End Sub
Berikut perintah untuk menampilkan id perusahaan secara otomatis:
Private Sub cmbPerusahaan_SelectedIndexChanged(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlescmbPerusahaan.SelectedIndexChanged
Dim myConn As SqlConnectionDim myReader As SqlDataReadermyConn = Database()myConn.Open()Try
Dim sql As String = "select ID_PERUSAHAAN fromPERUSAHAAN " & _
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
111
" where NAMA_PERUSAHAAN = '" &cmbPerusahaan.SelectedItem & "'"
Dim com As SqlCommand = New SqlCommand(sql, myConn)myReader = com.ExecuteReaderIf myReader.HasRows Then
While myReader.ReadtxtID.Text = myReader.Item("ID_PERUSAHAAN")
End WhileEnd IfmyReader.Close()
Catch ex As ExceptionMsgBox(ex.Message)
End TrymyConn.Close()
End Sub
4.3.1.8 User Interface Halaman Biaya Pasien Rawat Jalan.
User interface halaman biaya pasien rawat jalan untuk admininistrator ini
berisi data pasien yaitu no folio, no mr, biaya dokter, biaya obat, biaya tambahan
dan biaya keseluruhan. Semua biaya pengobatan pasien yang ada pada interface
merupakan biaya keselurahan yang harus ditanggung pasien sebelum melalui
proses perhitungan biaya yang akan ditanggung perusahaan. Semua data biaya
pasien ini merupakan catatan biaya total pasien yang dimasukkan oleh bagian
kasir. Selanjutnya keseluruhan biaya ini sendiri masih akan diproses lebih lanjut
sesuai dengan kontrak kerja antara perusahaan tertanggung dengan pihak rumah
sakit. Hal ini dimaksudkan untuk menghitung biaya pasien yang akan dibebankan
kepada perusahaan dan biaya pasien yang harus ditanggung sendiri oleh pasien.
Gambar 4.14 merupakan user interface halaman detail biaya pasien.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
112
Gambar 4.14 Halaman Detail Biaya Pasien
Berikut perintah untuk user interface halaman detail biaya pasien:
mports System.DataImports System.Data.SqlClientPublic Class frmDetailBiaya
Inherits System.Windows.Forms.Form
Public flag As IntegerPublic Sub Data_Grid()
Dim myConn As SqlConnectionDim daBiaya As SqlDataAdapterDim dsBiaya As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select NO_FOLIO as [No Folio],
NO_MR as [No MR],T_BIAYA_DOKTER as [Biaya Dokter],T_BIAYA_OBAT as[Biaya Obat],T_BIAYA_TAMBAHAN as [BiayaTambahan],T_BIAYA_KESELURUHAN as [Biaya Keseluruhan] from BIAYA"
daBiaya = New SqlDataAdapter(sqlselect, myConn)dsBiaya = New DataSetdaBiaya.Fill(dsBiaya, "BIAYA")dgBiaya.DataSource = dsBiayadgBiaya.DataMember = ("BIAYA")dgBiaya.ReadOnly = TruemyConn.Close()
End Sub
Halaman detail data biaya pasien rawat jalan ini juga dilengkapi dengan
fasilitas pencarian berdasarkan kategori no folio dan no mr pasien. Untuk proses
penambahan, pengubahan, dan penghapusan data biaya pasien rawat jalan dapat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
113
dilakukan dengan menggunakan tombol add, update, dan delete yang tersedia di
halaman ini. Pengubahan dan penghapusan data dapat dilakukan secara langsung
dengan cara memilih data yang akan diubah atau dihapus pada data grid. Untuk
melakukan penambahan data biaya pasien rawat jalan dapat dilakukan dengan
menekan tombol add yang ada. Jika administrator menekan tombol add kemudian
akan ditampilkan user interface halaman data biaya pasien rawat jalan. Halaman
biaya pasien rawat jalan ini juga menggunakan fungsi generate folio untuk
menghasilkan no folio pasien secara otomatis. Gambar 4.15 merupakan user
interface halaman data biaya pasien.
Gambar 4.15 Halaman Biaya Pasien Rawat Jalan
Berikut perintah untuk user interface halaman biaya pasien rawat jalan:
Imports System.DataImports System.Data.SqlClientPublic Class frmBiaya
Inherits System.Windows.Forms.Form
Public Sub generate_folio()Dim myConn As SqlConnectionDim myReader As SqlDataReaderDim angka, angka2 As Integerangka2 = 0Dim no_folio As String
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
114
Dim no_folio1 As StringDim n As IntegermyConn = Database()myConn.Open()Dim sql As String = "Select NO_FOLIO from BIAYA"Dim command As SqlCommand = New SqlCommand(sql, myConn)Try
myReader = command.ExecuteReader()If myReader.HasRows Then
While myReader.Read()no_folio = myReader.Item("NO_FOLIO")n = Len(no_folio)angka = CInt(Mid$(no_folio, 4, n))If angka2 < angka Then
Dim command As SqlCommand = New SqlCommand(sql,myConn)
Dim status As Integer = command.ExecuteNonQuery()If status = 1 Then
MsgBox("Update Data Berhasil",MsgBoxStyle.OKOnly, "Konfirmasi")
ElseMsgBox("Update Data Gagal",
MsgBoxStyle.OKOnly, "Konfirmasi")End If
End IfmyConn.Close()
Catch ex As ExceptionMsgBox("Error: " & ex.Source & ": " & ex.Message,
MsgBoxStyle.OKOnly, "Koneksi Error !!")End Try
End Sub
4.3.1.9 User Interface Halaman Detail Pembayaran Pasien Rawat Jalan.
User interface halaman detail pembayaran pasien ini menampilkan data
pembayaran pasien rawat jalan. Data yang ditampilkan antara lain: no folio, no
mr, nama pasien, id perusahaan, nama perusahaan, tempat penagihan, tambahan
penagihan, nama dokter, spesialisasi dokter, biaya dokter, biaya obat dibayar,
biaya tambahan dibayar, total biaya dibayar, tagihan dokter, tagihan obat, tagihan
tambahan, total tagihan, dan tanggal pembayaran. Data pembayaran ini diambil
dari data biaya pasien setelah diproses sesuai dengan kontrak kerja antara pihak
rumah sakit dan perusahaan. Sistem akan memproses secara otomatis total biaya
yang ditanggung perusahaan berdasarkan data perusahaan yang dimasukkan pada
user interface halaman detail data perusahaan. Hasil akhir dari proses ini berupa
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
117
total biaya yang ditanggung pasien dan total biaya yang ditanggung perusahaan.
User interface halaman pembayaran pasien rawat jalan ini juga dilengkapi dengan
fasilitas pencarian berdasarkan kategori: no folio, no mr, nama pasien, nama
perusahaan, tempat penanganan, tambahan pelayanan, nama dokter, spesialis, dan
tanggal pembayaran. Gambar 4.16 merupakan user interface halaman detail
pembayaran pasien rawat jalan.
Gambar 4.16 Halaman Detail Pembayaran Pasien Rawat Jalan
Berikut perintah untuk user interface halaman detail pembayaran pasien rawat
jalan:
Imports System.DataImports System.Data.SqlClientPublic Class frmDetailPembayaran
Inherits System.Windows.Forms.Form
Public flag As IntegerPublic Sub Data_Grid()
Dim myConn As SqlConnectionDim daPembayaran As SqlDataAdapterDim dsPembayaran As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select NO_FOLIO as [No Folio],
NO_MR as [No MR],NAMA_PASIEN as [Nama Pasien],ID_PERUSAHAAN as [IDPerusahaan],NAMA_PERUSAHAAN as [Perusahaan],TEMPAT_PENANGANAN as[Tempat Penanganan],TAMBAHAN_PELAYANAN as [TambahanPelayanan],NAMA_DOKTER as [Dokter],SPESIALIS as
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
118
[Spesialis],B_DOKTER_DIBAYAR as [Biaya DokterDibayar],B_OBAT_DIBAYAR as [Biaya Obat Dibayar],B_TAMBAHAN_DIBAYARas [Biaya Tambahan Dibayar],TOTAL_DIBAYAR as [Total Dibayar],B_DOKTER_PENAGIHAN as [Tagihan Dokter],B_OBAT_PENAGIHAN as[Tagihan Obat], B_TAMBAHAN_PENAGIHAN as [TagihanTambahan],TOTAL_PENAGIHAN as [Total Tagihan],TGL_BAYAR as [TanggalPembayaran] from PEMBAYARAN"
daPembayaran = New SqlDataAdapter(sqlselect, myConn)dsPembayaran = New DataSetdaPembayaran.Fill(dsPembayaran, "PEMBAYARAN")dgPembayaran.DataSource = dsPembayarandgPembayaran.DataMember = ("PEMBAYARAN")dgPembayaran.ReadOnly = TruemyConn.Close()
End Sub
Private Sub btnAdd_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles btnAdd.Click
Dim frmDataPembayaran As New frmdatapembayaranfrmDataPembayaran.ShowDialog()
End Sub
Untuk mengubah data pembayaran pasien rawat jalan,administrator dapat
menggunakan fasilitas update. Jika tombol update ditekan, maka akan tampil user
interface data pembayaran pasien rawat jalan. Gambar 4.17 merupakan user
interface halaman data pembayaran pasien rawat jalan.
Gambar 4.17 Halaman Data Pembayaran Pasien Rawat Jalan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
119
Berikut perintah untuk user interface halaman data pembayaran pasien rawat
jalan:
Imports System.DataImports System.Data.SqlClient
Public Class frmdatapembayaranInherits System.Windows.Forms.Form
Private Sub btnHitung3_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles btnHitung3.Click
If cmbPelayanan.SelectedItem = "" ThenKalkulasi_Penagihan1()txtBTP.Text = 0
ElseKalkulasi_Penagihan()
End IfEnd SubPrivate Sub Kalkulasi_Penagihan()
Dim hitung1, hitung2, hitung3 As LongIf txtSpesialis.Text.ToString().Equals("Umum") Then
Private Sub btnHitung2_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btnHitung2.Click
Dim total_bayar As Longtotal_bayar = Val(txtBDD.Text) + Val(txtBOD.Text) +
Val(txtBTD.Text)txtTotal_bayar.Text = total_bayar
End Sub
End Class
4.3.1.10 User Interface Halaman Detail Penagihan Biaya Pasien Rawat Jalan.
Pada halaman ini, administrator hanya dapat melihat dan menghapus data
penagihan pasien rawat jalan. Halaman ini juga dilengkapi dengan fasilitas
pencarian data. Gambar 4.18 merupakan user interface halaman detail penagihan
biaya pasien rawat jalan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
124
Gambar 4.18 Halaman Detail Penagihan Pasien Rawat Jalan.
Berikut perintah untuk user interface halaman penagihan pasien rawat jalan:
Imports System.DataImports System.Data.SqlClientPublic Class frmDetailPenagihan
Inherits System.Windows.Forms.Form
Private Sub btnPreview_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles btnPreview.Click
If isEmpty("Select PEMBAYARAN.NO_FOLIO as [No Folio],PEMBAYARAN.NO_MR as [No MR],PEMBAYARAN.NAMA_PASIEN as [NamaPasien],PEMBAYARAN.NAMA_PERUSAHAAN as [NamaPerusahaan],PEMBAYARAN.TOTAL_PENAGIHAN as [BiayaTagihan],PEMBAYARAN.TOTAL_DIBAYAR as [BiayaDibayar],PEMBAYARAN.TGL_BAYAR as [Tanggal Pembayaran] fromPEMBAYARAN") Then
ElseIf(dgPenagihan.IsSelected(dgPenagihan.CurrentRowIndex)) Then
Dim frmDataPenagihan As New frmdatapenagihanfrmDataPenagihan.lblFolio.Text =
MsgBox("Pilih Data Terlebih Dahulu",MsgBoxStyle.Exclamation, "Info")
End IfEnd Sub
Untuk melihat data penagihan pasien satu persatu, administrator dapat
meggunakan tombol preview dengan memilih data yang akan dipreview terlebih
dulu. Gambar 4.19 merupakan user interface data halaman data penagihan pasien.
Gambar 4.19 Halaman Data Penagihan Pasien Rawat Jalan.
Berikut perintah untuk user interface halaman data penagihan pasien rawat jalan:
Public Class frmdatapenagihanInherits System.Windows.Forms.FormPublic flag As Integer
Public Sub tutup()lblFolio.Enabled = FalselblMr.Enabled = FalselblNama.Enabled = FalselblPerusahaan.Enabled = FalselblDibayar.Enabled = FalselblPenagihan.Enabled = FalselblPembayaran.Enabled = False
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
126
End Sub
Private Sub btnExit_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles btnExit.Click
Dim form As New Welcomeform.Show()Me.Close()
End Sub
Private Sub btnBack_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles btnBack.Click
Dim form As New frmUtamaform.Show()Me.Close()
End Sub
Public Function Masuk(ByVal key As String) As BooleanIf (key = 13) Then
Masuk = TrueElse
Masuk = FalseEnd If
End FunctionPrivate Sub btnKembali_KeyPress(ByVal sender As Object, ByVal
e As System.Windows.Forms.KeyPressEventArgs) HandlesbtnKembali.KeyPress
Dim frmdetailpenagihan As New frmDetailPenagihanIf e.Handled = Masuk(Asc(e.KeyChar)) ThenElse
frmdetailpenagihan.Show()Me.Close()
End IfEnd Sub
End Class
4.3.1.11 User Interface Halaman Detail Data Dokter.
User interface halaman detail data dokter ini hanya digunakan oleh administrator
untuk menambah, mengubah dan menghapus data dokter. Gambar 4.20
merupakan halaman detail data dokter.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
127
Gambar 4.20 Halaman Detail Data Dokter
Berikut perintah untuk user interface halaman detail data dokter:
Imports System.DataImports System.Data.SqlClientPublic Class frmDetailDokter
Inherits System.Windows.Forms.Form
Public flag As IntegerPublic Sub Data_Grid()
Dim myConn As SqlConnectionDim daDokter As SqlDataAdapterDim dsDokter As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select ID_DOKTER as [ID
Dokter],NAMA_DOKTER as [Nama Dokter],ALAMAT_DOKTER as[Alamat],KOTA as [Kota],TELP as [Telepon],BIDANG as [Spesialis]from DOKTER"
daDokter = New SqlDataAdapter(sqlselect, myConn)dsDokter = New DataSetdaDokter.Fill(dsDokter, "DOKTER")dgDokter.DataSource = dsDokterdgDokter.DataMember = ("DOKTER")dgDokter.ReadOnly = TruemyConn.Close()
End Sub
Private Sub spesialis()Dim myConn As SqlConnectionDim myReader As SqlDataReadermyConn = Database()myConn.Open()Try
Dim sql As String = "Select BIDANG from DOKTER"Dim command As SqlCommand = New SqlCommand(sql,
MsgBox("Referensi spesialisasi tidak ada...",MsgBoxStyle.OKOnly, "Info")
End IfCatch ex As Exception
MsgBox("Tidak ada data", MsgBoxStyle.OKOnly, "Info")End TrymyReader.Close()myConn.Close()
End SubEnd Class
Administrator dapat menambahkan data dokter baru dengan menggunakan
tombol add yang ada di user interface halaman detail data dokter. Jika tombol add
ditekan maka akan muncul user interface halaman pengelolaan dokter, yang
digunakan untuk memasukkan data dokter baru. Gambar 4.21 merupakan user
interface halaman pengelolaan dokter.
Gambar 4.21 Halaman Pengelolaan Dokter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
129
4.3.1.12 User Interface Halaman Detail Poliklinik.
User interface ini digunakan oleh administrator untuk menambahkan dan
mengubah data poliklinik. Gambar 4.22 merupakan user interface halaman detail
poliklinik.
Gambar 4.22 Halaman Detail Poliklinik
Berikut perintah untuk user interface halaman detail poliklinik:
Imports System.DataImports System.Data.SqlClientPublic Class frmDetailPoli
Inherits System.Windows.Forms.FormPublic flag As Integer
Public Sub Data_Grid()Dim myConn As SqlConnectionDim daPoli As SqlDataAdapterDim dsPoli As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select ID_POLI as [ID
Poliklinik],NAMA_POLI as POLIKLINIK from POLIKLINIK order byID_POLI"
daPoli = New SqlDataAdapter(sqlselect, myConn)dsPoli = New DataSetdaPoli.Fill(dsPoli, "POLIKLINIK")dgPoli.DataSource = dsPolidgPoli.DataMember = ("POLIKLINIK")dgPoli.ReadOnly = TruemyConn.Close()
End Sub
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
130
Untuk menambahkan data poliklinik baru, administrator dapat
menggunakan tombol add yang ada. Jika tombol add ini ditekan maka akan
ditampilkan user interface halaman pengelolaan poliklinik. Gambar 4.23
merupakan user interface halaman pengelolaan poliklinik.
Gambar 4.23 Halaman Pengelolaan Poliklinik
Berikut perintah untuk user interface halaman pengelolaan poliklinik:
Imports System.DataImports System.Data.SqlClientPublic Class frmPoli
Inherits System.Windows.Forms.Form
Public flag As Integer
Private Sub Clear()generate_idPoli()txtNama.Text = ""txtId.Enabled = FalsetxtId.Focus()
End SubPublic Sub generate_idPoli()
Dim myConn As SqlConnectionDim myReader As SqlDataReaderDim i As Integer = 1Dim poli_id As StringDim poli_id2 As String
myConn = Database()myConn.Open()Dim sql As String = "Select ID_POLI from POLIKLINIK order
by ID_POLI"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
131
Dim command As SqlCommand = New SqlCommand(sql, myConn)myReader = command.ExecuteReader()If myReader.HasRows Then
Public Sub generate_idPoli1()Dim myConn As SqlConnectionDim myReader As SqlDataReaderDim angka, angka2 As Integerangka2 = 0Dim id As StringDim id1 As StringDim n As IntegermyConn = Database()myConn.Open()Dim sql As String = "Select ID_POLI from POLIKLINIK"Dim command As SqlCommand = New SqlCommand(sql, myConn)Try
myReader = command.ExecuteReader()If myReader.HasRows Then
While myReader.Read()id = myReader.Item("ID_POLI")n = Len(id)angka = CInt(Mid$(id, 3, n))If angka2 < angka Then
Catch ex As ExceptionMsgBox("Tidak ada data", MsgBoxStyle.OKOnly, "Info")
End TrymyConn.Close()
End Sub
End Class
4.3.1.13 User Interface Laporan
User interface laporan pada bagian administrator terdiri dari :
Laporan User.
Laporan Perusahaan.
Laporan Pasien Rawat Jalan.
Laporan Biaya Pasien Rawat Jalan.
Laporan Pembayaran Pasien Rawat Jalan.
Laporan Penagihan Pasien Rawat Jalan.
Laporan Dokter.
Laporan Poliklinik.
User interface laporan dibuat menggunakan software Crystal Report yang
merupakan software pendukung dalam Visual Basic.Net.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
133
Gambar 4.24 merupakan user interface laporan user.
Gambar 4.24 Laporan User
Gambar 4.25 merupakan user interface laporan perusahaan.
Gambar 4.25 Laporan Perusahaan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
134
Gambar 4.26 merupakan user interface laporan pasien rawat jalan.
Gambar 4.26 Laporan Pasien Rawat Jalan
Laporan pasien rawat jalan ini dilengkapi dengan fasilitas pencarian dan
pengelompokkan data pasien berdasarkan tanggal masuk pasien.
Gambar 4.27 merupakan user interface laporan biaya pasien rawat jalan.
Gambar 4.27 Laporan Biaya Pasien Rawat Jalan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
135
Gambar 4.28 merupakan user interface laporan pembayaran pasien rawat jalan.
Gambar 4.28 Laporan Pembayaran Pasien Rawat Jalan
User interface ini dilengkapi dengan fasilitas penacarian dan
pengelompokkan data pembayaran pasien berdasarkan tanggal pembayaran.
Gambar 4.29 merupakan user interface laporan penagihan pasien rawat jalan.
Gambar 4.29 Laporan Penagihan Pasien Rawat Jalan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
136
Gambar 4.30 merupakan user interface laporan dokter.
Gambar 4.30 Laporan Dokter
Gambar 4.31 merupakan user interface laporan poliklinik.
Gambar 4.31 Laporan Poliklinik
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
137
4.3.2 User Interface Proses Transaksi Kasir
User interface proses transaksi bagian kasir meliputi data pasien rawat
jalan, data biaya pasien rawat jalan, dan data pembayaran pasien rawat jalan.
Sedangkan untuk proses pembuatan laporannya, bagian kasir hanya memiliki hak
akses untuk pembuatan laporan data pasien rawat jalan, laporan biaya pasien
rawat jalan, dan laporan pembayaran pasien rawat jalan.
Pada halaman utama bagian kasir terdiri dari beberapa menu dan sub
menu. Menu pada user interface halaman utama bagian kasir meliputi: File, Data,
Laporan, Help.
Menu File terdiri dari sub menu:
Login
Logout
Exit
Menu Data terdiri dari sub menu:
Pasien Rawat Jalan
Biaya Pasien Rawat Jalan
Pembayaran Pasien Rawat
Menu Laporan terdiri dari sub menu:
Laporan Pasien Rawat Jalan
Laporan Biaya Pasien Rawat Jalan
Laporan Pembayaran Pasien Rawat Jalan
Menu Help terdiri dari sub menu:
About
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
138
Menu dan sub menu yang ditampilkan di halaman utama bagian kasir disesuaikan
dengan hak akses yang dimiliki kasir. User interface setiap halaman menu dan sub
menu bagian kasir sama dengan user interface yang ditampilkan pada bagian
administrator. Gambar 4.32 merupakan user interface halaman utama kasir.
Gambar 4.32 Halaman Utama Kasir
User harus melalui proses login terlebih dahulu sesuai dengan bagiannya
agar dapat mengkases sistem. User interface proses login bagian kasir sama
dengan user interface proses login bagian administrator. Jika proses login berhasil,
maka user bagian kasir akan masuk ke halaman utama kasir. Proses selanjutnya
kasir dapat memanipulasi data sesuai dengan hak aksesnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
139
4.3.3 User Interface Proses Transaksi Penagihan
User interface proses transaksi bagian penagihan meliputi data pasien
rawat jalan, data pembayaran pasien rawat jalan, dan data penagihan pasien rawat
jalan. User interface halaman utama bagian memiliki beberapa menu yaitu : File,
Data, Laporan, dan Help.
Menu File terdiri dari sub menu:
Login
Logout
Exit
Menu Data terdiri dari sub menu:
Data Pasien Rawat Jalan
Data Pembayaran Pasien Rawat Jalan
Data Penagihan Pasien Rawat Jalan
Menu Help terdiri dari sub menu:
About
Menu dan sub menu yang ditampilkan di halaman utama bagian penagihan
disesuaikan dengan hak akses yang dimiliki penagihan. User interface setiap
halaman menu dan sub menu bagian penagihan sama dengan user interface yang
ditampilkan pada bagian administrator. Gambar 4.33 merupakan user interface
halaman utama penagihan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
140
Gambar 4.33 Halaman Utama Penagihan
User harus melalui proses login terlebih dahulu sesuai dengan bagiannya
agar dapat mengkases sistem. User interface proses login bagian penagihan sama
dengan user interface proses login bagian administrator. Jika proses login berhasil,
maka user bagian penagihan akan masuk ke halaman utama penagihan. Proses
selanjutnya penagihan dapat memanipulasi data sesuai dengan hak aksesnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
141
BAB V
ANALISIS HASIL
5.1 Analisis Hasil Perangkat Lunak
Untuk dapat terkoneksi dengan database, sistem ini dilengkapi dengan
modul koneksi antara sistem dengan database. Modul koneksi tersebut akan
dieksekusi pada saat proses login user.
Berikut perintah pada modul koneksi database:
Module ConnectionPublic Function Database()
Dim myConn As SqlConnectionmyConn = New SqlConnection("server=CHIMERA; database=RS;
Trusted_Connection=yes")Return myConn
End FunctionEnd Module
User bagian administrator, kasir, dan penagihan memiliki user interface
halaman utama yang berbeda sesuai dengan hak akses yang dimiliki masing-
masing bagian.
Berikut perintah yang mengatur pembagian hak akses pada proses login user:
Dim Conn As SqlConnectionConn = Database()Conn.Open()Dim myReader As SqlDataReaderDim Id_Role As Integer
Dim command As SqlCommandDim sql As String = "Select Id_Role from User1
Where User_Name= '" & txtUser.Text.Trim & "' And Password= '" &txtPassword.Text.Trim & "' "
command = New SqlCommand(sql, Conn)myReader = command.ExecuteReader()If myReader.HasRows Then
i = 0While myReader.Read()
Id_Role = myReader.Item("ID_ROLE")
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
142
End WhilemyReader.Close()
End If
If Id_Role = 1 ThenShow_Admin()Me.Hide()
ElseIf Id_Role = 2 ThenShow_Kasir()Me.Hide()
ElseIf Id_Role = 3 ThenShow_Penagihan()Me.Hide()
Elsei = i + 1
Untuk mengeksekusi data numeric, membaca database, dan mengeksekusi
query pada database, sistem juga dilengkapi dengan modul fungsi.
Berikut perintah untuk modul fungsi :
Module FungsiPrivate myConn As SqlConnection
Public Function getNumeric(ByVal sqlQuery As String) AsInteger
myConn = Database()myConn.Open()Dim myReader As SqlDataReaderDim cmd As SqlCommandDim data As Integercmd = New SqlCommand(sqlQuery, myConn)myReader = cmd.ExecuteReaderTry
If myReader.Read Thendata = myReader.GetValue(0)
End IfCatch ex As Exception
MessageBox.Show("Failed to reader cause " &ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)
End TrymyReader.Close()myConn.Close()Return data
End Function
Public Function isEmpty(ByVal sqlQuery As String) As IntegermyConn = Database()myConn.Open()Dim myReader As SqlDataReaderDim cmd As SqlCommandcmd = New SqlCommand(sqlQuery, myConn)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
143
myReader = cmd.ExecuteReaderTry
If myReader.HasRows ThenisEmpty = 0
ElseisEmpty = 1
End IfCatch ex As Exception
MessageBox.Show("Failed to reader cause " &ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)
End TrymyReader.Close()myConn.Close()Return isEmpty
End Function
Public Function executeQuery(ByVal sqlQuery As String)myConn = Database()myConn.Open()Try
Dim commandExe As New SqlCommand(sqlQuery, myConn)commandExe.ExecuteNonQuery()
Catch ex As ExceptionMessageBox.Show("Failed to reader cause " &
Pada beberapa user interface akan ditampilkan isi dari database dalam
bentuk datagrid, hal ini dimaksudkan untuk mempermudah proses manipulasi
data. Berikut salah satu contoh perintah untuk datagrid:
Public Sub Data_Grid()Dim myConn As SqlConnectionDim daUser As SqlDataAdapterDim dsUser As DataSetmyConn = Database()myConn.Open()Dim sqlselect As String = "Select User1.User_Name 'User
Name',User1.Password 'Password',ROLE.Role 'Bagian' from User1,ROLEWhere" & _
" ROLE.Id_Role=User1.Id_Role"daUser = New SqlDataAdapter(sqlselect, myConn)dsUser = New DataSetdaUser.Fill(dsUser, "USER1")dgUser.DataSource = dsUserdgUser.DataMember = ("USER1")dgUser.ReadOnly = True
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
144
myConn.Close()End Sub
Sistem informasi ini juga dilengkapi fasilitas pengendalian kesalahan
misalnya untuk data yang tidak lengkap, dan kesalahan memasukkan format tipe
data.
Berikut contoh perintah untuk pengendalian kesalahan:
TryDim myConn As SqlConnectionDim myReader As SqlDataReadermyConn = Database()myConn.Open()Dim no_mr As StringDim sqlSelect As String = "Select NO_MR from PASIEN
order by NO_MR asc"Dim comm As SqlCommand = New SqlCommand(sqlSelect,
myConn)myReader = comm.ExecuteReader()If myReader.HasRows Then
While myReader.Read()no_mr = myReader.Item("NO_MR")
End WhileEnd IfmyReader.Close()If txtNama.Text = "" Then
MsgBox("Silahkan masukkan nama pasien",MsgBoxStyle.OKOnly, "Info")
txtNama.Focus()ElseIf (IsNumeric(txtNama.Text) = True) Then
MsgBox("Data masukkan salah. Data Nama yang andamasukkan tidak boleh berupa angka", MsgBoxStyle.OKOnly, "Info")
MsgBox("Silahkan pilih perusahaan pasien",MsgBoxStyle.OKOnly, "Info")
cmbPerusahaan.Focus()
ElseDim ans = MsgBox("Anda yakin akan menambahkan data
tersebut?", MsgBoxStyle.OKCancel, "Konfirmasi")
Pada user interface data pasien, data perusahaan, dan data pembayaran
terdapat id pasien berupa no mr, id perusahaan dan no folio untuk untuk pasien.
Semua id tersebut dibuat (generate) oleh sistem secara otomatis untuk mencegah
terjadinya redudancy data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
146
Berikut perintah untuk generate mr:
Public Sub generate_mr()Dim myConn As SqlConnectionDim myReader As SqlDataReaderDim angka, angka2 As Integerangka2 = 0Dim no_mr As StringDim no_mr1 As StringDim n As IntegermyConn = Database()myConn.Open()Dim sql As String = "Select NO_MR from PASIEN"Dim command As SqlCommand = New SqlCommand(sql, myConn)Try
myReader = command.ExecuteReader()If myReader.HasRows Then
While myReader.Read()no_mr = myReader.Item("NO_MR")n = Len(no_mr)angka = CInt(Mid$(no_mr, 4, n))If angka2 < angka Then
Catch ex As ExceptionMsgBox("Tidak ada data", MsgBoxStyle.OKOnly, "Info")
End TrymyConn.Close()
End Sub
Berikut perintah untuk generate id perusahaan:
Public Sub generate_id()Dim myConn As SqlConnectionDim myReader As SqlDataReaderDim i As Integer = 1Dim perusahaan_id As StringDim perusahaan_id2 As String
myConn = Database()myConn.Open()Dim sql As String = "Select ID_PERUSAHAAN from PERUSAHAAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
147
order by ID_PERUSAHAAN"Dim command As SqlCommand = New SqlCommand(sql, myConn)myReader = command.ExecuteReader()If myReader.HasRows Then
Public Sub generate_folio()Dim myConn As SqlConnectionDim myReader As SqlDataReaderDim angka, angka2 As Integerangka2 = 0Dim no_folio As StringDim no_folio1 As StringDim n As IntegermyConn = Database()myConn.Open()Dim sql As String = "Select NO_FOLIO from BIAYA"Dim command As SqlCommand = New SqlCommand(sql, myConn)Try
myReader = command.ExecuteReader()If myReader.HasRows Then