Imports System.Data.OleDb
Imports System.Text.RegularExpressions
Public Class WORK
Private cnn As New OleDb.OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=" & Application.StartupPath & "\Datatest.mdb")
Private dtADI As New DataTable
Private da As New OleDb.OleDbDataAdapter("SELECT * FROM [DTQSO] ORDER BY [ID]", cnn)
Dim c As New OleDbCommandBuilder(da)
Private Sub Frmmain_Load(sender As Object, e As EventArgs) Handles MyBase.Load
RefreshData()
End Sub
Private Sub RefreshData()
dtADI.Clear()
da.Fill(dtADI)
Me.dgvData.DataSource = dtADI
End Sub
Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
If Me.IDQSO.Text.Trim = "" Then
dtADI.Rows.Add(Nothing, Me.opcall.Text.Trim, Me.rst_sent.Text.Trim)
Else
Dim row As DataRow = (From r As DataRow In dtADI.Rows Where r.Item("ID") = Me.IDQSO.Text.Trim).First
row.Item("opcall") = Me.opcall.Text
End If
da.Update(dtADI)
RefreshData()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim fd As OpenFileDialog = New OpenFileDialog()
fd.Filter = "ADI files (*.ADI)|*.ADI"
If fd.ShowDialog() = DialogResult.OK Then
Me.lblAttach.Text = fd.FileName
Dim txt As String = IO.File.ReadAllText(fd.FileName)
Dim ms As MatchCollection = Regex.Matches(txt, "(?=<CALL).+?(<EOR>)", RegexOptions.IgnoreCase)
For Each m As Match In ms
Dim colCALL As String = Regex.Match(m.Value, "(?<=<CALL.+?>).+?(?=<)", RegexOptions.IgnoreCase).Value
Dim colRST_SENT As String = Regex.Match(m.Value, "(?<=<RST_SENT.+?>).+?(?=<)", RegexOptions.IgnoreCase).Value
dtADI.Rows.Add(Nothing, colCALL.Trim, colRST_SENT.Trim)
Next
Dim c As New OleDbCommandBuilder(da)
da.Update(dtADI)
RefreshData()
End If
End Sub
End Class