This commit is contained in:
Digital Data - Marlon Schreiber 2018-07-12 16:07:47 +02:00
commit f60a163a88
9 changed files with 438 additions and 292 deletions

View File

@ -1,11 +1,17 @@
Imports Oracle.ManagedDataAccess.Client Imports System.Data.SqlClient
Imports Oracle.ManagedDataAccess.Client
Public Class ClassDatabase Public Class ClassDatabase
Private Const NETWORK_TIMEOUT As Integer = -1
Private Shared SQLSERVERConnectionString As String Private Shared SQLSERVERConnectionString As String
Private Shared OracleConnectionString As String Private Shared OracleConnectionString As String
Public Shared DatabaseConnectionTimeout As Boolean = False
Public Shared Function Init() Public Shared Function Init()
Try Try
SQLSERVERConnectionString = MyConnectionString SQLSERVERConnectionString = MyConnectionString
Dim SQLconnect As New SqlClient.SqlConnection Dim SQLconnect As New SqlConnection
SQLconnect.ConnectionString = SQLSERVERConnectionString SQLconnect.ConnectionString = SQLSERVERConnectionString
SQLconnect.Open() SQLconnect.Open()
SQLconnect.Close() SQLconnect.Close()
@ -16,95 +22,158 @@ Public Class ClassDatabase
End Try End Try
End Function End Function
Public Shared Function Return_Datatable(Select_anweisung As String, Optional userInput As Boolean = False) Public Shared Function Return_Datatable(sql_command As String, Optional userInput As Boolean = False)
Try Try
Dim SQLconnect As New SqlClient.SqlConnection Dim SQLconnect As New SqlConnection
Dim SQLcommand As SqlClient.SqlCommand Dim SQLcommand As SqlCommand
SQLconnect.ConnectionString = SQLSERVERConnectionString SQLconnect.ConnectionString = SQLSERVERConnectionString
SQLconnect.Open() SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand SQLcommand = SQLconnect.CreateCommand
SQLcommand.CommandText = Select_anweisung SQLcommand.CommandText = sql_command
Dim adapter1 As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter(SQLcommand) Dim adapter1 As SqlDataAdapter = New SqlDataAdapter(SQLcommand)
Dim dt As DataTable = New DataTable() Dim dt As DataTable = New DataTable()
adapter1.Fill(dt) adapter1.Fill(dt)
SQLconnect.Close() SQLconnect.Close()
Return dt
' Reset timeout counter when query was sucessful
DatabaseConnectionTimeout = False
Return dt
Catch ex As SqlException
Dim handled = CatchDatabaseTimeout(ex, sql_command)
If Not handled Then
If userInput = True Then
MsgBox("Error in Return_Datatable - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
End If
ClassLogger.Add("Unexpected error in Return_Datatable: " & ex.Message, True)
ClassLogger.Add("#SQL: " & sql_command, False)
End If
Return False
Catch ex As Exception Catch ex As Exception
If userInput = True Then If userInput = True Then
MsgBox("Error in Return Datatable - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & Select_anweisung, MsgBoxStyle.Critical) MsgBox("Error in Return Datatable - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
End If End If
ClassLogger.Add("Unexpected error in Return_Datatable: " & ex.Message, True) ClassLogger.Add("Unexpected error in Return_Datatable: " & ex.Message, True)
ClassLogger.Add("#SQL: " & Select_anweisung, False) ClassLogger.Add("#SQL: " & sql_command, False)
Return Nothing Return Nothing
End Try End Try
End Function End Function
Public Shared Function Return_Datatable_CS(Select_anweisung As String, ConString As String, Optional userInput As Boolean = False) Public Shared Function Return_Datatable_CS(sql_command As String, ConString As String, Optional userInput As Boolean = False)
Try Try
Dim SQLconnect As New SqlClient.SqlConnection Dim SQLconnect As New SqlConnection
Dim SQLcommand As SqlClient.SqlCommand Dim SQLcommand As SqlCommand
SQLconnect.ConnectionString = ConString SQLconnect.ConnectionString = ConString
SQLconnect.Open() SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand SQLcommand = SQLconnect.CreateCommand
SQLcommand.CommandText = Select_anweisung SQLcommand.CommandText = sql_command
Dim adapter1 As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter(SQLcommand) Dim adapter1 As SqlDataAdapter = New SqlDataAdapter(SQLcommand)
Dim dt As DataTable = New DataTable() Dim dt As DataTable = New DataTable()
adapter1.Fill(dt) adapter1.Fill(dt)
SQLconnect.Close() SQLconnect.Close()
' Reset timeout counter when query was sucessful
DatabaseConnectionTimeout = False
Return dt Return dt
Catch ex As SqlException
Dim handled = CatchDatabaseTimeout(ex, sql_command)
If Not handled Then
If userInput = True Then
MsgBox("Error in Return_Datatable_CS - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
End If
ClassLogger.Add("Unexpected error in Return_Datatable_CS: " & ex.Message, True)
ClassLogger.Add("#SQL: " & sql_command, False)
End If
Return False
Catch ex As Exception Catch ex As Exception
If userInput = True Then If userInput = True Then
MsgBox("Error in Return_Datatable_CS - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & Select_anweisung, MsgBoxStyle.Critical) MsgBox("Error in Return_Datatable_CS - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
End If End If
ClassLogger.Add("Unexpected error in Return_Datatable_CS: " & ex.Message, True) ClassLogger.Add("Unexpected error in Return_Datatable_CS: " & ex.Message, True)
ClassLogger.Add("#SQL: " & Select_anweisung, False) ClassLogger.Add("#SQL: " & sql_command, False)
Return Nothing Return Nothing
End Try End Try
End Function End Function
Public Shared Function Execute_non_Query(ExecuteCMD As String, Optional userInput As Boolean = False) Public Shared Function Execute_non_Query(sql_command As String, Optional userInput As Boolean = False)
Try Try
Dim SQLconnect As New SqlClient.SqlConnection Dim SQLconnect As New SqlConnection
Dim SQLcommand As SqlClient.SqlCommand Dim SQLcommand As SqlCommand
SQLconnect.ConnectionString = SQLSERVERConnectionString SQLconnect.ConnectionString = SQLSERVERConnectionString
SQLconnect.Open() SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand SQLcommand = SQLconnect.CreateCommand
'Update Last Created Record in Foo 'Update Last Created Record in Foo
SQLcommand.CommandText = ExecuteCMD SQLcommand.CommandText = sql_command
SQLcommand.ExecuteNonQuery() SQLcommand.ExecuteNonQuery()
SQLcommand.Dispose() SQLcommand.Dispose()
SQLconnect.Close() SQLconnect.Close()
' Reset timeout counter when query was sucessful
DatabaseConnectionTimeout = False
Return True Return True
Catch ex As SqlException
Dim handled = CatchDatabaseTimeout(ex, sql_command)
If Not handled Then
If userInput = True Then
MsgBox("Error in Execute non query - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
End If
ClassLogger.Add("Unexpected error in Execute_non_Query: " & ex.Message, True)
ClassLogger.Add("#SQL: " & sql_command, False)
End If
Return False
Catch ex As Exception Catch ex As Exception
If userInput = True Then If userInput = True Then
MsgBox("Error in Execute non query - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & ExecuteCMD, MsgBoxStyle.Critical) MsgBox("Error in Execute non query - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
End If End If
ClassLogger.Add("Unexpected error in Execute_non_Query: " & ex.Message, True) ClassLogger.Add("Unexpected error in Execute_non_Query: " & ex.Message, True)
ClassLogger.Add("#SQL: " & ExecuteCMD, False) ClassLogger.Add("#SQL: " & sql_command, False)
Return False Return False
End Try End Try
End Function End Function
Public Shared Function Execute_Scalar(cmdscalar As String, ConString As String, Optional userInput As Boolean = False) Public Shared Function Execute_Scalar(sql_command As String, ConString As String, Optional userInput As Boolean = False)
Dim result Dim result
Try Try
Dim SQLconnect As New SqlClient.SqlConnection Dim SQLconnect As New SqlConnection
Dim SQLcommand As SqlClient.SqlCommand Dim SQLcommand As SqlCommand
SQLconnect.ConnectionString = ConString SQLconnect.ConnectionString = ConString
SQLconnect.Open() SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand SQLcommand = SQLconnect.CreateCommand
'Update Last Created Record in Foo 'Update Last Created Record in Foo
SQLcommand.CommandText = cmdscalar SQLcommand.CommandText = sql_command
result = SQLcommand.ExecuteScalar() result = SQLcommand.ExecuteScalar()
SQLcommand.Dispose() SQLcommand.Dispose()
SQLconnect.Close() SQLconnect.Close()
' Reset timeout counter when query was sucessful
DatabaseConnectionTimeout = False
Return result Return result
Catch ex As SqlException
Dim handled = CatchDatabaseTimeout(ex, sql_command)
If Not handled Then
If userInput = True Then
MsgBox("Error in Execute non query - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
End If
ClassLogger.Add("Unexpected error in Execute_non_Query: " & ex.Message, True)
ClassLogger.Add("#SQL: " & sql_command, False)
End If
Return False
Catch ex As Exception Catch ex As Exception
If userInput = True Then If userInput = True Then
MsgBox("Error in Execute Scalar - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & cmdscalar, MsgBoxStyle.Critical) MsgBox("Error in Execute Scalar - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & sql_command, MsgBoxStyle.Critical)
End If End If
ClassLogger.Add("Unexpected error in Execute_Scalar: " & ex.Message, True) ClassLogger.Add("Unexpected error in Execute_Scalar: " & ex.Message, True)
ClassLogger.Add("#SQL: " & cmdscalar, False) ClassLogger.Add("#SQL: " & sql_command, False)
Return Nothing Return Nothing
End Try End Try
End Function End Function
@ -175,4 +244,19 @@ Public Class ClassDatabase
Return Nothing Return Nothing
End Try End Try
End Function End Function
Public Shared Function CatchDatabaseTimeout(ex As SqlException, sql_command As String)
Dim FatalErrors As New List(Of Integer) From {-1, -2, 121}
If FatalErrors.Contains(ex.Number) Then
DatabaseConnectionTimeout = True
ClassLogger.Add("Network timeout error in Return_Datatable: " & ex.Message, True)
ClassLogger.Add("#SQL: " & sql_command, False)
Return True
Else
Return False
End If
End Function
End Class End Class

View File

@ -6,34 +6,42 @@ Public Class ClassFolderWatcher
Public Shared FolderWatcher As FileSystemWatcher Public Shared FolderWatcher As FileSystemWatcher
Public Shared FolderWatcher_SCAN As FileSystemWatcher Public Shared FolderWatcher_SCAN As FileSystemWatcher
Public Shared Function Restart_FolderWatch() Public Shared Function Restart_FolderWatch()
If FolderWatcher.EnableRaisingEvents = True Then Try
'Gestartet also Stoppen If FolderWatcher.EnableRaisingEvents = True Then
FolderWatcher.EnableRaisingEvents = False 'Gestartet also Stoppen
FW_started = False FolderWatcher.EnableRaisingEvents = False
'FolderWatch neu instanzieren FW_started = False
FolderWatcher = New System.IO.FileSystemWatcher(CURRENT_FOLDERWATCH, "*.*") 'FolderWatch neu instanzieren
ClassLogger.Add(" >> FolderWatch neu instanziert", False) FolderWatcher = New System.IO.FileSystemWatcher(CURRENT_FOLDERWATCH, "*.*")
FolderWatcher.IncludeSubdirectories = False ClassLogger.Add(" >> FolderWatch neu instanziert", False)
FolderWatcher.EnableRaisingEvents = True FolderWatcher.IncludeSubdirectories = False
AddHandler FolderWatcher.Created, AddressOf OnCreated FolderWatcher.EnableRaisingEvents = True
FW_started = True AddHandler FolderWatcher.Created, AddressOf OnCreated
SaveConfigValue("FW_started", "True") FW_started = True
End If SaveConfigValue("FW_started", "True")
End If
Catch ex As Exception
ClassLogger.Add($"Error in Restart_FolderWatch: {ex.Message}", False)
End Try
End Function End Function
Public Shared Function Restart_FolderWatchSCAN() Public Shared Function Restart_FolderWatchSCAN()
If FolderWatcher_SCAN.EnableRaisingEvents = True Then Try
'Gestartet also Stoppen If FolderWatcher_SCAN.EnableRaisingEvents = True Then
FolderWatcher_SCAN.EnableRaisingEvents = False 'Gestartet also Stoppen
FWSCAN_started = False FolderWatcher_SCAN.EnableRaisingEvents = False
'FolderWatch neu instanzieren FWSCAN_started = False
FolderWatcher_SCAN = New System.IO.FileSystemWatcher(CURRENT_SCAN_FOLDERWATCH, "*.*") 'FolderWatch neu instanzieren
ClassLogger.Add(" >> FolderWatchScan neu instanziert", False) FolderWatcher_SCAN = New System.IO.FileSystemWatcher(CURRENT_SCAN_FOLDERWATCH, "*.*")
FolderWatcher_SCAN.IncludeSubdirectories = False ClassLogger.Add(" >> FolderWatchScan neu instanziert", False)
FolderWatcher_SCAN.EnableRaisingEvents = True FolderWatcher_SCAN.IncludeSubdirectories = False
AddHandler FolderWatcher_SCAN.Created, AddressOf OnCreated FolderWatcher_SCAN.EnableRaisingEvents = True
FWSCAN_started = True AddHandler FolderWatcher_SCAN.Created, AddressOf OnCreated
SaveConfigValue("FWSCAN_started", "True") FWSCAN_started = True
End If SaveConfigValue("FWSCAN_started", "True")
End If
Catch ex As Exception
ClassLogger.Add($"Error in Restart_FolderWatchSCAN: {ex.Message}", False)
End Try
End Function End Function
Public Shared Function StartStop_FolderWatch() Public Shared Function StartStop_FolderWatch()
Try Try
@ -151,6 +159,11 @@ Public Class ClassFolderWatcher
End If End If
End Function End Function
Private Shared Sub OnCreated(source As Object, e As FileSystemEventArgs) Private Shared Sub OnCreated(source As Object, e As FileSystemEventArgs)
If ClassDatabase.DatabaseConnectionTimeout = True Then
ClassLogger.Add(">> File handling aborted because of database timeout error!", False)
Exit Sub
End If
Try Try
For Each row As DataRow In DTEXCLUDE_FILES.Rows For Each row As DataRow In DTEXCLUDE_FILES.Rows
Dim content As String = row.Item(0).ToString.ToLower Dim content As String = row.Item(0).ToString.ToLower
@ -158,7 +171,7 @@ Public Class ClassFolderWatcher
Exit Sub Exit Sub
End If End If
Next Next
Dim handleType As String Dim handleType As String
If e.FullPath.ToLower.EndsWith(".msg") Then If e.FullPath.ToLower.EndsWith(".msg") Then
handleType = "|FW_OUTLOOK_MESSAGE|" handleType = "|FW_OUTLOOK_MESSAGE|"
@ -172,11 +185,11 @@ Public Class ClassFolderWatcher
Else Else
ClassLogger.Add(">> Folderwatcher: File already exists:" & e.FullPath, False) ClassLogger.Add(">> Folderwatcher: File already exists:" & e.FullPath, False)
End If End If
Catch ex As Exception Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in folder_watch_Created") MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in folder_watch_Created")
End Try End Try
End Sub End Sub
End Class End Class

View File

@ -851,19 +851,32 @@ Public Class ClassWindream
' ein windream-Objekt der Datei anlegen ' ein windream-Objekt der Datei anlegen
WMObject = aktWMObject 'oSession.GetWMObjectByPath(WINDREAMLib.WMEntity.WMEntityDocument, WD_File) WMObject = aktWMObject 'oSession.GetWMObjectByPath(WINDREAMLib.WMEntity.WMEntityDocument, WD_File)
Try Try
If LogErrorsOnly = False Then ClassLogger.Add(" ...Datei wird gesperrt", False)
' die Datei sperren ' die Datei sperren
WMObject.lock() WMObject.lock()
Catch ex As Exception Catch ex As Exception
If LogErrorsOnly = False Then ClassLogger.Add(" ...Datei ist bereits gesperrt", False)
' nichts tun (Datei ist bereits gesperrt) ' nichts tun (Datei ist bereits gesperrt)
End Try End Try
If IsNothing(WMObject) Then
If LogErrorsOnly = False Then ClassLogger.Add(" ...Windream Object ist nothing, Indexierung wird abgebrochen", False)
Return False
End If
If IsNothing(WMObject.aObjectType) Then
If LogErrorsOnly = False Then ClassLogger.Add(" ...Kein Objekttyp gesetzt, Indexierung wird abgebrochen", False)
Return False
End If
If LogErrorsOnly = False Then ClassLogger.Add($" ...Objekttyp wird gesetzt: " & _WDObjekttyp, False)
' wenn der Datei noch kein Dokumenttyp zugewiesen wurde ' wenn der Datei noch kein Dokumenttyp zugewiesen wurde
If WMObject.aObjectType.aName = "Standard" Then If WMObject.aObjectType.aName = "Standard" Then
' ihr den entsprechenden Dokumenttyp zuweisen ' ihr den entsprechenden Dokumenttyp zuweisen
WMObject.aObjectType = oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityObjectType, _WDObjekttyp) WMObject.aObjectType = oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityObjectType, _WDObjekttyp)
' WMObject.aObjectType = Me.selectedProfile.Dokumenttyp ' WMObject.aObjectType = Me.selectedProfile.Dokumenttyp
If LogErrorsOnly = False Then ClassLogger.Add(" ...Objekttyp wird gesetzt", False) If LogErrorsOnly = False Then ClassLogger.Add(" ...Objekttyp wurde gesetzt", False)
Else Else
If LogErrorsOnly = False Then ClassLogger.Add(" ...Objekttyp war bereits gesetzt", False) If LogErrorsOnly = False Then ClassLogger.Add(" ...Objekttyp war bereits gesetzt", False)
End If End If

View File

@ -33,7 +33,7 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben: ' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.9.9.7")> <Assembly: AssemblyVersion("1.9.9.8")>
<Assembly: AssemblyFileVersion("1.0.0.0")> <Assembly: AssemblyFileVersion("1.0.0.0")>
<Assembly: NeutralResourcesLanguageAttribute("")> <Assembly: NeutralResourcesLanguageAttribute("")>

View File

@ -520,26 +520,31 @@ Public Class frmIndex
If NewDataset.Tables(0).Rows.Count > 0 Then If NewDataset.Tables(0).Rows.Count > 0 Then
'Die Standardcombobox anlegen 'Die Standardcombobox anlegen
newCMB = addCombobox(indexname, y) newCMB = addCombobox(indexname, y)
'Die Standargrösse definieren
Dim newWidth As Integer = 300
For i = 0 To NewDataset.Tables(0).Rows.Count - 1
'MsgBox(NewDataset.Tables(0).Rows(i).Item(0))
AddComboBoxValue(newCMB, NewDataset.Tables(0).Rows(i).Item(0))
Try
Dim text As String = NewDataset.Tables(0).Rows(i).Item(0)
If text.Length > 15 Then
Dim g As Graphics = newCMB.CreateGraphics
If g.MeasureString(text, newCMB.Font).Width + 30 > newWidth Then
newWidth = g.MeasureString(text, newCMB.Font).Width + 30
End If
g.Dispose()
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Anpassung Breite ComboBox:")
End Try
Next
newCMB.Size = New Size(newWidth, 27) newCMB.DataSource = NewDataset.Tables(0)
newCMB.DisplayMember = NewDataset.Tables(0).Columns(0).ColumnName
'Die Standargrösse definieren
'Dim newWidth As Integer = 300
'For i = 0 To NewDataset.Tables(0).Rows.Count - 1
' 'MsgBox(NewDataset.Tables(0).Rows(i).Item(0))
' AddComboBoxValue(newCMB, NewDataset.Tables(0).Rows(i).Item(0))
' Try
' Dim text As String = NewDataset.Tables(0).Rows(i).Item(0)
' If text.Length > 15 Then
' Dim g As Graphics = newCMB.CreateGraphics
' If g.MeasureString(text, newCMB.Font).Width + 30 > newWidth Then
' newWidth = g.MeasureString(text, newCMB.Font).Width + 30
' End If
' g.Dispose()
' End If
' Catch ex As Exception
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Anpassung Breite ComboBox:")
' End Try
'Next
'newCMB.Size = New Size(newWidth, 27)
newCMB.AutoCompleteSource = AutoCompleteSource.ListItems newCMB.AutoCompleteSource = AutoCompleteSource.ListItems
newCMB.AutoCompleteMode = AutoCompleteMode.Suggest newCMB.AutoCompleteMode = AutoCompleteMode.Suggest
newCMB.DropDownHeight = (newCMB.ItemHeight + 0.2) * 25 newCMB.DropDownHeight = (newCMB.ItemHeight + 0.2) * 25

View File

@ -181,7 +181,6 @@ Partial Class frmSQLSuggestion
Me.MaximizeBox = False Me.MaximizeBox = False
Me.MinimizeBox = False Me.MinimizeBox = False
Me.Name = "frmSQLSuggestion" Me.Name = "frmSQLSuggestion"
Me.TopMost = True
Me.GroupBox1.ResumeLayout(False) Me.GroupBox1.ResumeLayout(False)
Me.GroupBox1.PerformLayout() Me.GroupBox1.PerformLayout()
CType(Me.TBDD_CONNECTIONBindingSource, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.TBDD_CONNECTIONBindingSource, System.ComponentModel.ISupportInitialize).EndInit()

View File

@ -122,6 +122,12 @@
<value>MiddleLeft</value> <value>MiddleLeft</value>
</data> </data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="txtTest_idxMan.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1172, 489</value>
</data>
<data name="SQL_ERGEBNISTextBox.Multiline" type="System.Boolean, mscorlib"> <data name="SQL_ERGEBNISTextBox.Multiline" type="System.Boolean, mscorlib">
<value>True</value> <value>True</value>
</data> </data>
@ -129,9 +135,6 @@
<data name="SQL_UEBERPRUEFUNGLabel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> <data name="SQL_UEBERPRUEFUNGLabel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</value> <value>Top, Right</value>
</data> </data>
<data name="&gt;&gt;TableAdapterManager.Type" xml:space="preserve">
<value>Global_Indexer.MyDatasetTableAdapters.TableAdapterManager, MyDataset.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="btnTestNachbearbeitung.Location" type="System.Drawing.Point, System.Drawing"> <data name="btnTestNachbearbeitung.Location" type="System.Drawing.Point, System.Drawing">
<value>227, 59</value> <value>227, 59</value>
</data> </data>
@ -144,11 +147,11 @@
<data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.Name" xml:space="preserve"> <data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.Name" xml:space="preserve">
<value>SQL_UEBERPRUEFUNGLabel</value> <value>SQL_UEBERPRUEFUNGLabel</value>
</data> </data>
<data name="btnVorschlag.TabIndex" type="System.Int32, mscorlib"> <data name="SQL_ERGEBNISTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>48</value> <value>610, 279</value>
</data> </data>
<data name="&gt;&gt;Label2.Name" xml:space="preserve"> <data name="SQL_UEBERPRUEFUNGLabel.TabIndex" type="System.Int32, mscorlib">
<value>Label2</value> <value>51</value>
</data> </data>
<data name="lblSave.Size" type="System.Drawing.Size, System.Drawing"> <data name="lblSave.Size" type="System.Drawing.Size, System.Drawing">
<value>195, 15</value> <value>195, 15</value>
@ -156,21 +159,27 @@
<data name="&gt;&gt;Button1.Name" xml:space="preserve"> <data name="&gt;&gt;Button1.Name" xml:space="preserve">
<value>Button1</value> <value>Button1</value>
</data> </data>
<data name="&gt;&gt;SQL_ERGEBNISTextBox.Name" xml:space="preserve">
<value>SQL_ERGEBNISTextBox</value>
</data>
<data name="&gt;&gt;btnTestNachbearbeitung.Type" xml:space="preserve"> <data name="&gt;&gt;btnTestNachbearbeitung.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="btnVorschlag.Size" type="System.Drawing.Size, System.Drawing"> <data name="btnVorschlag.Size" type="System.Drawing.Size, System.Drawing">
<value>89, 25</value> <value>89, 25</value>
</data> </data>
<data name="&gt;&gt;Label2.ZOrder" xml:space="preserve"> <data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>2</value> <value>frmSQLSuggestion</value>
</data>
<data name="lblSave.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;btnTestNachbearbeitung.Parent" xml:space="preserve">
<value>GroupBox1</value>
</data> </data>
<data name="lblSave.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> <data name="lblSave.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value> <value>Bottom, Right</value>
</data> </data>
<data name="&gt;&gt;SQL_UEBERPRUEFUNGTextBox.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="Button1.Location" type="System.Drawing.Point, System.Drawing"> <data name="Button1.Location" type="System.Drawing.Point, System.Drawing">
<value>289, 22</value> <value>289, 22</value>
</data> </data>
@ -180,9 +189,6 @@
<data name="txtTest_idxMan.Size" type="System.Drawing.Size, System.Drawing"> <data name="txtTest_idxMan.Size" type="System.Drawing.Size, System.Drawing">
<value>212, 22</value> <value>212, 22</value>
</data> </data>
<data name="SQL_UEBERPRUEFUNGTextBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</value>
</data>
<data name="Button2.Text" xml:space="preserve"> <data name="Button2.Text" xml:space="preserve">
<value>Speichern</value> <value>Speichern</value>
</data> </data>
@ -192,18 +198,21 @@
<data name="&gt;&gt;SQL_UEBERPRUEFUNGTextBox.Name" xml:space="preserve"> <data name="&gt;&gt;SQL_UEBERPRUEFUNGTextBox.Name" xml:space="preserve">
<value>SQL_UEBERPRUEFUNGTextBox</value> <value>SQL_UEBERPRUEFUNGTextBox</value>
</data> </data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value>
</data>
<data name="btnTestNachbearbeitung.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing"> <data name="btnTestNachbearbeitung.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value> <value>MiddleLeft</value>
</data> </data>
<data name="lblSave.Location" type="System.Drawing.Point, System.Drawing">
<value>905, 441</value>
</data>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing"> <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value> <value>6, 13</value>
</data> </data>
<data name="Button2.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing"> <data name="Button2.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleRight</value> <value>MiddleRight</value>
</data> </data>
<data name="btnTestNachbearbeitung.Size" type="System.Drawing.Size, System.Drawing">
<value>103, 27</value>
</data>
<data name="Label2.TabIndex" type="System.Int32, mscorlib"> <data name="Label2.TabIndex" type="System.Int32, mscorlib">
<value>0</value> <value>0</value>
</data> </data>
@ -213,11 +222,8 @@
<data name="&gt;&gt;TBDD_CONNECTIONTableAdapter.Name" xml:space="preserve"> <data name="&gt;&gt;TBDD_CONNECTIONTableAdapter.Name" xml:space="preserve">
<value>TBDD_CONNECTIONTableAdapter</value> <value>TBDD_CONNECTIONTableAdapter</value>
</data> </data>
<data name="&gt;&gt;Button1.ZOrder" xml:space="preserve"> <data name="lblSave.Text" xml:space="preserve">
<value>2</value> <value>SQL-Daten erfolgreich gespeichert!</value>
</data>
<data name="lblSave.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI Semibold, 9pt, style=Bold, Italic</value>
</data> </data>
<data name="&gt;&gt;GroupBox1.Name" xml:space="preserve"> <data name="&gt;&gt;GroupBox1.Name" xml:space="preserve">
<value>GroupBox1</value> <value>GroupBox1</value>
@ -228,8 +234,8 @@
<data name="&gt;&gt;Button2.Type" xml:space="preserve"> <data name="&gt;&gt;Button2.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;Label2.Type" xml:space="preserve"> <data name="SQL_ERGEBNISLabel.Text" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>SQL für Vorschlagsliste:</value>
</data> </data>
<data name="Label2.Text" xml:space="preserve"> <data name="Label2.Text" xml:space="preserve">
<value>Geben Sie hier den Ausgangswert des manuellen Indexes ein. <value>Geben Sie hier den Ausgangswert des manuellen Indexes ein.
@ -245,35 +251,23 @@ Ergebniswert angezeigt.</value>
<data name="&gt;&gt;TBDD_CONNECTIONBindingSource.Name" xml:space="preserve"> <data name="&gt;&gt;TBDD_CONNECTIONBindingSource.Name" xml:space="preserve">
<value>TBDD_CONNECTIONBindingSource</value> <value>TBDD_CONNECTIONBindingSource</value>
</data> </data>
<data name="GroupBox1.TabIndex" type="System.Int32, mscorlib">
<value>52</value>
</data>
<data name="&gt;&gt;SQL_ERGEBNISTextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SQL_ERGEBNISTextBox.ZOrder" xml:space="preserve">
<value>7</value> <value>7</value>
</data> </data>
<data name="&gt;&gt;Button2.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;TBDD_CONNECTIONBindingSource.Type" xml:space="preserve"> <data name="&gt;&gt;TBDD_CONNECTIONBindingSource.Type" xml:space="preserve">
<value>System.Windows.Forms.BindingSource, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.BindingSource, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="SQL_UEBERPRUEFUNGLabel.TabIndex" type="System.Int32, mscorlib"> <data name="&gt;&gt;btnTestNachbearbeitung.Name" xml:space="preserve">
<value>51</value> <value>btnTestNachbearbeitung</value>
</data>
<data name="&gt;&gt;txtTest_idxMan.ZOrder" xml:space="preserve">
<value>1</value>
</data> </data>
<data name="&gt;&gt;MyDataset.Name" xml:space="preserve"> <data name="&gt;&gt;MyDataset.Name" xml:space="preserve">
<value>MyDataset</value> <value>MyDataset</value>
</data> </data>
<data name="btnVorschlag.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> <data name="&gt;&gt;Button2.ZOrder" xml:space="preserve">
<value>Top, Right</value> <value>1</value>
</data>
<data name="SQL_ERGEBNISLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 66</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmSQLSuggestion</value>
</data>
<data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.ZOrder" xml:space="preserve">
<value>8</value>
</data> </data>
<data name="SQL_UEBERPRUEFUNGLabel.Size" type="System.Drawing.Size, System.Drawing"> <data name="SQL_UEBERPRUEFUNGLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>433, 39</value> <value>433, 39</value>
@ -287,14 +281,14 @@ Ergebniswert angezeigt.</value>
<data name="SQL_UEBERPRUEFUNGLabel.AutoSize" type="System.Boolean, mscorlib"> <data name="SQL_UEBERPRUEFUNGLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value> <value>True</value>
</data> </data>
<data name="&gt;&gt;btnVorschlag.Name" xml:space="preserve">
<value>btnVorschlag</value>
</data>
<data name="SQL_ERGEBNISTextBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> <data name="SQL_ERGEBNISTextBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value> <value>Top, Bottom, Left, Right</value>
</data> </data>
<data name="&gt;&gt;btnVorschlag.Parent" xml:space="preserve"> <data name="&gt;&gt;TBDD_CONNECTIONTableAdapter.Type" xml:space="preserve">
<value>$this</value> <value>Global_Indexer.MyDatasetTableAdapters.TBDD_CONNECTIONTableAdapter, MyDataset.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;Label2.Name" xml:space="preserve">
<value>Label2</value>
</data> </data>
<data name="&gt;&gt;GroupBox1.ZOrder" xml:space="preserve"> <data name="&gt;&gt;GroupBox1.ZOrder" xml:space="preserve">
<value>4</value> <value>4</value>
@ -302,6 +296,9 @@ Ergebniswert angezeigt.</value>
<data name="&gt;&gt;TableAdapterManager.Name" xml:space="preserve"> <data name="&gt;&gt;TableAdapterManager.Name" xml:space="preserve">
<value>TableAdapterManager</value> <value>TableAdapterManager</value>
</data> </data>
<data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="btnVorschlag.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing"> <data name="btnVorschlag.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleRight</value> <value>MiddleRight</value>
</data> </data>
@ -317,15 +314,12 @@ Ergebniswert angezeigt.</value>
<data name="Button1.Size" type="System.Drawing.Size, System.Drawing"> <data name="Button1.Size" type="System.Drawing.Size, System.Drawing">
<value>112, 23</value> <value>112, 23</value>
</data> </data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing"> <data name="&gt;&gt;Button1.ZOrder" xml:space="preserve">
<value>Segoe UI, 8.25pt</value> <value>2</value>
</data> </data>
<data name="&gt;&gt;lblSave.Name" xml:space="preserve"> <data name="&gt;&gt;lblSave.Name" xml:space="preserve">
<value>lblSave</value> <value>lblSave</value>
</data> </data>
<data name="Label2.Size" type="System.Drawing.Size, System.Drawing">
<value>324, 39</value>
</data>
<data name="btnTestNachbearbeitung.Text" xml:space="preserve"> <data name="btnTestNachbearbeitung.Text" xml:space="preserve">
<value>Test</value> <value>Test</value>
</data> </data>
@ -347,8 +341,8 @@ Ergebniswert angezeigt.</value>
<data name="btnVorschlag.Location" type="System.Drawing.Point, System.Drawing"> <data name="btnVorschlag.Location" type="System.Drawing.Point, System.Drawing">
<value>536, 54</value> <value>536, 54</value>
</data> </data>
<data name="txtTest_idxMan.TabIndex" type="System.Int32, mscorlib"> <data name="&gt;&gt;SQL_ERGEBNISTextBox.Name" xml:space="preserve">
<value>0</value> <value>SQL_ERGEBNISTextBox</value>
</data> </data>
<data name="GroupBox1.Size" type="System.Drawing.Size, System.Drawing"> <data name="GroupBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>351, 93</value> <value>351, 93</value>
@ -362,8 +356,8 @@ Ergebniswert angezeigt.</value>
<data name="SQL_ERGEBNISTextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="SQL_ERGEBNISTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>15, 82</value> <value>15, 82</value>
</data> </data>
<data name="Button2.Size" type="System.Drawing.Size, System.Drawing"> <data name="&gt;&gt;TableAdapterManager.Type" xml:space="preserve">
<value>90, 31</value> <value>Global_Indexer.MyDatasetTableAdapters.TableAdapterManager, MyDataset.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="txtTest_idxMan.Location" type="System.Drawing.Point, System.Drawing"> <data name="txtTest_idxMan.Location" type="System.Drawing.Point, System.Drawing">
<value>9, 63</value> <value>9, 63</value>
@ -371,20 +365,28 @@ Ergebniswert angezeigt.</value>
<data name="&gt;&gt;cmbConnection.Name" xml:space="preserve"> <data name="&gt;&gt;cmbConnection.Name" xml:space="preserve">
<value>cmbConnection</value> <value>cmbConnection</value>
</data> </data>
<data name="&gt;&gt;SQL_ERGEBNISTextBox.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;lblSave.Type" xml:space="preserve"> <data name="&gt;&gt;lblSave.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;Button2.Parent" xml:space="preserve"> <data name="SQL_ERGEBNISLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>$this</value> <value>12, 66</value>
</data>
<data name="SQL_UEBERPRUEFUNGLabel.Text" xml:space="preserve">
<value>SQL-Überprüfung für manuellen Index:
Definieren Sie hier einen SQL-Befehl der die Auswahl auf VORHANDEN überprüft.
(SELECT COUNT(*) FROM IHRE_KEY_TABLE WHERE IHRE_WERT_SPALTE = INPUTVALUE)</value>
</data> </data>
<data name="&gt;&gt;txtTest_idxMan.Parent" xml:space="preserve"> <data name="&gt;&gt;txtTest_idxMan.Parent" xml:space="preserve">
<value>GroupBox1</value> <value>GroupBox1</value>
</data> </data>
<data name="&gt;&gt;Button2.ZOrder" xml:space="preserve"> <data name="&gt;&gt;btnVorschlag.Name" xml:space="preserve">
<value>1</value> <value>btnVorschlag</value>
</data> </data>
<data name="&gt;&gt;TBDD_CONNECTIONTableAdapter.Type" xml:space="preserve"> <data name="SQL_UEBERPRUEFUNGTextBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Global_Indexer.MyDatasetTableAdapters.TBDD_CONNECTIONTableAdapter, MyDataset.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value> <value>Top, Right</value>
</data> </data>
<data name="GroupBox1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> <data name="GroupBox1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value> <value>Bottom, Left</value>
@ -392,9 +394,6 @@ Ergebniswert angezeigt.</value>
<data name="&gt;&gt;cmbConnection.ZOrder" xml:space="preserve"> <data name="&gt;&gt;cmbConnection.ZOrder" xml:space="preserve">
<value>3</value> <value>3</value>
</data> </data>
<data name="GroupBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>15, 367</value>
</data>
<data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.Parent" xml:space="preserve"> <data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.Parent" xml:space="preserve">
<value>$this</value> <value>$this</value>
</data> </data>
@ -410,34 +409,38 @@ Ergebniswert angezeigt.</value>
<data name="cmbConnection.Location" type="System.Drawing.Point, System.Drawing"> <data name="cmbConnection.Location" type="System.Drawing.Point, System.Drawing">
<value>15, 24</value> <value>15, 24</value>
</data> </data>
<data name="SQL_UEBERPRUEFUNGLabel.Text" xml:space="preserve"> <data name="&gt;&gt;btnVorschlag.Parent" xml:space="preserve">
<value>SQL-Überprüfung für manuellen Index: <value>$this</value>
Definieren Sie hier einen SQL-Befehl der die Auswahl auf VORHANDEN überprüft. </data>
(SELECT COUNT(*) FROM IHRE_KEY_TABLE WHERE IHRE_WERT_SPALTE = INPUTVALUE)</value> <data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;SQL_ERGEBNISLabel.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SQL_ERGEBNISLabel.ZOrder" xml:space="preserve">
<value>6</value> <value>6</value>
</data> </data>
<data name="lblSave.Location" type="System.Drawing.Point, System.Drawing"> <data name="&gt;&gt;Label2.ZOrder" xml:space="preserve">
<value>905, 441</value> <value>2</value>
</data> </data>
<data name="SQL_UEBERPRUEFUNGTextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="SQL_UEBERPRUEFUNGTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>686, 108</value> <value>686, 108</value>
</data> </data>
<data name="btnVorschlag.Text" xml:space="preserve"> <data name="&gt;&gt;txtTest_idxMan.ZOrder" xml:space="preserve">
<value>Teste SQL</value> <value>1</value>
</data> </data>
<data name="SQL_UEBERPRUEFUNGLabel.Location" type="System.Drawing.Point, System.Drawing"> <data name="SQL_UEBERPRUEFUNGLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>683, 66</value> <value>683, 66</value>
</data> </data>
<data name="SQL_ERGEBNISTextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="Button2.Size" type="System.Drawing.Size, System.Drawing">
<value>610, 279</value> <value>90, 31</value>
</data> </data>
<data name="$this.Text" xml:space="preserve"> <data name="&gt;&gt;Label2.Type" xml:space="preserve">
<value>Konfiguration SQL</value> <value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="lblSave.AutoSize" type="System.Boolean, mscorlib"> <data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.ZOrder" xml:space="preserve">
<value>True</value> <value>8</value>
</data>
<data name="btnTestNachbearbeitung.Size" type="System.Drawing.Size, System.Drawing">
<value>103, 27</value>
</data> </data>
<data name="SQL_ERGEBNISLabel.AutoSize" type="System.Boolean, mscorlib"> <data name="SQL_ERGEBNISLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value> <value>True</value>
@ -448,8 +451,8 @@ Definieren Sie hier einen SQL-Befehl der die Auswahl auf VORHANDEN überprüft.
<data name="SQL_UEBERPRUEFUNGTextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="SQL_UEBERPRUEFUNGTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>483, 106</value> <value>483, 106</value>
</data> </data>
<data name="btnTestNachbearbeitung.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing"> <data name="GroupBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>MiddleRight</value> <value>15, 367</value>
</data> </data>
<data name="SQL_ERGEBNISTextBox.ScrollBars" type="System.Windows.Forms.ScrollBars, System.Windows.Forms"> <data name="SQL_ERGEBNISTextBox.ScrollBars" type="System.Windows.Forms.ScrollBars, System.Windows.Forms">
<value>Both</value> <value>Both</value>
@ -460,8 +463,11 @@ Definieren Sie hier einen SQL-Befehl der die Auswahl auf VORHANDEN überprüft.
<data name="btnTestNachbearbeitung.TabIndex" type="System.Int32, mscorlib"> <data name="btnTestNachbearbeitung.TabIndex" type="System.Int32, mscorlib">
<value>1</value> <value>1</value>
</data> </data>
<data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.Type" xml:space="preserve"> <data name="btnTestNachbearbeitung.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>MiddleRight</value>
</data>
<data name="SQL_ERGEBNISTextBox.Font" type="System.Drawing.Font, System.Drawing">
<value>Consolas, 8.25pt</value>
</data> </data>
<data name="&gt;&gt;Label2.Parent" xml:space="preserve"> <data name="&gt;&gt;Label2.Parent" xml:space="preserve">
<value>GroupBox1</value> <value>GroupBox1</value>
@ -472,14 +478,8 @@ Definieren Sie hier einen SQL-Befehl der die Auswahl auf VORHANDEN überprüft.
<data name="GroupBox1.Text" xml:space="preserve"> <data name="GroupBox1.Text" xml:space="preserve">
<value>Nachbearbeitung testen:</value> <value>Nachbearbeitung testen:</value>
</data> </data>
<data name="&gt;&gt;btnVorschlag.Type" xml:space="preserve"> <data name="lblSave.Font" type="System.Drawing.Font, System.Drawing">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>Segoe UI Semibold, 9pt, style=Bold, Italic</value>
</data>
<data name="lblSave.Text" xml:space="preserve">
<value>SQL-Daten erfolgreich gespeichert!</value>
</data>
<data name="lblSave.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data> </data>
<data name="SQL_UEBERPRUEFUNGTextBox.Font" type="System.Drawing.Font, System.Drawing"> <data name="SQL_UEBERPRUEFUNGTextBox.Font" type="System.Drawing.Font, System.Drawing">
<value>Consolas, 8.25pt</value> <value>Consolas, 8.25pt</value>
@ -487,8 +487,8 @@ Definieren Sie hier einen SQL-Befehl der die Auswahl auf VORHANDEN überprüft.
<data name="&gt;&gt;SQL_ERGEBNISTextBox.Type" xml:space="preserve"> <data name="&gt;&gt;SQL_ERGEBNISTextBox.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="SQL_ERGEBNISTextBox.Font" type="System.Drawing.Font, System.Drawing"> <data name="$this.Text" xml:space="preserve">
<value>Consolas, 8.25pt</value> <value>Konfiguration SQL</value>
</data> </data>
<data name="Button1.TabIndex" type="System.Int32, mscorlib"> <data name="Button1.TabIndex" type="System.Int32, mscorlib">
<value>54</value> <value>54</value>
@ -496,23 +496,23 @@ Definieren Sie hier einen SQL-Befehl der die Auswahl auf VORHANDEN überprüft.
<data name="Button2.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing"> <data name="Button2.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value> <value>MiddleLeft</value>
</data> </data>
<data name="&gt;&gt;btnTestNachbearbeitung.Parent" xml:space="preserve"> <data name="btnVorschlag.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>GroupBox1</value> <value>Top, Right</value>
</data> </data>
<data name="&gt;&gt;cmbConnection.Type" xml:space="preserve"> <data name="&gt;&gt;cmbConnection.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;lblSave.ZOrder" xml:space="preserve"> <data name="btnVorschlag.TabIndex" type="System.Int32, mscorlib">
<value>0</value> <value>48</value>
</data> </data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing"> <data name="GroupBox1.TabIndex" type="System.Int32, mscorlib">
<value>1172, 489</value> <value>52</value>
</data> </data>
<data name="&gt;&gt;SQL_ERGEBNISTextBox.Parent" xml:space="preserve"> <data name="&gt;&gt;btnVorschlag.Type" xml:space="preserve">
<value>$this</value> <value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;$this.Type" xml:space="preserve"> <data name="Label2.Size" type="System.Drawing.Size, System.Drawing">
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>324, 39</value>
</data> </data>
<data name="&gt;&gt;SQL_UEBERPRUEFUNGTextBox.Type" xml:space="preserve"> <data name="&gt;&gt;SQL_UEBERPRUEFUNGTextBox.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
@ -523,17 +523,17 @@ Definieren Sie hier einen SQL-Befehl der die Auswahl auf VORHANDEN überprüft.
<data name="&gt;&gt;cmbConnection.Parent" xml:space="preserve"> <data name="&gt;&gt;cmbConnection.Parent" xml:space="preserve">
<value>$this</value> <value>$this</value>
</data> </data>
<data name="SQL_ERGEBNISLabel.Text" xml:space="preserve"> <data name="lblSave.Visible" type="System.Boolean, mscorlib">
<value>SQL für Vorschlagsliste:</value> <value>False</value>
</data> </data>
<data name="&gt;&gt;btnTestNachbearbeitung.Name" xml:space="preserve"> <data name="&gt;&gt;lblSave.ZOrder" xml:space="preserve">
<value>btnTestNachbearbeitung</value> <value>0</value>
</data> </data>
<data name="&gt;&gt;Button2.Name" xml:space="preserve"> <data name="&gt;&gt;Button2.Name" xml:space="preserve">
<value>Button2</value> <value>Button2</value>
</data> </data>
<data name="&gt;&gt;SQL_UEBERPRUEFUNGTextBox.Parent" xml:space="preserve"> <data name="btnVorschlag.Text" xml:space="preserve">
<value>$this</value> <value>Teste SQL</value>
</data> </data>
<data name="SQL_UEBERPRUEFUNGTextBox.TabIndex" type="System.Int32, mscorlib"> <data name="SQL_UEBERPRUEFUNGTextBox.TabIndex" type="System.Int32, mscorlib">
<value>49</value> <value>49</value>

View File

@ -83,7 +83,7 @@ Public NotInheritable Class frmSplash
' Bei Fehler MsgBox anzeigen und Programm beenden ' Bei Fehler MsgBox anzeigen und Programm beenden
If e.Error IsNot Nothing Then If e.Error IsNot Nothing Then
MsgBox(e.Error.Message, MsgBoxStyle.Critical, "Error while Initializing application") MsgBox(e.Error.Message, MsgBoxStyle.Critical, "Error while Initializing application")
Application.Exit() Application.ExitThread()
End If End If
' Wenn kein Fehler, Splashscreen schließen ' Wenn kein Fehler, Splashscreen schließen

View File

@ -486,68 +486,79 @@ Public Class frmStart
Else Else
tslblFW.Visible = False tslblFW.Visible = False
End If End If
If FWSCAN_started = True Then
If LogErrorsOnly = False Then ClassLogger.Add(">> FWSCAN started - Checking file:" & CURRENT_SCAN_FOLDERWATCH, False)
Dim fileEntries As String() = Directory.GetFiles(CURRENT_SCAN_FOLDERWATCH)
' Process the list of files found in the directory.
Dim fileName As String
For Each fileName In fileEntries
If LogErrorsOnly = False Then ClassLogger.Add(">> Scanfolder after startup: Checking file:" & fileName, False)
For Each row As DataRow In DTEXCLUDE_FILES.Rows
Dim content As String = row.Item(0).ToString.ToLower
If fileName.ToLower.Contains(content) Then
Exit Sub
End If
Next
Dim handleType As String
If fileName.ToLower.EndsWith(".msg") Then
handleType = "|FW_OUTLOOK_MESSAGE|"
Else
handleType = "|FW_SIMPLEINDEXER|"
End If
'Die Datei übergeben
If LogErrorsOnly = False Then ClassLogger.Add(">> Adding file from Scanfolder after startup:" & fileName, False)
If ClassIndexFunctions.FileExistsinDropTable(fileName) = False Then
ClassFilehandle.Decide_FileHandle(fileName, handleType)
Else
ClassLogger.Add(">> Scanfolder Startup: File already exists:" & fileName, False)
End If
Next fileName
Else Try
If LogErrorsOnly = False Then ClassLogger.Add(">> FWSCAN not started", False) If FWSCAN_started = True Then
End If If LogErrorsOnly = False Then ClassLogger.Add(">> FWSCAN started - Checking file:" & CURRENT_SCAN_FOLDERWATCH, False)
If FW_started = True Then Dim fileEntries As String() = Directory.GetFiles(CURRENT_SCAN_FOLDERWATCH)
If LogErrorsOnly = False Then ClassLogger.Add(">> FW_started started - Checking file:" & CURRENT_FOLDERWATCH, False) ' Process the list of files found in the directory.
Dim fileEntries As String() = Directory.GetFiles(CURRENT_FOLDERWATCH) Dim fileName As String
' Process the list of files found in the directory. For Each fileName In fileEntries
Dim fileName As String If LogErrorsOnly = False Then ClassLogger.Add(">> Scanfolder after startup: Checking file:" & fileName, False)
For Each fileName In fileEntries For Each row As DataRow In DTEXCLUDE_FILES.Rows
If LogErrorsOnly = False Then ClassLogger.Add(">> Folderwach after startup: Checking file:" & fileName, False) Dim content As String = row.Item(0).ToString.ToLower
For Each row As DataRow In DTEXCLUDE_FILES.Rows If fileName.ToLower.Contains(content) Then
Dim content As String = row.Item(0).ToString.ToLower Exit Sub
If fileName.ToLower.Contains(content) Then End If
Exit Sub Next
Dim handleType As String
If fileName.ToLower.EndsWith(".msg") Then
handleType = "|FW_OUTLOOK_MESSAGE|"
Else
handleType = "|FW_SIMPLEINDEXER|"
End If End If
Next 'Die Datei übergeben
Dim handleType As String If LogErrorsOnly = False Then ClassLogger.Add(">> Adding file from Scanfolder after startup:" & fileName, False)
If fileName.ToLower.EndsWith(".msg") Then If ClassIndexFunctions.FileExistsinDropTable(fileName) = False Then
handleType = "|FW_OUTLOOK_MESSAGE|" ClassFilehandle.Decide_FileHandle(fileName, handleType)
Else Else
handleType = "|FW_SIMPLEINDEXER|" ClassLogger.Add(">> Scanfolder Startup: File already exists:" & fileName, False)
End If End If
'Die Datei übergeben Next fileName
If LogErrorsOnly = False Then ClassLogger.Add(">> Adding file from Folderwatch after startup:" & fileName, False)
If ClassIndexFunctions.FileExistsinDropTable(fileName) = False Then Else
ClassFilehandle.Decide_FileHandle(fileName, handleType) If LogErrorsOnly = False Then ClassLogger.Add(">> FWSCAN not started", False)
Else End If
ClassLogger.Add(">> Folderwatch Startup: File already exists:" & fileName, False) Catch ex As Exception
End If ClassLogger.Add(">> Error while starting folderwatch scan: " & ex.Message, False)
Next fileName End Try
Try
If FW_started = True Then
If LogErrorsOnly = False Then ClassLogger.Add(">> FW_started started - Checking file:" & CURRENT_FOLDERWATCH, False)
Dim fileEntries As String() = Directory.GetFiles(CURRENT_FOLDERWATCH)
' Process the list of files found in the directory.
Dim fileName As String
For Each fileName In fileEntries
If LogErrorsOnly = False Then ClassLogger.Add(">> Folderwach after startup: Checking file:" & fileName, False)
For Each row As DataRow In DTEXCLUDE_FILES.Rows
Dim content As String = row.Item(0).ToString.ToLower
If fileName.ToLower.Contains(content) Then
Exit Sub
End If
Next
Dim handleType As String
If fileName.ToLower.EndsWith(".msg") Then
handleType = "|FW_OUTLOOK_MESSAGE|"
Else
handleType = "|FW_SIMPLEINDEXER|"
End If
'Die Datei übergeben
If LogErrorsOnly = False Then ClassLogger.Add(">> Adding file from Folderwatch after startup:" & fileName, False)
If ClassIndexFunctions.FileExistsinDropTable(fileName) = False Then
ClassFilehandle.Decide_FileHandle(fileName, handleType)
Else
ClassLogger.Add(">> Folderwatch Startup: File already exists:" & fileName, False)
End If
Next fileName
Else
If LogErrorsOnly = False Then ClassLogger.Add(">> FW_started not started", False)
End If
Catch ex As Exception
ClassLogger.Add(">> Error while starting folderwatch: " & ex.Message, False)
End Try
Else
If LogErrorsOnly = False Then ClassLogger.Add(">> FW_started not started", False)
End If
If TimerFolderWatch.Enabled = False Then If TimerFolderWatch.Enabled = False Then
TimerFolderWatch.Start() TimerFolderWatch.Start()
End If End If
@ -669,49 +680,70 @@ Public Class frmStart
End Sub End Sub
Private Sub TimerFolderWatch_Tick(sender As Object, e As EventArgs) Handles TimerFolderWatch.Tick Private Sub TimerFolderWatch_Tick(sender As Object, e As EventArgs) Handles TimerFolderWatch.Tick
Try If ClassDatabase.DatabaseConnectionTimeout = True Then
If FW_started = True Or FWSCAN_started = True Then TimerFolderWatch.Enabled = False
'Prüfen ob alle Files abgearbeitet wurden
Dim sql = "SELECT * FROM TBGI_FILES_USER WHERE WORKED = 0 AND HANDLE_TYPE like '%|FW%' AND UPPER(USER@WORK) = UPPER('" & Environment.UserName & "')"
DTACTUAL_FILES = ClassDatabase.Return_Datatable(sql, True)
If DTACTUAL_FILES.Rows.Count > 0 Then
ABORT_INDEXING = False
' Dim fil As String
Me.TimerFolderWatch.Stop()
For Each row As DataRow In DTACTUAL_FILES.Rows
Dim FILEGUID = row.Item("GUID")
If ABORT_INDEXING = True Then
Exit For
End If
Dim FileForWork As String = row.Item(1)
If LogErrorsOnly = False Then ClassLogger.Add(">> In Timer Folderwatch - File: " & FileForWork, False)
Dim fileInUse As Boolean = ClassFilehandle.IsFileInUse(FileForWork)
Dim fileexists As Boolean = System.IO.File.Exists(FileForWork)
If fileInUse = False Then
If fileexists = True Then
CURRENT_WORKFILE = FileForWork
CURRENT_FILENAME = FileForWork
CURRENT_WORKFILE_GUID = row.Item("GUID")
Open_IndexDialog()
Else
ClassLogger.Add(">> File not existing - Row will be deleted!", False)
Dim del = String.Format("DELETE FROM TBGI_FILES_USER WHERE GUID = {0}", FILEGUID)
ClassDatabase.Execute_non_Query(del)
End If
Else
ClassLogger.Add(">> file '" & row.Item(1) & "' could not be opened exclusively - fileInUse!", False)
End If
Next Dim title = "Critical Error"
Me.TimerFolderWatch.Start() Dim message = $"Database could not be reached. Global Indexer will NOT work without a database!{vbCrLf}{vbCrLf}Please check your connection.{vbCrLf}The Application will exit now."
End If
tslblFW.Visible = True If USER_LANGUAGE = "de-DE" Then
Else title = "Kritischer Fehler"
tslblFW.Visible = False message = $"Die Datenbank konnte nicht erreicht werden. Global Indexer funktioniert NICHT ohne Datenbankverbindung{vbCrLf}{vbCrLf}Bitte überprüfen Sie Ihre Netzwerkverbindung oder benachrichtigen Sie Ihren Administrator.{vbCrLf}Die Anwendung wird nun geschlossen."
End If End If
Catch ex As Exception
MsgBox("Error in Work FolderWatch-File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical) Dim result = MsgBox(message, MsgBoxStyle.Critical, title)
End Try
If result = MsgBoxResult.Ok Then
Application.ExitThread()
End If
Else
Try
If FW_started = True Or FWSCAN_started = True Then
'Prüfen ob alle Files abgearbeitet wurden
Dim sql = "SELECT * FROM TBGI_FILES_USER WHERE WORKED = 0 AND HANDLE_TYPE like '%|FW%' AND UPPER(USER@WORK) = UPPER('" & Environment.UserName & "')"
DTACTUAL_FILES = ClassDatabase.Return_Datatable(sql, True)
If DTACTUAL_FILES.Rows.Count > 0 Then
ABORT_INDEXING = False
' Dim fil As String
Me.TimerFolderWatch.Stop()
For Each row As DataRow In DTACTUAL_FILES.Rows
Dim FILEGUID = row.Item("GUID")
If ABORT_INDEXING = True Then
Exit For
End If
Dim FileForWork As String = row.Item(1)
If LogErrorsOnly = False Then ClassLogger.Add(">> In Timer Folderwatch - File: " & FileForWork, False)
Dim fileInUse As Boolean = ClassFilehandle.IsFileInUse(FileForWork)
Dim fileexists As Boolean = System.IO.File.Exists(FileForWork)
If fileInUse = False Then
If fileexists = True Then
CURRENT_WORKFILE = FileForWork
CURRENT_FILENAME = FileForWork
CURRENT_WORKFILE_GUID = row.Item("GUID")
Open_IndexDialog()
Else
ClassLogger.Add(">> File not existing - Row will be deleted!", False)
Dim del = String.Format("DELETE FROM TBGI_FILES_USER WHERE GUID = {0}", FILEGUID)
ClassDatabase.Execute_non_Query(del)
End If
Else
ClassLogger.Add(">> file '" & row.Item(1) & "' could not be opened exclusively - fileInUse!", False)
End If
Next
Me.TimerFolderWatch.Start()
End If
tslblFW.Visible = True
Else
tslblFW.Visible = False
End If
Catch ex As Exception
MsgBox("Error in Work FolderWatch-File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End If
End Sub End Sub
Private Sub TimerClose3Minutes_Tick(sender As Object, e As EventArgs) Handles TimerClose3Minutes.Tick Private Sub TimerClose3Minutes_Tick(sender As Object, e As EventArgs) Handles TimerClose3Minutes.Tick
If LICENSE_EXPIRED = True Or LICENSE_COUNT < UserLoggedin Then If LICENSE_EXPIRED = True Or LICENSE_COUNT < UserLoggedin Then