Tentunya anda pernah mendapatkan sebuah hasil report dari luar organisasi anda atau dari backend legacy anda yang menggunakan text file ascii sebagai sumber data-nya. Tetapi di dalam text file tersebut jika format-nya biasa saja misal terdiri dari header yang sudah lurus dengan kolom-nya atau menggunakan delimeted itu gak susah. Akan tetapi kalau report-nya bener-bener menggunakan header sama seperti ada judul report dsb yang tidak perlu diproses dalam hasil akhirnya, itu yang akan jadi masalah. Seperti contoh dokumen header seperti ini :

dan yang paling menyebalkan adalah footer-nya spt ini :
dan yang sangat menyebalkan lagi adalah data ini bisa ber-ulang kali sampai lebih dari 1 page :(.
Ide-nya adalah gimana cara menghilangkan baris header dan footer kemudian hasil-nya di-save as menjadi sebuah text file yang lebih manusiawi..
So.. ini yang saya lakukan :
1. Buat DTS package SQL 2000 dengan menggunakan beberapa komponen seperti gambar berikut :
Active Script Task yang pertama isi-nya spt ini :
'**********************************************************************
' Visual Basic ActiveX Script
'************************************************************************
Function Main()
Dim iCount
Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")
Dim fl
Dim fl2
Set fl = fs.GetFile("D:\Doc\MyProj\xxxxxx\xxxx\tb080617-1.rpt")
Dim ts
Dim ts2
Set ts2 = fs.CreateTextFile("D:\Doc\MyProj\xxxx\xxxx\tb080617-2.rpt")
Set ts = fl.OpenAsTextStream(1)
Dim str
Do While Not ts.AtEndOfStream
iCount = iCount + 1
str = ts.readline
If LTrim(str) <> "" Then
If InStr(1, str, "BTN", 1) = 0 Then
If InStr(1, str, "RPT", 1) = 0 Then
If InStr(1, str, "BRANCH", 1) = 0 Then
If (Asc(Right(RTrim(LTrim(str)), 1)) >= 48) And (Asc(Right(RTrim(LTrim(str)), 1)) <= 57) Then
ts2.WriteLine (str)
End If
End If
End If
End If
End If
Loop
ts2.Close
Main = DTSTaskExecResult_Success
End Function
Kemudian dari hasil file output-nya sisa-nya di import dengan menggunakan proses data transformation standard di SQL 2000 DTS.
File-file yang bisa digunakan sebagai contoh sample files