'------------------------------------------------------------------------------ ' ' Dieser Code wurde von einem Tool generiert. ' Laufzeitversion:4.0.30319.42000 ' ' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn ' der Code erneut generiert wird. ' '------------------------------------------------------------------------------ Option Strict Off Option Explicit On ''' '''Represents a strongly typed in-memory cache of data. ''' _ Partial Public Class DSClipboardWatcher Inherits Global.System.Data.DataSet Private tableVWCW_USER_PROFILE As VWCW_USER_PROFILEDataTable Private tableTBCW_PROFILES As TBCW_PROFILESDataTable Private _schemaSerializationMode As Global.System.Data.SchemaSerializationMode = Global.System.Data.SchemaSerializationMode.IncludeSchema _ Public Sub New() MyBase.New Me.BeginInit Me.InitClass Dim schemaChangedHandler As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged AddHandler MyBase.Tables.CollectionChanged, schemaChangedHandler AddHandler MyBase.Relations.CollectionChanged, schemaChangedHandler Me.EndInit End Sub _ Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext) MyBase.New(info, context, false) If (Me.IsBinarySerialized(info, context) = true) Then Me.InitVars(false) Dim schemaChangedHandler1 As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged AddHandler Me.Tables.CollectionChanged, schemaChangedHandler1 AddHandler Me.Relations.CollectionChanged, schemaChangedHandler1 Return End If Dim strSchema As String = CType(info.GetValue("XmlSchema", GetType(String)),String) If (Me.DetermineSchemaSerializationMode(info, context) = Global.System.Data.SchemaSerializationMode.IncludeSchema) Then Dim ds As Global.System.Data.DataSet = New Global.System.Data.DataSet() ds.ReadXmlSchema(New Global.System.Xml.XmlTextReader(New Global.System.IO.StringReader(strSchema))) If (Not (ds.Tables("VWCW_USER_PROFILE")) Is Nothing) Then MyBase.Tables.Add(New VWCW_USER_PROFILEDataTable(ds.Tables("VWCW_USER_PROFILE"))) End If If (Not (ds.Tables("TBCW_PROFILES")) Is Nothing) Then MyBase.Tables.Add(New TBCW_PROFILESDataTable(ds.Tables("TBCW_PROFILES"))) End If Me.DataSetName = ds.DataSetName Me.Prefix = ds.Prefix Me.Namespace = ds.Namespace Me.Locale = ds.Locale Me.CaseSensitive = ds.CaseSensitive Me.EnforceConstraints = ds.EnforceConstraints Me.Merge(ds, false, Global.System.Data.MissingSchemaAction.Add) Me.InitVars Else Me.ReadXmlSchema(New Global.System.Xml.XmlTextReader(New Global.System.IO.StringReader(strSchema))) End If Me.GetSerializationData(info, context) Dim schemaChangedHandler As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged AddHandler MyBase.Tables.CollectionChanged, schemaChangedHandler AddHandler Me.Relations.CollectionChanged, schemaChangedHandler End Sub _ Public ReadOnly Property VWCW_USER_PROFILE() As VWCW_USER_PROFILEDataTable Get Return Me.tableVWCW_USER_PROFILE End Get End Property _ Public ReadOnly Property TBCW_PROFILES() As TBCW_PROFILESDataTable Get Return Me.tableTBCW_PROFILES End Get End Property _ Public Overrides Property SchemaSerializationMode() As Global.System.Data.SchemaSerializationMode Get Return Me._schemaSerializationMode End Get Set Me._schemaSerializationMode = value End Set End Property _ Public Shadows ReadOnly Property Tables() As Global.System.Data.DataTableCollection Get Return MyBase.Tables End Get End Property _ Public Shadows ReadOnly Property Relations() As Global.System.Data.DataRelationCollection Get Return MyBase.Relations End Get End Property _ Protected Overrides Sub InitializeDerivedDataSet() Me.BeginInit Me.InitClass Me.EndInit End Sub _ Public Overrides Function Clone() As Global.System.Data.DataSet Dim cln As DSClipboardWatcher = CType(MyBase.Clone,DSClipboardWatcher) cln.InitVars cln.SchemaSerializationMode = Me.SchemaSerializationMode Return cln End Function _ Protected Overrides Function ShouldSerializeTables() As Boolean Return false End Function _ Protected Overrides Function ShouldSerializeRelations() As Boolean Return false End Function _ Protected Overrides Sub ReadXmlSerializable(ByVal reader As Global.System.Xml.XmlReader) If (Me.DetermineSchemaSerializationMode(reader) = Global.System.Data.SchemaSerializationMode.IncludeSchema) Then Me.Reset Dim ds As Global.System.Data.DataSet = New Global.System.Data.DataSet() ds.ReadXml(reader) If (Not (ds.Tables("VWCW_USER_PROFILE")) Is Nothing) Then MyBase.Tables.Add(New VWCW_USER_PROFILEDataTable(ds.Tables("VWCW_USER_PROFILE"))) End If If (Not (ds.Tables("TBCW_PROFILES")) Is Nothing) Then MyBase.Tables.Add(New TBCW_PROFILESDataTable(ds.Tables("TBCW_PROFILES"))) End If Me.DataSetName = ds.DataSetName Me.Prefix = ds.Prefix Me.Namespace = ds.Namespace Me.Locale = ds.Locale Me.CaseSensitive = ds.CaseSensitive Me.EnforceConstraints = ds.EnforceConstraints Me.Merge(ds, false, Global.System.Data.MissingSchemaAction.Add) Me.InitVars Else Me.ReadXml(reader) Me.InitVars End If End Sub _ Protected Overrides Function GetSchemaSerializable() As Global.System.Xml.Schema.XmlSchema Dim stream As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() Me.WriteXmlSchema(New Global.System.Xml.XmlTextWriter(stream, Nothing)) stream.Position = 0 Return Global.System.Xml.Schema.XmlSchema.Read(New Global.System.Xml.XmlTextReader(stream), Nothing) End Function _ Friend Overloads Sub InitVars() Me.InitVars(true) End Sub _ Friend Overloads Sub InitVars(ByVal initTable As Boolean) Me.tableVWCW_USER_PROFILE = CType(MyBase.Tables("VWCW_USER_PROFILE"),VWCW_USER_PROFILEDataTable) If (initTable = true) Then If (Not (Me.tableVWCW_USER_PROFILE) Is Nothing) Then Me.tableVWCW_USER_PROFILE.InitVars End If End If Me.tableTBCW_PROFILES = CType(MyBase.Tables("TBCW_PROFILES"),TBCW_PROFILESDataTable) If (initTable = true) Then If (Not (Me.tableTBCW_PROFILES) Is Nothing) Then Me.tableTBCW_PROFILES.InitVars End If End If End Sub _ Private Sub InitClass() Me.DataSetName = "DSClipboardWatcher" Me.Prefix = "" Me.Namespace = "http://tempuri.org/DSClipboardWatcher.xsd" Me.EnforceConstraints = true Me.SchemaSerializationMode = Global.System.Data.SchemaSerializationMode.IncludeSchema Me.tableVWCW_USER_PROFILE = New VWCW_USER_PROFILEDataTable() MyBase.Tables.Add(Me.tableVWCW_USER_PROFILE) Me.tableTBCW_PROFILES = New TBCW_PROFILESDataTable() MyBase.Tables.Add(Me.tableTBCW_PROFILES) End Sub _ Private Function ShouldSerializeVWCW_USER_PROFILE() As Boolean Return false End Function _ Private Function ShouldSerializeTBCW_PROFILES() As Boolean Return false End Function _ Private Sub SchemaChanged(ByVal sender As Object, ByVal e As Global.System.ComponentModel.CollectionChangeEventArgs) If (e.Action = Global.System.ComponentModel.CollectionChangeAction.Remove) Then Me.InitVars End If End Sub _ Public Shared Function GetTypedDataSetSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType Dim ds As DSClipboardWatcher = New DSClipboardWatcher() Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType() Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence() Dim any As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() any.Namespace = ds.Namespace sequence.Items.Add(any) type.Particle = sequence Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable If xs.Contains(dsSchema.TargetNamespace) Then Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() Try Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing dsSchema.Write(s1) Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator Do While schemas.MoveNext schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema) s2.SetLength(0) schema.Write(s2) If (s1.Length = s2.Length) Then s1.Position = 0 s2.Position = 0 Do While ((s1.Position <> s1.Length) _ AndAlso (s1.ReadByte = s2.ReadByte)) Loop If (s1.Position = s1.Length) Then Return type End If End If Loop Finally If (Not (s1) Is Nothing) Then s1.Close End If If (Not (s2) Is Nothing) Then s2.Close End If End Try End If xs.Add(dsSchema) Return type End Function _ Public Delegate Sub VWCW_USER_PROFILERowChangeEventHandler(ByVal sender As Object, ByVal e As VWCW_USER_PROFILERowChangeEvent) _ Public Delegate Sub TBCW_PROFILESRowChangeEventHandler(ByVal sender As Object, ByVal e As TBCW_PROFILESRowChangeEvent) ''' '''Represents the strongly named DataTable class. ''' _ Partial Public Class VWCW_USER_PROFILEDataTable Inherits Global.System.Data.TypedTableBase(Of VWCW_USER_PROFILERow) Private columnGUID As Global.System.Data.DataColumn Private columnNAME As Global.System.Data.DataColumn Private columnREGEX_EXPRESSION As Global.System.Data.DataColumn Private columnCOMMENT As Global.System.Data.DataColumn Private columnACTIVE As Global.System.Data.DataColumn Private columnPROFILE_TYPE As Global.System.Data.DataColumn Private columnPROC_NAME As Global.System.Data.DataColumn Private columnUSER_ID As Global.System.Data.DataColumn Private columnGROUP_ID As Global.System.Data.DataColumn _ Public Sub New() MyBase.New Me.TableName = "VWCW_USER_PROFILE" Me.BeginInit Me.InitClass Me.EndInit End Sub _ Friend Sub New(ByVal table As Global.System.Data.DataTable) MyBase.New Me.TableName = table.TableName If (table.CaseSensitive <> table.DataSet.CaseSensitive) Then Me.CaseSensitive = table.CaseSensitive End If If (table.Locale.ToString <> table.DataSet.Locale.ToString) Then Me.Locale = table.Locale End If If (table.Namespace <> table.DataSet.Namespace) Then Me.Namespace = table.Namespace End If Me.Prefix = table.Prefix Me.MinimumCapacity = table.MinimumCapacity End Sub _ Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext) MyBase.New(info, context) Me.InitVars End Sub _ Public ReadOnly Property GUIDColumn() As Global.System.Data.DataColumn Get Return Me.columnGUID End Get End Property _ Public ReadOnly Property NAMEColumn() As Global.System.Data.DataColumn Get Return Me.columnNAME End Get End Property _ Public ReadOnly Property REGEX_EXPRESSIONColumn() As Global.System.Data.DataColumn Get Return Me.columnREGEX_EXPRESSION End Get End Property _ Public ReadOnly Property COMMENTColumn() As Global.System.Data.DataColumn Get Return Me.columnCOMMENT End Get End Property _ Public ReadOnly Property ACTIVEColumn() As Global.System.Data.DataColumn Get Return Me.columnACTIVE End Get End Property _ Public ReadOnly Property PROFILE_TYPEColumn() As Global.System.Data.DataColumn Get Return Me.columnPROFILE_TYPE End Get End Property _ Public ReadOnly Property PROC_NAMEColumn() As Global.System.Data.DataColumn Get Return Me.columnPROC_NAME End Get End Property _ Public ReadOnly Property USER_IDColumn() As Global.System.Data.DataColumn Get Return Me.columnUSER_ID End Get End Property _ Public ReadOnly Property GROUP_IDColumn() As Global.System.Data.DataColumn Get Return Me.columnGROUP_ID End Get End Property _ Public ReadOnly Property Count() As Integer Get Return Me.Rows.Count End Get End Property _ Public Default ReadOnly Property Item(ByVal index As Integer) As VWCW_USER_PROFILERow Get Return CType(Me.Rows(index),VWCW_USER_PROFILERow) End Get End Property _ Public Event VWCW_USER_PROFILERowChanging As VWCW_USER_PROFILERowChangeEventHandler _ Public Event VWCW_USER_PROFILERowChanged As VWCW_USER_PROFILERowChangeEventHandler _ Public Event VWCW_USER_PROFILERowDeleting As VWCW_USER_PROFILERowChangeEventHandler _ Public Event VWCW_USER_PROFILERowDeleted As VWCW_USER_PROFILERowChangeEventHandler _ Public Overloads Sub AddVWCW_USER_PROFILERow(ByVal row As VWCW_USER_PROFILERow) Me.Rows.Add(row) End Sub _ Public Overloads Function AddVWCW_USER_PROFILERow(ByVal GUID As Integer, ByVal NAME As String, ByVal REGEX_EXPRESSION As String, ByVal COMMENT As String, ByVal ACTIVE As Boolean, ByVal PROFILE_TYPE As Short, ByVal PROC_NAME As String, ByVal USER_ID As Integer, ByVal GROUP_ID As Integer) As VWCW_USER_PROFILERow Dim rowVWCW_USER_PROFILERow As VWCW_USER_PROFILERow = CType(Me.NewRow,VWCW_USER_PROFILERow) Dim columnValuesArray() As Object = New Object() {GUID, NAME, REGEX_EXPRESSION, COMMENT, ACTIVE, PROFILE_TYPE, PROC_NAME, USER_ID, GROUP_ID} rowVWCW_USER_PROFILERow.ItemArray = columnValuesArray Me.Rows.Add(rowVWCW_USER_PROFILERow) Return rowVWCW_USER_PROFILERow End Function _ Public Function FindByGUID(ByVal GUID As Integer) As VWCW_USER_PROFILERow Return CType(Me.Rows.Find(New Object() {GUID}),VWCW_USER_PROFILERow) End Function _ Public Overrides Function Clone() As Global.System.Data.DataTable Dim cln As VWCW_USER_PROFILEDataTable = CType(MyBase.Clone,VWCW_USER_PROFILEDataTable) cln.InitVars Return cln End Function _ Protected Overrides Function CreateInstance() As Global.System.Data.DataTable Return New VWCW_USER_PROFILEDataTable() End Function _ Friend Sub InitVars() Me.columnGUID = MyBase.Columns("GUID") Me.columnNAME = MyBase.Columns("NAME") Me.columnREGEX_EXPRESSION = MyBase.Columns("REGEX_EXPRESSION") Me.columnCOMMENT = MyBase.Columns("COMMENT") Me.columnACTIVE = MyBase.Columns("ACTIVE") Me.columnPROFILE_TYPE = MyBase.Columns("PROFILE_TYPE") Me.columnPROC_NAME = MyBase.Columns("PROC_NAME") Me.columnUSER_ID = MyBase.Columns("USER_ID") Me.columnGROUP_ID = MyBase.Columns("GROUP_ID") End Sub _ Private Sub InitClass() Me.columnGUID = New Global.System.Data.DataColumn("GUID", GetType(Integer), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnGUID) Me.columnNAME = New Global.System.Data.DataColumn("NAME", GetType(String), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnNAME) Me.columnREGEX_EXPRESSION = New Global.System.Data.DataColumn("REGEX_EXPRESSION", GetType(String), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnREGEX_EXPRESSION) Me.columnCOMMENT = New Global.System.Data.DataColumn("COMMENT", GetType(String), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnCOMMENT) Me.columnACTIVE = New Global.System.Data.DataColumn("ACTIVE", GetType(Boolean), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnACTIVE) Me.columnPROFILE_TYPE = New Global.System.Data.DataColumn("PROFILE_TYPE", GetType(Short), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnPROFILE_TYPE) Me.columnPROC_NAME = New Global.System.Data.DataColumn("PROC_NAME", GetType(String), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnPROC_NAME) Me.columnUSER_ID = New Global.System.Data.DataColumn("USER_ID", GetType(Integer), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnUSER_ID) Me.columnGROUP_ID = New Global.System.Data.DataColumn("GROUP_ID", GetType(Integer), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnGROUP_ID) Me.Constraints.Add(New Global.System.Data.UniqueConstraint("Constraint1", New Global.System.Data.DataColumn() {Me.columnGUID}, true)) Me.columnGUID.AllowDBNull = false Me.columnGUID.Unique = true Me.columnNAME.AllowDBNull = false Me.columnNAME.MaxLength = 100 Me.columnREGEX_EXPRESSION.AllowDBNull = false Me.columnREGEX_EXPRESSION.MaxLength = 100 Me.columnCOMMENT.MaxLength = 500 Me.columnACTIVE.AllowDBNull = false Me.columnPROFILE_TYPE.AllowDBNull = false Me.columnPROC_NAME.MaxLength = 100 End Sub _ Public Function NewVWCW_USER_PROFILERow() As VWCW_USER_PROFILERow Return CType(Me.NewRow,VWCW_USER_PROFILERow) End Function _ Protected Overrides Function NewRowFromBuilder(ByVal builder As Global.System.Data.DataRowBuilder) As Global.System.Data.DataRow Return New VWCW_USER_PROFILERow(builder) End Function _ Protected Overrides Function GetRowType() As Global.System.Type Return GetType(VWCW_USER_PROFILERow) End Function _ Protected Overrides Sub OnRowChanged(ByVal e As Global.System.Data.DataRowChangeEventArgs) MyBase.OnRowChanged(e) If (Not (Me.VWCW_USER_PROFILERowChangedEvent) Is Nothing) Then RaiseEvent VWCW_USER_PROFILERowChanged(Me, New VWCW_USER_PROFILERowChangeEvent(CType(e.Row,VWCW_USER_PROFILERow), e.Action)) End If End Sub _ Protected Overrides Sub OnRowChanging(ByVal e As Global.System.Data.DataRowChangeEventArgs) MyBase.OnRowChanging(e) If (Not (Me.VWCW_USER_PROFILERowChangingEvent) Is Nothing) Then RaiseEvent VWCW_USER_PROFILERowChanging(Me, New VWCW_USER_PROFILERowChangeEvent(CType(e.Row,VWCW_USER_PROFILERow), e.Action)) End If End Sub _ Protected Overrides Sub OnRowDeleted(ByVal e As Global.System.Data.DataRowChangeEventArgs) MyBase.OnRowDeleted(e) If (Not (Me.VWCW_USER_PROFILERowDeletedEvent) Is Nothing) Then RaiseEvent VWCW_USER_PROFILERowDeleted(Me, New VWCW_USER_PROFILERowChangeEvent(CType(e.Row,VWCW_USER_PROFILERow), e.Action)) End If End Sub _ Protected Overrides Sub OnRowDeleting(ByVal e As Global.System.Data.DataRowChangeEventArgs) MyBase.OnRowDeleting(e) If (Not (Me.VWCW_USER_PROFILERowDeletingEvent) Is Nothing) Then RaiseEvent VWCW_USER_PROFILERowDeleting(Me, New VWCW_USER_PROFILERowChangeEvent(CType(e.Row,VWCW_USER_PROFILERow), e.Action)) End If End Sub _ Public Sub RemoveVWCW_USER_PROFILERow(ByVal row As VWCW_USER_PROFILERow) Me.Rows.Remove(row) End Sub _ Public Shared Function GetTypedTableSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType() Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence() Dim ds As DSClipboardWatcher = New DSClipboardWatcher() Dim any1 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() any1.Namespace = "http://www.w3.org/2001/XMLSchema" any1.MinOccurs = New Decimal(0) any1.MaxOccurs = Decimal.MaxValue any1.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax sequence.Items.Add(any1) Dim any2 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1" any2.MinOccurs = New Decimal(1) any2.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax sequence.Items.Add(any2) Dim attribute1 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() attribute1.Name = "namespace" attribute1.FixedValue = ds.Namespace type.Attributes.Add(attribute1) Dim attribute2 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() attribute2.Name = "tableTypeName" attribute2.FixedValue = "VWCW_USER_PROFILEDataTable" type.Attributes.Add(attribute2) type.Particle = sequence Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable If xs.Contains(dsSchema.TargetNamespace) Then Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() Try Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing dsSchema.Write(s1) Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator Do While schemas.MoveNext schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema) s2.SetLength(0) schema.Write(s2) If (s1.Length = s2.Length) Then s1.Position = 0 s2.Position = 0 Do While ((s1.Position <> s1.Length) _ AndAlso (s1.ReadByte = s2.ReadByte)) Loop If (s1.Position = s1.Length) Then Return type End If End If Loop Finally If (Not (s1) Is Nothing) Then s1.Close End If If (Not (s2) Is Nothing) Then s2.Close End If End Try End If xs.Add(dsSchema) Return type End Function End Class ''' '''Represents the strongly named DataTable class. ''' _ Partial Public Class TBCW_PROFILESDataTable Inherits Global.System.Data.TypedTableBase(Of TBCW_PROFILESRow) Private columnGUID As Global.System.Data.DataColumn Private columnNAME As Global.System.Data.DataColumn Private columnCOMMENT As Global.System.Data.DataColumn Private columnREGEX_EXPRESSION As Global.System.Data.DataColumn Private columnADDED_WHO As Global.System.Data.DataColumn Private columnADDED_WHEN As Global.System.Data.DataColumn Private columnCHANGED_WHO As Global.System.Data.DataColumn Private columnCHANGED_WHEN As Global.System.Data.DataColumn Private columnACTIVE As Global.System.Data.DataColumn Private columnPROFILE_TYPE As Global.System.Data.DataColumn _ Public Sub New() MyBase.New Me.TableName = "TBCW_PROFILES" Me.BeginInit Me.InitClass Me.EndInit End Sub _ Friend Sub New(ByVal table As Global.System.Data.DataTable) MyBase.New Me.TableName = table.TableName If (table.CaseSensitive <> table.DataSet.CaseSensitive) Then Me.CaseSensitive = table.CaseSensitive End If If (table.Locale.ToString <> table.DataSet.Locale.ToString) Then Me.Locale = table.Locale End If If (table.Namespace <> table.DataSet.Namespace) Then Me.Namespace = table.Namespace End If Me.Prefix = table.Prefix Me.MinimumCapacity = table.MinimumCapacity End Sub _ Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext) MyBase.New(info, context) Me.InitVars End Sub _ Public ReadOnly Property GUIDColumn() As Global.System.Data.DataColumn Get Return Me.columnGUID End Get End Property _ Public ReadOnly Property NAMEColumn() As Global.System.Data.DataColumn Get Return Me.columnNAME End Get End Property _ Public ReadOnly Property COMMENTColumn() As Global.System.Data.DataColumn Get Return Me.columnCOMMENT End Get End Property _ Public ReadOnly Property REGEX_EXPRESSIONColumn() As Global.System.Data.DataColumn Get Return Me.columnREGEX_EXPRESSION End Get End Property _ Public ReadOnly Property ADDED_WHOColumn() As Global.System.Data.DataColumn Get Return Me.columnADDED_WHO End Get End Property _ Public ReadOnly Property ADDED_WHENColumn() As Global.System.Data.DataColumn Get Return Me.columnADDED_WHEN End Get End Property _ Public ReadOnly Property CHANGED_WHOColumn() As Global.System.Data.DataColumn Get Return Me.columnCHANGED_WHO End Get End Property _ Public ReadOnly Property CHANGED_WHENColumn() As Global.System.Data.DataColumn Get Return Me.columnCHANGED_WHEN End Get End Property _ Public ReadOnly Property ACTIVEColumn() As Global.System.Data.DataColumn Get Return Me.columnACTIVE End Get End Property _ Public ReadOnly Property PROFILE_TYPEColumn() As Global.System.Data.DataColumn Get Return Me.columnPROFILE_TYPE End Get End Property _ Public ReadOnly Property Count() As Integer Get Return Me.Rows.Count End Get End Property _ Public Default ReadOnly Property Item(ByVal index As Integer) As TBCW_PROFILESRow Get Return CType(Me.Rows(index),TBCW_PROFILESRow) End Get End Property _ Public Event TBCW_PROFILESRowChanging As TBCW_PROFILESRowChangeEventHandler _ Public Event TBCW_PROFILESRowChanged As TBCW_PROFILESRowChangeEventHandler _ Public Event TBCW_PROFILESRowDeleting As TBCW_PROFILESRowChangeEventHandler _ Public Event TBCW_PROFILESRowDeleted As TBCW_PROFILESRowChangeEventHandler _ Public Overloads Sub AddTBCW_PROFILESRow(ByVal row As TBCW_PROFILESRow) Me.Rows.Add(row) End Sub _ Public Overloads Function AddTBCW_PROFILESRow(ByVal NAME As String, ByVal COMMENT As String, ByVal REGEX_EXPRESSION As String, ByVal ADDED_WHO As String, ByVal ADDED_WHEN As Date, ByVal CHANGED_WHO As String, ByVal CHANGED_WHEN As Date, ByVal ACTIVE As Boolean, ByVal PROFILE_TYPE As Short) As TBCW_PROFILESRow Dim rowTBCW_PROFILESRow As TBCW_PROFILESRow = CType(Me.NewRow,TBCW_PROFILESRow) Dim columnValuesArray() As Object = New Object() {Nothing, NAME, COMMENT, REGEX_EXPRESSION, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, ACTIVE, PROFILE_TYPE} rowTBCW_PROFILESRow.ItemArray = columnValuesArray Me.Rows.Add(rowTBCW_PROFILESRow) Return rowTBCW_PROFILESRow End Function _ Public Function FindByGUID(ByVal GUID As Integer) As TBCW_PROFILESRow Return CType(Me.Rows.Find(New Object() {GUID}),TBCW_PROFILESRow) End Function _ Public Overrides Function Clone() As Global.System.Data.DataTable Dim cln As TBCW_PROFILESDataTable = CType(MyBase.Clone,TBCW_PROFILESDataTable) cln.InitVars Return cln End Function _ Protected Overrides Function CreateInstance() As Global.System.Data.DataTable Return New TBCW_PROFILESDataTable() End Function _ Friend Sub InitVars() Me.columnGUID = MyBase.Columns("GUID") Me.columnNAME = MyBase.Columns("NAME") Me.columnCOMMENT = MyBase.Columns("COMMENT") Me.columnREGEX_EXPRESSION = MyBase.Columns("REGEX_EXPRESSION") Me.columnADDED_WHO = MyBase.Columns("ADDED_WHO") Me.columnADDED_WHEN = MyBase.Columns("ADDED_WHEN") Me.columnCHANGED_WHO = MyBase.Columns("CHANGED_WHO") Me.columnCHANGED_WHEN = MyBase.Columns("CHANGED_WHEN") Me.columnACTIVE = MyBase.Columns("ACTIVE") Me.columnPROFILE_TYPE = MyBase.Columns("PROFILE_TYPE") End Sub _ Private Sub InitClass() Me.columnGUID = New Global.System.Data.DataColumn("GUID", GetType(Integer), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnGUID) Me.columnNAME = New Global.System.Data.DataColumn("NAME", GetType(String), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnNAME) Me.columnCOMMENT = New Global.System.Data.DataColumn("COMMENT", GetType(String), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnCOMMENT) Me.columnREGEX_EXPRESSION = New Global.System.Data.DataColumn("REGEX_EXPRESSION", GetType(String), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnREGEX_EXPRESSION) Me.columnADDED_WHO = New Global.System.Data.DataColumn("ADDED_WHO", GetType(String), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnADDED_WHO) Me.columnADDED_WHEN = New Global.System.Data.DataColumn("ADDED_WHEN", GetType(Date), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnADDED_WHEN) Me.columnCHANGED_WHO = New Global.System.Data.DataColumn("CHANGED_WHO", GetType(String), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnCHANGED_WHO) Me.columnCHANGED_WHEN = New Global.System.Data.DataColumn("CHANGED_WHEN", GetType(Date), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnCHANGED_WHEN) Me.columnACTIVE = New Global.System.Data.DataColumn("ACTIVE", GetType(Boolean), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnACTIVE) Me.columnPROFILE_TYPE = New Global.System.Data.DataColumn("PROFILE_TYPE", GetType(Short), Nothing, Global.System.Data.MappingType.Element) MyBase.Columns.Add(Me.columnPROFILE_TYPE) Me.Constraints.Add(New Global.System.Data.UniqueConstraint("Constraint1", New Global.System.Data.DataColumn() {Me.columnGUID}, true)) Me.columnGUID.AutoIncrement = true Me.columnGUID.AutoIncrementSeed = -1 Me.columnGUID.AutoIncrementStep = -1 Me.columnGUID.AllowDBNull = false Me.columnGUID.ReadOnly = true Me.columnGUID.Unique = true Me.columnNAME.AllowDBNull = false Me.columnNAME.MaxLength = 100 Me.columnCOMMENT.MaxLength = 500 Me.columnREGEX_EXPRESSION.AllowDBNull = false Me.columnREGEX_EXPRESSION.MaxLength = 100 Me.columnADDED_WHO.AllowDBNull = false Me.columnADDED_WHO.MaxLength = 50 Me.columnCHANGED_WHO.MaxLength = 50 Me.columnACTIVE.AllowDBNull = false Me.columnPROFILE_TYPE.AllowDBNull = false End Sub _ Public Function NewTBCW_PROFILESRow() As TBCW_PROFILESRow Return CType(Me.NewRow,TBCW_PROFILESRow) End Function _ Protected Overrides Function NewRowFromBuilder(ByVal builder As Global.System.Data.DataRowBuilder) As Global.System.Data.DataRow Return New TBCW_PROFILESRow(builder) End Function _ Protected Overrides Function GetRowType() As Global.System.Type Return GetType(TBCW_PROFILESRow) End Function _ Protected Overrides Sub OnRowChanged(ByVal e As Global.System.Data.DataRowChangeEventArgs) MyBase.OnRowChanged(e) If (Not (Me.TBCW_PROFILESRowChangedEvent) Is Nothing) Then RaiseEvent TBCW_PROFILESRowChanged(Me, New TBCW_PROFILESRowChangeEvent(CType(e.Row,TBCW_PROFILESRow), e.Action)) End If End Sub _ Protected Overrides Sub OnRowChanging(ByVal e As Global.System.Data.DataRowChangeEventArgs) MyBase.OnRowChanging(e) If (Not (Me.TBCW_PROFILESRowChangingEvent) Is Nothing) Then RaiseEvent TBCW_PROFILESRowChanging(Me, New TBCW_PROFILESRowChangeEvent(CType(e.Row,TBCW_PROFILESRow), e.Action)) End If End Sub _ Protected Overrides Sub OnRowDeleted(ByVal e As Global.System.Data.DataRowChangeEventArgs) MyBase.OnRowDeleted(e) If (Not (Me.TBCW_PROFILESRowDeletedEvent) Is Nothing) Then RaiseEvent TBCW_PROFILESRowDeleted(Me, New TBCW_PROFILESRowChangeEvent(CType(e.Row,TBCW_PROFILESRow), e.Action)) End If End Sub _ Protected Overrides Sub OnRowDeleting(ByVal e As Global.System.Data.DataRowChangeEventArgs) MyBase.OnRowDeleting(e) If (Not (Me.TBCW_PROFILESRowDeletingEvent) Is Nothing) Then RaiseEvent TBCW_PROFILESRowDeleting(Me, New TBCW_PROFILESRowChangeEvent(CType(e.Row,TBCW_PROFILESRow), e.Action)) End If End Sub _ Public Sub RemoveTBCW_PROFILESRow(ByVal row As TBCW_PROFILESRow) Me.Rows.Remove(row) End Sub _ Public Shared Function GetTypedTableSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType() Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence() Dim ds As DSClipboardWatcher = New DSClipboardWatcher() Dim any1 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() any1.Namespace = "http://www.w3.org/2001/XMLSchema" any1.MinOccurs = New Decimal(0) any1.MaxOccurs = Decimal.MaxValue any1.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax sequence.Items.Add(any1) Dim any2 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1" any2.MinOccurs = New Decimal(1) any2.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax sequence.Items.Add(any2) Dim attribute1 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() attribute1.Name = "namespace" attribute1.FixedValue = ds.Namespace type.Attributes.Add(attribute1) Dim attribute2 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() attribute2.Name = "tableTypeName" attribute2.FixedValue = "TBCW_PROFILESDataTable" type.Attributes.Add(attribute2) type.Particle = sequence Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable If xs.Contains(dsSchema.TargetNamespace) Then Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() Try Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing dsSchema.Write(s1) Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator Do While schemas.MoveNext schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema) s2.SetLength(0) schema.Write(s2) If (s1.Length = s2.Length) Then s1.Position = 0 s2.Position = 0 Do While ((s1.Position <> s1.Length) _ AndAlso (s1.ReadByte = s2.ReadByte)) Loop If (s1.Position = s1.Length) Then Return type End If End If Loop Finally If (Not (s1) Is Nothing) Then s1.Close End If If (Not (s2) Is Nothing) Then s2.Close End If End Try End If xs.Add(dsSchema) Return type End Function End Class ''' '''Represents strongly named DataRow class. ''' Partial Public Class VWCW_USER_PROFILERow Inherits Global.System.Data.DataRow Private tableVWCW_USER_PROFILE As VWCW_USER_PROFILEDataTable _ Friend Sub New(ByVal rb As Global.System.Data.DataRowBuilder) MyBase.New(rb) Me.tableVWCW_USER_PROFILE = CType(Me.Table,VWCW_USER_PROFILEDataTable) End Sub _ Public Property GUID() As Integer Get Return CType(Me(Me.tableVWCW_USER_PROFILE.GUIDColumn),Integer) End Get Set Me(Me.tableVWCW_USER_PROFILE.GUIDColumn) = value End Set End Property _ Public Property NAME() As String Get Return CType(Me(Me.tableVWCW_USER_PROFILE.NAMEColumn),String) End Get Set Me(Me.tableVWCW_USER_PROFILE.NAMEColumn) = value End Set End Property _ Public Property REGEX_EXPRESSION() As String Get Return CType(Me(Me.tableVWCW_USER_PROFILE.REGEX_EXPRESSIONColumn),String) End Get Set Me(Me.tableVWCW_USER_PROFILE.REGEX_EXPRESSIONColumn) = value End Set End Property _ Public Property COMMENT() As String Get Try Return CType(Me(Me.tableVWCW_USER_PROFILE.COMMENTColumn),String) Catch e As Global.System.InvalidCastException Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte COMMENT in Tabelle VWCW_USER_PROFILE ist DBNull.", e) End Try End Get Set Me(Me.tableVWCW_USER_PROFILE.COMMENTColumn) = value End Set End Property _ Public Property ACTIVE() As Boolean Get Return CType(Me(Me.tableVWCW_USER_PROFILE.ACTIVEColumn),Boolean) End Get Set Me(Me.tableVWCW_USER_PROFILE.ACTIVEColumn) = value End Set End Property _ Public Property PROFILE_TYPE() As Short Get Return CType(Me(Me.tableVWCW_USER_PROFILE.PROFILE_TYPEColumn),Short) End Get Set Me(Me.tableVWCW_USER_PROFILE.PROFILE_TYPEColumn) = value End Set End Property _ Public Property PROC_NAME() As String Get Try Return CType(Me(Me.tableVWCW_USER_PROFILE.PROC_NAMEColumn),String) Catch e As Global.System.InvalidCastException Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte PROC_NAME in Tabelle VWCW_USER_PROFILE ist DBNull.", e) End Try End Get Set Me(Me.tableVWCW_USER_PROFILE.PROC_NAMEColumn) = value End Set End Property _ Public Property USER_ID() As Integer Get Try Return CType(Me(Me.tableVWCW_USER_PROFILE.USER_IDColumn),Integer) Catch e As Global.System.InvalidCastException Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte USER_ID in Tabelle VWCW_USER_PROFILE ist DBNull.", e) End Try End Get Set Me(Me.tableVWCW_USER_PROFILE.USER_IDColumn) = value End Set End Property _ Public Property GROUP_ID() As Integer Get Try Return CType(Me(Me.tableVWCW_USER_PROFILE.GROUP_IDColumn),Integer) Catch e As Global.System.InvalidCastException Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte GROUP_ID in Tabelle VWCW_USER_PROFILE ist DBNull.", e) End Try End Get Set Me(Me.tableVWCW_USER_PROFILE.GROUP_IDColumn) = value End Set End Property _ Public Function IsCOMMENTNull() As Boolean Return Me.IsNull(Me.tableVWCW_USER_PROFILE.COMMENTColumn) End Function _ Public Sub SetCOMMENTNull() Me(Me.tableVWCW_USER_PROFILE.COMMENTColumn) = Global.System.Convert.DBNull End Sub _ Public Function IsPROC_NAMENull() As Boolean Return Me.IsNull(Me.tableVWCW_USER_PROFILE.PROC_NAMEColumn) End Function _ Public Sub SetPROC_NAMENull() Me(Me.tableVWCW_USER_PROFILE.PROC_NAMEColumn) = Global.System.Convert.DBNull End Sub _ Public Function IsUSER_IDNull() As Boolean Return Me.IsNull(Me.tableVWCW_USER_PROFILE.USER_IDColumn) End Function _ Public Sub SetUSER_IDNull() Me(Me.tableVWCW_USER_PROFILE.USER_IDColumn) = Global.System.Convert.DBNull End Sub _ Public Function IsGROUP_IDNull() As Boolean Return Me.IsNull(Me.tableVWCW_USER_PROFILE.GROUP_IDColumn) End Function _ Public Sub SetGROUP_IDNull() Me(Me.tableVWCW_USER_PROFILE.GROUP_IDColumn) = Global.System.Convert.DBNull End Sub End Class ''' '''Represents strongly named DataRow class. ''' Partial Public Class TBCW_PROFILESRow Inherits Global.System.Data.DataRow Private tableTBCW_PROFILES As TBCW_PROFILESDataTable _ Friend Sub New(ByVal rb As Global.System.Data.DataRowBuilder) MyBase.New(rb) Me.tableTBCW_PROFILES = CType(Me.Table,TBCW_PROFILESDataTable) End Sub _ Public Property GUID() As Integer Get Return CType(Me(Me.tableTBCW_PROFILES.GUIDColumn),Integer) End Get Set Me(Me.tableTBCW_PROFILES.GUIDColumn) = value End Set End Property _ Public Property NAME() As String Get Return CType(Me(Me.tableTBCW_PROFILES.NAMEColumn),String) End Get Set Me(Me.tableTBCW_PROFILES.NAMEColumn) = value End Set End Property _ Public Property COMMENT() As String Get Try Return CType(Me(Me.tableTBCW_PROFILES.COMMENTColumn),String) Catch e As Global.System.InvalidCastException Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte COMMENT in Tabelle TBCW_PROFILES ist DBNull.", e) End Try End Get Set Me(Me.tableTBCW_PROFILES.COMMENTColumn) = value End Set End Property _ Public Property REGEX_EXPRESSION() As String Get Return CType(Me(Me.tableTBCW_PROFILES.REGEX_EXPRESSIONColumn),String) End Get Set Me(Me.tableTBCW_PROFILES.REGEX_EXPRESSIONColumn) = value End Set End Property _ Public Property ADDED_WHO() As String Get Return CType(Me(Me.tableTBCW_PROFILES.ADDED_WHOColumn),String) End Get Set Me(Me.tableTBCW_PROFILES.ADDED_WHOColumn) = value End Set End Property _ Public Property ADDED_WHEN() As Date Get Try Return CType(Me(Me.tableTBCW_PROFILES.ADDED_WHENColumn),Date) Catch e As Global.System.InvalidCastException Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte ADDED_WHEN in Tabelle TBCW_PROFILES ist DBNull.", e) End Try End Get Set Me(Me.tableTBCW_PROFILES.ADDED_WHENColumn) = value End Set End Property _ Public Property CHANGED_WHO() As String Get Try Return CType(Me(Me.tableTBCW_PROFILES.CHANGED_WHOColumn),String) Catch e As Global.System.InvalidCastException Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte CHANGED_WHO in Tabelle TBCW_PROFILES ist DBNull.", e) End Try End Get Set Me(Me.tableTBCW_PROFILES.CHANGED_WHOColumn) = value End Set End Property _ Public Property CHANGED_WHEN() As Date Get Try Return CType(Me(Me.tableTBCW_PROFILES.CHANGED_WHENColumn),Date) Catch e As Global.System.InvalidCastException Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte CHANGED_WHEN in Tabelle TBCW_PROFILES ist DBNull.", e) End Try End Get Set Me(Me.tableTBCW_PROFILES.CHANGED_WHENColumn) = value End Set End Property _ Public Property ACTIVE() As Boolean Get Return CType(Me(Me.tableTBCW_PROFILES.ACTIVEColumn),Boolean) End Get Set Me(Me.tableTBCW_PROFILES.ACTIVEColumn) = value End Set End Property _ Public Property PROFILE_TYPE() As Short Get Return CType(Me(Me.tableTBCW_PROFILES.PROFILE_TYPEColumn),Short) End Get Set Me(Me.tableTBCW_PROFILES.PROFILE_TYPEColumn) = value End Set End Property _ Public Function IsCOMMENTNull() As Boolean Return Me.IsNull(Me.tableTBCW_PROFILES.COMMENTColumn) End Function _ Public Sub SetCOMMENTNull() Me(Me.tableTBCW_PROFILES.COMMENTColumn) = Global.System.Convert.DBNull End Sub _ Public Function IsADDED_WHENNull() As Boolean Return Me.IsNull(Me.tableTBCW_PROFILES.ADDED_WHENColumn) End Function _ Public Sub SetADDED_WHENNull() Me(Me.tableTBCW_PROFILES.ADDED_WHENColumn) = Global.System.Convert.DBNull End Sub _ Public Function IsCHANGED_WHONull() As Boolean Return Me.IsNull(Me.tableTBCW_PROFILES.CHANGED_WHOColumn) End Function _ Public Sub SetCHANGED_WHONull() Me(Me.tableTBCW_PROFILES.CHANGED_WHOColumn) = Global.System.Convert.DBNull End Sub _ Public Function IsCHANGED_WHENNull() As Boolean Return Me.IsNull(Me.tableTBCW_PROFILES.CHANGED_WHENColumn) End Function _ Public Sub SetCHANGED_WHENNull() Me(Me.tableTBCW_PROFILES.CHANGED_WHENColumn) = Global.System.Convert.DBNull End Sub End Class ''' '''Row event argument class ''' _ Public Class VWCW_USER_PROFILERowChangeEvent Inherits Global.System.EventArgs Private eventRow As VWCW_USER_PROFILERow Private eventAction As Global.System.Data.DataRowAction _ Public Sub New(ByVal row As VWCW_USER_PROFILERow, ByVal action As Global.System.Data.DataRowAction) MyBase.New Me.eventRow = row Me.eventAction = action End Sub _ Public ReadOnly Property Row() As VWCW_USER_PROFILERow Get Return Me.eventRow End Get End Property _ Public ReadOnly Property Action() As Global.System.Data.DataRowAction Get Return Me.eventAction End Get End Property End Class ''' '''Row event argument class ''' _ Public Class TBCW_PROFILESRowChangeEvent Inherits Global.System.EventArgs Private eventRow As TBCW_PROFILESRow Private eventAction As Global.System.Data.DataRowAction _ Public Sub New(ByVal row As TBCW_PROFILESRow, ByVal action As Global.System.Data.DataRowAction) MyBase.New Me.eventRow = row Me.eventAction = action End Sub _ Public ReadOnly Property Row() As TBCW_PROFILESRow Get Return Me.eventRow End Get End Property _ Public ReadOnly Property Action() As Global.System.Data.DataRowAction Get Return Me.eventAction End Get End Property End Class End Class Namespace DSClipboardWatcherTableAdapters ''' '''Represents the connection and commands used to retrieve and save data. ''' _ Partial Public Class VWCW_USER_PROFILETableAdapter Inherits Global.System.ComponentModel.Component Private WithEvents _adapter As Global.System.Data.SqlClient.SqlDataAdapter Private _connection As Global.System.Data.SqlClient.SqlConnection Private _transaction As Global.System.Data.SqlClient.SqlTransaction Private _commandCollection() As Global.System.Data.SqlClient.SqlCommand Private _clearBeforeFill As Boolean _ Public Sub New() MyBase.New Me.ClearBeforeFill = true End Sub _ Protected Friend ReadOnly Property Adapter() As Global.System.Data.SqlClient.SqlDataAdapter Get If (Me._adapter Is Nothing) Then Me.InitAdapter End If Return Me._adapter End Get End Property _ Friend Property Connection() As Global.System.Data.SqlClient.SqlConnection Get If (Me._connection Is Nothing) Then Me.InitConnection End If Return Me._connection End Get Set Me._connection = value If (Not (Me.Adapter.InsertCommand) Is Nothing) Then Me.Adapter.InsertCommand.Connection = value End If If (Not (Me.Adapter.DeleteCommand) Is Nothing) Then Me.Adapter.DeleteCommand.Connection = value End If If (Not (Me.Adapter.UpdateCommand) Is Nothing) Then Me.Adapter.UpdateCommand.Connection = value End If Dim i As Integer = 0 Do While (i < Me.CommandCollection.Length) If (Not (Me.CommandCollection(i)) Is Nothing) Then CType(Me.CommandCollection(i),Global.System.Data.SqlClient.SqlCommand).Connection = value End If i = (i + 1) Loop End Set End Property _ Friend Property Transaction() As Global.System.Data.SqlClient.SqlTransaction Get Return Me._transaction End Get Set Me._transaction = value Dim i As Integer = 0 Do While (i < Me.CommandCollection.Length) Me.CommandCollection(i).Transaction = Me._transaction i = (i + 1) Loop If ((Not (Me.Adapter) Is Nothing) _ AndAlso (Not (Me.Adapter.DeleteCommand) Is Nothing)) Then Me.Adapter.DeleteCommand.Transaction = Me._transaction End If If ((Not (Me.Adapter) Is Nothing) _ AndAlso (Not (Me.Adapter.InsertCommand) Is Nothing)) Then Me.Adapter.InsertCommand.Transaction = Me._transaction End If If ((Not (Me.Adapter) Is Nothing) _ AndAlso (Not (Me.Adapter.UpdateCommand) Is Nothing)) Then Me.Adapter.UpdateCommand.Transaction = Me._transaction End If End Set End Property _ Protected ReadOnly Property CommandCollection() As Global.System.Data.SqlClient.SqlCommand() Get If (Me._commandCollection Is Nothing) Then Me.InitCommandCollection End If Return Me._commandCollection End Get End Property _ Public Property ClearBeforeFill() As Boolean Get Return Me._clearBeforeFill End Get Set Me._clearBeforeFill = value End Set End Property _ Private Sub InitAdapter() Me._adapter = New Global.System.Data.SqlClient.SqlDataAdapter() Dim tableMapping As Global.System.Data.Common.DataTableMapping = New Global.System.Data.Common.DataTableMapping() tableMapping.SourceTable = "Table" tableMapping.DataSetTable = "VWCW_USER_PROFILE" tableMapping.ColumnMappings.Add("GUID", "GUID") tableMapping.ColumnMappings.Add("NAME", "NAME") tableMapping.ColumnMappings.Add("REGEX_EXPRESSION", "REGEX_EXPRESSION") tableMapping.ColumnMappings.Add("COMMENT", "COMMENT") tableMapping.ColumnMappings.Add("ACTIVE", "ACTIVE") tableMapping.ColumnMappings.Add("PROFILE_TYPE", "PROFILE_TYPE") tableMapping.ColumnMappings.Add("PROC_NAME", "PROC_NAME") tableMapping.ColumnMappings.Add("USER_ID", "USER_ID") tableMapping.ColumnMappings.Add("GROUP_ID", "GROUP_ID") Me._adapter.TableMappings.Add(tableMapping) End Sub _ Private Sub InitConnection() Me._connection = New Global.System.Data.SqlClient.SqlConnection() Me._connection.ConnectionString = Global.DigitalData.GUIs.ZooFlow.Settings.Default.DD_ECMConnectionString End Sub _ Private Sub InitCommandCollection() Me._commandCollection = New Global.System.Data.SqlClient.SqlCommand(0) {} Me._commandCollection(0) = New Global.System.Data.SqlClient.SqlCommand() Me._commandCollection(0).Connection = Me.Connection Me._commandCollection(0).CommandText = "SELECT GUID, NAME, REGEX_EXPRESSION, COMMENT, ACTIVE, PROFILE_TYPE, PROC_NAME, US"& _ "ER_ID, GROUP_ID FROM dbo.VWCW_USER_PROFILE" Me._commandCollection(0).CommandType = Global.System.Data.CommandType.Text End Sub _ Public Overloads Overridable Function Fill(ByVal dataTable As DSClipboardWatcher.VWCW_USER_PROFILEDataTable) As Integer Me.Adapter.SelectCommand = Me.CommandCollection(0) If (Me.ClearBeforeFill = true) Then dataTable.Clear End If Dim returnValue As Integer = Me.Adapter.Fill(dataTable) Return returnValue End Function _ Public Overloads Overridable Function GetData() As DSClipboardWatcher.VWCW_USER_PROFILEDataTable Me.Adapter.SelectCommand = Me.CommandCollection(0) Dim dataTable As DSClipboardWatcher.VWCW_USER_PROFILEDataTable = New DSClipboardWatcher.VWCW_USER_PROFILEDataTable() Me.Adapter.Fill(dataTable) Return dataTable End Function End Class ''' '''Represents the connection and commands used to retrieve and save data. ''' _ Partial Public Class TBCW_PROFILESTableAdapter Inherits Global.System.ComponentModel.Component Private WithEvents _adapter As Global.System.Data.SqlClient.SqlDataAdapter Private _connection As Global.System.Data.SqlClient.SqlConnection Private _transaction As Global.System.Data.SqlClient.SqlTransaction Private _commandCollection() As Global.System.Data.SqlClient.SqlCommand Private _clearBeforeFill As Boolean _ Public Sub New() MyBase.New Me.ClearBeforeFill = true End Sub _ Protected Friend ReadOnly Property Adapter() As Global.System.Data.SqlClient.SqlDataAdapter Get If (Me._adapter Is Nothing) Then Me.InitAdapter End If Return Me._adapter End Get End Property _ Friend Property Connection() As Global.System.Data.SqlClient.SqlConnection Get If (Me._connection Is Nothing) Then Me.InitConnection End If Return Me._connection End Get Set Me._connection = value If (Not (Me.Adapter.InsertCommand) Is Nothing) Then Me.Adapter.InsertCommand.Connection = value End If If (Not (Me.Adapter.DeleteCommand) Is Nothing) Then Me.Adapter.DeleteCommand.Connection = value End If If (Not (Me.Adapter.UpdateCommand) Is Nothing) Then Me.Adapter.UpdateCommand.Connection = value End If Dim i As Integer = 0 Do While (i < Me.CommandCollection.Length) If (Not (Me.CommandCollection(i)) Is Nothing) Then CType(Me.CommandCollection(i),Global.System.Data.SqlClient.SqlCommand).Connection = value End If i = (i + 1) Loop End Set End Property _ Friend Property Transaction() As Global.System.Data.SqlClient.SqlTransaction Get Return Me._transaction End Get Set Me._transaction = value Dim i As Integer = 0 Do While (i < Me.CommandCollection.Length) Me.CommandCollection(i).Transaction = Me._transaction i = (i + 1) Loop If ((Not (Me.Adapter) Is Nothing) _ AndAlso (Not (Me.Adapter.DeleteCommand) Is Nothing)) Then Me.Adapter.DeleteCommand.Transaction = Me._transaction End If If ((Not (Me.Adapter) Is Nothing) _ AndAlso (Not (Me.Adapter.InsertCommand) Is Nothing)) Then Me.Adapter.InsertCommand.Transaction = Me._transaction End If If ((Not (Me.Adapter) Is Nothing) _ AndAlso (Not (Me.Adapter.UpdateCommand) Is Nothing)) Then Me.Adapter.UpdateCommand.Transaction = Me._transaction End If End Set End Property _ Protected ReadOnly Property CommandCollection() As Global.System.Data.SqlClient.SqlCommand() Get If (Me._commandCollection Is Nothing) Then Me.InitCommandCollection End If Return Me._commandCollection End Get End Property _ Public Property ClearBeforeFill() As Boolean Get Return Me._clearBeforeFill End Get Set Me._clearBeforeFill = value End Set End Property _ Private Sub InitAdapter() Me._adapter = New Global.System.Data.SqlClient.SqlDataAdapter() Dim tableMapping As Global.System.Data.Common.DataTableMapping = New Global.System.Data.Common.DataTableMapping() tableMapping.SourceTable = "Table" tableMapping.DataSetTable = "TBCW_PROFILES" tableMapping.ColumnMappings.Add("GUID", "GUID") tableMapping.ColumnMappings.Add("NAME", "NAME") tableMapping.ColumnMappings.Add("COMMENT", "COMMENT") tableMapping.ColumnMappings.Add("REGEX_EXPRESSION", "REGEX_EXPRESSION") tableMapping.ColumnMappings.Add("ADDED_WHO", "ADDED_WHO") tableMapping.ColumnMappings.Add("ADDED_WHEN", "ADDED_WHEN") tableMapping.ColumnMappings.Add("CHANGED_WHO", "CHANGED_WHO") tableMapping.ColumnMappings.Add("CHANGED_WHEN", "CHANGED_WHEN") tableMapping.ColumnMappings.Add("ACTIVE", "ACTIVE") tableMapping.ColumnMappings.Add("PROFILE_TYPE", "PROFILE_TYPE") Me._adapter.TableMappings.Add(tableMapping) Me._adapter.DeleteCommand = New Global.System.Data.SqlClient.SqlCommand() Me._adapter.DeleteCommand.Connection = Me.Connection Me._adapter.DeleteCommand.CommandText = "DELETE FROM [dbo].[TBCW_PROFILES] WHERE (([GUID] = @Original_GUID) AND ([NAME] = "& _ "@Original_NAME) AND ((@IsNull_COMMENT = 1 AND [COMMENT] IS NULL) OR ([COMMENT] ="& _ " @Original_COMMENT)) AND ([REGEX_EXPRESSION] = @Original_REGEX_EXPRESSION) AND ("& _ "[ADDED_WHO] = @Original_ADDED_WHO) AND ((@IsNull_ADDED_WHEN = 1 AND [ADDED_WHEN]"& _ " IS NULL) OR ([ADDED_WHEN] = @Original_ADDED_WHEN)) AND ((@IsNull_CHANGED_WHO = "& _ "1 AND [CHANGED_WHO] IS NULL) OR ([CHANGED_WHO] = @Original_CHANGED_WHO)) AND ((@"& _ "IsNull_CHANGED_WHEN = 1 AND [CHANGED_WHEN] IS NULL) OR ([CHANGED_WHEN] = @Origin"& _ "al_CHANGED_WHEN)) AND ([ACTIVE] = @Original_ACTIVE) AND ([PROFILE_TYPE] = @Origi"& _ "nal_PROFILE_TYPE))" Me._adapter.DeleteCommand.CommandType = Global.System.Data.CommandType.Text Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_GUID", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_NAME", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "NAME", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@IsNull_COMMENT", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "COMMENT", Global.System.Data.DataRowVersion.Original, true, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_COMMENT", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "COMMENT", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_REGEX_EXPRESSION", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "REGEX_EXPRESSION", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_ADDED_WHO", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHO", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@IsNull_ADDED_WHEN", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHEN", Global.System.Data.DataRowVersion.Original, true, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_ADDED_WHEN", Global.System.Data.SqlDbType.DateTime, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHEN", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@IsNull_CHANGED_WHO", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHO", Global.System.Data.DataRowVersion.Original, true, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_CHANGED_WHO", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHO", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@IsNull_CHANGED_WHEN", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHEN", Global.System.Data.DataRowVersion.Original, true, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_CHANGED_WHEN", Global.System.Data.SqlDbType.DateTime, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHEN", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_ACTIVE", Global.System.Data.SqlDbType.Bit, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ACTIVE", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.DeleteCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_PROFILE_TYPE", Global.System.Data.SqlDbType.SmallInt, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "PROFILE_TYPE", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.InsertCommand = New Global.System.Data.SqlClient.SqlCommand() Me._adapter.InsertCommand.Connection = Me.Connection Me._adapter.InsertCommand.CommandText = "INSERT INTO [dbo].[TBCW_PROFILES] ([NAME], [COMMENT], [REGEX_EXPRESSION], [ADDED_"& _ "WHO], [ADDED_WHEN], [CHANGED_WHO], [CHANGED_WHEN], [ACTIVE], [PROFILE_TYPE]) VAL"& _ "UES (@NAME, @COMMENT, @REGEX_EXPRESSION, @ADDED_WHO, @ADDED_WHEN, @CHANGED_WHO, "& _ "@CHANGED_WHEN, @ACTIVE, @PROFILE_TYPE);"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"SELECT GUID, NAME, COMMENT, REGEX_EXPRE"& _ "SSION, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, ACTIVE, PROFILE_TYPE FR"& _ "OM TBCW_PROFILES WHERE (GUID = SCOPE_IDENTITY())" Me._adapter.InsertCommand.CommandType = Global.System.Data.CommandType.Text Me._adapter.InsertCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@NAME", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "NAME", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.InsertCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@COMMENT", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "COMMENT", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.InsertCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@REGEX_EXPRESSION", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "REGEX_EXPRESSION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.InsertCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@ADDED_WHO", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHO", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.InsertCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@ADDED_WHEN", Global.System.Data.SqlDbType.DateTime, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHEN", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.InsertCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CHANGED_WHO", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHO", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.InsertCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CHANGED_WHEN", Global.System.Data.SqlDbType.DateTime, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHEN", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.InsertCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@ACTIVE", Global.System.Data.SqlDbType.Bit, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ACTIVE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.InsertCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@PROFILE_TYPE", Global.System.Data.SqlDbType.SmallInt, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "PROFILE_TYPE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand = New Global.System.Data.SqlClient.SqlCommand() Me._adapter.UpdateCommand.Connection = Me.Connection Me._adapter.UpdateCommand.CommandText = "UPDATE [dbo].[TBCW_PROFILES] SET [NAME] = @NAME, [COMMENT] = @COMMENT, [REGEX_EXP"& _ "RESSION] = @REGEX_EXPRESSION, [ADDED_WHO] = @ADDED_WHO, [ADDED_WHEN] = @ADDED_WH"& _ "EN, [CHANGED_WHO] = @CHANGED_WHO, [CHANGED_WHEN] = @CHANGED_WHEN, [ACTIVE] = @AC"& _ "TIVE, [PROFILE_TYPE] = @PROFILE_TYPE WHERE (([GUID] = @Original_GUID) AND ([NAME"& _ "] = @Original_NAME) AND ((@IsNull_COMMENT = 1 AND [COMMENT] IS NULL) OR ([COMMEN"& _ "T] = @Original_COMMENT)) AND ([REGEX_EXPRESSION] = @Original_REGEX_EXPRESSION) A"& _ "ND ([ADDED_WHO] = @Original_ADDED_WHO) AND ((@IsNull_ADDED_WHEN = 1 AND [ADDED_W"& _ "HEN] IS NULL) OR ([ADDED_WHEN] = @Original_ADDED_WHEN)) AND ((@IsNull_CHANGED_WH"& _ "O = 1 AND [CHANGED_WHO] IS NULL) OR ([CHANGED_WHO] = @Original_CHANGED_WHO)) AND"& _ " ((@IsNull_CHANGED_WHEN = 1 AND [CHANGED_WHEN] IS NULL) OR ([CHANGED_WHEN] = @Or"& _ "iginal_CHANGED_WHEN)) AND ([ACTIVE] = @Original_ACTIVE) AND ([PROFILE_TYPE] = @O"& _ "riginal_PROFILE_TYPE));"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"SELECT GUID, NAME, COMMENT, REGEX_EXPRESSION, ADDED_WHO"& _ ", ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, ACTIVE, PROFILE_TYPE FROM TBCW_PROFILES"& _ " WHERE (GUID = @GUID)" Me._adapter.UpdateCommand.CommandType = Global.System.Data.CommandType.Text Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@NAME", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "NAME", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@COMMENT", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "COMMENT", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@REGEX_EXPRESSION", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "REGEX_EXPRESSION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@ADDED_WHO", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHO", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@ADDED_WHEN", Global.System.Data.SqlDbType.DateTime, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHEN", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CHANGED_WHO", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHO", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CHANGED_WHEN", Global.System.Data.SqlDbType.DateTime, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHEN", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@ACTIVE", Global.System.Data.SqlDbType.Bit, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ACTIVE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@PROFILE_TYPE", Global.System.Data.SqlDbType.SmallInt, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "PROFILE_TYPE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_GUID", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_NAME", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "NAME", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@IsNull_COMMENT", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "COMMENT", Global.System.Data.DataRowVersion.Original, true, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_COMMENT", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "COMMENT", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_REGEX_EXPRESSION", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "REGEX_EXPRESSION", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_ADDED_WHO", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHO", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@IsNull_ADDED_WHEN", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHEN", Global.System.Data.DataRowVersion.Original, true, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_ADDED_WHEN", Global.System.Data.SqlDbType.DateTime, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ADDED_WHEN", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@IsNull_CHANGED_WHO", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHO", Global.System.Data.DataRowVersion.Original, true, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_CHANGED_WHO", Global.System.Data.SqlDbType.VarChar, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHO", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@IsNull_CHANGED_WHEN", Global.System.Data.SqlDbType.Int, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHEN", Global.System.Data.DataRowVersion.Original, true, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_CHANGED_WHEN", Global.System.Data.SqlDbType.DateTime, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "CHANGED_WHEN", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_ACTIVE", Global.System.Data.SqlDbType.Bit, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "ACTIVE", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_PROFILE_TYPE", Global.System.Data.SqlDbType.SmallInt, 0, Global.System.Data.ParameterDirection.Input, 0, 0, "PROFILE_TYPE", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) End Sub _ Private Sub InitConnection() Me._connection = New Global.System.Data.SqlClient.SqlConnection() Me._connection.ConnectionString = Global.DigitalData.GUIs.ZooFlow.Settings.Default.DD_ECMConnectionString End Sub _ Private Sub InitCommandCollection() Me._commandCollection = New Global.System.Data.SqlClient.SqlCommand(0) {} Me._commandCollection(0) = New Global.System.Data.SqlClient.SqlCommand() Me._commandCollection(0).Connection = Me.Connection Me._commandCollection(0).CommandText = "SELECT GUID, NAME, COMMENT, REGEX_EXPRESSION, ADDED_WHO, ADDED_WHEN, CHANGED_WHO,"& _ " CHANGED_WHEN, ACTIVE, PROFILE_TYPE FROM dbo.TBCW_PROFILES" Me._commandCollection(0).CommandType = Global.System.Data.CommandType.Text End Sub _ Public Overloads Overridable Function Fill(ByVal dataTable As DSClipboardWatcher.TBCW_PROFILESDataTable) As Integer Me.Adapter.SelectCommand = Me.CommandCollection(0) If (Me.ClearBeforeFill = true) Then dataTable.Clear End If Dim returnValue As Integer = Me.Adapter.Fill(dataTable) Return returnValue End Function _ Public Overloads Overridable Function GetData() As DSClipboardWatcher.TBCW_PROFILESDataTable Me.Adapter.SelectCommand = Me.CommandCollection(0) Dim dataTable As DSClipboardWatcher.TBCW_PROFILESDataTable = New DSClipboardWatcher.TBCW_PROFILESDataTable() Me.Adapter.Fill(dataTable) Return dataTable End Function _ Public Overloads Overridable Function Update(ByVal dataTable As DSClipboardWatcher.TBCW_PROFILESDataTable) As Integer Return Me.Adapter.Update(dataTable) End Function _ Public Overloads Overridable Function Update(ByVal dataSet As DSClipboardWatcher) As Integer Return Me.Adapter.Update(dataSet, "TBCW_PROFILES") End Function _ Public Overloads Overridable Function Update(ByVal dataRow As Global.System.Data.DataRow) As Integer Return Me.Adapter.Update(New Global.System.Data.DataRow() {dataRow}) End Function _ Public Overloads Overridable Function Update(ByVal dataRows() As Global.System.Data.DataRow) As Integer Return Me.Adapter.Update(dataRows) End Function _ Public Overloads Overridable Function Delete(ByVal Original_GUID As Integer, ByVal Original_NAME As String, ByVal Original_COMMENT As String, ByVal Original_REGEX_EXPRESSION As String, ByVal Original_ADDED_WHO As String, ByVal Original_ADDED_WHEN As Global.System.Nullable(Of Date), ByVal Original_CHANGED_WHO As String, ByVal Original_CHANGED_WHEN As Global.System.Nullable(Of Date), ByVal Original_ACTIVE As Boolean, ByVal Original_PROFILE_TYPE As Short) As Integer Me.Adapter.DeleteCommand.Parameters(0).Value = CType(Original_GUID,Integer) If (Original_NAME Is Nothing) Then Throw New Global.System.ArgumentNullException("Original_NAME") Else Me.Adapter.DeleteCommand.Parameters(1).Value = CType(Original_NAME,String) End If If (Original_COMMENT Is Nothing) Then Me.Adapter.DeleteCommand.Parameters(2).Value = CType(1,Object) Me.Adapter.DeleteCommand.Parameters(3).Value = Global.System.DBNull.Value Else Me.Adapter.DeleteCommand.Parameters(2).Value = CType(0,Object) Me.Adapter.DeleteCommand.Parameters(3).Value = CType(Original_COMMENT,String) End If If (Original_REGEX_EXPRESSION Is Nothing) Then Throw New Global.System.ArgumentNullException("Original_REGEX_EXPRESSION") Else Me.Adapter.DeleteCommand.Parameters(4).Value = CType(Original_REGEX_EXPRESSION,String) End If If (Original_ADDED_WHO Is Nothing) Then Throw New Global.System.ArgumentNullException("Original_ADDED_WHO") Else Me.Adapter.DeleteCommand.Parameters(5).Value = CType(Original_ADDED_WHO,String) End If If (Original_ADDED_WHEN.HasValue = true) Then Me.Adapter.DeleteCommand.Parameters(6).Value = CType(0,Object) Me.Adapter.DeleteCommand.Parameters(7).Value = CType(Original_ADDED_WHEN.Value,Date) Else Me.Adapter.DeleteCommand.Parameters(6).Value = CType(1,Object) Me.Adapter.DeleteCommand.Parameters(7).Value = Global.System.DBNull.Value End If If (Original_CHANGED_WHO Is Nothing) Then Me.Adapter.DeleteCommand.Parameters(8).Value = CType(1,Object) Me.Adapter.DeleteCommand.Parameters(9).Value = Global.System.DBNull.Value Else Me.Adapter.DeleteCommand.Parameters(8).Value = CType(0,Object) Me.Adapter.DeleteCommand.Parameters(9).Value = CType(Original_CHANGED_WHO,String) End If If (Original_CHANGED_WHEN.HasValue = true) Then Me.Adapter.DeleteCommand.Parameters(10).Value = CType(0,Object) Me.Adapter.DeleteCommand.Parameters(11).Value = CType(Original_CHANGED_WHEN.Value,Date) Else Me.Adapter.DeleteCommand.Parameters(10).Value = CType(1,Object) Me.Adapter.DeleteCommand.Parameters(11).Value = Global.System.DBNull.Value End If Me.Adapter.DeleteCommand.Parameters(12).Value = CType(Original_ACTIVE,Boolean) Me.Adapter.DeleteCommand.Parameters(13).Value = CType(Original_PROFILE_TYPE,Short) Dim previousConnectionState As Global.System.Data.ConnectionState = Me.Adapter.DeleteCommand.Connection.State If ((Me.Adapter.DeleteCommand.Connection.State And Global.System.Data.ConnectionState.Open) _ <> Global.System.Data.ConnectionState.Open) Then Me.Adapter.DeleteCommand.Connection.Open End If Try Dim returnValue As Integer = Me.Adapter.DeleteCommand.ExecuteNonQuery Return returnValue Finally If (previousConnectionState = Global.System.Data.ConnectionState.Closed) Then Me.Adapter.DeleteCommand.Connection.Close End If End Try End Function _ Public Overloads Overridable Function Insert(ByVal NAME As String, ByVal COMMENT As String, ByVal REGEX_EXPRESSION As String, ByVal ADDED_WHO As String, ByVal ADDED_WHEN As Global.System.Nullable(Of Date), ByVal CHANGED_WHO As String, ByVal CHANGED_WHEN As Global.System.Nullable(Of Date), ByVal ACTIVE As Boolean, ByVal PROFILE_TYPE As Short) As Integer If (NAME Is Nothing) Then Throw New Global.System.ArgumentNullException("NAME") Else Me.Adapter.InsertCommand.Parameters(0).Value = CType(NAME,String) End If If (COMMENT Is Nothing) Then Me.Adapter.InsertCommand.Parameters(1).Value = Global.System.DBNull.Value Else Me.Adapter.InsertCommand.Parameters(1).Value = CType(COMMENT,String) End If If (REGEX_EXPRESSION Is Nothing) Then Throw New Global.System.ArgumentNullException("REGEX_EXPRESSION") Else Me.Adapter.InsertCommand.Parameters(2).Value = CType(REGEX_EXPRESSION,String) End If If (ADDED_WHO Is Nothing) Then Throw New Global.System.ArgumentNullException("ADDED_WHO") Else Me.Adapter.InsertCommand.Parameters(3).Value = CType(ADDED_WHO,String) End If If (ADDED_WHEN.HasValue = true) Then Me.Adapter.InsertCommand.Parameters(4).Value = CType(ADDED_WHEN.Value,Date) Else Me.Adapter.InsertCommand.Parameters(4).Value = Global.System.DBNull.Value End If If (CHANGED_WHO Is Nothing) Then Me.Adapter.InsertCommand.Parameters(5).Value = Global.System.DBNull.Value Else Me.Adapter.InsertCommand.Parameters(5).Value = CType(CHANGED_WHO,String) End If If (CHANGED_WHEN.HasValue = true) Then Me.Adapter.InsertCommand.Parameters(6).Value = CType(CHANGED_WHEN.Value,Date) Else Me.Adapter.InsertCommand.Parameters(6).Value = Global.System.DBNull.Value End If Me.Adapter.InsertCommand.Parameters(7).Value = CType(ACTIVE,Boolean) Me.Adapter.InsertCommand.Parameters(8).Value = CType(PROFILE_TYPE,Short) Dim previousConnectionState As Global.System.Data.ConnectionState = Me.Adapter.InsertCommand.Connection.State If ((Me.Adapter.InsertCommand.Connection.State And Global.System.Data.ConnectionState.Open) _ <> Global.System.Data.ConnectionState.Open) Then Me.Adapter.InsertCommand.Connection.Open End If Try Dim returnValue As Integer = Me.Adapter.InsertCommand.ExecuteNonQuery Return returnValue Finally If (previousConnectionState = Global.System.Data.ConnectionState.Closed) Then Me.Adapter.InsertCommand.Connection.Close End If End Try End Function _ Public Overloads Overridable Function Update( _ ByVal NAME As String, _ ByVal COMMENT As String, _ ByVal REGEX_EXPRESSION As String, _ ByVal ADDED_WHO As String, _ ByVal ADDED_WHEN As Global.System.Nullable(Of Date), _ ByVal CHANGED_WHO As String, _ ByVal CHANGED_WHEN As Global.System.Nullable(Of Date), _ ByVal ACTIVE As Boolean, _ ByVal PROFILE_TYPE As Short, _ ByVal Original_GUID As Integer, _ ByVal Original_NAME As String, _ ByVal Original_COMMENT As String, _ ByVal Original_REGEX_EXPRESSION As String, _ ByVal Original_ADDED_WHO As String, _ ByVal Original_ADDED_WHEN As Global.System.Nullable(Of Date), _ ByVal Original_CHANGED_WHO As String, _ ByVal Original_CHANGED_WHEN As Global.System.Nullable(Of Date), _ ByVal Original_ACTIVE As Boolean, _ ByVal Original_PROFILE_TYPE As Short, _ ByVal GUID As Integer) As Integer If (NAME Is Nothing) Then Throw New Global.System.ArgumentNullException("NAME") Else Me.Adapter.UpdateCommand.Parameters(0).Value = CType(NAME,String) End If If (COMMENT Is Nothing) Then Me.Adapter.UpdateCommand.Parameters(1).Value = Global.System.DBNull.Value Else Me.Adapter.UpdateCommand.Parameters(1).Value = CType(COMMENT,String) End If If (REGEX_EXPRESSION Is Nothing) Then Throw New Global.System.ArgumentNullException("REGEX_EXPRESSION") Else Me.Adapter.UpdateCommand.Parameters(2).Value = CType(REGEX_EXPRESSION,String) End If If (ADDED_WHO Is Nothing) Then Throw New Global.System.ArgumentNullException("ADDED_WHO") Else Me.Adapter.UpdateCommand.Parameters(3).Value = CType(ADDED_WHO,String) End If If (ADDED_WHEN.HasValue = true) Then Me.Adapter.UpdateCommand.Parameters(4).Value = CType(ADDED_WHEN.Value,Date) Else Me.Adapter.UpdateCommand.Parameters(4).Value = Global.System.DBNull.Value End If If (CHANGED_WHO Is Nothing) Then Me.Adapter.UpdateCommand.Parameters(5).Value = Global.System.DBNull.Value Else Me.Adapter.UpdateCommand.Parameters(5).Value = CType(CHANGED_WHO,String) End If If (CHANGED_WHEN.HasValue = true) Then Me.Adapter.UpdateCommand.Parameters(6).Value = CType(CHANGED_WHEN.Value,Date) Else Me.Adapter.UpdateCommand.Parameters(6).Value = Global.System.DBNull.Value End If Me.Adapter.UpdateCommand.Parameters(7).Value = CType(ACTIVE,Boolean) Me.Adapter.UpdateCommand.Parameters(8).Value = CType(PROFILE_TYPE,Short) Me.Adapter.UpdateCommand.Parameters(9).Value = CType(Original_GUID,Integer) If (Original_NAME Is Nothing) Then Throw New Global.System.ArgumentNullException("Original_NAME") Else Me.Adapter.UpdateCommand.Parameters(10).Value = CType(Original_NAME,String) End If If (Original_COMMENT Is Nothing) Then Me.Adapter.UpdateCommand.Parameters(11).Value = CType(1,Object) Me.Adapter.UpdateCommand.Parameters(12).Value = Global.System.DBNull.Value Else Me.Adapter.UpdateCommand.Parameters(11).Value = CType(0,Object) Me.Adapter.UpdateCommand.Parameters(12).Value = CType(Original_COMMENT,String) End If If (Original_REGEX_EXPRESSION Is Nothing) Then Throw New Global.System.ArgumentNullException("Original_REGEX_EXPRESSION") Else Me.Adapter.UpdateCommand.Parameters(13).Value = CType(Original_REGEX_EXPRESSION,String) End If If (Original_ADDED_WHO Is Nothing) Then Throw New Global.System.ArgumentNullException("Original_ADDED_WHO") Else Me.Adapter.UpdateCommand.Parameters(14).Value = CType(Original_ADDED_WHO,String) End If If (Original_ADDED_WHEN.HasValue = true) Then Me.Adapter.UpdateCommand.Parameters(15).Value = CType(0,Object) Me.Adapter.UpdateCommand.Parameters(16).Value = CType(Original_ADDED_WHEN.Value,Date) Else Me.Adapter.UpdateCommand.Parameters(15).Value = CType(1,Object) Me.Adapter.UpdateCommand.Parameters(16).Value = Global.System.DBNull.Value End If If (Original_CHANGED_WHO Is Nothing) Then Me.Adapter.UpdateCommand.Parameters(17).Value = CType(1,Object) Me.Adapter.UpdateCommand.Parameters(18).Value = Global.System.DBNull.Value Else Me.Adapter.UpdateCommand.Parameters(17).Value = CType(0,Object) Me.Adapter.UpdateCommand.Parameters(18).Value = CType(Original_CHANGED_WHO,String) End If If (Original_CHANGED_WHEN.HasValue = true) Then Me.Adapter.UpdateCommand.Parameters(19).Value = CType(0,Object) Me.Adapter.UpdateCommand.Parameters(20).Value = CType(Original_CHANGED_WHEN.Value,Date) Else Me.Adapter.UpdateCommand.Parameters(19).Value = CType(1,Object) Me.Adapter.UpdateCommand.Parameters(20).Value = Global.System.DBNull.Value End If Me.Adapter.UpdateCommand.Parameters(21).Value = CType(Original_ACTIVE,Boolean) Me.Adapter.UpdateCommand.Parameters(22).Value = CType(Original_PROFILE_TYPE,Short) Me.Adapter.UpdateCommand.Parameters(23).Value = CType(GUID,Integer) Dim previousConnectionState As Global.System.Data.ConnectionState = Me.Adapter.UpdateCommand.Connection.State If ((Me.Adapter.UpdateCommand.Connection.State And Global.System.Data.ConnectionState.Open) _ <> Global.System.Data.ConnectionState.Open) Then Me.Adapter.UpdateCommand.Connection.Open End If Try Dim returnValue As Integer = Me.Adapter.UpdateCommand.ExecuteNonQuery Return returnValue Finally If (previousConnectionState = Global.System.Data.ConnectionState.Closed) Then Me.Adapter.UpdateCommand.Connection.Close End If End Try End Function _ Public Overloads Overridable Function Update( _ ByVal NAME As String, _ ByVal COMMENT As String, _ ByVal REGEX_EXPRESSION As String, _ ByVal ADDED_WHO As String, _ ByVal ADDED_WHEN As Global.System.Nullable(Of Date), _ ByVal CHANGED_WHO As String, _ ByVal CHANGED_WHEN As Global.System.Nullable(Of Date), _ ByVal ACTIVE As Boolean, _ ByVal PROFILE_TYPE As Short, _ ByVal Original_GUID As Integer, _ ByVal Original_NAME As String, _ ByVal Original_COMMENT As String, _ ByVal Original_REGEX_EXPRESSION As String, _ ByVal Original_ADDED_WHO As String, _ ByVal Original_ADDED_WHEN As Global.System.Nullable(Of Date), _ ByVal Original_CHANGED_WHO As String, _ ByVal Original_CHANGED_WHEN As Global.System.Nullable(Of Date), _ ByVal Original_ACTIVE As Boolean, _ ByVal Original_PROFILE_TYPE As Short) As Integer Return Me.Update(NAME, COMMENT, REGEX_EXPRESSION, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, ACTIVE, PROFILE_TYPE, Original_GUID, Original_NAME, Original_COMMENT, Original_REGEX_EXPRESSION, Original_ADDED_WHO, Original_ADDED_WHEN, Original_CHANGED_WHO, Original_CHANGED_WHEN, Original_ACTIVE, Original_PROFILE_TYPE, Original_GUID) End Function End Class ''' '''TableAdapterManager is used to coordinate TableAdapters in the dataset to enable Hierarchical Update scenarios ''' _ Partial Public Class TableAdapterManager Inherits Global.System.ComponentModel.Component Private _updateOrder As UpdateOrderOption Private _tBCW_PROFILESTableAdapter As TBCW_PROFILESTableAdapter Private _backupDataSetBeforeUpdate As Boolean Private _connection As Global.System.Data.IDbConnection _ Public Property UpdateOrder() As UpdateOrderOption Get Return Me._updateOrder End Get Set Me._updateOrder = value End Set End Property _ Public Property TBCW_PROFILESTableAdapter() As TBCW_PROFILESTableAdapter Get Return Me._tBCW_PROFILESTableAdapter End Get Set Me._tBCW_PROFILESTableAdapter = value End Set End Property _ Public Property BackupDataSetBeforeUpdate() As Boolean Get Return Me._backupDataSetBeforeUpdate End Get Set Me._backupDataSetBeforeUpdate = value End Set End Property _ Public Property Connection() As Global.System.Data.IDbConnection Get If (Not (Me._connection) Is Nothing) Then Return Me._connection End If If ((Not (Me._tBCW_PROFILESTableAdapter) Is Nothing) _ AndAlso (Not (Me._tBCW_PROFILESTableAdapter.Connection) Is Nothing)) Then Return Me._tBCW_PROFILESTableAdapter.Connection End If Return Nothing End Get Set Me._connection = value End Set End Property _ Public ReadOnly Property TableAdapterInstanceCount() As Integer Get Dim count As Integer = 0 If (Not (Me._tBCW_PROFILESTableAdapter) Is Nothing) Then count = (count + 1) End If Return count End Get End Property ''' '''Update rows in top-down order. ''' _ Private Function UpdateUpdatedRows(ByVal dataSet As DSClipboardWatcher, ByVal allChangedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow), ByVal allAddedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)) As Integer Dim result As Integer = 0 If (Not (Me._tBCW_PROFILESTableAdapter) Is Nothing) Then Dim updatedRows() As Global.System.Data.DataRow = dataSet.TBCW_PROFILES.Select(Nothing, Nothing, Global.System.Data.DataViewRowState.ModifiedCurrent) updatedRows = Me.GetRealUpdatedRows(updatedRows, allAddedRows) If ((Not (updatedRows) Is Nothing) _ AndAlso (0 < updatedRows.Length)) Then result = (result + Me._tBCW_PROFILESTableAdapter.Update(updatedRows)) allChangedRows.AddRange(updatedRows) End If End If Return result End Function ''' '''Insert rows in top-down order. ''' _ Private Function UpdateInsertedRows(ByVal dataSet As DSClipboardWatcher, ByVal allAddedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)) As Integer Dim result As Integer = 0 If (Not (Me._tBCW_PROFILESTableAdapter) Is Nothing) Then Dim addedRows() As Global.System.Data.DataRow = dataSet.TBCW_PROFILES.Select(Nothing, Nothing, Global.System.Data.DataViewRowState.Added) If ((Not (addedRows) Is Nothing) _ AndAlso (0 < addedRows.Length)) Then result = (result + Me._tBCW_PROFILESTableAdapter.Update(addedRows)) allAddedRows.AddRange(addedRows) End If End If Return result End Function ''' '''Delete rows in bottom-up order. ''' _ Private Function UpdateDeletedRows(ByVal dataSet As DSClipboardWatcher, ByVal allChangedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)) As Integer Dim result As Integer = 0 If (Not (Me._tBCW_PROFILESTableAdapter) Is Nothing) Then Dim deletedRows() As Global.System.Data.DataRow = dataSet.TBCW_PROFILES.Select(Nothing, Nothing, Global.System.Data.DataViewRowState.Deleted) If ((Not (deletedRows) Is Nothing) _ AndAlso (0 < deletedRows.Length)) Then result = (result + Me._tBCW_PROFILESTableAdapter.Update(deletedRows)) allChangedRows.AddRange(deletedRows) End If End If Return result End Function ''' '''Remove inserted rows that become updated rows after calling TableAdapter.Update(inserted rows) first ''' _ Private Function GetRealUpdatedRows(ByVal updatedRows() As Global.System.Data.DataRow, ByVal allAddedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)) As Global.System.Data.DataRow() If ((updatedRows Is Nothing) _ OrElse (updatedRows.Length < 1)) Then Return updatedRows End If If ((allAddedRows Is Nothing) _ OrElse (allAddedRows.Count < 1)) Then Return updatedRows End If Dim realUpdatedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow) = New Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)() Dim i As Integer = 0 Do While (i < updatedRows.Length) Dim row As Global.System.Data.DataRow = updatedRows(i) If (allAddedRows.Contains(row) = false) Then realUpdatedRows.Add(row) End If i = (i + 1) Loop Return realUpdatedRows.ToArray End Function ''' '''Update all changes to the dataset. ''' _ Public Overridable Function UpdateAll(ByVal dataSet As DSClipboardWatcher) As Integer If (dataSet Is Nothing) Then Throw New Global.System.ArgumentNullException("dataSet") End If If (dataSet.HasChanges = false) Then Return 0 End If If ((Not (Me._tBCW_PROFILESTableAdapter) Is Nothing) _ AndAlso (Me.MatchTableAdapterConnection(Me._tBCW_PROFILESTableAdapter.Connection) = false)) Then Throw New Global.System.ArgumentException("Für alle von einem TableAdapterManager verwalteten Instanzen von TableAdapter mus"& _ "s die gleiche Verbindungszeichenfolge verwendet werden.") End If Dim workConnection As Global.System.Data.IDbConnection = Me.Connection If (workConnection Is Nothing) Then Throw New Global.System.ApplicationException("TableAdapterManager enthält keine Verbindungsinformationen. Legen Sie jede TableA"& _ "dapterManager TableAdapter-Eigenschaft auf eine gültige TableAdapter-Instanz fes"& _ "t.") End If Dim workConnOpened As Boolean = false If ((workConnection.State And Global.System.Data.ConnectionState.Broken) _ = Global.System.Data.ConnectionState.Broken) Then workConnection.Close End If If (workConnection.State = Global.System.Data.ConnectionState.Closed) Then workConnection.Open workConnOpened = true End If Dim workTransaction As Global.System.Data.IDbTransaction = workConnection.BeginTransaction If (workTransaction Is Nothing) Then Throw New Global.System.ApplicationException("Die Transaktion kann nicht gestartet werden. Die aktuelle Datenverbindung unterst"& _ "ützt keine Transaktionen, oder der aktuelle Zustand lässt den Start der Transakt"& _ "ion nicht zu.") End If Dim allChangedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow) = New Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)() Dim allAddedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow) = New Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)() Dim adaptersWithAcceptChangesDuringUpdate As Global.System.Collections.Generic.List(Of Global.System.Data.Common.DataAdapter) = New Global.System.Collections.Generic.List(Of Global.System.Data.Common.DataAdapter)() Dim revertConnections As Global.System.Collections.Generic.Dictionary(Of Object, Global.System.Data.IDbConnection) = New Global.System.Collections.Generic.Dictionary(Of Object, Global.System.Data.IDbConnection)() Dim result As Integer = 0 Dim backupDataSet As Global.System.Data.DataSet = Nothing If Me.BackupDataSetBeforeUpdate Then backupDataSet = New Global.System.Data.DataSet() backupDataSet.Merge(dataSet) End If Try '---- Prepare for update ----------- ' If (Not (Me._tBCW_PROFILESTableAdapter) Is Nothing) Then revertConnections.Add(Me._tBCW_PROFILESTableAdapter, Me._tBCW_PROFILESTableAdapter.Connection) Me._tBCW_PROFILESTableAdapter.Connection = CType(workConnection,Global.System.Data.SqlClient.SqlConnection) Me._tBCW_PROFILESTableAdapter.Transaction = CType(workTransaction,Global.System.Data.SqlClient.SqlTransaction) If Me._tBCW_PROFILESTableAdapter.Adapter.AcceptChangesDuringUpdate Then Me._tBCW_PROFILESTableAdapter.Adapter.AcceptChangesDuringUpdate = false adaptersWithAcceptChangesDuringUpdate.Add(Me._tBCW_PROFILESTableAdapter.Adapter) End If End If ' '---- Perform updates ----------- ' If (Me.UpdateOrder = UpdateOrderOption.UpdateInsertDelete) Then result = (result + Me.UpdateUpdatedRows(dataSet, allChangedRows, allAddedRows)) result = (result + Me.UpdateInsertedRows(dataSet, allAddedRows)) Else result = (result + Me.UpdateInsertedRows(dataSet, allAddedRows)) result = (result + Me.UpdateUpdatedRows(dataSet, allChangedRows, allAddedRows)) End If result = (result + Me.UpdateDeletedRows(dataSet, allChangedRows)) ' '---- Commit updates ----------- ' workTransaction.Commit If (0 < allAddedRows.Count) Then Dim rows((allAddedRows.Count) - 1) As Global.System.Data.DataRow allAddedRows.CopyTo(rows) Dim i As Integer = 0 Do While (i < rows.Length) Dim row As Global.System.Data.DataRow = rows(i) row.AcceptChanges i = (i + 1) Loop End If If (0 < allChangedRows.Count) Then Dim rows((allChangedRows.Count) - 1) As Global.System.Data.DataRow allChangedRows.CopyTo(rows) Dim i As Integer = 0 Do While (i < rows.Length) Dim row As Global.System.Data.DataRow = rows(i) row.AcceptChanges i = (i + 1) Loop End If Catch ex As Global.System.Exception workTransaction.Rollback '---- Restore the dataset ----------- If Me.BackupDataSetBeforeUpdate Then Global.System.Diagnostics.Debug.Assert((Not (backupDataSet) Is Nothing)) dataSet.Clear dataSet.Merge(backupDataSet) Else If (0 < allAddedRows.Count) Then Dim rows((allAddedRows.Count) - 1) As Global.System.Data.DataRow allAddedRows.CopyTo(rows) Dim i As Integer = 0 Do While (i < rows.Length) Dim row As Global.System.Data.DataRow = rows(i) row.AcceptChanges row.SetAdded i = (i + 1) Loop End If End If Throw ex Finally If workConnOpened Then workConnection.Close End If If (Not (Me._tBCW_PROFILESTableAdapter) Is Nothing) Then Me._tBCW_PROFILESTableAdapter.Connection = CType(revertConnections(Me._tBCW_PROFILESTableAdapter),Global.System.Data.SqlClient.SqlConnection) Me._tBCW_PROFILESTableAdapter.Transaction = Nothing End If If (0 < adaptersWithAcceptChangesDuringUpdate.Count) Then Dim adapters((adaptersWithAcceptChangesDuringUpdate.Count) - 1) As Global.System.Data.Common.DataAdapter adaptersWithAcceptChangesDuringUpdate.CopyTo(adapters) Dim i As Integer = 0 Do While (i < adapters.Length) Dim adapter As Global.System.Data.Common.DataAdapter = adapters(i) adapter.AcceptChangesDuringUpdate = true i = (i + 1) Loop End If End Try Return result End Function _ Protected Overridable Sub SortSelfReferenceRows(ByVal rows() As Global.System.Data.DataRow, ByVal relation As Global.System.Data.DataRelation, ByVal childFirst As Boolean) Global.System.Array.Sort(Of Global.System.Data.DataRow)(rows, New SelfReferenceComparer(relation, childFirst)) End Sub _ Protected Overridable Function MatchTableAdapterConnection(ByVal inputConnection As Global.System.Data.IDbConnection) As Boolean If (Not (Me._connection) Is Nothing) Then Return true End If If ((Me.Connection Is Nothing) _ OrElse (inputConnection Is Nothing)) Then Return true End If If String.Equals(Me.Connection.ConnectionString, inputConnection.ConnectionString, Global.System.StringComparison.Ordinal) Then Return true End If Return false End Function ''' '''Update Order Option ''' _ Public Enum UpdateOrderOption InsertUpdateDelete = 0 UpdateInsertDelete = 1 End Enum ''' '''Used to sort self-referenced table's rows ''' _ Private Class SelfReferenceComparer Inherits Object Implements Global.System.Collections.Generic.IComparer(Of Global.System.Data.DataRow) Private _relation As Global.System.Data.DataRelation Private _childFirst As Integer _ Friend Sub New(ByVal relation As Global.System.Data.DataRelation, ByVal childFirst As Boolean) MyBase.New Me._relation = relation If childFirst Then Me._childFirst = -1 Else Me._childFirst = 1 End If End Sub _ Private Function GetRoot(ByVal row As Global.System.Data.DataRow, ByRef distance As Integer) As Global.System.Data.DataRow Global.System.Diagnostics.Debug.Assert((Not (row) Is Nothing)) Dim root As Global.System.Data.DataRow = row distance = 0 Dim traversedRows As Global.System.Collections.Generic.IDictionary(Of Global.System.Data.DataRow, Global.System.Data.DataRow) = New Global.System.Collections.Generic.Dictionary(Of Global.System.Data.DataRow, Global.System.Data.DataRow)() traversedRows(row) = row Dim parent As Global.System.Data.DataRow = row.GetParentRow(Me._relation, Global.System.Data.DataRowVersion.[Default]) Do While ((Not (parent) Is Nothing) _ AndAlso (traversedRows.ContainsKey(parent) = false)) distance = (distance + 1) root = parent traversedRows(parent) = parent parent = parent.GetParentRow(Me._relation, Global.System.Data.DataRowVersion.[Default]) Loop If (distance = 0) Then traversedRows.Clear traversedRows(row) = row parent = row.GetParentRow(Me._relation, Global.System.Data.DataRowVersion.Original) Do While ((Not (parent) Is Nothing) _ AndAlso (traversedRows.ContainsKey(parent) = false)) distance = (distance + 1) root = parent traversedRows(parent) = parent parent = parent.GetParentRow(Me._relation, Global.System.Data.DataRowVersion.Original) Loop End If Return root End Function _ Public Function Compare(ByVal row1 As Global.System.Data.DataRow, ByVal row2 As Global.System.Data.DataRow) As Integer Implements Global.System.Collections.Generic.IComparer(Of Global.System.Data.DataRow).Compare If Object.ReferenceEquals(row1, row2) Then Return 0 End If If (row1 Is Nothing) Then Return -1 End If If (row2 Is Nothing) Then Return 1 End If Dim distance1 As Integer = 0 Dim root1 As Global.System.Data.DataRow = Me.GetRoot(row1, distance1) Dim distance2 As Integer = 0 Dim root2 As Global.System.Data.DataRow = Me.GetRoot(row2, distance2) If Object.ReferenceEquals(root1, root2) Then Return (Me._childFirst * distance1.CompareTo(distance2)) Else Global.System.Diagnostics.Debug.Assert(((Not (root1.Table) Is Nothing) _ AndAlso (Not (root2.Table) Is Nothing))) If (root1.Table.Rows.IndexOf(root1) < root2.Table.Rows.IndexOf(root2)) Then Return -1 Else Return 1 End If End If End Function End Class End Class End Namespace