Pages

Kamis, 19 Januari 2012

Belajar Server

1.    Pengertian jaringan Client – Server
Server adalah komputer yang menyediakan fasilitas bagi komputer- komputer lain di dalam jaringan
client adalah komputer-komputer yang menerima atau menggunakan fasilitas yang disediakan oleh server.
Server di jaringan tipe client-server disebut dengan Dedicated Server karena murni berperan sebagai server yang menyediakan fasilitas kepada workstation dan server tersebut tidak dapat berperan sebagai workstation.

2.    Program server
Langkah - langkah pembuatan program server yang menggunakan program Microsoft Office Acces 2003 dan program Microsoft Visual Basic 6.0 yaitu :
a.    Rancanglah pembuatan data base pada program Microsoft Office Acces 2003.
Nama database    : Mahasiswa
Nama table        : Data
Start, program, pilih Microsoft Office Acces 2003. Pada sebelah kanan bawah tampilan terdapat icon – icon. Klik create a new file. Ketik blank database. Lalu ketik nama database Mahasiswa dengan nama tabel data. Double klik table data isilah field name dan data typenya. Seperti tampilan dibawah ini.



 b.    Start, program, pilih Microsoft Visual Basic 6.0, Microsoft Visual Basic 6.0, standard Exe, klik Open.


 c.    Rancang tampilan pada Form Login.



Ketik listing program pada form login.
Private Sub Command1_Click()
    If user.Text = "nurjannah" And password.Text = "0902119" Then
    MDIForm1.Show
    ElseIf user.Text = "" & password.Text = "" Then
    MsgBox "Silahkan masukkan password login", vbCritical, "info"
    user.SetFocus
    Else
    MsgBox "Password yang anda inputkan salah", vbCritical, "info"
    user.Text = ""
    password.Text = ""
    End If
End Sub

Private Sub Command2_Click()
    Unload Me
End Sub

Private Sub Form_Load()
    user.Text = ""
    password.Text = ""
    password.PasswordChar = "*"
End Sub

d.    Rancang tampilan pada Form MDIForm1.
 Ketik listing program pada form MDIForm1.
Private Sub e_Click()
    Unload Me
End Sub

Private Sub ldm_Click()
    formbarang.Show
End Sub

Rancang tampilan seperti tampilan dibawah ini dengan menggunakan Microsoft Visual Basic 6.0.


 e.    Ketik listing program pada Form1.
Private Sub cmdproses_Click(Index As Integer)
Select Case Index
            Case 0
        Call hapus
        npm.SetFocus
            Case 1
        If cmdproses(1).Caption = "&Simpan" Then
        Call prosesDB(0)
            Else
        Call prosesDB(1)
        End If
            Case 2
        X = MsgBox("yakin RECORD data akan dihapus...!", vbQuestion + vbYesNo, "data")
        If X = vbYes Then prosesDB 2
        Call hapus
        npm.SetFocus
            Case 3
        Call hapus
        npm.SetFocus
            Case 4
        Unload Me
End Select
End Sub

Sub hapus()
npm.Enabled = True
clearform Me
Call rubahcmd(Me, True, False, False, False)
cmdproses(1).Caption = " &Simpan"
End Sub

Private Sub Form_Load()
Call opendb
Call hapus
mulaiserver
End Sub

Sub prosesDB(log As Byte)
Select Case log
            Case 0
SQL = "INSERT INTO data(npm,nama,group,jurusan)" & _
       "values('" & npm.Text & _
       "','" & nama.Text & _
       "','" & group.Text & _
       "','" & jurusan.Text & "')"
            Case 1
SQL = "UPDATE data SET nama='" & nama.Text & "'," & _
       "group='" & group.Text & "' " & _
"jurusan='" & jurusan.Text & "' " & _
       "WHERE npm='" & npm.Text & "'"
            Case 2
       SQL = "DELETE  FROM data WHERE npm='" & npm.Text & "'"
       End Select
MsgBox "Pemrosesan  record Database telah berhasil....!!", vbInformation, "data"
db.BeginTrans
db.Execute SQL, adCmdTable
db.CommitTrans
Call hapus
       Adodc1.Refresh
npm.SetFocus
End Sub

Sub tampildata()
On Error Resume Next
npm.Text = rs!npm
nama.Text = rs!nama
group.Text = rs!group
jurusan.Text = rs!jurusan
End Sub

Sub mulaiserver()
ws.LocalPort = 1000
ws.Listen
End Sub
Private Sub npm_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
        If npm.Text = "" Then
       MsgBox "Masukkan npm!", vbInformation, "data"
       npm.SetFocus
       Exit Sub
End If
SQL = " SELECT * FROM data WHERE npm='" & npm.Text & "'"
If rs.State = adStateOpen Then rs.Close
rs.Open SQL, db, adOpenDynamic, adLockOptimistic
If rs.RecordCount <> 0 Then
        tampildata
        Call rubahcmd(Me, False, True, True, True)
        cmdproses(1).Caption = "&Edit"
        npm.Enabled = False
     Else
       X = npm.Text
       Call hapus
       npm.Text = X
       Call rubahcmd(Me, False, True, False, True)
       cmdproses(1).Caption = "&Simpan"
End If
npm.SetFocus
End If
End Sub

Private Sub ws_ConnectionRequest(ByVal requestID As Long)
ws.Close
ws.Accept requestID
Me.Caption = "server-client" & ws.RemoteHostIP & "connect"
End Sub

Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim xkirim As String
Dim xData1() As String
Dim xData2() As String
ws.GetData xkirim, vbString, bytesTotal
xData1 = Split(xkirim, "-")
Select Case xData1(0)
            Case "SEARCH"
        SQL = " delete * FROM data " & _
        " where npm= '" & xData1(1) & "'"
        SQL = "SELECT * FROM data WHERE npm='" & xData1(1) & "'"
        If rs.State = adStateOpen Then rs.Close
rs.Open SQL, db, adOpenDynamic, adLockOptimistic
If rs.RecordCount <> 0 Then
        ws.SendData "RECORD-" & rs!nama & "/" & rs!group & "/" & rs!jurusan
        Else
       ws.SendData "NOTHING-DATA"
        End If
            Case "INSERT"
       db.BeginTrans
       db.Execute xData1(1), adCmdTable
       db.CommitTrans
       Adodc1.Refresh
       ws.SendData "INSERT-XXX"
            Case "UPDATE"
        db.BeginTrans
        db.Execute xData1(1), adCmdTable
        db.CommitTrans
        Adodc1.Refresh
        ws.SendData "UPDATE-XXX"
            Case "DELETE"
        SQL = " delete * FROM data " & _
        " where npm= '" & xData1(1) & "'"
        db.BeginTrans
        db.Execute SQL, adCmdTable
        db.CommitTrans
        Adodc1.Refresh
        ws.SendData "DEL-xxx"
       End Select
End Sub

f.    Ketik listing program pada Module.
Klik kanan pada Form1, pilih add, Module, open. Double klik pada tampilan Module, lalu ketikkan listing programnya.

Public db As New ADODB.Connection
Public rs As New ADODB.Recordset
Public rs2 As New ADODB.Recordset
Public SQL As String
Sub opendb()
        If db.State = adStateOpen Then db.Close
        db.CursorLocation = adUseClient     db.Open”Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\belajarserver\server\mahasiswa.md;    Persist Security Info=False"
End Sub

Sub clearform(f As Form)
        Dim ctl As Control
        For Each ctl In f
            If TypeOf ctl Is TextBox Then ctl.Text = ""
            If TypeOf ctl Is ComboBox Then ctl.Text = ""
            Next
End Sub

Sub center(f As Form)
        f.Move (Screen.Width - f.Width) / 2, (Screen.Height - f.Height) / 4
End Sub

Sub rubahcmd(f As Form, L0 As Boolean, L1 As Boolean, L2 As Boolean, L3 As Boolean)
        f.cmdproses(0).Enabled = L0
        f.cmdproses(1).Enabled = L1
        f.cmdproses(2).Enabled = L2
        f.cmdproses(3).Enabled = L3
End Sub

Pada tool box tampilan rancangan program terdapat Project, pilih project1 properties, pada startup object, pilih login. Agar tampilan layar setelah di jalankan akan muncul form login terlebih dahulu.seperti gambar dibawah ini.
  
 Sehingga tampilan setelah dimasukkan password akan tampil seperti di bawah ini.
 Lalu muncullah tampilan yang dapat mengasilkan output, seperti gambar ini.

 
 3.    Program Client
Langkah - langkah pembuatan program client tidak pelu merancang database lagi, dikarenakan pada database sudah terdapat pada Server, yang akan terkoneksi ke program client. Jadi program client hanya menggunakan bahasa pemograman  Microsoft Visual Basic 6.0 yaitu :
a.    Start, program, pilih Microsoft Visual Basic 6.0, Microsoft Visual Basic 6.0, standard Exe, klik Open.



 b.    Rancang tampilan pada Form Login.
 Ketik listing program pada form login.
Private Sub Command1_Click()
    If user.Text = "fitri" And password.Text = "0902160" Then
    MDIForm1.Show
    ElseIf user.Text = "" & password.Text = "" Then
    MsgBox "Silahkan masukkan password login", vbCritical, "info"
    user.SetFocus
    Else
    MsgBox "password yang anda inputkan salah", vbCritical, "info"
    user.Text = ""
    password.Text = ""
    End If
End Sub

Private Sub Command2_Click()
    Unload Me
End Sub

Private Sub Form_Load()
    user.Text = ""
    password.Text = ""
    password.PasswordChar = "*"
End Sub

c.    Rancang tampilan pada Form MDIForm1.

Ketik listing program pada form MDIForm1.
Private Sub e_Click()
    Unload Me
End Sub

Private Sub ldm_Click()
    Form1.Show
End Sub



Selanjutnya Rancang tampilan seperti tampilan dibawah ini dengan menggunakan Microsoft Visual Basic 6.0.

Ketik listing program pada Form1.
Dim IpServer As String
Sub hapus()
    npm.Enabled = True
    ClearFORM Me
    Call rubahCMD(Me, True, False, False, False)
    cmdproses(1).Caption = "&Simpan"
End Sub

Sub prosesDB(log As Byte)
    Select Case log
        Case 0
    SQL = "INSERT INTO data(npm,nama,group,jurusan)" & _
    "values('" & npm.Text & _
    "','" & nama.Text & _
    "','" & group.Text & _
    "','" & jurusan.Text & "')"
        Case 1
    SQL = "UPDATE data SET nama='" & nama.Text & "'," & _
    "group='" & group.Text & "' " & _
    "jurusan='" & jurusan.Text & "' " & _
    "where npm='" & npm.Text & "'"
        Case 2
    SQL = "DELETE FROM data WHERE npm='" & npm.Text & "'"
    End Select
    MsgBox "pemrosesan RECORD database telah berhasil...!", vbInformation, "data"
    Call hapus
    npm.SetFocus
End Sub

Private Sub cmdproses_Click(Index As Integer)
    Select Case Index
        Case 0
    Call hapus
    npm.SetFocus
        Case 1
    If cmdproses(1).Caption = " &Simpan" Then
    Else
    SQL = "UPDATE data Set " & _
    "nama = '" & nama.Text & _
    "group = '" & group.Text & _
    "' , jurusan= '" & jurusan.Text & _
    "' where npm= '" & npm.Text & "'"
    ws.SendData "UPDATE-" & SQL
    End If
        Case 2
    X = MsgBox("yakin RECORD data akan dihapus...!", vbQuestion + vbYesNo, "data")
    If X = vbYes Then
    ws.SendData "DELETE-" & npm.Text
    End If
    Call hapus
    npm.SetFocus
        Case 3
    Call hapus
    npm.SetFocus
        Case 4
    Unload Me
    End Select
End Sub



Private Sub Form_Load()
    Call hapus
    mulaikoneksi
End Sub

Sub mulaikoneksi()
    IpServer = "192.168.10.1"
    IPClient = ws.LocalIP
    ws.Connect IpServer, 1000
End Sub

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    DoEvents
    End
End Sub

Private Sub npm_KeyPress(KeyAscii As Integer)
    If KeyAscii = 13 Then
    If npm.Text = "" Then Exit Sub
    ws.SendData "SEARCH-" & npm.Text
    End If
End Sub

Private Sub ws_DataArrival(ByVal bytesTotal As Long)
    Dim xkirim As String
    Dim xdata1() As String
    Dim xdata2() As String
    ws.GetData xkirim, vbString, bytesTotal
    xdata1 = Split(xkirim, "-")
    Select Case xdata1(0)
         Case "NOTHING"
     X = npm.Text
     Call hapus
     npm.Text = X
     Call rubahCMD(Me, False, True, False, True)
     cmdproses(1).Caption = "&Simpan"
     nama.SetFocus
        Case "RECORD"
     xdata2 = Split(xdata1(1), "/")
     npm.Text = xdata2(0)
     group.Text = xdata2(1)
     jurusan.Text = xdata2(2)
     Call rubahCMD(Me, False, True, True, True)
     cmdproses(1).Caption = "&Edit"
     npm.Enabled = False
     nama.SetFocus
        Case "DEL"
     MsgBox "penghapusan data berhasil!"
     Call hapus
         Case "EDIT"
     MsgBox "Pengeditan Record berhasil!"
     Call hapus
     End Select
End Sub

Pada tool box tampilan rancangan program terdapat Project, pilih project1 properties, pada startup object, pilih login. Agar tampilan layar setelah di jalankan akan muncul form login terlebih dahulu.seperti gambar dibawah ini.
Sehingga tampilan setelah dimasukkan password akan tampil seperti di bawah ini.
 Lalu muncullah tampilan yang dapat mengasilkan output, seperti gambar dibawah ini.




Tidak ada komentar:

Posting Komentar