LISTING PROGRAM. Private Sub cmdlogin_click(sender As Object, e As EventArgs)

dokumen-dokumen yang mirip
Modul x login dan Periode

PEMROGRAMAN VB.NET. Koneksi Ke Database

Source Code Test Program Dengan VB Net


8 H Ya Ya 0 Tidak Tidak 0 Tidak G gejala

Materi Pemrograman Database 1 Didik Nugroho,S.Kom,M.kom MODUL III MEMBUAT FORM MENYIMPAN PROSES PEMBELIAN

PENGKODEAN AKSES FORM SISTEM USER


LAMPIRAN A. Private Sub Menu_utama_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

PENDAHULUAN. A. Membuat Database dalam SQL SERVER. 1. Klik Kanan pada databases lalu pilih new database

PEMROGRAMAN VB.NET. Sintaks Pada Class

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB VIII PENGENALAN DATABASE

Aplikasi Login Dengan Database dan Tanpa Database Pada Visual Basic 2010


Program Database Penjualan Barang

Irvan Lewenusa


Budi permana, S.Kom


BAB IV IMPLEMENTASI DAN PENGUJIAN

Field Tipe Data Size Keterangan userid Text 12 Primary key namauser Text 30 - password Text 8 - akses Text 10 -

LAMPIRAN. Dim WithEvents diagnosa As New DB_MYSQL Dim sql = "select * from gejala order by kode asc"

Sesi 12 : Pengenalan Pemrograman Database


Budi Permana, S.Kom Pendahuluan. Lisensi Dokumen:

WAWANCARA SEBELUM IMPLEMENTASI. 1. Sejak kapan Klinik Gigi Drg. Kosasih Kurnia berdiri? memadai dengan jumlah pasien yang semakin bertambah.

HOW TO CALL A REPORT IN VB.NET

LISTING PROGRAM. Public m, n, i, j, result1, cocok1, mpnext(0 To 255) As Integer

BAB IV IMPLEMENTASI DAN PENGUJIAN. Dalam pembuatan program ini penulis menggunakan Visual Basic. Net

BAB IV IMPLEMENTASI DAN TESTING

Sistem Informasi Penggajian Karyawan Berbasis Desktop

1. Kompetensi Memahami berbagai teknologi pemrograman basis data, khususnya MySQL, pada Visual Basic 6.0.

MEMBUAT FORM INPUT DATA DENGAN VB NET 2005 DAN DATABASE MS SQL SERVER 2005 EXPRESS

BAB II MICROSOFT VISUAL STUDIO

P11 & 12 Operasi DML pada Form Aplikasi (Project Aplikasi Rumah Sakit)

Gambar 5.1 Hierarki Sistem Admin

MODUL PRAKTIKUM PEMROGRAMAN VISUAL LANJUT

SISTEM INFORMASI AKUNTANSI PERSEDIAAN BARANG DENGAN MENGGUNAKAN METODE FIFO PADA PT.WINDU PERSADA CARGO


MODUL 2 Variabel, Val, If tunggal dan If bersarang + case

Bab 4 Hasil dan Pembahasan

LAMPIRAN SKRIPSI. A. Lampiran Capture Program. Gambar L.1 Tampilan Layar Menu Home. Gambar L.2 Tampilan Layar Menu Login

MODUL 3 Pemrograman ADO.NET : Connected Environtment

Gratis Tutorial Pemograman Visual Basic MEMBUAT CRUD VISUAL BASIC.NET DATABASE MYSQL


KONEKSI VB DENGAN MYSQL (Wajib, S.Pd.)

BAB IV HASIL DAN ANALISIS

LAMPIRAN. Kelompok kami melakukan teknik wawancara sebanyak dua kali, di awal masa

MODUL PRAKTIKUM VB.NET STMIK-IM BANDUNG MODUL-MODUL PRAKTIKUM. VB. Net. Oleh : CHALIFA CHAZAR S T M I K - I M B A N D U N G


Data Hasil Penelitian bobot 200 butir persilangan tanaman jagung

BAB IV HASIL DAN UJI COBA

Kode Program : Koneksi. Klik Kanan Adobrg Pilih ADODC Properties Maka akan muncul tampilan sbb: Instruktur : Nani Purwati

Bab 4 Hasil dan Pembahasan

TUGAS 3 PRAKTIKUM PEMROGRAMAN.NET

Aplikasi CRUD dengan Visual Basic 2012 [APLIKASI CRUD DENGAN VISUAL BASIC 2012 & MYSQL] September 18, & MySQL. Bahtiar Imran

KONEKSI DATABASE SQL DENGAN VB.NET


MODUL 4 Pemrograman ADO.NET : Disconnected Environtment

STEP BY STEP MENJADI PROGRAMMER HANDAL DENGAN VB.NET


Koneksi Visual Basic 6.0 dengan SQL SERVER 2000

Form Login Menggunakan Combobox Dengan VB.Net dan MySQL Workbench

2. MySql (menggunakan namespace ODBC atau mysql client) Command + DataReader. Textbox Label Combobox Listbox. Cara mengambil dan menampilkan database

TUTORIAL MEMBUAT APLIKASI CRUD SEDERHANA DI VB.NET DENGAN KONEKSI OLEDB

Budi Permana, S.Kom Pendahuluan. Lisensi Dokumen:

Denda = 28 % x pokok PKB x 2 ( angka 2 dilihat catatan no1) =.(denda PKB)

Pertemuan III MENYIMPAN REKAMAN (RECORD) KE DALAM BASIS DATA

MODUL 2 SELECTION & LOOPING PADA FORM


Cara Koneksi Database

Berikut. langkahnya: Pastikan. anda sudah. - Klik File. Berikut. - Save All

DISUSUN OLEH : : Friska Rosalina NIM :

LAMPIRAN. Berdasarkan metode penelitian yang kami gunakan yaitu metode. wawancara, berikut ini adalah hasil wawancara kami dengan pihak PT.

BAB I PENDAHULUAN 1.1. Latar Belakang 1.2. Rumusan Masalah

Sistem Distribusi Data Melalui COM+ Dengan Visual Basic

Kartu Bimbingan Tugas Akhir Mahhasiswa

BAB IV PERANCANGAN. Gambar diatas adalah tampilang awal ketika ingin memulai project baru. Pilih Standart EXE untuk memulai project.

Basic Programing Visual Basic

MODUL PRAKTIKUM PEMROGRAMAN III (VB.NET & MYSQL) MEMBUAT APLIKASI PEMBELIAN SEDERHANA. Oleh : Ilman Kadori, M.Kom.

Menjelaskan variabel aksi sebagai data string nilai,hasil dan simpan sebagai data double.

DASHBOARD LIBRARY UNTUK VISUALISASI INFORMASI

ALGORITMA DAN PEMROGRAMAN II. Indra Gunawan, ST., M.Kom., CEH., CHFI

Sistem Informasi Pelayanan Rawat Jalan Pada Puskesmas Kecamatan Grogol Petamburan Menggunakan VB.NET


Disini kita akan bahas cara koneksi antara Database MySQL dengan VB.Net 2010, semoga dengan ini E-book ini bisa ingat sepanjang jaman ya ^ ^

1. Rancangan Input Program Form Menu Utama Form Data Barang [ Input Barang ]

Spesifikasi: Ukuran: 14x21m Tebal: 220 hlm Harga: Rp Terbit pertama: Mei 2005 Sinopsis singkat:

Bahasa Pemrograman-1 (Visual Basic)

Listing Program a. Form Login. Public LoginSucceeded As Boolean

LISTING PROGRAM. Script Menu Utama Pada Game Tebak Kata

Backup dan Restore Database SQL Server 2005 Lewat Aplikasi Backup

MODUL D :// Mahasiswa memahami konsep pembuatan database. Mahasiswa memahami konsep pembuatan program dasar aplikasi database

Program absen dengan menggunakan visual basic 6.0


LISTING PROGRAM. tanya = MsgBox("Apakah Anda yakin akan menghapus. kata : " & txtword.text & "?", vbquestion + gadoconn.

Transkripsi:

LISTING PROGRAM 1. Form Login Imports System.Data.OleDb Imports System.IO Public Class frmlogin Dim strconn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Database\Contacts.accdb;Persist Security Info=False;" Dim con As New OleDbConnection Dim cmd As New OleDbCommand Dim da As New OleDbDataAdapter Dim dt As New DataTable Dim save_tag As String Private Sub cmdlogin_click(sender As Object, e As EventArgs) Private Sub frmlogin_deactivate(sender As Object, e As EventArgs) Handles Me.Deactivate Private Sub frmlogin_load(sender As Object, e As EventArgs) Handles MyBase.Load 'frmmenu.show() 'Me.GroupBox1.Anchor = AnchorStyles.Top Or AnchorStyles.Bottom Or AnchorStyles.Left Or AnchorStyles.Right ' Me.Parent = frmmenu Dim constring As String constring = "Microsoft.ACE.OLEDB.12.0;Data Source= DataDirectory \dbminuman.accdb;jet OLEDB:Database Password=nurul" Private Sub cmdcancel_click(sender As Object, e As EventArgs) Private Sub txtpassword_keydown(sender As Object, e As KeyEventArgs) Private Sub txtpassword_textchanged(sender As Object, e As EventArgs)

Private Sub txtuser_lostfocus(sender As Object, e As EventArgs) Private Sub txtuser_textchanged(sender As Object, e As EventArgs) Private Sub cmdcancel_click_1(sender As Object, e As EventArgs) Handles cmdcancel.click Private Sub cmdlogin_click_1(sender As Object, e As EventArgs) Handles cmdlogin.click If txtuser.text = "nurul" And txtpassword.text = "nurul" Then Me.Hide() frmmenu.show() Else Dialog.lbltext.Text = "Maaf, Username atau Password anda salah" Dim a As String = Dialog.ShowDialog If a = "OK" Then 'MsgBox("Username atau Password anda salah!", vbcritical + vbokonly, "Kesalahan") Private Sub txtuser_lostfocus1(sender As Object, e As EventArgs) Handles txtuser.lostfocus If txtuser.textlength <= 0 Then OvalShape3.Visible = True OvalShape3.BackColor = Color.Red RectangleShape1.BorderColor = Color.Red cmdlogin.enabled = False Private Sub txtuser_textchanged_1(sender As Object, e As EventArgs) Handles txtuser.textchanged

OvalShape3.Visible = True If Len(txtUser.Text) = 0 Then OvalShape3.BackColor = Color.Red RectangleShape1.BorderColor = Color.Red cmdlogin.enabled = False Else OvalShape3.BackColor = Color.LimeGreen RectangleShape1.BorderColor = Color.LimeGreen Private Sub txtpassword_keydown1(sender As Object, e As KeyEventArgs) Handles txtpassword.keydown If e.keycode = Keys.Enter Then cmdlogin.performclick() Private Sub txtpassword_keypress(sender As Object, e As KeyPressEventArgs) Handles txtpassword.keypress Private Sub txtpassword_textchanged_1(sender As Object, e As EventArgs) Handles txtpassword.textchanged OvalShape2.Visible = True If Len(txtPassword.Text) = 0 Then OvalShape2.BackColor = Color.Red RectangleShape2.BorderColor = Color.Red cmdlogin.enabled = False Else OvalShape2.BackColor = Color.LimeGreen RectangleShape2.BorderColor = Color.LimeGreen cmdlogin.enabled = True End Class 2. Form Menu Utama Public Class frmmenu Private Sub frmmenu_load(sender As Object, e As EventArgs) Handles MyBase.Load 'Me.Parent = Panel1 Me.SetStyle(ControlStyles.SupportsTransparentBackColor, True)

Dim img As Bitmap = CType(Me.BackgroundImage, Bitmap) ' Panel1.Parent = Panel2 ' Label1.Parent = Panel1 ' Label1.BackColor = Color.Transparent ' Panel1.BackColor = Color.FromArgb(90, Color.OrangeRed) Private Sub KELUARToolStripMenuItem_Click(sender As Object, e As EventArgs) AboutBox1.Show() Private Sub MinumanToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles MinumanToolStripMenuItem.Click frmdata.show() Private Sub ProsesUtamaToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ProsesUtamaToolStripMenuItem.Click frmproses.show() Private Sub KELUARToolStripMenuItem1_Click(sender As Object, e As EventArgs) Dim keluar As String = MsgBox("Yakin ingin keluar?", vbyesno + vbquestion) If keluar = vbyes Then End Private Sub LaporanUtamaToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles LaporanUtamaToolStripMenuItem.Click frmlaporan.show() Private Sub Panel2_Paint(sender As Object, e As PaintEventArgs) Handles Panel2.Paint End Class 3. Form Proses Imports System.Math Imports System.Data.OleDb Public Class frmproses Dim nilai As Double

Private Sub btnsugeno_click(sender As Object, e As EventArgs) Handles btnsugeno.click 'Masukkan nilai2 variabel berdasarkan inputan AlSugeno() frmsugeno.show() Private Sub frmproses_gotfocus(sender As Object, e As EventArgs) Handles Me.GotFocus Call GetNilai() Private Sub frmproses_load(sender As Object, e As EventArgs) Handles MyBase.Load dateupdate = False Call GetNilai() Private Sub btntsuka_click(sender As Object, e As EventArgs) Handles btntsuka.click 'Masukkan nilai2 variabel berdasarkan inputan AlTsukamoto() frmtsukamoto.show() Sub GetNilai() Dim strconn3 = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:/database\dbMinuman.accdb;Persist Security Info=false;" Dim con3 As New OleDbConnection Dim cmd3 As New OleDbCommand Dim da3 As New OleDbDataAdapter Dim dt3 As New DataTable Dim cmdtxt3 As String = Nothing cmdtxt3 = "SELECT * FROM minuman" Try 'The connection con3.connectionstring = strconn3 con3.open() 'The OLEDB Command With cmd3.connection = con3.commandtype = CommandType.Text.CommandText = cmdtxt3 End With da.selectcommand = cmd3 da.fill(dt)

Dim arrpermintaan(dt.rows.count - 1) As Double Dim arrpersediaan(dt.rows.count - 1) As Double Dim arrproduksi(dt.rows.count - 1) As Double Dim arrtahun(dt.rows.count - 1) As Double Dim arrbulan(dt.rows.count - 1) As Double Dim arrbulantahun(dt.rows.count - 1) As Double Dim maxbulan As Integer Dim maxtahun As Integer Dim lastbulan As Double Dim lasttahun As Double Dim i As Integer For i = 0 To dt.rows.count - 1 arrpermintaan(i) = Val(dt.Rows(i)("permintaan", DataRowVersion.Original)) Next For i = 0 To dt.rows.count - 1 arrpersediaan(i) = dt.rows(i)("persediaan", DataRowVersion.Original) Next For i = 0 To dt.rows.count - 1 arrproduksi(i) = dt.rows(i)("jlh_produksi", DataRowVersion.Original) Next For i = 0 To dt.rows.count - 1 arrtahun(i) = (Val(dt.Rows(i)("tahun", DataRowVersion.Original))) Next maxtahun = nilaimax(arrtahun) 'pilih arrbulan yang tahunnya = maxtahun Dim indeksmaxtahun As Integer = 0 For i = 0 To dt.rows.count - 1 If (Val(dt.Rows(i)("tahun", DataRowVersion.Original)) = maxtahun) Then arrbulan(i) = Val(dt.Rows(i)("bulan", DataRowVersion.Original)) Else arrbulan(i) = 0 Next maxbulan = nilaimax(arrbulan) lasttahun = maxtahun lastbulan = maxbulan

Dim LastDate As DateTime = (DateTime.Parse(lastBulan & "/" & lasttahun)) Dim nextdate As DateTime = LastDate.AddMonths(1) stbulan = (Month(nextDate)) sttahun = Year(nextDate) lblbt.text = (DateTime.Parse(nextDate)).ToString("Y") minta_max = nilaimax(arrpermintaan) minta_min = nilaimin(arrpermintaan) sedia_max = nilaimax(arrpersediaan) sedia_min = nilaimin(arrpersediaan) prod_max = nilaimax(arrproduksi) prod_min = nilaimin(arrproduksi) dt.rows.clear() Catch ex As Exception MsgBox(ex.Message, vbcritical) Finally con3.dispose() con3. End Try Private Sub btnkembali_click(sender As Object, e As EventArgs) Handles btnkembali.click Me.Hide() frmmenu.show() Sub GetMonth() Dim cmdtxt2 As String = Nothing cmdtxt2 = "SELECT * FROM minuman" Try con.connectionstring = strconn con.open() With cmd.connection = con.commandtype = CommandType.Text.CommandText = cmdtxt2 End With

da.selectcommand = cmd da.fill(dt) Dim arrtahun(dt.rows.count - 1) As Double Dim arrbulan(dt.rows.count - 1) As Double Dim arrbulantahun(dt.rows.count - 1) As Double Dim maxtahunbulan As Double Dim lastbulan As Double Dim lasttahun As Double Dim itemindex As Integer Dim i As Integer For i = 0 To dt.rows.count - 1 arrtahun(i) = Val(dt.Rows(i)("tahun")) arrbulan(i) = Val(dt.Rows(i)("bulan")) arrbulantahun(i) = Val(dt.Rows(i)("tahun")) + Val(dt.Rows(i)("bulan")) Next maxtahunbulan = nilaimax(arrbulantahun) itemindex = Array.IndexOf(arrBulanTahun, maxtahunbulan) lasttahun = arrtahun(itemindex) lastbulan = arrbulan(itemindex) lblbt.text = (lasttahun & " " & lastbulan) Catch ex As Exception MsgBox(ex.Message, vbcritical) Finally con.dispose() con. End Try Sub AlSugeno() Dim run_time As Stopwatch = Stopwatch.StartNew() 'Cari Nilai2 X, Y, dan Z berdasarkan variabel2 sebelumnya pminta = Val(txtminta.Text) 'Nilai psediaan = Val(txtSedia.Text) 'Nilai Y run_time.start() 'Mengukur Running Time Algoritma Sugeno : Waktu Mulai '----PERMINTAAN-----

'Terdiri dari 2 himpunan Fuzzy : Turun dan Naik If pminta < minta_min Then s_pmtt = 1 s_pmtn = 0 ElseIf pminta >= minta_min And pminta <= minta_max Then s_pmtt = (minta_max - pminta) / (minta_max - minta_min) s_pmtn = (pminta - minta_min) / (minta_max - minta_min) ElseIf pminta > minta_max Then s_pmtt = 0 s_pmtn = 1 '----PERSEDIAAN----- 'Terdiri dari 2 himpunan Fuzzy : Sedikit dan Banyak If psediaan < sedia_min Then s_sms = 1 s_smb = 0 ElseIf psediaan >= sedia_min And psediaan <= sedia_max Then s_sms = (sedia_max - psediaan) / (sedia_max - sedia_min) s_smb = (psediaan - sedia_min) / (sedia_max - sedia_min) ElseIf psediaan > sedia_max Then s_sms = 0 s_smb = 1 '----PRODUKSI----- 'Tidak mempunyai himpunan Fuzzy 'Nilai alfa-predikat dan Z dari setiap aturan '-RULE 1 - Jika permintaan TURUN dan persediaan BANYAK maka produksi barang = Permintaan - Persediaan Dim rule1 As Double = If(s_pmtT < s_smb, s_pmtt, s_smb) Dim z1 As Double = pminta - psediaan '-RULE 2 - Jika permintaan TURUN dan persediaan SEDIKIT maka produksi barang = permintaan Dim rule2 As Double = If(s_pmtT < s_sms, s_pmtt, s_sms) Dim z2 As Double = pminta '-RULE 3 - Jika permintaan NAIK dan persediaan barang BANYAK maka produksi barang = permintaan Dim rule3 As Double = If(s_pmtN < s_smb, s_pmtn, s_smb) Dim z3 As Double = pminta

'-RULE 4 - Jika permintaan NAIK dan persediaan SEDIKIT maka produksi barang = 1.25 * (permintaan-persediaan) Dim rule4 As Double = If(s_pmtN < s_smb, s_pmtn, s_sms) Dim z4 As Double = 1.25 * pminta - psediaan 'Menghitung Z akhir (Produksi Akhir) dengan merata-rata semua z berbobot s_defuzzy = ((rule1 * z1) + (rule2 * z2) + (rule3 * z3) + (rule4 * z4)) / (rule1 + rule2 + rule3 + rule4) run_time.stop() 'Mengukur Running Time Algoritma Sugeno : Waktu Selesai s_runtime = run_time.elapsed.totalmilliseconds Sub AlTsukamoto() Dim run_time As Stopwatch = Stopwatch.StartNew() 'Cari Nilai2 X, Y, dan Z berdasarkan variabel2 sebelumnya pminta = Val(txtminta.Text) 'Nilai psediaan = Val(txtSedia.Text) 'Nilai Y run_time.start() 'Mengukur Running Time Algoritma Sugeno : Waktu Mulai '----PERMINTAAN----- 'Terdiri dari 2 himpunan Fuzzy : Turun dan Naik If pminta < minta_min Then t_pmtt = 1 t_pmtn = 0 ElseIf pminta >= minta_min And pminta <= minta_max Then t_pmtt = (minta_max - pminta) / (minta_max - minta_min) t_pmtn = (pminta - minta_min) / (minta_max - minta_min) ElseIf pminta > minta_max Then t_pmtt = 0 t_pmtn = 1 '----PERSEDIAAN----- 'Terdiri dari 2 himpunan Fuzzy : Sedikit dan Banyak If psediaan < sedia_min Then t_sms = 1 t_smb = 0 ElseIf psediaan >= sedia_min And psediaan <= sedia_max Then t_sms = (sedia_max - psediaan) / (sedia_max - sedia_min) t_smb = (psediaan - sedia_min) / (sedia_max - sedia_min) ElseIf psediaan > sedia_max Then t_sms = 0 t_smb = 1

'Nilai alfa-predikat dan Z dari setiap aturan '-RULE 1 - Jika permintaan TURUN dan persediaan BANYAK maka produksi barang berkurang Dim rule1 As Double = If(t_pmtT < t_smb, t_pmtt, t_smb) '(produksi max - z)/permintaan terbesar = alfap1 Dim z1 As Double = prod_max - (minta_max * rule1) '-RULE 2 - Jika permintaan TURUN dan persediaan SEDIKIT maka produksi barang berkurang Dim rule2 As Double = If(t_pmtT < t_sms, t_pmtt, t_sms) Dim z2 As Double = prod_max - (minta_max * rule2) '-RULE 3 - Jika permintaan NAIK dan persediaan barang BANYAK maka produksi barang bertambah Dim rule3 As Double = If(t_pmtN < t_smb, t_pmtn, t_smb) Dim z3 As Double = prod_min + (minta_max * rule3) '-RULE 4 - Jika permintaan NAIK dan persediaan SEDIKIT maka produksi barang bertambah Dim rule4 As Double = If(t_pmtN < t_smb, t_pmtn, t_sms) Dim z4 As Double = prod_min + (minta_max * rule4) 'Menghitung Z akhir (Produksi Akhir) dengan merata-rata semua z berbobot t_defuzzy = ((rule1 * z1) + (rule2 * z2) + (rule3 * z3) + (rule4 * z4)) / (rule1 + rule2 + rule3 + rule4) run_time.stop() 'Mengukur Running Time Algoritma Sugeno : Waktu Selesai t_runtime = run_time.elapsed.totalmilliseconds Private Sub btnsekaligus_click(sender As Object, e As EventArgs) Handles btnsekaligus.click Call GetNilai() AlSugeno() AlTsukamoto() frmprosessekaligus.show() Public Function nilaimax(byval itemlist() As Double) Dim max As Integer = Nothing

For i As Integer = 0 To (itemlist.length - 1) If i = 0 Then max = itemlist(i) Else If itemlist(i) > max Then max = itemlist(i) Next nilaimax = max End Function Public Function nilaimin(byval itemlist() As Double) Dim min As Integer = Nothing For i As Integer = 0 To (itemlist.length - 1) If i = 0 Then min = itemlist(i) Else If itemlist(i) < min Then min = itemlist(i) Next nilaimin = min End Function Private Sub LinkLabel1_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked Call GetNilai() Private Sub txtminta_keypress(sender As Object, e As KeyPressEventArgs) Handles txtminta.keypress inputvalidasi(e) Private Sub txtsedia_keypress(sender As Object, e As KeyPressEventArgs) Handles txtsedia.keypress inputvalidasi(e) End Class

4. Form Simpan Ke Laporan Public Class frmprosessekaligus Private Sub frmprosessekaligus_load(sender As Object, e As EventArgs) Handles MyBase.Load If psediaan <= 0 Or pminta <= 0 Then MsgBox("Silahkan mengisi data terlebih dahulu") frmproses.show() Else lblumt.text = Math.Round(s_pmtT, 2) lblumtt.text = Math.Round(t_pmtT, 2) lblumn.text = Math.Round(s_pmtN, 2) lblumnt.text = Math.Round(t_pmtN, 2) lblust.text = Math.Round(s_smB, 2) lblustt.text = Math.Round(t_smB, 2) lblusn.text = Math.Round(s_smS, 2) lblusnt.text = Math.Round(t_smS, 2) lblnama.text = "Teh Botol Sosro" lbldefuz.text = Math.Round(s_defuzzy, 2) lbldefuzt.text = Math.Round(t_defuzzy, 2) lblrun.text = s_runtime lblrunt.text = t_runtime lblmintamax.text = minta_max lblmintamin.text = minta_min lblsediamax.text = sedia_max lblsediamin.text = sedia_min lblpromax.text = prod_max lblpromin.text = prod_min Private Sub btnkembali_click(sender As Object, e As EventArgs) frmproses.show()

Private Sub btnsimpan_click_1(sender As Object, e As EventArgs) Handles btnsimpan.click Dim cmdtxt As String = Nothing Dim cmdtxt2 As String = Nothing cmdtxt = "Insert into fuzzy([bulan],[tahun],[permintaan], [persediaan], [rk sugeno], [rk tsukamoto], [rt sugeno], [rt tsukamoto])" & _ " Values('" & stbulan & "','" & sttahun & "','" & pminta & "'," & psediaan & "," & Math.Round(Val(lblDefuz.Text), 2) & "," & Math.Round(Val(lblDefuzT.Text), 2) & "," & Str(s_runtime) & "," & Str(t_runtime) & ") " cmdtxt2 = "Insert into minuman([nama], [bulan], [tahun], [permintaan], [persediaan], [jlh_produksi])" & _ "Values('" & "Teh Botol Sosro" & "','" & stbulan & "','" & sttahun & "'," & pminta & "," & psediaan & "," & Math.Round(Val(lblDefuz.Text), 0) & " ) " Try con.connectionstring = strconn con.open() With cmd.connection = con.commandtype = CommandType.Text.CommandText = cmdtxt End With cmd.executenonquery() With cmd.connection = con.commandtype = CommandType.Text.CommandText = cmdtxt2 End With cmd.executenonquery() dateupdate = False MsgBox("Data berhasil disimpan") Catch ex As Exception MsgBox(ex.Message, vbcritical) Finally con.dispose() con. End Try Private Sub btnkembali_click_1(sender As Object, e As EventArgs) Handles btnkembali.click frmproses.show()

End Class 5. Form Sugeno Public Class frmsugeno Private Sub frmsugeno_load(sender As Object, e As EventArgs) Handles MyBase.Load If psediaan <= 0 Or pminta <= 0 Then MsgBox("Silahkan mengisi data terlebih dahulu") frmproses.show() Else lblumt.text = Math.Round(s_pmtT, 2) lblumn.text = Math.Round(s_pmtN, 2) lblust.text = Math.Round(s_smB, 2) lblusn.text = Math.Round(s_smS, 2) lblnama.text = "Teh Botol Sosro" lbldefuz.text = Math.Round(s_defuzzy, 2) lblmintamax.text = minta_max lblmintamin.text = minta_min lblsediamax.text = sedia_max lblsediamin.text = sedia_min lblpromax.text = prod_max lblpromin.text = prod_min Private Sub btnkembali_click(sender As Object, e As EventArgs) Handles btnkembali.click frmproses.show() End Class 6. Form Tsukamoto

Public Class frmtsukamoto Private Sub frmtsukamoto_load(sender As Object, e As EventArgs) Handles MyBase.Load If psediaan <= 0 Or pminta <= 0 Then MsgBox("Silahkan mengisi data terlebih dahulu") frmproses.show() Else lblumt.text = Math.Round(t_pmtT, 2) lblumn.text = Math.Round(t_pmtN, 2) lblust.text = Math.Round(t_smB, 2) lblusn.text = Math.Round(t_smS, 2) lblnama.text = "Teh Botol Sosro" lbldefuz.text = Math.Round(t_defuzzy, 2) lblmintamax.text = minta_max lblmintamin.text = minta_min lblsediamax.text = sedia_max lblsediamin.text = sedia_min lblpromax.text = prod_max lblpromin.text = prod_min Private Sub btnkembali_click(sender As Object, e As EventArgs) Handles btnkembali.click Me.Dispose() frmproses.show() End Class 7. Form Laporan Public Class frmlaporan Private Sub LoginForm1_Load(sender As Object, e As EventArgs) Handles MyBase.Load dt2.rows.clear()

DataGridView1.Rows.Clear() Fill_Grid(DataGridView1) With DataGridView1.RowHeadersVisible = False.Columns(0).Visible = False.Columns(1).HeaderText = "Bulan".Columns(2).HeaderText = "Tahun".Columns(3).HeaderText = "Permintaan".Columns(4).HeaderText = "Persediaan".Columns(5).HeaderText = "Ranking Sugeno".Columns(6).HeaderText = "Ranking Tsukamoto".Columns(7).HeaderText = "Runnin Time Sugeno".Columns(8).HeaderText = "Running Time Tsukamoto" End With lbltanggal.text = Date.Now Sub Fill_Grid(grid As Windows.Forms.DataGridView) Dim x As Integer '# Refreshes the grid. '# this method is useful when you want to reload the grid with new values after saving entries If grid.rows.count > 0 Then While x < grid.rows.count grid.rows.removeat(x) End While '# Setting how the grid behaves or looks like when filled/loaded '# you may add more properties here if necessary e.g alternating row background colors With grid.autosizecolumnsmode = DataGridViewAutoSizeColumnsMode.Fill.RowHeadersVisible = False.SelectionMode = DataGridViewSelectionMode.FullRowSelect End With '# Setting and opening a connection to the database via connection string con2.connectionstring = strconn con2.open() '# Represents an SQL statement or stored procedure to execute against a data source. With cmd2

.Connection = con2.commandtype = CommandType.Text.CommandText = "Select * from fuzzy" End With da2.selectcommand = cmd2 grid.datasource = dt2 da2.fill(dt2) '# hide some of the unwanted columns 'For i As Integer = 6 To 17 'grid.columns(i).visible = False 'Next 'grid.columns(0).visible = False '#closing the connection con2.dispose() con2. Private Sub btnkembali_click(sender As Object, e As EventArgs) Handles btnkembali.click frmmenu.show() End Class 8. Module Imports System.Data.OleDb Module Module1 End Module Module Moduleku Public strconn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:/database\dbMinuman.accdb;Persist Security Info=false;" Public con As New OleDbConnection Public cmd As New OleDbCommand Public da As New OleDbDataAdapter

Public dt As New DataTable Public con2 As New OleDbConnection Public cmd2 As New OleDbCommand Public da2 As New OleDbDataAdapter Public dt2 As New DataTable Public save_tag As String Public nm As String Public ids As String 'Variabel berawalan s_ menyatakan variabel yang menampung nilai2 proses Algoritma Sugeno 'variabel inputan Public minta_max As Double Public minta_min As Double Public sedia_max As Double Public sedia_min As Double Public prod_max As Double Public prod_min As Double 'variabel proses Public pminta As Double Public psediaan As Double Public produksi As Double Public s_pmtt As Double 'himpunan fuzy Turun Public s_pmtn As Double 'himpunan fuzzy Naik Public s_sms As Double 'himpunan fuzzy : sedikit Public s_smb As Double 'himpunan fuzzy : banyak Public s_defuzzy As Double Public s_runtime As Double 'Variabel berawalan t_ menyatakan variabel yang menampung nilai2 proses Algoritma Tsukamoto Public t_pmtt As Double 'himpunan fuzy Turun Public t_pmtn As Double 'himpunan fuzzy Naik Public t_sms As Double 'himpunan fuzzy : sedikit Public t_smb As Double 'himpunan fuzzy : banyak Public t_pmt As Double Public t_pmn As Double Public t_defuzzy As Double Public t_runtime As Double

Public stbulan As Integer Public sttahun As Integer ' Public isfilled As Boolean = False 'Public session As Boolean = False Public dateupdate As Boolean Sub inputvalidasi(e As KeyPressEventArgs) 'hanya memperbolehkan angka saja If Asc(E.KeyChar) <> 13 AndAlso Asc(E.KeyChar) <> 8 AndAlso Not IsNumeric(E.KeyChar) Then 'Tidak melakukan aksi apapun E.Handled = True End Module