Imports System Imports System.Data Imports System.Data.SqlTypes Imports System.Data.SqlClient Namespace db Public Class clsMassnahme Inherits clsDBInteractionBase #Region " Class Member Declarations " Private m_bAktiv As SqlBoolean Private m_daTermin, m_daMutiert_am, m_daZugewiesen, m_daErstellt_am As SqlDateTime Private m_iAktueller_Verantwortlicher, m_iVerantwortlichNr, m_iVerantwortungIsINr, m_iMassnahmeNr, m_iMutierer, m_iStatusNr, m_iMassnahmeplannr As SqlInt32 Private m_sMassnahmeResultat As SqlString #End Region Public Sub New() ' // Nothing for now. End Sub Overrides Public Function Insert() As Boolean Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[pr_Massnahme_Insert]" scmCmdToExecute.CommandType = CommandType.StoredProcedure ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@iMassnahmeplannr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMassnahmeplannr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iStatusNr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iStatusNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@sMassnahmeResultat", SqlDbType.VarChar, 4096, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sMassnahmeResultat)) scmCmdToExecute.Parameters.Add(New SqlParameter("@daTermin", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daTermin)) scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iVerantwortlichNr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iVerantwortlichNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iVerantwortungIsINr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iVerantwortungIsINr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iAktueller_Verantwortlicher", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAktueller_Verantwortlicher)) scmCmdToExecute.Parameters.Add(New SqlParameter("@daZugewiesen", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daZugewiesen)) scmCmdToExecute.Parameters.Add(new SqlParameter("@iMassnahmeNr", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iMassnahmeNr)) scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() m_iMassnahmeNr = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iMassnahmeNr").Value, Integer)) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_Massnahme_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return True Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsMassnahme::Insert::Error occured.", ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() End Try End Function Overrides Public Function Update() As Boolean Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[pr_Massnahme_Update]" scmCmdToExecute.CommandType = CommandType.StoredProcedure ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@iMassnahmeNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iMassnahmeNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iMassnahmeplannr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMassnahmeplannr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iStatusNr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iStatusNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@sMassnahmeResultat", SqlDbType.VarChar, 4096, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sMassnahmeResultat)) scmCmdToExecute.Parameters.Add(New SqlParameter("@daTermin", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daTermin)) scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iVerantwortlichNr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iVerantwortlichNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iVerantwortungIsINr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iVerantwortungIsINr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iAktueller_Verantwortlicher", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAktueller_Verantwortlicher)) scmCmdToExecute.Parameters.Add(New SqlParameter("@daZugewiesen", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daZugewiesen)) scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_Massnahme_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return True Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsMassnahme::Update::Error occured.", ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() End Try End Function Overrides Public Function Delete() As Boolean Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[pr_Massnahme_Delete]" scmCmdToExecute.CommandType = CommandType.StoredProcedure ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@iMassnahmeNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iMassnahmeNr)) scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_Massnahme_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return True Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsMassnahme::Delete::Error occured.", ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() End Try End Function Overrides Public Function SelectOne() As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[pr_Massnahme_SelectOne]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = new DataTable("Massnahme") Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(new SqlParameter("@iMassnahmeNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iMassnahmeNr)) scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_Massnahme_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) End If If dtToReturn.Rows.Count > 0 Then m_iMassnahmeNr = New SqlInt32(CType(dtToReturn.Rows(0)("MassnahmeNr"), Integer)) If dtToReturn.Rows(0)("Massnahmeplannr") Is System.DBNull.Value Then m_iMassnahmeplannr = SqlInt32.Null Else m_iMassnahmeplannr = New SqlInt32(CType(dtToReturn.Rows(0)("Massnahmeplannr"), Integer)) End If If dtToReturn.Rows(0)("StatusNr") Is System.DBNull.Value Then m_iStatusNr = SqlInt32.Null Else m_iStatusNr = New SqlInt32(CType(dtToReturn.Rows(0)("StatusNr"), Integer)) End If If dtToReturn.Rows(0)("MassnahmeResultat") Is System.DBNull.Value Then m_sMassnahmeResultat = SqlString.Null Else m_sMassnahmeResultat = New SqlString(CType(dtToReturn.Rows(0)("MassnahmeResultat"), String)) End If If dtToReturn.Rows(0)("Termin") Is System.DBNull.Value Then m_daTermin = SqlDateTime.Null Else m_daTermin = New SqlDateTime(CType(dtToReturn.Rows(0)("Termin"), Date)) End If If dtToReturn.Rows(0)("Aktiv") Is System.DBNull.Value Then m_bAktiv = SqlBoolean.Null Else m_bAktiv = New SqlBoolean(CType(dtToReturn.Rows(0)("Aktiv"), Boolean)) End If If dtToReturn.Rows(0)("Erstellt_am") Is System.DBNull.Value Then m_daErstellt_am = SqlDateTime.Null Else m_daErstellt_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Erstellt_am"), Date)) End If If dtToReturn.Rows(0)("Mutiert_am") Is System.DBNull.Value Then m_daMutiert_am = SqlDateTime.Null Else m_daMutiert_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Mutiert_am"), Date)) End If If dtToReturn.Rows(0)("Mutierer") Is System.DBNull.Value Then m_iMutierer = SqlInt32.Null Else m_iMutierer = New SqlInt32(CType(dtToReturn.Rows(0)("Mutierer"), Integer)) End If If dtToReturn.Rows(0)("VerantwortlichNr") Is System.DBNull.Value Then m_iVerantwortlichNr = SqlInt32.Null Else m_iVerantwortlichNr = New SqlInt32(CType(dtToReturn.Rows(0)("VerantwortlichNr"), Integer)) End If If dtToReturn.Rows(0)("VerantwortungIsINr") Is System.DBNull.Value Then m_iVerantwortungIsINr = SqlInt32.Null Else m_iVerantwortungIsINr = New SqlInt32(CType(dtToReturn.Rows(0)("VerantwortungIsINr"), Integer)) End If If dtToReturn.Rows(0)("Aktueller_Verantwortlicher") Is System.DBNull.Value Then m_iAktueller_Verantwortlicher = SqlInt32.Null Else m_iAktueller_Verantwortlicher = New SqlInt32(CType(dtToReturn.Rows(0)("Aktueller_Verantwortlicher"), Integer)) End If If dtToReturn.Rows(0)("Zugewiesen") Is System.DBNull.Value Then m_daZugewiesen = SqlDateTime.Null Else m_daZugewiesen = New SqlDateTime(CType(dtToReturn.Rows(0)("Zugewiesen"), Date)) End If End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsMassnahme::SelectOne::Error occured.", ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Overrides Public Function SelectAll() As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[pr_Massnahme_SelectAll]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = new DataTable("Massnahme") Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_Massnahme_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsMassnahme::SelectAll::Error occured.", ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function #Region " Class Property Declarations " Public Property [iMassnahmeNr]() As SqlInt32 Get Return m_iMassnahmeNr End Get Set(ByVal Value As SqlInt32) Dim iMassnahmeNrTmp As SqlInt32 = Value If iMassnahmeNrTmp.IsNull Then Throw New ArgumentOutOfRangeException("iMassnahmeNr", "iMassnahmeNr can't be NULL") End If m_iMassnahmeNr = Value End Set End Property Public Property [iMassnahmeplannr]() As SqlInt32 Get Return m_iMassnahmeplannr End Get Set(ByVal Value As SqlInt32) m_iMassnahmeplannr = Value End Set End Property Public Property [iStatusNr]() As SqlInt32 Get Return m_iStatusNr End Get Set(ByVal Value As SqlInt32) m_iStatusNr = Value End Set End Property Public Property [sMassnahmeResultat]() As SqlString Get Return m_sMassnahmeResultat End Get Set(ByVal Value As SqlString) m_sMassnahmeResultat = Value End Set End Property Public Property [daTermin]() As SqlDateTime Get Return m_daTermin End Get Set(ByVal Value As SqlDateTime) m_daTermin = Value End Set End Property Public Property [bAktiv]() As SqlBoolean Get Return m_bAktiv End Get Set(ByVal Value As SqlBoolean) m_bAktiv = Value End Set End Property Public Property [daErstellt_am]() As SqlDateTime Get Return m_daErstellt_am End Get Set(ByVal Value As SqlDateTime) m_daErstellt_am = Value End Set End Property Public Property [daMutiert_am]() As SqlDateTime Get Return m_daMutiert_am End Get Set(ByVal Value As SqlDateTime) m_daMutiert_am = Value End Set End Property Public Property [iMutierer]() As SqlInt32 Get Return m_iMutierer End Get Set(ByVal Value As SqlInt32) m_iMutierer = Value End Set End Property Public Property [iVerantwortlichNr]() As SqlInt32 Get Return m_iVerantwortlichNr End Get Set(ByVal Value As SqlInt32) m_iVerantwortlichNr = Value End Set End Property Public Property [iVerantwortungIsINr]() As SqlInt32 Get Return m_iVerantwortungIsINr End Get Set(ByVal Value As SqlInt32) m_iVerantwortungIsINr = Value End Set End Property Public Property [iAktueller_Verantwortlicher]() As SqlInt32 Get Return m_iAktueller_Verantwortlicher End Get Set(ByVal Value As SqlInt32) m_iAktueller_Verantwortlicher = Value End Set End Property Public Property [daZugewiesen]() As SqlDateTime Get Return m_daZugewiesen End Get Set(ByVal Value As SqlDateTime) m_daZugewiesen = Value End Set End Property #End Region End Class End Namespace