SISTEM INFORMASI REKAM MEDIS RAWAT JALAN BERBASIS JAVA Disusun oleh : Muhammadu Nawa Addi 13121033 21 PROGRAM STUDI SISTEM INFORMASI FAKULTAS TEKNOLOGI INFORMASI UNIVERSITAS MERCUBUANA YOGYAKARTA 2015
DAFTAR ISI DAFTAR ISI... ii BAB I PENDAHULUAN... 1 A. Latar Belakang... 1 B. Alasan Pemilihan Masalah... 1 BAB II DATABASE... 2 A. RANCANGAN TABEL... 2 2.1 Tabel User... 2 2.2 Tabel Pasien... 2 2.3 Tabel Dokter... 2 2.4 Tabel Obat... 2 2.5 Tabel Periksa... 3 2.6 Tabel Resep... 3 B. RELASI ANTAR TABEL... 4 BAB III... 5 A. PASIEN... 5 1. Input... 7 2. Search... 8 3. Edit... 10 4. Delete... 12 5. View... 13 B. DOKTER... 15 1. Input... 15 2. Search... 18 3. Edit... 20 4. Delete... 21 5. View... 22 C. Obat... 25 1. Input... 25 2. Search... 27 3. Edit... 29 4. Delete... 30 5. View... 31 D. Periksa... 34 1. Input... 34 2. Search... 37 3. Edit... 39 ii
4. Delete... 40 5. View... 42 E. Resep... 44 1. Input... 44 2. Search... 47 3. Edit... 49 4. Delete... 50 5. View... 51 BAB IV MENU... 55 A. Menu... 55 B. Integrasi Menu... 60 1. Form Pasien... 60 2. View Pasien... 60 3. Form Dokter... 61 4. View Dokter... 62 5. Form Obat... 63 6. View Obat... 64 7. Form Periksa... 65 8. View Periksa... 66 9. Form Resep... 67 10. View Resep... 68 BAB V PENUTUP... 69 A. Kesimpulan... 69 B. Kesulitan... 69 iii
BAB I PENDAHULUAN A. Latar Belakang Perkembangan ilmu pengetahuan dan teknologi sangat berpengaruh terhadap kemajuan perusahaan. Perusahaan memerlukan manajemen yang tepat guna melaksanakan kerja sesuai dengan kebutuhan visi dan misi perusahaan. Berkembang pesatnya teknologi informasi dengan alat pengolah datadan didukung teknologi komunikasi akan memberikan kemudahan pekerjaan manajemen dan pelayanan kepada masyarakat. Hal ini juga dirasakan oleh RSUD dalam menangani data pasien,dengan melihat tugas-tugas urusan rekam medis, dapat mengetahui lebih jauh tentang konsep dasar pada rekam medis, perkembangan dan kemajuan rekam medis tergantung pada pelayanan rekam medis karena merupakan ujung tombak rekam medis yang dapat membawa nama baik rumah sakit tersebut. Sistem komputerisasi sangatlah diperlu kan dalam pendaftaran dan rekam medis pasien rawat jalan. Karena pencatatan data rekam medis yang masih bersfat konvensional, dan data riwayat pasien tidak dapat dilihat lintas poliklinik. Berdasarkan pertimbangan pentingnya membuat sistem informasi manajemen yang dapat memberikan kemudahan dalam mengelola sumber informasi dan dapat meningkatkan kinerja pada rumah sakit. B. Alasan Pemilihan Masalah Nah, berangkat dari pemikiran itulah penulis akhirnya memutuskan untuk menjadikan SISTEM INFORMASI REKAM MEDIS RAWAT JALAN sebagai judul pemrograman java kali ini. Penulis bercita-cita nantinya masyarakat Indonesia, khususnya rumah bisa menggunakan teknologi informasi sebagai alat penunjang produktivitas kerja mereka, salah satu contohnya dengan mencatat data rekam medis sudah bisa menggunakan system yang canggih, tidak tradisional lagi. Walaupun program yang penulis buat tersebut belum bisa di jalankan secara optimal, namun penulis berharap nantinya bisa benar-benar digunakan secara nyata. 1
BAB II DATABASE A. RANCANGAN TABEL Berikut adalah tabel-tabel data yang digunakan dalam pengembangan sistem informasi ini. 2.1 Tabel User Tabel ini berisi data user atau pengguna yang akan memakai sistem informasi ini, dan juga digunakan khusus admin untuk memasukkan data user. Tabel 3.8 Tabel User Field Type Length Keterangan Id_user Int 5 Primary key, auto_increment username varchar 20 not null password varchar 20 not null 2.2 Tabel Pasien Tabel ini berisi dan juga untuk memasukkan data pasien Tabel 3.9 Tabel Pasien Field Type Length Keterangan id_pasien int 5 primary key, not null nama varchar 20 not null alamat text not null jenis_kelamin varchar 15 not null pekerjaan varchar 20 Not null no_hp Varchar 20 Not null 2.3 Tabel Dokter Tabel ini berisi dan juga untuk memasukkan dokter. Tabel 3.10 Tabel Dokter Field Type Length Keterangan id_dokter int 5 primary key, auti icrement nama varchar 20 not null spesialis varchar 20 foreign key, not null alamat text foreign key, not null no_hp Varchar 12 not null 2.4 Tabel Obat Tabel ini berisi dan juga memasukkan data obat. 2
Tabel 3.11 Tabel Data Obat Field Type Length Keterangan id_obat int 5 primary key, not null nama varchar 20 not null jenis varchar 20 not null harga int 12 not null produksi varchar 20 Not null 2.5 Tabel Periksa Tabel ini berisi dan juga untuk memasukkan data periksa. Tabel 3.12 Tabel Pemesanan Field Type Length Keterangan id_periksa Int 5 primary key, not null Tanggal_periksa Date not null id_dokter Int 5 foreign key, not null id_pasien Int 5 foreign key, not null diagnosa varchar 20 Not null keterangan text Not null 2.6 Tabel Resep Tabel ini berisi dan juga untuk memasukkan data resep. Tabel 3.12 Tabel Resep Field Type Length Keterangan id_resep Int 1 primary key, not null id_obat int 20 Foreign_key,not null id_periksa Int 5 foreign key, not null Jumlah_obat Int 5 not null aturan_pakai int 5 Not null 3
B. RELASI ANTAR TABEL 4
BAB III A. PASIEN import java.awt.event.*; import java.sql.*; import javax.swing.*; class pasien extends JFrame //membuat label, JLabel id=new JLabel("ID Pasien "); JLabel nama=new JLabel("Nama Pasien "); JLabel alm=new JLabel("Alamat "); JLabel jk=new JLabel("Jenis Kelamin"); JLabel krja=new JLabel("Pekerjaan"); JLabel hp=new JLabel("No Hp "); //membuat textfield, JTextField tid=new JTextField(50); JTextField tnama=new JTextField(50); JTextField tkrja=new JTextField(70); JTextField thp=new JTextField(50); JTextArea talm=new JTextArea(); //membuat Radio Buton, JRadioButton lk=new JRadioButton("Laki-laki"); JRadioButton pr=new JRadioButton("Perempuan"); ButtonGroup gender=new ButtonGroup(); //membuat Button JButton save=new JButton("Save"); JButton upt=new JButton("Update"); JButton cari=new JButton("Cari"); JButton del=new JButton("Delete"); //mengatur tata letak Frame dan Ukuran pasien() settitle("form Pasien"); setlocation(300,100); setsize(500,450); setdefaultcloseoperation(jframe.exit_on_close); setvisible(false); //Menampilkan isi Frame void Cetak() //Label getcontentpane().setlayout(null); getcontentpane().add(id);id.setbounds(10,20,90,25); 5
getcontentpane().add(nama);nama.setbounds(10,50,90,25); getcontentpane().add(alm);alm.setbounds(10,80,90,25); getcontentpane().add(jk);jk.setbounds(10,180,110,25); getcontentpane().add(krja);krja.setbounds(10,210,300,25); getcontentpane().add(hp);hp.setbounds(10,240,90,25); //TextField getcontentpane().add(tid);tid.setbounds(110,20,150,25); getcontentpane().add(tnama);tnama.setbounds(110,50,150,25); getcontentpane().add(talm);talm.setbounds(110,80,200,100); getcontentpane().add(tkrja);tkrja.setbounds(110,210,180,25); getcontentpane().add(thp);thp.setbounds(110,240,180,25); //Radio Button getcontentpane().add(lk);lk.setbounds(110,180,90,25); getcontentpane().add(pr);pr.setbounds(210,180,120,25); gender.add(lk); gender.add(pr); //Button getcontentpane().add(save);save.setbounds(110,270,90,25); getcontentpane().add(del);del.setbounds(310,270,90,25); getcontentpane().add(upt);upt.setbounds(210,270,90,25); getcontentpane().add(cari);cari.setbounds(280,20,90,25); setvisible(true); 6
1. Input //Save save.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_pasien,nama,alamat,gender,pekerjaan,hp; id_pasien = tid.gettext(); nama = tnama.gettext(); alamat = talm.gettext(); if(lk.isselected()==true) gender = lk.gettext(); else gender = pr.gettext(); pekerjaan = tkrja.gettext(); hp = thp.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "INSERT INTO pasien values('"+id_pasien+"','"+ nama+"','"+alamat+"','"+gender+"','"+pekerjaan+"','"+hp+"');"; int i =stmt.executeupdate(sql); if(i==1) JOptionPane.showMessageDialog(null, "data pasien berhasil disimpan"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); 7
); 2. Search //Cari cari.addactionlistener(new ActionListener() public void actionperformed(actionevent e) if (tid.gettext()=="") JOptionPane.showMessageDialog(null,"ID Pasien Kosong"); else String cari,id_pasien,nama,alamat,gender,pekerjaan,hp; connect open = new connect(); Connection mysql = open.getconnection(); try cari=tid.gettext(); Statement stmt=mysql.createstatement(); 8
'"+cari+"'"; Tidak Ditemukan"); String sql= "Select * from pasien where id_pasien like ResultSet i = stmt.executequery (sql); if(i.next()) tid.settext(i.getstring(1)); tnama.settext(i.getstring(2)); talm.settext(i.getstring(3)); gender=i.getstring(4); if(gender.equals("laki-laki")) lk.setselected(true); else pr.setselected(true); tkrja.settext(i.getstring(5)); thp.settext(i.getstring(6)); else JOptionPane.showMessageDialog(null,"Data Pasien catch (Exception ex) JOptionPane.showMessageDialog(null,ex.getMessage()); ); 9
3. Edit //Update upt.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_pasien,nama,alamat,gender,pekerjaan,hp; id_pasien = tid.gettext(); nama = tnama.gettext(); alamat = talm.gettext(); if(lk.isselected()==true) gender = lk.gettext(); else gender = pr.gettext(); pekerjaan = tkrja.gettext(); hp = thp.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try 10
Statement stmt = mysql.createstatement(); String sql = "UPDATE pasien SET nama ='"+nama +"',alamat='"+alamat +"',jenis_kelamin='"+gender +"',pekerjaan='"+pekerjaan +"',no_hp='"+hp +"' WHERE id_pasien='"+id_pasien+"'"; int i = stmt.executeupdate (sql); if (i==1) JOptionPane.showMessageDialog(null, "data pasien berhasil di update"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 11
4. Delete //Delete del.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_pasien,nama,alamat,gender,pekerjaan,hp; id_pasien = tid.gettext(); nama = tnama.gettext(); alamat = talm.gettext(); if(lk.isselected()==true) gender = lk.gettext(); else gender = pr.gettext(); pekerjaan = tkrja.gettext(); hp = thp.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "DELETE FROM pasien WHERE id_pasien ='"+id_pasien+"'"; int i = stmt.executeupdate (sql); if(i == 1) JOptionPane.showMessageDialog(null, "data pasien berhasil di hapus"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 12
5. View import java.awt.*; import java.sql.*; import javax.swing.*; import javax.swing.table.*; public class view_pasien extends JPanel String [] header = "id_pasien","nama","alamat", "jenis_kelamin","pekerjaan","no_hp"; JTable table = new JTable(); JScrollPane scrolltable = new JScrollPane(); private Object[][] datatable = null; view_pasien() connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); 13
String sql = "SELECT * FROM pasien"; ResultSet rs = stmt.executequery(sql); ResultSetMetaData meta = rs.getmetadata (); int kolom = meta.getcolumncount(); int baris = 0; while (rs.next()) baris = rs.getrow(); datatable = new Object[baris][kolom]; int x = 0; rs.beforefirst(); while(rs.next()) datatable[x][0] = rs.getstring("id_pasien"); datatable[x][1] = rs.getstring("nama"); datatable[x][2] = rs.getstring("alamat"); datatable[x][3] = rs.getstring("jenis_kelamin"); datatable[x][4] = rs.getstring("pekerjaan"); datatable[x][5] = rs.getstring("no_hp"); x++; scrolltable.setviewportview(table); table.setmodel(new DefaultTableModel(dataTable, header)); add(scrolltable,borderlayout.north); stmt.close(); rs.close(); catch (Exception ex) JOptionPane.showMessageDialog(null, "data pasien error"); void GUI() JFrame frame = new JFrame("Data Pasien"); frame.setdefaultcloseoperation(jframe.exit_on_close); view_pasien content = new view_pasien(); content.setopaque(true); frame.setcontentpane(content); frame.pack(); frame.setlocationrelativeto(null); 14
frame.setvisible(true); public static void main(string []args) view_pasien inputan = new view_pasien(); inputan.gui(); B. DOKTER 1. Input import java.awt.event.*; import java.sql.*; import javax.swing.*; class dokter extends JFrame //membuat label, JLabel id=new JLabel("ID Dokter "); JLabel nama=new JLabel("Nama Dokter "); JLabel sp=new JLabel("Spesialis "); JLabel alm=new JLabel("Alamat"); 15
JLabel hp=new JLabel("No Hp "); //membuat textfield, JTextField tid=new JTextField(50); JTextField tnama=new JTextField(50); JTextField tsp=new JTextField(70); JTextField thp=new JTextField(50); JTextArea talm=new JTextArea(); //membuat Button JButton save=new JButton("Save"); JButton upt=new JButton("Update"); JButton cari=new JButton("Cari"); JButton del=new JButton("Delete"); //mengatur tata letak Frame dan Ukuran dokter() settitle("form Dokter"); setlocation(300,100); setsize(500,450); setdefaultcloseoperation(jframe.exit_on_close); setvisible(false); //Menampilkan isi Frame void Cetak() //Label getcontentpane().setlayout(null); getcontentpane().add(id);id.setbounds(10,20,90,25); getcontentpane().add(nama);nama.setbounds(10,50,90,25); getcontentpane().add(sp);sp.setbounds(10,80,300,25); getcontentpane().add(alm);alm.setbounds(10,110,90,25); getcontentpane().add(hp);hp.setbounds(10,220,90,25); //TextField getcontentpane().add(tid);tid.setbounds(110,20,150,25); getcontentpane().add(tnama);tnama.setbounds(110,50,150,25); getcontentpane().add(talm);talm.setbounds(110,110,200,100); getcontentpane().add(tsp);tsp.setbounds(110,80,180,25); getcontentpane().add(thp);thp.setbounds(110,220,180,25); //Radio Button //Button getcontentpane().add(save);save.setbounds(110,270,90,25); getcontentpane().add(del);del.setbounds(310,270,90,25); getcontentpane().add(upt);upt.setbounds(210,270,90,25); getcontentpane().add(cari);cari.setbounds(280,20,90,25); setvisible(true); void action() 16
//Save save.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_dokter,nama,spesialis,alamat,hp; id_dokter = tid.gettext(); nama = tnama.gettext(); spesialis=tsp.gettext(); alamat = talm.gettext(); hp = thp.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "INSERT INTO dokter values('"+id_dokter+"','"+ nama+"','"+spesialis+"','"+alamat+"','"+hp+"');"; int i =stmt.executeupdate(sql); if(i==1) JOptionPane.showMessageDialog(null, "data Dokter berhasil disimpan"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 17
2. Search //Cari cari.addactionlistener(new ActionListener() public void actionperformed(actionevent e) if (tid.gettext()=="") JOptionPane.showMessageDialog(null,"ID Dokter Kosong"); else String cari,id_dokter,nama,spesialis,alamat,hp; connect open = new connect(); Connection mysql = open.getconnection(); try cari=tid.gettext(); Statement stmt=mysql.createstatement(); 18
'"+cari+"'"; Tidak Ditemukan"); String sql= "Select * from dokter where id_dokter like ResultSet i = stmt.executequery (sql); if(i.next()) tid.settext(i.getstring(1)); tnama.settext(i.getstring(2)); talm.settext(i.getstring(4)); tsp.settext(i.getstring(3)); thp.settext(i.getstring(5)); else JOptionPane.showMessageDialog(null,"Data Dokter catch (Exception ex) JOptionPane.showMessageDialog(null,ex.getMessage()); ); 19
3. Edit //Update upt.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_dokter,nama,spesialis,alamat,hp; id_dokter = tid.gettext(); nama = tnama.gettext(); spesialis=tsp.gettext(); alamat = talm.gettext(); hp = thp.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "UPDATE dokter SET nama ='"+nama +"',alamat='"+spesialis +"',pekerjaan='"+alamat +"',no_hp='"+hp +"' WHERE id_dokter='"+id_dokter+"'"; int i = stmt.executeupdate (sql); if (i==1) JOptionPane.showMessageDialog(null, "data dokter berhasil di update"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 20
4. Delete //Delete del.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_dokter,nama,spesialis,alamat,hp; id_dokter = tid.gettext(); nama = tnama.gettext(); alamat = talm.gettext(); spesialis = tsp.gettext(); hp = thp.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "DELETE FROM dokter WHERE id_dokter ='"+id_dokter+"'"; int i = stmt.executeupdate (sql); if(i == 1) JOptionPane.showMessageDialog(null, "data dokter berhasil di hapus"); 21
catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 5. View import java.awt.*; import java.sql.*; import javax.swing.*; import javax.swing.table.*; public class view_dokter extends JPanel String [] header = "ID Dokter","Nama Dokter","Spesialis", "Alamat","No_Hp"; JTable table = new JTable(); 22
JScrollPane scrolltable = new JScrollPane(); private Object[][] datatable = null; view_dokter() connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "SELECT * FROM dokter"; ResultSet rs = stmt.executequery(sql); ResultSetMetaData meta = rs.getmetadata (); int kolom = meta.getcolumncount(); int baris = 0; while (rs.next()) baris = rs.getrow(); datatable = new Object[baris][kolom]; int x = 0; rs.beforefirst(); while(rs.next()) datatable[x][0] = rs.getstring("id_dokter"); datatable[x][1] = rs.getstring("nama"); datatable[x][2] = rs.getstring("spesialis"); datatable[x][3] = rs.getstring("alamat"); datatable[x][4] = rs.getstring("no_hp"); x++; scrolltable.setviewportview(table); table.setmodel(new DefaultTableModel(dataTable, header)); add(scrolltable,borderlayout.north); stmt.close(); rs.close(); catch (Exception ex) JOptionPane.showMessageDialog(null, "data Dokter error"); 23
void GUI() JFrame frame = new JFrame("Data Dokter"); frame.setdefaultcloseoperation(jframe.exit_on_close); view_dokter content = new view_dokter(); content.setopaque(true); frame.setcontentpane(content); frame.pack(); frame.setlocationrelativeto(null); frame.setvisible(true); public static void main(string []args) view_dokter inputan = new view_dokter(); inputan.gui(); 24
C. Obat 1. Input import java.awt.event.*; import java.sql.*; import javax.swing.*; class obat extends JFrame //membuat label, JLabel id=new JLabel("ID Obat "); JLabel nama=new JLabel("Nama Obat "); JLabel jenis=new JLabel("Jenis "); JLabel harga=new JLabel("Harga"); JLabel produksi=new JLabel("Produksi"); //membuat textfield, JTextField tid=new JTextField(50); JTextField tnama=new JTextField(50); JTextField tjenis=new JTextField(70); JTextField tharga=new JTextField(50); JTextField tproduksi=new JTextField(50); //membuat Radio Buton, //membuat Button JButton save=new JButton("Save"); JButton upt=new JButton("Update"); JButton cari=new JButton("Cari"); JButton del=new JButton("Delete"); //mengatur tata letak Frame dan Ukuran obat() settitle("form Obat"); setlocation(300,100); setsize(500,450); setdefaultcloseoperation(jframe.exit_on_close); setvisible(false); //Menampilkan isi Frame void Cetak() //Label getcontentpane().setlayout(null); getcontentpane().add(id);id.setbounds(10,20,90,25); getcontentpane().add(nama);nama.setbounds(10,50,90,25); getcontentpane().add(jenis);jenis.setbounds(10,80,90,25); getcontentpane().add(harga);harga.setbounds(10,110,90,25); getcontentpane().add(produksi);produksi.setbounds(10,140,90,25); //TextField getcontentpane().add(tid);tid.setbounds(110,20,150,25); getcontentpane().add(tnama);tnama.setbounds(110,50,150,25); 25
getcontentpane().add(tjenis);tjenis.setbounds(110,80,150,25); getcontentpane().add(tharga);tharga.setbounds(110,110,150,25); getcontentpane().add(tproduksi);tproduksi.setbounds(110,140,150,25); //Radio Button //Button getcontentpane().add(save);save.setbounds(110,170,90,25); getcontentpane().add(del);del.setbounds(310,170,90,25); getcontentpane().add(upt);upt.setbounds(210,170,90,25); getcontentpane().add(cari);cari.setbounds(280,20,90,25); setvisible(true); void action() //Save save.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_obat,nama,jenis,harga,produksi; id_obat = tid.gettext(); nama = tnama.gettext(); jenis = tjenis.gettext(); harga = tharga.gettext(); produksi = tproduksi.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "INSERT INTO obat values('"+id_obat+"','"+ nama+"','"+jenis+"','"+harga+"','"+produksi+"');"; int i =stmt.executeupdate(sql); if(i==1) JOptionPane.showMessageDialog(null, "data obat berhasil disimpan"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 26
2. Search //Cari cari.addactionlistener(new ActionListener() public void actionperformed(actionevent e) if (tid.gettext()=="") JOptionPane.showMessageDialog(null,"ID Pasien Obat"); else String cari,id_obat,nama,jenis,harga,produksi; connect open = new connect(); Connection mysql = open.getconnection(); try '"+cari+"'"; cari=tid.gettext(); Statement stmt=mysql.createstatement(); String sql= "Select * from obat where id_obat like 27
Tidak Ditemukan"); ResultSet i = stmt.executequery (sql); if(i.next()) tid.settext(i.getstring(1)); tnama.settext(i.getstring(2)); tjenis.settext(i.getstring(3)); tharga.settext(i.getstring(4)); tproduksi.settext(i.getstring(5)); else JOptionPane.showMessageDialog(null,"Data Obat catch (Exception ex) JOptionPane.showMessageDialog(null,ex.getMessage()); ); 28
3. Edit //Update upt.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_obat,nama,jenis,harga,produksi; id_obat = tid.gettext(); nama = tnama.gettext(); jenis = tjenis.gettext(); harga = tharga.gettext(); produksi = tproduksi.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "UPDATE obat SET nama ='"+nama +"',jenis='"+jenis +"',harga='"+harga +"',produksi='"+produksi +"' WHERE id_pasien='"+id_obat+"'"; int i = stmt.executeupdate (sql); if (i==1) JOptionPane.showMessageDialog(null, "data obat berhasil di update"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 29
4. Delete //Delete del.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_obat,nama,jenis,harga,produksi; id_obat = tid.gettext(); nama = tnama.gettext(); jenis = tjenis.gettext(); harga = tharga.gettext(); produksi = tproduksi.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "DELETE FROM obat WHERE id_obat ='"+id_obat+"'"; int i = stmt.executeupdate (sql); if(i == 1) JOptionPane.showMessageDialog(null, "data obat berhasil di hapus"); 30
catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); public static void main(string args[]) obat ps =new obat(); ps.cetak(); ps.action(); 5. View import java.awt.*; import java.sql.*; import javax.swing.*; 31
import javax.swing.table.*; public class view_obat extends JPanel String [] header = "ID Obat","Nama Obat","Jenis","Harga","Produksi"; JTable table = new JTable(); JScrollPane scrolltable = new JScrollPane(); private Object[][] datatable = null; view_obat() connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "SELECT * FROM obat"; ResultSet rs = stmt.executequery(sql); ResultSetMetaData meta = rs.getmetadata (); int kolom = meta.getcolumncount(); int baris = 0; while (rs.next()) baris = rs.getrow(); datatable = new Object[baris][kolom]; int x = 0; rs.beforefirst(); while(rs.next()) datatable[x][0] = rs.getstring("id_obat"); datatable[x][1] = rs.getstring("nama"); datatable[x][2] = rs.getstring("jenis"); datatable[x][3] = rs.getstring("harga"); datatable[x][4] = rs.getstring("produksi"); x++; scrolltable.setviewportview(table); table.setmodel(new DefaultTableModel(dataTable, header)); add(scrolltable,borderlayout.north); stmt.close(); rs.close(); 32
catch (Exception ex) JOptionPane.showMessageDialog(null, "data obat error"); void GUI() JFrame frame = new JFrame("Data Obat"); frame.setdefaultcloseoperation(jframe.exit_on_close); view_obat content = new view_obat(); content.setopaque(true); frame.setcontentpane(content); frame.pack(); frame.setlocationrelativeto(null); frame.setvisible(true); public static void main(string []args) view_obat inputan = new view_obat(); inputan.gui(); 33
D. Periksa 1. Input import java.awt.event.*; import java.sql.*; import javax.swing.*; class periksa extends JFrame //membuat label, JLabel id=new JLabel("ID Periksa "); JLabel tgl=new JLabel("Tanggal Periksa "); JLabel dr=new JLabel("ID Dokter"); JLabel ps=new JLabel("ID Pasien"); JLabel dn=new JLabel("Diagnosa"); JLabel ket=new JLabel("Keterangan"); //membuat textfield, JTextField tid=new JTextField(50); JTextField ttgl=new JTextField(50); JTextField tdr=new JTextField(70); JTextField tps=new JTextField(50); JTextField tdn=new JTextField(50); JTextArea tket=new JTextArea(); 34
//membuat Button JButton save=new JButton("Save"); JButton upt=new JButton("Update"); JButton cari=new JButton("Cari"); JButton del=new JButton("Delete"); //mengatur tata letak Frame dan Ukuran periksa() settitle("form Periksa"); setlocation(300,100); setsize(500,450); setdefaultcloseoperation(jframe.exit_on_close); setvisible(false); //Menampilkan isi Frame void Cetak() //Label getcontentpane().setlayout(null); getcontentpane().add(id);id.setbounds(10,20,90,25); getcontentpane().add(tgl);tgl.setbounds(10,50,110,25); getcontentpane().add(dr);dr.setbounds(10,80,90,25); getcontentpane().add(ps);ps.setbounds(10,110,110,25); getcontentpane().add(dn);dn.setbounds(10,140,300,25); getcontentpane().add(ket);ket.setbounds(10,170,90,25); //TextField getcontentpane().add(tid);tid.setbounds(110,20,150,25); getcontentpane().add(ttgl);ttgl.setbounds(110,50,150,25); getcontentpane().add(tdr);tdr.setbounds(110,80,150,25); getcontentpane().add(tps);tps.setbounds(110,110,150,25); getcontentpane().add(tdn);tdn.setbounds(110,140,150,25); getcontentpane().add(tket);tket.setbounds(110,170,200,100); //Button getcontentpane().add(save);save.setbounds(110,280,90,25); getcontentpane().add(del);del.setbounds(310,280,90,25); getcontentpane().add(upt);upt.setbounds(210,280,90,25); getcontentpane().add(cari);cari.setbounds(280,20,90,25); setvisible(true); void action() //Save save.addactionlistener(new ActionListener() public void actionperformed(actionevent e) 35
String id_periksa,tgl,id_dokter,id_pasien,diagnosa,keterangan; id_periksa = tid.gettext(); tgl = ttgl.gettext(); id_dokter = tdr.gettext(); id_pasien = tps.gettext(); diagnosa = tdn.gettext(); keterangan = tket.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "INSERT INTO periksa values('"+id_periksa+"','"+ tgl+"','"+id_dokter+"','"+id_pasien+"','"+diagnosa+"','"+keterangan+"');"; int i =stmt.executeupdate(sql); if(i==1) JOptionPane.showMessageDialog(null, "data periksa berhasil disimpan"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 36
2. Search //Cari cari.addactionlistener(new ActionListener() public void actionperformed(actionevent e) if (tid.gettext()=="") JOptionPane.showMessageDialog(null,"ID periksa Kosong"); else connect open = new connect(); Connection mysql = open.getconnection(); try String cari,id_periksa,tgl,id_dokter,id_pasien,diagnosa,keterangan; cari=tid.gettext(); Statement stmt=mysql.createstatement(); 37
'"+cari+"'"; Tidak Ditemukan"); String sql= "Select * from periksa where id_periksa like ResultSet i = stmt.executequery (sql); if(i.next()) tid.settext(i.getstring(1)); ttgl.settext(i.getstring(2)); tdr.settext(i.getstring(3)); tps.settext(i.getstring(4)); tdn.settext(i.getstring(5)); tket.settext(i.getstring(6)); else JOptionPane.showMessageDialog(null,"Data periksa catch (Exception ex) JOptionPane.showMessageDialog(null,ex.getMessage()); ); 38
3. Edit //Update upt.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_periksa,tgl,id_dokter,id_pasien,diagnosa,keterangan; id_periksa = tid.gettext(); tgl = ttgl.gettext(); id_dokter = tdr.gettext(); id_pasien = tps.gettext(); diagnosa = tdn.gettext(); keterangan = tket.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "UPDATE periksa SET tgl_periksa ='"+tgl +"',id_dokter='"+id_dokter +"',id_pasien='"+id_pasien +"',diagnosa='"+diagnosa +"',keterangan='"+keterangan +"' WHERE id_periksa='"+id_periksa+"'"; 39
int i = stmt.executeupdate (sql); if (i==1) JOptionPane.showMessageDialog(null, "data periksa berhasil di update"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 4. Delete //Delete del.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_periksa,tgl,id_dokter,id_pasien,diagnosa,keterangan; id_periksa = tid.gettext(); 40
tgl = ttgl.gettext(); id_dokter = tdr.gettext(); id_pasien = tps.gettext(); diagnosa = tdn.gettext(); keterangan=tket.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "DELETE FROM periksa WHERE id_periksa ='"+id_periksa+"'"; int i = stmt.executeupdate (sql); if(i == 1) JOptionPane.showMessageDialog(null, "data periksa berhasil di hapus"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); public static void main(string args[]) periksa pr =new periksa(); pr.cetak(); pr.action(); 41
5. View import java.awt.*; import java.sql.*; import javax.swing.*; import javax.swing.table.*; public class view_periksa extends JPanel String [] header = "ID Periksa","Tanggal Periksa","ID Dokter", "ID Pasien","Diagnosa","Keterangan"; JTable table = new JTable(); JScrollPane scrolltable = new JScrollPane(); private Object[][] datatable = null; view_periksa() connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "SELECT * FROM periksa"; 42
ResultSet rs = stmt.executequery(sql); ResultSetMetaData meta = rs.getmetadata (); int kolom = meta.getcolumncount(); int baris = 0; while (rs.next()) baris = rs.getrow(); datatable = new Object[baris][kolom]; int x = 0; rs.beforefirst(); while(rs.next()) datatable[x][0] = rs.getstring("id_periksa"); datatable[x][1] = rs.getstring("tgl_periksa"); datatable[x][2] = rs.getstring("id_dokter"); datatable[x][3] = rs.getstring("id_pasien"); datatable[x][4] = rs.getstring("diagnosa"); datatable[x][5] = rs.getstring("keterangan"); x++; scrolltable.setviewportview(table); table.setmodel(new DefaultTableModel(dataTable, header)); add(scrolltable,borderlayout.north); stmt.close(); rs.close(); catch (Exception ex) JOptionPane.showMessageDialog(null, "Data Periksa error"); void GUI() JFrame frame = new JFrame("Data Periksa"); frame.setdefaultcloseoperation(jframe.exit_on_close); view_periksa content = new view_periksa(); content.setopaque(true); frame.setcontentpane(content); frame.pack(); frame.setlocationrelativeto(null); frame.setvisible(true); 43
public static void main(string []args) view_periksa inputan = new view_periksa(); inputan.gui(); E. Resep 1. Input import java.awt.event.*; import java.sql.*; import javax.swing.*; class resep extends JFrame //membuat label, JLabel id=new JLabel("ID Resep "); JLabel id_ob=new JLabel("ID Obat"); JLabel id_pr=new JLabel("ID Periksa"); JLabel jumlah=new JLabel("jumlah Obat"); JLabel ap=new JLabel("Aturan Pakai"); 44
//membuat textfield, JTextField tid=new JTextField(50); JTextField tid_ob=new JTextField(50); JTextField tid_pr=new JTextField(70); JTextField tjumlah=new JTextField(50); JTextField tap=new JTextField(50); //membuat Button JButton save=new JButton("Save"); JButton upt=new JButton("Update"); JButton cari=new JButton("Cari"); JButton del=new JButton("Delete"); //mengatur tata letak Frame dan Ukuran resep() settitle("form Resep"); setlocation(300,100); setsize(500,450); setdefaultcloseoperation(jframe.exit_on_close); setvisible(false); //Menampilkan isi Frame void Cetak() //Label getcontentpane().setlayout(null); getcontentpane().add(id);id.setbounds(10,20,90,25); getcontentpane().add(id_ob);id_ob.setbounds(10,50,110,25); getcontentpane().add(id_pr);id_pr.setbounds(10,80,90,25); getcontentpane().add(jumlah);jumlah.setbounds(10,110,110,25); getcontentpane().add(ap);ap.setbounds(10,140,100,25); //TextField getcontentpane().add(tid);tid.setbounds(110,20,150,25); getcontentpane().add(tid_ob);tid_ob.setbounds(110,50,150,25); getcontentpane().add(tid_pr);tid_pr.setbounds(110,80,150,25); getcontentpane().add(tjumlah);tjumlah.setbounds(110,110,150,25); getcontentpane().add(tap);tap.setbounds(110,140,150,25); //Button getcontentpane().add(save);save.setbounds(110,170,90,25); getcontentpane().add(del);del.setbounds(310,170,90,25); getcontentpane().add(upt);upt.setbounds(210,170,90,25); getcontentpane().add(cari);cari.setbounds(280,20,90,25); setvisible(true); 45
void action() //Save save.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_resep,id_obat,id_periksa,jumlah,aturan; id_resep = tid.gettext(); id_obat = tid_ob.gettext(); id_periksa = tid_pr.gettext(); jumlah = tjumlah.gettext(); aturan = tap.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "INSERT INTO resep values('"+id_resep+"','"+ id_obat+"','"+id_periksa+"','"+jumlah+"','"+aturan+"');"; int i =stmt.executeupdate(sql); if(i==1) JOptionPane.showMessageDialog(null, "data resep berhasil disimpan"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 46
2. Search //Cari cari.addactionlistener(new ActionListener() public void actionperformed(actionevent e) if (tid.gettext()=="") JOptionPane.showMessageDialog(null,"ID resep Kosong"); else connect open = new connect(); Connection mysql = open.getconnection(); try String cari,id_resep,id_obat,id_periksa,jumlah,aturan; cari=tid.gettext(); Statement stmt=mysql.createstatement(); 47
'"+cari+"'"; Tidak Ditemukan"); String sql= "Select * from resep where id_resep like ResultSet i = stmt.executequery (sql); if(i.next()) tid.settext(i.getstring(1)); tid_ob.settext(i.getstring(2)); tid_pr.settext(i.getstring(3)); tjumlah.settext(i.getstring(4)); tap.settext(i.getstring(5)); else JOptionPane.showMessageDialog(null,"Data resep catch (Exception ex) JOptionPane.showMessageDialog(null,ex.getMessage()); ); 48
3. Edit //Update upt.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_resep,id_obat,id_periksa,jumlah,aturan; id_resep = tid.gettext(); id_obat = tid_ob.gettext(); id_periksa = tid_pr.gettext(); jumlah = tjumlah.gettext(); aturan = tap.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "UPDATE resep SET id_obat ='"+id_obat +"',id_periksa='"+id_periksa +"',jumlah_obat='"+jumlah +"',aturan_pakai='"+aturan +"' WHERE id_resep='"+id_resep+"'"; int i = stmt.executeupdate (sql); if (i==1) JOptionPane.showMessageDialog(null, "data resep berhasil di update"); catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); 49
4. Delete //Delete del.addactionlistener(new ActionListener() public void actionperformed(actionevent e) String id_resep,id_obat,id_periksa,jumlah,aturan; id_resep = tid.gettext(); id_obat = tid_ob.gettext(); id_periksa = tid_pr.gettext(); jumlah = tjumlah.gettext(); aturan = tap.gettext(); //input ke database connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "DELETE FROM resep WHERE id_resep ='"+id_resep+"'"; int i = stmt.executeupdate (sql); if(i == 1) JOptionPane.showMessageDialog(null, "data resep berhasil di hapus"); 50
catch(exception ex) JOptionPane.showMessageDialog(null, ex.getmessage()); ); public static void main(string args[]) resep rs =new resep(); rs.cetak(); rs.action(); 5. View import java.awt.*; import java.sql.*; import javax.swing.*; 51
import javax.swing.table.*; public class view_resep extends JPanel String [] header = "ID Resep","ID Obat","ID Periksa", "Jumlah Obat","Aturan pakai"; JTable table = new JTable(); JScrollPane scrolltable = new JScrollPane(); private Object[][] datatable = null; view_resep() connect open = new connect(); Connection mysql = open.getconnection(); try Statement stmt = mysql.createstatement(); String sql = "SELECT * FROM resep"; ResultSet rs = stmt.executequery(sql); ResultSetMetaData meta = rs.getmetadata (); int kolom = meta.getcolumncount(); int baris = 0; while (rs.next()) baris = rs.getrow(); datatable = new Object[baris][kolom]; int x = 0; rs.beforefirst(); while(rs.next()) datatable[x][0] = rs.getstring("id_resep"); datatable[x][1] = rs.getstring("id_obat"); datatable[x][2] = rs.getstring("id_periksa"); datatable[x][3] = rs.getstring("jumlah_obat"); datatable[x][4] = rs.getstring("aturan_pakai"); x++; scrolltable.setviewportview(table); table.setmodel(new DefaultTableModel(dataTable, header)); add(scrolltable,borderlayout.north); stmt.close(); rs.close(); 52
catch (Exception ex) JOptionPane.showMessageDialog(null, "Data Resep error"); void GUI() JFrame frame = new JFrame("Data Resep"); frame.setdefaultcloseoperation(jframe.exit_on_close); view_resep content = new view_resep(); content.setopaque(true); frame.setcontentpane(content); frame.pack(); frame.setlocationrelativeto(null); frame.setvisible(true); public static void main(string []args) view_resep inputan = new view_resep(); inputan.gui(); 53
54
BAB IV MENU A. Menu import javax.swing.*; import java.awt.event.*; class menu_periksa extends JFrame JMenuBar menubar=new JMenuBar(); JMenu File=new JMenu("File"); JMenu Data=new JMenu("Admin Setup"); JMenuItem table=new JMenuItem("Kelola Admin"); JMenuItem table2=new JMenuItem("Admin List"); JMenuItem Exit=new JMenuItem("Exit"); JMenu pasien1=new JMenu("Pasien"); JMenuItem form_pasien=new JMenuItem("Form Pasien"); JMenuItem view_pasien1=new JMenuItem("View pelanggan"); JMenu dokter1=new JMenu("Dokter"); JMenuItem form_dokter=new JMenuItem("Form Dokter"); JMenuItem view_dokter1=new JMenuItem("View Dokter"); JMenu resep1=new JMenu("Resep"); JMenuItem form_resep=new JMenuItem("Form Resep"); JMenuItem view_resep1=new JMenuItem("View Resep"); JMenu periksa1=new JMenu("Periksa"); JMenuItem form_periksa=new JMenuItem("Form Periksa"); JMenuItem view_periksa1=new JMenuItem("View Periksa"); JMenu about=new JMenu("About"); JMenuItem aboutme=new JMenuItem("About Me"); 55
menu_periksa() settitle("sistem Informasi Rekam Medis Rawat Jalan"); setlocation(300,200); setsize(600,300); setdefaultcloseoperation(jframe.exit_on_close); void tampilanmenu() setjmenubar(menubar); menubar.add(file); menubar.add(file); File.add(Data); Data.add(table); Data.add(table2); menubar.add(pasien1); pasien1.add(form_pasien); pasien1.add(view_pasien1); menubar.add(dokter1); dokter1.add(form_dokter); dokter1.add(view_dokter1); menubar.add(resep1); resep1.add(form_resep); resep1.add(view_resep1); File.add(Exit); menubar.add(periksa1); periksa1.add(form_periksa); periksa1.add(view_periksa1); menubar.add(about); about.add(aboutme); setvisible(true); void perintah() Exit.addActionListener (new ActionListener() public void actionperformed (ActionEvent e) 56
System.exit(0); ); //KONEKSI KE FILE TABEL PASIEN form_pasien.addactionlistener (new ActionListener() public void actionperformed(actionevent e) pasien ps =new pasien(); ps.cetak(); ps.action(); ); view_pasien1.addactionlistener (new ActionListener() public void actionperformed(actionevent e) view_pasien inputan=new view_pasien(); inputan.gui(); ); //KONEKSI KE TABEL DOKTER form_dokter.addactionlistener (new ActionListener() public void actionperformed(actionevent e) dokter dk =new dokter(); dk.cetak(); dk.action(); ); view_dokter1.addactionlistener (new ActionListener() public void actionperformed(actionevent e) view_dokter inputan=new view_dokter(); inputan.gui(); ); 57
//KONEKSI KE TABEL RESEP form_resep.addactionlistener (new ActionListener() public void actionperformed(actionevent e) resep rs =new resep(); rs.cetak(); rs.action(); ); view_resep1.addactionlistener (new ActionListener() public void actionperformed(actionevent e) view_resep inputan=new view_resep(); inputan.gui(); ); //KONEKSI KE TABEL PERIKSA form_periksa.addactionlistener (new ActionListener() public void actionperformed(actionevent e) periksa pr =new periksa(); pr.cetak(); pr.action(); ); view_periksa1.addactionlistener (new ActionListener() public void actionperformed(actionevent e) view_periksa inputan=new view_periksa(); inputan.gui(); ); //koneksi ke tabel user table.addactionlistener (new ActionListener() public void actionperformed(actionevent e) //input_user inputan=new input_user(); 58
//inputan.gui(); //inputan.perintah(); ); table2.addactionlistener (new ActionListener() public void actionperformed(actionevent e) //view_user inputan=new view_user(); //inputan.gui(); ); aboutme.addactionlistener (new ActionListener() public void actionperformed (ActionEvent e) JOptionPane.showMessageDialog(null, " Tugas Java JDBC- by : Muhammadu Nawa (13121033) ","About",JOptionPane.INFORMATION_MESSAGE); ); public static void main(string[]args) menu_periksa ss = new menu_periksa(); ss.tampilanmenu(); ss.perintah(); 59
B. Integrasi Menu 1. Form Pasien 2. View Pasien 60
3. Form Dokter 61
4. View Dokter 62
5. Form Obat 63
6. View Obat 64
7. Form Periksa 65
8. View Periksa 66
9. Form Resep 67
10. View Resep 68
BAB V PENUTUP A. Kesimpulan Dengan menggunakan system aplikasi rekam medis rawat jalan, diharapkan masyarakat Indonesia nanti, khususnya para rumah sakit bisa lebih meningkat produktifitasnya. B. Kesulitan 1.Waktu terlalu singkat untuk sebuah project dengan banyak table 2.Tidak ada contoh dokumen yang bias dijadikan acuan 69