Laporan Aplikasi Apotik

download Laporan Aplikasi Apotik

of 17

Transcript of Laporan Aplikasi Apotik

Aplikasi ApotikAplikasi Apotik dengan menggunakan bahasa pemrograman java. Aplikasi ini mempunyai menu utama yaitu :

LoginDalam login terdapat form yang harus diisi dengan username dan password. Username yang kami pakai untuk menjalankan program ini adalah Didi dengan password 1308063, Lyta dengan pasword 1308071, dan Yana dengan pasword 1308080. Nama dan password tersebut sudah terinput dalam database. Ini adalah tampilan form login dari Aplikasi Apotik yang kami buat. Tampilan login di bawah ini adalah tampilan jika tidak berhasil login, maka akan muncul Pesan Login seperti dibawah ini.

Kesalahan seperti ini biasanya username atau password yang dimasukkan tidak sesuai dengan nama admin yang sudah ter-input didatabase. Jika berhasil login maka akan muncul Pesan Login seperti dibawah ini.

1

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

Setelah berhasil login maka akan muncul form menu utama.

Dalam menu utama berisi File, Obat, Penjualan, Distributor dan Help.berikut contoh dan penjelasannya :

FileDalam menu file terdapat form Admin, About, dan Logout. Form Admin

2

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

Pada form admin terdapat beberapa tombol,yaitu : Simpan Tombol Simpan berguna untuk menyimpan data yang akan diinput dari aplikasi sehingga dapat tersimpan kedalam database. Di bawah ini adalah script dari tombol simpan:private void simpanActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String user="root"; String pwd=""; String host="localhost"; String db="menulogin"; String urlValue=""; try { Class.forName("com.mysql.jdbc.Driver"); urlValue="jdbc:mysql://"+ host +"/"+ db +"?user="+ user +"&password="+ pwd; Connection conn= DriverManager.getConnection(urlValue); PreparedStatement pStatement=null; String sql ="insert into userapp"+ "(id,Nama,Password)" + "values(?,?,?)"; pStatement = conn.prepareStatement(sql); pStatement.setString(1, txt1.getText()); pStatement.setString(2, txt2.getText()); pStatement.setString(3, txt3.getText()); int intTambah=pStatement.executeUpdate(); if (intTambah > 0) JOptionPane.showMessageDialog(this, "Input data berhasil", "Informasi", JOptionPane.INFORMATION_MESSAGE); else JOptionPane.showMessageDialog(this, "Input data gagal !!!", "Error", JOptionPane.INFORMATION_MESSAGE); pStatement.close(); conn.close(); txt1.setText(""); txt2.setText(""); txt3.setText(""); txt1.requestFocus(); tampilTabel(); } catch (ClassNotFoundException e){

3

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

System.out.println("jdbc.Driver tidak ditemukan"); } catch (SQLException e){ System.out.println("Koneksi gagal" + e.toString()); } }

Cari Tombol cari berguna untuk mencari data admin yang kita inginkan. Caranya yaitu dengan mengetik ID admin pada teks Id yang terdapat pada form admin, kemudian klik tombol cari. Di bawah ini adalah script tombol cari pada form admin :private void cariActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String user="root"; String pwd=""; String host="localhost"; String db="menulogin"; String urlValue=""; Connection Lconnection=null; try{ Class.forName("com.mysql.jdbc.Driver"); urlValue="jdbc:mysql://"+ host +"/"+ db +"?user="+ user + "&password="+ pwd; Lconnection=DriverManager.getConnection(urlValue); Statement st= Lconnection.createStatement(); ResultSet rs= st.executeQuery( "Select * from userapp"+ " where id = "+ txt1.getText()); if(rs.next()){ txt2.setText(rs.getString("Nama")); txt3.setText(rs.getString("Password")); } else { JOptionPane.showMessageDialog(this, "Id : Salah","Informasi", JOptionPane.INFORMATION_MESSAGE); txt1.setText(""); txt2.setText(""); txt3.setText(""); txt1.requestFocus(); } } catch(ClassNotFoundException e){

4

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

System.out.println("jdbc.Driver tidak ditemukan"); } catch(SQLException e){ System.out.println("Koneksi Gagal"+ e.toString()); } }

Edit Tombol edit digunakan untuk mengedit database yang sudah terinput. Untuk menggunakan tombol edit harus mengetikan ID admin yang ingin diedit kemudian klik tombol cari sehingga muncul data admin yang ingin diedit. Setalah muncul data admin tersebut kita langsung dapat mengedit dan klik tombol edit. Di bawah ini adalah script tombol edit :private void editActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String user="root"; String pwd=""; String host="localhost"; String db="menulogin"; String urlValue=""; Connection Lconnection=null; try{ Class.forName("com.mysql.jdbc.Driver"); urlValue="jdbc:mysql://"+ host +"/"+ db +"?user="+ user + "&password="+ pwd; Lconnection=DriverManager.getConnection(urlValue); PreparedStatement pStatement = null; String sql ="update userapp set Nama=?, Password=? where id=?"; pStatement = Lconnection.prepareStatement(sql); pStatement.setString(1, txt2.getText()); pStatement.setString(2, txt3.getText()); pStatement.setString(3, txt1.getText()); int intTambah = pStatement.executeUpdate(); if(intTambah > 0) JOptionPane.showMessageDialog(this, "Edit Sukses","Informasi", JOptionPane.INFORMATION_MESSAGE); else JOptionPane.showMessageDialog(this, "Edit Gagal","Informasi", JOptionPane.INFORMATION_MESSAGE); pStatement.close(); txt1.setText("");

5

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

txt2.setText(""); txt3.setText(""); txt1.requestFocus(); tampilTabel(); } catch(ClassNotFoundException e){ System.out.println("jdbc.Driver tidak ditemukan"); } catch(SQLException e){ System.out.println("Koneksi Gagal"+ e.toString()); } }

Bersih Tombol ini digunakan untuk mengkosongkan data yang masih mucul. Berikut contoh scriptnya :private void bersihActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: txt1.setText(""); txt2.setText(""); txt3.setText(""); txt1.requestFocus(); }

Hapus Tombol ini digunakan untuk menghapus data yang sudah terinput ke dalam database. Berikut contoh scriptnya :private void hapusActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String user="root"; String pwd=""; String host="localhost"; String db="menulogin"; String urlValue=""; try{ Class.forName("com.mysql.jdbc.Driver"); urlValue ="jdbc:mysql://"+ host +"/"+ db +"?user="+ user +"&password="+ pwd; Connection conn = DriverManager.getConnection(urlValue); PreparedStatement pStatement = null; String sql ="delete from userapp where id=?"; pStatement=conn.prepareStatement(sql);

6

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

pStatement.setString(1, txt1.getText()); int intTambah = pStatement.executeUpdate(); if(intTambah >0) JOptionPane.showMessageDialog(this, "Hapus data sukses", "Informasi", JOptionPane.INFORMATION_MESSAGE); else JOptionPane.showMessageDialog(this, "Hapus data gagal", "Informasi", JOptionPane.INFORMATION_MESSAGE); pStatement.close(); conn.close(); txt1.setText(""); txt2.setText(""); txt3.setText(""); txt1.requestFocus(); tampilTabel(); } catch (ClassNotFoundException e){ System.out.println("jdbc.Driver tidak ditemukan"); } catch (SQLException e){ System.out.println("Koneksi gagal"+ e.toString()); } }

Keluar Tombol ini digunakan untuk keluar dari form admin. Berikut contoh scriptnya :private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: this.dispose(); }

7

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

Form About

Form Logout

Dan muncul pesan logout

8

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

ObatDalam menu Obat terdapat form Entry Data, Back Order, dan Informasi. Dibawah ini adalah Form Entry Data: Form Entry Data

Form Back Order

9

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

Form Informasi

PenjualanDalam menu Penjualan terdapat form Entry Beli dan Informasi Jual. Dibawah ini adalah Form Entry Beli: Form Entry Beli

10

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

Form Informasi Jual

DistributorDalam menu Distributor terdapat form Entry Distributor dan Data Distributor. Dibawah ini adalah Form Entry Distributor:

Form Entry Distributor

Form Data Distributor

11

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

Bila ingin keluar dan kita mengklik tanda X pada kanan atas form menu utama maka akan muncul tampilan seperti ini :

Apabila kita tekan Yes maka akan keluar form berikutnya tetapi bila kita tekan No maka akan kembali ke form menu utama. Ini adalah form berikutnya bila kita mengklik Yes pada form diatas :

Setelah meng-klik tombol OK maka tampilan seluruh form akan keluar dan akan muncul form Login. Hal ini kami buat bertujuan untuk memudahkan pengguna agar tidak merasa repot untuk membuka aplikasi kembali.

Data BaseNama Database : menulogin Di dalam database menulogin terdapat beberapa tabel, yaitu : 1. backorder Nama Field kd_obat nama_obat satuan t_border jam tanggal Tipe Data Int Varchar Varchar Varchar Time Date Length 10 20 30 30

12

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

2. distributor Nama Field kd_distributor nama alamat no_telp tgl_input 3. entrydata Nama Field kd_obat nama_obat nama_distributor satuan total jam tanggal 4. pembelian Nama Field kd_kasir nama_kasir nama_obat jml_barang total jam tanggal Tipe Data Varchar Varchar Varchar Varchar Int Time Date Length 10 20 30 10 30 Tipe Data Varchar Varchar Varchar Varchar Int Time Date Length 6 20 30 10 11 Tipe Data Varchar Varchar Varchar Varchar Date Length 10 20 50 30

13

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

5. userapp Nama Field id nama password Tipe Data Int Varchar Varchar Length 20 30 10

Relasi Antar Entitas

Tb_backorderKd_obat Nama_obat Satuan T_border Jam Tanggal

Tb_entrydatakd_obat nama_obat nama_distributor Satuan Total Jam Tanggal

Tb_pembeliankd_kasir nama_kasir nama_obat jml_barang Total Jam Tanggal

14

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

Dibawah ini bentuk UML dari Aplikasi Apotik yaitu terdiri dari : Use case diagram

uses

cari data admin uses

uses

uses uses

entry data admin

uses hapus data admin uses

uses

edit data admin

extends view data admin bersih data admin uses entry data obat uses uses

cari data obat uses uses

uses

edit data obat uses view data obat uses uses bersih data obat hapus data obat

admin user uses uses

entry data backorder

uses cari data backorder uses uses

uses

view data backorder edit data backorder uses uses uses

hapus data backorder

uses

entry data distributor uses bersih data backorder cari data distributor uses uses

view data distributor uses uses uses

edit data distributor uses

hapus data distributor

bersih data distributor entry data pembelian uses cari data pembelian uses uses hapus data pembelian

edit data pembelian uses

uses

view data pembelian

uses

bersih data pembelian

15

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

Class diagram

Admin --Id : String --Nama : String --Password : String

Distributor -KdDistributor : String -Nama : String -Alamat : String -No_Tlp : Integer -Tgl_input : Date 1

1

End1 1 End2 EntryData -KdObat : String -NamaObat : String -NamaDistributor : String -Satuan : String -Total : Integer -Jam : String -Tanggal : Date 1 Pembelian -KdKasir : String -NamaKasir : String -NamaObat : String -JmlBarang : Integer -Total : Integer -Jam : String -Tanggal : Date

BackOrder -KdObat : String -NamaObat : String -Satuan : String -Tborder : String -Jam : String -Tanggal : Date

16

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6

Sequence diagram

Login

EntryData

BackOrder

Distributor

Pembelian

Admin

-vertifikasi

*

*

Add * * Update Delete

Add * * Update Delete

Add Update * Delete

*

Add Update * * Delete

17

Pemrograman Berbasis Objek/Laporan Aplikasi Apotik/Semester 6