SISTEM INFORMASI PENJUALAN OBAT BERBASIS JAVA
Disusun oleh : Rozy Putra Pratama 13121021 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
B.
RELASI ANTAR TABEL .......................................................................................... 2
BAB III ...................................................................................................................................... 3 B.
PELANGGAN .......................................................................................................... 11 1.
Input ....................................................................................................................... 11
2.
Search .................................................................................................................... 12
BAB V PENUTUP .................................................................................................................. 14 A.
Kesimpulan................................................................................................................ 14
B.
Kesulitan.................................................................................................................... 14
ii
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 data dan didukung teknologi komunikasi akan memberikan kemudahan pekerjaan manajemen dan pelayanan kepada masyarakat. Hal ini juga dirasakan oleh Apotek dalam menangani data obat,dengan melihat tugas-tugas urusan daftar obat, dapat mengetahui lebih jauh tentang konsep dasar pada penjualan obat, perkembangan dan kemajuan penjualan obat tergantung pada pelayanan apotek karena merupakan ujung tombak penjualan obat yang dapat membawa nama baik apotek tersebut. Sistem komputerisasi sangatlah diperlu kan dalam penjualan obat. Karena pencatatan data penjualan obat yang masih bersfat konvensional, dan data riwayat pelanggan tidak dapat dilihat lintas apotek. Berdasarkan pertimbangan pentingnya membuat sistem informasi manajemen yang dapat memberikan kemudahan dalam mengelola sumber informasi dan dapat meningkatkan kinerja pada apotek. B. Alasan Pemilihan Masalah Nah, berangkat dari pemikiran itulah penulis akhirnya memutuskan untuk menjadikan “SISTEM INFORMASI PENJUALAN OBAT” 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 apotek 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
B. RELASI ANTAR TABEL
2
BAB III A. PASIEN Source Code import java.awt.event.*; import java.sql.*; import javax.swing.*; class pelanggan extends JFrame { //membuat label, JLabel id=new JLabel("ID Pelanggan "); JLabel nama=new JLabel("Nama Pelanggan "); JLabel alm=new JLabel("Alamat "); JLabel tlp=new JLabel("Tlp"); //membuat textfield, JTextField tid=new JTextField(50); JTextField tnama=new JTextField(50); JTextField talm=new JTextField(70); JTextField ttlp=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 pelanggan() { 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); getContentPane().add(nama);nama.setBounds(10,50,90,25); getContentPane().add(alm);alm.setBounds(10,80,90,25); getContentPane().add(tlp);tlp.setBounds(10,210,110,25); //TextField getContentPane().add(tid);tid.setBounds(110,20,150,25); getContentPane().add(tnama);tnama.setBounds(110,50,150,25); 3
getContentPane().add(talm);talm.setBounds(110,80,200,100); getContentPane().add(ttlp);ttlp.setBounds(110,210,180,25); //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() {
1. Input //Save save.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String id_obat,nama,kegunaan,harga; id_obat = tid.getText(); nama = tnama.getText(); kegunaan=tkg.getText(); harga = thrg.getText();
4
//input ke database connect open = new connect(); Connection mysql = open.getConnection(); try { Statement stmt = mysql.createStatement(); String sql = "INSERT INTO web_obat values('"+id_obat+"','"+ nama+"','"+kegunaan+"','"+harga+"');"; int i =stmt.executeUpdate(sql); if(i==1) { JOptionPane.showMessageDialog(null, "data Obat berhasil disimpan"); } } catch(Exception ex) { JOptionPane.showMessageDialog(null, ex.getMessage()); } } }); });
2. Search //Cari 5
cari.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (tid.getText()=="") { JOptionPane.showMessageDialog(null,"ID Obat Kosong"); } else { String cari,id_obat,nama,kegunaan,harga; connect open = new connect(); Connection mysql = open.getConnection(); try { cari=tid.getText(); Statement stmt=mysql.createStatement(); String sql= "Select * from obat where id_obat like '"+cari+"'"; ResultSet i = stmt.executeQuery (sql); if(i.next()) { tid.setText(i.getString(1)); tnama.setText(i.getString(2)); tkg.setText(i.getString(4)); thrg.setText(i.getString(3)); } else { JOptionPane.showMessageDialog(null,"Data Obat Tidak Ditemukan"); } } catch (Exception ex) { JOptionPane.showMessageDialog(null,ex.getMessage()); } } } }); });
6
7
3. Edit //Update upt.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String id_obat,nama,kegunaan,harga; id_obat = tid.getText(); nama = tnama.getText(); kegunaan=tkg.getText(); harga = thrg.getText(); //input ke database connect open = new connect(); Connection mysql = open.getConnection(); try { Statement stmt = mysql.createStatement(); String sql = "UPDATE Obat SET nama ='"+nama +"',harga='"+kegunaan +"' WHERE id_obat='"+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()); } } });
4. Delete //Delete del.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) 8
{ String id_obat,nama,kegunaan,harga; id_obat = tid.getText(); nama = tnama.getText(); harga = thrg.getText(); kegunaan = tkg.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") } } catch(Exception ex) { JOptionPane.showMessageDialog(null, ex.getMessage()); } } }); } public static void main(String args[]) { obat dk =new obat(); dk.Cetak(); dk.action(); } } 5. View import java.awt.*; import java.sql.*; import javax.swing.*; 9
import javax.swing.table.*; public class view_obat extends JPanel { String [] header = {"ID Obat","Nama Obat","Kegunaan", "Harga"}; 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 nama_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("kegunaan"); dataTable[x][3] = rs.getString("harga"); x++; } scrollTable.setViewportView(table); table.setModel(new DefaultTableModel(dataTable, header)); add(scrollTable,BorderLayout.NORTH); stmt.close(); rs.close();
10
} 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();
} }
B. PELANGGAN 1. Input import java.awt.event.*; import java.sql.*; import javax.swing.*; class pelanggan extends JFrame { //membuat label, JLabel id=new JLabel("ID Pelanggan "); JLabel nama=new JLabel("Nama Pelanggan "); JLabel alm=new JLabel("Alamat "); JLabel tlp=new JLabel("Tlp"); //membuat textfield, JTextField tid=new JTextField(50); JTextField tnama=new JTextField(50); JTextField talm=new JTextField(70); JTextField ttlp=new JTextField(50); 11
//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 pelanggan() { 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); getContentPane().add(nama);nama.setBounds(10,50,90,25); getContentPane().add(alm);alm.setBounds(10,80,90,25); getContentPane().add(tlp);tlp.setBounds(10,210,110,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(ttlp);ttlp.setBounds(110,210,180,25); //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() { 2. Search //Save save.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { 12
String id_pelanggan,nama,alamat,tlp; id_pelanggan = tid.getText(); nama = tnama.getText(); alamat = talm.getText(); tlp = ttlp.getText(); //input ke database connect open = new connect(); Connection mysql = open.getConnection(); try { Statement stmt = mysql.createStatement(); String sql = "INSERT INTO pelanggan values('"+id_pelanggan+"','"+ nama+"','"+alamat+"','"+tlp+"');"; int i =stmt.executeUpdate(sql); if(i==1) { JOptionPane.showMessageDialog(null, "data pelanggan berhasil disimpan"); } } catch(Exception ex) { JOptionPane.showMessageDialog(null, ex.getMessage()); } } });
13
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
14