add local logger for frmIndex, fix relative path when deleting files

This commit is contained in:
Jonathan Jenne 2020-06-05 11:43:30 +02:00
parent 9741449fc2
commit bef22dece2

View File

@ -10,6 +10,7 @@ Imports System.Security.Principal
Imports System.DirectoryServices Imports System.DirectoryServices
Imports DevExpress.XtraEditors.Controls Imports DevExpress.XtraEditors.Controls
Imports System.ComponentModel Imports System.ComponentModel
Imports DigitalData.Modules.Logging
Public Class frmIndex Public Class frmIndex
#Region "+++++ Variablen ++++++" #Region "+++++ Variablen ++++++"
@ -34,8 +35,18 @@ Public Class frmIndex
Private Const TEXT_MISSING_INPUT = "Bitte vervollständigen Sie die Eingaben!" Private Const TEXT_MISSING_INPUT = "Bitte vervollständigen Sie die Eingaben!"
Private _Logger As Logger
#End Region #End Region
Public Sub New()
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
_Logger = LOGCONFIG.GetLogger()
End Sub
Public Sub DisposeViewer() Public Sub DisposeViewer()
DocumentViewer1.Dispose() DocumentViewer1.Dispose()
End Sub End Sub
@ -135,7 +146,7 @@ Public Class frmIndex
Next Next
Catch ex As Exception Catch ex As Exception
MsgBox("Indexname: " & indexname & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unexpected error in Indexwert_checkValue:") MsgBox("Indexname: " & indexname & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unexpected error in Indexwert_checkValue:")
LOGGER.Info(" - Unvorhergesehener Unexpected error in Indexwert_checkValue - Fehler: " & vbNewLine & ex.Message) _Logger.Info(" - Unvorhergesehener Unexpected error in Indexwert_checkValue - Fehler: " & vbNewLine & ex.Message)
Return False Return False
End Try End Try
End Function End Function
@ -148,20 +159,20 @@ Public Class frmIndex
For Each DR In DT.Rows For Each DR In DT.Rows
If DR.Item("INDEXNAME").ToString.ToLower = indexname.ToLower Then If DR.Item("INDEXNAME").ToString.ToLower = indexname.ToLower Then
If DR.Item("Indexiert") = True Then If DR.Item("Indexiert") = True Then
LOGGER.Info("## Manueller Index: " & indexname) _Logger.Info("## Manueller Index: " & indexname)
Select Case RequestFor Select Case RequestFor
Case "FILE" Case "FILE"
If DR.Item("Indexwert_File").ToString <> String.Empty Then If DR.Item("Indexwert_File").ToString <> String.Empty Then
LOGGER.Info(" >>Es liegt ein separater nachbearbeiteter Wert für die Dateibenennung vor: " & DR.Item("Indexwert_File").ToString) _Logger.Info(" >>Es liegt ein separater nachbearbeiteter Wert für die Dateibenennung vor: " & DR.Item("Indexwert_File").ToString)
LOGGER.Info(" >>Zurückgegebener NachbearbeitungsWert: " & DR.Item("Indexwert_File")) _Logger.Info(" >>Zurückgegebener NachbearbeitungsWert: " & DR.Item("Indexwert_File"))
Return DR.Item("Indexwert_File") Return DR.Item("Indexwert_File")
Else Else
If DR.Item("Indexwert").ToString <> String.Empty Then If DR.Item("Indexwert").ToString <> String.Empty Then
LOGGER.Info("Zurückgegebener manueller Indexwert: " & DR.Item("Indexwert")) _Logger.Info("Zurückgegebener manueller Indexwert: " & DR.Item("Indexwert"))
Return DR.Item("Indexwert") Return DR.Item("Indexwert")
Else Else
If opt = False Then If opt = False Then
LOGGER.Info("Achtung, der Indexwert des manuellen Indexes '" & indexname & "' ist String.empty!") _Logger.Info("Achtung, der Indexwert des manuellen Indexes '" & indexname & "' ist String.empty!")
ShowNotice("Indexiert = True - Der Index: " & DR.Item("INDEXNAME") & " wurde nicht ordnungsgemäss indexiert! - Automatischer Index konnte nicht gesetzt werden!") ShowNotice("Indexiert = True - Der Index: " & DR.Item("INDEXNAME") & " wurde nicht ordnungsgemäss indexiert! - Automatischer Index konnte nicht gesetzt werden!")
Return Nothing Return Nothing
Else Else
@ -172,12 +183,12 @@ Public Class frmIndex
End If End If
Case Else Case Else
If DR.Item("Indexwert").ToString <> String.Empty Then If DR.Item("Indexwert").ToString <> String.Empty Then
LOGGER.Info(" >>Zurückgegebener manueller Indexwert: " & DR.Item("Indexwert")) _Logger.Info(" >>Zurückgegebener manueller Indexwert: " & DR.Item("Indexwert"))
Return DR.Item("Indexwert") Return DR.Item("Indexwert")
Else Else
'Dim optional_index As Boolean = ClassDatabase.Execute_Scalar("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & CURRENT_DOKART_ID & " AND UPPER(NAME) = UPPER('" & indexname & "')", MyConnectionString, True) 'Dim optional_index As Boolean = ClassDatabase.Execute_Scalar("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & CURRENT_DOKART_ID & " AND UPPER(NAME) = UPPER('" & indexname & "')", MyConnectionString, True)
If opt = False Then If opt = False Then
LOGGER.Info("Achtung, der Indexwert des manuellen Indexes '" & indexname & "' ist String.empty!") _Logger.Info("Achtung, der Indexwert des manuellen Indexes '" & indexname & "' ist String.empty!")
ShowNotice("Indexiert = True - Der Index: " & DR.Item("INDEXNAME") & " wurde nicht ordnungsgemäss indexiert! - Automatischer Index konnte nicht gesetzt werden!") ShowNotice("Indexiert = True - Der Index: " & DR.Item("INDEXNAME") & " wurde nicht ordnungsgemäss indexiert! - Automatischer Index konnte nicht gesetzt werden!")
Return Nothing Return Nothing
Else Else
@ -193,8 +204,8 @@ Public Class frmIndex
End If End If
Next Next
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Unexpected error in GetManIndex_Value - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unvorhergesehener Unexpected error in GetManIndex_Value - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox("Indexname: " & indexname & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unexpected error in GetManIndex_Value:") MsgBox("Indexname: " & indexname & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unexpected error in GetManIndex_Value:")
Return Nothing Return Nothing
End Try End Try
@ -232,8 +243,8 @@ Public Class frmIndex
End If End If
Next Next
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Unexpected error in GetAutoIndex_Value - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unvorhergesehener Unexpected error in GetAutoIndex_Value - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox("Indexname: " & indexname & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unexpected error in GetAutoIndex_Value:") MsgBox("Indexname: " & indexname & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unexpected error in GetAutoIndex_Value:")
Return "" Return ""
End Try End Try
@ -254,7 +265,7 @@ Public Class frmIndex
End If End If
If LogErrorsOnly = False Then If LogErrorsOnly = False Then
LOGGER.Info(" >>SQL-ConnectionString: " & oConnectionString.Substring(0, oConnectionString.LastIndexOf("="))) _Logger.Info(" >>SQL-ConnectionString: " & oConnectionString.Substring(0, oConnectionString.LastIndexOf("=")))
End If End If
If oErgebnis Is Nothing Then If oErgebnis Is Nothing Then
@ -266,8 +277,8 @@ Public Class frmIndex
End If End If
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unexpected error in Get_AutomatischerIndex_SQL - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unexpected error in Get_AutomatischerIndex_SQL - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Get_AutomatischerIndex_SQL:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Get_AutomatischerIndex_SQL:")
Return "" Return ""
End Try End Try
@ -278,7 +289,7 @@ Public Class frmIndex
Function CheckWrite_IndexeMan(dokartid As Integer) Function CheckWrite_IndexeMan(dokartid As Integer)
'#### Zuerst manuelle Werte indexieren #### '#### Zuerst manuelle Werte indexieren ####
Try Try
LOGGER.Info("In CheckWrite_IndexeMan") _Logger.Info("In CheckWrite_IndexeMan")
Dim result As Boolean = False Dim result As Boolean = False
For Each oControl As Control In Me.pnlIndex.Controls For Each oControl As Control In Me.pnlIndex.Controls
' MsgBox(ctrl.Name) ' MsgBox(ctrl.Name)
@ -296,7 +307,7 @@ Public Class frmIndex
End If End If
Else Else
If Indexwert_checkValueDB(Replace(box.Name, "txt", ""), box.Text) = False Then If Indexwert_checkValueDB(Replace(box.Name, "txt", ""), box.Text) = False Then
LOGGER.Info(" - Der eingegebene Wert wurde nicht in der Datenbank gefunden") _Logger.Info(" - Der eingegebene Wert wurde nicht in der Datenbank gefunden")
MsgBox("Der eingegebene Wert wurde nicht in der Datenbank gefunden!", MsgBoxStyle.Exclamation, "Fehlerhafte Indexierung:") MsgBox("Der eingegebene Wert wurde nicht in der Datenbank gefunden!", MsgBoxStyle.Exclamation, "Fehlerhafte Indexierung:")
box.Focus() box.Focus()
Return False Return False
@ -391,15 +402,15 @@ Public Class frmIndex
Continue For Continue For
End If End If
If oControl.Name.StartsWith("lbl") = False And result = False Then If oControl.Name.StartsWith("lbl") = False And result = False Then
LOGGER.Info("Die Überprüfung der manuellen Indices ist fehlerhaft. Bitte informieren Sie den Systembetreuer") _Logger.Info("Die Überprüfung der manuellen Indices ist fehlerhaft. Bitte informieren Sie den Systembetreuer")
Return False Return False
End If End If
Next Next
Return True Return True
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Fehler in CheckWrite_IndexeMan - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unvorhergesehener Fehler in CheckWrite_IndexeMan - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unerwarteter Unexpected error in CheckWrite_IndexeMan:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unerwarteter Unexpected error in CheckWrite_IndexeMan:")
Return False Return False
End Try End Try
@ -442,15 +453,15 @@ Public Class frmIndex
End If End If
Next Next
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Unexpected error in Indexwert_Postprocessing - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unvorhergesehener Unexpected error in Indexwert_Postprocessing - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Indexwert_Postprocessing:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Indexwert_Postprocessing:")
End Try End Try
End Sub End Sub
Function Name_Generieren() Function Name_Generieren()
Try Try
LOGGER.Debug("#### Name_Generieren ####") _Logger.Debug("#### Name_Generieren ####")
Dim sql As String = "select VERSION_DELIMITER, FILE_DELIMITER FROM TBDD_MODULES WHERE GUID = 1" Dim sql As String = "select VERSION_DELIMITER, FILE_DELIMITER FROM TBDD_MODULES WHERE GUID = 1"
Dim oFilesystem As New DigitalData.Modules.Filesystem.File(LOGCONFIG) Dim oFilesystem As New DigitalData.Modules.Filesystem.File(LOGCONFIG)
Dim DT1 As DataTable = ClassDatabase.Return_Datatable(sql) Dim DT1 As DataTable = ClassDatabase.Return_Datatable(sql)
@ -486,14 +497,14 @@ Public Class frmIndex
Dim oMatchelements As System.Text.RegularExpressions.MatchCollection = regulärerAusdruck.Matches(oNamenkonvention) Dim oMatchelements As System.Text.RegularExpressions.MatchCollection = regulärerAusdruck.Matches(oNamenkonvention)
'#### '####
If oMatchelements.Count = 0 Then If oMatchelements.Count = 0 Then
LOGGER.Debug("No RegularExpression Fileds on Nameconvention!") _Logger.Debug("No RegularExpression Fileds on Nameconvention!")
End If End If
' alle Vorkommen innerhalbd er Namenkonvention durchlaufen ' alle Vorkommen innerhalbd er Namenkonvention durchlaufen
For Each oElement As System.Text.RegularExpressions.Match In oMatchelements For Each oElement As System.Text.RegularExpressions.Match In oMatchelements
Select Case oElement.Value.Substring(2, 1).ToUpper Select Case oElement.Value.Substring(2, 1).ToUpper
'Manueller Indexwert 'Manueller Indexwert
Case "M" Case "M"
LOGGER.Debug("NameGenerieren: Manueller Index wird geprüft...") _Logger.Debug("NameGenerieren: Manueller Index wird geprüft...")
Dim Indexname = oElement.Value.Substring(3, oElement.Value.Length - 4) Dim Indexname = oElement.Value.Substring(3, oElement.Value.Length - 4)
Dim optional_index As Boolean = ClassDatabase.Execute_Scalar($"SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = {CURRENT_DOKART_ID} AND UPPER(NAME) = UPPER('{Indexname}')", MyConnectionString, True) Dim optional_index As Boolean = ClassDatabase.Execute_Scalar($"SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = {CURRENT_DOKART_ID} AND UPPER(NAME) = UPPER('{Indexname}')", MyConnectionString, True)
Dim oManValue As String = GetManIndex_Value(Indexname, "FILE", optional_index) Dim oManValue As String = GetManIndex_Value(Indexname, "FILE", optional_index)
@ -532,7 +543,7 @@ Public Class frmIndex
AnzahlIndexe += 1 AnzahlIndexe += 1
sql_history_Index_Values = sql_history_Index_Values & ", '" & oManValue.Replace("'", "''") & "'" sql_history_Index_Values = sql_history_Index_Values & ", '" & oManValue.Replace("'", "''") & "'"
Else Else
LOGGER.Debug("Der Indexvalue für Index '" & Indexname & "' ist String.Empty") _Logger.Debug("Der Indexvalue für Index '" & Indexname & "' ist String.Empty")
err = True err = True
End If End If
@ -615,13 +626,13 @@ Public Class frmIndex
Loop Loop
End If End If
Catch ex As Exception Catch ex As Exception
LOGGER.Warn(" - Unexpected error in NameGenerieren - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unexpected error in NameGenerieren - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Umbenennnen der Datei:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Umbenennnen der Datei:")
err = True err = True
End Try End Try
Case Else Case Else
LOGGER.Info(" - Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & oElement.Value.ToUpper) _Logger.Info(" - Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & oElement.Value.ToUpper)
MsgBox("Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & oElement.Value.ToUpper, MsgBoxStyle.Exclamation, "Unexpected error in Name generieren:") MsgBox("Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & oElement.Value.ToUpper, MsgBoxStyle.Exclamation, "Unexpected error in Name generieren:")
End Select End Select
Next Next
@ -630,8 +641,8 @@ Public Class frmIndex
'CURRENT_NEWFILENAME = ClassFilehandle.CleanFilename(NewFileString, "") 'CURRENT_NEWFILENAME = ClassFilehandle.CleanFilename(NewFileString, "")
CURRENT_NEWFILENAME = Path.Combine(oRAWZielordner, CURRENT_NEWFILENAME) CURRENT_NEWFILENAME = Path.Combine(oRAWZielordner, CURRENT_NEWFILENAME)
LOGGER.Debug("#### ENDE Name_Generieren ####") _Logger.Debug("#### ENDE Name_Generieren ####")
LOGGER.Debug("") _Logger.Debug("")
If err = False Then If err = False Then
Return True Return True
Else Else
@ -639,8 +650,8 @@ Public Class frmIndex
End If End If
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Unexpected error in Name_Generieren - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unvorhergesehener Unexpected error in Name_Generieren - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Allgemeiner Unexpected error in Name_Generieren:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Allgemeiner Unexpected error in Name_Generieren:")
Return False Return False
End Try End Try
@ -656,7 +667,7 @@ Public Class frmIndex
For Each row As DataRow In DTMan.Rows For Each row As DataRow In DTMan.Rows
Dim idxvalue = row.Item("Indexwert") Dim idxvalue = row.Item("Indexwert")
Dim indexname = row.Item("WD_INDEX").ToString Dim indexname = row.Item("WD_INDEX").ToString
LOGGER.Debug($"Write_Indizes - Index [{indexname}]...") _Logger.Debug($"Write_Indizes - Index [{indexname}]...")
Dim optional_Index = CBool(row.Item("OPTIONAL")) Dim optional_Index = CBool(row.Item("OPTIONAL"))
Dim indexiert = CBool(row.Item("Indexiert")) Dim indexiert = CBool(row.Item("Indexiert"))
If indexiert And idxvalue.ToString <> "" And idxvalue <> "EMPTY_OI" Then If indexiert And idxvalue.ToString <> "" And idxvalue <> "EMPTY_OI" Then
@ -683,15 +694,15 @@ Public Class frmIndex
End If End If
End If End If
LOGGER.Debug($"Manueller Indexvalue [{idxvalue.ToString}]...NOW THE INDEXING...") _Logger.Debug($"Manueller Indexvalue [{idxvalue.ToString}]...NOW THE INDEXING...")
Count += 1 Count += 1
' den Typ des Zielindexes auslesen ' den Typ des Zielindexes auslesen
Dim oIndexType As Integer = WINDREAM.GetIndexType(indexname) Dim oIndexType As Integer = WINDREAM.GetIndexType(indexname)
LOGGER.Debug($"oIndexType [{oIndexType.ToString}]...") _Logger.Debug($"oIndexType [{oIndexType.ToString}]...")
If oIndexType < WINDREAM.WMObjectVariableValueTypeVector Then If oIndexType < WINDREAM.WMObjectVariableValueTypeVector Then
LOGGER.Debug($"Indexing oIndexType < WINDREAM.WMObjectVariableValueTypeVector...") _Logger.Debug($"Indexing oIndexType < WINDREAM.WMObjectVariableValueTypeVector...")
indexierung_erfolgreich = WINDREAM.SetFileIndex(CURRENT_NEWFILENAME, indexname, idxvalue, CURR_DOKART_OBJECTTYPE) indexierung_erfolgreich = WINDREAM.SetFileIndex(CURRENT_NEWFILENAME, indexname, idxvalue, CURR_DOKART_OBJECTTYPE)
Else Else
Dim oSplitArray = Split(idxvalue, ClassConstants.VECTORSEPARATOR) Dim oSplitArray = Split(idxvalue, ClassConstants.VECTORSEPARATOR)
@ -716,12 +727,12 @@ Public Class frmIndex
End If End If
Else Else
LOGGER.Debug("No Indexing: indexname: " & indexname) _Logger.Debug("No Indexing: indexname: " & indexname)
LOGGER.Debug("No Indexing: is optional? " & optional_Index.ToString) _Logger.Debug("No Indexing: is optional? " & optional_Index.ToString)
End If End If
Else Else
LOGGER.Debug("Indexvalue is empty or field is not indexed - Indexname: " & indexname) _Logger.Debug("Indexvalue is empty or field is not indexed - Indexname: " & indexname)
LOGGER.Info("Indexvalue is empty or field is not indexed - Indexname: " & indexname) _Logger.Info("Indexvalue is empty or field is not indexed - Indexname: " & indexname)
End If End If
Next Next
@ -736,8 +747,8 @@ Public Class frmIndex
Dim indexname = row.Item("INDEXNAME").ToString Dim indexname = row.Item("INDEXNAME").ToString
If indexiert = True And Indexvalue <> "" Then If indexiert = True And Indexvalue <> "" Then
If Indexvalue <> "EMPTY_OI" Then If Indexvalue <> "EMPTY_OI" Then
LOGGER.Info("Auto Indexname: " & indexname.ToString) _Logger.Info("Auto Indexname: " & indexname.ToString)
LOGGER.Info("Indexvalue: " & Indexvalue.ToString) _Logger.Info("Indexvalue: " & Indexvalue.ToString)
Count += 1 Count += 1
' den Typ des Zielindexes auslesen ' den Typ des Zielindexes auslesen
@ -782,8 +793,8 @@ Public Class frmIndex
End If End If
End If End If
Catch ex As Exception Catch ex As Exception
LOGGER.Info("Unexpected error in Write_Indizes - Fehler: " & vbNewLine & ex.Message) _Logger.Warn("Unexpected error in Write_Indizes - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox("Error in Write_Indizes:" & vbNewLine & ex.Message, MsgBoxStyle.Critical) MsgBox("Error in Write_Indizes:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False Return False
End Try End Try
@ -791,9 +802,10 @@ Public Class frmIndex
End Function End Function
Private Function WriteIndex2File(indexname As String, indexvalue As String) Private Function WriteIndex2File(indexname As String, indexvalue As String)
Try Try
LOGGER.Info("Indexvalue: " & indexvalue.ToString) _Logger.Info("Indexvalue: " & indexvalue.ToString)
Return WINDREAM.SetFileIndex(CURRENT_NEWFILENAME, indexname, indexvalue, CURR_DOKART_OBJECTTYPE) Return WINDREAM.SetFileIndex(CURRENT_NEWFILENAME, indexname, indexvalue, CURR_DOKART_OBJECTTYPE)
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error in WriteIndex2File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical) MsgBox("Error in WriteIndex2File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False Return False
End Try End Try
@ -808,13 +820,13 @@ Public Class frmIndex
Dim msgDisplayTo = msg.DisplayTo Dim msgDisplayTo = msg.DisplayTo
Dim msgInternetAccountName = msg.InternetAccountName Dim msgInternetAccountName = msg.InternetAccountName
If LogErrorsOnly = False Then If LogErrorsOnly = False Then
LOGGER.Info("") _Logger.Info("")
LOGGER.Info("msgInternetAccountName: " & msgInternetAccountName) _Logger.Info("msgInternetAccountName: " & msgInternetAccountName)
LOGGER.Info("SenderName: " & msg.SenderName) _Logger.Info("SenderName: " & msg.SenderName)
LOGGER.Info("SenderEmailAddress: " & msg.SenderEmailAddress) _Logger.Info("SenderEmailAddress: " & msg.SenderEmailAddress)
LOGGER.Info("ReceivedByName: " & msg.ReceivedByName) _Logger.Info("ReceivedByName: " & msg.ReceivedByName)
LOGGER.Info("ReceivedByEmailAddress: " & msg.ReceivedByEmailAddress) _Logger.Info("ReceivedByEmailAddress: " & msg.ReceivedByEmailAddress)
LOGGER.Info("") _Logger.Info("")
End If End If
_step = "2" _step = "2"
@ -850,7 +862,7 @@ Public Class frmIndex
Next Next
Dim DT As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM TBGI_OBJECTTYPE_EMAIL_INDEX WHERE OBJECTTYPE = '" & CURR_DOKART_OBJECTTYPE & "'") Dim DT As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM TBGI_OBJECTTYPE_EMAIL_INDEX WHERE OBJECTTYPE = '" & CURR_DOKART_OBJECTTYPE & "'")
If IsNothing(DT) Then If IsNothing(DT) Then
LOGGER.Info("SELECT * FROM TBGI_OBJECTTYPE_EMAIL_INDEX WHERE OBJECTTYPE = '" & CURR_DOKART_OBJECTTYPE & "' RESULTED in NOTHING") _Logger.Info("SELECT * FROM TBGI_OBJECTTYPE_EMAIL_INDEX WHERE OBJECTTYPE = '" & CURR_DOKART_OBJECTTYPE & "' RESULTED in NOTHING")
Return False Return False
End If End If
If DT.Rows.Count = 1 Then If DT.Rows.Count = 1 Then
@ -869,7 +881,7 @@ Public Class frmIndex
End If End If
Else Else
If messageIDPattern = String.Empty Then If messageIDPattern = String.Empty Then
LOGGER.Info("A messageID could not be read!") _Logger.Info("A messageID could not be read!")
Else Else
If Not IsNothing(headers) Then If Not IsNothing(headers) Then
CURRENT_MESSAGEID = ClassEmailHeaderExtractor.extractFromHeader(headers, messageIDPattern) CURRENT_MESSAGEID = ClassEmailHeaderExtractor.extractFromHeader(headers, messageIDPattern)
@ -877,7 +889,7 @@ Public Class frmIndex
CURRENT_MESSAGEID = "" CURRENT_MESSAGEID = ""
End If End If
Else Else
LOGGER.Info("A messageID could not be read - messageheader nothing/messagIDpattern value!") _Logger.Info("A messageID could not be read - messageheader nothing/messagIDpattern value!")
End If End If
End If End If
@ -910,7 +922,7 @@ Public Class frmIndex
_step = "4.2" _step = "4.2"
If IsNothing(msgDisplayTo) Then If IsNothing(msgDisplayTo) Then
_step = "4.3" _step = "4.3"
LOGGER.Info("DisplayTo in email is nothing - default will be set") _Logger.Info("DisplayTo in email is nothing - default will be set")
emailTo = "NO RECIPIENT" emailTo = "NO RECIPIENT"
Else Else
_step = "4.4" _step = "4.4"
@ -918,7 +930,7 @@ Public Class frmIndex
End If End If
If IsNothing(msgInternetAccountName) Then If IsNothing(msgInternetAccountName) Then
_step = "4.5" _step = "4.5"
LOGGER.Info("InternetAccountName in email is nothing - default will be set") _Logger.Info("InternetAccountName in email is nothing - default will be set")
emailFrom = "" emailFrom = ""
Else Else
_step = "4.6" _step = "4.6"
@ -926,7 +938,7 @@ Public Class frmIndex
End If End If
Else Else
_step = "5" _step = "5"
LOGGER.Info("emailTo and From Extraction via messageheader.") _Logger.Info("emailTo and From Extraction via messageheader.")
emailFrom = ClassEmailHeaderExtractor.extractFromHeader(headers, fromPattern) 'FromRegexList) emailFrom = ClassEmailHeaderExtractor.extractFromHeader(headers, fromPattern) 'FromRegexList)
emailTo = ClassEmailHeaderExtractor.extractFromHeader(headers, toPattern) ' extractToAddress(headers, ToRegexList) emailTo = ClassEmailHeaderExtractor.extractFromHeader(headers, toPattern) ' extractToAddress(headers, ToRegexList)
@ -934,16 +946,16 @@ Public Class frmIndex
'Handler für leere emailTo-Adresse 'Handler für leere emailTo-Adresse
If IsNothing(emailTo) Then If IsNothing(emailTo) Then
_step = "5.1" _step = "5.1"
LOGGER.Info("emailTo couldn't be extracted from messageheader...") _Logger.Info("emailTo couldn't be extracted from messageheader...")
If (headers.Contains("exc") Or headers.Contains("exchange")) Then If (headers.Contains("exc") Or headers.Contains("exchange")) Then
_step = "5.2" _step = "5.2"
LOGGER.Info("...try with LDAP-option") _Logger.Info("...try with LDAP-option")
Dim _email = GetUserEmailfromLDAP(msgDisplayTo) Dim _email = GetUserEmailfromLDAP(msgDisplayTo)
_step = "5.3" _step = "5.3"
If _email <> "" Then If _email <> "" Then
emailTo = _email emailTo = _email
Else Else
LOGGER.Info(">> email-adress couldn't be read from LDAP with name '" & msgDisplayTo & "'") _Logger.Info(">> email-adress couldn't be read from LDAP with name '" & msgDisplayTo & "'")
MsgBox("Could't get 'emailto' from messageHeader and later on with LDAP-Option." & vbNewLine & "Please check the dropped email and Configuration of Email-Indexing!", MsgBoxStyle.Exclamation) MsgBox("Could't get 'emailto' from messageHeader and later on with LDAP-Option." & vbNewLine & "Please check the dropped email and Configuration of Email-Indexing!", MsgBoxStyle.Exclamation)
Return False Return False
End If End If
@ -959,7 +971,7 @@ Public Class frmIndex
emailTo = CURR_MISSING_MANUAL_VALUE emailTo = CURR_MISSING_MANUAL_VALUE
Else Else
_step = "5.4.3" _step = "5.4.3"
LOGGER.Info("no exchange patterns found in headers!") _Logger.Info("no exchange patterns found in headers!")
MsgBox("Could't get 'emailto' from messageHeader and exhange-Patterns weren't found." & vbNewLine & "Please check the dropped email and Configuration of Email-Indexing!", MsgBoxStyle.Exclamation) MsgBox("Could't get 'emailto' from messageHeader and exhange-Patterns weren't found." & vbNewLine & "Please check the dropped email and Configuration of Email-Indexing!", MsgBoxStyle.Exclamation)
Return False Return False
End If End If
@ -975,7 +987,7 @@ Public Class frmIndex
emailFrom = emailFrom.Replace(">", "") emailFrom = emailFrom.Replace(">", "")
Else Else
_step = "6.1.x" _step = "6.1.x"
LOGGER.Info("emailFrom is Nothing?!") _Logger.Info("emailFrom is Nothing?!")
End If End If
If Not IsNothing(emailTo) Then If Not IsNothing(emailTo) Then
@ -999,20 +1011,20 @@ Public Class frmIndex
Next Next
Else Else
_step = "6.3" _step = "6.3"
LOGGER.Info("emailTo is Nothing?!") _Logger.Info("emailTo is Nothing?!")
End If End If
LOGGER.Info("Headers-Content: ") _Logger.Info("Headers-Content: ")
LOGGER.Info(headers.ToString) _Logger.Info(headers.ToString)
End If End If
'Handler für leere emailFrom-Adresse 'Handler für leere emailFrom-Adresse
If IsNothing(emailFrom) Then If IsNothing(emailFrom) Then
_step = "7" _step = "7"
LOGGER.Info("emailFrom couldn't be extracted from messageheader...") _Logger.Info("emailFrom couldn't be extracted from messageheader...")
If Not IsNothing(msg.SenderEmailAddress) Then If Not IsNothing(msg.SenderEmailAddress) Then
If msg.SenderEmailAddress <> String.Empty Then If msg.SenderEmailAddress <> String.Empty Then
_step = "7.1" _step = "7.1"
LOGGER.Info("emailFrom via msg.SenderEmailAddress will be used instead!") _Logger.Info("emailFrom via msg.SenderEmailAddress will be used instead!")
emailFrom = msg.SenderEmailAddress.ToString.Replace("'", "") emailFrom = msg.SenderEmailAddress.ToString.Replace("'", "")
End If End If
End If End If
@ -1032,8 +1044,8 @@ Public Class frmIndex
End If End If
End If End If
LOGGER.Info("emailFrom: " & emailFrom) _Logger.Info("emailFrom: " & emailFrom)
LOGGER.Info("emailTo: " & emailTo) _Logger.Info("emailTo: " & emailTo)
'FROM 'FROM
If Not IsNothing(emailFrom) Then If Not IsNothing(emailFrom) Then
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_FROM").ToString, emailFrom) indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_FROM").ToString, emailFrom)
@ -1042,7 +1054,7 @@ Public Class frmIndex
Return False Return False
End If End If
Else Else
LOGGER.Info("emailFrom is still Nothing?!") _Logger.Info("emailFrom is still Nothing?!")
_step = "7.4" _step = "7.4"
End If End If
'TO 'TO
@ -1053,14 +1065,14 @@ Public Class frmIndex
Return False Return False
End If End If
Else Else
LOGGER.Info("emailTo is still Nothing?!") _Logger.Info("emailTo is still Nothing?!")
_step = "7.5" _step = "7.5"
End If End If
' Dim subj As String = ClassFormFunctions.CleanInput(msg.Subject) ' Dim subj As String = ClassFormFunctions.CleanInput(msg.Subject)
Dim subj As String = msg.Subject Dim subj As String = msg.Subject
If IsNothing(subj) Or subj = "" Then If IsNothing(subj) Or subj = "" Then
LOGGER.Info("msg subject is empty...DEFAULT will be set") _Logger.Info("msg subject is empty...DEFAULT will be set")
subj = "No subject" subj = "No subject"
MsgBox("Attention: Email was send without a subject - Default value 'No subject' will be used!", MsgBoxStyle.Exclamation) MsgBox("Attention: Email was send without a subject - Default value 'No subject' will be used!", MsgBoxStyle.Exclamation)
Else Else
@ -1070,16 +1082,16 @@ Public Class frmIndex
End If End If
End If End If
LOGGER.Info("Now all email-items will be indexed!") _Logger.Info("Now all email-items will be indexed!")
LOGGER.Info("subj: " & subj) _Logger.Info("subj: " & subj)
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_SUBJECT").ToString, subj) indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_SUBJECT").ToString, subj)
CURRENT_MESSAGESUBJECT = subj CURRENT_MESSAGESUBJECT = subj
If indexierung_erfolgreich = False Then If indexierung_erfolgreich = False Then
MsgBox("Error in SetEmailIndices [Subject] - See log", MsgBoxStyle.Critical) MsgBox("Error in SetEmailIndices [Subject] - See log", MsgBoxStyle.Critical)
Return False Return False
End If End If
LOGGER.Info("MessageDeliveryTime: " & msg.MessageDeliveryTime) _Logger.Info("MessageDeliveryTime: " & msg.MessageDeliveryTime)
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_DATE_IN").ToString, msg.MessageDeliveryTime) indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_DATE_IN").ToString, msg.MessageDeliveryTime)
CURRENT_MESSAGEDATE = msg.MessageDeliveryTime CURRENT_MESSAGEDATE = msg.MessageDeliveryTime
If indexierung_erfolgreich = False Then If indexierung_erfolgreich = False Then
@ -1094,13 +1106,10 @@ Public Class frmIndex
End If End If
Catch ex As Exception Catch ex As Exception
MsgBox("Error in SetEmailIndices:" & vbNewLine & ex.Message & vbNewLine & "Please check the configuration Email-Indexing!", MsgBoxStyle.Critical) MsgBox("Error in SetEmailIndices:" & vbNewLine & ex.Message & vbNewLine & "Please check the configuration Email-Indexing!", MsgBoxStyle.Critical)
LOGGER.Info("Error in SetEmailIndices (Step finisched: " & _step & "): " & ex.Message) _Logger.Warn("Error in SetEmailIndices (Step finisched: " & _step & "): " & ex.Message)
LOGGER.Info("Stack-Trace: " & ex.StackTrace) _Logger.Error(ex)
Return False Return False
End Try End Try
End Function End Function
Public Function GetUserEmailfromLDAP(ByVal userName As String) As String Public Function GetUserEmailfromLDAP(ByVal userName As String) As String
@ -1117,6 +1126,7 @@ Public Class frmIndex
search.PropertiesToLoad.Add("mail") search.PropertiesToLoad.Add("mail")
result = search.FindOne() result = search.FindOne()
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
search.Filter = "" search.Filter = ""
search.Filter = "(GivenName=" & userName & ")" search.Filter = "(GivenName=" & userName & ")"
search.PropertiesToLoad.Add("mail") search.PropertiesToLoad.Add("mail")
@ -1126,8 +1136,8 @@ Public Class frmIndex
result = search.FindOne() result = search.FindOne()
If result IsNot Nothing Then userEmail = result.Properties("mail").ToString If result IsNot Nothing Then userEmail = result.Properties("mail").ToString
Catch ex As Exception Catch ex As Exception
LOGGER.Info(">> Unexpected Error in GetUserEmail from LDAP: " & ex.Message) _Logger.Info(">> Unexpected Error in GetUserEmail from LDAP: " & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex)
End Try End Try
End Using End Using
@ -1174,6 +1184,7 @@ Public Class frmIndex
Return indexierung_erfolgreich Return indexierung_erfolgreich
End If End If
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error in SetAttachmentIndices:" & vbNewLine & ex.Message, MsgBoxStyle.Critical) MsgBox("Error in SetAttachmentIndices:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False Return False
End Try End Try
@ -1185,28 +1196,31 @@ Public Class frmIndex
CURR_DOKART_OBJECTTYPE = _Objekttyp CURR_DOKART_OBJECTTYPE = _Objekttyp
Dim oWMCheckPath = WINDREAM.VersionWMFilename(CURRENT_NEWFILENAME, System.IO.Path.GetExtension(CURRENT_NEWFILENAME)) Dim oWMCheckPath = WINDREAM.VersionWMFilename(CURRENT_NEWFILENAME, System.IO.Path.GetExtension(CURRENT_NEWFILENAME))
If CURRENT_NEWFILENAME.ToUpper <> oWMCheckPath.ToString.ToUpper Then If CURRENT_NEWFILENAME.ToUpper <> oWMCheckPath.ToString.ToUpper Then
LOGGER.Info($"Target [{CURRENT_NEWFILENAME}] already existed!! - NewWMFilename [{oWMCheckPath}]") _Logger.Info($"Target [{CURRENT_NEWFILENAME}] already existed!! - NewWMFilename [{oWMCheckPath}]")
CURRENT_NEWFILENAME = oWMCheckPath CURRENT_NEWFILENAME = oWMCheckPath
End If End If
Dim oStreamSuccessful = WINDREAM.NewFileStream(CURRENT_WORKFILE, CURRENT_NEWFILENAME) Dim oStreamSuccessful = WINDREAM.NewFileStream(CURRENT_WORKFILE, CURRENT_NEWFILENAME)
Dim oTempPath As String = Path.Combine("\\windream\objects", CURRENT_NEWFILENAME)
LOGGER.Debug("File streamed to Windream: {0}", oStreamSuccessful) _Logger.Debug("Checks for file [{0}]", oTempPath)
LOGGER.Debug("File exists in Destination: {0}", File.Exists(CURRENT_NEWFILENAME)) _Logger.Debug("File streamed to Windream: {0}", oStreamSuccessful)
LOGGER.Debug("File should be deleted: {0}", CURR_DELETE_ORIGIN) _Logger.Debug("File exists in Destination: {0}", File.Exists(oTempPath))
_Logger.Debug("File should be deleted: {0}", CURR_DELETE_ORIGIN)
If File.Exists(CURRENT_NEWFILENAME) And oStreamSuccessful Then If File.Exists(oTempPath) And oStreamSuccessful Then
If CURR_DELETE_ORIGIN = True Then If CURR_DELETE_ORIGIN = True Then
Try Try
My.Computer.FileSystem.DeleteFile(CURRENT_WORKFILE) My.Computer.FileSystem.DeleteFile(CURRENT_WORKFILE)
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) _Logger.Error(ex)
End Try End Try
End If End If
End If End If
Return oStreamSuccessful Return oStreamSuccessful
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in SINGLEFILE_2_WINDREAM:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in SINGLEFILE_2_WINDREAM:")
Return False Return False
End Try End Try
@ -1260,12 +1274,10 @@ Public Class frmIndex
End If End If
Return False Return False
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unexpected error in Move_Rename - Fehler: " & vbNewLine & ex.Message) _Logger.Error(ex.Message)
LOGGER.Error(ex.Message) _Logger.Warn(" - Unexpected error in Move_Rename - Insert_String: " & Insert_String)
LOGGER.Info(" - Unexpected error in Move_Rename - Insert_String: " & Insert_String)
Return True Return True
End Try End Try
End Function End Function
'#End Region '#End Region
@ -1325,6 +1337,7 @@ Public Class frmIndex
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox("Unexpected Error in Abort Indexing: " & vbNewLine & ex.Message, MsgBoxStyle.Critical) MsgBox("Unexpected Error in Abort Indexing: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try End Try
@ -1336,8 +1349,8 @@ Public Class frmIndex
ClassWindowLocation.SaveFormLocationSize(Me) ClassWindowLocation.SaveFormLocationSize(Me)
My.Settings.Save() My.Settings.Save()
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message) _Logger.Info(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Schliessen des Formulares:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Schliessen des Formulares:")
End Try End Try
@ -1354,8 +1367,8 @@ Public Class frmIndex
ClassWindowLocation.SaveFormLocationSize(Me) ClassWindowLocation.SaveFormLocationSize(Me)
My.Settings.Save() My.Settings.Save()
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Schliessen des Formulares:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Schliessen des Formulares:")
End Try End Try
End Select End Select
@ -1380,7 +1393,7 @@ Public Class frmIndex
DocumentViewer1.Init(LOGCONFIG, VIEWER_LICENSE) DocumentViewer1.Init(LOGCONFIG, VIEWER_LICENSE)
If DropType Is Nothing Then If DropType Is Nothing Then
LOGGER.Debug("File with Id [{0}] was not found in TBGI_FILES_USER. Exiting.", CURRENT_WORKFILE_GUID) _Logger.Debug("File with Id [{0}] was not found in TBGI_FILES_USER. Exiting.", CURRENT_WORKFILE_GUID)
CancelAttempts = MaxCancelAttempts CancelAttempts = MaxCancelAttempts
Close() Close()
Else Else
@ -1403,14 +1416,14 @@ Public Class frmIndex
ElseIf DropType = "|OUTLOOK_MESSAGE|" Or DropType = "|FW_MSGONLY|" Then ElseIf DropType = "|OUTLOOK_MESSAGE|" Or DropType = "|FW_MSGONLY|" Then
Select Case DropType Select Case DropType
Case "|FW_MSGONLY|" Case "|FW_MSGONLY|"
LOGGER.Info(".msg-file from folderwatch") _Logger.Info(".msg-file from folderwatch")
If USER_LANGUAGE <> "de-DE" Then If USER_LANGUAGE <> "de-DE" Then
Me.Text = "Indexing of msg-File (without Attachments) - from Folderwatch" Me.Text = "Indexing of msg-File (without Attachments) - from Folderwatch"
Else Else
Me.Text = "Indexierung der msg-Datei (ohne Anhang) - aus Folderwatch" Me.Text = "Indexierung der msg-Datei (ohne Anhang) - aus Folderwatch"
End If End If
Case "|OUTLOOK_MESSAGE|" Case "|OUTLOOK_MESSAGE|"
LOGGER.Info(".msg-file through dragdrop") _Logger.Info(".msg-file through dragdrop")
If USER_LANGUAGE <> "de-DE" Then If USER_LANGUAGE <> "de-DE" Then
Me.Text = "Indexing of msg-File (without Attachments)" Me.Text = "Indexing of msg-File (without Attachments)"
Else Else
@ -1474,8 +1487,8 @@ Public Class frmIndex
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unexpected error in Öffnen des Formulares - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unexpected error in Öffnen des Formulares - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Öffnen des Formulares:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Öffnen des Formulares:")
End Try End Try
End Sub End Sub
@ -1484,8 +1497,8 @@ Public Class frmIndex
Me.VWDDINDEX_MANTableAdapter.Connection.ConnectionString = MyConnectionString Me.VWDDINDEX_MANTableAdapter.Connection.ConnectionString = MyConnectionString
Me.VWINDEX_AUTOMTableAdapter.Connection.ConnectionString = MyConnectionString Me.VWINDEX_AUTOMTableAdapter.Connection.ConnectionString = MyConnectionString
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unexpected error in Speichern der Verbindung - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unexpected error in Speichern der Verbindung - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox("Unexpected error in Speichern der Verbindung: " & vbNewLine & ex.Message, MsgBoxStyle.Exclamation) MsgBox("Unexpected error in Speichern der Verbindung: " & vbNewLine & ex.Message, MsgBoxStyle.Exclamation)
End Try End Try
End Sub End Sub
@ -1517,8 +1530,8 @@ Public Class frmIndex
Dim oOnlyFilename = Path.GetFileName(CURRENT_WORKFILE) Dim oOnlyFilename = Path.GetFileName(CURRENT_WORKFILE)
If Regex.IsMatch(oOnlyFilename, oRoW.Item("Regex")) Then If Regex.IsMatch(oOnlyFilename, oRoW.Item("Regex")) Then
LOGGER.Debug("There is a match on REGEX_DOCTYPE: [{0}]", oRoW.Item("DOCTYPE")) _Logger.Debug("There is a match on REGEX_DOCTYPE: [{0}]", oRoW.Item("DOCTYPE"))
LOGGER.Debug("Regex: [{0}], FileName: [{1}]", oRoW.Item("Regex"), oOnlyFilename) _Logger.Debug("Regex: [{0}], FileName: [{1}]", oRoW.Item("Regex"), oOnlyFilename)
cmbDokumentart.SelectedIndex = cmbDokumentart.FindStringExact(oRoW.Item("DOCTYPE")) cmbDokumentart.SelectedIndex = cmbDokumentart.FindStringExact(oRoW.Item("DOCTYPE"))
Exit For Exit For
End If End If
@ -1526,14 +1539,14 @@ Public Class frmIndex
End If End If
End If End If
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unexpected error DTTBGI_REGEX_DOCTYPE - ErrorMessage: " & vbNewLine & ex.Message) _Logger.Warn(" - Unexpected error DTTBGI_REGEX_DOCTYPE - ErrorMessage: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
End Try End Try
End Sub End Sub
Sub Refresh_Dokart() Sub Refresh_Dokart()
Try Try
Dim sql = String.Format("select * from VWGI_DOCTYPE where UPPER(USERNAME) = UPPER('{0}') ORDER BY SEQUENCE", Environment.UserName) Dim sql = String.Format("select * from VWGI_DOCTYPE where UPPER(USERNAME) = UPPER('{0}') ORDER BY SEQUENCE", Environment.UserName)
LOGGER.Info("SQL DoctypeList: " & sql) _Logger.Info("SQL DoctypeList: " & sql)
DT_DOKART = ClassDatabase.Return_Datatable(sql) DT_DOKART = ClassDatabase.Return_Datatable(sql)
cmbDokumentart.DataSource = DT_DOKART cmbDokumentart.DataSource = DT_DOKART
cmbDokumentart.ValueMember = DT_DOKART.Columns("DOCTYPE_ID").ColumnName cmbDokumentart.ValueMember = DT_DOKART.Columns("DOCTYPE_ID").ColumnName
@ -1542,8 +1555,8 @@ Public Class frmIndex
cmbDokumentart.AutoCompleteSource = AutoCompleteSource.ListItems cmbDokumentart.AutoCompleteSource = AutoCompleteSource.ListItems
cmbDokumentart.SelectedIndex = -1 cmbDokumentart.SelectedIndex = -1
Catch ex As Exception Catch ex As Exception
LOGGER.Info(" - Unexpected error inm Laden der Dokumentarten - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unexpected error inm Laden der Dokumentarten - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Laden der Dokumentarten:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Laden der Dokumentarten:")
End Try End Try
End Sub End Sub
@ -1579,7 +1592,8 @@ Public Class frmIndex
pnlIndex.Visible = True pnlIndex.Visible = True
LoadIndexe_Man() LoadIndexe_Man()
Catch ex As System.Exception Catch ex As System.Exception
LOGGER.Info(" - Fehler Refresh_IndexeMan: DOKART-ID: " & dokartid & " - Fehler: " & vbNewLine & ex.Message & vbNewLine & sql) _Logger.Error(ex)
_Logger.Warn("Fehler Refresh_IndexeMan: DOKART-ID: " & dokartid & " - Fehler: " & vbNewLine & ex.Message & vbNewLine & sql)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Refresh_IndexeMan:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Refresh_IndexeMan:")
End Try End Try
End Sub End Sub
@ -1599,6 +1613,7 @@ Public Class frmIndex
Return Nothing Return Nothing
End If End If
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Check_HistoryValues:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Check_HistoryValues:")
Return Nothing Return Nothing
End Try End Try
@ -1613,7 +1628,7 @@ Public Class frmIndex
If DT_INDEXEMAN.Rows.Count = 0 Then If DT_INDEXEMAN.Rows.Count = 0 Then
ShowError("Keine Manuellen Indizes für die " & vbNewLine & "Dokumentart " & cmbDokumentart.Text & " definiert") ShowError("Keine Manuellen Indizes für die " & vbNewLine & "Dokumentart " & cmbDokumentart.Text & " definiert")
LOGGER.Info(" - Keine Manuellen Indizes für die " & vbNewLine & "Dokumentart " & cmbDokumentart.Text & " definiert") _Logger.Info(" - Keine Manuellen Indizes für die " & vbNewLine & "Dokumentart " & cmbDokumentart.Text & " definiert")
End If End If
For Each oRow As DataRow In DT_INDEXEMAN.Rows For Each oRow As DataRow In DT_INDEXEMAN.Rows
@ -1683,7 +1698,7 @@ Public Class frmIndex
MsgBox("Please check Datatype of Indexvalue!", MsgBoxStyle.Critical, "Warning:") MsgBox("Please check Datatype of Indexvalue!", MsgBoxStyle.Critical, "Warning:")
End If End If
LOGGER.Warn(" - Datentyp nicht hinterlegt - LoadIndexe_Man") _Logger.Warn(" - Datentyp nicht hinterlegt - LoadIndexe_Man")
End Select End Select
oControlCount += 1 oControlCount += 1
@ -1702,7 +1717,7 @@ Public Class frmIndex
SendKeys.Send("{TAB}") SendKeys.Send("{TAB}")
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) _Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in LoadIndexe_Man:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in LoadIndexe_Man:")
End Try End Try
End Sub End Sub
@ -1736,8 +1751,8 @@ Public Class frmIndex
oResult = UserShortName oResult = UserShortName
End Select End Select
Catch ex As Exception Catch ex As Exception
LOGGER.Info("Error in ReplacePlaceholders: " & ex.Message) _Logger.Warn("Error in ReplacePlaceholders: " & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
oResult = Nothing oResult = Nothing
End Try End Try
@ -1764,7 +1779,7 @@ Public Class frmIndex
' 1. Schritt: Einfach-Indexe und Platzhalter ersetzen ' 1. Schritt: Einfach-Indexe und Platzhalter ersetzen
For Each oAutoIndexRow As DataRow In oDatatable For Each oAutoIndexRow As DataRow In oDatatable
LOGGER.Info("Working on AutomaticIndex: " & oAutoIndexRow.Item("INDEXNAME") & "...") _Logger.Info("Working on AutomaticIndex: " & oAutoIndexRow.Item("INDEXNAME") & "...")
Dim oSqlResult As String = ClassHelper.NotNull(oAutoIndexRow.Item("SQL_RESULT"), "") Dim oSqlResult As String = ClassHelper.NotNull(oAutoIndexRow.Item("SQL_RESULT"), "")
Dim oSqlActive As Boolean = ClassHelper.NotNull(oAutoIndexRow.Item("SQL_ACTIVE"), False) Dim oSqlActive As Boolean = ClassHelper.NotNull(oAutoIndexRow.Item("SQL_ACTIVE"), False)
Dim oSqlConnectionId As Integer = ClassHelper.NotNull(oAutoIndexRow.Item("CONNECTION_ID"), -1) Dim oSqlConnectionId As Integer = ClassHelper.NotNull(oAutoIndexRow.Item("CONNECTION_ID"), -1)
@ -1826,7 +1841,7 @@ Public Class frmIndex
oSqlResult = ClassPatterns.ReplaceControlValues(oSqlResult, pnlIndex) oSqlResult = ClassPatterns.ReplaceControlValues(oSqlResult, pnlIndex)
oSqlResult = ClassPatterns.ReplaceInternalValues(oSqlResult) oSqlResult = ClassPatterns.ReplaceInternalValues(oSqlResult)
If oSqlResult <> String.Empty Then If oSqlResult <> String.Empty Then
LOGGER.Debug("oSqlResult after Replace [" & oSqlResult & "]") _Logger.Debug("oSqlResult after Replace [" & oSqlResult & "]")
End If End If
' Ergebnis: Es wurden alle einfachen Platzhalter ersetzt, jetzt haben wir einen SQL Befehl, ' Ergebnis: Es wurden alle einfachen Platzhalter ersetzt, jetzt haben wir einen SQL Befehl,
' der nur noch vektorfelder-platzhalter enthält ' der nur noch vektorfelder-platzhalter enthält
@ -1834,7 +1849,7 @@ Public Class frmIndex
' 2. Schritt: Vektorfelder ersetzen ' 2. Schritt: Vektorfelder ersetzen
Dim oVectorMatches As MatchCollection = oRegex.Matches(oSqlResult) Dim oVectorMatches As MatchCollection = oRegex.Matches(oSqlResult)
If oVectorMatches.Count > 0 Then If oVectorMatches.Count > 0 Then
LOGGER.Info(" There are " & oVectorMatches.Count & " matches for vectors!") _Logger.Info(" There are " & oVectorMatches.Count & " matches for vectors!")
Dim oIsFirstMatch = True Dim oIsFirstMatch = True
For Each oVectorMatch As Match In oVectorMatches For Each oVectorMatch As Match In oVectorMatches
@ -1862,7 +1877,7 @@ Public Class frmIndex
Next Next
Else Else
Dim oResult = GetAutomaticIndexSQLValue(oSqlResult, oSqlConnectionId, oSqlProvider) Dim oResult = GetAutomaticIndexSQLValue(oSqlResult, oSqlConnectionId, oSqlProvider)
LOGGER.Info("Got a simple SQLResult: " & oResult.ToString) _Logger.Info("Got a simple SQLResult: " & oResult.ToString)
oAutoIndexRow.Item("Indexiert") = True oAutoIndexRow.Item("Indexiert") = True
oAutoIndexRow.Item("Indexwert") = oResult oAutoIndexRow.Item("Indexwert") = oResult
@ -1871,6 +1886,7 @@ Public Class frmIndex
Return True Return True
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message) MsgBox(ex.Message)
Return False Return False
End Try End Try
@ -1883,6 +1899,7 @@ Public Class frmIndex
Try Try
DocumentViewer1.LoadFile(CURRENT_WORKFILE) DocumentViewer1.LoadFile(CURRENT_WORKFILE)
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in PreviewFile:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in PreviewFile:")
End Try End Try
End Sub End Sub
@ -1908,15 +1925,15 @@ Public Class frmIndex
Private Function WORK_FILE() Private Function WORK_FILE()
Try Try
Me.VWDDINDEX_MANTableAdapter.Fill(Me.MyDataset.VWDDINDEX_MAN, CURRENT_DOKART_ID) Me.VWDDINDEX_MANTableAdapter.Fill(Me.MyDataset.VWDDINDEX_MAN, CURRENT_DOKART_ID)
LOGGER.Debug("Manuelle Indexe geladen") _Logger.Debug("Manuelle Indexe geladen")
If MyDataset.VWDDINDEX_MAN.Rows.Count > 0 Then If MyDataset.VWDDINDEX_MAN.Rows.Count > 0 Then
CURRENT_DOKART_ID = Me.cmbDokumentart.SelectedValue CURRENT_DOKART_ID = Me.cmbDokumentart.SelectedValue
If CheckWrite_IndexeMan(Me.cmbDokumentart.SelectedValue) = True Then If CheckWrite_IndexeMan(Me.cmbDokumentart.SelectedValue) = True Then
'##### Manuelle Indexe indexiert ##### '##### Manuelle Indexe indexiert #####
LOGGER.Info("Datei [" & CURRENT_WORKFILE & "] wird nun indexiert...") _Logger.Info("Datei [" & CURRENT_WORKFILE & "] wird nun indexiert...")
If FillIndexe_Autom(Me.cmbDokumentart.SelectedValue) = True Then If FillIndexe_Autom(Me.cmbDokumentart.SelectedValue) = True Then
LOGGER.Debug(" ...FillIndexe_Autom durchlaufen") _Logger.Debug(" ...FillIndexe_Autom durchlaufen")
'Den Zielnamen zusammenbauen 'Den Zielnamen zusammenbauen
If Name_Generieren() = True Then If Name_Generieren() = True Then
@ -1924,10 +1941,10 @@ Public Class frmIndex
DocumentViewer1.Done() DocumentViewer1.Done()
DocumentViewer1.CloseDocument() DocumentViewer1.CloseDocument()
LOGGER.Debug(" ...Viewer geschlossen") _Logger.Debug(" ...Viewer geschlossen")
'Die Datei verschieben 'Die Datei verschieben
If Move_File2_Target() = True Then If Move_File2_Target() = True Then
LOGGER.Debug(" ...Move_File2_Target durchlaufen") _Logger.Debug(" ...Move_File2_Target durchlaufen")
''Die Originaldatei löschen ''Die Originaldatei löschen
'If DropType = "|DROPFROMFSYSTEM|" Then 'If DropType = "|DROPFROMFSYSTEM|" Then
' If CURR_DELETE_ORIGIN = True Then ' If CURR_DELETE_ORIGIN = True Then
@ -1953,7 +1970,7 @@ Public Class frmIndex
'End If 'End If
CURRENT_LASTDOKART = cmbDokumentart.Text CURRENT_LASTDOKART = cmbDokumentart.Text
LOGGER.Info("Datei '" & CURRENT_NEWFILENAME & "' erfolgreich erzeugt.") _Logger.Info("Datei '" & CURRENT_NEWFILENAME & "' erfolgreich erzeugt.")
Dim oDEL As String = "DELETE FROM TBGI_FILES_USER WHERE GUID = " & CURRENT_WORKFILE_GUID Dim oDEL As String = "DELETE FROM TBGI_FILES_USER WHERE GUID = " & CURRENT_WORKFILE_GUID
ClassDatabase.Execute_non_Query(oDEL, True) ClassDatabase.Execute_non_Query(oDEL, True)
Return True Return True
@ -1986,24 +2003,12 @@ Public Class frmIndex
Return False Return False
End If End If
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox("Unexpected Error in WORK_FILE:" & vbNewLine & ex.Message, MsgBoxStyle.Critical) MsgBox("Unexpected Error in WORK_FILE:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False Return False
End Try End Try
End Function End Function
Sub DeleteFile()
Try
If CURR_DELETE_ORIGIN = False Then
If CURRENT_DROPTYPE <> "FW_SIMPLEINDEXER" Then
LOGGER.Info(">> DeleteFile - CURR_DELETE_ORIGIN = False")
Exit Sub
End If
End If
File.Delete(CURRENT_WORKFILE)
Catch ex As Exception
MsgBox("Unexpeted Error in Delete Current Workfile:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private Sub OK_Button_Click(sender As Object, e As EventArgs) Private Sub OK_Button_Click(sender As Object, e As EventArgs)
ClearError() ClearError()
ClearNotice() ClearNotice()
@ -2121,15 +2126,16 @@ Public Class frmIndex
End If End If
End If End If
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
End Try End Try
End If End If
End If End If
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error in Insert-History - View logfile: " & ex.Message, MsgBoxStyle.Critical) MsgBox("Error in Insert-History - View logfile: " & ex.Message, MsgBoxStyle.Critical)
LOGGER.Info(" - Unexpected error in Insert-History - Fehler: " & vbNewLine & ex.Message) _Logger.Warn(" - Unexpected error in Insert-History - Fehler: " & vbNewLine & ex.Message)
LOGGER.Info(" - Unexpected error in Insert-History - SQL: " & Insert_String) _Logger.Warn(" - Unexpected error in Insert-History - SQL: " & Insert_String)
oError = True oError = True
End Try End Try
Else Else
@ -2154,6 +2160,7 @@ Public Class frmIndex
Return False Return False
End If End If
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected Error in Move File2Target:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected Error in Move File2Target:")
oError = True oError = True
End Try End Try
@ -2176,16 +2183,16 @@ Public Class frmIndex
' alle Vorkommen innerhalb des Ordnerstrings durchlaufen ' alle Vorkommen innerhalb des Ordnerstrings durchlaufen
For Each oMatch As Match In oMatches For Each oMatch As Match In oMatches
LOGGER.Info("Elementname in FolderString: '" & oMatch.ToString & "'") _Logger.Info("Elementname in FolderString: '" & oMatch.ToString & "'")
Select Case oMatch.Value.Substring(2, 1).ToUpper Select Case oMatch.Value.Substring(2, 1).ToUpper
'Manueller Indexwert 'Manueller Indexwert
Case "M" Case "M"
Dim oManIndexName = oMatch.Value.Substring(3, oMatch.Value.Length - 4) Dim oManIndexName = oMatch.Value.Substring(3, oMatch.Value.Length - 4)
Dim oIsOptional As Boolean = ClassDatabase.Execute_Scalar("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & CURRENT_DOKART_ID & " AND UPPER(NAME) = UPPER('" & oManIndexName & "')", MyConnectionString, True) Dim oIsOptional As Boolean = ClassDatabase.Execute_Scalar("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & CURRENT_DOKART_ID & " AND UPPER(NAME) = UPPER('" & oManIndexName & "')", MyConnectionString, True)
LOGGER.Info("Versuch den Indexwert aus '" & oManIndexName & "' auszulesen.") _Logger.Info("Versuch den Indexwert aus '" & oManIndexName & "' auszulesen.")
Dim oManIndexValue As String = GetManIndex_Value(oManIndexName, "FILE", oIsOptional) Dim oManIndexValue As String = GetManIndex_Value(oManIndexName, "FILE", oIsOptional)
LOGGER.Info("Ergebnis/Wert für neuen Ordner: '" & oManIndexName & "'") _Logger.Info("Ergebnis/Wert für neuen Ordner: '" & oManIndexName & "'")
If Not oManIndexValue = String.Empty Then If Not oManIndexValue = String.Empty Then
If IsDate(oManIndexValue) Then If IsDate(oManIndexValue) Then
oManIndexValue = CDate(oManIndexValue).ToString("yyyyMMdd") oManIndexValue = CDate(oManIndexValue).ToString("yyyyMMdd")
@ -2195,21 +2202,21 @@ Public Class frmIndex
'oManIndexValue = ClassFilehandle.CleanFilename(oManIndexValue, "") 'oManIndexValue = ClassFilehandle.CleanFilename(oManIndexValue, "")
DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, oManIndexValue) DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, oManIndexValue)
LOGGER.Info("FolderPattern: '" & DynamicFolderConfig & "'") _Logger.Info("FolderPattern: '" & DynamicFolderConfig & "'")
Else Else
If oIsOptional = True Then If oIsOptional = True Then
LOGGER.Info("Optionaler Indexwert ist NICHT gefüllt") _Logger.Info("Optionaler Indexwert ist NICHT gefüllt")
Else Else
LOGGER.Info(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!") _Logger.Info(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!")
Return True Return True
End If End If
End If End If
Case "A" Case "A"
Dim oAutoIndexName = oMatch.Value.Substring(3, oMatch.Value.Length - 4) Dim oAutoIndexName = oMatch.Value.Substring(3, oMatch.Value.Length - 4)
LOGGER.Info("Versuch den Auto-Indexwert aus '" & oAutoIndexName & "' auszulesen.") _Logger.Info("Versuch den Auto-Indexwert aus '" & oAutoIndexName & "' auszulesen.")
Dim oAutoIndexValue As String = GetAutoIndex_Value(oAutoIndexName) Dim oAutoIndexValue As String = GetAutoIndex_Value(oAutoIndexName)
LOGGER.Info("Ergebnis/Wert für neuen Ordner: '" & oAutoIndexName & "'") _Logger.Info("Ergebnis/Wert für neuen Ordner: '" & oAutoIndexName & "'")
If Not oAutoIndexValue = String.Empty Then If Not oAutoIndexValue = String.Empty Then
oAutoIndexValue = oFilesystem.GetCleanPath(oAutoIndexValue) oAutoIndexValue = oFilesystem.GetCleanPath(oAutoIndexValue)
@ -2218,11 +2225,11 @@ Public Class frmIndex
DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, "") DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, "")
Else Else
DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, oAutoIndexValue) DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, oAutoIndexValue)
LOGGER.Info("FolderPattern: '" & DynamicFolderConfig & "'") _Logger.Info("FolderPattern: '" & DynamicFolderConfig & "'")
End If End If
Else Else
LOGGER.Info(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!") _Logger.Info(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!")
End If End If
Case "V" Case "V"
Dim oElementTemp As String Dim oElementTemp As String
@ -2249,9 +2256,9 @@ Public Class frmIndex
oElementTemp = My.Computer.Clock.LocalTime.Year & "-" & _Month oElementTemp = My.Computer.Clock.LocalTime.Year & "-" & _Month
End Select End Select
DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, oElementTemp) DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, oElementTemp)
LOGGER.Info("FolderPatter nach V-Element: '" & DynamicFolderConfig & "'") _Logger.Info("FolderPatter nach V-Element: '" & DynamicFolderConfig & "'")
Case Else Case Else
LOGGER.Info(" - Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & oMatch.Value.ToUpper) _Logger.Warn(" - Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & oMatch.Value.ToUpper)
If USER_LANGUAGE = "de-DE" Then If USER_LANGUAGE = "de-DE" Then
MsgBox("Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & oMatch.Value.ToUpper, MsgBoxStyle.Exclamation, "Unexpected error in Name generieren:") MsgBox("Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & oMatch.Value.ToUpper, MsgBoxStyle.Exclamation, "Unexpected error in Name generieren:")
@ -2265,42 +2272,43 @@ Public Class frmIndex
LOGGER.Info("Den Root-Folder zusammenfügen>> ") _Logger.Info("Den Root-Folder zusammenfügen>> ")
Dim oNewFullPath As String = System.IO.Path.Combine(oRootFolder, DynamicFolderConfig) Dim oNewFullPath As String = System.IO.Path.Combine(oRootFolder, DynamicFolderConfig)
LOGGER.Info("Fullpath (mit evtl. Sonderzeichen (SZ)) '" & oNewFullpath & "'") _Logger.Info("Fullpath (mit evtl. Sonderzeichen (SZ)) '" & oNewFullPath & "'")
Dim invalidPathChars() As Char = Path.GetInvalidPathChars() Dim invalidPathChars() As Char = Path.GetInvalidPathChars()
For Each sonderChar As Char In invalidPathChars For Each sonderChar As Char In invalidPathChars
'Sonderzeichen ausser Whitespace entfernen 'Sonderzeichen ausser Whitespace entfernen
If Char.IsWhiteSpace(sonderChar) = False Then If Char.IsWhiteSpace(sonderChar) = False Then
If oNewFullpath.Contains(sonderChar) Then If oNewFullPath.Contains(sonderChar) Then
oNewFullpath = oNewFullpath.Replace(sonderChar, "") oNewFullPath = oNewFullPath.Replace(sonderChar, "")
End If End If
End If End If
Next sonderChar Next sonderChar
oNewFullPath = WINDREAM.GetCleanedPath(oNewFullPath) oNewFullPath = WINDREAM.GetCleanedPath(oNewFullPath)
LOGGER.Info("Fullpath (ohne SZ) '" & oNewFullpath & "'") _Logger.Info("Fullpath (ohne SZ) '" & oNewFullPath & "'")
If Directory.Exists(oNewFullpath) = False Then If Directory.Exists(oNewFullPath) = False Then
Try Try
Dim oCreatedPath = Directory.CreateDirectory(oNewFullPath) Dim oCreatedPath = Directory.CreateDirectory(oNewFullPath)
oNewFullPath = oCreatedPath.FullName oNewFullPath = oCreatedPath.FullName
LOGGER.Info("Folder '" & oNewFullpath & "' wurde angelegt") _Logger.Info("Folder '" & oNewFullPath & "' wurde angelegt")
Catch ex As Exception Catch ex As Exception
LOGGER.Info("Error in CreateFolderforIndex-Method - Root Folder '" & oNewFullpath & "' could not be created. " & ex.Message) _Logger.Info("Error in CreateFolderforIndex-Method - Root Folder '" & oNewFullPath & "' could not be created. " & ex.Message)
LOGGER.Error(ex.Message) _Logger.Error(ex.Message)
MsgBox("Attention: Root Folder '" & oNewFullpath & "' could not be created." & vbNewLine & ex.Message, MsgBoxStyle.Critical) MsgBox("Attention: Root Folder '" & oNewFullPath & "' could not be created." & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False Return False
End Try End Try
End If End If
CURRENT_NEWFILENAME = Path.Combine(oNewFullpath, Path.GetFileName(CURRENT_NEWFILENAME)) CURRENT_NEWFILENAME = Path.Combine(oNewFullPath, Path.GetFileName(CURRENT_NEWFILENAME))
Return True Return True
Catch ex As Exception Catch ex As Exception
MsgBox("Unexpected Error in CreateFolderforIndex-Method:" & vbNewLine & ex.Message, MsgBoxStyle.Critical) MsgBox("Unexpected Error in CreateFolderforIndex-Method:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
LOGGER.Info("Fehler in CrFolderForIndex: " & ex.Message) _Logger.Warn("Fehler in CrFolderForIndex: " & ex.Message)
_Logger.Error(ex)
Return False Return False
End Try End Try
End Function End Function
@ -2362,6 +2370,7 @@ Public Class frmIndex
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex)
MsgBox("Unexpected Error in Abort Indexing: " & vbNewLine & ex.Message, MsgBoxStyle.Critical) MsgBox("Unexpected Error in Abort Indexing: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try End Try