Imports System.Data Imports System.Data.SqlClient '''Datenzugriff auf die Tabelle Parameter Public Class Parameter '''gibt einen einzelnen paramter zurück '''speicher für datenrückgabe ''' ''' Public Shared Sub GetParameter(ByRef ds As DataSet, ByVal benutzerNr As Integer, ByVal name As String) Dim sqlConn As New SqlConnection() Dim sqlCmd As New SqlCommand() Dim da As New SqlDataAdapter() Try sqlConn.ConnectionString = Common.Datenbank.GetDSN() sqlCmd.CommandText = "sp_GetParameter" sqlCmd.CommandType = CommandType.StoredProcedure sqlCmd.Connection = sqlConn sqlCmd.Parameters.Add(New SqlParameter("@BenutzerNr", benutzerNr)) sqlCmd.Parameters.Add(New SqlParameter("@Name", name)) da.SelectCommand = sqlCmd da.Fill(ds, "Parameter") Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.DA.Parameter.GetParameter", ex.Message + " " + ex.StackTrace, TraceLevel.Error) Throw ex Finally sqlConn.Dispose() sqlCmd.Dispose() da.Dispose() End Try End Sub '''gibt eine liste aller paramter zurück '''speicher für datenrückgabe '''1 nur aktive; 0 nur inaktive; -1 alle Public Shared Sub List(ByRef ds As DataSet, ByVal aktiv As Integer) Dim sqlConn As New SqlConnection() Dim sqlCmd As New SqlCommand() Dim da As New SqlDataAdapter() Try sqlConn.ConnectionString = Common.Datenbank.GetDSN() sqlCmd.CommandText = "sp_ListParameter" sqlCmd.CommandType = CommandType.StoredProcedure sqlCmd.Connection = sqlConn If aktiv <> -1 Then sqlCmd.Parameters.Add(New SqlParameter("@Aktiv", aktiv)) End If da.SelectCommand = sqlCmd da.Fill(ds, "Parameters") Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.DA.Parameter.List", ex.Message + " " + ex.StackTrace, TraceLevel.Error) Throw ex Finally sqlConn.Dispose() sqlCmd.Dispose() da.Dispose() End Try End Sub '''erstellt einen neuen parameter '''gibt den neuen primary key zurück ''' ''' ''' ''' ''' ''' ''' '''error Public Shared Function Add(ByRef parameterId As Integer, ByVal benutzerNr As Integer, ByVal name As String, ByVal wert As String, _ ByVal datentyp As Integer, ByVal beschreibung As String, ByVal aktiv As Boolean, ByVal mutiererId As Integer) As Integer Dim sqlConn As New SqlConnection() Dim sqlCmd As New SqlCommand() Try sqlConn.ConnectionString = Common.Datenbank.GetDSN() sqlCmd.CommandText = "sp_InsParameter" sqlCmd.CommandType = CommandType.StoredProcedure sqlCmd.Connection = sqlConn sqlCmd.Parameters.Add(New SqlParameter("@BenutzerNr", benutzerNr)) sqlCmd.Parameters.Add(New SqlParameter("@Name", name)) sqlCmd.Parameters.Add(New SqlParameter("@Wert", wert)) sqlCmd.Parameters.Add(New SqlParameter("@Datentyp", datentyp)) sqlCmd.Parameters.Add(New SqlParameter("@Beschreibung", beschreibung)) sqlCmd.Parameters.Add(New SqlParameter("@Aktiv", aktiv)) sqlCmd.Parameters.Add(New SqlParameter("@MutiererId", mutiererId)) sqlCmd.Parameters.Add(New SqlParameter("@ParameterId", 0)) sqlCmd.Parameters.Add(New SqlParameter("@Return", DBNull.Value)) sqlCmd.Parameters("@ParameterId").Direction = ParameterDirection.Output sqlCmd.Parameters("@Return").Direction = ParameterDirection.ReturnValue sqlConn.Open() sqlCmd.ExecuteNonQuery() If CInt(sqlCmd.Parameters("@Return").Value) <> 0 Then parameterId = CInt(sqlCmd.Parameters("@ParameterId").Value) End If Return CInt(sqlCmd.Parameters("@Return").Value) Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.DA.Parameter.Add", ex.Message + " " + ex.StackTrace, TraceLevel.Error) Throw ex Finally sqlConn.Dispose() sqlCmd.Dispose() End Try End Function '''löscht einen parameter ''' ''' '''error Public Shared Function Delete(ByVal benutzerNr As Integer, ByVal name As String) As Integer Dim sqlConn As New SqlConnection() Dim sqlCmd As New SqlCommand() Try sqlConn.ConnectionString = Common.Datenbank.GetDSN() sqlCmd.CommandText = "sp_DelParameter" sqlCmd.CommandType = CommandType.StoredProcedure sqlCmd.Connection = sqlConn sqlCmd.Parameters.Add(New SqlParameter("@BenutzerNr", benutzerNr)) sqlCmd.Parameters.Add(New SqlParameter("@Name", name)) sqlCmd.Parameters.Add(New SqlParameter("@Return", DBNull.Value)) sqlCmd.Parameters("@Return").Direction = ParameterDirection.ReturnValue sqlConn.Open() sqlCmd.ExecuteNonQuery() Return CInt(sqlCmd.Parameters("@Return").Value) Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.DA.Parameter.Delete", ex.Message + " " + ex.StackTrace, TraceLevel.Error) Throw ex Finally sqlConn.Dispose() sqlCmd.Dispose() End Try End Function '''aktualisiert einen paramter '''criterium (keine aktualisierung) '''criterium (keine aktualisierung) ''' ''' ''' ''' ''' '''error Public Shared Function Update(ByVal benutzerNr As Integer, ByVal name As String, ByVal wert As String, ByVal datentyp As Integer, _ ByVal beschreibung As String, ByVal aktiv As Boolean, ByVal mutiererId As Integer) As Integer Dim sqlConn As New SqlConnection() Dim sqlCmd As New SqlCommand() Try sqlConn.ConnectionString = Common.Datenbank.GetDSN() sqlCmd.CommandText = "sp_SetParameter" sqlCmd.CommandType = CommandType.StoredProcedure sqlCmd.Connection = sqlConn sqlCmd.Parameters.Add(New SqlParameter("@BenutzerNr", benutzerNr)) sqlCmd.Parameters.Add(New SqlParameter("@Name", name)) sqlCmd.Parameters.Add(New SqlParameter("@Wert", wert)) sqlCmd.Parameters.Add(New SqlParameter("@Datentyp", datentyp)) sqlCmd.Parameters.Add(New SqlParameter("@Beschreibung", beschreibung)) sqlCmd.Parameters.Add(New SqlParameter("@Aktiv", aktiv)) sqlCmd.Parameters.Add(New SqlParameter("@MutiererId", mutiererId)) sqlCmd.Parameters.Add(New SqlParameter("@Return", DBNull.Value)) sqlCmd.Parameters("@Return").Direction = ParameterDirection.ReturnValue sqlConn.Open() sqlCmd.ExecuteNonQuery() Return CInt(sqlCmd.Parameters("@Return").Value) Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.DA.Parameter.Update", ex.Message + " " + ex.StackTrace, TraceLevel.Error) Throw ex Finally sqlConn.Dispose() sqlCmd.Dispose() End Try End Function End Class