You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

181 lines
4.9 KiB

'''<summary>Applikations Parameter (verwaltet Programmeinstellungen für einzelne oder alle Benutzer in einer sql-tabelle)</summary>
'''um auf die parameter abzufragen bitte die klasse BF.Config verwenden. diese klasse cached die parameter.
Public Class Parameter
#Region "Member"
Private _parameterId As Integer
Private _benutzerNr As Integer
Private _name As String
Private _wert As String = ""
Private _datentyp As Datentyp
Private _beschreibung As String
Private _aktiv As Boolean
Private _mutiererId As Integer
Private _mutiertAm As DateTime
#End Region
#Region "Enums"
Public Enum Datentyp
[Integer] = 1
[String] = 2
[Boolean] = 3
End Enum
#End Region
#Region "Constructors"
Public Sub New()
End Sub
'''<summary>load the parameter for all users (benutzerNr=0)</summary>
'''<param name="parameterName">parameterName</param>
Public Sub New(ByVal parameterName As String)
ConstructorHelper(parameterName, 0)
End Sub
'''<summary>lädt einen parameter für einen bestimmten benutzer oder für alle</summary>
'''<param name="parameterName">parameterName</param>
'''<param name="benutzerNr">BenutzerNr oder 0 = gültig für alle benutzer</param>
Public Sub New(ByVal parameterName As String, ByVal benutzerNr As Integer)
ConstructorHelper(parameterName, benutzerNr)
End Sub
#End Region
#Region "Private Functions"
'''<summary>workaround für fehlendes konstruktor überladen</summary>
'''<param name="parameterName"></param>
'''<param name="benutzerNr"></param>
Private Sub ConstructorHelper(ByVal parameterName As String, ByVal benutzerNr As Integer)
Try
Dim ds As New DataSet()
DataAccess.Parameter.GetParameter(ds, benutzerNr, parameterName)
LoadData(ds)
Catch ex As Exception
TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.BF.Parameter.ConstructorHelper", ex.Message + " " + ex.StackTrace, TraceLevel.Error)
Throw ex
End Try
End Sub
'''<summary>lädt die daten in die klassen member</summary>
'''<param name="ds"></param>
Private Sub LoadData(ByVal ds As DataSet)
Try
If Not Common.Tools.ValidateDS(ds) Then
Return
End If
_parameterId = ds.Tables(0).Rows(0).Item("ParameterId")
_benutzerNr = ds.Tables(0).Rows(0).Item("BenutzerNr")
_name = ds.Tables(0).Rows(0).Item("Name")
_wert = ds.Tables(0).Rows(0).Item("Wert")
_datentyp = CType(ds.Tables(0).Rows(0).Item("Datentyp"), Datentyp)
_beschreibung = ds.Tables(0).Rows(0).Item("Beschreibung")
_aktiv = ds.Tables(0).Rows(0).Item("Aktiv")
_mutiererId = ds.Tables(0).Rows(0).Item("MutiererId")
_mutiertAm = ds.Tables(0).Rows(0).Item("MutiertAm")
Catch ex As Exception
TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.BF.Parameter.LoadData", ex.Message + " " + ex.StackTrace, TraceLevel.Error)
Throw ex
End Try
End Sub
#End Region
#Region "Properties"
Public Property ParameterId() As Integer
Get
Return _parameterId
End Get
Set(ByVal Value As Integer)
_parameterId = Value
End Set
End Property
Public Property BenutzerNr() As Integer
Get
Return _benutzerNr
End Get
Set(ByVal Value As Integer)
_benutzerNr = Value
End Set
End Property
Public Property Name() As String
Get
Return _name
End Get
Set(ByVal Value As String)
_name = Value
End Set
End Property
Public Property Wert() As String
Get
Return _wert
End Get
Set(ByVal Value As String)
_wert = Value
End Set
End Property
Public Property Typ() As Datentyp
Get
Return _datentyp
End Get
Set(ByVal Value As Datentyp)
_datentyp = Value
End Set
End Property
Public Property Beschreibung() As String
Get
Return _beschreibung
End Get
Set(ByVal Value As String)
_beschreibung = Value
End Set
End Property
Public Property Aktiv() As Boolean
Get
Return _aktiv
End Get
Set(ByVal Value As Boolean)
_aktiv = Value
End Set
End Property
Public Property MutiererId() As Integer
Get
Return _mutiererId
End Get
Set(ByVal Value As Integer)
_mutiererId = Value
End Set
End Property
Public Property MutiertAm() As DateTime
Get
Return _mutiertAm
End Get
Set(ByVal Value As DateTime)
_mutiertAm = Value
End Set
End Property
#End Region
End Class