Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

16
KONEKSI DATABASE SQL SERVER DENGAN VB.NET (BAGIAN 2) Program Entry Data Pegawai 1. Buat database di SQL Server 2008 dengan nama dbpegawai kemudian buatlah table dengan nama Tblpegawai seperti berikut : 2. Buat new project di visual studio, kemudian buatlah modul dengan langkah seperti gambar di bawah ini : Module Koneksi Imports System.Data Imports System.Data.Sql Module Module1

description

aaa

Transcript of Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Page 1: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

KONEKSI DATABASE SQL SERVER DENGAN VB.NET (BAGIAN 2)

Program Entry Data Pegawai

1. Buat database di SQL Server 2008 dengan nama dbpegawai kemudian buatlah table dengan nama Tblpegawai seperti berikut :

2. Buat new project di visual studio, kemudian buatlah modul dengan langkah seperti

gambar di bawah ini :

Module Koneksi

Imports System.Data Imports System.Data.Sql Module Module1

Page 2: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Public database As OleDb.OleDbConnection Public Sub koneksi() Try database = New OleDb.OleDbConnection("Provider=SQLOledB.1;Integrated Security=SSPI;Persist Security Info=False;Initial catalog=dbpegawai;data source=ASUS-PC") database.Open() Catch ex As Exception MsgBox(ex.ToString) End Try End Sub End Module

3. Klik kanan Form Entry Data Pegawai, kemudian klik viewcode dan isikan coding

dibawah ini.

Public Class EntryDtPegawai Dim tabel As OleDb.OleDbDataAdapter Dim data As DataSet Dim record As New BindingSource Sub bersih() Txtnip.Text = "" Txtnama.Text = "" Txtalamat.Text = "" Call data_pegawai() End Sub Menampilkan data dari Database ke Datagridview Sub data_pegawai() Call koneksi() tabel = New Data.OleDb.OleDbDataAdapter("select * from tblpegawai", database) data = New DataSet tabel.Fill(data) record.DataSource = data record.DataMember = data.Tables(0).ToString() DataGridView1.DataSource = record End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call data_pegawai() End Sub Simpan Private Sub btnsimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsimpan.Click Dim dml As New OleDb.OleDbCommand dml.Connection = database dml.CommandType = CommandType.Text dml.CommandText = "Insert into tblpegawai values ('" & Txtnip.Text & "','" & Txtnama.Text & "','" & Txtalamat.Text & "')" dml.ExecuteNonQuery() MsgBox("Data tersimpan") Call bersih() End Sub

Page 3: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Cari Private Sub btnCari_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCari.Click Dim Nip_pegawai = InputBox("Masukkan NIP Pegawai") Try data.Tables(0).PrimaryKey = New DataColumn() {data.Tables(0).Columns("nip")} Dim row As DataRow row = data.Tables(0).Rows.Find(Nip_pegawai) Txtnip.Text = row("NIP") Txtnama.Text = row("Nama_Pegawai") Txtalamat.Text = row("Alamat") btnsimpan.Enabled = False Catch ex As Exception MsgBox("Data Tidak ada / anda batal mencari Data !!") End Try End Sub Ubah Private Sub btnUbah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUbah.Click Try Call koneksi() Dim sqlquery As New OleDb.OleDbCommand sqlquery.Connection = database sqlquery.CommandType = CommandType.Text sqlquery.CommandText = "Update tblpegawai set nama_pegawai = '" & Txtnama.Text & "',alamat = '" & Txtalamat.Text & "' where nip = '" & Txtnip.Text & "'" sqlquery.ExecuteNonQuery() MsgBox("Data Sudah Di Update") Call bersih() btnsimpan.Enabled = True Catch ex As Exception MsgBox(ex.ToString()) End Try End Sub Hapus Private Sub btnHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHapus.Click Dim sqlquery As New OleDb.OleDbCommand sqlquery.Connection = database sqlquery.CommandType = CommandType.Text sqlquery.CommandText = "Delete from tblpegawai where nip = '" & Txtnip.Text & "'" sqlquery.ExecuteNonQuery() MsgBox("Data Dihapus") Call bersih() btnsimpan.Enabled = True End Sub

Page 4: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Keluar Private Sub btnkeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnkeluar.Click End End Sub End Class 4. Lalu jalankan program seperti gambar di bawah ini :

Proses Simpan

Proses Ubah

Page 5: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Proses Hapus

Page 6: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

MEMBUAT FORM LOGIN Aplikasi Login Tanpa Database

Button OK Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If TextBox1.Text = "admin" And TextBox2.Text = "12345" Then EntryDtPegawai.Show() Else MessageBox.Show("Password Anda Salah", "Pemberitahuan", MessageBoxButtons.OK, MessageBoxIcon.Information) End If End Sub

Button Keluar Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click End End Sub Aplikasi Login Dengan Database (Bagian 1)

Page 7: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Buat database baru di SQL Server dengan nama TEST, setelah itu buat tabel baru dengan nama tabel t_user dengan atribut-atribut username varchar(20) yang merupakan primary key, password varchar(10), akses varchar(15).

Lalu insert data username dan password.

Buat project baru pada visual studio, kemudian buat Class koneksi, masukan coding sebagai berikut.

Imports Microsoft.VisualBasic Imports System.Data.Sql Public Class classkoneksi Protected tbllogin = New DataTable Protected SQL As String Protected Cn As OleDb.OleDbConnection Protected Cmd As OleDb.OleDbCommand Protected Da As OleDb.OleDbDataAdapter Protected Ds As DataSet Protected Dt As DataTable Public Function OpenConn() As Boolean Cn = New OleDb.OleDbConnection("Provider=SQLOledB.1;Integrated Security=SSPI;Persist Security Info=False;Initial catalog=TEST;data source=ASUS-PC") Cn.Open() If Cn.State <> ConnectionState.Open Then Return False Else Return True End If End Function Public Sub CloseConn() If Not IsNothing(Cn) Then Cn.Close() Cn = Nothing End If End Sub Public Function ExecuteQuery(ByVal Query As String) As DataTable If Not OpenConn() Then MsgBox("Koneksi Gagal..!!", MsgBoxStyle.Critical, "Access Failed") Return Nothing Exit Function End If

Page 8: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Cmd = New OleDb.OleDbCommand(Query, Cn) Da = New OleDb.OleDbDataAdapter Da.SelectCommand = Cmd Ds = New Data.DataSet Da.Fill(Ds) Dt = Ds.Tables(0) Return Dt Dt = Nothing Ds = Nothing Da = Nothing Cmd = Nothing CloseConn() End Function Public Sub ExecuteNonQuery(ByVal Query As String) If Not OpenConn() Then MsgBox("Koneksi Gagal..!!", MsgBoxStyle.Critical, "Access Failed..!!") Exit Sub End If Cmd = New OleDb.OleDbCommand Cmd.Connection = Cn Cmd.CommandType = CommandType.Text Cmd.CommandText = Query Cmd.ExecuteNonQuery() Cmd = Nothing CloseConn() End Sub End Class

Setelah itu klik kanan lalu klik view code pada form login, isikan coding dibawah ini :

Public Class Form3 Dim tblLogin As DataTable Dim Proses As New classkoneksi

Sub bersih() txtuser.Text = "" txtpass.Text = "" txtuser.Focus() End Sub Sub Login() If txtuser.Text = "" Then txtuser.Focus() : Exit Sub If txtpass.Text = "" Then txtpass.Focus() : Exit Sub

tblLogin = Proses.ExecuteQuery("Select * From t_user Where username = '" & txtuser.Text & "' and password ='" & txtpass.Text & "'")

If tblLogin.Rows.Count = 0 Then MessageBox.Show("Login tidak berhasil..!!", "Informasi", MessageBoxButtons.OK, MessageBoxIcon.Information) txtuser.Focus() Else EntryDtPegawai.Show() Me.Hide() End If End Sub

Page 9: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Button Login Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Call Login() End Sub Button Keluar Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button2.Click End End Sub End Class

Aplikasi Login Dengan Database (Bagian 2) Langkah-langkahnya adalah : Buat database baru di SQL Server dengan nama TEST, setelah itu buat tabel baru dengan nama

tabel t_user dengan atribut-atribut username varchar(20) yang merupakan primary key, password varchar(10), akses varchar(15).

Lalu insert data username = admin, password =12345, akses = admin.

Page 10: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Buatlah 1 form untuk form login dan buat 1 form lagi untuk form utama Tambahkan module pada program VB anda dengan nama modumum.vb, isikan scriptnya dengan

script dibawah ini :

Modul Koneksi Imports System.Data.SqlClient Module modumum Public dtset As DataSet Public posisirecord As String = Nothing Public sql As String = Nothing Public Function koneksi() As SqlClient.SqlConnection Dim con As SqlClient.SqlConnection con = New SqlConnection("Integrated Security=SSPI; " & _ "Persist Security Info=True;Initial Catalog=TEST;" & _ "Data Source=(LOCAL)") Return con con = Nothing End Function End Module

Masukan coding dibawah ini pada form login

Public Class F_Login Inherits System.Windows.Forms.Form Dim dat_user As SqlClient.SqlDataAdapter

Private Sub F_Login_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.txtuser.Text = "" Me.txtpassword.Text = "" End Sub Dim utama As New F_Utama

Button Login Private Sub btnlogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnlogin.Click Try If Me.txtuser.Text = "" Then MsgBox("User name harus diisi, masukan input yang tepat", MsgBoxStyle.Critical, "Kesalahan") Me.txtuser.Focus() Exit Sub Exit Sub ElseIf Me.txtpassword.Text = "" Then

Page 11: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

MsgBox("Password harus diisi, masukan input yang tepat", MsgBoxStyle.Critical, "Kesalahan") Me.txtuser.Focus() Exit Sub End If dat_user = New SqlClient.SqlDataAdapter("select*from t_user where username = '" & Me.txtuser.Text & "' and password ='" & Me.txtpassword.Text & "'", modumum.koneksi) Dim dtt_user As New DataTable dtt_user.Clear() dat_user.Fill(dtt_user) Dim hak As String If dtt_user.Rows.Count = Nothing Then MsgBox("User ID dan Password anda salah, masukan input yang tepat", MsgBoxStyle.Information, "Informasi") Me.txtuser.Clear() Me.txtuser.Focus() Me.txtpassword.Clear() Exit Sub Else Dim dr As DataRow For Each dr In dtt_user.Rows hak = dr("akses") If hak = "admin" Then 'F_Utama.mnmasterdata.Enabled = True 'F_Utama.mndatabarang.Enabled = True 'F_Utama.mndatapemasok.Enabled = True 'F_Utama.mndatapelanggan.Enabled = True F_Utama.ShowDialog() Me.Dispose() ElseIf hak = "manajer" Then

'F_Utama.mnmasterdata.Enabled = False 'F_Utama.mndatabarang.Enabled = False 'F_Utama.mndatapemasok.Enabled = False 'F_Utama.mndatapelanggan.Enabled = False F_Utama.ShowDialog() Me.Dispose() End If 'Me.Close() Next End If 'Me.Close() Catch ex As Exception ' MsgBox(ex.Message, MsgBoxStyle.Information, "Kesalahan") End Try End Sub

Page 12: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Button Batal Private Sub btnbatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnbatal.Click Dim mYes_No As String = MsgBox("Apakah anda ingin keluar dari aplikasi ?", vbYesNo, "Perhatian") If mYes_No = vbYes Then End Else Exit Sub End If End Sub End Class

Page 13: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

MDI form

Mdi form ialah form yang dapat menapilkan beberapa form sekaligus. Terbagi menjadi 2 jenis form yaitu form induk dan form anak. Form induk inilah yang akan menjadi tempat form-form anak ditampilkan. Berikut langkah-langkah dalam membuat MDI form ;

1. Buatlah project baru, lalu pilih widows form application. 2. Set form pertama ( form 1 ) menjadi form induk dengan cara, atur properti IsMdiContainer

menjadi “True”. 3. Tambahkan 4 windows form lagi.

4. Atur form1( form Induk ) pada properti Windowstate menjadi maximized. 5. Buatlah sebuah Menustrip untuk memanggil form form anak, pilih MenuStrip dari toolbox .

Lalu buatlah menu-menu seperti gambar diatas.

6. Untuk memanggil form anak hanya dengan menggunakan code :

Nama form.Mdiparent=me ' mendiskripsikan form anak Nama form.show/show dialog() ' Memanggil form anak

7. Atur coding tersebut pada masing masing menu strip untuk memanggil form anak tertentu.

Private Sub TampilkanFormAnak1ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TampilkanFormAnak1ToolStripMenuItem.Click Form2.MdiParent = Me Form2.Show() End Sub ' Memanggil form2 ( Form Anak 1)

Private Sub TampilkanFormAnak2ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TampilkanFormAnak2ToolStripMenuItem.Click Form3.MdiParent = Me Form3.Show() End Sub ' Memanggil form3 ( Form Anak 2)

Private Sub TampilkanFormAnak3ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TampilkanFormAnak3ToolStripMenuItem.Click Form4.MdiParent = Me

Page 14: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Form4.Show() End Sub ' Memanggil form4 ( Form Anak 3)

Private Sub TampilkanFormAnak4ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TampilkanFormAnak4ToolStripMenuItem.Click Form5.MdiParent = Me Form5.Show() End Sub ' Memanggil form5 ( Form Anak 4)

Mengatur posisi form anak Mdi Pada tdkita kondisi defaultnya, form anak akan ditampilkan bertumpuk, ini tentunya membuat tidak nyaman tampilan karena berkesan tidak rapi. Sebenarnya kita dapat mengatur posisi tampilan form - form tersebut agar terlihat rapi walaupun semua form anak ditampilkan. Berikut langkah - langkahnya:

1. Tambahkan menu window di menustrip yang sudah kita buat. Isikan sub menu seperti pada gambar.

2. Gunakan koding berikut untuk mengatur posisi form anak :

Isikan nilai posisi dengan : tile horizontal, tile vertical atau cascade Koding lengkap masing - masing tombolnya sebagai berikut :

Private Sub TileVertikalToolStripMenuItem_Click(ByVal senderAs System.Object, ByVal e As System.EventArgs) HandlesTileVertikalToolStripMenuItem.Click Me.LayoutMdi(System.Windows.Forms.MdiLayout.TileVertical) End Sub ' Tile vertikal

Private Sub TileHorisontlToolStripMenuItem_Click(ByVal senderAs System.Object, ByVal e As System.EventArgs) HandlesTileHorisontlToolStripMenuItem.Click Me.LayoutMdi(System.Windows.Forms.MdiLayout.TileHorizontal) End Sub ' Tile Horisontal

Private Sub CascadeToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesCascadeToolStripMenuItem.Click Me.LayoutMdi(System.Windows.Forms.MdiLayout.Cascade) End Sub ' Bertumpuk ( cascade )

Page 15: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

3. Output

All form

Cascade

Tile Horizontal

Tile Vertical

Page 16: Koneksi Database SQL Bag 2 Form Login Dan Mdi Form

Tugas Praktikum! 1. Buatlah form login sebagai hak akses masuk ke menu utama Program Aplikasin Penjualan

Produk! 2. Tampilan Menu Utama dari program aplikasi Penjualan Produk

3. Buatlah Aplikasi Entry data Supplier yang terlihat pada gambar dibawah ini.