Anda di halaman 1dari 59

LAPORAN PRAKTEK KERJA LAPANGAN (PKL)

APLIKASI ADMIN PERSONALIA BERBASIS WEB DENGAN PHP DAN MYSQL

Eko prasetyo
3115101020

DOSEN PEMBIMBING
Choirul Anam.M.Kom

PROGRAM STUDI MANAJEMEN INFORMATIKA


SEKOLAH TINGGI ILMU KOMPUTER PGRI
BANYUWANGI
2017

i
PERNYATAAN KEASLIAN TULISAN

Saya yang bertanda tangan di bawah ini:


Nama : Dian Nur Fadillah
NIM : 3115101020
Jurusan/Program Studi : D3 Manajemen Informatika
Menyatakan dengan sebenarnya bahwa Tugas Akhir yang saya tulis ini benar-
benar merupakan hasil karya saya sendiri, bukan merupakan pengambilalihan
tulisan atau pikiran orang lain yang saya aku sebagai hasil tulisan atau pikiran
saya sendiri.
Apabila di kemudian hari terbukti atau dapat dibuktikan Tugas Akhir ini hasil
jiplakan, maka saya bersedia menerima sanksi atas perbuatan tersebut.

Banyuwangi, 2 April 2017


Yang membuat pernyataan,

Dian Nur Fadillah

ii
LEMBAR PENGESAHAN PROPOSAL TUGAS AKHIR
Judul : SISTEM INFORMASI TRANSAKSI JUAL DAN BELI KACA UKIR
MENGGUNAKAN C# DAN MYSQL

Oleh : DIAN NUR FADILLAH


NIM : 3115101020

Telah diseminarkan pada


Hari :
Tanggal :
Tempat :

Mengetahui/Menyetujui
Dosen Pembimbing:

Chairul Anam, S.Kom, M.M


NIDN. 0713076804

Penguji 1 Penguji 2

Hadiq, M.Kom Solehatin, S.Kom


NIDN. 0713077804 NIDN. 0711077704

Penguji 3 Penguji 4

Tintin Harlina, M.Kom Rachman Yulianto, S.Kom


NIDN. 0713077804 NIDN. 0711077704

Ketua Program Studi MI:

Djuniharto, M.Kom
NIDN. 0726067101
SISTEM INFORMASI TRANSAKSI JUAL DAN BELI KACA UKIR MENGGUNAKAN C#
DAN MYSQL

iii
DIAN NUR FADILLAH
3115101020

Abstrak:

Perkembangan teknologi dimasa globalisasi saat ini terutama teknologi


komunikasi dan informasi yang berbasiskan komputer, dimana teknologi
menjadi andalan dan kebutuhan masyarakat dunia. Hal ini disebabkan oleh
perkembangan yang sangat pesat pada bidang teknologi telekomunikasi dan
komputer sehingga mendorong masyarakat dunia memasuki era reformasi yang
serba cepat, sekaligus menjadikan informasi sentral dalam dunia industri
maupun dunia usaha.
PUTRA ARTGLASS merupakan salah satu Usaha Kecil Menengah yang
bergerak di bidang penjualan dan kerajinan kaca, sistem yang sedang berjalan
saat ini masih di tulis manual menggunakan buku (manual book), dari proses
pencatatan data supplier,data barang , stok barang, data penjualan
barang,laporan penjualan dll.sistem ini dirasa masih kurang optimal karena
masih menggunakan buku sebagai media pencatatannya. Untuk mempermudah
pimpinan maupun petugas penjualan Maka dari itu di butuhkan suatu wadah
atau media yang mampu membantu dalam mengelola data agar tidak tercecer.
Untuk mengatasi masalah tersebut di perlukan sebuah aplikasi yang
dapat memenuhi kebutuhan untuk pimpinan maupun petugas penjualan.
Metode yang diajukan dalam pengembangan system yaitu Pengembangan
sistem menggunakan analisa berorientasi objek dengan menggunakan) dan
menggunakan bahasa pemrograman c# Visual Basic dan My sql.

Katakunci : Aplikasi, Penjualan, Pembelian, Kaca, Grafir 

KATA PENGANTAR

iv
Alhamdulillah penulis panjatkan kehadiran Allah SWT yang telah
melimpahkan rahmat, taufik serta hidayat-Nya, sehingga penulis dapat
menyelesaikan Tugas Akhir dengan judul “APLIKASI TRANSAKSI JUAL BELI
KACA MENGGUNAKAN C# DAN MYSQL”.
Sholawat teriring salam semoga tetap terlimpahkan kepada nabi
uhammad SAW beserta keluarga, sahabat serta pengikutnya. Dengan
tersusunnya paper ini penulis mengucapkan terima kasih yang sebesar-
besarnya kepada :
1. H.Choirul Anam S.Kom, MM selaku Ketua Jurusan Informatika Stikom
PGRI Banyuwangi.
2. Solehatin, S.Kom, M.Komselaku Dosen Pembimbing I.
3. Moh. Erdda Habiby.S.St selaku Dosen Pembimbing II.
4. Dosen Managemen Informatika Stikom PGRI Banyuwangi.
5. Kedua Orang Tua Penulis yang telah memberikan dukungan Moril
maupun
Materiil.
6. Teman-teman sejawat dan seperjuangan yang telah membantu penulis
dalam segala bentuk motivasi.
7. Semua pihak yang telah membantu penyusunan Tugas Akhir ini, baik
secara langsung maupun tidak langsung.

Akhirnya atas kesadaran bahwa penyusunan Tugas Akhir ini masih jauh dari
sempurna, oleh
karena itu penulis mohon maaf apabila banyak kekurangan disana sini.
Tidak lupa penulis
mengharapkan saran dan kritikan demi perbaikan selanjutnya.
Demikian semoga skripsi ini dapat memberikan manfaat bagi semua pihak.

Banyuwangi, April 2017


Penulis,

Dian Nur Fadillah

DAFTAR ISI

v
Halaman
HALAMAN JUDUL ………………………………………………………………………………………. i
HALAMAN PENGESAHAN …………………………………………………………………………… ii
ABSTRAK ……………………………………………………………………………………………………. iii
KATA PENGANTAR ……………………………………………………………………………………… iv
DAFTAR ISI …………………………………………………………………………………………………. v
DAFTAR GAMBAR ………………………………………………………………………………………. vi
DAFTAR TABEL …………………………………………………………………………………………… vii
DAFTAR SEGMEN PROGRAM …………………………………………………………………….. viii
DAFTAR ALGORITMA …………………………………………………………………………………. ix
BAB I PENDAHULUAN ………………………………………………………………………….. 1
1.1 Latar Belakang ……………………………………………………………………… 1
1.2 Perumusan Masalah …………………………………………………………….. 1
1.3 Tujuan dan Manfaat Penelitian …………………………………………….. 1
1.4 Batasan masalah .…………………………………………………………………. 3
BAB II

TINJAUAN PUSTAKA …………………………………………………………………… 3


2.1 Pengertian Aplikasi ……………………………………………………………… 3
2.2.1 Bahasa C++ ……………………………………………………………… 3
2.2.2 Bahasa C# ……………………………………………………………….. 4
2.2.3 OOP ………………………………………………………………………… 5
2.2.4 Activity ……………………………………….…………………………… 6
2.2.5 Mysql …………………………………………………………………….… 7
2.2.6 Unifield Modeling Language (UML) …………………………. 7
2.2.7 Studi Tugas Akhir Terdahulu ……………………………………. 11

BAB III

vi
3.1 Metode Tugas Akhir ……………………………………………………………. 12
3.1.1 Pengumpulan data ………………………………………………….. 12
3.1.2 Analisis ………………………………………………….………………… 12
3.1.3 Desain ….………………………………………………………………….. 12
3.1.4 Pembuatan kode program …….………………………………… 12
3.1.5 Pengujian …………………………….………………………………….. 12
3.1.6 Penulisan laporan ……………………………………..……….…... 13
3.2 pengembangan Sistem……….……………………………………………. 13
3.3 UML ………………………………………………………………………………… 13
3.4 Perancangan Basis Data ………………………………………………….. 16
3.5 Desain aplikasi …………………………………………………………………
3.5.1 Login
3.5.2 Menu Transaksi
3.5.3 Laporan
DAFTAR PUSTAKA ………………………………………………………………………………………. 75

DAFTAR TABEL

Tabel Halaman

vii
1.1 Tabel 2.1 Barang Mentah ………………....……………………………………………….. 16
1.2 Tabel 2.2 Barang Jadi ……........……………………………………………………………. . 16
2.1 Tabel 2.3 StokProduksi ............................................................................ 16
3.1 Tabel 2.4 Transaksi .…………………………………………………………………………….. 17
3.2 Tabel 2.5 detail_transaksi ........................................................................ 17
3.3 Tabel 2.6. Type ........................................................................................ 17

viii
DAFTAR GAMBAR

Gambar Halaman
2.1 Relasi antar tabel ………......................................……………………………………. 7
2.2 Activity Diagram .................................…………………………………………………. 8
3.1 Log in ..................................……………………………………………………………….. 18
3.2 Transaksi ................................................................................................ 18
3.3 Laporan .................................................................................................. 19

ix
Keterangan Tabel:

Tabel 1.1 : Kontrol-kontrol Standar Visual Studio


Nama Kontrol Keterangan
Label Digunakan untuk menampilkan tulisan pada
form.
Text Box Digunakan untuk menginputkan suatu
masukkan-masukkan dan dapat juga digunakan
sebagai tampilan teks.
List Box Digunakan untuk menampilkan beberapa item,
dan item tersebut dapat dipilih. Scroll bar dapat
digunakan apabila item yang ditampilkan
melebihi tampilan layar.
Combo Box Merupakan kombinasi antara Text Boc dengan
List Box. Pemilian pada item dapat dilakukan
dari List Box atau mengetikan langsung pada
Text Box.
Command 3 D Digunakan untuk menampilkan 3 D caption,
gambar bitmap atau gambar icon.
Panel 3D Hamper sama dengan frame. Digunakan untuk
menampilkan tempat kosong untuk teks dengan
latar belakang 3D.

x
{font: Calibri, 12pt, Bold}
Tabel 1.1 : (Lanjutan)
Nama Kontrol Keterangan
Button Penekanan tombol ini berarti untuk memulai
suatu tindakan.
Frame Mengelompokkan control-kontrol secara visual
(tergambar) atau secara fungsional (tindakan).
Check Box Menampilkan keadaan True/False atau pilihan
Yes/No.
Option Button Control ini sama dengan control Check Box.
Perbedaannya hanyalah terdapat satu option
yang aktif dari beberapa option yang ada.
Picture Box Digunakan untuk menampilkan gambar
(BMP/WMF).
Scroll Bar Digunakan untuk mendapatkan perubahan-
Vertikal dan perubahan baik kecil maupun besar. Property
Horisontal Value dapat berubah menjadi kecil hingga nilai
minimum jika ditekan pada daerah Large
Change atau Small Change.
Line Digunakan untuk menggambar garis lurus.
Lokasinya dapat ditentukan dengan mengatur
property X1, Y1, X2, dan Y2.
Shape Digunakan untuk menggambar bentuk standar
antara lain : lingkaran, bujur sangkar atau elips.
Timer Digunakan untuk mengubah nilai menurut
periode tertentu yang dapat diubah dengan
mengatur property interval.
Grid Digunakan untuk menampilkan inputan dalam
bentuk baris dan kolom.
Graph Digunakan untuk menampilkan fasilitas grafik ke
layar. Ada 11 jenis grafik yang disediakan.

xi
Bab I
Pendahuluan
1.1 Latar Belakang

Sistem Informasi Penjualan dan Pembelian Barang merupakan


suatu sistem yang memberikan layanan informasi yang berupa data transaksi
penjualan dan pembelian barang serta stok barang. PutraArtglass Genteng-
Banyuwangi adalah usaha di bidang pembelian barang mentah dan di jual
menjadi barang jadi yaitu kaca, dimana aplikasi ini berfungsi untuk
memenuhi kebutuhan sistem yang ada pada perusahaan tersebut
khususnya pada penjualan dan pembelian kaca. Tujuan penelitian ini
adalah untuk memberikan kemudahan pada saat proses pengolahan data
barang, customer dan supplier, mempermudah dalam pengolahan data
transaksi penjualan dan pembelian, meminimalisir kesalahan dalam
pencatatan data pembelian dan data penjualan per periode.
Metodologi yang digunakan dalam pengembangan aplikasi ini
adalah metodologi Iterasi dengan melalui empat tahapan yaitu tahap
permulaan sistem (system initiation), analisis sistem (system analysis),
desainsistem (system design), dan implementasi sistem (system
implementation). Kesimpulan yang dapat ditarikoleh penulis yaitu dengan
adanya aplikasi ini, dapat membantu dan mempermudah pihak
PutraArtglass dalam proses penjualan,pemesanan dan pembelian kaca.
Perangkat lunak yang digunakan adalah : windows 8.1 enterprise, Microsoft
Visual Studio 2012, dan SQL yog.
Sistem informasi ini dibangun agar dapat memberikan
kemudahan dalam pengolahan data penjualan dan pembelian baik dari
penjualan kepada customer dan pembelian terhadap supplier serta
pengolahan laporan penjualan dan pembelian agar lebih tepat dan akurat.

1.2 Perumusan Masalah


Bagaimana Kita Membuat Pekeerjaan menjadi lebih mudah dan efisien
Bagaimana mengurangi kesalahan managemen usaha.

1.3 Tujuan dan Manfaat Penelitian


 Dapat mengetahui perkembangan teknologi di Indonesia
 Dapat membuat aplikasi yang dapat memanagemen transaksi jual beli
 Dapat membuat aplikasi yang mempermudah perhitungan dan data
usaha

1.4 Batasan Masalah


Karena luasnya permasalahan penyusunan dalam Tugas Akhir ini, maka
penulis memberi batasan masalah dan asumsi yang dibahas dalam Tugas
akhir ini meliputi :

1
1. Aplikasi ini hanya membahas tentang Transaksi jual dan beli yang ada di
Putra ArtGlass

2
Bab II
Tinjauan Pustaka

2.1 Pengertian Aplikasi

Pengertian Aplikasi menurut Jogiyanto, adalah penggunaan dalam suatu


komputer,instruksi (instruction) atau pernyataan (statement) yangdisusun
sedemikian rupa sehingga komputer dapat memproses inputmenjadi
output.Besar Bahasa Indonesia atau ketentuan bahasa pemrograman
tertentu”.
Aplikasi adalah suatu program komputer yang dibuat untuk mengerjakan dan
melaksanakan tugas khusus dari pengguna. Aplikasi merupakan rangkaian
kegiatan atau perintah untuk dieksekusi oleh komputer.

Pengertian Penjualan
Penjualan merupakan sumber hidup suatu perusahaan, karena dari
penjualan dapat diperoleh laba serta suatu usaha memikat konsumen yang
diusahakan untuk mengetahui daya tarik mereka sehingga dapat mengetahui
hasil produk yang dihasikan. Penjualan dalam lingkup kegiatan, sering disalah
artikan dengan pengertian pemasaran. Penjualan dalam lingkup ini lebih
berarti tindakan menjual barang atau jasa. Penjualan adalah suatu usaha
yang terpadu untuk mengembangkan rencana-rencana strategis yang
diarahkan pada usaha pemuasan kebutuhan dan keinginan pembeli, guna
mendapatkan penjualan yang menghasilkan laba.(Penjualan merupakan
sumber hidup suatu perusahaan, karena dari penjualan dapat diperoleh laba
serta suatu usaha memikat konsumen yang diusahakan untuk mengetahui
daya tarik mereka sehingga dapat mengetahui hasil produk yang dihasikan.

2.1.1 Bahasa C++


C++ adalah bahasa pemrograman komputer C++ dikembangkan di Bell
Labs (Bjarne Stroustrup) pada awal tahun 1970-an, Bahasa itu diturunkan
dari bahasa sebelumnya, yaitu BCL, Pada awalnya, bahasa tersebut dirancang
sebagai bahasa pemrograman yang dijalankan pada sistem Unix, Pada
perkembangannya, versi ANSI (American National Standart Institute) Bahasa
pemrograman C menjadi versi dominan, Meskipun versi tersebut sekarang
jarang dipakai dalam pengembangan sistem dan jaringan maupun untuk
sistem embedded,Bjarne Stroustrup pada Bell labs pertama kali
mengembangkan C++ pada awal 1980-an, Untuk mendukung fitur-fitur pada
C++, dibangun efisiensi dan sistem support untuk pemrograman tingkat
rendah (low level coding).Pada C++ ditambahkan konsep-konsep baru seperti
class dengan sifat-sifatnya seperti inheritance dan overloading. Salah satu
perbedaan yang paling mendasar dengan bahasa C adalah dukungan
terhadap konsep pemrograman berorientasi objek (Object Oriented

3
Programming)(Wailer, 2010).Perbedaan Antara Bahasa pemrograman C dan
C++ meskipun bahasa-bahasa tersebut menggunakan sintaks yang sama
tetapi mereka memiliki perbedaan, C merupakan bahasa pemrograman
prosedural, dimana penyelesaian suatu masalah dilakukan dengan membagi-
bagi masalah tersebut kedalam su-submasalah yang lebih kecil, Selain itu, C+
+ merupakan bahasa pemrograman yang memiliki sifat Pemrograman
berorientasi objek, Untuk menyelesaikan masalah.

2.1.2 C#
C# adalah bahasa pemrograman yang diciptakan oleh Microsoft
(dikembangkan dibawah kepemimpinan Anders Hejlsberg yang notabene
juga telah menciptakan berbagai macam bahasa pemrograman termasuk
Borland Turbo C++ dan Borland Delphi). merupakan sebuah bahasa
pemrograman yang beorientasi objek yang dikembangkan oleh Microsoft
sebagai bagian dari inisiatif kerangka .NET Framework Bahasa pemrograman
ini dibuat berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek-aspek
ataupun fitur bahasa yang terdapat pada bahasa-bahasa pemrograman
lainnya seperti Java, Delphi, Visual Basic, dan lain-lain) dengan beberapa
penyederhanaan.
1. Sederhana (Simple)
C# bersifat sederhana, karena bahasa ini didasarkan kepada bahasa C dan C+
+. Jika anda familiar dengan C dan C++ atau bahkan Java, anda akan
menemukan aspek-aspek yang begitu familiar, seperti statements,
expression, operators, dan beberapa fungsi yang diadopsi langsung dari C
dan C++, tetapi dengan berbagai perbaikan yang membuat bahasanya
menjadi lebih sederhana.
2. Object Oriented Language
C# memenuhi syarat-syarat sebagai sebuah bahasa pemrograman yang
bersifat Object Oriented, yaitu encapsulation, inheritance dan polymorphism.
3. Powerfull dan Fleksibel
C# bisa digunakan untuk membuat berbagai macam aplikasi, seperti aplikasi
pengolah kata, grapik, spreadsheets, atau bahkan membuat kompiler untuk
sebuah bahasa permrograman.
4. Efisien
C# tidak memiliki terlalu banyak keyword, sehingga dapat mengurangi
kerumitan.
5. Modular
Kode C# ditulis dengan pembagian masing Class-Class (classes) yang terdiri
dari beberapa routines yang disebut sebagai member methods. Class-Class
dan metode-metode ini dapat digunakan kembali oleh program atau aplikasi
lain. Hanya dengan memberikan informasi yang dibutuhkan oleh Class dan
metode yang dimaksud, maka kita akan dapat membuat suata kode yang
dapat digunakan oleh satu atau beberapa aplikasi dan program (reusable
code)

4
Setelah kita membaca dan mengetahui apa itu bahasa C# dan mengapa di
baca c sharp , sekarang kita harus mengetahui apa saja kelebihan dan
kekurangan bahasa C#:
Kelebihan C# :
Flexible: C# program dapat di eksekusi di mesin computer sendiri atau di
transmiskan melalu web dan di eksekusi di computer lainnya
Powerful: C# memiliki sekumpulan perintah yang sama dengan C++ yang kaya
akan fitur yang lengkap tetapi dengan gaya bahasa yang lebih diperhalus
sehingga memudahkan penggunanya
Easier to use: C# memodifikasi perintah yang sepenuhnya sama dengan C++
dan memberitahu dimana letak kesalahan kita bila ada kesalahan dalam
aplikasi , hal ini dapat mengurangi waktu kita dalam mencari error
Visually oriented: The .NET library code yang digunakan oleh C#
menyediakan bantuan yang dibutuhkan untuk membuat tampilan yang
complicated dengan frames, dropdown , tabbed windows, group button ,
scroll bar , background image , dan lainnya
Secure: Semua bahasa pemprograman yg digunakan untuk kebutuhan
internet mesti memiliki security yg benar-benar aman untuk menghindari
aksi kejahatan dari pihak lain seperti hacker , C# memiliki segudang fitur
untuk menanganinya
Memory management lebih mudah karena adanya garbage collector, yg
membebaskan memory scr otomatis shg dapat mencegah memory leak

Kekurangan C# :
Banyaknya operator serta fleksibilitas penulisan program kadang-kadang
membingungkan pemakai.

2.1.3 OOP
object-oriented programming disingkat OOP) merupakan paradigma
pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di
dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek.
Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat
menerima pesan, memproses data, dan mengirim pesan ke objek
lainnya,Model data berorientasi objek dikatakan dapat memberi fleksibilitas
yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik
peranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa
OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan
sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.
Tujuan dari OOP diciptakan adalah untuk mempermudah pengembangan
program dengan cara mengikuti model yang telah ada di kehidupan sehari-
hari. Jadi setiap bagian dari suatu permasalahan adalah objek, nah objek itu
sendiri merupakan gabungan dari beberapa objek yang lebih kecil lagi. Saya
ambil contoh Pesawat, Pesawat adalah sebuah objek. Pesawat itu sendiri

5
terbentuk dari beberapa objek yang lebih kecil lagi seperti mesin, roda,
baling-baling, kursi, dll. Pesawat sebagai objek yang terbentuk dari objek-
objek yang lebih kecil saling berhubungan, berinteraksi, berkomunikasi dan
saling mengirim pesan kepada objek-objek yang lainnya. Begitu juga dengan
program, sebuah objek yang besar dibentuk dari beberapa objek yang lebih
kecil, objek-objek itu saling berkomunikasi, dan saling berkirim pesan kepada
objek yang lain.

2.5 Mysql

MySQL adalah sistem manajemen database SQL yang bersifat Open Source
dan paling populer saat ini. Sistem Database MySQL mendukung beberapa
fitur seperti multithreaded, multi-user, dan SQL database managemen sistem
(DBMS). Database ini dibuat untuk keperluan sistem database yang cepat,
handal dan mudah digunakan.MySQL dan PHP merupakan sistem yang saling
terintegrasi. Maksudnya adalah pembuatan database dengan menggunakan
sintak PHP dapat di buat. Sedangkan input yang di masukkan melalui aplikasi
web yang menggunakan script serverside seperti PHP dapat langsung
dimasukkan ke database MySQL yang ada di server dan tentunya web
tersebut berada di sebuah web server.

2.6 Unified Modeling Language (UML)

Unified Modeling Language (UML) adalah metodologi untuk


mengembangkan sistem OOP dan sekelompok perangkat tool untuk
mendukung pengembangan sistem tersebut. UML mulai diperkenalkan
oleh Object Management Group, sebuah organisasi yang telah
mengembangkan model, teknologi, dan standar OOP sejak tahun 1980-an.
Sekarang UML sudah mulai banyak digunakan oleh para praktisi OOP.

2.4 Activity Diagram


Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem
yang sedang dirancang, bagaimana masing-masing alir berawal, decision
yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga
dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa
eksekusi.
Activity diagram merupakan state diagram khusus, di mana sebagian besar
state adalah action dan sebagian besar transisi di-trigger oleh selesainya
state sebelumnya (internal processing). Oleh karena itu activity diagram tidak
menggambarkan behaviour internal sebuah sistem dan interaksi antar
subsistem secara eksak, tetapi lebih menggambarkan proses-proses dan
jalur-jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat
direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses

6
yang berjalan, sementara use case menggambarkan bagaimana aktor
menggunakan sistem untuk melakukan aktivitas.

Tabel 1.1 : Simbol Activity Diagram

No Gambar Nama Keterangan

1 State dari system yang


Action mencerminkan eksekusi dari
suatu aksi.

2 Titik awal untuk objek dibentuk


Initial Node atau diawali.

3 Titik akhir objek berhenti atau


Final Node dihancurkan.

4 Digunakan untukmenunjukkan
kegiatanyang dilakukan secara
Fork Node parallel atau untuk
menggabungkan dua kegiatan
peralel menjadisatu.

Satu aliran yang pada tahap


Fork
tertentu berubah menjadi
(Percabangan)
beberapa aliran.

Satu aliran yang pada tahap


Join
tertentu berubah menjadi
(Penggabungan)
beberapa aliran.

7
2.5 Class Diagram
Class diagram digunakan untuk menampilkan kelas-kelas dan
paket-paket di dalam system. Class diagram memberikan gambaran
system secara statis dan relasi antar mereka. Biasanya, dibua beberapa
class diagram untuk system tunggal. Beberapa diagram akan menampilkan
subset dari kelas-kelas dan relasinya.
Dibuat beberapa diagram sesuai dengan yang diinginkan untuk mendapatkan
gambaran lengkap terhadap system yang dibangun. Class diagram adalah alat
perancangan terbaik untuk tim pengembang. Diagram tersebut membantu
pengembang mendapatkan struktur system sebelum kode ditulis, dan membantu
untuk memastikan bahwa system adalah desain terbaik. Kelas adalah sesuatu
yang membungkus informasi dan perilaku.
Secara tradisional, system dibangun dengan ide dasar bahwa akan menyimpan
informasi pada sisi baris data dan data perilaku pengolahnya pada sisi aplikasi.
Salah satu perbedaan terstruktur dengan pendekatan berorientasi obyek
adalahpada berorientasi obyek menggabungkan informasi dan perilaku pengolah
informasi dan menyembunyikan semua kedalam sesuatu yang disebut kelas.

2.6 Sequence Diagram


Sequence diagram menjelaskan secara detail urutan proses yang
dilakukan dalam sistem untuk mencapai tujuan dari use case: interaksi
yang terjadi antar class, operasi apa saja yang terlibat, urutan antar
operasi, dan informasi yang diperlukan oleh masing-masing operasi.
Tabel 1.2. Sequence Diagram Symbol
N Simbol Nama Keterangan
o
1

Menandakan sebuah objek


Activation berinteraksi menerima dan
mengirim pesan

2 Object Mendadakan sebuah objek


Lifeline

8
3

Mendadakan pengguna atau


sistem lain yang berinteraksi
Actor Lifeline
dengan sebuah objek pada
system.

4
Message Mengirim pesan ke objek lain

6
Return Mengirim pesan balik (hasil) ke
Message objek lain
7

Mengirim pesan ke objek itu


Self Message
sendiri

8
Mencerminkan suatu potongan
atau potongan interaksi (yang
Fragment
disebut operan interaksi) yang
dikendalikan oleh objek

2.7 Use Case Diagram


Use case diagram digunakan untuk memodelkan bisnis proses
berdasarkan perspektif pengguna sistem. Use case diagram terdiri atas
diagram untuk use case dan actor. Actor merepresentasikan orang yang
akan mengoperasikan atau orang yang berinteraksi dengan sistem aplikasi.
Use case merepresentasikan operasi-operasi yang dilakukan oleh actor.
Use case digambarkan berbentuk elips dengan nama operasi dituliskan di
dalamnya. Actor yang melakukan operasi dihubungkan dengan garis lurus
ke use case.

9
Tabel 1.3 : Use Case Diagram Symbol
Numbe
Symbol Reference Name
r

1 Actor

2 Use Case

3 Sub System

4 Association

5 Dependency

6 Generalization

2.7 Studi Tugas akhir Terdahulu

10
Deskripsi Sistem Lama
Analisis sistem yang sedang berjalan Berdasarkan hasil observasi dan
wawancara langsung kepada owner Putra Artglass sistem yang berjalan saat
ini masih di tulis manual menggunakan buku (manual book) dari proses
pencatatan data supplier, data barang, stok barang, data
penjualan barang, laporan penjualan, dll. Sistem ini di rasa masih kurang
optimal karena masih menggunakan buku sebagai media pencatatannya
Kelemahan sistem lama :
1. Sistem penjualan tas yang belum terkomputerisasi menyulitkan penjual
dalam melakukan transaksi, setiap transaksi akan dicatat secara manual
melalui media buku begitu pula dengan penghitungan pendapatan maupun
pengeluaran yang masih dilakukan secara manual dengan menggunakan
kalkulator misalnya.
2. Kemungkinan data hilang sangat besar karena buku / kertas untuk
mencatat mudah hilang atau tercecer.
3. Dalam pembuatan laporan pun terhambat / kurang efisien karena harus
diolah manual datanya. Dari hasil analis sistem lama maka di butuhkan suatu
aplikasi terkomputerisasi yang dapat memudahkan dalam penyimpanan data
dan pengolahan data penjulan, sekaligus memudahkan dalam pembuatan
laporan sesuai dengan kebutuhan.
Deskripsi Sistem Baru
Fungsi utama perancangan aplikasi penjualan di UKM ini antara lain :
1.Memudahkan dalam pengolahan data dan penyimpanan data (datanya
aman karena tidak tercecer).
2. Memudahkan dalam pencatatan data supplier, data barang, stok barang,
data penjualan barang, laporan penjualan, sampai dengan proses
pembuatan report dapat dilakukan dengan mudah karena datanya tersedia
dan tersimpan menyatu di dalam aplikasi penjualan ini.

Bab III

11
Metode Tugas akhir

3.1 Metode Tugas akhir

Metode penelitian atau tahap-tahap dalam menyelesaikan penelitian ini dapat


dilihat pada Gambar. Prinsip pengerjaannya menggunakan metode waterfall
yaitu proses pengerjaan dilakukan dariatas ke bawah secara berurutan.
Tahapan yang dilakukan dalam penelitian adalah sebagai berikut :
3.1.1 Pengumpulan data

Pengumpulan Data adalah teknik atau cara yang di lakukan oleh peneliti
untuk mengumpulkan data. Pengumpulan data di lakukan untuk
memperoleh informasi yang di butuhkan dalam rangka mencapai tujuan
penelitian. Sementara itu instrumen pengumpulan data merupakan alat
yang di gunakan untuk mengumpulkan data.

3.1.2 Analisis

Proses pengumpulan kebutuhan dilakukan secara intensif untuk


menspesifikasikan kebutuhan perangkat lunak agar dapat di pahami
perangkat lunak sepeti yang dibutuhkan oleh user.

3.1.3 Desain

Proses multi langkah yang fokus pada desain pembuatan program


perangkat lunak termasuk struktur data, arsiterktur perangkat lunak,
referensi antar muka, dan procedure pengodean.

3.1.4 Pembuatan kode program

Desain harus di tran slasikan kedalam perangkat lunak. Hasil darii tahap ini
adalah program komputer sesuai dengan desain yang telah dibuat pada
tahap desain. Pengujian - pengujian ini fokus pada perangkat lunak secara
dari segi logik dan fungsional dan memastikan bahwa semua bagian sudah
diuji.

3.1.5 Pengujian

Ujicoba evaluasi di perlukan untuk melihat sejauh mana metode yang


diajukan berhasil dalam pembuatan aplikasi.

3.1.6 Penulisan laporan

12
Dilakukan untuk mendokumentasikan semua kegiatan-kegiatan dan
temuan-temuan selama pelaksanaan penelitian juga sebagai bukti dan
tanggung jawab.

3.2 Pengembangan Sistem

Analisa sistem adalah penguraian dari suatu sistem informasi yang utuh
kedalam bagian-bagian kompoennya dengan maksud untuk
mengidentifikasikan dan mengevaluasi permasalahan, kesempatan, hambatan
yang terjadi dan kebutuhan yang diharapkan dapat diusulkan perbaikan.

Analisi untuk penelitian ini meliputi kebutuhan software yakni visual stidio,
Mysql, Xamp. Untuk analisis studi yakni aplikasi penjualan dan pembelian
pada Putra artglass berbasi Mysql dan c# dimana digunakan sebagai
pengelolaan dalam perusahaan tersebut.

3.3 UML

Unified Modeling Language (UML) adalah himpunan struktur dan teknik untuk
pemodelan desain program berorientasi objek (OOP) serta aplikasinya. UML
adalah metodologi untuk mengembangkan sistem OOP dan sekelompok
perangkat tool untuk mendukung pengembangan sistem tersebut. UML mulai
diperkenalkan oleh Object Management Group, sebuah organisasi yang telah
mengembangkan model, teknologi, dan standar OOP sejak tahun 1980-an.
Sekarang UML sudah mulai banyak digunakan oleh para praktisi OOP. UML
merupakan dasar bagi perangkat (tool) desain berorientasi objek dari IBM.

UML menyediakan 10 macam diagram untuk memodelkan aplikasi


berorientasi objek, yaitu:

1. Use Case Diagram untuk memodelkan proses bisnis.


digunakan untuk memodelkan semua bisnis proses berdasarkan
perspektif pengguna sistem. Use case diagram terdiri atas diagram
untuk use case dan actor. Actor merepresentasikan orang yang akan
mengoperasikan atau orang yang berinteraksi dengan sistem aplikasi.

13
Gambar1. Use Case Diagram

2. Conceptual Diagram untuk memodelkan konsep-konsep yang ada di


dalam aplikasi.
3. Sequence Diagram untuk memodelkan pengiriman pesan (message)
antar objects. Diagram Class dan diagram Object merupakan suatu
gambaran model statis.Namun ada juga yang bersifat dinamis, seperti
Diagram Interaction.Diagram sequence merupakan salah satu diagram
Interaction yangmenjelaskan bagaimana suatu operasi itu dilakukan;
message (pesan) apa yang dikirimdan kapan pelaksanaannya.
4. Collaboration Diagram untuk memodelkan interaksi antar objects.
5. State Diagram untuk memodelkan perilaku objects di dalam sistem.
6. Activity Diagram untuk memodelkan perilaku Use Cases dan objects di
dalam system.

14
Gambar2. Activity Diagram

7. Class Diagram untuk memodelkan struktur kelas.


8. Object Diagram untuk memodelkan struktur object.
9. Component Diagram untuk memodelkan komponen object.
10. Deployment Diagram untuk memodelkan distribusi aplikasi.

3.4 Perancangan Basis Data

15
Perancangan basis data adalah proses untuk menentukan isi dan
pengaturan data yang di butuhkan untuk mendukung sebagai rancangan
sistem. Tujuan perancangan basis data untuk memenuhi informasi yang
berisikan kebutuhan user secara khusus dan aplikasi-aplikasinya.

Tabel 2.1 Barang Mentah


Field Type Collation Null Key Default Extra

kode_type int(3) (NULL) YES MUL (NULL)


ketebalan varchar(4) latin1_swedish_ci YES (NULL)
harga_jual int(10) (NULL) YES (NULL)

Tabel 2.2 Barang Jadi


Field Type Collation Null Key Default Extra
kode_transaksi int(5) (NULL) YES UNI (NULL)
kode_type int(3) (NULL) YES MUL (NULL)
ketebalan varchar(5) latin1_swedish_ci YES (NULL)
harga_jual int(7) (NULL) YES (NULL)
kode_stok int(6) (NULL) YES MUL (NULL)
Alamat varchar(50) latin1_swedish_ci YES (NULL)

Tabel 2.3 Stok


Field Type Collation Null Key Default Extra

kode_stok int(11) (NULL) NO MUL (NULL) auto_increment


jumlah_stok int(6) (NULL) YES (NULL)
Tanggal date (NULL) YES (NULL)

Tabel 2.4 Transaksi


Field Type Collation Null Key Default Extra

kode_transaksi int(5) (NULL) NO PRI 0


kode_type int(3) (NULL) YES MUL (NULL)
ketebalan varchar(4) latin1_swedish_ci YES (NULL)
harga_jual int(6) (NULL) YES (NULL)
kode_stok int(4) (NULL) YES MUL (NULL)
Alamat varchar(30) latin1_swedish_ci YES (NULL)

Tabel 2.5 detail_transaksi


Field Type Collation Null Key Default

16
kode_transaksi int(5) (NULL) NO PRI (NULL)
Tanggal date (NULL) YES (NULL)
id_pengguna varchar(30) latin1_swedish_ci YES MUL (NULL)

Tabel 2.6. Type


Field Type Collation Null Key Default Extra

kode_type int(3) (NULL) NO PRI (NULL) auto_increment


nama_type varchar(30) latin1_swedish_ci YES (NULL)
kode_jenis int(3) (NULL) YES MUL (NULL)

Tabel 2.7. Jenis


Field Type Collatio n Null Key Default Extra

kode_jenis int(3) (NULL) NO PRI (NULL) auto_increment


nama_jenis varchar(30) latin1_swedish_ci YES (NULL)

Table 2.8. User


Field Type Collation Null Key Default Extra

id_pengguna varchar(50) latin1_swedish_ci NO PRI (NULL)


Password varchar(50) latin1_swedish_ci YES (NULL)

Gambar 3. Relasi antar tabel

3.5 Desain Aplikasi

3.5.1 Login

Gambar 2.

17
ID

PASS
login

3.5.2 Menu Transaksi

Gambar 3.
File

Daftar Laporan Laporan


admin Tambah Sisa stok
barang pembelian penjualan

Pilih jenis kaca Daftara ukuran dan harga

Pilih type ukuran


simpan bayar batal

3.6.2 Laporan

18
Gambar 4.

Bulan
Export
Lihat
Tahun

DAFTAR PUSTAKA
{satu baris kosong, spasi 1,5pt}

19
Jbptunikompp. (2012). Sistem informasi Penjualan Dan Pembelian Barang di kasus CV.
NASYID JAYA.

Wahyuningsih,Sri.(2016).Sistem Informasi Koperasi Stikom Pgri Banyuwangi


Menggunakan Mysql Dan C#. Dalam laporan tugas akhir (2016).Hal-vii.

Smith, B., William Stanley., dan Harlan Shores. (1972). Fundamentals of Curiculum
Development. Edisi Kedua. Volume 1.

BAB IV
Implementasi

Segmen Program 1.1

20
Pada segmen form koneksi menjelaskan bahwa pada sub Class
Koneksi yang didalamnya terdapat deklarasi untuk pemanggilan
database MySQL. Proses membuka database dengan tipe data
string yang kemudian dikonfigurasikan pada server localhost, untuk
database diisi dengan nama database “bk”, pada uid diisi dengan “root”
dan pwd tidak diisi. Untuk menutup koneksinya hanya dengan
memberi parameter Close. Pada sub program executeNonQuery
dengan parameter string untuk memanggil perintah SQL untuk
dibuka. Pada sub program melihat data pada MySql atau
MySqlDataReader berisi parameter mysqlcommand untuk di buka.

Segmen koneksi :
using System;
using System.Data;
using MySql.Data.MySqlClient;
using System.Windows.Forms;

namespace PenjualanKaca
{
public class Connector
{
public Connector()
{
try{
alamat = "server=localhost; username=root;
password=; database=jualbeli_db;";
koneksi = new MySqlConnection(alamat);
}catch(Exception ex){
MessageBox.Show(ex.ToString());
}
}

private MySqlConnection koneksi;


private MySqlCommand perintah;
private MySqlDataAdapter adapter;
private DataSet ds;
private string alamat,query = "";
private int hasil;

private DataSet GetData(string query)


{
try
{
ds = new DataSet();
koneksi.Open();
perintah = new MySqlCommand(query,koneksi);
adapter = new MySqlDataAdapter(perintah);
perintah.ExecuteNonQuery();
adapter.Fill(ds);
koneksi.Close();
return ds;
}
catch(Exception ex)

21
{
MessageBox.Show(ex.ToString());
return null;
}
}

private int ManipulasiData(string query)


{
try
{
hasil = 0;
koneksi.Open();
perintah = new MySqlCommand(query,koneksi);
adapter = new MySqlDataAdapter(perintah);
hasil = perintah.ExecuteNonQuery();
koneksi.Close();
return hasil;
}
catch(Exception)
{
return 0;
}
}

public DataSet GetJenis()


{
query = "select * from jenis;";
return GetData(query);
}

public DataSet GetType_()


{
query = "select * from type;";
return GetData(query);
}

public DataSet GetType(string Jenis)


{
query = "select * from type where kode_jenis =
'"+Jenis+"';";
return GetData(query);
}

public DataSet GetType(string type,int temp)


{
query = "select * from type where nama_type =
'"+type+"';";
return GetData(query);
}

public DataSet GetType(string type,string jenis)


{
query = "select * from type where nama_type = '"+type+"'
and kode_jenis = '"+jenis+"';";
return GetData(query);
}

22
public DataSet GetType(byte i,byte j)
{
query = "select
type.kode_type,type.nama_type,jenis.nama_jenis from type " +
"inner join jenis on
type.kode_jenis=jenis.kode_jenis order by type.kode_jenis;";
return GetData(query);
}

public DataSet GetKetebalan(string type)


{
query = "select * from brg_mentah where kode_type =
'"+type+"';";
return GetData(query);
}

public DataSet GetKetebalan(string type,string ketebalan)


{
query = "select * from brg_mentah where kode_type =
'"+type+"' and ketebalan = '"+ketebalan+"';";
return GetData(query);
}

public DataSet GetPengguna()


{
query = "select * from userapp";
return GetData(query);
}

public DataSet GetPengguna(string id,string pass)


{
query = "select * from userapp where id_pengguna =
'"+id+"' and password = '"+pass+"';";
return GetData(query);
}

public DataSet GetTransaksiLast()


{
query = "select * from detail_transaksi order by
kode_transaksi desc limit 1;";
return GetData(query);
}

public DataSet GetStokLast()


{
query = "select * from stok order by kode_stok desc
limit 1;";
return GetData(query);
}

public DataSet GetSisaStok()


{
query = "select (select jumlah_stok from stok order by
kode_stok desc limit 1) - (select ifnull(sum(ketebalan),0)as " +

23
"stok_keluar from transaksi where kode_stok =
(select kode_stok from stok order by kode_stok " +
"desc limit 1))as sisa_stok";
return GetData(query);
}

public DataSet GetUser()


{
query = "select * from userapp;";
return GetData(query);
}

public DataSet GetUser(string id)


{
query = "select * from userapp where id_pengguna =
'"+id+"';";
return GetData(query);
}

public DataSet GetLaporan(string tahun,string bulan)


{
query = "select
detail_transaksi.kode_transaksi,transaksi.alamat,type.nama_type," +
"jenis.nama_jenis,transaksi.ketebalan,transaksi.harga_jual,"
+
"transaksi.kode_stok,detail_transaksi.tanggal from
detail_transaksi inner join transaksi " +
"on detail_transaksi.kode_transaksi=transaksi.kode_transaksi
inner join type on " +
"transaksi.kode_type=type.kode_type inner join jenis on
type.kode_jenis=" +
"jenis.kode_jenis where SUBSTRING(tanggal,1,4) = '" + tahun
+ "' and SUBSTRING(tanggal,6,2) = '" + bulan + "' " +
"order by kode_transaksi";
return GetData(query);
}

public int InsertTransaksi(string id_user){


query = "insert into detail_transaksi
(tanggal,id_pengguna) values (now(),'"+id_user+"')";
return ManipulasiData(query);
}

public int InsertDetailTransaksi(string kode_trans,string


kode_type,string ketebalan,string harga_jual,string kode_stok,string alamat)
{
query = "insert into transaksi values
('"+kode_trans+"','"+kode_type+"','"+ketebalan+"','"+harga_jual+"','"+kode_s
tok+"','"+alamat+"')";
return ManipulasiData(query);
}

public int InsertStok(string stok){


query = "insert into stok (jumlah_stok, tanggal) values
('"+stok+"',now())";
return ManipulasiData(query);

24
}

public int InsertPengguna(string id_pengguna,string pass){


query = "insert into userapp values
('"+id_pengguna+"','"+pass+"')";
return ManipulasiData(query);
}

public int DeletePengguna(string id_pengguna){


query = "delete from userapp where id_pengguna =
'"+id_pengguna+"'";
return ManipulasiData(query);
}

public int InsertType(string type,string kode_jenis){


query = "insert into type (nama_type,kode_jenis) values
('"+type+"','"+kode_jenis+"');";
return ManipulasiData(query);
}

public int InsertJenis(string nama_jenis){


query = "insert into jenis (nama_jenis) values
('"+nama_jenis+"');";
return ManipulasiData(query);
}

public int DeleteJenis(string kode_jenis){


query = "delete from jenis where kode_jenis =
'"+kode_jenis+"'";
return ManipulasiData(query);
}

public int InsertBrg_mentah(string kode_type,string


ketebalan,string harga_jual){
query = "insert into brg_mentah values ('" + kode_type + "','" +
ketebalan + "','" + harga_jual + "');";
return ManipulasiData(query);
}

public int DeleteKetebalan(string kode_type,string ketebalan){


query = "delete from brg_mentah where kode_type =
'"+kode_type+"' and ketebalan = '"+ketebalan+"';";
return ManipulasiData(query);
}

public int UpdateDetailKetebalan(string kode_type,string


ketebalan,string harga_jual){
query = "update brg_mentah set harga_jual =
'"+harga_jual+"' where kode_type = '"+kode_type+"' and ketebalan =
'"+ketebalan+"'";
return ManipulasiData(query);
}

}
}

25
Segmen log in :
coding di bawah ini coding membuat form dari awal masuk ini dalam
progam yang dibuat, di form login terdapat 2 button yaitu button login dan
button close. Dimana admin harus menginputkan username dan password
yang benar,jika salah akan muncul messegbox username dan password salah.

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using System.Data;

namespace PenjualanKaca
{
public partial class LoginForm : Form
{
public LoginForm()
{
InitializeComponent();
}

private MainForm _main;


private Connector _koneksi = new Connector();
private DataSet ds;

void Button1Click(object sender, EventArgs e)


{
try
{
if(textBox1.Text == "" && textBox2.Text == "")
{
MessageBox.Show("Lengkapi kolom nya bro !!
:D","Warning !!",MessageBoxButtons.OK,MessageBoxIcon.Warning);
}
else
{
ds = new DataSet();
ds =
_koneksi.GetPengguna(textBox1.Text,textBox2.Text);
if(ds.Tables[0].Rows.Count > 0)
{
_main = new MainForm(_koneksi);
_main.id_pengguna = textBox1.Text;
_main.Show();
this.Hide();

}
else
{
MessageBox.Show("Pengguna tidak
terdaftar !! :D","Warning !!",MessageBoxButtons.OK,MessageBoxIcon.Warning);
}
}
}
catch(Exception ex)

26
{
MessageBox.Show(ex.ToString());
}
}

void CheckBox1CheckedChanged(object sender, EventArgs e)


{
if(checkBox1.Checked)
{
textBox2.UseSystemPasswordChar = true;
}
else
{
textBox2.UseSystemPasswordChar = false;
}
}

void TextBox2KeyPress(object sender, KeyPressEventArgs e)


{
if(e.KeyChar == 13)
{
Button1Click(null,null);
}
}

void TextBox1KeyPress(object sender, KeyPressEventArgs e)


{
if(e.KeyChar == 13)
{
textBox2.Focus();
}
}
}
}

Pada menu File menampikan tool strip jenis kaca, type kaca, dan pengguna
tombol admin untuk menambah penggunaaplikasi, pada tombol pembelian
adalah untuk transaksi pembelian. Pada tombol laporan menampilkan laporan
hasil transaksi penjualan. Pada tombol jumlah stoh adalah untuk menampilkan
sisa stok terakhir. Pada menu cetak hasil adalah untuk menampilkan hasil
pemesanan kaca yang belum jadi dan di bayar lunas. sign out untuk keluar dari
progam.

27
Segmen program menu utama :

using System;
using System.Drawing;
using System.Windows.Forms;
using System.Data;

namespace PenjualanKaca
{
public partial class MainForm : Form
{
// public MainForm()
//{
//InitializeComponent();
//}
public MainForm(Connector _koneksi)
{
InitializeComponent();
this._koneksi = _koneksi;
dataGridView1.ColumnCount = 5;
dataGridView1.Columns[0].Name = "Jenis";
dataGridView1.Columns[0].Width = 180;
dataGridView1.Columns[1].Name = "Type";
dataGridView1.Columns[1].Width = 160;
dataGridView1.Columns[2].Name = "Ketebalan";
dataGridView1.Columns[2].Width = 140;
dataGridView1.Columns[3].Name = "Harga";
dataGridView1.Columns[3].Width = 140;
dataGridView1.Columns[4].Name = "Alamat";
dataGridView1.Columns[4].Width = 160;
}

private Connector _koneksi;


private DataSet ds;
private string[] arr_jenis;
private string[] arr_ketebalan;
public string id_pengguna = "";
private Pembayaran bayar;
private string sisa_stok;
private Stok stok;
private Pengguna userapp;
private Jenis jenis;
private Laporan laporan;

void MainFormFormClosing(object sender, FormClosingEventArgs e)


{
try
{
Application.Exit();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

28
void Button2Click(object sender, EventArgs e)
{
try
{
if (dataGridView1.Rows.Count > 0 && sisa_stok != "0")
{
bayar = new Pembayaran(dataGridView1, id_pengguna,
_koneksi);
bayar._main = this;
bayar.ShowDialog();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

void SaldoToolStripMenuItemClick(object sender, EventArgs e)


{
try
{
stok = new Stok(_koneksi);
stok._main = this;
stok.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

void ExitToolStripMenuItemClick(object sender, EventArgs e)


{
try
{
Application.Exit();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

void AboutMeToolStripMenuItemClick(object sender, EventArgs e)


{
try
{
MessageBox.Show("Aplikasi Penjualan\nOleh Dian Nur Fadillah\
nhttp://bukausaha.mycirclo.com",
"Tentang Saya", MessageBoxButtons.OK,
MessageBoxIcon.Information);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());

29
}
}

void ProviderToolStripMenuItemClick(object sender, EventArgs e)


{
try
{
jenis = new Jenis(_koneksi);
jenis.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

void ToolStripMenuItem1Click(object sender, EventArgs e)


{
try
{
userapp = new Pengguna(_koneksi);
userapp.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

void LaporanToolStripMenuItemClick(object sender, EventArgs e)


{
try
{
laporan = new Laporan(_koneksi);
laporan.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

public void MainFormLoad(object sender, EventArgs e)


{
try
{
ds = new DataSet();
ds = _koneksi.GetSisaStok();
foreach (DataRow kolom in ds.Tables[0].Rows)
{
sisa_stok = kolom["sisa_stok"].ToString();
label6.Text = "Sisa Stok : " +
kolom["sisa_stok"].ToString();
}
dataGridView1.Rows.Clear();
ds = new DataSet();
comboBox1.Items.Clear();

30
comboBox1.Items.Add("-- Pilih jenis --");
comboBox1.SelectedIndex = 0;
ds = _koneksi.GetJenis();
byte i = 0;
arr_jenis = new string[ds.Tables[0].Rows.Count];
while (i < ds.Tables[0].Rows.Count)
{
comboBox1.Items.Add(ds.Tables[0].Rows[i][1].ToString());
arr_jenis[i] = ds.Tables[0].Rows[i][0].ToString();
i++;
}

comboBox3.Items.Add("-- Pilih type --");


comboBox3.SelectedIndex = 0;
comboBox2.Items.Add("-- Pilih ketebalan --");
comboBox2.SelectedIndex = 0;
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

void ComboBox1SelectedIndexChanged(object sender, EventArgs e)


{
if (comboBox1.Text != "-- Pilih jenis --")
{
//MessageBox.Show(arr_provider[comboBox1.SelectedIndex-1]);
ds = new DataSet();
ds = _koneksi.GetType(arr_jenis[comboBox1.SelectedIndex -
1]);
if (ds.Tables[0].Rows.Count > 0)
{
byte i = 0;
arr_ketebalan = new string[ds.Tables[0].Rows.Count];
comboBox3.Items.Clear();
while (i < ds.Tables[0].Rows.Count)
{
comboBox3.Items.Add(ds.Tables[0].Rows[i]
[1].ToString());
arr_ketebalan[i] = ds.Tables[0].Rows[i]
[0].ToString();
i++;
}
comboBox3.SelectedIndex = 0;
textBox3.Focus();
}
}
else
{
comboBox3.Items.Clear();
comboBox3.Items.Add("-- Pilih type --");
comboBox3.SelectedIndex = 0;
comboBox2.Items.Clear();
comboBox2.Items.Add("-- Pilih ketebalan --");
comboBox2.SelectedIndex = 0;
textBox1.Clear();

31
textBox2.Clear();
}
}

void ComboBox3SelectedIndexChanged(object sender, EventArgs e)


{
if (comboBox3.Text != "-- Pilih type --")
{
ds = new DataSet();
ds =
_koneksi.GetKetebalan(arr_ketebalan[comboBox3.SelectedIndex]);
if (ds.Tables[0].Rows.Count > 0)
{
byte i = 0;
comboBox2.Items.Clear();
while (i < ds.Tables[0].Rows.Count)
{
comboBox2.Items.Add(ds.Tables[0].Rows[i]
[1].ToString());
i++;
}
comboBox2.SelectedIndex = 0;
}
textBox3.Focus();
}
}

void ComboBox2SelectedIndexChanged(object sender, EventArgs e)


{
if (comboBox2.Text != "-- Pilih ketebalan --")
{
ds = new DataSet();
ds =
_koneksi.GetKetebalan(arr_ketebalan[comboBox3.SelectedIndex],
comboBox2.Text);
foreach (DataRow kolom in ds.Tables[0].Rows)
{
textBox1.Text = kolom["harga_jual"].ToString();
textBox2.Text =
Bilangan.TerbilangLong(Convert.ToDouble(textBox1.Text));
}

textBox3.Focus();
}
}

void Button1Click(object sender, EventArgs e)


{
try
{
if (textBox2.Text != "" && textBox3.Text != "")
{
string[] row = new string[] { comboBox1.Text,
comboBox3.Text, comboBox2.Text, textBox1.Text, textBox3.Text };
dataGridView1.Rows.Add(row);
textBox3.Clear();
}

32
else
{
MessageBox.Show("Data gak lengkap choy ! :D", "Warning",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

void Button3Click(object sender, EventArgs e)


{
try
{
if (dataGridView1.Rows.Count > 0)
{
if (MessageBox.Show("Yakin menghapus data ini ?",
"Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question) ==
DialogResult.Yes)
{

dataGridView1.Rows.RemoveAt(dataGridView1.CurrentCell.RowIndex);
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

void TextBox3KeyPress(object sender, KeyPressEventArgs e)


{
try
{
if (e.KeyChar == 13)
{
Button1Click(null, null);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

private void menuStrip1_ItemClicked(object sender,


ToolStripItemClickedEventArgs e)
{

private void groupBox1_Enter(object sender, EventArgs e)


{

33
}

private void button7_Click(object sender, EventArgs e)


{
try
{
laporan = new Laporan(_koneksi);
laporan.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

private void button6_Click(object sender, EventArgs e)


{
try
{
stok = new Stok(_koneksi);
stok._main = this;
stok.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

private void optionToolStripMenuItem_Click(object sender, EventArgs


e)
{

private void groupBox4_Enter(object sender, EventArgs e)


{

private void label6_Click(object sender, EventArgs e)


{

private void pictureBox1_Click(object sender, EventArgs e)


{
// ( "Www.bukausaha.mycirclo.com");
}

private void button4_Click(object sender, EventArgs e)


{
try
{
userapp = new Pengguna(_koneksi);
userapp.ShowDialog();
}

34
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

private void toolStripMenuItem4_Click(object sender, EventArgs e)


{
try
{
jenis = new Jenis(_koneksi);
jenis.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

private void toolStripMenuItem8_Click(object sender, EventArgs e)


{
try
{
MessageBox.Show("Aplikasi Penjualan\nOleh Dian Nur Fadillah\
nhttp://bukausaha.mycirclo.com",
"Tentang Saya", MessageBoxButtons.OK,
MessageBoxIcon.Information);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

private void toolStripMenuItem9_Click(object sender, EventArgs e)


{

try
{
MessageBox.Show("Hubungi saya jika ada yang di tanyakan
083852012384\nOleh Dian Nur Fadillah\nemail:diancommanding@gmail.com",
"Bantuan", MessageBoxButtons.OK,
MessageBoxIcon.Information);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

private void button8_Click(object sender, EventArgs e)


{
// button8_Click(null, null);
}

private void button5_Click(object sender, EventArgs e)


{

35
}
}
}

Bab V

Uji Coba
5.1.1 Uji Coba

Uji coba adalah penerapan dari instrumen tugas akhir yang sudah
dirancang sebelumnya di bab metodologi tugas akhir.

Dalam bab ini akan menjelaskan uji coba aplikasi :

1. Pengguna Login
2. Pengguna Transaksi
3. Pengguna melihat Barang
4. Pengguna Menambah, menghapus, meng edit, dan mencari
Barang
5. Pengguna melihat dan mencetak hasil transaksi di Laporan
6. Admin menambah pengguna

5.2 Pengguna login

36
5.3 Pengguna Transaksi

Gambar Transaksi

5.4 Pengguna melihat Barang

Gambar Barang

37
5.5 Pengguna Menambah, menghapus, meng edit, dan mencari Barang

38
Gambar

5.6 Pengguna melihat dan mencetak hasil transaksi di Laporan

39
Gambar Laporan

Gambar Export

40
5.7 Admin menambah pengguna

41
Gambar frm Pengguna

Bab VI
Penutup

42
6.1 Penutup

Kesimpilan yang di dapat dalam penelitian iniadalah berhasil sistem transaksi


jual beli menggunakan C# dan Mysql di Genteng.

6.2 Saran

Dalam aplikasi terdapat banyak kekurangan dan belum sepenuhnya


sempurna, adapun saran dari penyusun yakni :

1. Diharapkan aplikasi di perlengkap lengkap.


2. Diharapkan sistem aplikasi tidak membingungkan penggguna.
3. Diharapkan untuk menyempurnakan dan menghilangkan erorr.

43
{font: Calibri, 14pt, Bold, centre}
DAFTAR PUSTAKA
{satu baris kosong, spasi 1,5pt}

{font: Calibri, 12pt, normal}

http://elib.unikom.ac.id/files/disk1/570/jbptunikompp-gdl-yosephanug-28466-1-
unikom_y-k.pdf
Dian Pratiwi. (2007). Kemampuan Menulis Karangan Narasi Berbahasa Using
Berdasarkan Media Gambar Berseri Siswa Kelas V SDN 1 Jambesari Kecamatan
Giri Kabupaten Banyuwangi. Malang. Universitas Negeri Malang.
{satu baris kosong, spasi 1 pt}
Stoel, Ruben. (2007). Creating an Online Dictionary as a Tool for Language Maintenance.
Dalam Workshop on Computational Lexicography, Innsbruck, Austria
(26/10/2007)

Smith, B., William Stanley., dan Harlan Shores. (1972). Fundamentals of Curiculum
Development. Edisi Kedua. Volume 1.
1,5 cm
{baris kedua dst masuk 1,5 cm}

44
2.1 Lampiran
Lampiran merupakan bagian tambahan dalam Tugas akhir yang
memuat keterangan penunjang sehubungan dengan data atau
permasalahan yang dianalisis. Sebagai keterangan tambahan, keberadaan
lampiran di dalam Tugas akhir tidak bersifat wajib. Jika keterangan itu
tidak diperlukan, lampiran tentu tidak perlu dicantumkan. Hal-hal yang
lazim dilampirkan antara lain berupa kumpulan datasheet, listing program,
kuesioner, gambar, rangkaian elektronik, dan data yang isinya digunakan
dalam bab utama.

45
Seminar Proposal Tugas Akhir
Nama : Dian Nur Fadillah
NIM : 3115101020
Angkatan : 2015
Pembimbing I : Chairul Anam, S.Kom, M.M
Tanggal Seminar :
No. Aspek Penilaian Nilai

1. Penyusunan Naskah ……………


2. Metodologi ……………
3. Argumentasi ……………

Rata-rata ……………

Catatan :

………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………
………………………………………………………………………………………………

Catatan:
1. Rentangan Nilai 50 – 100
2. Nilai rata-rata dari hasil seminar 25 % dari nilai akhir Skripsi/TA

Banyuwangi, ……………………….. 20…


Penguji I,

_______________________

46
Seminar Proposal Tugas Akhir
Nama : Dian Nur Fadillah
NIM : 31151010202
Angkatan : 2015
Pembimbing I : Chairul Anam, S.Kom, M.M
Tanggal Seminar :
Judul Skripsi : Aplikasi Penjualan Dan Pembelian Berbasis C# dan Mysql
STATUS (Pilih Salah Satu) Ditolak Diterima Diterima dengan revisi

No. Uraian Keterangan

Banyuwangi, ……………………….. 20…


Penguji I,

________________________

47
{font: Calibri, 14pt, Bold, centre}
DAFTAR RIWAYAT HIDUP
{DUA BARIS KOSONG, SPASI 1,5 pt}

{font: Calibri, 12pt, Bold } {font: Calibri, 12pt, NORMAL}


Nama : Dian Nur Fadillah
NIM : 3115101020
FOTO 4X6
BERWARNA Tempat/Tanggal Lahir : Banyuwangi, 19-12-1996
(JAS BERDASI) Alamat : Curah Ketangi RT1 RW1 Genteng,
Banyuwangi

{DUA BARIS KOSONG, SPASI 1,5 pt}

{font: Calibri, 12pt, Bold }


Jenjang Pendidikan :
 1993-1995 TK Dahlia Setail - Genteng, Banyuwangi {font: Calibri, 12pt, NORMAL}

 1995-2001 SD Negeri 7 Setail - Genteng, Banyuwangi


 2001-2004 SMP Negeri 3 Gentang - Banyuwangi
 2004-2007 SMK Muhammadiyah 1 Genteng - Banyuwangi
 2007-2011 STIKOM PGRI Banyuwangi, D3 Program Studi Management
Informatika
{SATU BARIS KOSONG, SPASI 1,5 pt}
{font: Calibri, 12pt, Bold }
Pengalaman Kerja :
 Agustus 2015 – Sekarang Ukir Kaca pada CV. PutraArtglass
{font: Calibri, 12pt, NORMAL}

48

Anda mungkin juga menyukai