Pages

Subscribe:

Saturday, November 6, 2010

Stream Writer dan Mencari Data dari Notepad

Jurusan akan otomatis terisi jika 2 karakter dari NPM mulai dari karakter ke 3 sesuai dengan kode jurusannya.
Search akan memunculkan inputbox dan mencari data dari file Notepad (.txt)


Contoh Code:
Public Class Form1

    'procedure untuk mengosongkan textbox
    Sub clearInput()
        txtNPM.Text = ""
        txtNama.Text = ""
        txtKelas.Text = ""
        txtJurusan.Text = ""
        txtNPM.Focus()
    End Sub

    'procedure untuk membuat textbox readonly true / false
    Sub makeReadOnly(ByVal tf As Boolean)
        txtNPM.ReadOnly = tf
        txtNama.ReadOnly = tf
        txtKelas.ReadOnly = tf
    End Sub

    Function getJurusan(ByVal NPM As String) As String
        Dim KodeJurusan, Jurusan As String
        KodeJurusan = NPM.Substring(2, 2)
        KodeJurusan = Microsoft.VisualBasic.Mid(NPM, 3, 2)

        '0631097
        'th-kd-urt

        Jurusan = ""
        If KodeJurusan = "11" Then
            Jurusan = "Teknik Sipil"
        ElseIf KodeJurusan = "21" Then
            Jurusan = "Teknik Elektro"
        ElseIf KodeJurusan = "31" Then
            Jurusan = "Sistem Informasi"
        ElseIf KodeJurusan = "41" Then
            Jurusan = "Manajemen"
        ElseIf KodeJurusan = "42" Then
            Jurusan = "Akuntasi"
        ElseIf KodeJurusan = "43" Then
            Jurusan = "Manajemen Perhotelan"
        ElseIf KodeJurusan = "44" Then
            Jurusan = "Magister Manajemen"
        ElseIf KodeJurusan = "51" Then
            Jurusan = "Ilmu Hukum"
        Else
            Jurusan = "Belum terdaftar"
        End If
        Return Jurusan
    End Function
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        makeReadOnly(True)
        clearInput()
    End Sub

    Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click
        makeReadOnly(False)
        clearInput()
    End Sub

    Private Sub txtNPM_Leave(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles txtNPM.Leave

        If txtNPM.Text.Trim = "" Then Exit Sub
        txtJurusan.Text = getJurusan(txtNPM.Text)
    End Sub

    Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearch.Click
        Dim flag As Boolean = False
        Dim NPM As String
        Dim tNPM, tNama, tKelas, tJurusan As String
        NPM = InputBox("Silahkan masukkan NPM", "Input")
        Do While NPM.Length <> 7 And NPM.Length > 1
            NPM = InputBox("Silahkan masukkan NPM", "Input")
        Loop
        'Do
        '    NPM = InputBox("Silahkan masukkan NPM", "Input")
        'Loop Until NPM.Length = 7
        'If NPM.Length <> 7 Then Exit Sub
        Dim sr As IO.StreamReader = IO.File.OpenText("mahasiswa.txt")
        Do While sr.Peek <> -1
            tNPM = sr.ReadLine
            tNama = sr.ReadLine
            tKelas = sr.ReadLine
            tJurusan = sr.ReadLine
            If tNPM = NPM Then
                flag = True
                txtNPM.Text = tNPM
                txtNama.Text = tNama
                txtKelas.Text = tKelas
                txtJurusan.Text = tJurusan
            End If
        Loop
        sr.Close()
        If flag = False Then
            MessageBox.Show("Data tidak ditemukan")
        End If
    End Sub
End Class

Function dan Procedure serta passing nilai Antar Form

Function merupakan suatu fungsi yang dibuat untuk memproses atau melakukan suatu proses didalamnya yang akhirnya mengembalikan nilai dari proses tersebut.
Procedure merupakan suatu fungsi didalamnya yang tidak mengembalikan nilai.
Function dan Procedure digunakan untuk mengelompokan suatu proses sehingga dapat mempermudahkan programmer untuk melacak kesalahan coding dan juga untuk mempercepat pembuatan coding tanpa harus mengulang coding yang sama.

Berikut contoh function dan procedure serta passing nilai antar form.

Setelah tombol Hitung diklik maka akan muncul form kedua yang berisi nilai yang dikirim dari form Utama ini.
Untuk grade sendiri dapat dikembangkan lagi.

Contoh Code:


Public Class frmUtama

    Sub ClearInput()
        txtNPM.Clear()
        txtNama.Clear()
        txtNTugas.Clear()
        txtNPartisipasi.Clear()
        txtNUTS.Clear()
        txtNUAS.Clear()
        txtNPM.Focus()
    End Sub

    Function ValidateInput() As Boolean
        If txtNPM.Text.Trim.Length <> 7 Then
            MessageBox.Show("NPM tidak valid")
            txtNPM.Focus()
            Return False
        ElseIf Not IsNumeric(txtNPM.Text.Trim) Then
            MessageBox.Show("NPM harus angka")
            txtNPM.Focus()
            Return False
        ElseIf txtNama.Text.Trim.Length < 3 Then
            MessageBox.Show("Masukkan nama yang benar")
            txtNama.Focus()
            Return False
        ElseIf Not IsNumeric(txtNTugas.Text) Then
            txtNTugas.Focus()
            Return False
        ElseIf Not IsNumeric(txtNPartisipasi.Text) Then
            txtNPartisipasi.Focus()
            Return False
        ElseIf Not IsNumeric(txtNUTS.Text) Then
            txtNUTS.Focus()
            Return False
        ElseIf Not IsNumeric(txtNUAS.Text) Then
            txtNUAS.Focus()
            Return False
        Else
            Return True
        End If
    End Function

    Function CalcNA(ByVal NTugas As Single, ByVal NPart As Single, _
                    ByVal NUTS As Single, ByVal NUAS As Single) _
                    As Single
        Dim sngNTugas, sngNPart, sngNUTS, sngNUAS As Single
        Dim sngResult As Single

        sngNTugas = NTugas * 0.1
        sngNPart = NPart * 0.05
        sngNUTS = NUTS * 0.4
        sngNUAS = NUAS * 0.45

        sngResult = sngNTugas + sngNPart + sngNUTS + sngNUAS
        Return sngResult
    End Function

    Private Sub frmUtama_Load(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles MyBase.Load
        ClearInput()
    End Sub

    Private Sub btnHitungNA_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles btnHitungNA.Click
        If ValidateInput() = False Then Exit Sub
        With frmResult
            .lblNPM.Text = txtNPM.Text
            .lblNama.Text = txtNama.Text
            .lblNAkhir.Text = CalcNA(txtNTugas.Text, _
                    txtNPartisipasi.Text, _
                    txtNUTS.Text, txtNUAS.Text)
            .Show()
        End With
        Me.Hide()
    End Sub

    Private Sub txtNama_KeyPress(ByVal sender As Object, _
    ByVal e As System.Windows.Forms.KeyPressEventArgs) _
    Handles txtNama.KeyPress
        'textbox nama hanya bisa input huruf
        If Not ((e.KeyChar >= "A" And e.KeyChar <= "z") _
            Or e.KeyChar = vbBack) Then
            e.Handled = True
        End If
    End Sub

    Private Sub HanyaInputAngkaDec(ByVal sender As Object, _
    ByVal e As System.Windows.Forms.KeyPressEventArgs) _
    Handles txtNTugas.KeyPress, txtNPartisipasi.KeyPress, _
            txtNUAS.KeyPress, txtNUTS.KeyPress

        Dim decSeperator As String
        Dim digitGrouping As String

        'untuk mengambil simbol pemisah desimal
        decSeperator = System.Globalization.CultureInfo _
                    .CurrentCulture.NumberFormat _
                    .CurrencyDecimalSeparator

        'untuk mengambil simbol pemisah ribuan
        digitGrouping = System.Globalization.CultureInfo _
                    .CurrentCulture.NumberFormat _
                    .CurrencyGroupSeparator

        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") _
            Or e.KeyChar = vbBack Or e.KeyChar = decSeperator) Then
            e.Handled = True
        End If
    End Sub
End Class

Code pada form Result:
Public Class frmResult

    Private Sub btnBack_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles btnBack.Click
        frmUtama.Show()
        Me.Close()
    End Sub

    Private Sub frmResult_FormClosed(ByVal sender As Object, _
    ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
        frmUtama.Close()
    End Sub

End Class

CheckBox

Memberikan nilai pada saat Checkbox dicentang dan mengurangi nilai total pada saat Checkbox tidak dicentang.

Contoh Code:
Public Class frmSelectItem

    Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
        If CheckBox1.Checked = True Then
            lblTotal.Text += 1000
        ElseIf CheckBox1.Checked = False Then
            lblTotal.Text -= 1000
        Else
            lblTotal.Text = lblTotal.Text
        End If
    End Sub

    Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles CheckBox2.CheckedChanged
        If CheckBox2.Checked = True Then
            lblTotal.Text += 2000
        ElseIf CheckBox2.Checked = False Then
            lblTotal.Text -= 2000
        Else
            lblTotal.Text = lblTotal.Text
        End If
    End Sub

    Private Sub CheckBox3_CheckedChanged(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles CheckBox3.CheckedChanged
        If CheckBox3.Checked = True Then
            lblTotal.Text += 3000
        ElseIf CheckBox3.Checked = False Then
            lblTotal.Text -= 3000
        Else
            lblTotal.Text = lblTotal.Text
        End If
    End Sub

    Private Sub CheckBox4_CheckedChanged(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles CheckBox4.CheckedChanged
        If CheckBox4.Checked = True Then
            lblTotal.Text += 4000
        ElseIf CheckBox4.Checked = False Then
            lblTotal.Text -= 4000
        Else
            lblTotal.Text = lblTotal.Text
        End If
    End Sub

    Private Sub CheckBox5_CheckedChanged(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles CheckBox5.CheckedChanged
        If CheckBox5.Checked = True Then
            lblTotal.Text += 5000
        ElseIf CheckBox5.Checked = False Then
            lblTotal.Text -= 5000
        Else
            lblTotal.Text = lblTotal.Text
        End If
    End Sub

End Class

Membaca Data dari Notepad dan Melalukan Fungsi Perhitungan

Membaca data secara perbaris kemudian dari data tersebut kita melakukan perhitungan…

Contoh Code:
Imports System.IO
Public Class frmFee
    Private Sub btnGetData_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles btnGetData.Click
        Dim SR As StreamReader
        SR = File.OpenText("MyData.txt")
        txtNPM.Text = SR.ReadLine
        txtNama.Text = SR.ReadLine
        txtJK.Text = SR.ReadLine
        txtSKS.Text = SR.ReadLine
        SR.Close()
        lblTotal.Text = CInt(txtSKS.Text) * CInt(txtBiayaPerSKS.Text)
    End Sub
End Class

Membaca Data dari Notepad hingga Akhir

Untuk membaca data dari suatu file Notepad (.txt) kita perlu untuk menggunakan Looping (pengulangan) dalam membaca tiap baris yang ada dalam file tersebut. Berikut contohnya:


Berikut Code lengkapnya:
Imports System.IO
Public Class frmReadData2End
    Private Sub btnReadData_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles btnReadData.Click
        Dim sr As StreamReader
        sr = File.OpenText("MyData.txt")
        lstData.Items.Clear()
        Do While sr.Peek <> -1
            lstData.Items.Add(sr.ReadLine)
        Loop
        sr.Close()
    End Sub
End Class

Saturday, October 30, 2010

Mengubah Authentication Mode SQL Server 2005 Express dari Windows Authentication ke Mixed Mode

Jika sewaktu Anda menginstall Visual Studio 2005 secara default, maka SQL Server 2005 akan ikut terinstall juga. Authentication yang digunakan untuk login / connect ke database SQL Server adalah Windows Authentication (hanya username yang terdaftar ke komputer tersebut yang dapat melakukan koneksi ke database), sebaiknya Anda menggunakan Mixed Mode sehingga dapat melakukan authentication berdasarkan Windows Authentication ataupun SQL Server Authentication, berikut cara merubah metode otentikasi untuk melakukan koneksi ke SQL Server 2005 Express. Namun sebelumnya Anda sudah harus meng-install SQL Management Studio Express (SMSE), cara instalasi dan download file disini (dalam proses).

1.      Setelah Anda selesai melakukan instalasi SMSE, buka aplikasi SMSE. Berikut tampilan awalnya
Cara membuka aplikasi SMSE:
·         klik Start > All Programs > Microsoft SQL Server 2005 > klik SQL Server Management Studio Express, berikut tampilan awalnya.

2.      Untuk melakukan login pertama kali silahkan menggunakan Windows Authentication
Server type:                Database Engine
Server name:              .\SQLExpress (titik (.) merupakan lokasi server dalam hal ini "titik" menandakan "local" atau komputer itu sendiri, sedangkan SQLExpress merupakan nama instance) Biarkan secara default jika Anda pertama kali install yang terpenting instancenya "SQLExpress"
Authentication:         Windows Authentication
3.      Klik kanan pada instance SQLExpress kemudian klik properties.
4.      Pada pilihan Select a page, klik Security, kemudian pada sisi kanan Server authentication > silahkan pilih SQL Server and Windows Authentication mode kemudian klik tombol OK
Akan muncul pesan informasi, klik tombol OK.
5.      Sekarang kita harus melakukan pengaturan untuk memberikan izin login default user "sa". Klik tanda + (tambah) pada node Security > Login > sa > klik kanan kemudian klik Properties.
6.      Pada Select a page pilih Status, kemudian pada Login: pilih Enabled
Kemudian lakukan perubahan password login untuk user "sa" agar nantinya bisa menggunakan login SQL Server Authentication. Pilih General, kemudian masukan password yang Anda inginkan untuk login.
7.      Tutup SMSE, kemudian buka kembali. Sekarang ganti Authentication menjadi SQL Server Authentication, masukan Login: sa dan Password: sesuai dengan yang Anda buat sebelumnya, klik tombol Connect.
8.      Sekarang Anda sudah berhasil login menggunakan SQL Server Authentication

~ Semoga Bermanfaat ~

Download File PDF : DOWNLOAD

Mengganti SQL Server 2005 Express “Log On As…”

Jika Anda menggunakan SQL Server 2005 Express untuk membuat atau memanipulasi database, secara default sewaktu pembuatan database, maka file database .mdf & .ldf akan tersimpan pada drive C: (sesuai dengan drive SQL Server 2005 Express terinstall). Secara default file database Anda akan berada pada lokasi "C:\Program Files\Microsoft SQL Server\MSSQL.X\MSSQL\Data" (X merupakan nomor urut instance yang ada create, secara default untuk SQL Server 2005 Express instancenya bernama "SQLExpress"). Agar database yang Anda buat tidak hilang / terhapus jika terjadi kerusakan pada Operating System (Windows XP, Vista, 7, dsb), maka Anda harus memindahkan file database (.mdf & .ldf) ke drive lainnya, misalnya drive D:. Namun alangkah kagetnya sewaktu Anda ingin melakukan detach ulang database, akan muncul error bahwa database tidak bisa di-detach kembali. Hal ini terjadi karena default Log On As SQL Server 2005 menggunakan Network Service, untuk itu Anda harus mengganti Log On As menjadi Local System. Berikut langkah-langkahnya:

1.       Buka aplikasi SQL Server Configuration Manager
Jika OS Anda Windows XP, klik Start > All Programs > Microsoft SQL Server 2005 > Configuration Tools > klik SQL Server Configuration Manager

Jika OS Anda Windows Vista / 7, klik logo Windows (Start) > All Programs > Microsoft SQL Server 2005 > Configuration Tools > SQL Server Configuration Manager atau Anda dapat langsung mengetikan SQL Server Configuration Manager pada Search programs and files
2.   Akan muncul jendela SQL Server Configuration Manager, pada kolom Log On As berisi NT AUTHORITY\NetworkService yang tampak seperti dibawah ini:
3.       Klik kanan pada SQL Server (SQLEXPRESS) kemudian klik Properties, kemudian akan muncul jendela seperti di bawah ini. Pada tab Log On, pilih option Built-in account: kemudian ganti nilai di combo box menjadi Local System, kemudian klik tombol OK
4.       Akan muncul pesan konfirmasi untuk melakukan restart service, klik tombol Yes
5.       Tunggu beberapa saat, kemudian Anda akan melihat perubahan pada kolom Log On As menjadi LocalSystem.

~ Semoga Bermanfaat ~

Download File PDF : DOWNLOAD