Initial commit

This commit is contained in:
2020-10-21 10:44:38 +02:00
commit 039adbbadf
1125 changed files with 854026 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
Module Globals
Public Spaltendaten As New DataTable
Public sConnectionString As String
Public conn As New DB.clsConnectionProvider
Public ConnectionFileName As String = ""
Public Mitarbeiternr As Integer
Public TmpFilepath As String
End Module

View File

@@ -0,0 +1,432 @@
Imports System
Imports System.Data
Imports System.Data.SqlTypes
Imports System.Data.SqlClient
'*
' Object MyspaltenTitel
'
' Dieses Objekt liest die Daten aus der Tabelle Spalten und speichert diese in spaltendaten
' Die Daten werden für die Spaltenbezeichnung der C1Datagrids verwendet
'
' Autor: Stefan Hutter
' Datum: 2.12.2002
'*
Imports C1.Win.C1TrueDBGrid
Namespace Utils
Public Class Tabellenspalte
Private m_table As String
Private m_field As String
Private m_spaltenname As String
Private m_locked As Boolean
Private m_Width As Integer
Private m_Order As Integer
Private m_alsHacken As Boolean
Private m_tiptext As String
Private m_numberformat As String
Property ColWith() As Integer
Get
Return m_Width
End Get
Set(ByVal Value As Integer)
m_Width = Value
End Set
End Property
Property Order() As Integer
Get
Return m_Order
End Get
Set(ByVal Value As Integer)
m_Order = Value
End Set
End Property
Property Tabelle() As String
Get
Return m_table
End Get
Set(ByVal Value As String)
m_table = Value
End Set
End Property
Property Feld() As String
Get
Return m_field
End Get
Set(ByVal Value As String)
m_field = Value
End Set
End Property
Property spaltenname() As String
Get
Return m_spaltenname
End Get
Set(ByVal Value As String)
m_spaltenname = Value
End Set
End Property
Property locked() As Boolean
Get
Return m_locked
End Get
Set(ByVal Value As Boolean)
m_locked = Value
End Set
End Property
Property AlsHacken() As Boolean
Get
Return m_alsHacken
End Get
Set(ByVal Value As Boolean)
m_alsHacken = Value
End Set
End Property
Property TipText() As String
Get
Return m_tiptext
End Get
Set(ByVal Value As String)
m_tiptext = Value
End Set
End Property
Property Numberformat() As String
Get
Return m_numberformat
End Get
Set(ByVal value As String)
m_numberformat = value
End Set
End Property
Public Sub New()
End Sub
Public Sub New(ByRef daten As Object, ByRef tablename As String, ByRef ds As DataSet)
Spaltentitel_aktualisieren(daten, tablename, ds)
End Sub
Public Function getspalte()
Try
Dim myspalten As New MySpaltenTitel()
myspalten.getspalte(Me.Tabelle, Me.Feld, Me.spaltenname, Me.locked, Me.ColWith, Me.Order, Me.AlsHacken, Me.TipText, Me.Numberformat)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Function
Public Function Spaltentitel_aktualisieren(ByRef daten As Object, ByRef tablename As String, ByRef ds As DataSet)
Dim anzcols As Integer
Dim i As Integer
Dim s As String
anzcols = daten.Splits(0).DisplayColumns.Count
Me.Tabelle = tablename
For i = 0 To daten.Columns.Count - 1
s = daten.Columns(i).DataField
Me.Feld = s
Me.getspalte()
daten.Columns(i).Caption = Me.spaltenname
If Me.ColWith = 0 Then
daten.Splits(0).DisplayColumns(i).Width = 0
daten.Splits(0).DisplayColumns(i).Visible = False
Else
daten.Splits(0).DisplayColumns(i).Width = Me.ColWith
End If
If Me.locked Then
daten.Splits(0).DisplayColumns(i).Locked = True
End If
If Me.AlsHacken Then
daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox
End If
'Präsentation von aktiv
If LCase(daten.Columns(i).DataField) = "aktiv" Then
daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox
daten.Columns(i).ValueItems.DefaultItem = True
daten.Columns(i).DefaultValue = True
daten.Columns(i).FilterText = True
'Dim items As C1.Win.C1TrueDBGrid.ValueItems = daten.Columns("aktiv").ValueItems
'items.Values.Clear()
'items.Values.Add(New C1.Win.C1TrueDBGrid.ValueItem("False", False)) ' unchecked
'items.Values.Add(New C1.Win.C1TrueDBGrid.ValueItem("True", True)) ' checked
'items.Values.Add(New C1.Win.C1TrueDBGrid.ValueItem("", "INDETERMINATE")) ' indeterminate state
End If
Select Case LCase(daten.Columns(i).DataField)
Case "erstellt_am", "erstelltam"
daten.Columns(i).DefaultValue = Now
End Select
If daten.Columns(i).DataType.Name = "DateTime" Then
daten.Columns(i).NumberFormat = "dd.MM.yyyy HH:mm:ss"
End If
If Me.Numberformat <> "" Then
daten.columns(i).numberformat = Me.Numberformat
End If
Next
ColumnOrder(tablename, daten)
daten.HeadingStyle.WrapText = False
End Function
Public Function Spaltentitel_aktualisieren(ByRef daten As Object, ByRef tablename As String, ByRef dt As DataTable, Optional ByVal Aktiv_Spalte_True_Setzen As Boolean = True)
Dim anzcols As Integer
Dim i As Integer
Dim t As New DataTable()
Dim s As String
anzcols = daten.Splits(0).DisplayColumns.Count
t = dt
Me.Tabelle = tablename
For i = 0 To daten.Columns.Count - 1
s = daten.Columns(i).DataField
'If s = "ApplikationNr" Then
' MsgBox("Hallo")
'End If
Me.Feld = s
Me.getspalte()
daten.Columns(i).Caption = Me.spaltenname
If Me.ColWith = 0 Then
daten.Splits(0).DisplayColumns(i).Width = 0
daten.Splits(0).DisplayColumns(i).Visible = False
Else
daten.Splits(0).DisplayColumns(i).Width = Me.ColWith
End If
If Me.locked Then
daten.Splits(0).DisplayColumns(i).Locked = True
End If
If Me.AlsHacken Then
daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox
End If
'Präsentation von aktiv
If LCase(daten.Columns(i).DataField) = "aktiv" And Aktiv_Spalte_True_Setzen = True Then
daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox
daten.Columns(i).ValueItems.DefaultItem = True
daten.Columns(i).DefaultValue = True
daten.Columns(i).FilterText = True
End If
Select Case LCase(daten.Columns(i).DataField)
Case "erstellt_am", "erstelltam"
daten.Columns(i).DefaultValue = Now
End Select
If daten.Columns(i).DataType.Name = "DateTime" Then
daten.Columns(i).NumberFormat = "dd.MM.yyyy HH:mm:ss"
End If
If Me.Numberformat <> "" Then
daten.columns(i).numberformat = Me.Numberformat
End If
Next
ColumnOrder(tablename, daten)
daten.HeadingStyle.WrapText = False
End Function
Public Function Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(ByRef daten As Object, ByRef tablename As String, ByRef dt As DataTable, Optional ByVal Aktiv_Filter As String = "")
Dim anzcols As Integer
Dim i As Integer
Dim t As New DataTable()
Dim s As String
anzcols = daten.Splits(0).DisplayColumns.Count
t = dt
Me.Tabelle = tablename
For i = 0 To daten.Columns.Count - 1
s = daten.Columns(i).DataField
Me.Feld = s
Me.getspalte()
If Me.spaltenname = "" Then
daten.Splits(0).DisplayColumns(i).Width = 0
Else
daten.Columns(i).Caption = Me.spaltenname
If Me.ColWith = 0 Then
daten.Splits(0).DisplayColumns(i).Width = 0
daten.Splits(0).DisplayColumns(i).Visible = False
Else
daten.Splits(0).DisplayColumns(i).Width = Me.ColWith
End If
If Me.locked Then
daten.Splits(0).DisplayColumns(i).Locked = True
End If
If Me.AlsHacken Then
daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox
End If
'Präsentation von aktiv
If LCase(daten.Columns(i).DataField) = "aktiv" And Aktiv_Filter <> "" Then
daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox
daten.Columns(i).ValueItems.DefaultItem = True
daten.Columns(i).DefaultValue = True
daten.Columns(i).FilterText = Aktiv_Filter
End If
Select Case LCase(daten.Columns(i).DataField)
Case "erstellt_am", "erstelltam"
daten.Columns(i).DefaultValue = Now
End Select
If daten.Columns(i).DataType.Name = "DateTime" Then
daten.Columns(i).NumberFormat = "dd.MM.yyyy HH:mm:ss"
End If
If Me.Numberformat <> "" Then
daten.columns(i).numberformat = Me.Numberformat
End If
End If
Next
ColumnOrder(tablename, daten)
daten.HeadingStyle.WrapText = False
End Function
''' <summary>
''' Sortierung der in der DB-Tabelle Spalaten festgelegten Reihenfolge
''' </summary>
''' <param name="Tablename"></param>
''' <param name="Data"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Function ColumnOrder(ByVal Tablename As String, ByRef Data As C1TrueDBGrid)
Dim spaltendata As DataTable = Globals.Spaltendaten
Dim dv() As DataRow
Dim dr As DataRow
Dim dc As New Collection
dv = spaltendata.Select("Tabelle='" & Tablename & "'", "Reihenfolge desc, Eintragnr")
For Each c As C1DisplayColumn In Data.Splits(0).DisplayColumns
dc.Add(c)
Next
While Data.Splits(0).DisplayColumns.Count > 0
Data.Splits(0).DisplayColumns.RemoveAt(0)
End While
For Each dr In dv
For Each e As C1DisplayColumn In dc
If e.Name = dr.Item(3) Then
Data.Splits(0).DisplayColumns.Insert(0, e)
End If
Next
Next
End Function
End Class
Public Class MySpaltenTitel
Private spaltendata As DataTable = Globals.Spaltendaten
Sub New()
load_data()
End Sub
Sub dispose()
spaltendata.Dispose()
Me.dispose()
End Sub
Public Function getspalte(ByVal tabelle As String, ByVal feld As String, ByRef spaltenname As String, ByRef locked As Boolean, _
ByRef colwidth As Integer, ByRef order As Integer, ByRef alshacken As Boolean, ByRef tiptext As String, ByRef numberformat As String)
If spaltendata.Rows.Count = 0 Then load_data()
Dim dv() As DataRow
Dim dr As DataRow
dv = spaltendata.Select("Tabelle='" & tabelle & "' and tabellenspalte='" & feld & "'", "Reihenfolge, Eintragnr")
If dv.Length = 0 Then
spaltenname = ""
locked = True
colwidth = 0
order = 0
alshacken = False
tiptext = ""
numberformat = ""
End If
For Each dr In dv
spaltenname = dr.Item(3)
locked = dr.Item(4)
colwidth = dr.Item(6)
order = dr.Item(7)
alshacken = dr.Item(5)
tiptext = dr.Item(8)
numberformat = dr.Item(14).ToString
Next
'Dim i As Integer
'For i = 0 To spaltendata.Rows.Count - 1
' If UCase(spaltendata.Rows(i).Item(1)) = UCase(tabelle) And UCase(spaltendata.Rows(i).Item(2)) = UCase(feld) Then
' spaltenname = spaltendata.Rows(i).Item(3)
' locked = spaltendata.Rows(i).Item(4)
' colwidth = spaltendata.Rows(i).Item(6)
' order = spaltendata.Rows(i).Item(7)
' alshacken = spaltendata.Rows(i).Item(5)
' tiptext = spaltendata.Rows(i).Item(8)
' Exit Function
' End If
'Next
End Function
Public Sub load_data()
If Me.spaltendata.Rows.Count > 0 Then Exit Sub
Dim spalten As New Utils.clsSpalten()
spaltendata.Rows.Clear()
spalten.cpMainConnectionProvider = conn
spaltendata = spalten.Select_All_Aktiv
Globals.Spaltendaten = spaltendata
End Sub
End Class
Public Class clsSpalten
Inherits DB.clsSpalten
''' <summary>
''' Purpose: SelectAll method. This method will Select all rows from the table.
''' </summary>
''' <returns>DataTable object if succeeded, otherwise an Exception is thrown. </returns>
''' <remarks>
''' Properties set after a succesful call of this method:
''' <UL>
''' <LI>iErrorCode</LI>
'''</UL>
''' </remarks>
Public Function Select_All_Aktiv() As DataTable
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.[pr_spalten_SelectAll_Aktiv]"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = New DataTable("spalten")
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(0)) Then
' // Throw error.
Throw New Exception("Stored Procedure 'pr_spalten_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("clsSpalten::SelectAll::Error occured.", ex)
Finally
If m_bMainConnectionIsCreatedLocal Then
' // Close connection.
m_scoMainConnection.Close()
End If
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
End Try
End Function
End Class
End Namespace

View File

@@ -0,0 +1,491 @@
Imports System
Imports System.Data
Imports System.Data.SqlTypes
Imports System.Data.SqlClient
Namespace TKB.VV.Sysadmin
Public Class DomainTable
#Region "Deklarationen"
Dim UpdateCommand As New SqlCommand
Dim InsertCommand As New SqlCommand
Dim selectcommand As New SqlCommand
Dim BaseData As New DataSet
Dim connection As New SqlConnection()
Dim da As New SqlDataAdapter("", connection)
Dim m_tablename As String
Property Tablename() As String
Get
Return m_tablename
End Get
Set(ByVal value As String)
m_tablename = value
End Set
End Property
Dim m_selectproc As String
Property Select_Proc() As String
Get
Return "pr_" & Tablename & "_selectall"
End Get
Set(ByVal value As String)
m_selectproc = "pr_" & Tablename & "_selectall"
End Set
End Property
Property Update_Proc() As String
Get
Return "pr_" & Tablename & "_Update"
End Get
Set(ByVal value As String)
m_selectproc = "pr_" & Tablename & "_Update"
End Set
End Property
Property Insert_Proc() As String
Get
Return "pr_" & Tablename & "_Insert"
End Get
Set(ByVal value As String)
m_selectproc = "pr_" & Tablename & "_Update"
End Set
End Property
Property Select_Proc_Bottomtable() As String
Get
Return "pr_" & Tablename & "_selectall_bottomtable"
End Get
Set(ByVal value As String)
m_selectproc = "pr_" & Tablename & "_selectall_bottomtable"
End Set
End Property
Property Select_Proc_Bottomtable2() As String
Get
Return "pr_" & Tablename & "_selectall_bottomtable2"
End Get
Set(ByVal value As String)
m_selectproc = "pr_" & Tablename & "_selectall_bottomtable2"
End Set
End Property
Property Update_Proc_Bottomtable() As String
Get
Return "pr_" & Tablename & "_Update_bottomtable"
End Get
Set(ByVal value As String)
m_selectproc = "pr_" & Tablename & "_Update_bottomtable"
End Set
End Property
Property Insert_Proc_Bottomtable() As String
Get
Return "pr_" & Tablename & "_Insert_bottomtable"
End Get
Set(ByVal value As String)
m_selectproc = "pr_" & Tablename & "_Update_bottomtable"
End Set
End Property
Dim m_Tabledata As New DataSet
Property Tabledata() As DataSet
Get
Return m_Tabledata
End Get
Set(ByVal value As DataSet)
m_Tabledata = value
End Set
End Property
#End Region
''' <summary>
''' Tabellenname übernehmen und Daten ab DB laden
''' </summary>
''' <param name="tablename"></param>
''' <remarks></remarks>
Sub New(ByVal tablename As String, Optional ByVal Fokus As Integer = 0, Optional ByVal Keyvalue As String = "")
Me.Tablename = tablename
If Keyvalue = "" Then
Load_Data()
Else
Load_Bootom_Table(tablename, Fokus, Keyvalue)
End If
End Sub
Sub New(ByVal tablename As String, ByVal Fokus As Integer, ByVal Keyvalue As String, ByVal mitarbeiternr As Integer)
Me.Tablename = tablename
If Keyvalue = "" Then
Load_Data()
Else
Load_Data_MA_Fokus(tablename, Fokus, Keyvalue, mitarbeiternr)
End If
End Sub
Sub New(ByVal tablename As String, ByVal keyvalue As String, ByVal mitarbeiternr As Integer)
Me.Tablename = tablename
Load_Data_MA(tablename, keyvalue, mitarbeiternr)
End Sub
Sub New(ByVal tablename As String, ByVal Focus As Integer, ByVal keyvalue As String, ByVal mitarbeiternr As Integer, ByVal Key2 As String)
Me.Tablename = tablename
Load_Data_2Key(tablename, keyvalue, mitarbeiternr, Key2)
End Sub
Public Sub Load_Data_MA(ByVal tablename As String, ByVal KeyValue As String, ByVal mitarbeiternr As Integer)
Tabledata.Tables.Clear()
Dim sqlcmd As New SqlCommand
sqlcmd.CommandText = Me.Select_Proc_Bottomtable
sqlcmd.Parameters.Add("@iErrorCode", SqlDbType.Int, 4)
sqlcmd.Parameters.Add("@Fokus", SqlDbType.Int, 4)
sqlcmd.Parameters.Add("@KeyValue", SqlDbType.VarChar, 255)
sqlcmd.Parameters.Add("@mitarbeiternr", SqlDbType.VarChar, 255)
sqlcmd.Parameters(0).Value = 0
sqlcmd.Parameters(1).Value = 0
sqlcmd.Parameters(2).Value = KeyValue
sqlcmd.Parameters(3).Value = Globals.Mitarbeiternr
sqlcmd.CommandType = CommandType.StoredProcedure
sqlcmd.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = sqlcmd
da.Fill(Tabledata, "Domaintable")
Catch ex As Exception
Finally
connection.Close()
da.Dispose()
sqlcmd.Dispose()
End Try
End Sub
Public Sub Load_Data_2Key(ByVal tablename As String, ByVal KeyValue As String, ByVal mitarbeiternr As Integer, ByVal KeyValue2 As String)
Tabledata.Tables.Clear()
Dim sqlcmd As New SqlCommand
sqlcmd.CommandText = Me.Select_Proc_Bottomtable2
sqlcmd.Parameters.Add("@iErrorCode", SqlDbType.Int, 4)
sqlcmd.Parameters.Add("@Fokus", SqlDbType.Int, 4)
sqlcmd.Parameters.Add("@KeyValue", SqlDbType.VarChar, 255)
sqlcmd.Parameters.Add("@KeyValue2", SqlDbType.VarChar, 255)
sqlcmd.Parameters.Add("@mitarbeiternr", SqlDbType.VarChar, 255)
sqlcmd.Parameters(0).Value = 0
sqlcmd.Parameters(1).Value = 0
sqlcmd.Parameters(2).Value = KeyValue
sqlcmd.Parameters(3).Value = KeyValue2
sqlcmd.Parameters(4).Value = Globals.Mitarbeiternr
sqlcmd.CommandType = CommandType.StoredProcedure
sqlcmd.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = sqlcmd
da.Fill(Tabledata, "Domaintable")
Catch ex As Exception
Finally
connection.Close()
da.Dispose()
sqlcmd.Dispose()
End Try
End Sub
Public Sub Load_Data_MA_Fokus(ByVal tablename As String, ByVal Fokus As Integer, ByVal KeyValue As String, ByVal mitarbeiternr As Integer)
Tabledata.Tables.Clear()
Dim sqlcmd As New SqlCommand
sqlcmd.CommandText = Me.Select_Proc_Bottomtable
sqlcmd.Parameters.Add("@iErrorCode", SqlDbType.Int, 4)
sqlcmd.Parameters.Add("@Fokus", SqlDbType.Int, 4)
sqlcmd.Parameters.Add("@KeyValue", SqlDbType.VarChar, 255)
sqlcmd.Parameters.Add("@mitarbeiternr", SqlDbType.VarChar, 255)
sqlcmd.Parameters(0).Value = 0
sqlcmd.Parameters(1).Value = Fokus
sqlcmd.Parameters(2).Value = KeyValue
sqlcmd.Parameters(3).Value = Globals.Mitarbeiternr
sqlcmd.CommandType = CommandType.StoredProcedure
sqlcmd.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = sqlcmd
da.Fill(Tabledata, "Domaintable")
Catch ex As Exception
Finally
connection.Close()
da.Dispose()
sqlcmd.Dispose()
End Try
End Sub
'Sub New()
'End Sub
''' <summary>
''' Daten ab Datenbank laden
''' </summary>
''' <remarks></remarks>
Public Overridable Sub Load_Data()
Tabledata.Tables.Clear()
selectcommand.CommandText = Me.Select_Proc
selectcommand.Parameters.Add("@iErrorCode", SqlDbType.Int, 4)
selectcommand.Parameters(0).Value = 0
selectcommand.CommandType = CommandType.StoredProcedure
selectcommand.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = selectcommand
da.Fill(Tabledata, "Domaintable")
Catch ex As Exception
Finally
connection.Close()
da.Dispose()
selectcommand.Dispose()
End Try
End Sub
''' <summary>
''' Basis-Datentabelle laden. Diese wird für die dynamische Generierung der Insert- und Update-Statements benötigt
''' </summary>
''' <remarks></remarks>
Private Sub Load_BaseData()
BaseData.Tables.Clear()
Dim sqlcmd As New SqlCommand
sqlcmd.CommandText = Me.Select_Proc
sqlcmd.Parameters.Add("@iErrorCode", SqlDbType.Int, 4)
sqlcmd.Parameters(0).Value = 0
sqlcmd.CommandType = CommandType.StoredProcedure
sqlcmd.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = sqlcmd
da.Fill(BaseData, "Basedata")
Catch ex As Exception
Finally
connection.Close()
da.Dispose()
sqlcmd.Dispose()
End Try
End Sub
''' <summary>
''' Update-Statement dynamisch für das UpdateCommand generieren
''' </summary>
''' <remarks></remarks>
Private Sub Generate_Update_Statement()
Dim col As DataColumn
Dim col1 As DataColumn
Dim UseCol As Boolean = False
UpdateCommand.CommandText = Me.Update_Proc
UpdateCommand.CommandType = System.Data.CommandType.StoredProcedure
UpdateCommand.Connection = connection
UpdateCommand.Parameters.Clear()
For Each col In Me.Tabledata.Tables(0).Columns
UseCol = False
For Each col1 In Me.BaseData.Tables(0).Columns
If col.ColumnName = col1.ColumnName Then
UseCol = True
Exit For
End If
Next
If UseCol Then UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter(Get_Prefix(col) & col.ColumnName, Get_SqlDBType(col), Get_Data_Fieldlen(col), col.ColumnName))
Next
UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@iErrorcode", SqlDbType.Int, 4))
UpdateCommand.Parameters("@iErrorcode").Value = 0
da.UpdateCommand = UpdateCommand
End Sub
''' <summary>
''' Insert-Statement dynamisch für das InsertCommand generieren
''' </summary>
''' <remarks></remarks>
Private Sub Generate_Insert_Statement()
Dim col As DataColumn
Dim col1 As DataColumn
Dim UseCol As Boolean = False
InsertCommand.CommandText = Me.Insert_Proc
InsertCommand.CommandType = System.Data.CommandType.StoredProcedure
InsertCommand.Connection = connection
InsertCommand.Parameters.Clear()
For Each col In Me.Tabledata.Tables(0).Columns
UseCol = False
For Each col1 In Me.BaseData.Tables(0).Columns
If col.ColumnName = col1.ColumnName Then
UseCol = True
Exit For
End If
Next
If UseCol Then InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter(Get_Prefix(col) & col.ColumnName, Get_SqlDBType(col), Get_Data_Fieldlen(col), col.ColumnName))
Next
InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@iErrorcode", SqlDbType.Int, 4))
InsertCommand.Parameters("@iErrorcode").Value = 0
da.InsertCommand = InsertCommand
End Sub
''' <summary>
''' Prefixt für den SP-Übergabeparameter generieren
''' </summary>
''' <param name="col">Aktuelle Columnt</param>
''' <returns>Prefis für SP-Übergabeparameter</returns>
''' <remarks></remarks>
Private Function Get_Prefix(ByVal col As DataColumn) As String
If col.DataType.Name = "DateTime" Then Return "@da"
If col.DataType.Name = "Double" Then Return "@f"
Return "@" & col.DataType.Name.Substring(0, 1)
End Function
''' <summary>
''' SQL-DB-Type für den SP-Übergabeparameter festlegen
''' </summary>
''' <param name="col">Aktuelle Column</param>
''' <returns>SQLDBType</returns>
''' <remarks></remarks>
Private Function Get_SqlDBType(ByVal col As DataColumn) As SqlDbType
If col.DataType.Name = "Integer" Then Return SqlDbType.Int
If col.DataType.Name = "Int32" Then Return SqlDbType.Int
If col.DataType.Name = "String" Then Return SqlDbType.VarChar
If col.DataType.Name = "Boolean" Then Return SqlDbType.Bit
If col.DataType.Name = "DateTime" Then Return SqlDbType.DateTime
If col.DataType.Name = "Double" Then Return SqlDbType.Float
MsgBox(col.DataType.Name)
End Function
''' <summary>
''' Feldlänge für den SP-Übergabeparemter festlegen
''' </summary>
''' <param name="col">Aktulle Column</param>
''' <returns>Feldlänge</returns>
''' <remarks></remarks>
Private Function Get_Data_Fieldlen(ByVal col As DataColumn) As Integer
Return col.MaxLength
End Function
''' <summary>
''' Datesichern. Dabei wird das Update- sowie das Insert-Statement dynamisch generiert
''' </summary>
''' <remarks></remarks>
Public Sub Save_Data()
Load_BaseData()
Generate_Update_Statement()
Generate_Insert_Statement()
Try
da.Update(Me.Tabledata, Me.Tabledata.Tables(0).TableName)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
''' <summary>
''' Dispose von Tabledata
''' </summary>
''' <remarks></remarks>
Public Sub dispose()
Me.Tabledata.Dispose()
End Sub
#Region "Verknüpfungseditor"
''' <summary>
''' Load der Verbindungstabelle
''' </summary>
''' <param name="tablename"></param>
''' <param name="Fokus"></param>
''' <param name="KeyValue"></param>
''' <remarks></remarks>
Public Sub Load_Bootom_Table(ByVal tablename As String, ByVal Fokus As Integer, ByVal KeyValue As String)
Tabledata.Tables.Clear()
Dim sqlcmd As New SqlCommand
sqlcmd.CommandText = Me.Select_Proc_bottomtable
sqlcmd.Parameters.Add("@iErrorCode", SqlDbType.Int, 4)
sqlcmd.Parameters.Add("@Fokus", SqlDbType.Int, 4)
sqlcmd.Parameters.Add("@KeyValue", SqlDbType.VarChar, 255)
sqlcmd.Parameters(0).Value = 0
sqlcmd.Parameters(1).Value = Fokus
sqlcmd.Parameters(2).Value = KeyValue
sqlcmd.CommandType = CommandType.StoredProcedure
sqlcmd.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = sqlcmd
da.Fill(Tabledata, "Domaintable")
Catch ex As Exception
Finally
connection.Close()
da.Dispose()
sqlcmd.Dispose()
End Try
End Sub
''' <summary>
''' Neuer Eintrag in der Tabelle eintragen. Sind neben den Defaultwerten weitere Attribute vorhanden, werde diese abhängig vom Datentype mit Defaultwerten befüllt.
''' </summary>
''' <param name="key1"></param>
''' <param name="keyvalue1"></param>
''' <param name="key2"></param>
''' <param name="keyvalue2"></param>
''' <remarks></remarks>
Public Sub Insert_Bottom_Table(ByVal key1 As String, ByVal keyvalue1 As Integer, ByVal key2 As String, ByVal keyvalue2 As String)
Dim dbkey As New db.clsMyKey_Tabelle
dbkey.cpMainConnectionProvider = Globals.conn
conn.OpenConnection()
Dim newkey As Integer = dbkey.get_dbkey(Me.Tablename)
conn.CloseConnection(True)
dbkey.Dispose()
Dim dr As DataRow
dr = Me.Tabledata.Tables(0).NewRow
dr.Item(0) = newkey
Dim i As Integer
For i = 1 To Me.Tabledata.Tables(0).Columns.Count - 1
Select Case UCase(Me.Tabledata.Tables(0).Columns(i).ColumnName)
Case "AKTIV"
dr.Item(i) = 1
Case "ERSTELLT_AM"
dr.Item(i) = Now
Case "MUTIERT_AM"
dr.Item(i) = Now
Case "MUTIERER"
dr.Item(i) = Globals.Mitarbeiternr
Case "MANDANTNR"
dr.Item(i) = Globals.Mitarbeiternr
Case "MANDANT"
dr.Item(i) = Globals.Mitarbeiternr
Case UCase(key1)
dr.Item(i) = keyvalue1
Case UCase(key2)
dr.Item(i) = keyvalue2
Case Else
Select Case Type.GetTypeCode(Me.Tabledata.Tables(0).Columns(i).DataType)
Case TypeCode.DateTime
dr.Item(i) = Now
Case TypeCode.Double
dr.Item(i) = 0
Case TypeCode.String
dr.Item(i) = ""
Case TypeCode.Int32
dr.Item(i) = 0
Case TypeCode.Boolean
dr.Item(i) = True
Case TypeCode.Int16
dr.Item(i) = 0
Case TypeCode.Int32
dr.Item(i) = 0
Case TypeCode.Int64
dr.Item(i) = 0
End Select
End Select
Next
Me.Tabledata.Tables(0).Rows.Add(dr)
End Sub
#End Region
End Class
End Namespace

View File

@@ -0,0 +1,630 @@
' ///////////////////////////////////////////////////////////////////////////
' // Description: Data Access class for the table 'spalten'
' // Generated by LLBLGen v1.21.2003.712 Final on: Dienstag, 1. Januar 2013, 13:15:45
' // Because the Base Class already implements IDispose, this class doesn't.
' ///////////////////////////////////////////////////////////////////////////
Imports System
Imports System.Data
Imports System.Data.SqlTypes
Imports System.Data.SqlClient
Namespace db
''' <summary>
''' Purpose: Data Access class for the table 'spalten'.
''' </summary>
Public Class clsSpalten
Inherits clsDBInteractionBase
#Region " Class Member Declarations "
Private m_bReadonly, m_bAlsHacken, m_bAktiv As SqlBoolean
Private m_daErstellt_am, m_daMutiert_am As SqlDateTime
Private m_iMandantnr, m_iMutierer, m_iReihenfolge, m_iEintragnr, m_iBreite As SqlInt32
Private m_sTabelle, m_sNumberFormat, m_sTiptext, m_sSpalte, m_sTabellenspalte As SqlString
#End Region
''' <summary>
''' Purpose: Class constructor.
''' </summary>
Public Sub New()
' // Nothing for now.
End Sub
''' <summary>
''' Purpose: Insert method. This method will insert one new row into the database.
''' </summary>
''' <returns>True if succeeded, otherwise an Exception is thrown. </returns>
''' <remarks>
''' Properties needed for this method:
''' <UL>
''' <LI>iEintragnr</LI>
''' <LI>sTabelle. May be SqlString.Null</LI>
''' <LI>sTabellenspalte. May be SqlString.Null</LI>
''' <LI>sSpalte. May be SqlString.Null</LI>
''' <LI>bReadonly</LI>
''' <LI>bAlsHacken</LI>
''' <LI>iBreite. May be SqlInt32.Null</LI>
''' <LI>iReihenfolge. May be SqlInt32.Null</LI>
''' <LI>sTiptext. May be SqlString.Null</LI>
''' <LI>bAktiv</LI>
''' <LI>daErstellt_am. May be SqlDateTime.Null</LI>
''' <LI>daMutiert_am. May be SqlDateTime.Null</LI>
''' <LI>iMutierer. May be SqlInt32.Null</LI>
''' <LI>iMandantnr. May be SqlInt32.Null</LI>
''' <LI>sNumberFormat. May be SqlString.Null</LI>
''' </UL>
''' Properties set after a succesful call of this method:
''' <UL>
''' <LI>iErrorCode</LI>
'''</UL>
''' </remarks>
Overrides Public Function Insert() As Boolean
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.[pr_spalten_Insert]"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
' // Use base class' connection object
scmCmdToExecute.Connection = m_scoMainConnection
Try
scmCmdToExecute.Parameters.Add(New SqlParameter("@ieintragnr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iEintragnr))
scmCmdToExecute.Parameters.Add(New SqlParameter("@stabelle", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTabelle))
scmCmdToExecute.Parameters.Add(New SqlParameter("@stabellenspalte", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTabellenspalte))
scmCmdToExecute.Parameters.Add(New SqlParameter("@sspalte", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSpalte))
scmCmdToExecute.Parameters.Add(New SqlParameter("@bReadonly", SqlDbType.Bit, 1, ParameterDirection.Input, False, 0, 0, "", DataRowVersion.Proposed, m_bReadonly))
scmCmdToExecute.Parameters.Add(New SqlParameter("@balsHacken", SqlDbType.Bit, 1, ParameterDirection.Input, False, 0, 0, "", DataRowVersion.Proposed, m_bAlsHacken))
scmCmdToExecute.Parameters.Add(New SqlParameter("@iBreite", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iBreite))
scmCmdToExecute.Parameters.Add(New SqlParameter("@iReihenfolge", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iReihenfolge))
scmCmdToExecute.Parameters.Add(New SqlParameter("@stiptext", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTiptext))
scmCmdToExecute.Parameters.Add(New SqlParameter("@baktiv", SqlDbType.Bit, 1, ParameterDirection.Input, False, 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("@imandantnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMandantnr))
scmCmdToExecute.Parameters.Add(New SqlParameter("@sNumberFormat", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sNumberFormat))
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_spalten_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("clsSpalten::Insert::Error occured.", ex)
Finally
If m_bMainConnectionIsCreatedLocal Then
' // Close connection.
m_scoMainConnection.Close()
End If
scmCmdToExecute.Dispose()
End Try
End Function
''' <summary>
''' Purpose: Update method. This method will Update one existing row in the database.
''' </summary>
''' <returns>True if succeeded, otherwise an Exception is thrown. </returns>
''' <remarks>
''' Properties needed for this method:
''' <UL>
''' <LI>iEintragnr</LI>
''' <LI>sTabelle. May be SqlString.Null</LI>
''' <LI>sTabellenspalte. May be SqlString.Null</LI>
''' <LI>sSpalte. May be SqlString.Null</LI>
''' <LI>bReadonly</LI>
''' <LI>bAlsHacken</LI>
''' <LI>iBreite. May be SqlInt32.Null</LI>
''' <LI>iReihenfolge. May be SqlInt32.Null</LI>
''' <LI>sTiptext. May be SqlString.Null</LI>
''' <LI>bAktiv</LI>
''' <LI>daErstellt_am. May be SqlDateTime.Null</LI>
''' <LI>daMutiert_am. May be SqlDateTime.Null</LI>
''' <LI>iMutierer. May be SqlInt32.Null</LI>
''' <LI>iMandantnr. May be SqlInt32.Null</LI>
''' <LI>sNumberFormat. May be SqlString.Null</LI>
''' </UL>
''' Properties set after a succesful call of this method:
''' <UL>
''' <LI>iErrorCode</LI>
'''</UL>
''' </remarks>
Overrides Public Function Update() As Boolean
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.[pr_spalten_Update]"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
' // Use base class' connection object
scmCmdToExecute.Connection = m_scoMainConnection
Try
scmCmdToExecute.Parameters.Add(New SqlParameter("@ieintragnr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iEintragnr))
scmCmdToExecute.Parameters.Add(New SqlParameter("@stabelle", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTabelle))
scmCmdToExecute.Parameters.Add(New SqlParameter("@stabellenspalte", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTabellenspalte))
scmCmdToExecute.Parameters.Add(New SqlParameter("@sspalte", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSpalte))
scmCmdToExecute.Parameters.Add(New SqlParameter("@bReadonly", SqlDbType.Bit, 1, ParameterDirection.Input, False, 0, 0, "", DataRowVersion.Proposed, m_bReadonly))
scmCmdToExecute.Parameters.Add(New SqlParameter("@balsHacken", SqlDbType.Bit, 1, ParameterDirection.Input, False, 0, 0, "", DataRowVersion.Proposed, m_bAlsHacken))
scmCmdToExecute.Parameters.Add(New SqlParameter("@iBreite", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iBreite))
scmCmdToExecute.Parameters.Add(New SqlParameter("@iReihenfolge", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iReihenfolge))
scmCmdToExecute.Parameters.Add(New SqlParameter("@stiptext", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTiptext))
scmCmdToExecute.Parameters.Add(New SqlParameter("@baktiv", SqlDbType.Bit, 1, ParameterDirection.Input, False, 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("@imandantnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMandantnr))
scmCmdToExecute.Parameters.Add(New SqlParameter("@sNumberFormat", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sNumberFormat))
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_spalten_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("clsSpalten::Update::Error occured.", ex)
Finally
If m_bMainConnectionIsCreatedLocal Then
' // Close connection.
m_scoMainConnection.Close()
End If
scmCmdToExecute.Dispose()
End Try
End Function
''' <summary>
''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key.
''' </summary>
''' <returns>True if succeeded, otherwise an Exception is thrown. </returns>
''' <remarks>
''' Properties needed for this method:
''' <UL>
''' <LI>iEintragnr</LI>
''' </UL>
''' Properties set after a succesful call of this method:
''' <UL>
''' <LI>iErrorCode</LI>
'''</UL>
''' </remarks>
Overrides Public Function Delete() As Boolean
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.[pr_spalten_Delete]"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
' // Use base class' connection object
scmCmdToExecute.Connection = m_scoMainConnection
Try
scmCmdToExecute.Parameters.Add(New SqlParameter("@ieintragnr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iEintragnr))
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_spalten_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("clsSpalten::Delete::Error occured.", ex)
Finally
If m_bMainConnectionIsCreatedLocal Then
' // Close connection.
m_scoMainConnection.Close()
End If
scmCmdToExecute.Dispose()
End Try
End Function
''' <summary>
''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key.
''' </summary>
''' <returns>DataTable object if succeeded, otherwise an Exception is thrown. </returns>
''' <remarks>
''' Properties needed for this method:
''' <UL>
''' <LI>iEintragnr</LI>
''' </UL>
''' Properties set after a succesful call of this method:
''' <UL>
''' <LI>iErrorCode</LI>
''' <LI>iEintragnr</LI>
''' <LI>sTabelle</LI>
''' <LI>sTabellenspalte</LI>
''' <LI>sSpalte</LI>
''' <LI>bReadonly</LI>
''' <LI>bAlsHacken</LI>
''' <LI>iBreite</LI>
''' <LI>iReihenfolge</LI>
''' <LI>sTiptext</LI>
''' <LI>bAktiv</LI>
''' <LI>daErstellt_am</LI>
''' <LI>daMutiert_am</LI>
''' <LI>iMutierer</LI>
''' <LI>iMandantnr</LI>
''' <LI>sNumberFormat</LI>
'''</UL>
''' Will fill all properties corresponding with a field in the table with the value of the row selected.
''' </remarks>
Overrides Public Function SelectOne() As DataTable
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.[pr_spalten_SelectOne]"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = new DataTable("spalten")
Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute)
' // Use base class' connection object
scmCmdToExecute.Connection = m_scoMainConnection
Try
scmCmdToExecute.Parameters.Add(new SqlParameter("@ieintragnr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iEintragnr))
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_spalten_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString())
End If
If dtToReturn.Rows.Count > 0 Then
m_iEintragnr = New SqlInt32(CType(dtToReturn.Rows(0)("eintragnr"), Integer))
If dtToReturn.Rows(0)("tabelle") Is System.DBNull.Value Then
m_sTabelle = SqlString.Null
Else
m_sTabelle = New SqlString(CType(dtToReturn.Rows(0)("tabelle"), String))
End If
If dtToReturn.Rows(0)("tabellenspalte") Is System.DBNull.Value Then
m_sTabellenspalte = SqlString.Null
Else
m_sTabellenspalte = New SqlString(CType(dtToReturn.Rows(0)("tabellenspalte"), String))
End If
If dtToReturn.Rows(0)("spalte") Is System.DBNull.Value Then
m_sSpalte = SqlString.Null
Else
m_sSpalte = New SqlString(CType(dtToReturn.Rows(0)("spalte"), String))
End If
m_bReadonly = New SqlBoolean(CType(dtToReturn.Rows(0)("Readonly"), Boolean))
m_bAlsHacken = New SqlBoolean(CType(dtToReturn.Rows(0)("alsHacken"), Boolean))
If dtToReturn.Rows(0)("Breite") Is System.DBNull.Value Then
m_iBreite = SqlInt32.Null
Else
m_iBreite = New SqlInt32(CType(dtToReturn.Rows(0)("Breite"), Integer))
End If
If dtToReturn.Rows(0)("Reihenfolge") Is System.DBNull.Value Then
m_iReihenfolge = SqlInt32.Null
Else
m_iReihenfolge = New SqlInt32(CType(dtToReturn.Rows(0)("Reihenfolge"), Integer))
End If
If dtToReturn.Rows(0)("tiptext") Is System.DBNull.Value Then
m_sTiptext = SqlString.Null
Else
m_sTiptext = New SqlString(CType(dtToReturn.Rows(0)("tiptext"), String))
End If
m_bAktiv = New SqlBoolean(CType(dtToReturn.Rows(0)("aktiv"), Boolean))
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)("mandantnr") Is System.DBNull.Value Then
m_iMandantnr = SqlInt32.Null
Else
m_iMandantnr = New SqlInt32(CType(dtToReturn.Rows(0)("mandantnr"), Integer))
End If
If dtToReturn.Rows(0)("NumberFormat") Is System.DBNull.Value Then
m_sNumberFormat = SqlString.Null
Else
m_sNumberFormat = New SqlString(CType(dtToReturn.Rows(0)("NumberFormat"), String))
End If
End If
Return dtToReturn
Catch ex As Exception
' // some error occured. Bubble it to caller and encapsulate Exception object
Throw New Exception("clsSpalten::SelectOne::Error occured.", ex)
Finally
If m_bMainConnectionIsCreatedLocal Then
' // Close connection.
m_scoMainConnection.Close()
End If
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
End Try
End Function
''' <summary>
''' Purpose: SelectAll method. This method will Select all rows from the table.
''' </summary>
''' <returns>DataTable object if succeeded, otherwise an Exception is thrown. </returns>
''' <remarks>
''' Properties set after a succesful call of this method:
''' <UL>
''' <LI>iErrorCode</LI>
'''</UL>
''' </remarks>
Overrides Public Function SelectAll() As DataTable
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.[pr_spalten_SelectAll]"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = new DataTable("spalten")
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_spalten_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("clsSpalten::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 [iEintragnr]() As SqlInt32
Get
Return m_iEintragnr
End Get
Set(ByVal Value As SqlInt32)
Dim iEintragnrTmp As SqlInt32 = Value
If iEintragnrTmp.IsNull Then
Throw New ArgumentOutOfRangeException("iEintragnr", "iEintragnr can't be NULL")
End If
m_iEintragnr = Value
End Set
End Property
Public Property [sTabelle]() As SqlString
Get
Return m_sTabelle
End Get
Set(ByVal Value As SqlString)
m_sTabelle = Value
End Set
End Property
Public Property [sTabellenspalte]() As SqlString
Get
Return m_sTabellenspalte
End Get
Set(ByVal Value As SqlString)
m_sTabellenspalte = Value
End Set
End Property
Public Property [sSpalte]() As SqlString
Get
Return m_sSpalte
End Get
Set(ByVal Value As SqlString)
m_sSpalte = Value
End Set
End Property
Public Property [bReadonly]() As SqlBoolean
Get
Return m_bReadonly
End Get
Set(ByVal Value As SqlBoolean)
Dim bReadonlyTmp As SqlBoolean = Value
If bReadonlyTmp.IsNull Then
Throw New ArgumentOutOfRangeException("bReadonly", "bReadonly can't be NULL")
End If
m_bReadonly = Value
End Set
End Property
Public Property [bAlsHacken]() As SqlBoolean
Get
Return m_bAlsHacken
End Get
Set(ByVal Value As SqlBoolean)
Dim bAlsHackenTmp As SqlBoolean = Value
If bAlsHackenTmp.IsNull Then
Throw New ArgumentOutOfRangeException("bAlsHacken", "bAlsHacken can't be NULL")
End If
m_bAlsHacken = Value
End Set
End Property
Public Property [iBreite]() As SqlInt32
Get
Return m_iBreite
End Get
Set(ByVal Value As SqlInt32)
m_iBreite = Value
End Set
End Property
Public Property [iReihenfolge]() As SqlInt32
Get
Return m_iReihenfolge
End Get
Set(ByVal Value As SqlInt32)
m_iReihenfolge = Value
End Set
End Property
Public Property [sTiptext]() As SqlString
Get
Return m_sTiptext
End Get
Set(ByVal Value As SqlString)
m_sTiptext = Value
End Set
End Property
Public Property [bAktiv]() As SqlBoolean
Get
Return m_bAktiv
End Get
Set(ByVal Value As SqlBoolean)
Dim bAktivTmp As SqlBoolean = Value
If bAktivTmp.IsNull Then
Throw New ArgumentOutOfRangeException("bAktiv", "bAktiv can't be NULL")
End If
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 [iMandantnr]() As SqlInt32
Get
Return m_iMandantnr
End Get
Set(ByVal Value As SqlInt32)
m_iMandantnr = Value
End Set
End Property
Public Property [sNumberFormat]() As SqlString
Get
Return m_sNumberFormat
End Get
Set(ByVal Value As SqlString)
m_sNumberFormat = Value
End Set
End Property
#End Region
End Class
End Namespace