Imports System.Data.SqlClient Imports System.Data.SqlTypes Namespace db Public Class Person Inherits db.clsPerson #Region "Deklarationen" Public daten As New DataTable Public Neuer_Datensatz As Boolean = False Dim mMutierer As String Property MutiererText() As String Get Return mMutierer End Get Set(ByVal value As String) mMutierer = value End Set End Property #End Region Sub New() End Sub Public Overloads Sub dispose() MyBase.Dispose() Try Catch End Try End Sub ''' ''' Mutierer auslesen ''' ''' ''' Public Function Get_Person(ByVal Nr As Integer) Me.cpMainConnectionProvider = Globals.conn Me.iPersonNr = New SqlInt32(CType(Nr, Int32)) Globals.conn.OpenConnection() Me.daten = Me.SelectOne() Globals.conn.CloseConnection(True) Try Catch ex As Exception End Try End Function Public Function Save_Data() As Integer Me.cpMainConnectionProvider = Globals.conn Me.iMutierer = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime)) Globals.conn.OpenConnection() Me.Update() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = False End Function Public Function Create_Copy(Optional ByVal Basenr As Integer = 0) As Integer If Basenr <> 0 Then Get_Person(Basenr) End If Dim db As New db.clsMyKey_Tabelle db.cpMainConnectionProvider = Globals.conn Dim newkey = db.get_dbkey("Person") db.Dispose() Me.cpMainConnectionProvider = Globals.conn Me.iPersonNr = New SqlInt32(CType(newkey, Int32)) Me.daErstellt_am = New SqlDateTime(CType(Now, DateTime)) Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime)) Me.iMutierer = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) Globals.conn.OpenConnection() Me.Insert() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = True Return newkey End Function ''' ''' Löschen eines Datensatzes erstellen. ''' ''' Ursprungs-Person: Ist dieser Wert nicht 0, werden die Daten mit BaseNr zuerst gelesen ''' ''' Public Function Delete_Thema(Optional ByVal Basenr As Integer = 0) As Integer If Basenr <> 0 Then Get_Person(Basenr) End If Me.cpMainConnectionProvider = Globals.conn Me.bAktiv = New SqlBoolean(CType(False, Boolean)) Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime)) Me.iMutierer = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) Globals.conn.OpenConnection() Me.Update() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = False End Function Public Overloads Function Delete(Optional ByVal Basenr As Integer = 0) As Integer If Basenr <> 0 Then Get_Person(Basenr) End If Me.cpMainConnectionProvider = Globals.conn Globals.conn.OpenConnection() MyBase.Delete() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = False End Function ''' ''' Neue Person einfügen ''' ''' ''' Public Function Add_New() As Integer Dim db As New db.clsMyKey_Tabelle db.cpMainConnectionProvider = Globals.conn Dim newkey = db.get_dbkey("Person") db.Dispose() Me.iPersonNr = New SqlInt32(CType(newkey, Int32)) Me.sName = New SqlString(CType("", String)) Me.sVorname = New SqlString(CType("", String)) Me.sFirma = New SqlString(CType("", String)) Me.sPlz = New SqlString(CType("", String)) Me.sOrt = New SqlString(CType("", String)) Me.sPostfach = New SqlString(CType("", String)) Me.sTelefax = New SqlString(CType("", String)) Me.sInternet = New SqlString(CType("", String)) Me.sEMail = New SqlString(CType("", String)) Me.sTelefon = New SqlString(CType("", String)) Me.bAktiv = New SqlBoolean(CType(True, Boolean)) Me.daErstellt_am = New SqlDateTime(CType(Now, DateTime)) Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime)) Me.iMutierer = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) Me.cpMainConnectionProvider = Globals.conn Globals.conn.OpenConnection() Me.Insert() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = True Return newkey End Function Public Function Get_Aktive_Personen() As DataTable Dim Eintragsdaten As New DataTable Dim connection As New SqlConnection() Dim da As New SqlDataAdapter("", connection) Eintragsdaten.Rows.Clear() Dim sqlcmd As New SqlCommand sqlcmd.CommandText = "sp_get_Aktive_Personen" sqlcmd.CommandType = CommandType.StoredProcedure sqlcmd.Connection = connection Try connection.ConnectionString = Globals.sConnectionString connection.Open() da.SelectCommand = sqlcmd da.Fill(Eintragsdaten) Catch ex As Exception Finally connection.Close() da.Dispose() sqlcmd.Dispose() End Try Return Eintragsdaten End Function Public Function Get_Aktive_Funktionen() As DataTable Dim Eintragsdaten As New DataTable Dim connection As New SqlConnection() Dim da As New SqlDataAdapter("", connection) Eintragsdaten.Rows.Clear() Dim sqlcmd As New SqlCommand sqlcmd.CommandText = "sp_get_Aktive_Funktionen" sqlcmd.CommandType = CommandType.StoredProcedure sqlcmd.Connection = connection Try connection.ConnectionString = Globals.sConnectionString connection.Open() da.SelectCommand = sqlcmd da.Fill(Eintragsdaten) Catch ex As Exception Finally connection.Close() da.Dispose() sqlcmd.Dispose() End Try Return Eintragsdaten End Function End Class Public Class ThemaPerson Inherits DB.clsThemaPerson Public daten As New DataTable Public Neuer_Datensatz As Boolean = False Public Function Get_ThemaPerson(ByVal Nr As Integer) Me.cpMainConnectionProvider = Globals.conn Me.iThemaPersonNr = New SqlInt32(CType(Nr, Int32)) Globals.conn.OpenConnection() Me.daten = Me.SelectOne() Globals.conn.CloseConnection(True) Try Catch ex As Exception End Try End Function Public Function Save_Data() As Integer Me.cpMainConnectionProvider = Globals.conn Me.iMutierer = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime)) Globals.conn.OpenConnection() Me.Update() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = False End Function Public Function Create_Copy(Optional ByVal Basenr As Integer = 0) As Integer If Basenr <> 0 Then Get_ThemaPerson(Basenr) End If Dim db As New DB.clsMyKey_Tabelle db.cpMainConnectionProvider = Globals.conn Dim newkey = db.get_dbkey("ThemaPerson") db.Dispose() Me.cpMainConnectionProvider = Globals.conn Me.iPersonNr = New SqlInt32(CType(newkey, Int32)) Me.daErstellt_am = New SqlDateTime(CType(Now, DateTime)) Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime)) Me.iMutierer = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) Globals.conn.OpenConnection() Me.Insert() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = True Return newkey End Function ''' ''' Löschen eines Datensatzes erstellen. ''' ''' Ursprungs-Person: Ist dieser Wert nicht 0, werden die Daten mit BaseNr zuerst gelesen ''' ''' Public Function Delete_Thema(Optional ByVal Basenr As Integer = 0) As Integer If Basenr <> 0 Then Get_ThemaPerson(Basenr) End If Me.cpMainConnectionProvider = Globals.conn Me.bAktiv = New SqlBoolean(CType(False, Boolean)) Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime)) Me.iMutierer = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) Globals.conn.OpenConnection() Me.Update() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = False End Function Public Overloads Function Delete(Optional ByVal Basenr As Integer = 0) As Integer If Basenr <> 0 Then Get_ThemaPerson(Basenr) End If Me.cpMainConnectionProvider = Globals.conn Globals.conn.OpenConnection() MyBase.Delete() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = False End Function ''' ''' Neue Person einfügen ''' ''' ''' Public Function Add_New(ThemaNr As Integer, Personnr As Integer, Funktionnr As Integer, bemerkung As String) As Integer Dim db As New DB.clsMyKey_Tabelle db.cpMainConnectionProvider = Globals.conn Dim newkey = db.get_dbkey("ThemaPerson") db.Dispose() Me.iThemaPersonNr = New SqlInt32(CType(newkey, Int32)) Me.iThemaNr = New SqlInt32(CType(ThemaNr, Int32)) Me.iPersonNr = New SqlInt32(CType(Personnr, Int32)) Me.iFunktionNr = New SqlInt32(CType(Funktionnr, Int32)) Me.sBemerkung = New SqlString(CType(bemerkung, String)) Me.bAktiv = New SqlBoolean(CType(True, Boolean)) Me.daErstellt_am = New SqlDateTime(CType(Now, DateTime)) Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime)) Me.iMutierer = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) Me.cpMainConnectionProvider = Globals.conn Globals.conn.OpenConnection() Me.Insert() Globals.conn.CloseConnection(True) Me.Neuer_Datensatz = True Return newkey End Function Public Function Get_Personen(ByVal ThemaNr As Integer) Dim Eintragsdaten As New DataTable Dim connection As New SqlConnection() Dim da As New SqlDataAdapter("", connection) Eintragsdaten.Rows.Clear() Dim sqlcmd As New SqlCommand sqlcmd.CommandText = "sp_get_Thema_Personen" sqlcmd.CommandType = CommandType.StoredProcedure sqlcmd.Connection = connection sqlcmd.Parameters.Add("@Themanr", SqlDbType.Int, 4) sqlcmd.Parameters(0).Value = ThemaNr Try connection.ConnectionString = Globals.sConnectionString connection.Open() da.SelectCommand = sqlcmd da.Fill(Eintragsdaten) Catch ex As Exception Finally connection.Close() da.Dispose() sqlcmd.Dispose() End Try Return Eintragsdaten End Function End Class End Namespace