Home, Forum diskusi, Chatting, Download


Latihan 1

Judul : Pengaturan Program MultiUser dengan Pesimistik Locks

1. Aktifkan kembali Program Latihan 3 Modul 9

2. Ubah Recordset Type pada Data Kontrol RsForum menjadi Table

3. Lakukan koding pada Event Form_Load, sebagai berikut :

Private Sub Form_Load()
RsForum.Refresh
RsForum.Recordset.LockEdits = True	'Pesimistik Locks
End Sub

4. Lakukan perbaikan pada Event cmdEdit_Click, sebagai berikut :

Private Sub cmdEdit_Click()
On Error GoTo ErrcmdEdit_Click
Flag = flEdit
RsForum.Recordset.Edit
Call Kunci(False)
Call AturTombol(False, False, False, True, True)

CancelcmdEdit:
Exit Sub

ErrcmdEdit_Click:
Select Case Err
    'Data telah dihapus pemakai lain
    Case 3167
         MsgBox "Data telah dihapus pemakai lain" & vbCrLf & _
                "Lakukan refresh data anda !", vbOKOnly + vbInformation
    'Data Page (2 kb) telah dikunci oleh pemakai lain
    Case 3260
         nHitung = nHitung + 1
         'Memungkinkan pemakai membuat keputusan ulangi
         'Penguncian atau batal, maksimum 2 kali
         If nHitung > 2 Then
            nPilih = MsgBox("Ulangi penguncian ?", vbYesNo + _
                            vbQuestion)
            If nPilih = vbYes Then
               nHitung = 1
            Else
               Resume CancelcmdEdit
            End If
         End If
         DoEvents 'menjalankan event windows
         'menunda sejumlah waktu random
         nTunda = nHitung ^ 2 * Int(Rnd * 3000 + 1000)
         For i = 1 To nTunda: Next i
         Resume
    Case Else
         MsgBox "Error " & Err & ":" & Error, vbOKOnly
         Resume CancelcmdEdit
End Select
End Sub
4. Lakukan perbaikan pada Event cmdDelete_Click, sebagai berikut :
Private Sub cmdDelete_Click()
On Error GoTo ErrCmdDelete_Click
RsForum.Recordset.Delete
RsForum.Recordset.MoveNext
If RsForum.Recordset.EOF Then
   RsForum.Recordset.MoveLast
End If

CancelcmdDelete:
Exit Sub

ErrCmdDelete_Click:
Select Case Err.Number
    'Data telah kosong
    Case 3021
         MsgBox "Data telah kosong", vbOKOnly + vbInformation, "Warning"
    'Data Page (2 kb) telah dikunci oleh pemakai lain
    Case 3260
         MsgBox "Data dikunci user lain, hapus tidak dapat dilakukan !", vbOKOnly + vbInformation
         Resume CancelcmdDelete
    Case Else
         MsgBox "Error" & Err.Number & vbCrLf & Err.Description
End Select
End Sub

5. Simpan Project Anda, dan pada menu file pilih Make Project1.Exe, lakukan penyimpanan ke folder dimana Indoprog.mdb berada.

6. Jalankan Project1.exe (Pemakai 1)

7. Jalankan Project1.exe untuk kedua (Pemakai 2) kali tanpa menutup yang sebelumnya.

8. Lakukan berbagai aktifitas seperti tambah data, perbaiki data pada record yang sama, hapus data, dll. Perhatikan prilaku pada program anda pada lingkungan MultiUser.


Dibuat  oleh hendra@indoprog.com
Medan - Sumatera Utara
Indonesia
Member Of AdvertisingBanner.com
AdvertisingBanner.com