Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
' Fires when the application is started
'Create and hold the Staff, Region and Office tables
Dim dt As New DataTable
db.Staff.Fill(dt)
Application("Staff") = dt
End Sub
Class db
Public Shared ReadOnly Property ConnectionString() As String
Get
Return "data source=BLS5test2;persist security info=False;initial catalog=HPT;integrated security = sspi"
End Get
End Property
Public Shared cnn As SqlConnection
Private m_connectionstring As String
Private m_commandtimeout As Integer = 60
Shared Sub New()
'If Not gapprunning Then Return
cnn = New SqlConnection(ConnectionString)
End Sub
Class Staff
Private Shared mda As SqlDataAdapter
Friend Shared Function Table(ByVal RegionID As Integer, ByVal OfficeID As Integer) As DataTable
Dim dt As New DataTable("Staff")
Fill(dt)
Return dt
End Function
Friend Shared Function Fill(ByVal dt As DataTable) As Integer
Return DataAdapter.Fill(dt)
End Function
Friend Shared Function Update(ByVal dt As DataTable) As Integer
Return DataAdapter.Update(dt)
End Function
Private Shared Function DataAdapter() As SqlDataAdapter
If Not mda Is Nothing Then Return mda
mda = New SqlDataAdapter
With mda
.SelectCommand = New SqlCommand
With .SelectCommand
.Connection = cnn
.CommandText = "select * from vw_HPTStaff"
'.CommandType = CommandType.StoredProcedure
End With
AddHandler .FillError, AddressOf Fill_Error
AddHandler .RowUpdated, New SqlRowUpdatedEventHandler(AddressOf DataAdapter_OnRowUpdated)
End With
Return mda
End Function
Private Shared Sub Fill_Error(ByVal sender As Object, ByVal e As FillErrorEventArgs)
If TypeOf e.Errors Is Data.ConstraintException Then e.Continue = True
End Sub
Private Shared Sub DataAdapter_OnRowUpdated(ByVal sender As Object, ByVal args As SqlRowUpdatedEventArgs)
Dim newID As Integer = 0
Dim idCMD As SqlCommand = New SqlCommand("SELECT @@IDENTITY", DataAdapter.UpdateCommand.Connection)
If args.StatementType = StatementType.Insert Then
Try
newID = CInt(idCMD.ExecuteScalar())
Catch ex As Exception
EH.Log(ex, EH.eErrorLogging.DisplayAndFile)
End Try
args.Row("ID") = newID
End If
End Sub
End Class