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
Private Const NETWORK_TIMEOUT As Integer = -1
Private Shared SQLSERVERConnectionString As String
Private Shared OracleConnectionString As String
Public Shared DatabaseConnectionTimeout As Boolean = False
Public Shared Function Init()
Try
SQLSERVERConnectionString = MyConnectionString
Dim SQLconnect As New SqlClient.SqlConnection
Dim SQLconnect As New SqlConnection
SQLconnect.ConnectionString = SQLSERVERConnectionString
SQLconnect.Open()
SQLconnect.Close()
@ -16,95 +22,158 @@ Public Class ClassDatabase
End Try
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
Dim SQLconnect As New SqlClient.SqlConnection
Dim SQLcommand As SqlClient.SqlCommand
Dim SQLconnect As New SqlConnection
Dim SQLcommand As SqlCommand
SQLconnect.ConnectionString = SQLSERVERConnectionString
SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand
SQLcommand.CommandText = Select_anweisung
Dim adapter1 As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter(SQLcommand)
SQLcommand.CommandText = sql_command
Dim adapter1 As SqlDataAdapter = New SqlDataAdapter(SQLcommand)
Dim dt As DataTable = New DataTable()
adapter1.Fill(dt)
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
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
ClassLogger.Add("Unexpected error in Return_Datatable: " & ex.Message, True)
ClassLogger.Add("#SQL: " & Select_anweisung, False)
ClassLogger.Add("#SQL: " & sql_command, False)
Return Nothing
End Try
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
Dim SQLconnect As New SqlClient.SqlConnection
Dim SQLcommand As SqlClient.SqlCommand
Dim SQLconnect As New SqlConnection
Dim SQLcommand As SqlCommand
SQLconnect.ConnectionString = ConString
SQLconnect.Open()
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()
adapter1.Fill(dt)
SQLconnect.Close()
' 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_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
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
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
End Try
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
Dim SQLconnect As New SqlClient.SqlConnection
Dim SQLcommand As SqlClient.SqlCommand
Dim SQLconnect As New SqlConnection
Dim SQLcommand As SqlCommand
SQLconnect.ConnectionString = SQLSERVERConnectionString
SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand
'Update Last Created Record in Foo
SQLcommand.CommandText = ExecuteCMD
SQLcommand.CommandText = sql_command
SQLcommand.ExecuteNonQuery()
SQLcommand.Dispose()
SQLconnect.Close()
' Reset timeout counter when query was sucessful
DatabaseConnectionTimeout = False
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
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
ClassLogger.Add("Unexpected error in Execute_non_Query: " & ex.Message, True)
ClassLogger.Add("#SQL: " & ExecuteCMD, False)
ClassLogger.Add("#SQL: " & sql_command, False)
Return False
End Try
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
Try
Dim SQLconnect As New SqlClient.SqlConnection
Dim SQLcommand As SqlClient.SqlCommand
Dim SQLconnect As New SqlConnection
Dim SQLcommand As SqlCommand
SQLconnect.ConnectionString = ConString
SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand
'Update Last Created Record in Foo
SQLcommand.CommandText = cmdscalar
SQLcommand.CommandText = sql_command
result = SQLcommand.ExecuteScalar()
SQLcommand.Dispose()
SQLconnect.Close()
' Reset timeout counter when query was sucessful
DatabaseConnectionTimeout = False
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
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
ClassLogger.Add("Unexpected error in Execute_Scalar: " & ex.Message, True)
ClassLogger.Add("#SQL: " & cmdscalar, False)
ClassLogger.Add("#SQL: " & sql_command, False)
Return Nothing
End Try
End Function
@ -175,4 +244,19 @@ Public Class ClassDatabase
Return Nothing
End Try
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

View File

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

View File

@ -851,19 +851,32 @@ Public Class ClassWindream
' ein windream-Objekt der Datei anlegen
WMObject = aktWMObject 'oSession.GetWMObjectByPath(WINDREAMLib.WMEntity.WMEntityDocument, WD_File)
Try
If LogErrorsOnly = False Then ClassLogger.Add(" ...Datei wird gesperrt", False)
' die Datei sperren
WMObject.lock()
Catch ex As Exception
If LogErrorsOnly = False Then ClassLogger.Add(" ...Datei ist bereits gesperrt", False)
' nichts tun (Datei ist bereits gesperrt)
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
If WMObject.aObjectType.aName = "Standard" Then
' ihr den entsprechenden Dokumenttyp zuweisen
WMObject.aObjectType = oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityObjectType, _WDObjekttyp)
' 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
If LogErrorsOnly = False Then ClassLogger.Add(" ...Objekttyp war bereits gesetzt", False)
End If

View File

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

View File

@ -520,26 +520,31 @@ Public Class frmIndex
If NewDataset.Tables(0).Rows.Count > 0 Then
'Die Standardcombobox anlegen
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.AutoCompleteMode = AutoCompleteMode.Suggest
newCMB.DropDownHeight = (newCMB.ItemHeight + 0.2) * 25

View File

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

View File

@ -122,6 +122,12 @@
<value>MiddleLeft</value>
</data>
<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">
<value>True</value>
</data>
@ -129,9 +135,6 @@
<data name="SQL_UEBERPRUEFUNGLabel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</value>
</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">
<value>227, 59</value>
</data>
@ -144,11 +147,11 @@
<data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.Name" xml:space="preserve">
<value>SQL_UEBERPRUEFUNGLabel</value>
</data>
<data name="btnVorschlag.TabIndex" type="System.Int32, mscorlib">
<value>48</value>
<data name="SQL_ERGEBNISTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>610, 279</value>
</data>
<data name="&gt;&gt;Label2.Name" xml:space="preserve">
<value>Label2</value>
<data name="SQL_UEBERPRUEFUNGLabel.TabIndex" type="System.Int32, mscorlib">
<value>51</value>
</data>
<data name="lblSave.Size" type="System.Drawing.Size, System.Drawing">
<value>195, 15</value>
@ -156,21 +159,27 @@
<data name="&gt;&gt;Button1.Name" xml:space="preserve">
<value>Button1</value>
</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">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="btnVorschlag.Size" type="System.Drawing.Size, System.Drawing">
<value>89, 25</value>
</data>
<data name="&gt;&gt;Label2.ZOrder" xml:space="preserve">
<value>2</value>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<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 name="lblSave.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</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">
<value>289, 22</value>
</data>
@ -180,9 +189,6 @@
<data name="txtTest_idxMan.Size" type="System.Drawing.Size, System.Drawing">
<value>212, 22</value>
</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">
<value>Speichern</value>
</data>
@ -192,18 +198,21 @@
<data name="&gt;&gt;SQL_UEBERPRUEFUNGTextBox.Name" xml:space="preserve">
<value>SQL_UEBERPRUEFUNGTextBox</value>
</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">
<value>MiddleLeft</value>
</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">
<value>6, 13</value>
</data>
<data name="Button2.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleRight</value>
</data>
<data name="btnTestNachbearbeitung.Size" type="System.Drawing.Size, System.Drawing">
<value>103, 27</value>
</data>
<data name="Label2.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
@ -213,11 +222,8 @@
<data name="&gt;&gt;TBDD_CONNECTIONTableAdapter.Name" xml:space="preserve">
<value>TBDD_CONNECTIONTableAdapter</value>
</data>
<data name="&gt;&gt;Button1.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="lblSave.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI Semibold, 9pt, style=Bold, Italic</value>
<data name="lblSave.Text" xml:space="preserve">
<value>SQL-Daten erfolgreich gespeichert!</value>
</data>
<data name="&gt;&gt;GroupBox1.Name" xml:space="preserve">
<value>GroupBox1</value>
@ -228,8 +234,8 @@
<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>
</data>
<data name="&gt;&gt;Label2.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="SQL_ERGEBNISLabel.Text" xml:space="preserve">
<value>SQL für Vorschlagsliste:</value>
</data>
<data name="Label2.Text" xml:space="preserve">
<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">
<value>TBDD_CONNECTIONBindingSource</value>
</data>
<data name="GroupBox1.TabIndex" type="System.Int32, mscorlib">
<value>52</value>
</data>
<data name="&gt;&gt;SQL_ERGEBNISTextBox.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="&gt;&gt;Button2.Parent" xml:space="preserve">
<value>$this</value>
</data>
<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>
</data>
<data name="SQL_UEBERPRUEFUNGLabel.TabIndex" type="System.Int32, mscorlib">
<value>51</value>
</data>
<data name="&gt;&gt;txtTest_idxMan.ZOrder" xml:space="preserve">
<value>1</value>
<data name="&gt;&gt;btnTestNachbearbeitung.Name" xml:space="preserve">
<value>btnTestNachbearbeitung</value>
</data>
<data name="&gt;&gt;MyDataset.Name" xml:space="preserve">
<value>MyDataset</value>
</data>
<data name="btnVorschlag.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</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 name="&gt;&gt;Button2.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="SQL_UEBERPRUEFUNGLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>433, 39</value>
@ -287,14 +281,14 @@ Ergebniswert angezeigt.</value>
<data name="SQL_UEBERPRUEFUNGLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</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">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="&gt;&gt;btnVorschlag.Parent" xml:space="preserve">
<value>$this</value>
<data name="&gt;&gt;TBDD_CONNECTIONTableAdapter.Type" xml:space="preserve">
<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 name="&gt;&gt;GroupBox1.ZOrder" xml:space="preserve">
<value>4</value>
@ -302,6 +296,9 @@ Ergebniswert angezeigt.</value>
<data name="&gt;&gt;TableAdapterManager.Name" xml:space="preserve">
<value>TableAdapterManager</value>
</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">
<value>MiddleRight</value>
</data>
@ -317,15 +314,12 @@ Ergebniswert angezeigt.</value>
<data name="Button1.Size" type="System.Drawing.Size, System.Drawing">
<value>112, 23</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value>
<data name="&gt;&gt;Button1.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;lblSave.Name" xml:space="preserve">
<value>lblSave</value>
</data>
<data name="Label2.Size" type="System.Drawing.Size, System.Drawing">
<value>324, 39</value>
</data>
<data name="btnTestNachbearbeitung.Text" xml:space="preserve">
<value>Test</value>
</data>
@ -347,8 +341,8 @@ Ergebniswert angezeigt.</value>
<data name="btnVorschlag.Location" type="System.Drawing.Point, System.Drawing">
<value>536, 54</value>
</data>
<data name="txtTest_idxMan.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
<data name="&gt;&gt;SQL_ERGEBNISTextBox.Name" xml:space="preserve">
<value>SQL_ERGEBNISTextBox</value>
</data>
<data name="GroupBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>351, 93</value>
@ -362,8 +356,8 @@ Ergebniswert angezeigt.</value>
<data name="SQL_ERGEBNISTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>15, 82</value>
</data>
<data name="Button2.Size" type="System.Drawing.Size, System.Drawing">
<value>90, 31</value>
<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="txtTest_idxMan.Location" type="System.Drawing.Point, System.Drawing">
<value>9, 63</value>
@ -371,20 +365,28 @@ Ergebniswert angezeigt.</value>
<data name="&gt;&gt;cmbConnection.Name" xml:space="preserve">
<value>cmbConnection</value>
</data>
<data name="&gt;&gt;SQL_ERGEBNISTextBox.Parent" xml:space="preserve">
<value>$this</value>
</data>
<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>
</data>
<data name="&gt;&gt;Button2.Parent" xml:space="preserve">
<value>$this</value>
<data name="SQL_ERGEBNISLabel.Location" type="System.Drawing.Point, System.Drawing">
<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 name="&gt;&gt;txtTest_idxMan.Parent" xml:space="preserve">
<value>GroupBox1</value>
</data>
<data name="&gt;&gt;Button2.ZOrder" xml:space="preserve">
<value>1</value>
<data name="&gt;&gt;btnVorschlag.Name" xml:space="preserve">
<value>btnVorschlag</value>
</data>
<data name="&gt;&gt;TBDD_CONNECTIONTableAdapter.Type" xml:space="preserve">
<value>Global_Indexer.MyDatasetTableAdapters.TBDD_CONNECTIONTableAdapter, MyDataset.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
<data name="SQL_UEBERPRUEFUNGTextBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</value>
</data>
<data name="GroupBox1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
@ -392,9 +394,6 @@ Ergebniswert angezeigt.</value>
<data name="&gt;&gt;cmbConnection.ZOrder" xml:space="preserve">
<value>3</value>
</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">
<value>$this</value>
</data>
@ -410,34 +409,38 @@ Ergebniswert angezeigt.</value>
<data name="cmbConnection.Location" type="System.Drawing.Point, System.Drawing">
<value>15, 24</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 name="&gt;&gt;btnVorschlag.Parent" xml:space="preserve">
<value>$this</value>
</data>
<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 name="&gt;&gt;SQL_ERGEBNISLabel.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="lblSave.Location" type="System.Drawing.Point, System.Drawing">
<value>905, 441</value>
<data name="&gt;&gt;Label2.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="SQL_UEBERPRUEFUNGTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>686, 108</value>
</data>
<data name="btnVorschlag.Text" xml:space="preserve">
<value>Teste SQL</value>
<data name="&gt;&gt;txtTest_idxMan.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="SQL_UEBERPRUEFUNGLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>683, 66</value>
</data>
<data name="SQL_ERGEBNISTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>610, 279</value>
<data name="Button2.Size" type="System.Drawing.Size, System.Drawing">
<value>90, 31</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Konfiguration SQL</value>
<data name="&gt;&gt;Label2.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="lblSave.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
<data name="&gt;&gt;SQL_UEBERPRUEFUNGLabel.ZOrder" xml:space="preserve">
<value>8</value>
</data>
<data name="btnTestNachbearbeitung.Size" type="System.Drawing.Size, System.Drawing">
<value>103, 27</value>
</data>
<data name="SQL_ERGEBNISLabel.AutoSize" type="System.Boolean, mscorlib">
<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">
<value>483, 106</value>
</data>
<data name="btnTestNachbearbeitung.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleRight</value>
<data name="GroupBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>15, 367</value>
</data>
<data name="SQL_ERGEBNISTextBox.ScrollBars" type="System.Windows.Forms.ScrollBars, System.Windows.Forms">
<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">
<value>1</value>
</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 name="btnTestNachbearbeitung.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleRight</value>
</data>
<data name="SQL_ERGEBNISTextBox.Font" type="System.Drawing.Font, System.Drawing">
<value>Consolas, 8.25pt</value>
</data>
<data name="&gt;&gt;Label2.Parent" xml:space="preserve">
<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">
<value>Nachbearbeitung testen:</value>
</data>
<data name="&gt;&gt;btnVorschlag.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</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 name="lblSave.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI Semibold, 9pt, style=Bold, Italic</value>
</data>
<data name="SQL_UEBERPRUEFUNGTextBox.Font" type="System.Drawing.Font, System.Drawing">
<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">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="SQL_ERGEBNISTextBox.Font" type="System.Drawing.Font, System.Drawing">
<value>Consolas, 8.25pt</value>
<data name="$this.Text" xml:space="preserve">
<value>Konfiguration SQL</value>
</data>
<data name="Button1.TabIndex" type="System.Int32, mscorlib">
<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">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;btnTestNachbearbeitung.Parent" xml:space="preserve">
<value>GroupBox1</value>
<data name="btnVorschlag.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</value>
</data>
<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>
</data>
<data name="&gt;&gt;lblSave.ZOrder" xml:space="preserve">
<value>0</value>
<data name="btnVorschlag.TabIndex" type="System.Int32, mscorlib">
<value>48</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1172, 489</value>
<data name="GroupBox1.TabIndex" type="System.Int32, mscorlib">
<value>52</value>
</data>
<data name="&gt;&gt;SQL_ERGEBNISTextBox.Parent" xml:space="preserve">
<value>$this</value>
<data name="&gt;&gt;btnVorschlag.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<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 name="Label2.Size" type="System.Drawing.Size, System.Drawing">
<value>324, 39</value>
</data>
<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>
@ -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">
<value>$this</value>
</data>
<data name="SQL_ERGEBNISLabel.Text" xml:space="preserve">
<value>SQL für Vorschlagsliste:</value>
<data name="lblSave.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;btnTestNachbearbeitung.Name" xml:space="preserve">
<value>btnTestNachbearbeitung</value>
<data name="&gt;&gt;lblSave.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;Button2.Name" xml:space="preserve">
<value>Button2</value>
</data>
<data name="&gt;&gt;SQL_UEBERPRUEFUNGTextBox.Parent" xml:space="preserve">
<value>$this</value>
<data name="btnVorschlag.Text" xml:space="preserve">
<value>Teste SQL</value>
</data>
<data name="SQL_UEBERPRUEFUNGTextBox.TabIndex" type="System.Int32, mscorlib">
<value>49</value>

View File

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

View File

@ -486,68 +486,79 @@ Public Class frmStart
Else
tslblFW.Visible = False
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
If LogErrorsOnly = False Then ClassLogger.Add(">> FWSCAN not started", False)
End If
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
Try
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
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
'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
If LogErrorsOnly = False Then ClassLogger.Add(">> FWSCAN not started", False)
End If
Catch ex As Exception
ClassLogger.Add(">> Error while starting folderwatch scan: " & ex.Message, False)
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
TimerFolderWatch.Start()
End If
@ -669,49 +680,70 @@ Public Class frmStart
End Sub
Private Sub TimerFolderWatch_Tick(sender As Object, e As EventArgs) Handles TimerFolderWatch.Tick
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
If ClassDatabase.DatabaseConnectionTimeout = True Then
TimerFolderWatch.Enabled = False
Next
Me.TimerFolderWatch.Start()
End If
tslblFW.Visible = True
Else
tslblFW.Visible = False
Dim title = "Critical Error"
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."
If USER_LANGUAGE = "de-DE" Then
title = "Kritischer Fehler"
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
Catch ex As Exception
MsgBox("Error in Work FolderWatch-File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
Dim result = MsgBox(message, MsgBoxStyle.Critical, title)
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
Private Sub TimerClose3Minutes_Tick(sender As Object, e As EventArgs) Handles TimerClose3Minutes.Tick
If LICENSE_EXPIRED = True Or LICENSE_COUNT < UserLoggedin Then