www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
PROGRAM REKAM MEDIS VB 6.0 (VERSI 2) Peminat silakan hubungi : Email :
[email protected] Facebook :
[email protected] (Uus Rusmawan) Phone : 0812 8438 1118 Program ini digunakan untuk melakukan pengolahan data rekam medis (rawat jalan) pada sebuah klinik atau rumah sakit. Proses yang terjadi dalam program ini adalah sebagai berikut: 1.
Pasien datang melakukan pendaftaran, baik pasien baru maupun pasien lama dengan biaya sesuai kode poli.
2.
Pasien mendapatkan nomor antrian, kemudian dipanggil oleh dokter untuk diagnosa, setelah itu dokter memberikan resep kepada pasien.
3.
Resep diberikan kepada apoteker oleh pasien dan apoteker meracik obat sesuai isi resep.
4.
Pasien membayar biaya resep (obat).
5.
Pembuatan laporan.
1.1 Merancang Database Dan Relasi Tabel Langkah awal yang harus dilakukan adalah membuat database dengan nama DBRAWATJALAN.mdb, kemudian membuat beberapa tabel yang diperlukan antara lain Tabel Pemakai (User), Tabel Dokter, Tabel Obat, Tabel Pasien, Tabel Poli, Tabel Pendaftaran, Tabel Resep, Tabel Detail, Tabel Pembayaran, Tabel Temporer (tabel ini tidak pernah berisi data kecuali nomor urut). Bentuk relasi tabel pada program kredit bank ini terlihat pada gambar di bawah ini :
1
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.1 Bentuk Relasi Tabel 3NF
Dari bentuk relasi tabel di atas (3NF one to many) diharapkan anda dapat membuat normalisasinya dari mulai unnormal hingga normal kedua.
1.2
Membuat Modul
Tahap awal pembuatan aplikasi ini dimulai dengan membuat module setelah merancang desain database. Tujuan dibuat modul adalah agar koneksi ke database dan pembacaan tabel-tabel dapat dilakukan dengan efektif dan efisien. Cara membuat Modul : 1.
Buka VB
2.
Klik menu Project
3.
Pilih Add Module
4.
Klik Open
5.
Tulis koding di bawah ini kemudian simpan
Public Public Public Public
Conn As New ADODB.Connection RSObat As ADODB.Recordset RSADM As ADODB.Recordset RSApoteker As ADODB.Recordset
2
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi Public Public Public Public Public Public Public Public
RSPendaftaran As ADODB.Recordset RSPembayaran As ADODB.Recordset RSPemakai As ADODB.Recordset RSPoli As ADODB.Recordset RSDokter As ADODB.Recordset RSResep As ADODB.Recordset RSPasien As ADODB.Recordset RSDetail As ADODB.Recordset
Public Sub Koneksi() Set Conn = New ADODB.Connection Set RSObat = New ADODB.Recordset Set RSADM = New ADODB.Recordset Set RSApoteker = New ADODB.Recordset Set RSPendaftaran = New ADODB.Recordset Set RSPembayaran = New ADODB.Recordset Set RSPemakai = New ADODB.Recordset Set RSPoli = New ADODB.Recordset Set RSDokter = New ADODB.Recordset Set RSResep = New ADODB.Recordset Set RSPasien = New ADODB.Recordset Set RSDetail = New ADODB.Recordset Conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DBrawatjalan.mdb" End Sub
1.3 Pengolahan Data Master Seperti yang telah dijelaskan pada bab desain database, maka sekarang akan dibahas tentang pengolahan tabeltabel master yang terdiri dari Tabel Pasien, Tabel Pemakai, Tabel Dokter, Tabel Obat, dan Tabel Poli
1.3.1 Data Pasien Untuk mengolah tabel pasien buatlah form seperti gambar berikut ini :
Gambar 1.2. Form Pasien
3
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi Catatan : untuk mengedit dan menghapus data dapat dilakukan dengan memilih data dalam grid kemudian tekan enter setelah melakukan klik pada command edit atau command hapus
1.3.2 Data Pemakai Untuk mengolah tabel pemakai aplikasi, buatlah form seperti gambar di bawah ini.
Gambar 1.3 Form Pemakai
Catatan : Dibawah form ada object adodc yang tertutup (sisembunyikan) Skenario program : 1.
Jika command input dijalankan maka status harus dipilih lebih awal. Jika statusnya ADM maka program akan mencari kode ADM paling akhir, jika data tidak ditemukan maka akan dibuat kode adm baru dengan struktur ADM01, jika data ditemukan maka kode adm terakhir akan ditambah 1. jika kode adm terakhir adalah ADM03, maka kode adm baru adalah ADM04. hal yang sama berlalu untuk status apoteker dan daministrator
2.
Jika command Edit atau Hapus di klik, maka pencarian data dapat dilakukan dengan mengetik kodenya atau dengan memilih data dalam grid kemudian tekan enter.
Koding : silakan lihat dalam CD pendukung buku
1.3.3 Data Dokter Untuk mengolah tabel dokter buatlah form seperti gambar berikut ini.
4
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.4 Form Dokter
Catatan : object adodc berada di bawa tertutup form Skenario program : 1.
Jika command input dijalankan makakode poli harus dipilih lebih awal. Jika poli GIGI maka program akan mencari kode dokter paling akhir di poli gigi, jika data tidak ditemukan maka akan dibuat kode dokter baru dengan struktur GIG01, jika data ditemukan maka kode dokter terakhir akan ditambah 1. jika kode dokter terakhir adalah ADM03, maka kode adm baru adalah GIG04. Hal yang sama berlalu untuk kode poli lainnya
2.
Jika command Edit atau Hapus di klik, maka pencarian data dapat dilakukan dengan mengetik kodenya atau dengan memilih data dalam grid kemudian tekan enter.
Koding : silakan lihat dalam CD pendukung buku ini
1.3.4 Data Obat Untuk mengolah tabel obat buatlah form seperti gambar di bawah ini.
5
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.5 Form Obat
Catatan : object adodc berada di bawa tertutup form. Skenario program sama seperti form obat dan dokter Koding : silakan lihat dalam CD pendukung buku ini
1.3.5 Data Poli Untuk mengolah tabel Poli, buatlah form seperti gambar di bawah ini.
Gambar 1.6 Form Poli
6
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi 1.4 Pendaftaran Pasien Proses awal transaksi dalam aplikasi ini adalah pendaftaran pasien, baik pasien baru maupun pasien yang telah terdaftar. Untuk itu buatlah form seperti gambar di bawah ini.
Gambar 1.7 Form Pendaftaran Pasien
Catatan : objek adodc berada di bagian bawah tertutup oleh form Skenario program : 1.
Pasien yang mendaftar ditanya oleh bagian pendaftaran akan menuju ke poli apa atau si pasien sendiri yang menyebutkannya
2.
bagian administrasi menginformasikan dokter yang ada pada saat itu, dan nomor atrian masing-masing dokter
3.
bagian adm menanyakan apakah pasien baru atau telah terdaftar. Jika pasien telah terdaftar maka nomor pasiennya dicari, jika pasien baru maka akan dibuatkan nomor baru
4.
masing-masing dokter praktik memiliki tarif tersendiri
7
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi 1.5 Resep Dan Pembayaran 1.5.1 Resep Untuk pembuatan resep buatlah form seperti bentuk di bawah ini
Gambar 1.8 Form Resep Dan Pembayaran
Skenario program : 1.
Tanggal tampil otomatis
2.
Nomor resep diambil dari nomor pendaftaran
3.
Pengisian nomor resep boleh diklik atau diketik dalam combo
4.
Jika nomor resep ditemukan maka akan tampil data dokter, pasien, poli dan data obat di dalam list sesuai katagori poli atau spesialis dokter
5.
Pengisian kode obat dalam grid boleh diketik atau dipilih dari list kemudian menekan enter
6.
Jika jumlah dosis melebihi stok obat maka akan tampil pesan bahwa stok obat kurang
7.
Jumlah item obat dan total pembayaran akan tampil secara otomatis
8.
Jika jumlah pembayaran < dari total harga maka akan tampul pesan bahwa pembayaran kurang. Jika pembayaran >= total maka command simpan menjadi fokus kursor.
9.
Setelah pembayaran selesai maka akan tampil resep, jika menekan ESC form akan tertutup, jika menekan enter resep dicetak ke printer. (siapkan printer terlebih dahulu)
8
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.9 Bukti Resep (Plus Pembayaran)
1.5.2 Pembayaran Data pembayaran pada dasarnya menyatu dengan form resep, hanya saja pada saat disimpan data itu dipisahkan tabelnya selain di tabel resep juga menyimpan data pembayarannya. Perhatikan koding di bawah ini. simpanbyr = "insert into pembayaran(nomorbyr,kodepsn,tanggalbyr,jumlahBYR) values ('" & Combo1 & "','" & KodePsn & "','" & TANGGAL & "','" & Total & "')" Conn.Execute wsimpanbyr
1.6 Pembuatan Laporan 1.6.1 Laporan Data Master Pembuatan laporan dibagi menjadi dua bagian besar. Pertama laporan data master berikut laopran data dengan kriteria tertentu dan kedua laporan data transaksi. Inipun dibagi menjadi beberapa bagian yaitu laporan pendaftaran, laporan resep dan laporan pembayaran. Untuk pembuatan laporan data master diawali dengan membuat form seperti gambar di bawah ini.
9
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.10 Form Laporan
Gambar 1.11 Laporan Data Dokter If Combo1 = "Obat" Then CR.ReportFileName = App.Path & "\obat.rpt" CR.WindowState = crptMaximized CR.RetrieveDataFiles CR.Action = 1 End If
10
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.12 Laporan Data Obat
Gambar 1.13 Laporan Data Pasien
11
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.14 Laporan Data Poli
Gambar 1.15 Laporan Data Pemakai Aplikasi
Gambar 1.16 Laporan Data Pendaftaran
12
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.17 Laporan Data Dokter Per Poli (Spesialis)
Gambar 1.18 Laporan Data Obat Per Jenis
Gambar 1.19 Laporan Data Obar Per Poli
Gambar 1.20 Laporan Data Pasien Per Gender
13
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.21 Laporan Data Pemakai Per Status
Gambar 1.22 Laporan Data Resep Per Nomor
Gambar 1.23 Laporan Data Resep Per Tanggal
14
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.24 Laporan Data Resepper Dokter
Gambar 1.25 Laporan Data Resep Per Pasien
15
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.26 Laporan Data Resep Per Poli
Berikutnya adalah pembuatan laporan pembayaran yang diawali dengan membuat form dengan bentuk seperti gambar di bawah ini.
1.6.2 Laporan Data Pembayaran Laporan ini terdiri dari tiga model yaitu : 1.
Laporan harian
2.
Laporan mingguan dan
3.
Laporan bulanan
Untuk itu buatlah GUI seperti gambar di bawah ini
16
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.27 Form Laporan Transaksi Pembayaran
Koding : Private Sub Form_Load() Call Koneksi RSPembayaran.Open "Select Distinct TanggalByr From RSPembayaran.Requery Do Until RSPembayaran.EOF Combo1.AddItem Format(RSPembayaran!TanggalByr, Combo2.AddItem Format(RSPembayaran!TanggalByr, Combo3.AddItem Format(RSPembayaran!TanggalByr, RSPembayaran.MoveNext Loop Conn.Close
Pembayaran order By 1", Conn
"DD-MMM-YYYY") "YYYY ,MM, DD") "YYYY ,MM, DD")
Call Koneksi Dim RSTGL As New ADODB.Recordset RSTGL.Open "select distinct month(TanggalByr) as Bulan from Pembayaran", Conn Do While Not RSTGL.EOF Combo4.AddItem RSTGL!Bulan & Space(5) & MonthName(RSTGL!Bulan) RSTGL.MoveNext Loop Conn.Close Call Koneksi Dim RSTHN As New ADODB.Recordset RSTHN.Open "select distinct year(TanggalByr) Do While Not RSTHN.EOF Combo5.AddItem RSTHN!Tahun RSTHN.MoveNext Loop Conn.Close End Sub
as Tahun from Pembayaran", Conn
17
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi Private Sub combo1_KeyPress(Keyascii As Integer) If Combo1 = "" Or Keyascii = 27 Then Unload Me End Sub 'Lap Harian Private Sub Combo1_Click() CR.SelectionFormula = "Totext({Pembayaran.TanggalByr})='" & CDate(Combo1) & "'" CR.ReportFileName = App.Path & "\Bayar Harian.rpt" CR.WindowState = crptMaximized CR.RetrieveDataFiles CR.Action = 1 End Sub
Gambar 1.28 Laporan Pembayaran Harian Private Sub combo2_keypress(Keyascii As Integer) If Keyascii = 27 Then Unload Me End Sub 'Lap Mingguan (Tgl Antara) Private Sub Combo3_Click() If Combo2 = "" Then MsgBox "TanggalByr awal kosong", , "Informasi" Combo2.SetFocus Exit Sub End If CR.SelectionFormula = "{Pembayaran.TanggalByr} in date (" & Combo2.Text & ") to date (" & Combo3.Text & ")" CR.ReportFileName = App.Path & "\Bayar Mingguan.rpt" CR.WindowState = crptMaximized CR.RetrieveDataFiles CR.Action = 1 End Sub
18
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.29 Laporan Pembayaran Mingguan
Private Sub Combo4_Keypress(Keyascii As Integer) If Keyascii = 27 Then Unload Me End Sub 'Lap Bulanan Private Sub Combo5_Click() Call Koneksi RSPembayaran.Open "select * from Pembayaran where month(TanggalByr)='" & Val(Combo4) & "' and year(TanggalByr)='" & (Combo5) & "'", Conn If RSPembayaran.EOF Then MsgBox "Data tidak ditemukan" Exit Sub Combo4.SetFocus End If CR.SelectionFormula = "Month({Pembayaran.TanggalByr})=" & Val(Combo4.Text) & " and Year({Pembayaran.TanggalByr})=" & Val(Combo5.Text) CR.ReportFileName = App.Path & "\Bayar Bulanan.rpt" CR.WindowState = crptMaximized CR.RetrieveDataFiles CR.Action = 1 End Sub
19
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.30 Laporan Pembayaran Bulanan
1.7 Utility Dalam bab ini akan dibahas dua utility yaitu backup database dan ganti password pemakai.
1.7.1 Backup database Untuk melakukan backup database buatlah form seperti gambar di bawah ini.
Gambar 1.31 Form Backup Database
1.7.2 Ganti Password User 20
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.32 Form Ganti Password User
1.8 Menu Utama Dan Login 1.8.1 Menu Utama Menu utama berfungsi untuk mengintegrasikan semua form yang ada dalam project. Agar tampilan menu utama lebih menarik sebaiknya ditambahkan statusbar dan toolbar. Dalam bab ini akan dibahas tentang pembuatan menu utama yang terdiri dari : a.
Susunan Menu
b.
Statusbar
c.
Toolbar
Menu yang akan dibuat bentuknya seperti gambar berikut ini
Gambar 1.33 Menu Utama
21
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi Cara pembuatannya adalah sebagai berikut : 1.
Klik menu tools
2.
Pilih menu editor (atau tekan tombol CTRL + E)
Gambar 1.34 Menu Editor
3.
Ketik administrator (di kotak cation)
4.
Ketik mnfile (di kotak name)
5.
Klik next
6.
Ketik pemakai dan mnpemakai
7.
Ketik poli dan mnpoli
8.
Ketik dokter dan mndokter
9.
Dan seterusnya hingga selesai. Hasil pembuatan menu susunan terlihat seperti gambar berikut
22
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.35 Susunan Menu
10.
Klik menu pemakai dan dorong ke kanan agar menjadi submenu Administrator
11.
Lakukan hal yang sama pada menu poli dan dokter
12.
Untuk mengubah posisi menu gunakan tombol-tombol navigasi
Gambar 1.36 Navigasi Posisi Menu
13. Untuk memanggil form dari menu tersebut caranya adalah dengan melakukan klik pada nama menu kemudian ketik kodingnya yaitu : Private Sub mnpemakai_Click() Pemakai.Show End Sub
1.8.2 Membuat Toolbar Toolbar adalah sejenis balok standar yang berisi ikon-ikon pengganti menu. Contonya adalah sebagai berikut :
23
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi Gambar 1.37 Contoh Toolbar
Cara membuat toolbar adalah sebagai berikut : 1.
Klik menu project
2.
Pilih components
3.
Tambahkan komponen microsoft windows common control60 (sp6)
Gambar 1.38 Penambahan Komponen
4.
Klik dua kali ikon imagelist
Gambar 1.39 Imagelist
5.
Klik kanan ikon imagelist
6.
Pilih properties
24
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.40 Mengatur Properti Imagelist
7.
Pilih ukuran ikon
Gambar 1.41 Memilih Ukuran Ikon Pada Toolbar
8.
Klik tab image
9.
Klik insert picture
25
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.42 Menambahkan Gambar (Ikon)
10.
Cari gambar di posisi C:\Program Files\Microsoft Visual Studio\Common\Graphics\Icons\Flags
Gambar 1.43 Mencari Dan Memilih Gambar
11.
Pilih salah satu gambar, klik Open
26
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi 12.
Lakukan hal yang sama untuk menambahkan beberapa gambar yang diperlukan sesuai jumlah menu yang ada
13.
Klik dua kali ikon Toolbar
Gambar 1.44 Ikon Toolbar
14.
Klik kanan toolbar, pilih properties
Gambar 1.45 Mengatur Properti Toolbar
15.
Pilih imagelist1
27
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.46 Menghubungkan Toolbar Dengan Imagelist
16.
Klik tab Button, klik Insert Button
28
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.47 Menambahkan Gambar Untuk Toolbar
17.
Pada index ke 1, tulis captin = Pemakai
18.
Key = F1
19.
Image =1
20.
Klik apply dan lihat hasilnya di toolbar (tampil sebuah gambar yaitu gambar pertama)
21.
Lakukan hal yang sama untuk menampilkan gambar-gembar berikutnya
29
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.48 Tahapan Penambahan Gambar (Ikon) Pada Toolbar
22.
Untuk memanggil menu melalui toolbar, lakukan klik dua kali pada toolbar kemudian tulis koding berikut ini.
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Key Case "F1" Pemakai.Show Case "F2" Pasien.Show Case "F3" Dokter.Show End Select End Sub
1.8.3 Membuat Statusbar Status bar adalah sebuah indikasi dari aplikasi yang sedang aktif. Statusbar biasanya terdapat di bagian bawah aplikasi. Contoh statusbar dapat di lihat pada gambar di bawah ini.
30
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.49 Contoh Statusbar
Cara pembuatannya adalah sebagai berikut : 1.
Aktifkan form “Menu”
2.
Klik dua kali objek statusbar
Gambar 1.50 Komponen Statusbar
3.
Klik kanan statusbar lalu pilih properties
31
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi
Gambar 1.51 Mengatur Properti Statusbar
4.
Pilih tab Panel dan klik dua kali Inser Panel (untuk membuat dua buah panel lainnya)
Gambar 1.52 Menambah Jumlah Panel Pada Statusbar
5.
Sekarang di menu utama terbentuk tiga panel
Catatan : Panel1 untuk nama user
32
www.konsultasivb.com Pusat Kursus VB 6.0 - VB.Net - Bimbingan Tugas Akhir & Skripsi Panel2 untuk status login Panel3 untuk kode pemakai (panel3 dalam proses program disembunyikan). Jadi yang terlihat hanya nama user dan statusnya saja.
1.8.4 Login Setelah data pemakai diisi, langkah berikutnya adalah membuat form login seperti gambar di bawah ini. Form login ini aslinya adalah sebagai berikut :
Gambar 1.53 Form Login (Asli)
Tutuplah kode dan status dengan mengubah ukuran form sehingga bentuknya menjadi seperti gambar di bawah ini.
Gambar 1.54 Form Login Setelah Diubah Ukurannya
Skenario proses login: 1.
Mengisi nama dan password hanya diberi kesempatan tiga kali
2.
Jika status login ADM maka beberapa menu tidak berfungsi, begitu pula jika status loginya apoteker.
3.
Jika status login administrator maka semua menu dapat digunakan
4.
Nama dan status login akan tampil di statusbar menu utama
33