repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan...

121
BAB IV RANCANGAN SISTEM DAN PROGRAM USULAN 4.1. Analisa Kebutuhan Software 1. Tahap Analisis Pada Sistem Informasi Persediaan Obat berbasis java dimana terdiri dari user dan admin,dimana user dapat meginput data user baru ataupun mengedit data yang sudah ada sedangkan admin dapat mengakses secara keseluruhan mulai dari proses sampai laporan. Berikut ini spesifikasi kebutuhan (system requirement) dari sistem informasi java. Halaman Fornt-Page : A1. User dapat mengakses data user. A2. User dapat mengakses master resep. A3. User dapat mengakses transaksi resep. Halaman Administrasi : B1. Administrasi dapat menginput data obat. B2. Administrai dapat menginput distributor. 26

Transcript of repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan...

Page 1: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

BAB IV

RANCANGAN SISTEM DAN PROGRAM USULAN

4.1. Analisa Kebutuhan Software

1. Tahap Analisis

Pada Sistem Informasi Persediaan Obat berbasis java dimana terdiri dari

user dan admin,dimana user dapat meginput data user baru ataupun mengedit data

yang sudah ada sedangkan admin dapat mengakses secara keseluruhan mulai dari

proses sampai laporan. Berikut ini spesifikasi kebutuhan (system requirement)

dari sistem informasi java.

Halaman Fornt-Page :

A1. User dapat mengakses data user.

A2. User dapat mengakses master resep.

A3. User dapat mengakses transaksi resep.

Halaman Administrasi :

B1. Administrasi dapat menginput data obat.

B2. Administrai dapat menginput distributor.

B3. Administrasi dapat menginput resep.

B4. Aministrasi dapat menginput transaksi

B5. Administrasi dapat menginput report.

26

Page 2: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

27

1. Use Case Diagram Halaman User

Gambar IV.1. Use Case Diagram Data User

uc Use Case Model User Apotek...

User

Form User

Master Resep

Transaksi Resep

Page 3: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

28

Tabel IV.1.Deskripsi Use Case Diagram Ruang Data user

Use Case Name Use Case Diagram Form User

Requirements A1,2,A3

Goal user telah login

Pre- Conditions User mengetahui cara penggunaan sistem komputerisasi

Faired end condition User dapat mengisi form user

Primary Actor User

Main Flow / Basic Path 1. 1. User dapat membuat data user2. 2. User dapat mengakses master resep3. 3. User dapat mengakses transaksi

resep

Invariant -

Page 4: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

29

2. Use Case Diagram Halaman Admin

Gambar IV.2. Use Case Diagram Admin

uc Use Case Diagram Admin

Login

Admin

Obat

Distributor

Resep

Transaksi

Form Produk

Form Distributor

Report

Laporan Obat

Data Distributor

Data User

Laporan Resep

Laporan Pembelian

Laporan Penjualan

Master resep

Transaksi Resep

Pembelian

Master Pembelian

Penjualan

Master Penjualan

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

Page 5: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

30

Tabel IV.2.Deskripsi Use Case Diagram Admin

Use Case Name Use Case Diagram Admin

Requirements B1,B2,B3,B4,B5,B6

Goal Admin dapat melakukan mengakses pilihan di dalam menu

Pre- Conditions Admin Telah Login

Faired end condition -

Primary Actor Admin

Main Flow / Basic Path 1. Admin dapat mengakses obat.2. Admin dapat mengakses distributor.3. Admin dapat mengakses resep.4. Admin dapat mengakses transaksi.5. Admin dapat mengakses report.

Invariant -

Page 6: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

31

1. Package Diagram Halaman User

pkg Package Diagram Halaman User

Mengakses Data User

Mengakses Master Resep

Mengakses Transaksi Resep

Gambar IV.3. Package Diagram Use Case Halaman User

2. Use Case Diagram Mengakses Data User

Page 7: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

32

uc Use Case Diagram Form user

User

Form User

Input data user

Tampil Data User

Save

Refresh

Delete

Update

«extend»

«include»

«extend»

«include»

«include»

Gambar IV.4. Detail Use Case Diagram Mengakses Data User

Deskripsi Use case Mengakses Data User

Page 8: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

33

Tabel IV.3 Deskripsi use case Diagram Data User

Use Case Name Use Case Diagram Form User

Requirements A1

Goal user dapat membuat data User

Pre- Conditions User mengetahui cara penggunaan sistem komputerisasi

Faired end condition User dapat mengisi form user

Primary Actor User

Main Flow / Basic Path 4. 1. User dapat mnginput id5. 2. User dapat menginput nama6. 3. User dapat menginput alamat7. 4. User dapat menginput telepon8. 5. User dapat menginput status9. 6. User dapat menginput username10.7. User dapat menginput akses11.8. User dapat menginput password12.

Invariant -

3. Use Case Diagram Mengakses Master Resep

Page 9: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

34

uc Use Case Diagram Master Res...

User

Master Resep

Tampil Form Resep

Tampil Detail Resep

«include»

«include»

Gambar IV.5. Detail Use Case Diagram Mengakses Master Resep

Deskripsi Use case Mengakses Master Resep

Page 10: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

35

Tabel IV.4. Deskripsi use case Diagram Master Resep.

Use Case Name Use Case Diagram Master Resep

Requirements A2

Goal User dapat membuka master resep

Pre- Conditions User mengetahui cara penggunaan sistem komputerisasi

Faired end condition User dapat melihat tampilan detail resep

Primary Actor User

Main Flow / Basic Path 1. User dapat memilih kategori pencarian.

2. User dapat mencari id resep.3. User dapat mencari nama karyawan.4. User dapat mencari alamat

karyawan.5. User dapat mencari nama dokter.6. User dapat mencari tanggal resep.

Invariant -

4. Use Case Diagram Mengakses Transaksi Resep

Page 11: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

36

uc Use Case Diagram Transaksi Resep

User

Transaksi Resep

Input Form transaksi resep

Simpan

Tampil Transaksi Resep

«include»

«include»

«Extend»

Gambar IV.6. Detail Use Case Diagram Transaksi Resep

Deskripsi Use case Mengakses Transaksi Resep

Tabel IV.5.

Page 12: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

37

Deskripsi Use Case Diagram Transaksi ResepUse Case Name Use Case Diagram Transaksi Resep

Requirements A3

Goal User dapat membuka transaksi resep

Pre- Conditions User mengetahui cara penggunaan sistem komputerisasi

Faired end condition User dapat melihat tampilan transaksi resep

Primary Actor UserMain Flow / Basic Path 1. User dapat menginput form

transaksi2. User dapat menyimpan transaksi

resep3. User dapat menampilkan hasil

penginputan hasil resep

Invariant -

5. Package Diagram Halaman Admin

pkg Package Diagram Halaman...

Menginput Data Obat

Menginput Distributor

Menginput Resep

Menginput Transaksi

Menginput Report

Page 13: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

38

Gambar IV.7. Package Diagram Use Case Halaman Admin

6. Use Case Diagram Menginput Data Obat

Page 14: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

39

uc Use Case Diagram Obat

Admin

Form ProdukInput Produk

Sav e

Update

Utility

Delete

Refresh

Tampil

Kemasan

Jenis

SAVE

Update

Delete

Tampil

Sav e

Update

Delete

Tampil

«extend»

«include»

«include»

«extend»

«include»

«include»

«extend»

«include»

«include»

«include»

«include»

«include»

«include»

«extend»

«extend»

«extend»

«Extend»

Gambar IV.8. Detail Use Case Diagram Menginput Data Obat

Deskripsi Use case Menginput Data Obat

Tabel IV.6. Deskripsi Use Case Diagram Menginput Data Obat

Page 15: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

40

Use Case Name Use Case Diagram Obat

Requirements B1

Goal Admin dapat melakukan pengimputan obat

Pre- Conditions Admin Telah Login

Faired end condition -

Primary Actor Admin

Main Flow / Basic Path 1. Admin dapat menginput obat2. Admin dapat menyimpan3. Admin dapat mengupdate4. Admin dapat utility obat5. Admin dapat menghapus data obat6. Admin dapat mengrefresh data obat 7. Admin dapat memilih katagori

pencarian8. Admin dapat menginput jumlah stok9. Admin dapat melihat tampilan hasil

form obat

Invariant -

7. Use Case Diagram Menginput Distributor

Page 16: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

41

uc Use Case Model Diagram distribut...

Admin

Form Distributor

Input Distributor

Sav e

Update

Delete

Refresh

Tampil

Search

«extend»

«include»

«extend»

«include»

«include»

Gambar IV.9. Detail Use Case Diagram Distributor

Deskripsi Use case Menginput Distributor

Page 17: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

42

Tabel IV.7. Deskripsi Use Case Diagram Distributor

Use Case Name Use Case Diagram Distributor

Requirements B2

Goal Admin dapat melakukan pengimputan data distributor

Pre- Conditions Admin Telah LoginFaired end condition -

Primary Actor Admin

Main Flow / Basic Path 1. Admin dapat menginput data distributor

2. Admin dapat menyimpan data distributor

3. Admin dapat mengupdate data distributor

4. Admin dapat menghapus data distributor

6. Admin dapat mengrefresh data distributor

7. Admin dapat memilih katagori8. Admin dapat melihat tampilan hasil

distributor

Invariant -

8. Use Case Diagram Menginput Resep

Page 18: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

43

uc Use Case Diadram Admin Resep

Admin

Resep

Master Resep

Transaksi Resep

Tampil

Tampil

Input transaksi Resep

Simpan

«include»

«include»

«include»

«include»

«include»

«extend»

Gambar IV.10 Detail Use Case Diagram Resep

Deskripsi Use case Menginput Resep

Tabel IV.8.

Page 19: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

44

Deskripsi Use Case Diagram Admin ResepUse Case Name Use Case Diagram Admin Resep

Requirements B3

Goal Admin dapat membuka master resep

Pre- Conditions Admin mengetahui cara penggunaan sistem komputerisasi

Faired end condition Admin dapat melihat tampilan master dan transaksi resep

Primary Actor Admin

Main Flow / Basic Path 1. Admin dapat memilih kategori pencarian.

2. Admin dapat mencari id resep.3. Admin dapat mencari nama

karyawan.4. Admin dapat mencari alamat

karyawan.5. Admin dapat mencari nama dokter.6. Admin dapat mencari tanggal resep.

Invariant -

9. Use Case Diagram Menginput Transaksi

Page 20: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

45

uc Use Case Diagram Admin Transaksi

Admin

Pembelian

Transaksi

Master Pembelian

Penjualan

Master Penjualan

Pilih Katagori

Tampil Master Transaksi Pembelian

Input

Simpan

Tampil

Input

Input

Simpan Tampil

Simpan

Tampil

«include»

«Extend»

«include»

«include»

«extend»

«include»

«include»

«include»

«include»

«include»

«extend»

«include»

«include»

«include»

«extend»

Gambar IV.11. Detail Use Case Diagram Admin Transaksi

Deskripsi Use case Menginput Transaksi

Tabel IV.9.

Page 21: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

46

Deskripsi Use Case Diagram Admin TransaksiUse Case Name Use Case Diagram Admin Transaksi

Requirements B4Goal Admin dapat mengakses transaksi

Pre- Conditions Admin mengetahui cara penggunaan sistem komputerisasi

Faired end condition Admin dapat melihat tampilan master dan transaksi resep

Primary Actor Admin

Main Flow / Basic Path 1. Admin dapat menginput pembelian,menyimpan dan menampilkan penginputan hasil pembelian.

2. Admin dapat menginput master penjualan, menyimpan dan menampilkan master penginputan hasil penjualan.

3. Admin dapat menginput master pembelian, menyimpan dan menampilkan master penginputan hasil pembelian.

4. Admin dapat menginput penjualan, menyimpan dan menampilkan penginputan hasil penjualan.

Invariant -

10. Use Case Diagram Menginput Report

Page 22: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

47

uc Use Case Diagram report

Admin

Laporan Obat

Data Distributor

Data User

Laporan Resep

Laporan Pembelian

Laporan Penjualan

Tampil laporan data Obat

Tampil Data Distributor

Tampil Laporan Data User

Tampil Laporan Data Resep Dokter

Filter Pembelian

Filter Penjualan Tampil Laporan transaksi Penjualan

Tampil Laporan Pembelian

«include»

«include»

«Extend»

«Extend»

«include»

«include»

«include»

«include»

Gambar IV.12. Detail Use Case Diagram Report

Deskripsi Use case Mengakses Report

Tabel IV.10.Deskripsi Use Case Diagram Report

Page 23: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

48

Use Case Name Use Case Diagram Report

Requirements B5

Goal Admin dapat mengakses report

Pre- Conditions Admin dapat mampilan master dan transaksi resep

Faired end condition Admin dapat melihat tampilan master dan transaksi resep

Primary Actor Admin

Main Flow / Basic Path 1. Admin dapat mengakses laporan obat.

2. Admin dapat mengakses laporan resep.

3. Admin dapat mengakses data distributor.

4. Admin dapat mengakses data user.5. Admin dapat mengakses laporan

pembelian.6. Admin dapat mengakses laporan

penjualan.

Invariant -

C. Activity Diagram

Page 24: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

49

1. Activity Diagram Obat

act Activ ity Diagram Input Obat

Update

Utility

Tampil Form Obat

Simpan

Input Obat

Delete

Kemasan

Jenis

Gambar IV.13. Activity Diagram Obat

2. Activity Diagram Distributor

Page 25: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

50

act Activ ity Diagram Distributor

Input Distributor Simpan

Update

Delete

SearchTampil FormDistributor

Pilih Pilihan

Gambar IV.14. Activity Diagram Distributor

3. Activity Diagram Resep

Gambar IV.15. Activity Diagram Resep

4. Activity Diagram Transaksi

act Activ ity Diagram Resep

Pilih Menu Master Resep

Trasnsaksi Resep

Refresh

Search

Tampil Form MasterResep

Input Transaksi Resep

Simpan Tampil FormTransaksi Rese

Page 26: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

51

act Activ ity Diagram Transaksi

Pilih MenuMaster Penjualan

Penjualan

Master Pembelian

Pembelian

Refresh Pilih KategoriPencarian

Tampil Form MasterPenjualan

input SimpanTampil Form Transaksi

Penj ualan

Refresh Pilih KategoriPencarian

Tampil Form MasterTrasnsaksi Pembelian

Input SimpanTampil Form

TransaksiPembelian

Gambar IV.16. Activity Diagram Transaksi

5. Activity Diagram Report

Page 27: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

52

act Activ ity Diagram Report

Pilih Menu

Batal

Laporan Data Obat

Laporan Resep

Laporan Distributor Tampil FormLaporan Data Obat

Tampil FormLaporan Resep

Tampil Form Distributor

Gambar IV.17. Activity Diagram Report

4.2. Desain

Page 28: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

53

Pada bagian ini, penulis akan menjelaskan beberapa desain yaitu sebagai

berikut :

4.2.1. Database

Database merupakan suatu gambaran mengenai struktur program, pada

tahap ini penulis akan menggambarkan Entity Relationship Diagram berikut

dengan spesifikasi file dan tabel-tabel yang terdapat di progam yang penulis buat.

1. Entity Relationship Diagram

Gambar IV.18. Entity Relationship Diagram Persedian Obat

2. Logical Record Structure

Page 29: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

54

Gambar IV.19. Logical Record Structure Persedian Obat

3. Spesifikasi File

a. Spesifikasi File Tabel Detail Pembelian

Page 30: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

55

Nama Database : apotikNama File : Detail PembelianAkronim : detailpembelianTipe File : File MasterAkses File : RandomPanjang Record : 36 ByteKunci Field : iddetailpembelian

Tabel IV.11Spesifikasi File Tabel Detail Pembelian

No Elemen Data Nama Field Type Size Keterangan1 Iddetailpembelian iddetailpembelian Integer 10 Primary key2 Idpembelian idpembelian Varchar 163 Kodeobat kodeobat Varchar 104 Jumlah jumlah Integer 105 Hargabeli hargabeli Double -6 Subtotal subtotal Double -

b. Spesifikasi File Tabel Detail Penjualan

Nama Database : apotikNama File : Detail Penjualan Akronim : detail penjualanTipe File : File MasterAkses File : RandomPanjang Record : 47 ByteKunci Field : iddetailpenjualan

Tabel IV.12Spesifikasi File Tabel Detail Penjualan

No Elemen Data Nama Field Type Size Keterangan1 Iddetailpenjiualan iddetailpenjualan Integer 11 Primary key2 Idpenjualan idpenjualan Varchar 163 Kodeobat kodeobat Varchar 104 Hargajual hargajual Double -5 Jumlah jumlah Integer 106 Subtotal subtotal Double -

c. Spesifikasi File Tabel Detail Resep

Nama Database : apotik

Page 31: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

56

Nama File : Detail ResepAkronim : detailresepTipe File : File MasterAkses File : RandomPanjang Record : 97 ByteKunci Field : iddetailresep

Tabel IV.13Spesifikasi File Tabel Detail Resep

No Elemen Data Nama Field Type Size Keterangan1 Iddetailresep iddetailresep Integer 11 Primary Key2 Idresep idresep Varchar 163 Kodeobat kodeobat Varchar 104 Namaobat namaobat Varchar 505 Hargajual hargajual Double -6 Jumlah jumlah Integer 107 Total total Double -

d. Spesifikasi File Tabel Distributor

Nama Database : apotikNama File : DistributorAkronim : DistributorTipe File : File MasterAkses File : RandomPanjang Record : 280 ByteKunci Field : iddistributor

Tabel IV.14Spesifikasi File Tabel Distributor

No Elemen Data Nama Field Type Size Keterangan1 Iddistributor iddistributor Integer 10 Primary key2 Nama nama Varchar 1003 Alamat alamat Varchar 1504 Telepon telepon Varchar 20

e. Spesifikasi File Tabel Jenis

Page 32: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

57

Nama Database : apotikNama File : JenisAkronim : jenisTipe File : File MasterAkses File : RandomPanjang Record : 111 ByteKunci Field : idjenis

Tabel IV.15Spesifikasi File Tabel Jenis

No Elemen Data Nama Field Type Size Keterangan1 Idjenis idjenis Integer 11 Primary key2 Nama nama Varchar 100

f. Spesifikasi File Tabel Kasir

Nama Database : apotikNama File : KasirAkronim :kasirTipe File : File MasterAkses File : RandomPanjang Record : 343 ByteKunci Field : idkasir

Tabel IV.16Spesifikasi File Tabel Kasir

No Elemen Data Nama Field Type Size Keterangan1 Idkasir idkasir Integer 11 Primary key2 Nama nama Varchar 1003 Alamat alamat Varchar 1504 Telepon telepon Varchar 205 Status status Varchar 126 Username username Varchar 207 Password password Varchar 208 Akses akses Varchar 10

g. Spesifikasi File Tabel Kemasan

Page 33: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

58

Nama Database : apotik

Nama File : Kemasan

Akronim : kemasan

Tipe File : File Master

Akses File : Random

Panjang Record : 111 Byte

Kunci Field : idkemasan

Tabel IV.17Spesifikasi File Tabel Kemasan

No Elemen Data Nama Field Type Size Keterangan1 Idkemasan idkemasan Integer 11 Primary key2 Nama nama Varchar 100

h. Spesifikasi File Tabel Obat

Nama Database : dbassetNama File : ObatAkronim : obatTipe File : File MasterAkses File : RandomPanjang Record : 320 ByteKunci Field : kodeobat

Tabel IV.18Spesifikasi File Tabel Obat

Page 34: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

59

No Elemen Data Nama Field Type Size Keterangan1 Kodeobat kodeobat Varchar 10 Primary key2 Nama nama Varchar 1003 Jenis jenis Varchar 254 Kemasan kemasan Varchar 255 Indikasi indikasi Varchar 1506 Hargapokok hargapokok Double -7 Hargajual hargajual Double -8 Jumlahstok jumlahstok Integer 10

i. Spesifikasi File Tabel Pembelian

Nama Database : apotikNama File : PembelianAkronim : pembelianTipe File : File MasterAkses File : RandomPanjang Record : 52 ByteKunci Field : idpembelian

Tabel IV.19Spesifikasi File Tabel Pembelian

No Elemen Data Nama Field Type Size Keterangan1 Idpembelian idpembelian Varchar 16 Primary key2 Iddistributor iddistributor Integer 113 Jenispembelian jenispembelian Varchar 254 Tglpembelian tglpembelian Date -5 Total total Double -

j. Spesifikasi File Tabel Penjualan

Page 35: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

60

Nama Database : apotikNama File : PenjualanAkronim : penjualanTipe File : File TransaksiAkses File : RandomPanjang Record : 20 ByteKunci Field : idpenjualan

Tabel IV.20Spesifikasi File Tabel Penjualan

No Elemen Data Nama Field Type Size Keterangan1 Idpenjualan idpenjualan Varchar 10 Primary Key2 Idkasir idkasir Integer 103 Tglpenjualan tglpenjualan Date -4 Total total Double -

k. Spesifikasi File Tabel Resep

Nama Database : apotikNama File : Tabel ResepAkronim : resepTipe File : File TransaksiAkses File : RandomPanjang Record : 527 ByteKunci Field : idresep

Tabel IV.21Spesifikasi File Tabel Resep

No Elemen Data Nama Field Type Size Keterangan1 Idresep idresep Varchar 16 Primary Key2 Idkasir idkasir Integer 113 Namapasien namapasien Varchar 1004 Alamatpasien alamatpasien Varchar 1505 Namadokter namadokter Varchar 1006 Alamatpraktek alamatpraktek Varchar 1507 Tglresep tglresep Date -8 Total total Double -

2.3 Software Architecture

Page 36: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

61

A. Class Diagram

class Class Diagram

obat

- hargajual: double- hargapokok: double- indikasi: var- jenis: var- jumlhastok: int- kemasan: var- kodeobat: var- nama: var

+ gethargajual() : double+ gethargapokok() : var+ getindikasi() : var+ getjenis() : var+ getjumlahstok() : int+ getkemasa() : var+ getkodeobat() : var+ getnama() : var+ sethargajual() : var+ sethargapokok() : var+ setindikasi() : var+ setjenis() : var+ setjumlahstok() : int+ setkemasan() : var+ setkodeobat() : var+ setnama() : var

detail Pembelian

- hargabeli: double- iddetailpembelian: int- idpembelian: var- jumlah: int- kodeobat: var- subtotal: double

+ gethargabeli() : double+ getiddetailpembelian() : int+ getidpembelian() : var+ getjumlah() : int+ getkodeobat() : var+ getsubtotal() : double+ sethargabeli() : double+ setiddetailpembelian() : int+ setidpembelian() : int+ setjumlah() : int+ setkodeobat() : var+ setsubtotal() : double

detailpenjualan

- hargajual: double- iddetailpembelian: var- idpenjualan: var- jumlah: int- kodeobat: var- subtotal: double

+ gethargajual() : double+ getiddetailpembelian() : var+ getjumlah() : var+ getkodeobat() : var+ getsubtotal() : double+ sethargajual() : double+ setiddetailpenjualan() : var+ setidpenjualan() : var+ setjumlah() : int+ setkodeobat() : var+ setsubtotal() : double

detailresep

- hargajual: double- iddetail resep: int- idresep: var- jumlah: int- kodeobat: var- namaobat: var- total: double

+ gethargajual() : double+ getiddetai lresepint() : void+ getidresep() : var+ getjumlah() : int+ getkodeobat() : var+ getnamaobat() : var+ gettotal() : double+ sethargajual() : double+ setiddetailresep() : int+ setidresep() : var+ setjumlah() : var+ setkodeobat() : var+ setnamaobat() : var+ settotal() : double

distributor

- alamat: var- iddistributor: int- nama: var- telepon: var

+ getalamat() : var+ getiddistributor() : int+ getnama() : var+ gettelepon() : var+ setalamat() : var+ setiddistributor() : int+ setnama() : var+ settelepon() : var

jenis

- idjenis: int- nama: var

+ getidjenis() : int+ getnama() : var+ setidjenis() : int+ setnama() : var

kasir

- alamat: var- askes: var- idkasir: int- nama: var- password: var- status: var- telepon: var- username: var

+ getalamat() : var+ getaskes() : var+ getidkasir() : int+ getnama() : var+ getpassword() : var+ getstatus() : var+ gettelepon() : var+ getusername() : var+ setalamat() : var+ setaskes() : var+ setidkasir() : int+ setnama() : var+ setpassword() : var+ setstatus() : var+ settelepon() : var+ setusername() : var

kemasan

- idkemasan: int- nama: var

+ getidkemasan() : int+ getnama() : var+ setidkemasan() : int+ setnama() : varpembelian

+ iddistributor: int- idpembelian: var- jenispembelian: var- tglpembelian: date- total: double

+ getiddistributor() : int+ getidpembelian() : var+ getjenispembelian() : var+ gettglpembelian() : var+ gettotal() : double+ setiddistributor() : int+ setidpembelian() : var+ setjenispembelian() : var+ settglpembelian() : var+ settotal() : double

penjualan

- idkasir: int- idpenjualan: var- tglpenjualan: date- total: double

+ getidkasir() : int+ getidpenjualan() : var+ gettglpenjualan() : date+ gettotal() : double+ setidkasir() : int+ setidpenjualan() : var+ settotal() : doble

resep

- alamatdokter: var- alamatpasien: var- alamatpraktek: var- idkasir: int- idresep: var- namadokter: var- namapasien: var- tglresep: date- total: double

+ getalamatdokter() : var+ getalamatpasien() : var+ getalamatpraktek() : var+ getidkasir() : int+ getidresep() : var+ getnamadokter() : var+ getnamapasien() : var+ getresep() : void+ gettglresep() : date+ gettotal() : double+ idresep() : var+ setalamatdokter() : var+ setalamatpasien() : var+ setalamatpraktek() : var+ setidkasirint() : void+ setnamadokter() : var+ setnamapasien() : var+ settglresep() : date+ settotal() : double

1 input m

1 masuk 1

1 melakukan m

1 masuk 1

1 input 1

1 memiliki 1

1 mempunyai m

1 dikirim 1

1 masuk 1

Gambar. IV.20. Class Diagram HCD(Human Capital Development)

B. Sequence Diagram

Page 37: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

62

1. Sequence Diagram Halaman User

a. Sequence Diagram Master Resep

Gambar. IV.21. Sequence Diagram Master Resep

2.. Sequence Diagram Halaman Admin

sd resepp

User Master Resep Pilih Pencarian form resep

Pilih Menu()

setidresep (var)

getidresep : ()

cari()

setnamapasien(var)

getnamapasien : namapasien()

cari()

setalamatpasien (var)

getalamatpasien : alamatpasien()

cari()

setnamadokter(var)

getnamadokter()

cari()

setalamatpraktek (var)

getalamatpraktek()

cari()

settglresep(date)

gettglresep()

cari()

settotal(double)

gettotal()cari()

Page 38: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

63

a. Sequence Diagram User

Gambar. IV.22.Sequence Diagram User

b. Sequence Diagram Obat

sd Sequence Diagram form user baru

Admin Form User Input data User baru

User Baru

Pilih Menu()

setnama(var)

getnama()

simpan()

setalamat(var)

getalamat()

update()

settelepon(var)

gettelepon()

delete()

setstatus(var)

getstatus()

username(var)

refresh()

getusername()

setpassword(var)

getpassword()

cari()

setakses(var)

getakses()

Page 39: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

64

sd Sequence Diagram obat

Admin Obat Input Tabel Obat

Pilih Menu()

setkodeobat(var)

simpan()

getkodeobat()

update()

setjenis(var)

getjenis()

setkemasan(var)

getkemasan()

Gambar. IV.23. Sequence Diagram Obat

c. Sequence Diagram Distributor

Page 40: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

65

sd Sequence Diagram distributor

Admin Distributor Input Distributor Baru

Tampil Tabel Distributor

Pilih Menu()

setnama(var)

getnama()

simpan()

setalamat(var)

update()

getalamat()

settelepon(var)

delete()

gettelepon()

refresh()

cari()

Gambar. IV.24. Sequence Diagram Distributor

d. Sequence Diagram Transaksi Pembelian

Page 41: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

66

sd Sequence Diagram Transaksi Pembelian

Admin Pembelian Input Transaksi Pembelian

Data Pembelian

Pilih Menu Transaksi()

setjumlah(var)

getjumlah()

setiddistributor(int)

getiddistributor()

setjenispembelian(var)

getjenispembelian()

setkodeobat(var)

setnama0bat(var)

getnamaobat()

simpan()

Gambar. IV.25. Sequence Diagram Transaksi Pembelian

e. Sequence Diagram Transaksi Master Pembelian

Page 42: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

67

sd Sequence Diagram Master Pembeli...

Admin Transaksi Pembelian

Kategori Pencarian Form Pembelian

Pilih Menu Transaksi()

setiddistributor(var)

getiddistributor()

setidpembelian(set)

getidpembelian()

setijenispembelian(var)

getjenispembelian()

cari()

Gambar. IV.26. Sequence Diagram Transaksi Master Pembelian

f. Sequence Diagram Transaksi Penjualan

Page 43: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

68

sd Sequence Diagram Transaksi Penjualan

Admin Transaksi Penjualan

Input Form Penjualan

Form Penjualan

Pilih Menu Transaksi()

setjumlahtotal(var)

getjumlah()

setkodeobat(var)

getkodeobat()

setnamaobat(var)

getnamaobat()

setjumlah(int)

getjumlah()

setsubtotal(double)

getsubtotal()

simpan()

Gambar. IV.27.Sequence Diagram Transaksi Penjualan

g. Sequence Diagram Transaksi Master Penjualan

Page 44: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

69

sd Sequence Diagram Master Penjual...

Admin Transaksi Penjualan

Kategori Pencarian Master Transaksi Penjualan

Pilih Menu Transaksi()

setidpenjualan(var)

getidpenjualan()

setiduser(var)

getiduser()

cari()

Gambar. IV.28. Sequence Diagram Master Penjualan

h. Sequence Diagram Report Laporan Obat

Page 45: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

70

sd Sequence Diagram Laporan Obat

Admin Report Laporan Data ObatLaporan

pil ih menu Report()

Pilih menu()

Tampil()

Gambar. IV.29. Sequence Diagram Report Laporan Obat

i. Sequence Diagram Report Data Distributor

Page 46: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

71

sd Sequence Diagram Laporan Distributor

Admin Report Data Distributor Laporan Data Distributor

pil ih menu()

Pilih()

Tampil()

Gambar. IV.30 . Sequence Diagram Report Data Distributor

j. Sequence Diagram Report Data User

Page 47: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

72

sd Sequence Diagram Laporan user

Admin Report Data User Laporan Data User

memilih menu()

pil ih()

tampil()

Gambar. IV.31. Sequence Diagram Report Data User

k. Sequence Diagram Report Laporan Resep

Page 48: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

73

sd Sequence Diagram Laporan resep

Admin Report Laporan Resep Laporan data resep Doketr

pil ih menu()

pil ih()

tampil()

Gambar. IV.32. Sequence Diagram Report Laporan Resep

l. Sequence Diagram Report Laporan Pembelian

Gambar. IV.33.

sd Sequence Diagram Laporan pembelian

Admin Report Laporan Pembelian

laporann Transaksi pembelian

pil ih menu()

priview()

cetak()

Page 49: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

74

Sequence Diagram Report Laporan Pembelian

m. Sequence Diagram Report Laporan Penjualan

sd Sequence Diagram Laporan penjual...

Admin report laporan penjualan laporan transaksi penjualan

pil ih menu()

priview()

cetak()

Gambar. IV.34. Sequence Diagram Report Laporan Penjualan

Page 50: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

75

B. Component Diagram

cmp Component Diagram HCD

Konfigurasi Database

MySQL Server: localhost via TCP/IP Versi Server: 5.1.33-community Protocol version: 10 Pengguna: root@localhost Charset MySQL: UTF-8 Unicode (utf8)

Web serv er Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11

OpenSSL/0.9.8i PHP/5.2.9 MySQL client version: 5.0.51a PHP extension: mysql

phpMyAdmin Informasi tentang versi: 3.1.3.1

Perangkat Lunak Dev elopmet

EditorProduct Version: NetBeans IDE 7.3 Beta 2 (Build 201211062253)Updates: NetBeans IDE is updated to version , NetBeans 7.3 Beta 2Java: 1.7.0_07; Java HotSpot(TM) 64-Bit Server VM 23.3-b01Runtime: Java(TM) SE Runtime Environment 1.7.0_07-b11System: Windows 7 version 6.1 running on amd64; Cp1252; en_US (nb)

CompilerLaunch4j 3.1.0-beta1

Sistem Operasi (Operating System)

* Microsoft Windows 7 Professional/ Linux Ubuntu:

Database Serv er Lokal

-------------------------------------------------

Disk Controller = Raid 5Disk : 320 GBProcessor : 2,4 GhzRAM = 1024 MB

Page 51: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

76

Gambar. IV.35. Component Diagram

A. Deployment Diagram

deployment Deployment_HCD

Workstation

Aplikasi HCD

Database Server

MySQL database

Aplication Serv er

Database Interface

Presentation Layer (Aplication Interface)

Log File

http/https connection

TCP/ IP or local socket

Gambar. IV.36.Deployment Diagram

Page 52: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

77

4.2.2. User Interface

1. Lampiran A-1a. Form Tampilan Login

Gambar IV. 37 . Form Tampilan Login Admin

2. Lampiran A-2b. Form Tampilan Menu

Utama Ruang Administrasi

Gambar IV. 38 . Form Tampilan Menu Utama Ruang Administrasi

Page 53: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

78

3. Lampiran A-3b. Form Tampilan Form User

Gambar IV. 39. Form Tampilan Form User

4. Lampiran A-4d . Form Tampilan Form Obat

Gambar IV. 40. Form Tampilan Form Obat

Page 54: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

79

5. Lampiran A-5e . Form Tampilan Form Distributor

Gambar IV.41 . Form Tampilan Form Distributor

6. Lampiran A-6f . Form Tampilan Form Transaksi Pembelian

Gambar IV.42 . Form Tampilan Form Transaksi Pembelian

7. Lampiran A-7g . Form Tampilan Form Master Transaksi Pembelian

Page 55: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

80

Gambar IV.43 . Form Tampilan Form Master Transaksi Pembelian

8. Lampiran A-8h . Form Tampilan Form Penjualan

Gambar IV.44 . Form Tampilan Form Penjualan

9. Lampiran A-9i . Form Tampilan Form Master Transaksi Penjualan

Gambar IV.45 . Form Tampilan Form Master Transaksi Penjualan

Page 56: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

81

4.3 Code Generation

a. Login

/* * To change this template, choose Tools | Templates * and open the template in the editor. */package apotik_2it_versi_2;import java.util.logging.Level;import java.util.logging.Logger;import java.awt.Dimension;import java.awt.Toolkit;import javax.swing.UIManager;import apotik_2it_versi_2.Gui.splash;import apotik_2it_versi_2.Gui.MenuLogin;/** * * @author Java */public class Apotik_2IT_Versi_2 {

/** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here splash pb = new splash(); pb.setVisible(true); for(int i=0;i<=100;i++){ try { pb.getProgressBar().setValue(i); Thread.sleep(25); } catch (InterruptedException ex) { Logger.getLogger(splash.class.getName()).log(Level.SEVERE, null, ex); } } pb.dispose(); /* try { UIManager.setLookAndFeel(new AcrylLookAndFeel()); } catch (UnsupportedLookAndFeelException ex) { Logger.getLogger(Menu.class.getName()).log(Level.SEVERE, null,ex); }*/ try {

Page 57: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

82

UIManager.setLookAndFeel( "com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); } catch (Exception ignored) { } MenuLogin tampilan = new MenuLogin(); Dimension screen=Toolkit.getDefaultToolkit().getScreenSize(); int lebar=(screen.width-tampilan.getSize().width)/2; int tinggi=(screen.height-tampilan.getSize().height)/2; // tampilan.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE); tampilan.setLocation(lebar,tinggi); tampilan.setResizable(false);

tampilan.setVisible(true); }}

b. Run

/* * To change this template, choose Tools | Templates * and open the template in the editor. */

package apotik_2it_versi_2.Gui;import java.util.logging.Level;import java.util.logging.Logger;import java.awt.Dimension;import java.awt.Toolkit;import javax.swing.UIManager;import apotik_2it_versi_2.Gui.splash;import apotik_2it_versi_2.Gui.MenuLogin;/** * * @author Rochim */public class run {public static void main(String[] args) { // TODO code application logic here splash pb = new splash(); pb.setVisible(true); for(int i=0;i<=100;i++){ try { pb.getProgressBar().setValue(i); Thread.sleep(25);

Page 58: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

83

} catch (InterruptedException ex) { Logger.getLogger(splash.class.getName()).log(Level.SEVERE, null, ex); } } pb.dispose(); /* try { UIManager.setLookAndFeel(new AcrylLookAndFeel()); } catch (UnsupportedLookAndFeelException ex) { Logger.getLogger(Menu.class.getName()).log(Level.SEVERE, null,ex); }*/ try { UIManager.setLookAndFeel( "com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); } catch (Exception ignored) { } MenuLogin tampilan = new MenuLogin(); Dimension screen=Toolkit.getDefaultToolkit().getScreenSize(); int lebar=(screen.width-tampilan.getSize().width)/2; int tinggi=(screen.height-tampilan.getSize().height)/2; // tampilan.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE); tampilan.setLocation(lebar,tinggi); tampilan.setResizable(false);

tampilan.setVisible(true);

}}

c. Form User

/* * To change this template, choose Tools | Templates * and open the template in the editor. */

/* * Distributorr.java * * Created on Dec 9, 2011, 9:31:42 PM */

package apotik_2it_versi_2.Gui.Kasir;

import apotik_2it_versi_2.Database.Control.KasirJpaController;

Page 59: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

84

import apotik_2it_versi_2.Database.Control.exceptions.NonexistentEntityException;import apotik_2it_versi_2.Database.Entity.Kasir;import apotik_2it_versi_2.Gui.Dialogable;import apotik_2it_versi_2.Gui.Menu;import com.stripbandunk.jglasspane.JGlassPane;import com.stripbandunk.jglasspane.component.MessageComponent;import java.awt.Dimension;import java.awt.Point;import java.awt.Toolkit;import java.awt.event.MouseEvent;import java.util.ArrayList;import java.util.List;import javax.swing.JOptionPane;

/** * * @author Rochim */public class FormUser extends javax.swing.JDialog implements Dialogable{ private List<Kasir> kasir = new ArrayList<Kasir>(); private String id=null;private FormUser formUser; /** Creates new form Distributorr */ /* public Distributorr(java.awt.Frame parent, boolean modal) { super(parent, modal); initComponents(); }*/ public FormUser(Menu menu) { super(menu, true);

initComponents(); showtoTabel(); actionTable(); } void showtoTabel(){ KasirJpaController controller = new KasirJpaController(); kasir.clear(); kasir = controller.findKasirEntities(); tableModelKasir1.setDatatoTable(kasir);

} void actionTable(){ tableModelKasir1.addMouseListener(new java.awt.event.MouseAdapter() { @Override public void mouseClicked(java.awt.event.MouseEvent evt) {

Page 60: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

85

tableGlass1MouseClicked(evt); } private void tableGlass1MouseClicked(MouseEvent evt) { int row_hasil = tableModelKasir1.getSelectedRow(); id = tableModelKasir1.getValueAt(row_hasil, 0).toString(); String nama = tableModelKasir1.getValueAt(row_hasil, 1).toString(); String alamat = tableModelKasir1.getValueAt(row_hasil, 2).toString(); String telepon = tableModelKasir1.getValueAt(row_hasil, 3).toString(); String Status = tableModelKasir1.getValueAt(row_hasil, 4).toString(); String UserName = tableModelKasir1.getValueAt(row_hasil, 5).toString(); String Pass = tableModelKasir1.getValueAt(row_hasil, 7).toString(); String Hak = tableModelKasir1.getValueAt(row_hasil, 6).toString(); // textBox2.setText(id); textNama.setText(nama); textAlamat.setText(alamat); textTelpon.setText(telepon); textStatus.setText(Status); textUserName.setText(UserName); textPassword.setText(Pass); textHakAkses.setText(Hak); } }); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() {

panel_merah1 = new apotik_2it_versi_2.Utility.Panel_merah(); panelLine1 = new paket.launk.java.container.PanelLine(); buttonBig1 = new apotik_2it_versi_2.Utility.ButtonBig(); buttonBig4 = new apotik_2it_versi_2.Utility.ButtonBig(); buttonBig2 = new apotik_2it_versi_2.Utility.ButtonBig(); buttonBig3 = new apotik_2it_versi_2.Utility.ButtonBig(); textBox1 = new apotik_2it_versi_2.Utility.TextBox();

Page 61: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

86

jLabel1 = new javax.swing.JLabel(); panelWhiteBorder1 = new paket.launk.java.container.PanelWhiteBorder(); textTelpon = new apotik_2it_versi_2.Utility.TextBox(); textAlamat = new apotik_2it_versi_2.Utility.TextBox(); textNama = new apotik_2it_versi_2.Utility.TextBox(); jLabel3 = new javax.swing.JLabel(); jLabel4 = new javax.swing.JLabel(); jLabel5 = new javax.swing.JLabel(); jLabel6 = new javax.swing.JLabel(); textStatus = new apotik_2it_versi_2.Utility.TextBox(); jLabel7 = new javax.swing.JLabel(); textUserName = new apotik_2it_versi_2.Utility.TextBox(); jLabel8 = new javax.swing.JLabel(); jLabel9 = new javax.swing.JLabel(); textHakAkses = new apotik_2it_versi_2.Utility.TextBox(); SelectSt = new javax.swing.JButton(); SelectHak = new javax.swing.JButton(); textPassword = new apotik_2it_versi_2.Utility.PasswordBox(); jComboBox1 = new javax.swing.JComboBox(); scrollPane1 = new Java_2IT.UTILITY.ScrollPane(); tableModelKasir1 = new apotik_2it_versi_2.TabelModel.TableModelKasir(); jLabel2 = new javax.swing.JLabel(); glassPane = new com.stripbandunk.jglasspane.JGlassPane(); component = new com.stripbandunk.jglasspane.component.MessageComponent();

setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); setTitle("Form User"); getContentPane().setLayout(new java.awt.GridLayout(1, 0));

panel_merah1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

buttonBig1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/apotik_2it_versi_2/IMAGE/Button-Refresh-icon.png"))); // NOI18N buttonBig1.setText("REFRESH"); buttonBig1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { buttonBig1ActionPerformed(evt); } });

Page 62: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

87

buttonBig4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/apotik_2it_versi_2/IMAGE/glossy-3d-blue-orbs2-037-icon.png"))); // NOI18N buttonBig4.setText("SAVE"); buttonBig4.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { buttonBig4ActionPerformed(evt); } });

buttonBig2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/apotik_2it_versi_2/IMAGE/glossy-3d-blue-orbs2-045-icon.png"))); // NOI18N buttonBig2.setText("UPDATE"); buttonBig2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { buttonBig2ActionPerformed(evt); } });

buttonBig3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/apotik_2it_versi_2/IMAGE/glossy-3d-blue-delete-icon.png"))); // NOI18N buttonBig3.setText("DELETE"); buttonBig3.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { buttonBig3ActionPerformed(evt); } });

javax.swing.GroupLayout panelLine1Layout = new javax.swing.GroupLayout(panelLine1); panelLine1.setLayout(panelLine1Layout); panelLine1Layout.setHorizontalGroup( panelLine1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelLine1Layout.createSequentialGroup() .addGap(26, 26, 26) .addComponent(buttonBig4, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)

Page 63: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

88

.addComponent(buttonBig2, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(buttonBig3, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(buttonBig1, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(52, 52, 52)) ); panelLine1Layout.setVerticalGroup( panelLine1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelLine1Layout.createSequentialGroup() .addContainerGap() .addGroup(panelLine1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(buttonBig3, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 111, Short.MAX_VALUE) .addComponent(buttonBig4, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 111, Short.MAX_VALUE) .addComponent(buttonBig2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 111, Short.MAX_VALUE) .addComponent(buttonBig1, javax.swing.GroupLayout.DEFAULT_SIZE, 111, Short.MAX_VALUE)) .addContainerGap()) );

panel_merah1.add(panelLine1, new org.netbeans.lib.awtextra.AbsoluteConstraints(12, 432, -1, -1));

textBox1.setForeground(new java.awt.Color(255, 0, 255)); textBox1.addCaretListener(new javax.swing.event.CaretListener() {

Page 64: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

89

public void caretUpdate(javax.swing.event.CaretEvent evt) { textBox1CaretUpdate(evt); } }); panel_merah1.add(textBox1, new org.netbeans.lib.awtextra.AbsoluteConstraints(315, 120, 273, -1));

jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 18)); jLabel1.setForeground(new java.awt.Color(0, 51, 255)); jLabel1.setText("SEARCH"); panel_merah1.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(28, 123, 86, 14));

jLabel3.setFont(new java.awt.Font("Tahoma", 1, 11)); jLabel3.setForeground(new java.awt.Color(255, 255, 255)); jLabel3.setText("Nama");

jLabel4.setFont(new java.awt.Font("Tahoma", 1, 11)); jLabel4.setForeground(new java.awt.Color(255, 255, 255)); jLabel4.setText("Alamat");

jLabel5.setFont(new java.awt.Font("Tahoma", 1, 11)); jLabel5.setForeground(new java.awt.Color(255, 255, 255)); jLabel5.setText("Telepon");

jLabel6.setFont(new java.awt.Font("Tahoma", 1, 11)); jLabel6.setForeground(new java.awt.Color(255, 255, 255)); jLabel6.setText("Status"); jLabel7.setFont(new java.awt.Font("Tahoma", 1, 11)); jLabel7.setForeground(new java.awt.Color(255, 255, 255)); jLabel7.setText("Username");

jLabel8.setFont(new java.awt.Font("Tahoma", 1, 11)); jLabel8.setForeground(new java.awt.Color(255, 255, 255)); jLabel8.setText("Password");

jLabel9.setFont(new java.awt.Font("Tahoma", 1, 11)); jLabel9.setForeground(new java.awt.Color(255, 255, 255)); jLabel9.setText("Hak Akses");

SelectSt.setText("..."); SelectSt.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { SelectStActionPerformed(evt); } });

SelectHak.setText("...");

Page 65: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

90

SelectHak.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { SelectHakActionPerformed(evt); } });

javax.swing.GroupLayout panelWhiteBorder1Layout = new javax.swing.GroupLayout(panelWhiteBorder1); panelWhiteBorder1.setLayout(panelWhiteBorder1Layout); panelWhiteBorder1Layout.setHorizontalGroup( panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addGap(26, 26, 26) .addGroup(panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(64, 64, 64) .addComponent(textNama, javax.swing.GroupLayout.PREFERRED_SIZE, 199, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(64, 64, 64) .addComponent(textAlamat, javax.swing.GroupLayout.PREFERRED_SIZE, 199, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(64, 64, 64) .addComponent(textTelpon, javax.swing.GroupLayout.PREFERRED_SIZE, 199, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panelWhiteBorder1Layout.createSequentialGroup()

Page 66: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

91

.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(64, 64, 64) .addComponent(textStatus, javax.swing.GroupLayout.PREFERRED_SIZE, 199, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(1, 1, 1) .addComponent(SelectSt, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 70, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(44, 44, 44) .addComponent(textUserName, javax.swing.GroupLayout.PREFERRED_SIZE, 199, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(24, 24, 24) .addComponent(textPassword, javax.swing.GroupLayout.PREFERRED_SIZE, 200, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addComponent(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(24, 24, 24) .addComponent(textHakAkses, javax.swing.GroupLayout.PREFERRED_SIZE, 199, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(1, 1, 1) .addComponent(SelectHak, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE)))) ); panelWhiteBorder1Layout.setVerticalGroup( panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelWhiteBorder1Layout.createSequentialGroup()

Page 67: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

92

.addGap(50, 50, 50) .addGroup(panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addGap(8, 8, 8) .addComponent(jLabel3)) .addComponent(textNama, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(16, 16, 16) .addGroup(panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addGap(10, 10, 10) .addComponent(jLabel4)) .addComponent(textAlamat, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(26, 26, 26) .addGroup(panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addGap(2, 2, 2) .addComponent(jLabel5)) .addComponent(textTelpon, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(16, 16, 16) .addGroup(panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addGap(4, 4, 4) .addComponent(jLabel6)) .addComponent(textStatus, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(SelectSt)) .addGap(16, 16, 16) .addGroup(panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

Page 68: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

93

.addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addGap(6, 6, 6) .addComponent(jLabel7)) .addComponent(textUserName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(16, 16, 16) .addGroup(panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addGap(1, 1, 1) .addComponent(jLabel8)) .addComponent(textPassword, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(16, 16, 16) .addGroup(panelWhiteBorder1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelWhiteBorder1Layout.createSequentialGroup() .addGap(3, 3, 3) .addComponent(jLabel9)) .addComponent(textHakAkses, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(SelectHak))) );

panel_merah1.add(panelWhiteBorder1, new org.netbeans.lib.awtextra.AbsoluteConstraints(606, 120, 387, 354));

jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Filtering By", "Id", "Nama", "Alamat", "User Name", "Hak Akses", " ", " " })); jComboBox1.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR)); jComboBox1.setOpaque(false); panel_merah1.add(jComboBox1, new org.netbeans.lib.awtextra.AbsoluteConstraints(147, 122, 139, -1));

scrollPane1.setViewportView(tableModelKasir1);

Page 69: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

94

panel_merah1.add(scrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(12, 165, 568, 249));

jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/apotik_2it_versi_2/IMAGE/User.gif"))); // NOI18N panel_merah1.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(230, 10, -1, -1));

component.setFont(new java.awt.Font("DejaVu Sans", 0, 3)); // NOI18N component.setMessageFont(new java.awt.Font("DejaVu Sans", 1, 5)); // NOI18N

javax.swing.GroupLayout componentLayout = new javax.swing.GroupLayout(component); component.setLayout(componentLayout); componentLayout.setHorizontalGroup( componentLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 920, Short.MAX_VALUE) ); componentLayout.setVerticalGroup( componentLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 60, Short.MAX_VALUE) );

component.setBounds(0, 10, 870, 50); glassPane.add(component, javax.swing.JLayeredPane.DEFAULT_LAYER);

panel_merah1.add(glassPane, new org.netbeans.lib.awtextra.AbsoluteConstraints(90, 60, 920, 60));

getContentPane().add(panel_merah1);

pack(); }// </editor-fold>

private void buttonBig2ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: if(id==null ||textNama.getText().isEmpty() || textAlamat.getText().isEmpty() || textTelpon.getText().isEmpty() ||

Page 70: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

95

textStatus.getText().isEmpty() || textUserName.getText().isEmpty() || textPassword.getText().isEmpty()|| textHakAkses.getText().isEmpty()){ // JOptionPane.showMessageDialog(null, "Mohon Klik tabel untuk mengedit data"); runMessageU(); }else{ try { Kasir m = new Kasir(); m.setIdkasir(Integer.valueOf(id)); m.setNama(textNama.getText()); m.setAlamat(textAlamat.getText()); m.setTelepon(textTelpon.getText()); m.setStatus(textStatus.getText()); m.setUsername(textUserName.getText()); m.setPassword(textPassword.getText()); m.setAkses(textHakAkses.getText());

KasirJpaController kasirJpaController = new KasirJpaController(); kasirJpaController.edit(m); showtoTabel(); reset(); runMessageUpdate(); } catch (NonexistentEntityException ex) { ex.printStackTrace(); } catch (Exception ex) { ex.printStackTrace(); } } }

private void SelectStActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: SelectStatus m = new SelectStatus(formUser, textStatus);

Point p = jLabel6.getLocationOnScreen(); p.setLocation(p.getX(), p.getY()+28); m.setLocation(p); m.setVisible(true); }

private void SelectHakActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

Page 71: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

96

SelectHak m = new SelectHak(formUser, textHakAkses);

Point p = jLabel9.getLocationOnScreen(); p.setLocation(p.getX(), p.getY()+28); m.setLocation(p); m.setVisible(true); }

private void buttonBig4ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: if(textNama.getText().isEmpty() || textAlamat.getText().isEmpty() || textTelpon.getText().isEmpty() || textStatus.getText().isEmpty() || textUserName.getText().isEmpty() || textPassword.getText().isEmpty()|| textHakAkses.getText().isEmpty()){ runMessageIsi(); //JOptionPane.showMessageDialog(null, "Mohon isi data dengan Lengkap"); }else{ Kasir m = new Kasir(); m.setNama(textNama.getText()); m.setAlamat(textAlamat.getText()); m.setTelepon(textTelpon.getText()); m.setStatus(textStatus.getText()); m.setUsername(textUserName.getText()); m.setPassword(textPassword.getText()); m.setAkses(textHakAkses.getText());

KasirJpaController kasirJpaController = new KasirJpaController(); kasirJpaController.create(m); showtoTabel(); reset(); runMessageSimpan(); }}

private void buttonBig3ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: if(id==null ||textNama.getText().isEmpty() || textAlamat.getText().isEmpty() || textTelpon.getText().isEmpty() || textStatus.getText().isEmpty() || textUserName.getText().isEmpty() || textPassword.getText().isEmpty()|| textHakAkses.getText().isEmpty()){ //JOptionPane.showMessageDialog(null, "Mohon Klik tabel untuk menghapus data");

Page 72: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

97

runMessageD(); }else{ try{ KasirJpaController kasirJpaController = new KasirJpaController(); kasirJpaController.destroy(Integer.valueOf(id));; showtoTabel(); reset(); runMessageDelete(); } catch (NonexistentEntityException ex) { ex.printStackTrace(); } catch (Exception ex) { ex.printStackTrace(); } }}

private void buttonBig1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: showtoTabel(); reset();}

private void textBox1CaretUpdate(javax.swing.event.CaretEvent evt) { // TODO add your handling code here: if(jComboBox1.getSelectedIndex()==0){ // textBox1.setText("Pilih Opsi Pencarian"); }/*else if(ovalTextField4.getText().isEmpty()){ JOptionPane.showMessageDialog(null, "Mohon Isi Pencarian", "Warning",JOptionPane.WARNING_MESSAGE); }*/else if(jComboBox1.getSelectedIndex()==1){ // textBox1.setText(""); KasirJpaController controller = new KasirJpaController(); kasir = controller.findById(Integer.valueOf( textBox1.getText().trim())); tableModelKasir1.setDatatoTable(kasir);

}else if(jComboBox1.getSelectedIndex()==2){ // textBox1.setText(""); KasirJpaController controller = new KasirJpaController(); kasir = controller.findByNama(textBox1.getText().trim()); tableModelKasir1.setDatatoTable(kasir); }else if(jComboBox1.getSelectedIndex()==3){ // textBox1.setText(""); KasirJpaController controller = new KasirJpaController(); kasir = controller.findByAlamat(textBox1.getText().trim());

Page 73: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

98

tableModelKasir1.setDatatoTable(kasir); }else if(jComboBox1.getSelectedIndex()==4){ // textBox1.setText(""); KasirJpaController controller = new KasirJpaController(); kasir = controller.findByUserName(textBox1.getText().trim()); tableModelKasir1.setDatatoTable(kasir); }else if(jComboBox1.getSelectedIndex()==5){ // textBox1.setText(""); KasirJpaController controller = new KasirJpaController(); kasir = controller.findByHak(textBox1.getText().trim()); tableModelKasir1.setDatatoTable(kasir); }} void reset(){ jComboBox1.setSelectedIndex(0); textBox1.setText(""); textNama.setText(""); textAlamat.setText(""); textTelpon.setText(""); textStatus.setText(""); textUserName.setText(""); textPassword.setText(""); textHakAkses.setText(""); id=null; }void runMessageSimpan (){

component = new MessageComponent();glassPane.addGlassPaneComponent(component);component.show("SIMPAN DATA SUKSES !!!", 5000);}void runMessageUpdate (){

component = new MessageComponent();glassPane.addGlassPaneComponent(component);component.show("UPDATE DATA SUKSES !!!", 5000);}void runMessageDelete (){

component = new MessageComponent();glassPane.addGlassPaneComponent(component);component.show("DELETE DATA SUKSES !!!", 5000);}void runMessageD (){

component = new MessageComponent();glassPane.addGlassPaneComponent(component);

Page 74: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

99

component.showError("MOHON KLIK TABEL UNTUK MENGHAPUS DATA !!!", 5000);}void runMessageU (){

component = new MessageComponent();glassPane.addGlassPaneComponent(component);component.showWarning("MOHON KLIK TABEL UNTUK MENGEDIT DATA !!!", 5000);}void runMessageIsi (){

component = new MessageComponent();glassPane.addGlassPaneComponent(component);component.showWarning("MOHON ISI DATA DENGAN LENGKAP !!!", 5000);} /** * @param args the command line arguments */ /*public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { Distributorr dialog = new Distributorr(new javax.swing.JFrame(), true); dialog.addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent e) { System.exit(0); } }); dialog.setVisible(true); } }); }*/

@Override public void dialog() { setVisible(true); }

// Variables declaration - do not modify private javax.swing.JButton SelectHak; private javax.swing.JButton SelectSt; private apotik_2it_versi_2.Utility.ButtonBig buttonBig1; private apotik_2it_versi_2.Utility.ButtonBig buttonBig2; private apotik_2it_versi_2.Utility.ButtonBig buttonBig3;

Page 75: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

100

private apotik_2it_versi_2.Utility.ButtonBig buttonBig4; private com.stripbandunk.jglasspane.component.MessageComponent component; private com.stripbandunk.jglasspane.JGlassPane glassPane; private javax.swing.JComboBox jComboBox1; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JLabel jLabel8; private javax.swing.JLabel jLabel9; private paket.launk.java.container.PanelLine panelLine1; private paket.launk.java.container.PanelWhiteBorder panelWhiteBorder1; private apotik_2it_versi_2.Utility.Panel_merah panel_merah1; private Java_2IT.UTILITY.ScrollPane scrollPane1; private apotik_2it_versi_2.TabelModel.TableModelKasir tableModelKasir1; private apotik_2it_versi_2.Utility.TextBox textAlamat; private apotik_2it_versi_2.Utility.TextBox textBox1; private apotik_2it_versi_2.Utility.TextBox textHakAkses; private apotik_2it_versi_2.Utility.TextBox textNama; private apotik_2it_versi_2.Utility.PasswordBox textPassword; private apotik_2it_versi_2.Utility.TextBox textStatus; private apotik_2it_versi_2.Utility.TextBox textTelpon; private apotik_2it_versi_2.Utility.TextBox textUserName; // End of variables declaration

}

d. Obat

/* * To change this template, choose Tools | Templates * and open the template in the editor. */

/* * SearchObat.java * * Created on Dec 22, 2011, 2:38:35 PM */package apotik_2it_versi_2.Gui.Transaksi.Penjualan;

import apotik_2it_versi_2.Gui.Resep.*;

Page 76: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

101

import apotik_2it_versi_2.Database.Control.ObatJpaController;import apotik_2it_versi_2.Database.Entity.Obat;import apotik_2it_versi_2.Gui.Transaksi.Penjualan.FormPenjualan;import apotik_2it_versi_2.Utility.TextBox;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseEvent;import java.util.ArrayList;import java.util.List;import javax.swing.JOptionPane;import javax.swing.JTextField;

/** * * @author Java */public class SearchObat1 extends javax.swing.JDialog implements ActionListener{ FormPenjualan frm; private List<Obat> obat = new ArrayList<Obat>();private List<Obat> obatLengkap = new ArrayList<Obat>();private String kode=null;private String nama=null;private String hargaJual=null;private String jumlah =null;private String hargaPokok =null;private String jenisl =null;private String kemasan =null;private String indikasi =null;

/** Creates new form SearchObat */ SearchObat1(TransasksiResep transasksiResep, TextBox textObat ) { /* super( transasksiResep,true); initComponents(); // this.parameter1=(TextBox) textObat; // this.parameter2=(TextBox) textNama; showtoTabel(); actionTable(); select.addActionListener(this); // actionTable();*/ } public SearchObat1(FormPenjualan formPenjualan) { super( formPenjualan,true); initComponents(); showtoTabel();

Page 77: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

102

actionTable(); select.addActionListener(this); frm = formPenjualan; } public void actionPerformed(ActionEvent e) { if(textId.getText().isEmpty() || textNama.getText().isEmpty() ){ JOptionPane.showMessageDialog(null, "Mohon isi Klik Tabel untuk memilih data"); }else{

Object obj = e.getSource();

if(obj.equals(select)) { String var1 = this.textId.getText(); String var2 = this.textNama.getText(); frm.textIdObat.setText(var1); frm.textNamaObat.setText(var2); frm.harga.setText(hargaJual); frm.jumlahStok=jumlah; frm.jenis=jenisl; frm.kemasan=kemasan; frm.hargapokok=hargaPokok; frm.indikasi=indikasi; this.dispose(); } } }

void showtoTabel(){ ObatJpaController controller = new ObatJpaController(); obat.clear(); obat = controller.findObatEntities(); tableModelObatt1.setDatatoTable(obat);

}

void actionTable(){ tableModelObatt1.addMouseListener(new java.awt.event.MouseAdapter() { @Override public void mouseClicked(java.awt.event.MouseEvent evt) { tableMouseClicked(evt);

Page 78: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

103

} private void tableMouseClicked(MouseEvent evt) { int row_hasil = tableModelObatt1.getSelectedRow(); kode = tableModelObatt1.getValueAt(row_hasil, 0).toString(); nama = tableModelObatt1.getValueAt(row_hasil, 1).toString(); // harga = tableModelObatt1.getValueAt(row_hasil, 2).toString(); textId.setText(kode); textNama.setText(nama); searchObatLengkap(); } }); } void searchObatLengkap(){ObatJpaController controller = new ObatJpaController(); obatLengkap = controller.findByKode(kode); tableModelObatt2.setDatatoTable(obatLengkap); kode = tableModelObatt1.getValueAt(0, 0).toString(); nama = tableModelObatt1.getValueAt(0, 1).toString(); jenisl = tableModelObatt2.getValueAt(0, 2).toString(); kemasan = tableModelObatt2.getValueAt(0, 3).toString(); indikasi= tableModelObatt2.getValueAt(0, 4).toString(); hargaPokok = tableModelObatt2.getValueAt(0, 5).toString(); hargaJual = tableModelObatt2.getValueAt(0, 6).toString(); jumlah= tableModelObatt2.getValueAt(0, 7).toString(); System.out.println("AAA =" +jumlah); System.out.println("jenis =" +jenisl); System.out.println("kemasan =" +kemasan); System.out.println("hargapokok =" +hargaPokok); System.out.println("indikasi =" +indikasi);

} /*void showtoTabelObattLengkap(){ ObatJpaController controller = new ObatJpaController(); obat.clear(); obat = controller.findObatEntities(); tableModelObatt2.setDatatoTable(obat);

}*/

public JTextField gettextNama(){ return textNama; } /** This method is called from within the constructor to * initialize the form.

Page 79: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

104

* WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() {

jScrollPane1 = new javax.swing.JScrollPane(); tableModelObatt2 = new apotik_2it_versi_2.TabelModel.TableModelObatt(); panel1 = new apotik_2it_versi_2.Utility.Panel(); scrollPane1 = new apotik_2it_versi_2.Utility.ScrollPane(); tableModelObatt1 = new apotik_2it_versi_2.TabelModel.TableModelObattSearch(); select = new apotik_2it_versi_2.Utility.Button(); button2 = new apotik_2it_versi_2.Utility.Button(); textId = new apotik_2it_versi_2.Utility.TextBox(); jLabel1 = new javax.swing.JLabel(); jComboBox1 = new javax.swing.JComboBox(); textBox1 = new apotik_2it_versi_2.Utility.TextBox(); textNama = new apotik_2it_versi_2.Utility.TextBox();

jScrollPane1.setViewportView(tableModelObatt2);

setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); getContentPane().setLayout(new java.awt.GridLayout(1, 0));

scrollPane1.setViewportView(tableModelObatt1);

select.setForeground(new java.awt.Color(0, 0, 0)); select.setText("SELECT"); select.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { selectActionPerformed(evt); } });

button2.setForeground(new java.awt.Color(0, 0, 0)); button2.setText("CANCEL"); button2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { button2ActionPerformed(evt); } });

Page 80: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

105

textId.setForeground(new java.awt.Color(0, 0, 0));

jLabel1.setFont(new java.awt.Font("Tahoma", 1, 15)); jLabel1.setForeground(new java.awt.Color(255, 255, 255)); jLabel1.setText("SEARCH");

jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Filtering By", "Kode", "Nama", "Jenis", "Kemasan", "Indikasi" })); jComboBox1.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR)); jComboBox1.setOpaque(false);

textBox1.setForeground(new java.awt.Color(255, 0, 255)); textBox1.addCaretListener(new javax.swing.event.CaretListener() { public void caretUpdate(javax.swing.event.CaretEvent evt) { textBox1CaretUpdate(evt); } });

textNama.setForeground(new java.awt.Color(0, 0, 0));

javax.swing.GroupLayout panel1Layout = new javax.swing.GroupLayout(panel1); panel1.setLayout(panel1Layout); panel1Layout.setHorizontalGroup( panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panel1Layout.createSequentialGroup() .addContainerGap() .addComponent(jLabel1) .addContainerGap(463, Short.MAX_VALUE)) .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panel1Layout.createSequentialGroup() .addGap(0, 13, Short.MAX_VALUE) .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panel1Layout.createSequentialGroup() .addGap(78, 78, 78) .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, 143, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18)

Page 81: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

106

.addComponent(textBox1, javax.swing.GroupLayout.PREFERRED_SIZE, 270, javax.swing.GroupLayout.PREFERRED_SIZE)) .addComponent(scrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 509, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(panel1Layout.createSequentialGroup() .addComponent(textId, javax.swing.GroupLayout.PREFERRED_SIZE, 89, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(6, 6, 6) .addComponent(textNama, javax.swing.GroupLayout.PREFERRED_SIZE, 219, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addComponent(select, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(10, 10, 10) .addComponent(button2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGap(0, 12, Short.MAX_VALUE))) ); panel1Layout.setVerticalGroup( panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panel1Layout.createSequentialGroup() .addGap(22, 22, 22) .addComponent(jLabel1) .addContainerGap(254, Short.MAX_VALUE)) .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panel1Layout.createSequentialGroup() .addGap(0, 15, Short.MAX_VALUE) .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panel1Layout.createSequentialGroup() .addGap(2, 2, 2) .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addComponent(textBox1, javax.swing.GroupLayout.PREFERRED_SIZE,

Page 82: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

107

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(11, 11, 11) .addComponent(scrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(textId, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(textNama, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(panel1Layout.createSequentialGroup() .addGap(1, 1, 1) .addComponent(select, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panel1Layout.createSequentialGroup() .addGap(1, 1, 1) .addComponent(button2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGap(0, 15, Short.MAX_VALUE))) );

getContentPane().add(panel1);

pack(); }// </editor-fold>

private void textBox1CaretUpdate(javax.swing.event.CaretEvent evt) { // TODO add your handling code here: if(jComboBox1.getSelectedIndex()==0){ // textBox1.setText("Pilih Opsi Pencarian"); }/*else if(ovalTextField4.getText().isEmpty()){ JOptionPane.showMessageDialog(null, "Mohon Isi Pencarian", "Warning",JOptionPane.WARNING_MESSAGE); }*/else if(jComboBox1.getSelectedIndex()==1){ // textBox1.setText(""); ObatJpaController controller = new ObatJpaController();

Page 83: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

108

obat = controller.findByKode(textBox1.getText().trim()); tableModelObatt1.setDatatoTable(obat);

}else if(jComboBox1.getSelectedIndex()==2){ // textBox1.setText(""); ObatJpaController controller = new ObatJpaController(); obat = controller.findByNama(textBox1.getText().trim()); tableModelObatt1.setDatatoTable(obat); }else if(jComboBox1.getSelectedIndex()==3){ // textBox1.setText(""); ObatJpaController controller = new ObatJpaController(); obat = controller.findByJenis(textBox1.getText().trim()); tableModelObatt1.setDatatoTable(obat); }else if(jComboBox1.getSelectedIndex()==4){ // textBox1.setText(""); ObatJpaController controller = new ObatJpaController(); obat = controller.findByKemasan(textBox1.getText().trim()); tableModelObatt1.setDatatoTable(obat); }else if(jComboBox1.getSelectedIndex()==5){ // textBox1.setText(""); ObatJpaController controller = new ObatJpaController(); obat = controller.findByIndikasi(textBox1.getText().trim()); tableModelObatt1.setDatatoTable(obat); }}

private void selectActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: // parameter1.setText(textId.getText()); // parameter2.setText(textNama.getText()); // dispose(); /*Object obj = evt.getSource(); if(obj.equals(select)) { String var1 = this.textId.getText(); String var2 = this.textNama.getText(); TransasksiResep frm = new TransasksiResep(var1, var2); frm.show(); this.dispose(); }*/ }

private void button2ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: dispose();}

Page 84: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

109

/** * @param args the command line arguments */ //private final TextBox parameter1; // private final TextBox parameter2; // Variables declaration - do not modify private apotik_2it_versi_2.Utility.Button button2; private javax.swing.JComboBox jComboBox1; private javax.swing.JLabel jLabel1; private javax.swing.JScrollPane jScrollPane1; private apotik_2it_versi_2.Utility.Panel panel1; private apotik_2it_versi_2.Utility.ScrollPane scrollPane1; private apotik_2it_versi_2.Utility.Button select; private apotik_2it_versi_2.TabelModel.TableModelObattSearch tableModelObatt1; private apotik_2it_versi_2.TabelModel.TableModelObatt tableModelObatt2; private apotik_2it_versi_2.Utility.TextBox textBox1; private apotik_2it_versi_2.Utility.TextBox textId; private apotik_2it_versi_2.Utility.TextBox textNama; // End of variables declaration }

e. Distributor

/* * To change this template, choose Tools | Templates * and open the template in the editor. */

/* * SearchObat.java * * Created on Dec 22, 2011, 2:38:35 PM */

package apotik_2it_versi_2.Gui.Transaksi.Pembelian;

import apotik_2it_versi_2.Database.Control.DistributorJpaController;import apotik_2it_versi_2.Database.Entity.Distributor;

import apotik_2it_versi_2.Utility.TextBox;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseEvent;import java.util.ArrayList;

Page 85: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

110

import java.util.List;import javax.swing.JOptionPane;import javax.swing.JTextField;

/** * * @author Java */public class SearchIdDistributor extends javax.swing.JDialog implements ActionListener{ FormPembelian frm;private List<Distributor> distributor = new ArrayList<Distributor>();

private String kode=null;

/** Creates new form SearchObat */ public SearchIdDistributor(FormPembelian formPembelian) { super( formPembelian,true); initComponents(); showtoTabel(); actionTable(); select.addActionListener(this); frm = formPembelian; } public void actionPerformed(ActionEvent e) { if(textId.getText().isEmpty() ){ JOptionPane.showMessageDialog(null, "Mohon isi Klik Tabel untuk memilih data"); }else{

Object obj = e.getSource();

if(obj.equals(select)) { frm.textIdDistributor.setText(kode); this.dispose(); } } }

void showtoTabel(){ DistributorJpaController controller = new DistributorJpaController(); distributor.clear(); distributor = controller.findDistributorEntities(); table.setDatatoTable(distributor);

Page 86: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

111

}

void actionTable(){ table.addMouseListener(new java.awt.event.MouseAdapter() { @Override public void mouseClicked(java.awt.event.MouseEvent evt) { tableMouseClicked(evt); } private void tableMouseClicked(MouseEvent evt) { int row_hasil = table.getSelectedRow(); kode = table.getValueAt(row_hasil, 0).toString(); // harga = tableModelObatt1.getValueAt(row_hasil, 2).toString(); textId.setText(kode); } }); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() {

panel1 = new apotik_2it_versi_2.Utility.Panel(); scrollPane1 = new apotik_2it_versi_2.Utility.ScrollPane(); table = new apotik_2it_versi_2.TabelModel.TableModelDistributorSearch(); select = new apotik_2it_versi_2.Utility.Button(); button2 = new apotik_2it_versi_2.Utility.Button(); textId = new apotik_2it_versi_2.Utility.TextBox(); jComboBox1 = new javax.swing.JComboBox(); textBox1 = new apotik_2it_versi_2.Utility.TextBox(); jLabel1 = new javax.swing.JLabel();

setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); getContentPane().setLayout(new java.awt.GridLayout(1, 0));

scrollPane1.setViewportView(table);

select.setForeground(new java.awt.Color(51, 51, 51));

Page 87: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

112

select.setText("SELECT");

button2.setForeground(new java.awt.Color(51, 51, 51)); button2.setText("CANCEL"); button2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { button2ActionPerformed(evt); } });

textId.setForeground(new java.awt.Color(51, 51, 51));

jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Filtering By", "Id", "Nama", " " })); jComboBox1.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR)); jComboBox1.setOpaque(false);

textBox1.setForeground(new java.awt.Color(255, 0, 255)); textBox1.addCaretListener(new javax.swing.event.CaretListener() { public void caretUpdate(javax.swing.event.CaretEvent evt) { textBox1CaretUpdate(evt); } });

jLabel1.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N jLabel1.setText("Select Distributor");

javax.swing.GroupLayout panel1Layout = new javax.swing.GroupLayout(panel1); panel1.setLayout(panel1Layout); panel1Layout.setHorizontalGroup( panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panel1Layout.createSequentialGroup() .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panel1Layout.createSequentialGroup() .addContainerGap() .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addGroup(panel1Layout.createSequentialGroup() .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, 104, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18)

Page 88: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

113

.addComponent(textBox1, javax.swing.GroupLayout.PREFERRED_SIZE, 222, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panel1Layout.createSequentialGroup() .addComponent(scrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 238, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(select, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(textId, javax.swing.GroupLayout.PREFERRED_SIZE, 89, javax.swing.GroupLayout.PREFERRED_SIZE)) .addComponent(button2, javax.swing.GroupLayout.DEFAULT_SIZE, 89, Short.MAX_VALUE))))) .addGroup(panel1Layout.createSequentialGroup() .addGap(90, 90, 90) .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 183, javax.swing.GroupLayout.PREFERRED_SIZE))) .addContainerGap()) ); panel1Layout.setVerticalGroup( panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panel1Layout.createSequentialGroup() .addContainerGap(12, Short.MAX_VALUE) .addComponent(jLabel1) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(textBox1, javax.swing.GroupLayout.PREFERRED_SIZE,

Page 89: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

114

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panel1Layout.createSequentialGroup() .addGap(18, 18, 18) .addComponent(textId, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addComponent(select, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(button2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panel1Layout.createSequentialGroup() .addGap(6, 6, 6) .addComponent(scrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGap(20, 20, 20)) );

getContentPane().add(panel1);

pack(); }// </editor-fold>

private void textBox1CaretUpdate(javax.swing.event.CaretEvent evt) { // TODO add your handling code here: if(jComboBox1.getSelectedIndex()==0){ // textBox1.setText("Pilih Opsi Pencarian"); }/*else if(ovalTextField4.getText().isEmpty()){ JOptionPane.showMessageDialog(null, "Mohon Isi Pencarian", "Warning",JOptionPane.WARNING_MESSAGE); }*/else if(jComboBox1.getSelectedIndex()==1){ // textBox1.setText(""); DistributorJpaController controller = new DistributorJpaController(); distributor = controller.findById(Integer.valueOf(textBox1.getText().trim())); table.setDatatoTable(distributor);

Page 90: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

115

}else if(jComboBox1.getSelectedIndex()==2){ // textBox1.setText(""); DistributorJpaController controller = new DistributorJpaController(); distributor = controller.findByNama(textBox1.getText().trim()); table.setDatatoTable(distributor); }}

private void button2ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: dispose();}

/** * @param args the command line arguments */ //private final TextBox parameter1; // private final TextBox parameter2; // Variables declaration - do not modify private apotik_2it_versi_2.Utility.Button button2; private javax.swing.JComboBox jComboBox1; private javax.swing.JLabel jLabel1; private javax.swing.JScrollPane jScrollPane1; private apotik_2it_versi_2.Utility.Panel panel1; private apotik_2it_versi_2.Utility.ScrollPane scrollPane1; private apotik_2it_versi_2.Utility.Button select; private apotik_2it_versi_2.TabelModel.TableModelDistributorSearch table; private apotik_2it_versi_2.Utility.TextBox textBox1; private apotik_2it_versi_2.Utility.TextBox textId; // End of variables declaration }

4.4 Testing

a. Form Login

Tabel IV.24Hasil Pengujian Black Box Testing Form Login

Page 91: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

116

No Skenario Pengujian

Test Case Hasil yang diharapkan

Hasil Pengujian

Kesimpulan

1 Mengosongkan semua isian form logi, lalu tekan tombol masuk

Nik : (kosong)Kata Kunci : ( Kosong)

Sistem akan menolak akses login dan menampilkan pesan “Mohon isi data dengan benar dan lengkap”

Sesuai harapan

Valid

2 Hanya mengisi Nik saja, dan mengosongkan kata kunci lalu langsung menekan tombol masuk

Nik : 123Kata Kunci : (Kosong)

Sistem akan menolak akses login dan menampilkan pesan “Mohon isi data dengan benar dan lengkap”

Sesuai harapan

Valid

3 Hanya mengisi kata kunci saja, dan mengosongkan Nik, lalu langsung menekan tombol masuk

Nik : (Kosong)

Kata Kunci : 123

Sistem akan menolak akses login dan menampilkan pesan “Mohon isi data dengan benar dan lengkap”

Sesuai harapan

Valid

4 Menginput Nik dan Kata Kunci yang sesuai, dan kondisi Nik sudah diaktifkan

Nik :123

Kata Kunci : 123

Sistem menerima akses login lalu akan tampil Menu Utama

Sesuai harapan

Valid

4.5 Support

4.5.1. Spesifikasi Hardware dan Software

Kebutuhan KeteranganSistem Operasi : Windows 7/ Linux UbuntuProcessor : Intel Pentium IV/ Core 2 Duo 2,4 Ghz lebih

Page 92: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

117

disarankanRAM : 512 MBHarddisk : 160 GBCD/DVD - RW : 52xMonitor : LCD 14”Keyboard : 108 keyPrinter : LaserjetMouse : SandardBrowser : Mozila Firefox / Internet ExplorerSoftware : MySQL

Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i PHP/5.2.9MySQL client version: 5.0.51aPHP extension: mysql

Server: localhost via TCP/IPVersi Server: 5.1.33-communityProtocol version: 10

NetBeans IDE 7.2.1 (Build 201210100934) Java: 1.7.0_10; Java HotSpot(TM) Client VM 23.6-b04

4.6 Spesifikasi Dokumen Sistem Usulan

a. Nama Dokumen : Laporan ObatFungsi : Sebagai laporan data obatSumber : AdminTujuan : Farmasi

Page 93: repository.bsi.ac.id · Web viewBAB IV. RANCANGAN SISTEM DAN PROGRAM USULAN. Analisa Kebutuhan Software. Tahap Analisis. Pada Sistem Informasi Persediaan Obat berbasis java dimana

118

Media : KertasFrekuensi : Setiap MingguFormat : Lampiran B – 1

b. Nama Dokumen : Laporan DistributorFungsi : Sebagai laporan data pengirimanSumber : AdminTujuan : Pihak PengirimMedia : KertasFrekuensi : Setiap terjadi laporan pengirimanFormat : Lampiran B – 2

c. Nama Dokumen : Laporan UserFungsi : Sebagai Laporan Data UserSumber : AdminTujuan : UserMedia : KertasFrekuensi : Setiap terjadi penambahan userFormat : Lampiran B - 3

d. Nama Dokumen : Laporan ResepFungsi : Sebagai laporan data resepSumber : AdminTujuan : FarmasiMedia : KertasFrekuensi : Setiap terjadi penambahan data resep baruFormat : Lampiran B – 4

e. Nama Dokumen : Laporan PembelianFungsi : Sebagai laporan data pembelianSumber : AdminTujuan : FarmasiMedia : KertasFrekuensi : Setiap terjadi pembelian obatFormat : Lampiran B – 5

f. Nama Dokumen : Laporan PenjualanFungsi : Sebagai laporan data penjualanSumber : AdminTujuan : FarmasiMedia : KertasFrekuensi : Setiap terjadi penjualan obatFormat : Lampiran B - 6