Belajar Rekayasa Perangkat Lunak: June 2012

Friday 29 June 2012

Import DBF to Ms.Access

Jika Anda awalnya membuat program for DOS dengan data menggunakan file DBF, dikemudian hari ingin migrate ke Access, Anda tidak perlu cemas dengan data-data sebelumnya.



Dengan source code dibawah ini Anda akan lebih mudah mengimport data-data file DBF ke Access.

Option Compare Database
Option Explicit

Private Sub cmdImport_Click()
Dim FullPath As String
Dim CurrentPath As String
Dim TableHRDExist As Boolean
Dim i As Integer

  On Error GoTo errorImport

  ' Ambil direktori beserta nama file database ini
  FullPath = CurrentDb.Name
  ' Ambil hanya direktorinya saja
  CurrentPath = Left$(FullPath, InStrRev(FullPath, "\", , vbBinaryCompare) - 1) & "\"
  ' Hapus table [Data HRD]
  CurrentDb.Execute "DROP TABLE [Data HRD];"

TransferDBF:
  ' Transfer file DataHRD.DBF to be table Data HRD
  DoCmd.TransferDatabase _
      acImport, "dBase III", CurrentPath, acTable, _
      "DataHRD.DBF", "Data HRD", False
  i = 0
  For i = 0 To CurrentDb.TableDefs.Count - 1
    If CurrentDb.TableDefs(i).Name = "Data HRD" Then
      TableHRDExist = True
    End If
  Next
  ' Jika table [Data HRD] tidak ada ulangi TransferDBF.
  ' Hal ini untuk mengecek berhasilkah transfer database?
  ' Biasanya transfer database tidak berhasil,
  '    sehingga harus dilakukan pengecekan
  If Not TableHRDExist Then
    GoTo TransferDBF
  End If
  MsgBox "Transfer file DBF telah berhasil.", , "Info"
Exit Sub
errorImport:
  Resume Next
End Sub
File DBF telah disertakan dalam paket download dibawah ini, nama file-nya adalah DataHRD.DBF, jika proses import telah berhasil, maka akan muncul tampilan seperti dibawah ini:

Proses import tsb akan menghasilkan satu table dengan nama Data HRD dengan beberapa record yang juga telah berhasil di import (lihat gambar dibawah).

Tools kecil ini semoga bisa memberikan manfaat.