PROGRAM SERVER
Dim ClientIndex As Byte
Dim cRequest As Integer
Dim cData As String
Dim i As Integer
Dim iGD As Integer
Sub MulaiServer()
WS(0).LocalPort = 3000
WS(0).Listen
cRequest = 1
ClientIndex = 1
End Sub
Private Sub Form_Load()
MulaiServer
GD.Rows = 41
For i = 1 To 40
GD.Col = 0
GD.Row = i
GD.Text = i
Next i
iGD = 1
End Sub
Private Sub Timer1_Timer()
For i = 1 To GD.Rows - 1
GD.Row = i
GD.Col = 4
If GD.Text = "START" Then
GD.Col = 3
GD.Text = Time
End If
Next i
End Sub
Private Sub Timer2_Timer()
WS.SendData "PAKAI-" & Pakai.Value & "/" & 3000
End Sub
Private Sub WS_ConnectionRequest(index As Integer, ByVal requestID As Long)
Load WS(cRequest)
WS(cRequest).Close
WS(cRequest).Accept requestID
cRequest = cRequest + 1 '
Timer1.Enabled = True
Timer2.Enabled = True
End Sub
Private Sub WS_DataArrival(index As Integer, ByVal bytesTotal As Long)
WS(index).GetData cData, vbString, bytesTotal
Call CekData(index)
End Sub
Sub CekData(index)
Dim kata() As String
kata = Split(cData, "-")
Select Case kata(0)
Case "START"
GD.Row = iGD
GD.Col = 1
GD.Text = kata(1) 'WS(index).RemoteHostIP
GD.Col = 2
GD.Text = Time
GD.Col = 4
GD.Text = "START"
GD.Col = 5
GD.Text = kata(2)
iGD = iGD
Case "STOP"
For i = 1 To GD.Rows - 1
GD.Row = i
GD.Col = 1
If GD.Text = kata(1) Then
GD.Col = 4
GD.Text = "STOP"
End If
Next i
End Select
End Sub
Private Sub WS_Error(index As Integer, ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
WS(index).Close
End Sub
PROGRAM CLIENT
Dim IPS As String
Dim User As String
Private Sub Command1_Click()
WS.SendData "START-" & User & "-Isna"
End Sub
Private Sub Command2_Click()
WS.SendData "STOP-" & User
End Sub
Private Sub Form_Load()
IPS = "127.0.0.1"
User = WS.LocalIP
WS.Connect IPS, 3000
End Sub
Private Sub WS_DataArrival(ByVal bytesTotal As Long)
WS.GetData xKirim, vbString, bytesTotal
Call CheckData
End Sub
Sub CheckData()
xdata1 = Split(xKirim, "-")
xdata2 = Split(xdata1(1), "/")
Select Case xdata1(0)
Case "PAKAI"
mulai.Value = xdata2(0)
selesai.Value = xdata2(1)
pakai.Value = xdata2(2)
biaya.Text = (Val(Hour(pakai.Value) * 60) + Val(Minute(pakai.Value) * 50))
End Select
End Sub
okie
Jumat, 27 Januari 2012
Jawaban soal no 2 (Okki Suprayogi)
Form Barang
Listing program Module
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;Data Source=D:\BelajarServer\Test.mdb;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
LIsting progam Server
Sub hapus()
kode.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 Barang(kode,nama,harga)" & _
"values('" & kode.Text & _
"','" & nama.Text & _
"','" & harga.Text & "')"
Case 1
sql = "update Barang set nama='" & nama.Text & "'," & _
"harga= '" & harga.Text & "'" & _
"where kode='" & kode.Text & "'"
Case 2
sql = "delete from Barang where kode='" & kode.Text & "'"
End Select
MsgBox "Pemrosesan record database telah berhasil...!", vbInformation, "data Barang"
Db.BeginTrans
Db.Execute sql, adCmdTable
Db.CommitTrans
Call hapus
Adodc1.Refresh
kode.SetFocus
End Sub
Sub TampilBarang()
On Error Resume Next
kode.Text = rs!kode
nama.Text = rs!nama
harga.Text = rs!harga
End Sub
2.Program Client
Gambar Form Client
Listing Module
Public SQL As String
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
Listing Program Client
Dim IPServer As String
Sub Hapus()
Kode.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 Barang(Kode,Nama,Harga)" & _
"values('" & Kode.Text & _
"','" & Nama.Text & _
"','" & Harga.Text & "')"
Case 1
SQL = "UPDATE Barang Set Nama='" & Nama.Text & "'," & _
"Harga='" & Harga.Text & "'," & _
"where Kode='" & Kode.Text & "'"
Case 2
SQL = " DELETE FROM Barang WHERE Kode='" & Kode.Text & "'"
End Select
MsgBox "Pemrosesan RECORD Database telah berhasil....!", vbInformation, "Data Barang"
Call Hapus
Kode.SetFocus
End Sub
Sub MulaiKoneksi()
IPServer = "127.0.0.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 Kode_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If Kode.Text = "" Then Exit Sub
WS.SendData "SEARCH-" & Kode.Text
End If
End Sub
Private Sub CmdProses_Click(Index As Integer)
Select Case Index
Case 0
Call Hapus
Kode.SetFocus
Case 1
If CmdProses(1).Caption = "&Simpan" Then
SQL = "INSERT INTO Barang(Kode,Nama,Harga) " & _
"values('" & Kode.Text & _
"','" & Nama.Text & _
"','" & Harga.Text & "')"
WS.SendData "INSERT-" & SQL
Else
SQL = "UPDATE Barang Set " & _
"nama='" & Nama.Text & _
"',harga='" & Harga.Text & _
"' where kode = '" & Kode.Text & "'"
WS.SendData "UPDATE-" & SQL
End If
Call Hapus
Kode.SetFocus
Case 2
X = MsgBox("Yakin RECORD Barang Akan Dihapus.....!", vbQuestion + vbYesNo, "Barang")
If X = vbYes Then
WS.SendData "DELETE-" & Kode.Text
End If
Call Hapus
Kode.SetFocus
Case 3
Call Hapus
Kode.SetFocus
Case 4
Unload Me
End Select
End Sub
Private Sub Form_Load()
Call Hapus
MulaiKoneksi
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, "-")
xData2 = Split(xData1(1), "/")
Select Case xData1(0)
Case "NOTHING"
X = Kode.Text
Call Hapus
Kode.Text = X
Call RubahCMD(Me, False, True, False, True)
CmdProses(1).Caption = "&Simpan"
Nama.SetFocus
Case "RECORD"
xData2 = Split(xData1(1), "/")
Nama.Text = xData2(0)
Harga.Text = xData2(1)
Call RubahCMD(Me, False, True, True, True)
CmdProses(1).Caption = "&Edit"
Kode.Enabled = False
Nama.SetFocus
Case "INSERT"
MsgBox "Penyimpanan Berhasil!"
Call Hapus
Case "DEL"
MsgBox "Penghapusan Data Berhasil!"
Call Hapus
Case "EDIT"
MsgBox "Pengeditan Record Berhasil!"
Call Hapus
End Select
End Sub
Kamis, 19 Januari 2012
Tugas Program Client
PROGRAM CLIENT
Listing Program Login :
Private Sub Command1_Click()
If username.Text = "okki" And pass.Text = "281090" Then
Menu.Show
End If
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Listing Program Mobil:
Sub Hapus()
kode.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 cars(kode,namamobil,jenismobil,seri,harga)" & _
"values('" & kode.Text & _
"','" & namamobil.Text & _
"','" & jenismobil.Text & _
"','" & seri.Text & _
"','" & harga.Text & "')"
Case 1
SQL = "UPDATE cars Set namamobil='" & namamobil.Text & "'," & _
"jenismobil='" & jenismobil.Text & "'," & _
"seri='" & seri.Text & "'," & _
"harga='" & harga.Text & "'," & _
"where kode='" & kode.Text & "'"
Case 2
SQL = " DELETE * FROM cars WHERE kode='" & kode.Text & "'"
End Select
MsgBox "Pemrosesan RECORD Database telah berhasil....!", vbInformation, "Data cars"
Call Hapus
kode.SetFocus
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 kode_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If kode.Text = "" Then Exit Sub
WS.SendData "SEARCH-" & kode.Text
End If
End Sub
Private Sub CmdProses_Click(Index As Integer)
Select Case Index
Case 0
Call Hapus
kode.SetFocus
Case 1
If CmdProses(1).Caption = "&Simpan" Then
SQL = "Insert into sars(kode,namamobil,jenismobil,seri,harga)" & _
"namamobil='" & namamobil.Text & _
"',jenismobil='" & jenismobil.Text & _
"',seri='" & seri.Text & _
"',harga='" & harga.Text & _
"'Where kode='" & kode.Text & "'"
WS.SendData "INSERT-" & SQL
Else
SQL = "UPDATE cars set " & _
"namamobil='" & namamobil.Text & _
"',jenismobil='" & jenimobil.Text & _
"',seri='" & seri.Text & _
"',harga='" & harga.Text & _
"'Where kode='" & kode.Text & "'"
WS.SendData "UPDATE-" & SQL
End If
Case 2
X = MsgBox("Yakin RECORD cars Akan Dihapus.....!", vbQuestion + vbYesNo, "cars")
If X = vbYes Then
WS.SendData "DELETE-" & kode.Text
End If
Call Hapus
Nis.SetFocus
Case 3
Call Hapus
kode.SetFocus
Case 4
Unload Me
End Select
End Sub
Private Sub Form_Load()
Call Hapus
MulaiKoneksi
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, "-")
xData2 = Split(xData1(1), "/")
Select Case xData1(0)
Case "NOTHING"
X = kode.Text
Call Hapus
kode.Text = X
Call RubahCMD(Me, False, True, False, True)
CmdProses(1).Caption = "&Simpan"
namamobil.SetFocus
Case "RECORD"
xData2 = Split(xData1(1), "/")
namamobil.Text = xData2(0)
jenismobil.Text = xData2(1)
seri.Text = xData2(2)
harga.Text = xData2(3)
Call RubahCMD(Me, False, True, True, True)
CmdProses(1).Caption = "&Edit"
kode.Enabled = False
namamobil.SetFocus
Case "DEL"
MsgBox "Penghapusan Data Berhasil!"
Call Hapus
Case "EDIT"
MsgBox "Pengeditan Record Berhasil!"
Call Hapus
Case "INSERT"
MsgBox "Penginputan Data Record Berhasil!"
Call Hapus
End Select
End Sub
Private Sub Keluar_Click()
Unload Me
End Sub
Private Sub Mobil_Click()
FrmMobil.Show
End Sub
Listing Program Modul :
Public SQL As String
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
Jumat, 21 Oktober 2011
Dasar-Dasar SBD
Sebelum masuk ke Sistem Basis Data, alangkah baiknya mengetahui arti dasar dari basis data dan sistem manajemen basis data, karena dengan mengetahui kedua unsur tersebut kita dapat secara mudah dalam mengenal Sistem Basis Data.
Secara umum Basis Data(Database) dapat didefinisikan sebagai kumpulan data yang saling berhubungan satu dengan yang lainnya secara sistematik. Menurut wikipedia basis data bermula dari ilmu komputer, akan tetapi seiring berkembangnya ilmu, basis data kemudian artinya meluas. Dengan adanya basis data banyak sekali hal yang dapat diperoleh, antara lain ketepatan(akurasi), kecepatan, dan kemudahan dalam pengambilan informasi, selain itu juga dapat menghemat tempat penyimpanan. Sedangkan pengertian dari Sistem Manajemen Basis Data(SMBD) adalah suatu sistem atau software yang digunakan untuk memanajemen(mengatur,mengelola) basis data atas perintah user/pengguna. Contoh beberapa SMBD antara lain : Microsoft SQL Server 2000, Oracle Enterprise Edition, MySQL, PostGreSQL.
Setelah mengetahui dasar-dasar dari basis data dan system manajemen basis data, sekarang berlanjut ke Sistem Basis Data. Sistem Basis Data merupakan sistem yang bertugas memanajemen record-record menggunakan komputer dan untuk menyimpan maupun mengambil kembali informasi-informasi yang diperlukan oleh pemakai. Selain itu Sistem Basis Data juga bisa diartikan sebagai gabungan antara dua unsur, yaitu basis data dan sistem manajemen basis data. Berikut Komponen-komponen dalam sistem basis data :
- Hardware(Perangkat Keras).
- Operating System(Sistem Operasi).
- Database(Basis Data).
- Database Management System(Sistem Manajemen Basis Data).
- User(Pemakai).
- Aplication(Perangkat Lunak).
Komponen SBD
KOMPONEN SISTEM BASIS DATA
1. Data
Disimpan secara terintegrasi, artinya basis data merupakan gabungan dari berbagai macam file aplikasi yang berbeda yang disusun dengan menghilangkan bagian-bagian yang rangkap. Sebagai alat penghubung digunakan kunci (key). Dipakai secara bersama-sama, artinya masing-masing bagian dari suatu data dapat digunakan atau diakses bersama-sama dalam waktu yang bersamaan oleh pemakai untuk aplikasi yang berbeda.
2. Perangkat Keras
Mencakup peralatan atau perangkat computer yang digunakan untuk pengelolaan sistem basis data.
3. Perangkat Lunak
Sebagai penghubung antara pengguna dan basis data.
4. Pengguna
Dibagi menjadi 4 kategori :
a. System Engineer
Tenaga ahli yang bertanggung jawab atas pemasangan sistem basis data, dan juga mengadakan peningkatan dan melaporkan kesalahan dari sistem tersebut.
b. Database Administrator (DBA)
Tenaga ahli yang mempunyai tugas untuk mengontrol sistem basis data secara keseluruhan, meramalkan kebutuhan akan sistem basis data, merencanakannya dan mengaturnya.
c. Programmer
Pengguna yang berinteraksi dengan basis data melalui Data Manipulation Language (DML), yang disertakan dalam program yang ditulis dalam bahasa pemrograman induk (seperti C, Pascal, Cobol, dan lain-lain).
d. Pengguna Akhir
• Casual User (pengguna mahir)
Pengguna yang berinteraksi dengan sistem tanpa menulis modul program.
• End User (pemakai umum)
Pengguna yang berinteraksi dengan sistem basis data melalui pemanggilan satu program aplikasi permanen yang telah ditulis atau disediakan sebelumnya.
• Specialized / sophisticated User (pengguna khusus)
Pengguna yang menulis aplikasi basis data non-konvensional, tetapi untuk keperluan-keperluan khusus seperti aplikasi Pengolahan Citra, Sistem Pakar.
Keuntungan dan Kelemahan SBD
Keuntungan Sistem Basis Data
1.Data dapat digunakan secara bersama- sama
2.Data dapat distandarisasi
3.Mengurangi kerangkapan data
4.Kemandirian data
5.Keamanan data dapat dijaga
6.Integritas data dapat dipertahankan
7.Menyediakan recovery
8.Mencegah ketidakkonsistenan
Kelemahan Sistem Basis Data
1.Storage yang digunakan menjadi besar
2.Dibutuhkan tenaga yang terampil dalam mengelola data
3.Perangkat lunaknya mahal (DBMS)
4.Kerusakan pada sistem basis data dapat mempengaruhi departemen yang terkait
5.Deadlock
Jenis-Jenis Basis Data
JENIS-JENIS BASIS DATA
Basis data dibedakan menjadi empat jenis, yaitu :
1. Basis data individual
Basis data individual adalah basis data yang digunakan oleh perseorangan. Biasanya
basis data seperti ini banyak dijumpai dilingkungan PC. Visual dBASE, Corel Paradox, dan
Filemaker Pro merupakan contoh perangkat lunak yang biasa digunakan untuk mengelolabasi s
data untuk kepentingan pribadi.
2.Basis data perusahaan
Basis data perusahaan adalah basis data yang dimaksudkan untuk diakses oleh sejumlah pegawai dalam sebuah perusahaan dalam sebuah lokasi. Basis data seperti ini disimpan dalam sebuah server dan para pemakai dapat mengakses dari masing-masing komputer yang berkedudukan sebagaiclient.
3.Basis data terdistribusi
Basis data terdistribusi adalah basis data yang disimpan pada sejumlah komputer yang terletak pada beberapa lokasi. Model seperti ini banyak digunakan bank yang memiliki sejumlah cabang di pelbagai kota dan melayani transaksi perbankan yang bersifatonline.
4. Basis data publik
Basis data publik adalah basis data yang dapat diakses oleh siapa saja (publik). Sebagai contoh, banyak situs web (misalnya yahoo dan about.com) yang menyediakan data yang bersifat publik dan dapat diambil siapa saja secara gratis. Namun adakalanya seseorang harus menjadi anggota dan membayar iuran untuk memperoleh data publik. Pengertian DBMS (Database Management System) Database Management System adalah kumpulan perangkat lunak yang digunakan untuk menangani semua pengaksesan ke database. Mempunyai fasilitas membuat, mengakses, memanipulasi, dan memelihara database. Bertujuan untuk efisiensi dan kenyamanan dalam memperoleh & menyimpan informasi dalam database.
Langganan:
Postingan (Atom)