BAB I PENDAHULUAN 1.1. Latar Belakang Perkembangan teknologi informasi sebagai cabang yang mempelajari teori maupun implementasi teknik digital yang banyak direalisasikan dalam bentuk perangkat lunak dan perangkat keras. Untuk membuat sistem informasi pada sebuah instansi baik pemerintah maupun swasta mulai menggunakan media digital seperti penyimpanan data, manajemen database maupun surat elektronik. Saat ini perkembangan teknologi begitu pesat, tidak hanya perusahaan besar yang menggunakan sistem informasi dalam menjalankan usahanya, usaha kecil juga menggunakan sistem informasi. Sistem informasi akutansi khususnya sangat diperlukan untuk menghasilkan laporan-laporan keuangan yang dapat digunakan untuk kemajuan usaha. Mengingat banyaknya jenis minuman dan makanan yang dijual oleh Rumoh Kupi, maka diperlukan suatu proses pencatatan hasil penjualan minuman dan makanan yang telah terjual itu, disebabkan karena banyaknya proses maka pembayaran menjadi tidak terkontrol. Hingga saat ini Rumoh Kupi masih menggunakan cara manual. Namun, dengan melihat dan mengikuti perkembangan teknologi yang sedang berkembang saat ini pihak Rumoh Kupi ingin menggunakan suatu aplikasi yang dapat mencatat semua transaksi. 1.2. Rumusan Masalah Berdasarkan latar belakang masalah di atas, penulis mengidentifikasikan permasalahan sebagai berikut : a. Bagaimana suatu perusahaan dapat mengolah data dengan mudah, tepat, dan teratur. b. Bagaimana membangun suatu sistem informasi penjualan barang (makanan dan minuman), dimana suatu sistem informasi tersebut dapat membantu memasukkan data barang, transaksi penjualan barang, serta pencarian data barang secara terkomputerisasi. 1 1
c. Membuat hasil laporan dari transaksi penjualan barang yang terjadi secara terkomputerisasi. Berdasarkan permasalahan tersebut maka perlu dibuat suatu aplikasi yang dapat menyajikan data dengan cepat, akurat dan tepat waktu sehingga dapat meningkatkan kinerja Rumoh Kupi. Aplikasi Sistem Pemesanan Makanan dan Pembayaran ini hanya membahas tentang: a. Daftar menu Rumoh Kupi, dan b. Aplikasi kasir ini dibagi menjadi beberapa kategori yaitu hasil penjualan(bill). 1.3. Tujuan Penulisan Tujuan penulisan ini adalah untuk merancang dan mengimplementasikan aplikasi sistem pemesanan makanan dan pembayaran pada Rumoh Kupi dengan menggunakan Microsoft Visual Studio. sehingga dengan adanya aplikasi ini diharapkan dapat mengolah data transaksi penjualan dengan mudah. 1.4. Manfaat Penulisan Dengan adanya penulisan ini diharapkan dapat digunakan: a. Sebagai sarana untuk mempermudah pengelolaan data penjualan; b. Mengubah pengelolaan data penjualan barang yang masih dikelola dengan menggunakan tulisan tangan menjadi terkomputerisasi, dan c. Menyediakan antar muka yang dapat mempermudah pengguna dalam mengolah data penjualan barang. 2
BAB II TINJAUAN PUSTAKA 2.1. Pengertian Database Basis data (database) merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan diperangkat keras komputer dan digunakan perangkat lunak untuk memanipulasi. Basis data merupakan salah satu komponen yang paling penting dalam sistem informasi, karena merupakan basis dalam menyediakan informasi bagi para pemakai. Penerapan basis data dalam sistem informasi disebut dengan sistem basis data. Sistem basis data adalah suatu sistem informasi yang mengintegrasikan dari kumpulan data yang saling berhubungan satu dengan yang lainnya dan membuat tersedia untuk beberapa aplikasi yang bermacammacam di dalam suatu organisasi. a. Struktur dasar basis data 1. Field. Suatu field menggambarkan suatu atribut dari record yang menunjukan suatu item dari data, seperti misalnya nama, alamat dan lain sebagainya. 2. Record. Kumpulan dari field membentuk suatu record. Record menggambarkan suatu unit data individu tertentu. Kumpulan record membentuk suatu file. 3. File. File terdiri dari record-record yang menggambarkan satu kesatuan data yang sejenis. 4. Database. Kumpulan dari file membentuk suatu basis data (database). b. Ciri ciri basis data Adapun ciri ciri basis data adalah: 1. Sistem yang dapat menyimpan data ke dalam floppy disk atau harddisk; 2. Sistem yang bisa melakukan pengolahan data untuk ditambah, diubah atau dihapus dengan mudah dan terkontrol; 3. Data terpisah dari program. 3 3
c. Tujuan basis data Penyusunan suatu basis data digunakan untuk mengatasi masalah-masalah penyusunan data, yaitu : 1. Kesulitan pengaksesan; 2. Ketersediaan tempat penyimpanan yang relevan. 3. Banyak pemakai (Multiple user); 4. Masalah keamanan (Security); 5. Masalah kesatuan (Integration); 6. Masalah kebebasan data (Independence) dan 7. Kemungkinan perkembangan lebih lanjut dalam sistem basis data. (Kristanto, 1994). 2.2. ERD (Entity Relationship Diagram) Entity Relationship Diagram (ERD) adalah model konseptual yang mendeskripsikan hubungan antara penyimpanan. ERD digunakan untuk memodelkan struktur data dan hubungan antar data. Sehingga model data diuji dengan mengabaikan proses. ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi. ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol (Kahar, 2009). Basis data Relational adalah kumpulan dari relasi-relasi yang mengandung seluruh informasi berkenaan suatu entitas/objek yang akan disimpan didalam database. Tiap relasi disimpan sebagai sebuah file tersendiri. Perancangan basis data merupakan suatu kegiatan yang setidaknya bertujuan sebagai berikut : Menghilangkan redundasi data Meminimumkan jumlah relasi didalam basis data Membuat relasi berada dalam bentuk normal, sehingga dapat meminimumkan permasalahan berkenaan dengan penambahan, pembaharuan dan penghapusan. Diagram keterhubungan entitas menggunakan sejumlah notasi dan simbol untuk menggambarkan struktur dan hubungan antar entitas. Simbol-simbol yang 4
digunakan pada perancangan diagram keterhubungan entitas yaitu dapat dilihat pada tabel 2.1. Tabel 2.1. Notasi Entity relationship Diagram Notasi Keterangan Entitas adalah suatu objek yang dapat diidentifikasikan Entitas dalam lingkungan pemakai. Relasi adalah yang menunjukkan adanya hubungan antara Relasi sejumlah entitas yang berbeda. Atribut berfungsi mendeskripsikan karakter entitas (atribut Atribut yang berfungsi sebagai key yang diberi garis bawah). Kardinalitas adalah sebagai penghubung antara relasi dengan entitas, relasi dan entitas dengan atribut, empat kardinalitas yang mungkin terjadi yaitu One to One (1:1), One to Many (1:N), Many to One (N:1), dan Many to Many (N:M). Dalam Entity Relationship Diagram hubungan relasi dapat terdiri dari sejumlah entitas yang disebut derajat relasi. Derajat relasi maksimum disebut dengan kardinalitas sedangkan derajat minimum disebut dengan modalitas. Jadi kardinalitas relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entititas lain. Pemetaan ERD perlu dilakukan untuk menterjemahkan bentuk perancangan sistem ke bentuk tabel skema relasi sebagai langkah awal implementasi program dengan melakukan tujuh langkah pemetaan berikut : 1) Untuk setiap non week entity (strong entity) A, dibuat relasi yang terdiri dari semua atribut A. 2) Untuk setiap week entity yang memiliki entitas A, dibuat relasi yang terdiri dari semua atribut B, dan sebagai foreign key-nya adalah primary key dari A. 5
3) Untuk setiap binary 1:1 (one to one), relationship antara entitas A dan B, pilih salah satu, misalnya entitas A, masukkan semua atribut dari entitas A dan sebagai foreign key dari A adalah primary key dari B. 4) Untuk setiap non week entity binary (strong entity) 1:N (one to many) relationship antara entitas A dan B (1 untuk A) dan (N untuk B) maka buat relasi yang terdiri dari semua atribut A, dan primary key dari A itu sebagai foreign key-nya. 5) Untuk setiap binary N:M (many to many) relationship antara entitas A dan B, buat relasi yang hanya mengandung semua primary key dari A dan B, relasi ini disebut sebagai intermediate. 6) Untuk setiap multi value atribut dari entitas B, buat relasi dari atributnya adalah atribut B itu sendiri yang ditambahkan dengan atribut dari primary key dari B. 7) Untuk setiap non binary relationship, buat relasi dengan atributnya adalah primary key, dari entitas yang berhubungan, dan juga dimasukkan atribut yang berada dibagian relationship. 2.3. Microsoft Visual Studio Microsoft Visual Studio adalah salah satu bentuk integrated development environment (IDE) terbaru dan tercanggih yang dimiliki oleh Microsoft untuk saat ini. IDE tersebut mampu mendukung dan menggabungkan banyak tipe bahasa, seperti Visual Basic.Net, C#.Net, J#.Net, C++.Net serta bahasa.net lainnya menjadi satu dalam lingkungan dot net framework. Dot Net Framework adalah teknologi inti dari dot net yang menyediakan berbagai library untuk digunakan oleh aplikasi yang menggunakan bahasa-bahasa pemrograman pada Visual Studio.Net. Bahasa pemrograman Visual Basic.Net dikembangkan oleh Microsoft, merupakan salah satu bahasa pemrograman yang mendukung Object Oriented Programming (OOP) atau pemrograman yang berorientasi pada object. Kata Visual menunjukkan cara yang digunakan untuk membuat Graphical User Interface (GUI). Dengan cara ini, pengguna tidak perlu lagi menuliskan instruksi pemrograman dalam kode-kode baris hanya untuk membuat sebuah design form/aplikasi. Tetapi dengan sangat mudah 6
yaitu cukup melakukan drag dan drop object-object yang akan digunakan. Visual Studio dapat dijadikan alat bantu untuk membuat berbagai macam program aplikasi komputer salah satunya database (Marlon, 2004). Hasil aplikasi program yang dibangun dengan menggunakan Visual Studio dapat dijalankan pada berbagai platform operating system seperti Linux, Unix, Solaris, dan Open Source lainnya dengan menggunakan mono yang dihasilkan oleh perusahaan Symbian. 2.4. Microsoft SQL Server 2000 Microsoft SQL Server adalah model relasional database server yang diproduksi oleh Microsoft. Microsoft SQL Server adalah perangkat lunak Relational Database Management System (RDBMS), sebuah sistem manajemen basis data relasional produk Microsoft. Umumnya SQL Server digunakan di dunia bisnis yang memiliki basis data berskala kecil sampai dengan menengah, tetapi kemudian berkembang dengan digunakannya SQL Server pada basis data besar. SQL Server merupakan database server yang amat populer. SQL Server 2000 dapat memenuhi semua kebutuhan database tingkat tinggi dengan target perusahaan menengah dan besar. (Budiharto, 2006). 2.5. Crystal Report Crystal Reports adalah piranti standar untuk pembuatan laporan pada sistem operasi Windows, dimana cetakan/templete laporan yang dihasilkan dapat disertakan pada banyak bahasa pemrograman. Crystal Report merupakan paket yang disertakan dengan Visual Basic, yang memungkinkan kita untuk membuat laporan untuk aplikasinya. Paket ini terdiri dari desainer, dimana kita dapat merancang dan menguji laporan. (Madcom, 2003). 2.6. Data Flow Diagram (DFD) Menurut Sutabri (2003:163) Data Flow Diagram adalah suatu network yang menggambarkan suatu sistem automat/komputerisasi, manualisasi atau gabungan 7
dari keduanya, yang penggambarannya disusun dalam bentuk komponen sistem yang saling berhubungan sesuai dengan aturan mainnya. Adapun simbol dan keterangannya adalah sebagai berikut : a) External Entity, merupakan simbol yang mewakili elemen yang berada di luar sistem, tetapi memiliki hubungan interaksi dengan sistem. External Entity Gambar 2.1 Simbol External Entity b) Proses, merupakan simbol yang mewakili kegiatan untuk mengubah data menjadi informasi atau masukan untuk data lain. Gambar 2.2 Simbol Proses 1 Proses c) Data Store, merupakan simbol yang mewakili tempat penyimpanan dari data dan dapat dipergunakan bila dibutuhkan. Data Store Gambar 2.3 Simbol Data Store d)data flow, merupakan simbol yang mewakili arah aliran data yang berasal dari satu proses, data store atau elemen lingkungan menuju ke satu proses, data store atau enviromental element lainnya. Gambar 2.4 Simbol Data Flow 8
BAB III METODE PENELITIAN 3.1. Tempat dan Waktu Penelitian Perancangan dan pembuatan aplikasi sistem ini dilakukan dalam rentang waktu 3 bulan yang akan dimulai pada bulan Mei sampai Juli 2013 yang bertempat di Warkop Rumoh Kupi Jl. Taman Makam Pahlawan No.20 Kampong Ateuk. 3.2. Alat dan bahan Dalam melaksanakan penelitian ini, penulis menggunakan perangkat lunak berupa sistem operasi Windows 7, Microsoft Visual Studio 2008, Microsoft SQL Server 2000. 3.3. Prosedur Kerja Untuk memperoleh data-data yang diperlukan dalam menunjang kesempurnaan laporan penulisan proyek akhir ini, maka menggunakan metode dan teknik penulisan sebagai berikut: a. Studi Literatur Studi literatur adalah penelitian yang dilakukan untuk mendapatkan bahan rujukan berupa referensi yang bersifat teoristis dari buku-buku dan sumber bacaan lain yang dapat mendukung topik. b. Instalasi software Tahapan ini dilakukan penginstalan software-software yang mendukung dalam pembuatan aplikasi pemasanan makanan. c. Pengambilan data lapangan Data lapangan dibutuhkan guna informasi yang nantinya akan dimasukkan kedalam database, berupa data spasial. Data di lapangan juga digunakan untuk pembuatan grafik perbandingan. 9 9
d. Perancangan sistem Seluruh komponen yang ada dalam sebuah pendataan yakni meliputi data makanan, harga, jenis, dan jumlah. Selanjutnya mengimplementasikan hasil akhir dari database yang telah dibuat. e. Analisa Hasil Simulasi Tahapan ini merupakan tahapan analisa dari hasil uji coba serta melakukan perbaikan terhadap aplikasi apabila ditemukan kekurangan. 10
BAB IV HASIL DAN PEMBAHASAN 4.1 Rancangan Database 4.1.1 DFD (Data Flow Diagram) Pembuatan DFD digunakan untuk menggambarkan alur dari pembuatan sistem yang meliputi alur proses pembuatan rancangan sistem yang akan di buat. Pembuatan DFD yang akan di rencanakan adalah sebagai berikut Pelanggan Data Pesanan Informasi pembayaran 0 Sistem Informasi Pemesanan Laporan keuangan Kasir Makanan Gambar 4.1 Diagram Konteks DFD Level 1 1.1 Pelanggan Pesan Proses pesanan/menu Data Pesanan Menu Laporan Pesanan Menu Data Pesanan Menu Bayar 1.2 Pembuatan Faktur Data Faktur Laporan Faktur 1.3 Transaksi Data Transaksi Laporan Transaksi Gambar 4.2 DFD Level 1 11
DFD Level 2 Pilih 1.1.1 Pemilihan Meja Data Meja Data Meja 1.1.2 Proses Pesanan Menu Data Pesanan Menu Data Pesanan Menu Data meja Data Pesanan Menu Pelanggan Pesan 1.2.1 Pembuatan Faktur Data Faktur Data Faktur Bayar 1.3.1 Transaksi Data Faktur Data Faktur Kasir Data Transaksi Data Transaksi Gambar 4.3 DFD Level 2 12
DFD Level 3 Proses 1 : Pelanggan Pesan 1.1.2.1 Proses Pesan anmenu Data Pesanan menu Data Menu Data Pesanan Menu Data Pesanan Menu 1.1.2.2 Cetak Laporan. Menu Gambar 4.4 DFD Level 3 Proses 1 Proses 2 : Data Menu Data Pesanan Menu Data Meja 1.2.1.1 Pembuatan Faktur Data Faktur Data Meja Data Faktur Data Faktur 1.2.1.2 Cetak Data Faktur Laporan Faktur Gambar 4.5 DFD Level 3 Proses 2 13
Proses 3: Pelanggan Bayar 1.3.1.1 Data Faktur Transaksi Data Transaksi Data Faktur Data Faktur Kasir Data Transaksi Data Transaksi Data Transaksi 1.3.1.2 Cetak Data Transaksi Lap. Transaksi Gambar 4.6 DFD Level 3 Proses 3 4.1.2. Entity Relationship Diagram Desain basis data secara konseptual dimodelkan dalam bentuk notasi grafis yang disebut ERD (Entity Relationship Diagram). ERD digunakan untuk mendeskripsikan hubungan antara penyimpanan dalam sistem, hubungan antara entitas dan kelompok data apa saja yang terdapat dalam entitas. Mengabaikan proses yang harus dilakukan dalam sistem untuk menguji model basis data. Berikut ini adalah diagram Entity Relationship (ER) Apilkasi Sistem Pemesanan Makanan dan Pembayaran: 14
harga nama no_meja keterangan kode stock Meja 1 milik N Menu Gambar id_kasir nama_kasir kode Kasir password M harga 1 Order Jumlah catat N total_bayar kembalian N Sub total Transaksi 1 bayar N Pelanggan no_transaksi total_item id_pelanggan tgl_transaksi Total_harga nama. Gambar 4.7 ERD 15
4.1.3. Perancangan Tabel Rancangan struktur tabel dari sistem yang diusulkan adalah sebagai berikut : Tabel 4.1. Struktur Tabel Login Field Tipe Data Ukuran Keterangan Id kasir Varchar 15 Nama kasir Varchar 15 Password Varchar 8 Tabel 4.2. Struktur Tabel Kasir Field Tipe Data Ukuran Keterangan id_kasir int 15 Primary Key nama_kasir Varchar 30 password Text Tabel 4.3. Struktur Tabel Order Field Tipe Data Ukuran Keterangan no_order Int 10 Primary Key tgl_order Datetime jumlah Int 5 status _bayar Varchar 20 jenis_pesan Varchar 20 Tabel 4.4. Struktur Tabel Pelanggan Field Tipe Data Ukuran Keterangan id_pelanggan Int 5 Primary Key Nama Pelanggan Varchar 30 16
Tabel 4.5. Struktur Tabel Meja Field Tipe Data Ukuran Keterangan no_meja Int 10 Foreign Key Keterangan Varchar 30 Tabel 4.6. Struktur Tabel Pembayaran Field Tipe Data Ukuran Keterangan No_transaksi Int 10 tgl_transaksi Datetime 15 Pembayaran Varchar 15 Sub_total Int 15 Tabel 4.7. Struktur Tabel Menu Field Tipe Data Ukuran Keterangan Kode Varchar 15 Harga Money Nama Menu Varchar 15 4.2. Rancangan Sistem Aplikasi Dalam aplikasi ini terdapat menu yang berfungsi untuk memudahkan user untuk mejalankan program. Setiap form yang ditampilkan memiliki fasilitas simpan, edit dan hapus data, serta beberapa fasilitas pelengkap laiinnya. 4.2.1 Form Login Form login menggunakan user untuk menjalankan form menu utama. Namun sebelumnya user harus mengisi identitas user dan password. Gambar 4.8 menampilkan form login 17
Gambar 4.8. Form Login 4.2.2 Form Menu Utama Dalam form menu utama ini terdapat menu-menu yang berisikan pilihanpilihan menu yang akan digunakan pada saat program dijalankan. Gambar 4.9 menampilkan form menu utama Gambar 4.9. Form Menu Utama 18
4.2.3 Form Karyawan Form karyawan berfungsi untuk mengisi data karyawan. Gambar 4.10 menampilkan form karyawan Gambar 4.10 Form Karyawan 4.2.4. Form Meja Form meja berfungsi mendata nama-nama meja. Gambar 4.11 menampilkan form meja Gambar 4.11 form meja 19
4.2.5. Form Pelanggan Form pelanggan berfungsi untuk mengisi data pelanggan. Gambar 4.12 menampilkan form pelanggan. Gambar 4.12. form pelanggan 4.2.6 Form Menu Form menu berfungsi untuk mencatat nama-nama menu. Gambar 4.13 menampilkan form menu. Gambar 4.13. form menu 20
4.2.7. Form Transaksi Form transaksi berfungsi untuk mencatat pembayaran makanan dan minuman. Gambar 4.14 menampilkan form transaksi Gambar 4.14. Form Transaksi 4.3. Rancangan Output Rancangan output ini berguna untuk menghasilkan informasi dari proses pemasukan data. Dalam sistem ini tersedia rancanga berupa laporan data menu, laporan bon dan laporan transaksi pembayaran. 1. Laporan data menu, laporan data menu dirancang untuk mengetahui informasi lengkap dari menu makanan dan minuman. Laporan data menu terdapat pada lampiran 1. 2. Laporan bon, laporan bon dirancang untuk melihat pembayaran. Laporan bon terdapat pada lampiran 2. 21
BAB V PENUTUP 5.1. Kesimpulan Kesimpulan yang dapat diambil dari Tugas Akhir Aplikasi Sistem Pemesanan dan Kasir, adalah sebagai berikut: 1. Aplikasi Sistem Pemesanan dan Kasir dapat membantu karyawan dalam pencatatan dan pengimputan data baru sehingga data-data terorganisasi dengan baik, tersimpan dengan aman dan mudah ditelusuri. 2. Aplikasi Sistem Pemesanan dan Kasir dapat membantu dalam laporanlaporan. Misalnya laporan data menu, laporan bon dan laporan transaksi pembayaran. 5.2. Saran Aplikasi ini masih membutuhkan pengembangan lebih lanjut demi kesempurnaan sistem. Oleh karena itu, penulis memberikan beberapa saran, diantaranya adalah pengembangan laporan laba rugi, pengembangan laporan total transaksi, dan pengembangan aplikasi perhitungan total pembelian. 22
DAFTAR PUSTAKA Budiharto,W. 2005. Visual Basic.NET. Andi Publisher, Yogyakarta. Kahar, Abri. 2009. Simbol-Simbol ERD, penerbit Andi Offset, Yogyakarta. Kristanto, Harianto, 1994, Konsep & Perancangan Database, Andi, Yogyakarta Leong, Marlon, 2004, Pemrograman Dasar Microsoft Visual Basic.Net, Andi, Yogyakarta Madcom. 2003. Aplikasi Database dan Crystal Report pada Visual Basic.Net. Andi Publisher, Yogyakarta. 23
Pemberian Coding pada Aplikasi Database Pada system aplikasi ini data memerlukan proses simpan, edit/ubah, dan hapus data pada database. Adapun dalam rancangan ini memerlukan coding yang memberikan perintah untuk menjalankan aplikasi. Beberapa contoh coding dalam aplikasi, yaiut sebagai berikut: a) Coding login Program 1 adalah contoh coding login yang terdapat pada aplikasi database: Public Class FormLogin Dim dr As DataRow Private Sub TPegawaiBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.TPegawaiBindingSource.EndEdit() Private Sub FormLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'RumahMakanDataSet.tPegawai' table. You can move, or remove it, as needed. Me.taTPegawai.Fill(Me.dsRumahMakan.tPegawai) Private Sub IdPegawaiTextBox_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles IdPegawaiTextBox.KeyDown If e.keycode = Keys.Enter Then dr = dsrumahmakan.tpegawai.rows.find(idpegawaitextbox.text) If dr Is Nothing Then MsgBox("Id Anda Tidak Terdaftar", MsgBoxStyle.Critical, "Perhatian") IdPegawaiTextBox.Text = "" Else NamaPegawaiTextBox.Text = Trim(dr.Item(1)) PasswordTextBox.Focus() 24
Private Sub IdPegawaiTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles IdPegawaiTextBox.TextChanged Private Sub PasswordTextBox_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles PasswordTextBox.KeyDown If e.keycode = Keys.Enter Then dr = dsrumahmakan.tpegawai.rows.find(idpegawaitextbox.text) If dr Is Nothing Then MsgBox("Id Anda Tidak Terdaftar", MsgBoxStyle.Critical, "Perhatian") IdPegawaiTextBox.Text = "" Else With dsrumahmakan.tpegawai.rows.find(idpegawaitextbox.text) If Trim(PasswordTextBox.Text) = Trim(.Item(2)) Then PasswordTextBox.Text = "" Me.Hide() FormUtama.Show() Else MsgBox("Password Salah", MsgBoxStyle.Critical, "Perhatian") PasswordTextBox.Text = "" End With Private Sub PasswordTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PasswordTextBox.TextChanged Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Application.Exit() Private Sub Label2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label2.Click End Class b) Coding data karyawan: Program 4. Perintah visual basic untuk login 25
Program 2 adalah contoh coding data karyawan yang terdapat dalam aplikasi database Public Class Form1 Private Sub TPegawaiBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.bsTPegawai.EndEdit() Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'RumahMakanDataSet.tPegawai' table. You can move, or remove it, as needed. Me.taTPegawai.Fill(Me.dsRumahMakan.tPegawai) Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If dsrumahmakan.tpegawai.rows.find(idpegawaitextbox.text) Is Nothing Then tatpegawai.insert(idpegawaitextbox.text, NamaPegawaiTextBox.Text, PasswordTextBox.Text) tatpegawai.fill(dsrumahmakan.tpegawai) Else Dim x As String = MsgBox("Id Pegawai Sama, Ganti..?", MsgBoxStyle.OkCancel, "Informasi") If x = vbok Then With dsrumahmakan.tpegawai.rows.find(idpegawaitextbox.text).item(1) = NamaPegawaiTextBox.Text '.Item(2) = PasswordTextBox tatpegawai.update(dsrumahmakan.tpegawai) End With Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim y As String = MsgBox("Yakin Ingin Menghapus Data Dengan Nama Pegawai: " & Trim(TPegawaiDataGridView.CurrentRow.Cells(1).Value) & "?", MsgBoxStyle.OkCancel, "Konfirmasi") If y = vbok Then 26
dsrumahmakan.tpegawai.rows.find(trim(tpegawaidatagridview.currentrow.cells(0).value)).delete() tatpegawai.update(dsrumahmakan.tpegawai) Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click With dsrumahmakan.tpegawai.rows.find(idpegawaitextbox.text).item(1) = NamaPegawaiTextBox.Text tatpegawai.update(dsrumahmakan.tpegawai) End With Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click IdPegawaiTextBox.Text = "" NamaPegawaiTextBox.Text = "" PasswordTextBox.Text = "" Private Sub TPegawaiDataGridView_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles TPegawaiDataGridView.CellContentClick IdPegawaiTextBox.Text = Trim(TPegawaiDataGridView.CurrentRow.Cells(0).Value) NamaPegawaiTextBox.Text = Trim(TPegawaiDataGridView.CurrentRow.Cells(1).Value) PasswordTextBox.Text = "Rahasia" End Class Program 4. Perintah visual basic untuk data karyawan c) Coding data menu Program 3 adalah contoh coding data menu yang terdapat dalam aplikasi database Public Class FormMakanan Private Sub TMakananBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.bstMakanan.EndEdit() 27
Private Sub FormMakanan_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'RumahMakanDataSet.tMakanan' table. You can move, or remove it, as needed. Me.tatMakanan.Fill(Me.dsRumahMakan.tMakanan) Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Try Dim ft As New IO.MemoryStream GambarPictureBox.Image.Save(ft, Imaging.ImageFormat.Jpeg) Dim img() As Byte = ft.getbuffer 'Dim dr As DataRow 'dr = dsrumahmakan.tmakanan.rows.find(kodemakanantextbox.text) 'If dr Is Nothing Then tatmakanan.insert(kodemakanantextbox.text, NamaMakananTextBox.Text, HargaTextBox.Text, img, StockTextBox.Text) tatmakanan.fill(dsrumahmakan.tmakanan) 'Else 'dr.item(1) = NamaMakananTextBox.Text 'dr.item(2) = HargaTextBox.Text 'dr.item(3) = img 'tatmakanan.update(dsrumahmakan.tmakanan) ' Catch ex As Exception MsgBox("Data Belum Lengkap") End Try Private Function Cumaangka(ByVal kode As String, Optional ByVal spasi As Boolean = False) As Boolean Select Case kode Case 40 To 57 Return False Case 8 Return False Case 32 If spasi Then Return False Else Return True Case Else Return True End Select End Function 28
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click If Open1.ShowDialog = Windows.Forms.DialogResult.Cancel Then Exit Sub Else GambarPictureBox.Image = Image.FromFile(Open1.FileName) Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim y As String = MsgBox("Yakin Ingin Menghapus Data Dengan Nama Makanan: " & Trim(TMakananDataGridView.CurrentRow.Cells(1).Value) & "?", MsgBoxStyle.OkCancel, "Konfirmasi") If y = vbok Then dsrumahmakan.tmakanan.rows.find(trim(tmakanandatagridview.currentrow.cells(0).value)).delete() tatmakanan.update(dsrumahmakan.tmakanan) Private Sub HargaTextBox_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles HargaTextBox.KeyPress e.handled = Cumaangka(Asc(e.KeyChar)) Private Sub HargaTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HargaTextBox.TextChanged Private Sub TMakananDataGridView_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim ft As New IO.MemoryStream GambarPictureBox.Image.Save(ft, Imaging.ImageFormat.Jpeg) Dim img() As Byte = ft.getbuffer Dim dr As DataRow dr = dsrumahmakan.tmakanan.rows.find(kodemakanantextbox.text) If dr Is Nothing Then MsgBox("Data Tidak Ditemukan", MsgBoxStyle.Information, "Pemberitahuan") Else 29
dr.item(1) = NamaMakananTextBox.Text dr.item(2) = HargaTextBox.Text dr.item(3) = img dr.item(4) = StockTextBox.Text tatmakanan.update(dsrumahmakan.tmakanan) Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click KodeMakananTextBox.Text = "" NamaMakananTextBox.Text = "" HargaTextBox.Text = "" StockTextBox.Text = "" Private Sub TMakananDataGridView_CellContentClick_1(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles TMakananDataGridView.CellContentClick KodeMakananTextBox.Text = Trim(TMakananDataGridView.CurrentRow.Cells(0).Value) NamaMakananTextBox.Text = Trim(TMakananDataGridView.CurrentRow.Cells(1).Value) HargaTextBox.Text = Trim(TMakananDataGridView.CurrentRow.Cells(2).Value) GambarPictureBox.BringToFront() StockTextBox.Text = Trim(TMakananDataGridView.CurrentRow.Cells(4).Value) Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click End Class d) Coding Transaksi Program 4. Perintah visual basic untuk data menu Program 4 adalah contoh coding transaksi yang terdapat dalam aplikasi database Public Class FromTransaksi1 Dim dr As DataRow Private Sub TTemporariBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.bsTTemporari.EndEdit() 'Me.TableAdapterManager.UpdateAll(Me.dsRumahMakan) 30
Private Sub FromTransaksi1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'dsrumahmakan.tdetail' table. You can move, or remove it, as needed. Me.taTDetail.Fill(Me.dsRumahMakan.tDetail) 'TODO: This line of code loads data into the 'dsrumahmakan.tpelanggan' table. You can move, or remove it, as needed. Me.taTPelanggan.Fill(Me.dsRumahMakan.tPelanggan) 'TODO: This line of code loads data into the 'RumahMakanDataSet.tMaster' table. You can move, or remove it, as needed. Me.taTMaster.Fill(Me.dsRumahMakan.tMaster) 'TODO: This line of code loads data into the 'RumahMakanDataSet.tDetail1' table. You can move, or remove it, as needed. 'Me.taTDetail1.Fill(Me.dsRumahMakan.tDetail1) 'TODO: This line of code loads data into the 'RumahMakanDataSet.tMakanan' table. You can move, or remove it, as needed. Me.taTMakanan.Fill(Me.dsRumahMakan.tMakanan) 'TODO: This line of code loads data into the 'RumahMakanDataSet.tTemporari' table. You can move, or remove it, as needed. Me.taTTemporari.Fill(Me.dsRumahMakan.tTemporari) KasirTextBox.Text = RTrim(FormLogin.NamaPegawaiTextBox.Text) Button7.Enabled = False Button4.Enabled = False Button5.Enabled = False Button6.Enabled = False Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click 1 NoTransaksiTextBox.Text = Val(dsRumahMakan.tMaster.Count) + Button7.Enabled = True Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click cariformmakanan.show() Button4.Enabled = True Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If KodeMakananTextBox.Text = "" Or HargaTextBox.Text = "" Or JumlahTextBox.Text = "" Or SubTotalTextBox.Text Then 31
MsgBox("Data Belum Lengkap", MsgBoxStyle.Information, " Pesan") Exit Sub dr = dsrumahmakan.ttemporari.rows.find(kodemakanantextbox.text) If dr Is Nothing Then SubTotalTextBox.Text = Val(JumlahTextBox.Text) * Val(HargaTextBox.Text) dr = dsrumahmakan.ttemporari.newrow dr.item(0) = KodeMakananTextBox.Text dr.item(1) = HargaTextBox.Text dr.item(2) = JumlahTextBox.Text dr.item(3) = SubTotalTextBox.Text dsrumahmakan.ttemporari.rows.add(dr) tattemporari.update(dsrumahmakan.ttemporari) TotalItemTextBox.Text = Val(TotalItemTextBox.Text) + Val(JumlahTextBox.Text) TotalhargaTextBox.Text = Val(TotalhargaTextBox.Text) + Val(SubTotalTextBox.Text) KodeMakananTextBox.Text = "" HargaTextBox.Text = "" JumlahTextBox.Text = "" SubTotalTextBox.Text = "" Else MsgBox("Data Sudah Ada", MsgBoxStyle.Information, "Konfirmasi") Private Sub KodeMakananTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KodeMakananTextBox.TextChanged dr = dsrumahmakan.tmakanan.rows.find(kodemakanantextbox.text) If dr Is Nothing Then Exit Sub Else HargaTextBox.Text = dr.item(2) Private Sub JumlahTextBox_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles JumlahTextBox.KeyDown If e.keycode = Keys.Enter Then If KodeMakananTextBox.Text = "" Or HargaTextBox.Text = "" Then MsgBox("Data Belum Lengkap", MsgBoxStyle.Information, " Pesan") Exit Sub SubTotalTextBox.Text = Val(JumlahTextBox.Text) * Val(HargaTextBox.Text) dr = dsrumahmakan.ttemporari.newrow 32
dr.item(0) = KodeMakananTextBox.Text dr.item(1) = HargaTextBox.Text dr.item(2) = JumlahTextBox.Text dr.item(3) = SubTotalTextBox.Text dsrumahmakan.ttemporari.rows.add(dr) tattemporari.update(dsrumahmakan.ttemporari) TotalItemTextBox.Text = Val(TotalItemTextBox.Text) + Val(JumlahTextBox.Text) TotalhargaTextBox.Text = Val(TotalhargaTextBox.Text) + Val(SubTotalTextBox.Text) KodeMakananTextBox.Text = "" HargaTextBox.Text = "" JumlahTextBox.Text = "" SubTotalTextBox.Text = "" Button5.Enabled = True Private Sub JumlahTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles JumlahTextBox.TextChanged If JumlahTextBox.Text = "" Then Exit Sub If Microsoft.VisualBasic.IsNumeric(JumlahTextBox.Text) = False Then MsgBox("Format Tidak Sesuai") Exit Sub If dr Is Nothing Then Exit Sub Else If Val(JumlahTextBox.Text) > Val(dr.Item(4)) Then MsgBox("Stock Tidak mencukupi") JumlahTextBox.Text = "" Else SubTotalTextBox.Text = Val(JumlahTextBox.Text) * Val(HargaTextBox.Text) Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click While dsrumahmakan.ttemporari.rows.count <> 0 dsrumahmakan.ttemporari.rows.find(ttemporaridatagridview.currentrow. Cells(0).Value).Delete() tattemporari.update(dsrumahmakan.ttemporari) 33
KodeMakananTextBox.Text = "" HargaTextBox.Text = "" JumlahTextBox.Text = "" SubTotalTextBox.Text = "" TotalhargaTextBox.Text = "" TotalItemTextBox.Text = "" TotalBayarTextBox.Text = "" KembalianTextBox.Text = "" NoTransaksiTextBox.Text = "" MejaTextBox.Text = "" PelangganComboBox.Text = "" End While Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click If TotalhargaTextBox.Text = "" Or TotalItemTextBox.Text = "" Or TotalBayarTextBox.Text = "" Or KembalianTextBox.Text = "" Or NoTransaksiTextBox.Text = "" Or KasirTextBox.Text = "" Then MsgBox("Data Belum Lengkap", MsgBoxStyle.Information, " Pesan") Exit Sub If dr Is Nothing Then While dsrumahmakan.ttemporari.rows.count <> 0 dr = dsrumahmakan.tdetail.newrow dr.item(0) = NoTransaksiTextBox.Text dr.item(1) = RTrim(TTemporariDataGridView.CurrentRow.Cells(0).Value) dr.item(2) = RTrim(TTemporariDataGridView.CurrentRow.Cells(2).Value) dr.item(3) = RTrim(TTemporariDataGridView.CurrentRow.Cells(3).Value) dsrumahmakan.tdetail.rows.add(dr) tatdetail.update(dsrumahmakan.tdetail) dr = dsrumahmakan.tmakanan.rows.find(ttemporaridatagridview.currentrow.ce lls(0).value) dr.item(4) = Val(dr.Item(4)) - Val(TTemporariDataGridView.CurrentRow.Cells(2).Value) tatmakanan.update(dsrumahmakan.tmakanan) dsrumahmakan.ttemporari.rows.find(ttemporaridatagridview.currentrow. Cells(0).Value).Delete() tattemporari.update(dsrumahmakan.ttemporari) End While dr = dsrumahmakan.tmaster.newrow() dr.item(0) = NoTransaksiTextBox.Text dr.item(1) = TanggalDateTimePicker.Text dr.item(2) = KasirTextBox.Text dr.item(3) = TotalItemTextBox.Text dr.item(4) = TotalhargaTextBox.Text 34
dr.item(5) = TotalBayarTextBox.Text dr.item(6) = KembalianTextBox.Text dr.item(7) = MejaTextBox.Text dr.item(8) = PelangganComboBox.Text dsrumahmakan.tmaster.rows.add(dr) tatmaster.update(dsrumahmakan.tmaster) MsgBox("Transaksi Selesai") 'Dim lapt As New LaporanStruck 'FormLaporan.Show() 'lapt.setdatasource(dsmaster) 'FormLaporan.v1.ReportSource = lapt 'FormLaporan.v1.SelectionFormula = "{TBL_Master.No_Transaksi}=" & txtnomor.text & "" 'Kode_BarangTextBox.Text = " " 'HargaTextBox.Text = "" 'JumlahTextBox.Text = "" 'Sub_TotalTextBox.Text = "" 'Totalharga.Text = "" 'TotalJmlh.Text = "" 'bayar.text = "" 'Kembalian.Text = "" 'txtnomor.text = "" Dim lapt As New cetakstruck FormLaporan.Show() lapt.setdatasource(dsrumahmakan) FormLaporan.v1.ReportSource = lapt FormLaporan.v1.SelectionFormula = "{tmaster.notransaksi}='" & NoTransaksiTextBox.Text & "'" KodeMakananTextBox.Text = "" HargaTextBox.Text = "" JumlahTextBox.Text = "" SubTotalTextBox.Text = "" TotalhargaTextBox.Text = "" TotalItemTextBox.Text = "" TotalBayarTextBox.Text = "" KembalianTextBox.Text = "" NoTransaksiTextBox.Text = "" Button7.Enabled = False Button4.Enabled = False Button5.Enabled = False Button6.Enabled = False Private Sub TotalhargaTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TotalhargaTextBox.TextChanged 35
Private Sub TotalBayarTextBox_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TotalBayarTextBox.KeyDown If e.keycode = Keys.Enter Then KembalianTextBox.Text = Val(TotalBayarTextBox.Text) - Val(TotalhargaTextBox.Text) Button6.Enabled = True Private Sub TotalBayarTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TotalBayarTextBox.TextChanged Private Sub TTemporariDataGridView_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles TTemporariDataGridView.CellContentClick KodeMakananTextBox.Text = RTrim(TTemporariDataGridView.CurrentRow.Cells(0).Value) HargaTextBox.Text = RTrim(TTemporariDataGridView.CurrentRow.Cells(1).Value) JumlahTextBox.Text = RTrim(TTemporariDataGridView.CurrentRow.Cells(2).Value) SubTotalTextBox.Text = RTrim(TTemporariDataGridView.CurrentRow.Cells(3).Value) Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click dsrumahmakan.tmaster.rows.find(tmasterdatagridview.currentrow.cells( 0).Value).Delete() tatmaster.update(dsrumahmakan.tmaster) Private Sub JumlahLabel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Private Sub KasirTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KasirTextBox.TextChanged Private Sub Button2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click cariformmeja.show() 36
End Class Program 4. Perintah visual basic untuk transaksi 37
38