bab iii analisa sistem berjalan - repository.bsi.ac.id€¦ · sistem penjualan pada ud. anker...

106
23 BAB III ANALISA SISTEM BERJALAN 3.1. Umum Kebutuhan akan teknologi semakin lama akan semakin meningkat. Salah satu kebutuhan teknologi adalah di dalam suatu perusahaan terutama untuk membantu menyelesaikan masalah-masalah yang terjadi. Dalam mengatasi masalah-masalah yang terjadi dibutuhkan suatu sarana atau alat untuk dapat memberikan informasi secara cepat, tepat dan akurat. Jika informasi yang terdapat di dalam perusahaan tersebut lambat dalam penyampaiannya, maka sistem di dalam perusahaan tersebut akan terganggu. Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat pencatatan laporan, nota yang hilang sehingga akan mempengaruhi pencatatan dalam buku besar laporan yang dihasilkan tidak akurat serta membutuhkan waktu yang lama pada saat proses pencatatan laporan yang ada pada sistem UD. Anker sehingga tidak efisien. Adanya masalah tersebut maka dari pihak UD. Anker harus melakukan perbaikan dari sistem penjualan terutama untuk masalah pencatatan buku laporan nota yang sering hilang pada bagian pengiriman barang harus lebih teliti diperiksa sebelum proses pengiriman. Dengan menggunakan sistem yang terprogram berbasis dekstop (Netbeans IDE 8.1) akan lebih terstuktur dan efisien.

Upload: others

Post on 18-Oct-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

23

BAB III

ANALISA SISTEM BERJALAN

3.1. Umum

Kebutuhan akan teknologi semakin lama akan semakin meningkat. Salah satu

kebutuhan teknologi adalah di dalam suatu perusahaan terutama untuk membantu

menyelesaikan masalah-masalah yang terjadi. Dalam mengatasi masalah-masalah yang

terjadi dibutuhkan suatu sarana atau alat untuk dapat memberikan informasi secara cepat,

tepat dan akurat. Jika informasi yang terdapat di dalam perusahaan tersebut lambat dalam

penyampaiannya, maka sistem di dalam perusahaan tersebut akan terganggu.

Sistem penjualan pada UD. Anker proses penjualan nya masih belum

terkomputerisasi. Sering terjadi kesalahan pada saat pencatatan laporan, nota yang hilang

sehingga akan mempengaruhi pencatatan dalam buku besar laporan yang dihasilkan tidak

akurat serta membutuhkan waktu yang lama pada saat proses pencatatan laporan yang

ada pada sistem UD. Anker sehingga tidak efisien.

Adanya masalah tersebut maka dari pihak UD. Anker harus melakukan perbaikan dari

sistem penjualan terutama untuk masalah pencatatan buku laporan nota yang sering hilang

pada bagian pengiriman barang harus lebih teliti diperiksa sebelum proses pengiriman.

Dengan menggunakan sistem yang terprogram berbasis dekstop (Netbeans IDE 8.1) akan

lebih terstuktur dan efisien.

Page 2: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

24

3.1.1. Tinjauan UD. Anker

Tinjauan perusahaan ini, penulis menuliskan beberapa hal seperti sejarah

perusahaan, struktur organisasi perusahaan dengan tugas dan fungsi dari masing-masing

bagian yang ada di dalam UD. Anker.

3.1.2. Sejarah UD. Anker

UD. Anker berdiri sekitar 15 tahun yang lalu tepatnya pada tahun 2004. Perusahaan

ini merupakan perusahaan dagang yang menjual berbagai macam olahan makanan seperti

Sosis, Bakso, Nugget, Seafood, Otak-otak, dan berbagai olahan makanan lainnya yang

beralamat di Kp. Baru Timur No. 40 Cikampek. UD. Anker ini sudah berbadan hukum

pada tanggal 03 Mei 2017, dengan badan hukum Nomor :

503/4813/493/PK/V/DPMPTSP/2017 dari Dinas Penanaman Modal dan Pelayanan

Terpadu Satu Pintu (DPMPTSP) Kabupaten Karawang.

Awal mula berdirinya perusahaan ini merupakan usaha kecil-kecilan yang belum

memiliki karyawan sama sekali. Usaha ini juga merupakan usaha turun temurun dari

orang tua sang pemilik. Namun sekarang usahanya kini semakin berkembang sudah

memiliki cabang dan memiliki 16 karyawan.

Page 3: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

25

3.1.3. Struktur Organisasi dan Fungsi

Gambar III.1. Struktur Organisasi

(Sumber: UD. Anker)

Tugas dan Fungsi

1. Kepala Toko

a. Membuat jadwal shift personil

b. Membuat jadwal libur personil

c. Mengatur cuti personil

d. Menjaga target penjualan toko

e. Meminimalisir permasalahan toko.

2. Kasir

a. Menawarkan promosi yang berlangsung kepada pembeli

Page 4: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

26

b. Menjaga kebersihan area kasir

c. Meneliti uang untuk mencegah uang palsu masuk

d. Bertanggung jawab atas selisih uang

e. Harus ramah kepada pembeli.

3. Pelayanan

a. Mempersiapkan service equipment

b. Melaksanakan table set-up dan clear up

c. Menukar lena yang kotor ke lena room

d. Mengambil barang-barang ke gudang

e. Mengambil pesanan tamu

f. Menyajikan pesanan kepada tamu.

4. Bagian Gudang

a. Membuat perencanaan pengadaan barang dan distribusinya

b. Mengawasi dan mengontrol operasional gudang

c. Mengawasi dan mengontrol semua barang yang masuk dan keluar sesuai

dengan SOP

d. Melakukan pengecekan pada barang yang diterima sesuai sop

e. Membuat perencanaan, pengawasan dan laporan pergudangan

f. Memastikan ketersediaan barang sesuai dengan kebutuhan

g. Memastikan aktivitas keluar masuk barang berjalan lancar

h. Melaporkan semua transaksi keluar masuk barang dari dan ke gudang.

5. Sales

a. Aktif mencari target

Page 5: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

27

b. Merekap data hasil penjualan

c. Menjamin kepuasan pelanggan

d. Mencari mitra kerja

e. Menyusun strategi lanjutan.

3.2. Tinjauan Kasus

3.2.1. Proses Bisnis Sistem Berjalan

1. Pemesanan Barang

Pelanggan biasanya membeli barang secara langsung dengan datang ke toko atau

bisa juga melalui via telepon untuk memesan barang kepada pemilik toko,

kemudian akan didata oleh pemilik toko barang apa saja yang dipesan oleh

pelanggan. Pemilik membuka pesanan setiap hari kepada pelanggan.

2. Pemeriksaan Bagian Gudang

Setelah menerima data yang diberikan oleh pemilik toko atas pemesanan barang

dari pelanggan, bagian gudang memastikan apakah barang yang dipesan pelanggan

stoknya masih ada digudang atau sudah habis, jika stoknya ada bagian gudang

langsung mempersiapkan barang pesanan dan meminta bagian kasir membuat nota

pembayaran. Namun jika stoknya sudah habis bagian gudang langsung

memberitahukan kepada pemilik toko.

3. Proses Pengiriman Barang

Pengiriman barang kepada pelanggan dilakukan pada saat hari pemesanan barang,

pengirimannya bisa dilakukan hingga keluar kota tidak hanya sekitar cikampek

saja, bagian kasir memberikan bukti pembayaran untuk diberikan kepada bagian

Page 6: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

28

pengirim barang dan tidak lupa membawa faktur surat jalan untuk nantinya

diberikan kepada pelanggan sebagai tanda bukti adanya penjualan barang.

Fakturnya terdiri dari dua rangkap yang berwarna putih untuk pelanggan

sedangkan yang berwarna merah untuk pemilik toko.

4. Proses Pembayaran

Pembayaran dilakukan secara tunai pelanggan yang langsung datang ke toko

melakukan transaksi pembayaran kepada bagian kasir, kemudian akan diberikan

sebuah nota berangkap sebagai tanda bukti adanya penjualan barang. Nota

berwarna putih untuk diberikan kepada pelanggan sedangkan nota berwarna merah

untuk pemilik toko yang nantinya akan dilakukan pencatatan secara konvensional

setiap harinya kedalam buku laporan penjualan hingga dibuatkan laporan buku

besar selama 1 bulan berlangsungnya proses penjualan barang yang ada pada UD.

Anker Cikampek.

3.2.2. Unified Modelling Language (UML)

Menurut Mulyani, Sri. (2016) “UML adalah sebuah teknik pengembangan sistem

yang menggunakan bahasa grafis sebagai alat untuk pendokumentasian dan melakukan

spesifikasi pada sistem”.

Page 7: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

29

3.2.2. Activity Diagram

1. Activity Diagram Pemesanan Barang

Gambar III.2. Activity Diagram Pemesanan Barang

(Sumber : UD. Anker)

Page 8: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

30

2. Activity Diagram Pemeriksaan Bagian Gudang

Gambar III.3. Activity Diagram Pemeriksaan Bagian Gudang

(Sumber : UD. Anker)

Page 9: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

31

3. Activity Diagram Pengiriman Barang

Gambar III.4. Activity Diagram Pengiriman Barang

(Sumber : UD. Anker)

Page 10: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

32

4. Activity Diagram Pembayaran

Gambar III.5. Activity Diagram Pembayaran

(Sumber : UD. Anker)

Page 11: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

33

3.2.3. Spesifikasi Bentuk Dokumen Masukan

Dokumen masukkan merupakan proses awal dari kegiatan pada proses penjulana

di UD. Anker. Adapun bentuk dokumen masukkan tersebut adalah sebagai berikut:

1. Formulir Pemesanan

Nama dokumen : Formulir pendaftaran

Fungsi : sebagai pesanan atas pembelian barang

Sumber : Pelanggan

Tujuan : Pemilik Toko

Media : Kertas

Jumlah Rangkap : 1 lembar

3.2.4. Spesifikasi Bentuk Dokumen Keluaran

Dokumen keluaran terdiri dari proses pencetakan atau output formulir pemesanan

yang berisi data barang yang akan dipesan. Adapun dokumen keluaran tersebut

adalah sebagai berikut :

1. Faktur

Nama Dokumen : Faktur

Fungsi : Bukti setelah melakukan pembelian

Sumber : Pemilik Toko

Tujuan : Pelanggan

Frekuensi : Setiap melakukan transaksi pemesanan barang

Media : Kertas

Jumlah Rangkap : 1 lembar

Page 12: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

34

3.2.5. Permasalahan Pokok

Dari hasil analisa dan pengamatan pada UD. Anker maka penulis dapat

mengemukakan beberapa permasalahan pokok yang khususnya terjadi pada sistem

penjualan, antara lain :

1. Karena didalam proses sistem penjulan UD. Anker terutama pencatatan laporannya

masih konvensional dan sering ditemui berbagai macam kendala di setiap harinya,

sehingga proses data yang dimasukan itu sering kali menumpuk pada setiap proses

penjualannya.

2. Pencatatan pada sistem penjualan sering terjadi ketidaksamaan data yang disebabkan

nota yang dikeluarkan beragkap sehingga pernah terjadi kehilangan nota dan akhirnya

akan mempengaruhi hasil laporan penjulan yang tidak akurat.

3. Membutuhkan waktu yang cukup lama dalam pencatatan laporan yang ada pada UD.

Anker terutama pada saat pencatatan laporan penjualan yang pengiriman barangnya

lebih dari ratusan barang dan harus diinput manual satu persatu tentu saja hal tersebut

tidak efisien.

Page 13: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

35

3.2.6. Pemecahan Masalah

Untuk mengatasi permasalahan yang terjadi pada UD. Anker penulis mengajukan

penggunaan sistem penjualan yang lebih efisien. Adapun langkah-langkah yang penulis

lakukan sebagai berikut :

1. Dibutuhkan sistem baru yang dapat menunjang perusahaan dalam proses usahanya

dengan cara membuat sistem yang terprogram berbasis desktop (Netbeans IDE 8.1).

2. Penginputan sistem penjualan tersimpan dengan terstuktur didalam database secara

otomatis sehingga data yang disimpan tidak akan mudah hilang.

3. Proses yang dibutuhkan dalam penginputan sistem penjualan bisa dilakukan secara

cepat dan akurat didalam satu program.

Page 14: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

36

3.3. Analisis Kebutuhan Software

3.3.1. Tahapan Analisis

Berdasarkan proses penjualan tunai sistem berjalan pada UD. Anker Cikampek,

maka tahapan berikutnya adalah analisis kebutuhan. Berikut ini spesifikasi kebutuhan

(System Requirement) dari sistem penjualan tunai pada UD. Anker Cikampek

Halaman Admin

A.1. Admin Login

A.2. Admin Mengakses Data Barang

A.3. Admin Mengelola Data Konsumen

A.4. Admin Mengelola Data Pesanan

A.5. Admin Mengakses Data Transaksi

A.6. Admin Mengelola Data Admin

Halaman Gudang

B.1. Gudang Login

B.2. Gudang Mengelola Data Barang

Halaman Keuangan

C.1. Keuagan Login

C.2. Keuangan Mengeola Data Perkiraan

C.3. Keuangan Mengakses Data Jurnal

C.4. Keuangan Mengelola Data Transaksi

Page 15: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

37

3.3.2. Use Case Diagram

1. Use Case Diagram Admin

Gambar III.6.

Use Case Diagram Admin

Page 16: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

38

A. Use Case Diagram Mengakses Data Barang

Gambar III.7.

Use Case Diagram Mengakses Data Barang

Deskripsi dari use case diagram mengakses data barang :

Tabel III.1.

Deskripsi Use Case Diagram Mengakses Data Barang

Use Case Name Mengakses Data Barang

Requirements A2

Goal Admin dapat melihat list data barang.

Pre-Conditions Admin telah melakukan login sebagai Admin dan

mengakses form data barang.

Page 17: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

39

Post-Condition Data barang berhasil mencari list data barang.

Failed end

Conditions

Gagal mencari list data barang.

Primary Actor Admin

Main Flow / Basic

Path

1. Admin mengakses form data barang.

2. Admin memilih tombol “Cari”.

3. Sistem menampilkan data barang yang dicari.

Alternate

Invariant /

Invariant 1

A1. Admin mencari data barang.

A2. Sistem menampilkan data barang yang dicari.

Invariant 2 -

Page 18: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

40

B. Use Case Diagram Mengelola Data Konsumen

Gambar III.8.

Use Case Diagram Mengelola Data Konsumen

Deskripsi dari use case diagram mengelola data konsumen :

Tabel III.2.

Deskripsi Use Case Diagram Mengelola Data Konsumen

Use Case Name Mengelola Data Konsumen

Requirements A3

Goal Admin dapat mengolah data konsumen baik menambah,

mengubah dan menghapus, serta melihat list data

konsumen.

Page 19: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

41

Pre-Conditions Admin telah melakukan login sebagai Admin dan

mengakses form data konsumen.

Post-Condition Data konsumen berhasil disimpan, diubah, dihapus dan

melihat list data konsumen.

Failed end

Conditions

Gagal menyimpan, mengubah dan menghapus data

konsumen.

Primary Actor Admin

Main Flow / Basic

Path

1. Admin mengakses form data konsumen.

2. Admin memilih tombol “Tambah”.

3. Admin menginput data konsumen baru.

4. Admin memilih tombol “Simpan”.

5. Sistem menyimpan data konsumen ke dalam

Database.

6. Sistem menampilkan keterangan “data berhasil

disimpan”.

Alternate Invariant /

Invariant 1

A1. Admin mencari data konsumen.

A2. Sistem menampilkan data konsumen yang dicari.

A3. Admin memilih tombol “Edit”.

A4. Admin mengubah data konsumen.

A5. Admin memilih tombol “Simpan”.

A6. Sistem memperbarui data konsumen ke dalam

Database.

Page 20: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

42

A7. Sistem menampilkan keterangan “data berhasil

diedit”.

Invariant 2 B1. Admin mencari data konsumen.

B2. Sistem menampilkan data konsumen yang dicari.

B3. Admin memilih tombol “Hapus”.

B4. Sistem menampilkan pesan konfirmasi “yakin

menghapus pesan”.

B5. Admin memilih tombol “Ya”.

B6. Sistem menghapus data konsumen.

B7. Sistem menampilkan keterangan “data berhasil

dihapus”.

Page 21: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

43

C. Use Case Mengelola Data Pesanan

Gambar III.9

Use Case Diagram Mengelola Data Pesanan

Deskripsi dari use case diagram mengelola data pesanan barang :

Tabel III.3.

Deskripsi Use Case Diagram Mengelola Data Pesanan

Use Case Name Mengelola Data Pesanan Barang

Requirements A4

Goal Admin dapat mengolah data pesanan baik menambah,

serta melihat list data pesanan.

Page 22: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

44

Pre-Conditions Admin telah melakukan login sebagai Admin dan

mengakses form data pesanan.

Post-Condition Data pesanan barang berhasil disimpan dan melihat list

data pesanan barang.

Failed end

Conditions

Gagal menyimpan data pesanan barang.

Primary Actor Admin

Main Flow / Basic

Path

1. Admin mengakses form data pesanan barang.

2. Admin memilih tombol “Tambah”.

3. Admin menginput data pesanan baru.

4. Admin memilih tombol “Simpan”.

5. Sistem menyimpan data pesanan barang ke dalam

Database.

6. Sistem menampilkan keterangan “data berhasil

disimpan”.

Alternate Invariant /

Invariant 1

-

Invariant 2 -

Page 23: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

45

D. Use Case Diagram Mengakses Data Transaksi

Gambar III.10.

Use Case Diagram Mengakses Data Transaksi

Deskripsi dari use case diagram mengakses data transaksi :

Tabel III.4.

Deskripsi Use Case Diagram Mengakses Data Transaksi

Use Case Name Mengakses Data Transaksi

Requirements A4

Goal Admin dapat melihat list data transaksi.

Pre-Conditions Admin telah melakukan login sebagai Admin dan

mengakses form data transaksi.

Page 24: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

46

Post-Condition Data transaksi berhasil mencari list data transaksi.

Failed end

Conditions

Gagal mencari data transaksi.

Primary Actor Admin

Main Flow / Basic

Path

1. Admin mengakses form data transaksi.

2. Admin memilih tombol “Cari”.

3. Sistem mencari data transaksi ke dalam Database.

Alternate Invariant /

Invariant 1

-

Invariant 2 -

Page 25: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

47

E. Use Case Diagram Mengelola Data Admin

Gambar III.11.

Use Case Diagram Mengelola Data Admin

Deskripsi dari use case diagram mengelola data admin :

Tabel III.5.

Deskripsi Use Case Diagram Mengelola Data Admin

Use Case Name Mengelola Data Admin

Requirements A5

Goal Admin dapat mengolah data admin baik menambah,

mengubah, menghapus serta melihat list data admin.

Page 26: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

48

Pre-Conditions Admin telah melakukan login sebagai Admin dan

mengakses form data Admin.

Post-Condition Data laporan Admin berhasil disimpan, dirubah, dihapus

dan melihat list data laporan Admin.

Failed end

Conditions

Gagal menyimpan, mengubah, dan menghapus data

admin.

Primary Actor Admin

Main Flow / Basic

Path

1. Admin mengakses form data Admin.

2. Admin memilih tombol “Tambah”.

3. Admin menginput data admin baru.

4. Admin memilih tombol “Simpan”.

5. Sistem menyimpan data admin ke dalam Database.

6. Sistem menampilkan keterangan “data berhasil

disimpan”.

Alternate Invariant /

Invariant 1

A1. Admin mencari data admin.

A2. Sistem menampilkan data admin yang dicari.

A3. Admin memilih tombol “Edit”.

A4. Admin mengubah data admin.

A5. Admin memilih tombol “Simpan”.

A6. Sistem memperbarui data admin ke dalam

Database.

Page 27: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

49

A7. Sistem menampilkan keterangan “data berhasil

diedit”.

Invariant 2 A1. Admin mencari data admin.

B2. Sistem menampilkan data admin yang dicari.

B3. Admin memilih tombol “Hapus”.

B4. Sistem menampilkan pesan konfirmasi “yakin

menghapus pesan”.

B5. Admin memilih tombol “Ya”.

B6. Sistem menghapus data admin.

B7. Sistem menampilkan keterangan “data berhasil

dihapus”.

2. Use Case Diagram Gudang

Gambar III.12.

Use Case Diagram Gudang

Page 28: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

50

A. Use Case Diagram Mengelola Data Barang

Gambar III.13.

Use Case Diagram Mengelola Data Barang

Deskripsi dari use case diagram mengelola data barang :

Tabel III.6.

Deskripsi Use Case Diagram Mengelola Data Barang

Use Case Name Mengelola Data Barang

Requirements B2

Page 29: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

51

Goal Gudang dapat mengolah data barang baik menambah,

mengubah dan menghapus, serta melihat list data

barang.

Pre-Conditions Gudang telah melakukan login sebagai Keuangan dan

mengakses form data barang.

Post-Condition Data barang berhasil disimpan, diubah, dihapus dan

melihat list data barang.

Failed end

Conditions

Gagal menyimpan, mengubah dan menghapus data

barang.

Primary Actor Gudang

Main Flow / Basic

Path

1. Gudang mengakses form data barang.

2. Gudang memilih tombol “Tambah”.

3. Gudang menginput data barang baru.

4. Gudang memilih tombol “Simpan”.

5. Sistem menyimpan data barang ke dalam Database.

6. Sistem menampilkan keterangan “data berhasil

disimpan”.

Alternate Invariant /

Invariant 1

A1. Gudang mencari data barang.

A2. Sistem menampilkan data barang yang dicari.

A3. Gudang memilih tombol “Edit”.

A4. Gudang mengubah data barang.

A5. Gudang memilih tombol “Simpan”.

Page 30: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

52

A6. Sistem memperbarui data barang ke dalam

Database.

A7. Sistem menampilkan keterangan “data berhasil

diedit”.

Invariant 2 B1. Gudang mencari data barang.

B2. Sistem menampilkan data barang yang dicari.

B3. Gudang memilih tombol “Hapus”.

B4. Sistem menampilkan pesan konfirmasi “yakin

menghapus pesan”.

B5. Gudang memilih tombol “Ya”.

B6. Sistem menghapus data barang.

B7. Sistem menampilkan keterangan “data berhasil

dihapus”.

Page 31: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

53

3. Use Case Diagram Keuangan

Gambar III.14.

Use Case Diagram Keuangan

Page 32: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

54

A. Use Case Diagram Mengelola Data Perkiraan

Gambar III.15.

Use Case Diagram Mengelola Data Perkiraan

Deskripsi dari use case diagram mengelola data akun perkiraan :

Tabel III.7.

Deskripsi Use Case Diagram Mengelola Data Akun Perkiraan

Use Case Name Mengelola Data Perkiraan

Requirements C2

Goal Keuangan dapat mengolah data perkiraan baik

menambah serta melihat list data perkiraan.

Pre-Conditions Keuangan telah melakukan login sebagai Keuangan dan

mengakses form data perkiraan.

Page 33: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

55

Post-Condition Data akun perkiraan berhasil disimpan dan melihat list

data perkiraan.

Failed end

Conditions

Gagal menyimpan data perkiraan.

Primary Actor Keuangan

Main Flow / Basic

Path

1. Keuangan mengakses form data perkiraan.

2. Keuangan memilih tombol “Tambah”.

3. Keuangan menginput data perkiraan baru.

4. Keuangan memilih tombol “Simpan”.

5. Sistem menyimpan data perkiraan ke dalam

Database.

6. Sistem menampilkan keterangan “data berhasil

disimpan”.

Alternate Invariant /

Invariant 1

-

Invariant 2 -

Page 34: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

56

B. Use Case Diagram Mengakses Data Jurnal

Gambar III.16.

Use Case Diagram Mengakses Data Jurnal

Deskripsi dari use case diagram mengakses data jurnal khusus :

Tabel III.8.

Deskripsi Use Case Diagram Mengakses Data Jurnal

Use Case Name Mengakses Data Jurnal

Requirements C3

Goal Keuangan dapat mengolah data jurnal baik mencetak

serta melihat list data jurnal.

Pre-Conditions Keuangan telah melakukan login sebagai Keuangan dan

mengakses form data jurnal.

Page 35: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

57

Post-Condition Data jurnal berhasil dicetak dan melihat list data jurnal.

Failed end

Conditions

Gagal mencetak data jurnal.

Primary Actor Keuangan

Main Flow / Basic

Path

1. Keuangan mengakses form data jurnal.

2. Keuangan memilih tombol “Cetak”.

3. Sistem mencetak data jurnal ke dalam Database.

Alternate Invariant /

Invariant 1

-

Invariant 2 -

C. Use Case Diagram Mengelola Data Transaksi

Gambar III.17.

Use Case Diagram Mengelola Data Transaksi

Page 36: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

58

Deskripsi dari use case diagram mengelola data transaksi :

Tabel III.9.

Deskripsi Use Case Diagram Mengelola Data Transaksi

Use Case Name Mengelola Data Transaksi

Requirements C4

Goal Keuangan dapat mengolah data transaksi baik

menambah serta melihat list data transaksi.

Pre-Conditions Keuangan telah melakukan login sebagai Keuangan dan

mengakses form data transkasi.

Post-Condition Data transaksi berhasil disimpan dan melihat list data

transaksi.

Failed end

Conditions

Gagal menyimpan data transaksi.

Primary Actor Keuangan

Main Flow / Basic

Path

1. Keuangan mengakses form data transaksi.

2. Keuangan memilih tombol “Tambah”.

3. Keuangan menginput data transaksi baru.

4. Keuangan memilih tombol “Simpan”.

5. Sistem menyimpan data transaksi ke dalam

Database.

Page 37: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

59

Alternate Invariant /

Invariant 1

-

Invariant 2 -

Page 38: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

60

3.3.3. Activity Diagram

1. Activity Diagram Admin

Gambar III.18.

Activity Diagram Admin

ya Tidak

Page 39: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

61

A. Activity Diagram Mengakses Data Barang

Gambar III.19.

Activity Diagram Mengakses Data Barang

Tidak Ya

Page 40: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

62

B. Activity Diagram Mengelola Data Konsumen

Gambar III.20.

Activity Diagram Mengelola Data Konsumen

Tidak Ya

Tidak

Tidak

Tidak

Ya

Ya

Ya

Page 41: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

63

C. Activity Diagram Mengelola Data Pesanan

Gambar III.21.

Activity Diagram Mengelola Data Pesanan

Ya Tidak

Page 42: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

64

D. Activity Diagram Mengakses Data Transaksi

Gambar III.22.

Activity Diagram Mengakses Data Transaksi

Tidak Ya

Page 43: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

65

E. Activity Diagram Mengelola Data Admin

Gambar III.23.

Activity Diagram Mengelola Data Admin

Tidak

Ya

Ya

Tidak

Ya Tidak

Ya Tidak

Ya Tidak

Page 44: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

66

4. Activity Diagram Gudang

Gambar III.24.

Activity Diagram Gudang

Tidak Ya

Page 45: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

67

A. Activity Diagram Mengelola Data Barang

Gambar III.25.

Activity Diagram Mengelola Data Barang

Tidak

Ya

Tidak

Tidak

Tidak

Ya Ya

Ya

Ya

Tidak

Page 46: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

68

5. Activity Diagram Keuangan

Gambar III.26.

Activity Diagram Keuangan

Tidak Ya

Page 47: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

69

A. ActivityDiagram Mengelola Data Perkiraan

Gambar III.27.

Activity Diagram Mengelola Data Perkiraan

Ya Tidak

Page 48: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

70

B. Activity Diagram Mengakses Data Jurnal

Gambar III.28.

Activity Diagram Mengakses Data Jurnal

Page 49: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

71

C. Activity Diagram Mengelola Data Transaksi

Gambar III.29.

Activity Diagram Mengelola Data Transaksi

Ya Tidak

Page 50: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

72

3.4. Desain

3.4.1. Entity Relationship Diagram (ERD)

Gambar III.30.

ERD

Page 51: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

73

3.4.2. Logical Record Structure (LRS)

Gambar III.31.

LRS

Page 52: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

74

3.4.3. Spesifikasi File

Spesifikasi file yang ada pada program aplikasi merupakan susunan atau struktur

tabel, tabel-tabel tersebut terhubung dalam sebuah database.

1. Spesifikasi File Data Admin

Nama Database : penjualan

Nama File : admin

Tipe File : Master File

Akses File : Random

Panjang Record : 105 karakter

Field Key : id_admin

Tabel III.10.

Spesifikasi File Admin

No Elemen Data Akronim Tipe Panjang Keterangan

1. Id Admin id_user Integer 10 Primary Key

2. Nama Admin nama_admin Varchar 15

3. Jenis Kelamin jenis_kelamin Varchar 10

4. Username Username Varchar 25

5. Password Password Varchar 10

Page 53: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

75

6. Hak Akses Hak_akses Varchar 15

2. Spesifikasi File Data Barang

Nama Database : penjualan

Nama File : barang

Tipe File : Master File

Akses File : Random

Panjang Record : 123 karakter

Field Key : kd_barang

Tabel III.11.

Spesifikasi File Data Barang

No Elemen Data Akronim Tipe Panjang Keterangan

1. Kode Barang kd_barang Integer 8 Primary Key

2. Nama Barang nama_barang Varchar 50

3. Stok stok Integer 5

4. Harga Harga Integer 10

Page 54: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

76

3. Spesifikasi File Data Konsumen

Nama Database : penjualan

Nama File : konsumen

Tipe File : Master File

Akses File : Random

Panjang Record : 133 karakter

Field Key : id_konsumen

Tabel III.12.

Spesifikasi File Data Konsumen

No Elemen Data Akronim Tipe Panjang Keterangan

1. Id Konsumen id_konsumen Integer 10 Primary Key

2. Nama Konsumen nama_konsumen Varchar 15

3. Alamat Alamat Varchar 50

4. Nomor Telepon nomor_telepon Varchar 15

5. Email email Varchar 30

Page 55: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

77

4. Spesifikasi File Data Detail Pesanan

Nama Database : penjualan

Nama File : detailpesanan

Tipe File : Transaction File

Akses File : Random

Panjang Record : 125 karakter

Field Key : no_po

Tabel III.13.

Spesifikasi File Data Detail Pesanan Barang

No Elemen Data Akronim Tipe Panjang Keterangan

1. No PO no_po Varchar 8

Primary

Key/Auto

Increment

2. Kode Barang kode_barang Varchar 5

3. Nama Konsumen nama_konsumen Varchar 25

4. Harga Satuan harga Int 15

5. Kuantitas kuantitas Int 5

6. Total total Int 15

Page 56: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

78

5. Spesifikasi File Data Pesanan

Nama Database : penjualan

Nama File : pemesanan

Tipe File : Transaction File

Akses File : Random

Panjang Record : 105 karakter

Field Key : no_po

Tabel III.14.

Spesifikasi File Data Pesanan Barang

No Elemen Data Akronim Tipe Panjang Keterangan

1. No PO no_po Varchar 8

Primary

Key/Auto

Increment

2. Tanggal Pesanan tanggal Date -

3. Id Konsumen id_konsumen Varchar 5

4. No Telepon tlp Varchar 15

5. Status Pembayaran status Varchar 15

Page 57: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

79

6. Spesifikasi File Data Pembayaran

Nama Database : penjualan

Nama File : pembayaran

Tipe File : Transaction File

Akses File : Random

Panjang Record : 162 karakter

Field Key : no_po

Tabel III.15.

Spesifikasi File Data Pembayaran

No Elemen Data Akronim Tipe Panjang Keterangan

1. Kode Bayar kode_bayar Varchar 8 Primary Key

2. Tanggal tanggal Date -

3. Kode Pesan kode_pesan Varchar 8

4. Id Konsumen id_konsumen Varchar 50

5. Kode Barang kode_barang Varchar 8

6. Jumlah Beli jumlah_beli Integer 5

7. Harga Satuan harga_satuan Integer 12

8. Total total Integer 12

Page 58: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

80

7. Spesifikasi File Data Perkiraan

Nama Database : penjualan

Nama File : perkiraan

Tipe File : Transaction File

Akses File : Random

Panjang Record : 40 karakter

Field Key : kode_akun

Tabel III.16.

Spesifikasi File Data Perkiraan

No Elemen Data Akronim Tipe Panjang Keterangan

1. Kode Akun kode_akun Int 5

Primary

Key/Auto

Increment

2. Nama Akun nama_akun Varchar 35

8. Spesifikasi File Data Detail Jurnal

Nama Database : penjualan

Page 59: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

81

Nama File : detailjurnal

Tipe File : Transaction File

Akses File : Random

Panjang Record : 70 karakter

Field Key : no_jurnal

Tabel III.17.

Spesifikasi File Data Detail Jurnal

No Elemen Data Akronim Tipe Panjang Keterangan

1. Kode Akun kode_akun Varchar 8

Primary

Key

2. Nama Akun nama_akun Varchar 35

3. Nomor Jurnal no_jurnal Varchar 8

9. Spesifikasi File Data Jurnal

Nama Database : penjualan

Nama File : jurnal

Tipe File : Transaction File

Akses File : Random

Panjang Record : 90 karakter

Page 60: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

82

Field Key : no_jurnal

Tabel III.18.

Spesifikasi File Data Jurnal

No Elemen Data Akronim Tipe Panjang Keterangan

1. Nomor Jurnal no_jurnal Varchar 8

Primary

Key/Auto

Increment

2. Kode Bayar kd_bayar Varchar 8

3. Tanggal tanggal date -

4. Debit debet Int 15

5. Kredit kredit Int 15

Page 61: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

83

3.4.4. Sequence Diagram

Gambar III.32.

Sequence Diagram

Page 62: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

84

3.4.5. Deployment Diagram

Gambar III.33.

Deployment Diagram

3.4.6. User Interface

1. Menu Login

Gambar III.34.

User Interface Menu Login

Page 63: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

85

2. Menu Utama

Gambar III.35.

User Interface Menu Utama

3. Menu Mengelola Data Barang

Gambar III.36.

User Interface Mengelola Data Barang

Page 64: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

86

4. Menu Mengelola Data Konsumen

Gambar III.37.

User Interface Mengelola Data Konsumen

5. Menu Mengelola Data Transaksi

Gambar III.38.

User Interface Mengelola Data Transaksi

Page 65: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

87

6. Menu Mengelola Data Admin

Gambar III.39.

User Interface Mengelola Data Admin

7. Menu Mengelola Data Pesanan

Gambar III.40.

User Interface Mengelola Data Pesanan

Page 66: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

88

8. Menu Mengelola Data Perkiraan

Gambar III.41.

User Interface Mengelola Data Perkiraan

9. Menu Mengakses Data Jurnal

Gambar III.42.

User Interface Mengakses Data Jurnal

Page 67: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

89

3.5. Implementasi

3.5.1. Code Generation

Pada tahapan ini menampilkan listing program pada form yang terkait dengan

proses bisnis utamanya :

A. Form Data Transaksi Penjualan

import java.sql.ResultSet;

import Database.KoneksiDatabase;

import Database.ResultSetTable;

import java.awt.event.KeyEvent;

import java.io.File;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

import java.util.GregorianCalendar;

import java.util.HashMap;

import java.util.logging.Level;

import java.util.logging.Logger;

import javax.swing.JOptionPane;

Page 68: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

90

import net.sf.jasperreports.engine.JasperFillManager;

import net.sf.jasperreports.engine.JasperPrint;

import net.sf.jasperreports.engine.JasperReport;

import net.sf.jasperreports.engine.util.JRLoader;

import net.sf.jasperreports.view.JasperViewer;

public class form_transaksi_penjualan extends javax.swing.JFrame {

ResultSet rs;

KoneksiDatabase con;

int waktumulai = 0;

public form_transaksi_penjualan() {

con = new KoneksiDatabase(new Database.Parameter().HOST_DB, new

Database.Parameter().USERNAME_DB, new

Database.Parameter().PASSWORD_DB);

initComponents();

setTitle("form transaksi penjualan");

setjam();

Loadtabel1();

Loadtabel2();

nonaktif1();

KodePenjualan.setEnabled(false);

TanggalJual.setEnabled(false);

Titik.setEnabled(false);

Tambah.setEnabled(true);

Page 69: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

91

Batal.setEnabled(false);

Simpan.setEnabled(false);

JumlahBeli.setEnabled(false);

Cari.setEnabled(false);

IDNama.setEnabled(false);

Loadtabel.setEnabled(false);

Total.setText("0");

}

/**

* 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() {

jPanel1 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

jLabel2 = new javax.swing.JLabel();

jLabel3 = new javax.swing.JLabel();

jLabel4 = new javax.swing.JLabel();

KodePenjualan = new javax.swing.JTextField();

Page 70: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

92

IDCustomer = new javax.swing.JTextField();

Titik = new javax.swing.JButton();

jLabel6 = new javax.swing.JLabel();

jLabel7 = new javax.swing.JLabel();

jLabel8 = new javax.swing.JLabel();

jLabel9 = new javax.swing.JLabel();

jLabel10 = new javax.swing.JLabel();

StokTersisa = new javax.swing.JLabel();

jLabel12 = new javax.swing.JLabel();

jLabel13 = new javax.swing.JLabel();

jLabel14 = new javax.swing.JLabel();

KodeBarang = new javax.swing.JTextField();

NamaBarang = new javax.swing.JTextField();

HargaSatuan = new javax.swing.JTextField();

stoksedia = new javax.swing.JTextField();

JumlahBeli = new javax.swing.JTextField();

Total = new javax.swing.JTextField();

jLabel15 = new javax.swing.JLabel();

IDNama = new javax.swing.JTextField();

Cari = new javax.swing.JButton();

Loadtabel = new javax.swing.JButton();

jScrollPane1 = new javax.swing.JScrollPane();

tabelbarang = new javax.swing.JTable();

Page 71: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

93

Tambah = new javax.swing.JButton();

Simpan = new javax.swing.JButton();

Batal = new javax.swing.JButton();

jScrollPane2 = new javax.swing.JScrollPane();

tabelpenjualan = new javax.swing.JTable();

total_b = new javax.swing.JLabel();

jLabel18 = new javax.swing.JLabel();

panel12 = new javax.swing.JPanel();

waktu = new javax.swing.JLabel();

TanggalJual = new com.toedter.calendar.JDateChooser();

StokSisa = new javax.swing.JLabel();

jPanel4 = new javax.swing.JPanel();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

getContentPane().setLayout(new

org.netbeans.lib.awtextra.AbsoluteLayout());

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

jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 18)); //

NOI18N

jLabel1.setText("FORM TRANSAKSI PENJUALAN");

jPanel1.add(jLabel1, new

org.netbeans.lib.awtextra.AbsoluteConstraints(270, 20, 300, 30));

jLabel2.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

Page 72: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

94

jLabel2.setText("Kode Penjualan :");

jPanel1.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(60,

60, 100, 30));

jLabel3.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

jLabel3.setText("Tanggal Penjualan :");

jPanel1.add(jLabel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(60,

100, 100, 20));

jLabel4.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

jLabel4.setText("ID Customer :");

jPanel1.add(jLabel4, new

org.netbeans.lib.awtextra.AbsoluteConstraints(340, 60, 70, 20));

KodePenjualan.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

KodePenjualanActionPerformed(evt);

}

});

jPanel1.add(KodePenjualan, new

org.netbeans.lib.awtextra.AbsoluteConstraints(160, 60, 100, 30));

IDCustomer.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

IDCustomerActionPerformed(evt);

Page 73: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

95

}

});

jPanel1.add(IDCustomer, new

org.netbeans.lib.awtextra.AbsoluteConstraints(420, 60, 100, 30));

Titik.setText("...");

Titik.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

TitikActionPerformed(evt);

}

});

jPanel1.add(Titik, new org.netbeans.lib.awtextra.AbsoluteConstraints(540,

60, 50, -1));

jLabel6.setText("......................................................................................................

...........................................................................................................");

jPanel1.add(jLabel6, new org.netbeans.lib.awtextra.AbsoluteConstraints(0,

130, 830, -1));

jLabel7.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

jLabel7.setText("Input Penjualan ");

jPanel1.add(jLabel7, new org.netbeans.lib.awtextra.AbsoluteConstraints(20,

150, 100, 30));

jLabel8.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

Page 74: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

96

jLabel8.setText("Kode Barang :");

jPanel1.add(jLabel8, new org.netbeans.lib.awtextra.AbsoluteConstraints(20,

190, 110, 20));

jLabel9.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

jLabel9.setText("Nama Barang :");

jPanel1.add(jLabel9, new org.netbeans.lib.awtextra.AbsoluteConstraints(20,

220, 110, 20));

jLabel10.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

jLabel10.setText("Harga Satuan :");

jPanel1.add(jLabel10, new

org.netbeans.lib.awtextra.AbsoluteConstraints(20, 250, 100, 20));

StokTersisa.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

StokTersisa.setText("Stok Tersedia :");

jPanel1.add(StokTersisa, new

org.netbeans.lib.awtextra.AbsoluteConstraints(20, 280, 100, 20));

jLabel12.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

jLabel12.setText("Jumlah Beli :");

jPanel1.add(jLabel12, new

org.netbeans.lib.awtextra.AbsoluteConstraints(20, 310, 100, 20));

Page 75: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

97

jLabel13.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

jLabel13.setText("Total :");

jPanel1.add(jLabel13, new

org.netbeans.lib.awtextra.AbsoluteConstraints(20, 340, 100, 20));

jLabel14.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

jLabel14.setText("Jumlah Bayar :");

jPanel1.add(jLabel14, new

org.netbeans.lib.awtextra.AbsoluteConstraints(20, 370, 100, 20));

jPanel1.add(KodeBarang, new

org.netbeans.lib.awtextra.AbsoluteConstraints(130, 180, 130, 30));

NamaBarang.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

NamaBarangActionPerformed(evt);

}

});

jPanel1.add(NamaBarang, new

org.netbeans.lib.awtextra.AbsoluteConstraints(130, 220, 130, 20));

HargaSatuan.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

HargaSatuanActionPerformed(evt);

Page 76: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

98

}

});

jPanel1.add(HargaSatuan, new

org.netbeans.lib.awtextra.AbsoluteConstraints(130, 250, 130, -1));

jPanel1.add(stoksedia, new

org.netbeans.lib.awtextra.AbsoluteConstraints(130, 280, 100, -1));

JumlahBeli.addKeyListener(new java.awt.event.KeyAdapter() {

public void keyPressed(java.awt.event.KeyEvent evt) {

JumlahBeliKeyPressed(evt);

}

});

jPanel1.add(JumlahBeli, new

org.netbeans.lib.awtextra.AbsoluteConstraints(130, 310, 100, -1));

jPanel1.add(Total, new org.netbeans.lib.awtextra.AbsoluteConstraints(130,

340, 130, -1));

jLabel15.setFont(new java.awt.Font("Times New Roman", 0, 12)); //

NOI18N

jLabel15.setText("Mencari Nama Barang/Kode :");

jPanel1.add(jLabel15, new

org.netbeans.lib.awtextra.AbsoluteConstraints(290, 160, 150, 20));

jPanel1.add(IDNama, new

org.netbeans.lib.awtextra.AbsoluteConstraints(440, 160, 160, -1));

Cari.setFont(new java.awt.Font("Times New Roman", 1, 12)); // NOI18N

Page 77: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

99

Cari.setText("Cari");

Cari.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

CariActionPerformed(evt);

}

});

jPanel1.add(Cari, new org.netbeans.lib.awtextra.AbsoluteConstraints(620,

160, -1, -1));

Loadtabel.setFont(new java.awt.Font("Times New Roman", 1, 12)); //

NOI18N

Loadtabel.setText("Load tabel");

Loadtabel.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

LoadtabelActionPerformed(evt);

}

});

jPanel1.add(Loadtabel, new

org.netbeans.lib.awtextra.AbsoluteConstraints(690, 160, -1, -1));

tabelbarang.setModel(new javax.swing.table.DefaultTableModel(

new Object [][] {

{null, null, null, null},

{null, null, null, null},

{null, null, null, null},

Page 78: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

100

{null, null, null, null}

},

new String [] {

"Title 1", "Title 2", "Title 3", "Title 4"

}

));

jScrollPane1.setViewportView(tabelbarang);

jPanel1.add(jScrollPane1, new

org.netbeans.lib.awtextra.AbsoluteConstraints(300, 200, 510, 110));

Tambah.setFont(new java.awt.Font("Times New Roman", 1, 12)); //

NOI18N

Tambah.setText("Tambah");

Tambah.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

TambahActionPerformed(evt);

}

});

jPanel1.add(Tambah, new

org.netbeans.lib.awtextra.AbsoluteConstraints(310, 330, 120, 40));

Simpan.setFont(new java.awt.Font("Times New Roman", 1, 12)); //

NOI18N

Simpan.setText("Simpan");

Simpan.addActionListener(new java.awt.event.ActionListener() {

Page 79: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

101

public void actionPerformed(java.awt.event.ActionEvent evt) {

SimpanActionPerformed(evt);

}

});

jPanel1.add(Simpan, new

org.netbeans.lib.awtextra.AbsoluteConstraints(480, 330, 120, 40));

Batal.setFont(new java.awt.Font("Times New Roman", 1, 12)); // NOI18N

Batal.setText("Batal");

Batal.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

BatalActionPerformed(evt);

}

});

jPanel1.add(Batal, new org.netbeans.lib.awtextra.AbsoluteConstraints(660,

330, 120, 40));

tabelpenjualan.setModel(new javax.swing.table.DefaultTableModel(

new Object [][] {

{null, null, null, null, null, null, null, null, null},

{null, null, null, null, null, null, null, null, null},

{null, null, null, null, null, null, null, null, null},

{null, null, null, null, null, null, null, null, null}

},

new String [] {

Page 80: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

102

"Title 1", "Title 2", "Title 3", "Title 4", "Tittle 5", "Tittle 6", "Tittle 7",

"Tittle 8", "Tittle 9"

}

));

jScrollPane2.setViewportView(tabelpenjualan);

jPanel1.add(jScrollPane2, new

org.netbeans.lib.awtextra.AbsoluteConstraints(20, 410, 780, 90));

total_b.setText("0");

jPanel1.add(total_b, new

org.netbeans.lib.awtextra.AbsoluteConstraints(130, 370, 50, 20));

jLabel18.setText("(Enter)");

jPanel1.add(jLabel18, new

org.netbeans.lib.awtextra.AbsoluteConstraints(240, 310, 50, 20));

panel12.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.b

order.BevelBorder.LOWERED));

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

waktu.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);

waktu.setText("jLabel16");

waktu.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);

panel12.add(waktu, new org.netbeans.lib.awtextra.AbsoluteConstraints(0,

10, 450, -1));

Page 81: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

103

jPanel1.add(panel12, new

org.netbeans.lib.awtextra.AbsoluteConstraints(340, 100, 450, 30));

jPanel1.add(TanggalJual, new

org.netbeans.lib.awtextra.AbsoluteConstraints(160, 100, 150, 30));

StokSisa.setText("Stok Sisa");

jPanel1.add(StokSisa, new

org.netbeans.lib.awtextra.AbsoluteConstraints(640, 220, 60, 20));

jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.B

orderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Tabel Penjulan

Barang"));

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

jPanel1.add(jPanel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(10,

390, 810, 120));

getContentPane().add(jPanel1, new

org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 830, 520));

pack();

}// </editor-fold>

private void KodePenjualanActionPerformed(java.awt.event.ActionEvent evt)

{

// TODO add your handling code here:

}

private void IDCustomerActionPerformed(java.awt.event.ActionEvent evt) {

Page 82: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

104

// TODO add your handling code here:

}

private void TitikActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

data_konsumen a = new data_konsumen();

a.setVisible(true);

}

private void NamaBarangActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

}

private void HargaSatuanActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

}

private void SimpanActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

try {

if (!KodeBarang.getText().isEmpty() &&

!NamaBarang.getText().isEmpty() && !IDCustomer.getText().isEmpty()

&& !HargaSatuan.getText().isEmpty() &&

!JumlahBeli.getText().isEmpty() && !Total.getText().isEmpty()

&& !KodePenjualan.getText().isEmpty()) {

if (JOptionPane.showConfirmDialog(this, "transaksi berhasil, ingin

menambah transaksi?",

Page 83: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

105

"Peringatan", JOptionPane.YES_NO_OPTION) ==

JOptionPane.OK_OPTION) {

//isi data disini

hitungtotal();

update_brg();

simpan();

TanggalJual.setEnabled(false);

IDCustomer.setEnabled(false);

clear();

JumlahBeli.setText("");

Total.setText("");

Loadtabel1();

Loadtabel2();

IDNama.setText("");

IDNama.requestFocus();

} else {

JOptionPane.showMessageDialog(this, "terimakasih, kwitansi

belanja sedang dicetak");

hitungtotal();

update_brg();

simpan();

cetak();

Loadtabel1();

Page 84: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

106

Loadtabel2();

nonaktif1();

KodePenjualan.setEnabled(false);

TanggalJual.setEnabled(false);

Titik.setEnabled(false);

Tambah.setEnabled(true);

Batal.setEnabled(false);

Simpan.setEnabled(false);

JumlahBeli.setEnabled(false);

Cari.setEnabled(false);

IDNama.setEnabled(false);

Loadtabel.setEnabled(false);

total_b.setText("0");

IDCustomer.setText("");

KodePenjualan.setText("");

clear();

}

} else {

JOptionPane.showMessageDialog(this, "Data isian ada yang kosong");

}

} catch (Exception e) {

}

}

Page 85: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

107

private void CariActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

try {

if (!IDNama.getText().isEmpty()) {

rs = con.querySelectAll("barang", "kd_barang LIKE '%" +

IDNama.getText()

+ "%' OR nama_barang LIKE '%" + IDNama.getText() + "%'");

tabelbarang.setModel(new Database.ResultSetTable(rs));

ambildata();

JumlahBeli.setEnabled(true);

stoksedia.setEnabled(false);

} else {

JOptionPane.showMessageDialog(this, "Isi data pencarian");

IDNama.requestFocus();

}

} catch (Exception e) {

}

}

private void LoadtabelActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Loadtabel1();

IDNama.setText("");

IDNama.requestFocus();

Page 86: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

108

clear();

JumlahBeli.setEnabled(false);

}

private void BatalActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Batal.setEnabled(false);

Simpan.setEnabled(false);

Tambah.setEnabled(true);

JumlahBeli.setEnabled(false);

Loadtabel1();

clear();

KodePenjualan.setText("");

IDCustomer.setText("");

TanggalJual.setEnabled(false);

Titik.setEnabled(false);

Cari.setEnabled(false);

IDNama.setEnabled(false);

Loadtabel.setEnabled(false);

IDCustomer.setEnabled(false);

total_b.setText("0");

}

private void TambahActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Page 87: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

109

id();

TanggalJual.setEnabled(true);

Titik.setEnabled(true);

Tambah.setEnabled(false);

Simpan.setEnabled(true);

Batal.setEnabled(true);

Cari.setEnabled(true);

IDNama.setEnabled(true);

Loadtabel.setEnabled(true);

IDCustomer.setEnabled(true);

}

private void JumlahBeliKeyPressed(java.awt.event.KeyEvent evt) {

// TODO add your handling code here:

if (evt.getKeyCode() == KeyEvent.VK_ENTER) {

hitungtotal();

int ttl1 = Integer.parseInt(Total.getText());

int ttl2 = Integer.parseInt(total_b.getText());

int ttl3 = ttl1 + ttl2;

String a = Integer.toString(ttl3);

total_b.setText(a);

}

}

Page 88: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

110

/**

* @param args the command line arguments

*/

public static void main(String args[]) {

/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code

(optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default

look and feel.

* For details see

http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info :

javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

}

}

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(form_transaksi_penjualan.class.getName()).l

og(java.util.logging.Level.SEVERE, null, ex);

Page 89: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

111

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(form_transaksi_penjualan.class.getName()).l

og(java.util.logging.Level.SEVERE, null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(form_transaksi_penjualan.class.getName()).l

og(java.util.logging.Level.SEVERE, null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(form_transaksi_penjualan.class.getName()).l

og(java.util.logging.Level.SEVERE, null, ex);

}

//</editor-fold>

/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new form_transaksi_penjualan().setVisible(true);

}

});

}

// Variables declaration - do not modify

private javax.swing.JButton Batal;

private javax.swing.JButton Cari;

private javax.swing.JTextField HargaSatuan;

private javax.swing.JTextField IDCustomer;

Page 90: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

112

private javax.swing.JTextField IDNama;

private javax.swing.JTextField JumlahBeli;

private javax.swing.JTextField KodeBarang;

private javax.swing.JTextField KodePenjualan;

private javax.swing.JButton Loadtabel;

private javax.swing.JTextField NamaBarang;

private javax.swing.JButton Simpan;

private javax.swing.JLabel StokSisa;

private javax.swing.JLabel StokTersisa;

private javax.swing.JButton Tambah;

private com.toedter.calendar.JDateChooser TanggalJual;

private javax.swing.JButton Titik;

private javax.swing.JTextField Total;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel10;

private javax.swing.JLabel jLabel12;

private javax.swing.JLabel jLabel13;

private javax.swing.JLabel jLabel14;

private javax.swing.JLabel jLabel15;

private javax.swing.JLabel jLabel18;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

Page 91: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

113

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel7;

private javax.swing.JLabel jLabel8;

private javax.swing.JLabel jLabel9;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel4;

private javax.swing.JScrollPane jScrollPane1;

private javax.swing.JScrollPane jScrollPane2;

private javax.swing.JPanel panel12;

private javax.swing.JTextField stoksedia;

private javax.swing.JTable tabelbarang;

private javax.swing.JTable tabelpenjualan;

private javax.swing.JLabel total_b;

private javax.swing.JLabel waktu;

// End of variables declaration

private String id() {

String no = null;

try {

con.koneksiDatabase();

String sql = "Select right (kode_jual,4)+1 from transaksi penjulan";

ResultSet rs = con.eksekusiQuery(sql);

if (rs.next()) {

rs.last();

Page 92: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

114

no = rs.getString(1);

while (no.length() < 4) {

no = "000" + no;

no = "p" + no;

KodePenjualan.setText(no);

}

} else {

no = "P0001";

KodePenjualan.setText(no);

}

} catch (Exception e) {

}

return no;

}

void setjam() {

new Thread() {

@Override

public void run() {

while (waktumulai == 0) {

Calendar kalender = new GregorianCalendar();

int jam = kalender.get(Calendar.HOUR);

int menit = kalender.get(Calendar.MINUTE);

int detik = kalender.get(Calendar.SECOND);

Page 93: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

115

int AM_PM = kalender.get(Calendar.AM_PM);

String siang_malam = "";

if (AM_PM == 1) {

siang_malam = "PM";

} else {

siang_malam = "AM";

}

String time = jam + ":" + menit + ":" + detik + ":" + siang_malam;

waktu.setText(time);

}

}

}.start();

}

private void Loadtabel1() {

String namaKolom[] = {"kd_barang", "nama_barang", "stok", "harga"};

rs = con.querySelect(namaKolom, "barang");

tabelbarang.setModel(new ResultSetTable(rs));

}

private void Loadtabel2() {

String namaKolom[] = {"kode_jual", "tanggal_jual", "id_konsumen",

"kode_barang", "jumlah_beli", "harga_satuan", "total"};

rs = con.querySelect(namaKolom, "transaksi");

tabelpenjualan.setModel(new ResultSetTable(rs));

Page 94: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

116

}

private void ambildata() {

String st = (String) IDNama.getText();

ResultSet rst = con.querySelectAll("barang", "kd_barang='" + st + "'OR

nama_barang ='" + st + "'");

try {

while (rst.next()) {

this.KodeBarang.setText(rst.getString("kd_barang"));

this.NamaBarang.setText(rst.getString("nama_barang"));

this.HargaSatuan.setText(rst.getString("harga"));

this.stoksedia.setText(rst.getString("stok"));

}

} catch (SQLException ex) {

Logger.getLogger(form_transaksi_penjualan.class.getName()).log(Level.SEVER

E, null, ex);

}

}

private void clear() {

KodeBarang.setText("");

NamaBarang.setText("");

HargaSatuan.setText("");

stoksedia.setText("");

Page 95: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

117

Total.setText("");

JumlahBeli.setText("");

}

private void nonaktif1() {

KodeBarang.setEnabled(false);

NamaBarang.setEnabled(false);

HargaSatuan.setEnabled(false);

stoksedia.setEnabled(false);

Total.setEnabled(false);

IDCustomer.setEnabled((false));

}

private void aktif() {

KodeBarang.setEnabled(false);

NamaBarang.setEnabled(false);

HargaSatuan.setEnabled(false);

stoksedia.setEnabled(false);

Total.setEnabled(false);

IDCustomer.setEnabled(true);

}

private void hitungtotal() {

if (!JumlahBeli.getText().isEmpty()) {

int tt11 = Integer.parseInt(HargaSatuan.getText());

int tt12 = Integer.parseInt(JumlahBeli.getText());

Page 96: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

118

int tt13 = tt11 * tt12;

String a = Integer.toString(tt13);

Total.setText(a);

int stok1 = Integer.parseInt(stoksedia.getText());

int stok2 = Integer.parseInt(JumlahBeli.getText());

int stok3 = stok1 - stok2;

String c = Integer.toString(stok3);

StokSisa.setText(c);

} else {

JOptionPane.showMessageDialog(this, "Isikan Jumlah Beli");

JumlahBeli.requestFocus();

}

}

private void simpan() {

try {

if (!KodeBarang.getText().isEmpty() &&

!NamaBarang.getText().isEmpty() && !IDCustomer.getText().isEmpty()

&& !HargaSatuan.getText().isEmpty() &&

!JumlahBeli.getText().isEmpty() && !Total.getText().isEmpty()

&& !KodePenjualan.getText().isEmpty()) {

String kolom[] = { "kode_jual", "tanggal_jual", "id_konsumen",

"kode_barang", "jumlah_beli", "harga_satuan", "total"};

java.util.Date tgl = (java.util.Date) this.TanggalJual.getDate();

Page 97: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

119

String isi[] = { KodePenjualan.getText(), new

java.sql.Date(tgl.getTime()).toString(),

IDCustomer.getText(), KodeBarang.getText(),

JumlahBeli.getText(), HargaSatuan.getText(), Total.getText()};

System.out.println(con.queryInsert("transaksi", kolom, isi));

Loadtabel1();

Loadtabel2();

} else {

}

} catch (Exception e) {

System.out.println("salah");

}

}

private void update_brg() {

String kolom[] = {"kd_barang", "stok"};

String isi[] = {KodeBarang.getText(), StokSisa.getText()};

con.queryUpdate("barang", kolom, isi, "kd_barang='" +

String.valueOf(KodeBarang.getText()) + "'");

}

private void cetak() {

try {

String NamaFile = "src/laporan/laporantransaksi.jasper";

Class.forName("com.mysql.jdbc.Driver").newInstance();

Page 98: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

120

Connection koneksi =

DriverManager.getConnection("jdbc:mysql://localhost/penjualan", "root", "");

HashMap hash = new HashMap();

//Mengambil parameter dari ireport

hash.put("kode", KodePenjualan.getText());

File file = new File(NamaFile);

JasperReport jasperReport = (JasperReport)

JRLoader.loadObject(file.getPath());

JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,

hash, koneksi);

JasperViewer.viewReport(jasperPrint);

} catch (Exception ex) {

javax.swing.JOptionPane.showMessageDialog(rootPane,

ex.getMessage());

}

}

}

3.5.2. Black Box Testing

Proses testing merupakan tahap dari perancangan program yang bertujuan untuk

menguji dan mengetahui proses input dan output apakah hasilnya sesuai dengan yang

telah dikonsepkan diawal perancangan. Dalam proses testing metode yang digunakan

Page 99: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

121

adalah teknik blackbox dengan pengujian hanya pada form yang berhubungan dengan

proses bisnis utama saja, yaitu :

A. Form Login

Tabel III.19.

Hasil Pengujian Black Box Testing Form Login

No

.

Skenario

pengujian

Test case Hasil yang

diharapkan

Hasil

pengujian

Kesimpulan

1. Username

dan

password

tidak diisi

kemudian

klik

tombol

login

Username :

UIUUUUUUUUusev Username :

(kosong)

Password :

(kosong)

Sistem

menolak

karena data

seharusnya

tidak ada

yang

kosong dan

akan

muncul

pesan

peringatan

“login

gagal, coba

lagi !!”

Sesuai

harapan

Valid

2. Mengisi username dan password

tidak diisi

kemudian

klik

tombol

login

Username :

[email protected]

Password :

(kosong)

Sistem

menolak

karena data

seharusnya

tidak ada

yang

kosong dan

akan

muncul

pesan

peringatan

“login

gagal, coba

lagi !!”

Sesuai

harapan

Valid

Page 100: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

122

3. Username

dikosongk

an dan

mengisi

password

kemudian

klik

tombol

login

Username :

(kosong)

Password :

232323

Sistem

menolak

karena data

seharusnya

tidak ada

yang

kosong dan

akan

muncul

pesan

peringatan

“login

gagal, coba

lagi !!”

Sesuai

harapan

Valid

4. Mengisi

username

dan

password

kemudian

klik

tombol

login

Username :

[email protected]

om

Password :

666666

Sistem akan menerima

operasi

login dan

tampil

pesan

“login

berhasil”

Sesuai

harapan

Valid

Page 101: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

123

B. Form Data Konsumen

Tabel III.20.

Hasil Pengujian Black Box Testing Form Data Konsumen

No. Skenario

pengujian

Test case Hasil yang

diharapkan

Hasil

pengujia

n

Kesimpula

n

1. Nama konsumen, nomor telepon dan alamat tidak diisi

kemudian

klik

tombol

simpan

Nama konsumen

: (kosong)

Nomor telepon :

(kosong)

Alamat :

(kosong)

Sistem

menolak

karena data

seharusnya

tidak ada yang

kosong dan

akan muncul

pesan

peringatan

“data isian

ada yang

kosong”

Sesuai

harapan

Valid

2. Mengetikkan Nama konsumen, nomor telepon, email dan alamat tidak

diisi atau

kosong

kemudian

klik

tombol

simpan

Nama konsumen

: ricka

Nomor telepon :

(kosong)

Alamat :

(kosong)

Email : (kosong)

Sistem

menolak

karena data

seharusnya

tidak ada yang

kosong dan

akan muncul

pesan

peringatan

“data isian

ada yang

kosong”

Sesuai

harapan

Valid

Page 102: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

124

3. Mengetikkan nomor telepon,

Nama

konsumen,

email dan

alamat

tidak diisi

atau

kosong

kemudian

klik

tombol

simpan

Nama konsumen

: (kosong)

Nomor telepon :

085644328876

Alamat :

(kosong)

Email : (kosong)

Sistem

menolak

karena data

seharusnya

tidak ada yang

kosong dan

akan muncul

pesan

peringatan

“data isian

ada yang

kosong”

Sesuai

harapan

Valid

4. Mengetikk

an

alamat,

nomor

telepon,

email dan

Nama

konsumen

tidak diisi

atau

kosong

kemudian

klik

tombol

simpan

Nama konsumen

: (kosong)

Nomor telepon :

(kosong)

Alamat : kp. baru

rt/rw 01/04

Email : (kosong)

Sistem

menolak

karena data

seharusnya

tidak ada yang

kosong dan

akan muncul

pesan

peringatan

“data isian

ada yang

kosong”

Sesuai

harapan

Valid

5. Mengetikk

an email,

nama

konsumen,

nomor

telepon

dan alamat

tidak diisi

atau

kosong

kemudian

Nama konsumen

: (kosong)

Nomor telepon :

(kosong)

Alamat :

(kosong)

Email :

[email protected]

Sistem

menolak

karena data

seharusnya

tidak ada yang

kosong dan

akan muncul

pesan

peringatan

“data isian ada

yang kosong”

Sesuai

harapan

Valid

Page 103: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

125

klik

tombol

simpan

6. Mengetikk

an Nama

konsumen,

nomor

telepon,

alamat dan

email,

kemudian

klik

tombol

simpan

Nama konsumen

: ricka

Nomor telepon :

085644328876

Alamat : kp. baru

rt/rw 01/04

Email:

[email protected]

Sistem akan

menerima

operasi

simpan dan

menyimpanny

a kedalam

database dan

tampil pesan

“Data berhasil

disimpan”

Sesuai

harapan

Valid

C. Form Data Barang

Tabel III.21.

Hasil Pengujian Black Box Testing Form Data Barang

No. Skenario

pengujian

Test

case

Hasil yang

diharapkan

Hasil

pengujian

Kesimpulan

1. Mengetikkan

harga satuan,

sedangkan

nama barang

dan stok

tidak diisi

kemudian

klik tombol

simpan

Nama

barang :

(kosong)

Harga

satuan :

25.000

Stok :

(kosong)

Sistem

menolak

karena data

seharusnya

tidak ada yang

kosong dan

akan muncul

pesan

peringatan

Sesuai

harapan

Valid

Page 104: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

126

“data isian ada

yang kosong”

2. Mengetikkan Nama barang, sedangkan harga satuan dan stok tidak diisi

kemudian

klik tombol

simpan

Nama barang : nuget

Harga

satuan :

(kosong)

Stok :

(kosong)

Sistem

menolak

karena data

seharusnya

tidak ada yang

kosong dan

akan muncul

pesan

peringatan

“data isian ada

yang kosong”

Sesuai

harapan

Valid

3. Mengetikkan stok, sedangkan Nama

barang, dan

harga satuan

tidak diisi

kemudian

klik tombol

simpan

Nama

barang :

(kosong)

Harga

satuan :

(kosong)

Stock :

60

Sistem

menolak

karena data

seharusnya

tidak ada yang

kosong dan

akan muncul

pesan

peringatan

“data isian ada

yang kosong”

Sesuai

harapan

Valid

Page 105: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

127

4. Mengetikkan Nama barang, harga satuan, dan stok kemudian klik tombol simpan

Nama

barang :

nuget

Harga

satuan :

25.000

Stock :

60

Sistem akan

menerima

operasi simpan

dan

menyimpannya

kedalam

database dan

tampil pesan

“Data berhasil

disimpan”

Sesuai

harapan

Valid

3.5.3. Spesifikasi Hardware dan Software

Untuk memperoleh kemampuan yang optimal dalam pengolahan data diperlukan

aspek dasar yaitu perangkat keras (Hardware) dan perangkat lunak (Software) yang

saling berkaitan satu dengan lainnya sehingga tidak dapat dipisahkan, karena suatu

sistem komputerisasi tidak akan berjalan tanpa ada salah satu aspek tersebut. Perangkat

lunak dan perangkat keras harus dapat menunjukan kerja yang baik dan sesuai dengan

yang diharapkan

Tabel III.22.

Spesifikasi Hardware dan Software

Kebutuhan Keterangan

System Windows 10

Prosesor AMD

RAM 4 GB

Hardisk 150 GB

Monitor 14” LED

Printer Ink Jet

Keyboard 108 key

Mouse Standard

Page 106: BAB III ANALISA SISTEM BERJALAN - repository.bsi.ac.id€¦ · Sistem penjualan pada UD. Anker proses penjualan nya masih belum terkomputerisasi. Sering terjadi kesalahan pada saat

128

Software Bahasa pemrograman : Java 8.1

Program atau software pendukung : Xampp and Netbeans