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 DevExpress.XtraEditors.Controls
Imports System.ComponentModel
Imports DigitalData.Modules.Logging
Public Class frmIndex
#Region "+++++ Variablen ++++++"
@ -34,8 +35,18 @@ Public Class frmIndex
Private Const TEXT_MISSING_INPUT = "Bitte vervollständigen Sie die Eingaben!"
Private _Logger As Logger
#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()
DocumentViewer1.Dispose()
End Sub
@ -135,7 +146,7 @@ Public Class frmIndex
Next
Catch ex As Exception
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
End Try
End Function
@ -148,20 +159,20 @@ Public Class frmIndex
For Each DR In DT.Rows
If DR.Item("INDEXNAME").ToString.ToLower = indexname.ToLower Then
If DR.Item("Indexiert") = True Then
LOGGER.Info("## Manueller Index: " & indexname)
_Logger.Info("## Manueller Index: " & indexname)
Select Case RequestFor
Case "FILE"
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(" >>Zurückgegebener NachbearbeitungsWert: " & DR.Item("Indexwert_File"))
_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"))
Return DR.Item("Indexwert_File")
Else
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")
Else
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!")
Return Nothing
Else
@ -172,12 +183,12 @@ Public Class frmIndex
End If
Case Else
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")
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)
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!")
Return Nothing
Else
@ -193,8 +204,8 @@ Public Class frmIndex
End If
Next
Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Unexpected error in GetManIndex_Value - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unvorhergesehener Unexpected error in GetManIndex_Value - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox("Indexname: " & indexname & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unexpected error in GetManIndex_Value:")
Return Nothing
End Try
@ -232,8 +243,8 @@ Public Class frmIndex
End If
Next
Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Unexpected error in GetAutoIndex_Value - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unvorhergesehener Unexpected error in GetAutoIndex_Value - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox("Indexname: " & indexname & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unexpected error in GetAutoIndex_Value:")
Return ""
End Try
@ -254,7 +265,7 @@ Public Class frmIndex
End If
If LogErrorsOnly = False Then
LOGGER.Info(" >>SQL-ConnectionString: " & oConnectionString.Substring(0, oConnectionString.LastIndexOf("=")))
_Logger.Info(" >>SQL-ConnectionString: " & oConnectionString.Substring(0, oConnectionString.LastIndexOf("=")))
End If
If oErgebnis Is Nothing Then
@ -266,8 +277,8 @@ Public Class frmIndex
End If
Catch ex As Exception
LOGGER.Info(" - Unexpected error in Get_AutomatischerIndex_SQL - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unexpected error in Get_AutomatischerIndex_SQL - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Get_AutomatischerIndex_SQL:")
Return ""
End Try
@ -278,7 +289,7 @@ Public Class frmIndex
Function CheckWrite_IndexeMan(dokartid As Integer)
'#### Zuerst manuelle Werte indexieren ####
Try
LOGGER.Info("In CheckWrite_IndexeMan")
_Logger.Info("In CheckWrite_IndexeMan")
Dim result As Boolean = False
For Each oControl As Control In Me.pnlIndex.Controls
' MsgBox(ctrl.Name)
@ -296,7 +307,7 @@ Public Class frmIndex
End If
Else
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:")
box.Focus()
Return False
@ -391,15 +402,15 @@ Public Class frmIndex
Continue For
End If
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
End If
Next
Return True
Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Fehler in CheckWrite_IndexeMan - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unvorhergesehener Fehler in CheckWrite_IndexeMan - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unerwarteter Unexpected error in CheckWrite_IndexeMan:")
Return False
End Try
@ -442,15 +453,15 @@ Public Class frmIndex
End If
Next
Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Unexpected error in Indexwert_Postprocessing - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unvorhergesehener Unexpected error in Indexwert_Postprocessing - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Indexwert_Postprocessing:")
End Try
End Sub
Function Name_Generieren()
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 oFilesystem As New DigitalData.Modules.Filesystem.File(LOGCONFIG)
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)
'####
If oMatchelements.Count = 0 Then
LOGGER.Debug("No RegularExpression Fileds on Nameconvention!")
_Logger.Debug("No RegularExpression Fileds on Nameconvention!")
End If
' alle Vorkommen innerhalbd er Namenkonvention durchlaufen
For Each oElement As System.Text.RegularExpressions.Match In oMatchelements
Select Case oElement.Value.Substring(2, 1).ToUpper
'Manueller Indexwert
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 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)
@ -532,7 +543,7 @@ Public Class frmIndex
AnzahlIndexe += 1
sql_history_Index_Values = sql_history_Index_Values & ", '" & oManValue.Replace("'", "''") & "'"
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
End If
@ -615,13 +626,13 @@ Public Class frmIndex
Loop
End If
Catch ex As Exception
LOGGER.Warn(" - Unexpected error in NameGenerieren - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unexpected error in NameGenerieren - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Umbenennnen der Datei:")
err = True
End Try
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:")
End Select
Next
@ -630,8 +641,8 @@ Public Class frmIndex
'CURRENT_NEWFILENAME = ClassFilehandle.CleanFilename(NewFileString, "")
CURRENT_NEWFILENAME = Path.Combine(oRAWZielordner, CURRENT_NEWFILENAME)
LOGGER.Debug("#### ENDE Name_Generieren ####")
LOGGER.Debug("")
_Logger.Debug("#### ENDE Name_Generieren ####")
_Logger.Debug("")
If err = False Then
Return True
Else
@ -639,8 +650,8 @@ Public Class frmIndex
End If
Catch ex As Exception
LOGGER.Info(" - Unvorhergesehener Unexpected error in Name_Generieren - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unvorhergesehener Unexpected error in Name_Generieren - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Allgemeiner Unexpected error in Name_Generieren:")
Return False
End Try
@ -656,7 +667,7 @@ Public Class frmIndex
For Each row As DataRow In DTMan.Rows
Dim idxvalue = row.Item("Indexwert")
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 indexiert = CBool(row.Item("Indexiert"))
If indexiert And idxvalue.ToString <> "" And idxvalue <> "EMPTY_OI" Then
@ -683,15 +694,15 @@ Public Class frmIndex
End If
End If
LOGGER.Debug($"Manueller Indexvalue [{idxvalue.ToString}]...NOW THE INDEXING...")
_Logger.Debug($"Manueller Indexvalue [{idxvalue.ToString}]...NOW THE INDEXING...")
Count += 1
' den Typ des Zielindexes auslesen
Dim oIndexType As Integer = WINDREAM.GetIndexType(indexname)
LOGGER.Debug($"oIndexType [{oIndexType.ToString}]...")
_Logger.Debug($"oIndexType [{oIndexType.ToString}]...")
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)
Else
Dim oSplitArray = Split(idxvalue, ClassConstants.VECTORSEPARATOR)
@ -716,12 +727,12 @@ Public Class frmIndex
End If
Else
LOGGER.Debug("No Indexing: indexname: " & indexname)
LOGGER.Debug("No Indexing: is optional? " & optional_Index.ToString)
_Logger.Debug("No Indexing: indexname: " & indexname)
_Logger.Debug("No Indexing: is optional? " & optional_Index.ToString)
End If
Else
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.Debug("Indexvalue is empty or field is not indexed - Indexname: " & indexname)
_Logger.Info("Indexvalue is empty or field is not indexed - Indexname: " & indexname)
End If
Next
@ -736,8 +747,8 @@ Public Class frmIndex
Dim indexname = row.Item("INDEXNAME").ToString
If indexiert = True And Indexvalue <> "" Then
If Indexvalue <> "EMPTY_OI" Then
LOGGER.Info("Auto Indexname: " & indexname.ToString)
LOGGER.Info("Indexvalue: " & Indexvalue.ToString)
_Logger.Info("Auto Indexname: " & indexname.ToString)
_Logger.Info("Indexvalue: " & Indexvalue.ToString)
Count += 1
' den Typ des Zielindexes auslesen
@ -782,8 +793,8 @@ Public Class frmIndex
End If
End If
Catch ex As Exception
LOGGER.Info("Unexpected error in Write_Indizes - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn("Unexpected error in Write_Indizes - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox("Error in Write_Indizes:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
@ -791,9 +802,10 @@ Public Class frmIndex
End Function
Private Function WriteIndex2File(indexname As String, indexvalue As String)
Try
LOGGER.Info("Indexvalue: " & indexvalue.ToString)
_Logger.Info("Indexvalue: " & indexvalue.ToString)
Return WINDREAM.SetFileIndex(CURRENT_NEWFILENAME, indexname, indexvalue, CURR_DOKART_OBJECTTYPE)
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error in WriteIndex2File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
@ -808,13 +820,13 @@ Public Class frmIndex
Dim msgDisplayTo = msg.DisplayTo
Dim msgInternetAccountName = msg.InternetAccountName
If LogErrorsOnly = False Then
LOGGER.Info("")
LOGGER.Info("msgInternetAccountName: " & msgInternetAccountName)
LOGGER.Info("SenderName: " & msg.SenderName)
LOGGER.Info("SenderEmailAddress: " & msg.SenderEmailAddress)
LOGGER.Info("ReceivedByName: " & msg.ReceivedByName)
LOGGER.Info("ReceivedByEmailAddress: " & msg.ReceivedByEmailAddress)
LOGGER.Info("")
_Logger.Info("")
_Logger.Info("msgInternetAccountName: " & msgInternetAccountName)
_Logger.Info("SenderName: " & msg.SenderName)
_Logger.Info("SenderEmailAddress: " & msg.SenderEmailAddress)
_Logger.Info("ReceivedByName: " & msg.ReceivedByName)
_Logger.Info("ReceivedByEmailAddress: " & msg.ReceivedByEmailAddress)
_Logger.Info("")
End If
_step = "2"
@ -850,7 +862,7 @@ Public Class frmIndex
Next
Dim DT As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM TBGI_OBJECTTYPE_EMAIL_INDEX WHERE OBJECTTYPE = '" & CURR_DOKART_OBJECTTYPE & "'")
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
End If
If DT.Rows.Count = 1 Then
@ -869,7 +881,7 @@ Public Class frmIndex
End If
Else
If messageIDPattern = String.Empty Then
LOGGER.Info("A messageID could not be read!")
_Logger.Info("A messageID could not be read!")
Else
If Not IsNothing(headers) Then
CURRENT_MESSAGEID = ClassEmailHeaderExtractor.extractFromHeader(headers, messageIDPattern)
@ -877,7 +889,7 @@ Public Class frmIndex
CURRENT_MESSAGEID = ""
End If
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
@ -910,7 +922,7 @@ Public Class frmIndex
_step = "4.2"
If IsNothing(msgDisplayTo) Then
_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"
Else
_step = "4.4"
@ -918,7 +930,7 @@ Public Class frmIndex
End If
If IsNothing(msgInternetAccountName) Then
_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 = ""
Else
_step = "4.6"
@ -926,7 +938,7 @@ Public Class frmIndex
End If
Else
_step = "5"
LOGGER.Info("emailTo and From Extraction via messageheader.")
_Logger.Info("emailTo and From Extraction via messageheader.")
emailFrom = ClassEmailHeaderExtractor.extractFromHeader(headers, fromPattern) 'FromRegexList)
emailTo = ClassEmailHeaderExtractor.extractFromHeader(headers, toPattern) ' extractToAddress(headers, ToRegexList)
@ -934,16 +946,16 @@ Public Class frmIndex
'Handler für leere emailTo-Adresse
If IsNothing(emailTo) Then
_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
_step = "5.2"
LOGGER.Info("...try with LDAP-option")
_Logger.Info("...try with LDAP-option")
Dim _email = GetUserEmailfromLDAP(msgDisplayTo)
_step = "5.3"
If _email <> "" Then
emailTo = _email
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)
Return False
End If
@ -959,7 +971,7 @@ Public Class frmIndex
emailTo = CURR_MISSING_MANUAL_VALUE
Else
_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)
Return False
End If
@ -975,7 +987,7 @@ Public Class frmIndex
emailFrom = emailFrom.Replace(">", "")
Else
_step = "6.1.x"
LOGGER.Info("emailFrom is Nothing?!")
_Logger.Info("emailFrom is Nothing?!")
End If
If Not IsNothing(emailTo) Then
@ -999,20 +1011,20 @@ Public Class frmIndex
Next
Else
_step = "6.3"
LOGGER.Info("emailTo is Nothing?!")
_Logger.Info("emailTo is Nothing?!")
End If
LOGGER.Info("Headers-Content: ")
LOGGER.Info(headers.ToString)
_Logger.Info("Headers-Content: ")
_Logger.Info(headers.ToString)
End If
'Handler für leere emailFrom-Adresse
If IsNothing(emailFrom) Then
_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 msg.SenderEmailAddress <> String.Empty Then
_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("'", "")
End If
End If
@ -1032,8 +1044,8 @@ Public Class frmIndex
End If
End If
LOGGER.Info("emailFrom: " & emailFrom)
LOGGER.Info("emailTo: " & emailTo)
_Logger.Info("emailFrom: " & emailFrom)
_Logger.Info("emailTo: " & emailTo)
'FROM
If Not IsNothing(emailFrom) Then
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_FROM").ToString, emailFrom)
@ -1042,7 +1054,7 @@ Public Class frmIndex
Return False
End If
Else
LOGGER.Info("emailFrom is still Nothing?!")
_Logger.Info("emailFrom is still Nothing?!")
_step = "7.4"
End If
'TO
@ -1053,14 +1065,14 @@ Public Class frmIndex
Return False
End If
Else
LOGGER.Info("emailTo is still Nothing?!")
_Logger.Info("emailTo is still Nothing?!")
_step = "7.5"
End If
' Dim subj As String = ClassFormFunctions.CleanInput(msg.Subject)
Dim subj As String = msg.Subject
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"
MsgBox("Attention: Email was send without a subject - Default value 'No subject' will be used!", MsgBoxStyle.Exclamation)
Else
@ -1070,16 +1082,16 @@ Public Class frmIndex
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)
CURRENT_MESSAGESUBJECT = subj
If indexierung_erfolgreich = False Then
MsgBox("Error in SetEmailIndices [Subject] - See log", MsgBoxStyle.Critical)
Return False
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)
CURRENT_MESSAGEDATE = msg.MessageDeliveryTime
If indexierung_erfolgreich = False Then
@ -1094,13 +1106,10 @@ Public Class frmIndex
End If
Catch ex As Exception
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.Info("Stack-Trace: " & ex.StackTrace)
_Logger.Warn("Error in SetEmailIndices (Step finisched: " & _step & "): " & ex.Message)
_Logger.Error(ex)
Return False
End Try
End Function
Public Function GetUserEmailfromLDAP(ByVal userName As String) As String
@ -1117,6 +1126,7 @@ Public Class frmIndex
search.PropertiesToLoad.Add("mail")
result = search.FindOne()
Catch ex As Exception
_Logger.Error(ex)
search.Filter = ""
search.Filter = "(GivenName=" & userName & ")"
search.PropertiesToLoad.Add("mail")
@ -1126,8 +1136,8 @@ Public Class frmIndex
result = search.FindOne()
If result IsNot Nothing Then userEmail = result.Properties("mail").ToString
Catch ex As Exception
LOGGER.Info(">> Unexpected Error in GetUserEmail from LDAP: " & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Info(">> Unexpected Error in GetUserEmail from LDAP: " & ex.Message)
_Logger.Error(ex)
End Try
End Using
@ -1174,6 +1184,7 @@ Public Class frmIndex
Return indexierung_erfolgreich
End If
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error in SetAttachmentIndices:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
@ -1185,28 +1196,31 @@ Public Class frmIndex
CURR_DOKART_OBJECTTYPE = _Objekttyp
Dim oWMCheckPath = WINDREAM.VersionWMFilename(CURRENT_NEWFILENAME, System.IO.Path.GetExtension(CURRENT_NEWFILENAME))
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
End If
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("File exists in Destination: {0}", File.Exists(CURRENT_NEWFILENAME))
LOGGER.Debug("File should be deleted: {0}", CURR_DELETE_ORIGIN)
_Logger.Debug("Checks for file [{0}]", oTempPath)
_Logger.Debug("File streamed to Windream: {0}", oStreamSuccessful)
_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
Try
My.Computer.FileSystem.DeleteFile(CURRENT_WORKFILE)
Catch ex As Exception
LOGGER.Error(ex)
_Logger.Error(ex)
End Try
End If
End If
Return oStreamSuccessful
Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in SINGLEFILE_2_WINDREAM:")
Return False
End Try
@ -1260,12 +1274,10 @@ Public Class frmIndex
End If
Return False
Catch ex As Exception
LOGGER.Info(" - Unexpected error in Move_Rename - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
LOGGER.Info(" - Unexpected error in Move_Rename - Insert_String: " & Insert_String)
_Logger.Error(ex.Message)
_Logger.Warn(" - Unexpected error in Move_Rename - Insert_String: " & Insert_String)
Return True
End Try
End Function
'#End Region
@ -1325,6 +1337,7 @@ Public Class frmIndex
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Unexpected Error in Abort Indexing: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
@ -1336,8 +1349,8 @@ Public Class frmIndex
ClassWindowLocation.SaveFormLocationSize(Me)
My.Settings.Save()
Catch ex As Exception
LOGGER.Info(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Info(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Schliessen des Formulares:")
End Try
@ -1354,8 +1367,8 @@ Public Class frmIndex
ClassWindowLocation.SaveFormLocationSize(Me)
My.Settings.Save()
Catch ex As Exception
LOGGER.Info(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unexpected error in Schliessen des Formulares - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Schliessen des Formulares:")
End Try
End Select
@ -1380,7 +1393,7 @@ Public Class frmIndex
DocumentViewer1.Init(LOGCONFIG, VIEWER_LICENSE)
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
Close()
Else
@ -1403,14 +1416,14 @@ Public Class frmIndex
ElseIf DropType = "|OUTLOOK_MESSAGE|" Or DropType = "|FW_MSGONLY|" Then
Select Case DropType
Case "|FW_MSGONLY|"
LOGGER.Info(".msg-file from folderwatch")
_Logger.Info(".msg-file from folderwatch")
If USER_LANGUAGE <> "de-DE" Then
Me.Text = "Indexing of msg-File (without Attachments) - from Folderwatch"
Else
Me.Text = "Indexierung der msg-Datei (ohne Anhang) - aus Folderwatch"
End If
Case "|OUTLOOK_MESSAGE|"
LOGGER.Info(".msg-file through dragdrop")
_Logger.Info(".msg-file through dragdrop")
If USER_LANGUAGE <> "de-DE" Then
Me.Text = "Indexing of msg-File (without Attachments)"
Else
@ -1474,8 +1487,8 @@ Public Class frmIndex
Catch ex As Exception
LOGGER.Info(" - Unexpected error in Öffnen des Formulares - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unexpected error in Öffnen des Formulares - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Öffnen des Formulares:")
End Try
End Sub
@ -1484,8 +1497,8 @@ Public Class frmIndex
Me.VWDDINDEX_MANTableAdapter.Connection.ConnectionString = MyConnectionString
Me.VWINDEX_AUTOMTableAdapter.Connection.ConnectionString = MyConnectionString
Catch ex As Exception
LOGGER.Info(" - Unexpected error in Speichern der Verbindung - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unexpected error in Speichern der Verbindung - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox("Unexpected error in Speichern der Verbindung: " & vbNewLine & ex.Message, MsgBoxStyle.Exclamation)
End Try
End Sub
@ -1517,8 +1530,8 @@ Public Class frmIndex
Dim oOnlyFilename = Path.GetFileName(CURRENT_WORKFILE)
If Regex.IsMatch(oOnlyFilename, oRoW.Item("Regex")) Then
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("There is a match on REGEX_DOCTYPE: [{0}]", oRoW.Item("DOCTYPE"))
_Logger.Debug("Regex: [{0}], FileName: [{1}]", oRoW.Item("Regex"), oOnlyFilename)
cmbDokumentart.SelectedIndex = cmbDokumentart.FindStringExact(oRoW.Item("DOCTYPE"))
Exit For
End If
@ -1526,14 +1539,14 @@ Public Class frmIndex
End If
End If
Catch ex As Exception
LOGGER.Info(" - Unexpected error DTTBGI_REGEX_DOCTYPE - ErrorMessage: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unexpected error DTTBGI_REGEX_DOCTYPE - ErrorMessage: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
End Try
End Sub
Sub Refresh_Dokart()
Try
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)
cmbDokumentart.DataSource = DT_DOKART
cmbDokumentart.ValueMember = DT_DOKART.Columns("DOCTYPE_ID").ColumnName
@ -1542,8 +1555,8 @@ Public Class frmIndex
cmbDokumentart.AutoCompleteSource = AutoCompleteSource.ListItems
cmbDokumentart.SelectedIndex = -1
Catch ex As Exception
LOGGER.Info(" - Unexpected error inm Laden der Dokumentarten - Fehler: " & vbNewLine & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn(" - Unexpected error inm Laden der Dokumentarten - Fehler: " & vbNewLine & ex.Message)
_Logger.Error(ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Laden der Dokumentarten:")
End Try
End Sub
@ -1579,7 +1592,8 @@ Public Class frmIndex
pnlIndex.Visible = True
LoadIndexe_Man()
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:")
End Try
End Sub
@ -1599,6 +1613,7 @@ Public Class frmIndex
Return Nothing
End If
Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Check_HistoryValues:")
Return Nothing
End Try
@ -1613,7 +1628,7 @@ Public Class frmIndex
If DT_INDEXEMAN.Rows.Count = 0 Then
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
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:")
End If
LOGGER.Warn(" - Datentyp nicht hinterlegt - LoadIndexe_Man")
_Logger.Warn(" - Datentyp nicht hinterlegt - LoadIndexe_Man")
End Select
oControlCount += 1
@ -1702,7 +1717,7 @@ Public Class frmIndex
SendKeys.Send("{TAB}")
Catch ex As Exception
LOGGER.Error(ex)
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in LoadIndexe_Man:")
End Try
End Sub
@ -1736,8 +1751,8 @@ Public Class frmIndex
oResult = UserShortName
End Select
Catch ex As Exception
LOGGER.Info("Error in ReplacePlaceholders: " & ex.Message)
LOGGER.Error(ex.Message)
_Logger.Warn("Error in ReplacePlaceholders: " & ex.Message)
_Logger.Error(ex.Message)
oResult = Nothing
End Try
@ -1764,7 +1779,7 @@ Public Class frmIndex
' 1. Schritt: Einfach-Indexe und Platzhalter ersetzen
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 oSqlActive As Boolean = ClassHelper.NotNull(oAutoIndexRow.Item("SQL_ACTIVE"), False)
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.ReplaceInternalValues(oSqlResult)
If oSqlResult <> String.Empty Then
LOGGER.Debug("oSqlResult after Replace [" & oSqlResult & "]")
_Logger.Debug("oSqlResult after Replace [" & oSqlResult & "]")
End If
' Ergebnis: Es wurden alle einfachen Platzhalter ersetzt, jetzt haben wir einen SQL Befehl,
' der nur noch vektorfelder-platzhalter enthält
@ -1834,7 +1849,7 @@ Public Class frmIndex
' 2. Schritt: Vektorfelder ersetzen
Dim oVectorMatches As MatchCollection = oRegex.Matches(oSqlResult)
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
For Each oVectorMatch As Match In oVectorMatches
@ -1862,7 +1877,7 @@ Public Class frmIndex
Next
Else
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("Indexwert") = oResult
@ -1871,6 +1886,7 @@ Public Class frmIndex
Return True
Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message)
Return False
End Try
@ -1883,6 +1899,7 @@ Public Class frmIndex
Try
DocumentViewer1.LoadFile(CURRENT_WORKFILE)
Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in PreviewFile:")
End Try
End Sub
@ -1908,15 +1925,15 @@ Public Class frmIndex
Private Function WORK_FILE()
Try
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
CURRENT_DOKART_ID = Me.cmbDokumentart.SelectedValue
If CheckWrite_IndexeMan(Me.cmbDokumentart.SelectedValue) = True Then
'##### 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
LOGGER.Debug(" ...FillIndexe_Autom durchlaufen")
_Logger.Debug(" ...FillIndexe_Autom durchlaufen")
'Den Zielnamen zusammenbauen
If Name_Generieren() = True Then
@ -1924,10 +1941,10 @@ Public Class frmIndex
DocumentViewer1.Done()
DocumentViewer1.CloseDocument()
LOGGER.Debug(" ...Viewer geschlossen")
_Logger.Debug(" ...Viewer geschlossen")
'Die Datei verschieben
If Move_File2_Target() = True Then
LOGGER.Debug(" ...Move_File2_Target durchlaufen")
_Logger.Debug(" ...Move_File2_Target durchlaufen")
''Die Originaldatei löschen
'If DropType = "|DROPFROMFSYSTEM|" Then
' If CURR_DELETE_ORIGIN = True Then
@ -1953,7 +1970,7 @@ Public Class frmIndex
'End If
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
ClassDatabase.Execute_non_Query(oDEL, True)
Return True
@ -1986,24 +2003,12 @@ Public Class frmIndex
Return False
End If
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Unexpected Error in WORK_FILE:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
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)
ClearError()
ClearNotice()
@ -2121,15 +2126,16 @@ Public Class frmIndex
End If
End If
Catch ex As Exception
_Logger.Error(ex)
End Try
End If
End If
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error in Insert-History - View logfile: " & ex.Message, MsgBoxStyle.Critical)
LOGGER.Info(" - 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 - Fehler: " & vbNewLine & ex.Message)
_Logger.Warn(" - Unexpected error in Insert-History - SQL: " & Insert_String)
oError = True
End Try
Else
@ -2154,6 +2160,7 @@ Public Class frmIndex
Return False
End If
Catch ex As Exception
_Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected Error in Move File2Target:")
oError = True
End Try
@ -2176,16 +2183,16 @@ Public Class frmIndex
' alle Vorkommen innerhalb des Ordnerstrings durchlaufen
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
'Manueller Indexwert
Case "M"
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)
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)
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 IsDate(oManIndexValue) Then
oManIndexValue = CDate(oManIndexValue).ToString("yyyyMMdd")
@ -2195,21 +2202,21 @@ Public Class frmIndex
'oManIndexValue = ClassFilehandle.CleanFilename(oManIndexValue, "")
DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, oManIndexValue)
LOGGER.Info("FolderPattern: '" & DynamicFolderConfig & "'")
_Logger.Info("FolderPattern: '" & DynamicFolderConfig & "'")
Else
If oIsOptional = True Then
LOGGER.Info("Optionaler Indexwert ist NICHT gefüllt")
_Logger.Info("Optionaler Indexwert ist NICHT gefüllt")
Else
LOGGER.Info(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!")
_Logger.Info(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!")
Return True
End If
End If
Case "A"
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)
LOGGER.Info("Ergebnis/Wert für neuen Ordner: '" & oAutoIndexName & "'")
_Logger.Info("Ergebnis/Wert für neuen Ordner: '" & oAutoIndexName & "'")
If Not oAutoIndexValue = String.Empty Then
oAutoIndexValue = oFilesystem.GetCleanPath(oAutoIndexValue)
@ -2218,11 +2225,11 @@ Public Class frmIndex
DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, "")
Else
DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, oAutoIndexValue)
LOGGER.Info("FolderPattern: '" & DynamicFolderConfig & "'")
_Logger.Info("FolderPattern: '" & DynamicFolderConfig & "'")
End If
Else
LOGGER.Info(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!")
_Logger.Info(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!")
End If
Case "V"
Dim oElementTemp As String
@ -2249,9 +2256,9 @@ Public Class frmIndex
oElementTemp = My.Computer.Clock.LocalTime.Year & "-" & _Month
End Select
DynamicFolderConfig = DynamicFolderConfig.Replace(oMatch.ToString, oElementTemp)
LOGGER.Info("FolderPatter nach V-Element: '" & DynamicFolderConfig & "'")
_Logger.Info("FolderPatter nach V-Element: '" & DynamicFolderConfig & "'")
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
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)
LOGGER.Info("Fullpath (mit evtl. Sonderzeichen (SZ)) '" & oNewFullpath & "'")
_Logger.Info("Fullpath (mit evtl. Sonderzeichen (SZ)) '" & oNewFullPath & "'")
Dim invalidPathChars() As Char = Path.GetInvalidPathChars()
For Each sonderChar As Char In invalidPathChars
'Sonderzeichen ausser Whitespace entfernen
If Char.IsWhiteSpace(sonderChar) = False Then
If oNewFullpath.Contains(sonderChar) Then
oNewFullpath = oNewFullpath.Replace(sonderChar, "")
If oNewFullPath.Contains(sonderChar) Then
oNewFullPath = oNewFullPath.Replace(sonderChar, "")
End If
End If
Next sonderChar
oNewFullPath = WINDREAM.GetCleanedPath(oNewFullPath)
LOGGER.Info("Fullpath (ohne SZ) '" & oNewFullpath & "'")
If Directory.Exists(oNewFullpath) = False Then
_Logger.Info("Fullpath (ohne SZ) '" & oNewFullPath & "'")
If Directory.Exists(oNewFullPath) = False Then
Try
Dim oCreatedPath = Directory.CreateDirectory(oNewFullPath)
oNewFullPath = oCreatedPath.FullName
LOGGER.Info("Folder '" & oNewFullpath & "' wurde angelegt")
_Logger.Info("Folder '" & oNewFullPath & "' wurde angelegt")
Catch ex As Exception
LOGGER.Info("Error in CreateFolderforIndex-Method - Root Folder '" & oNewFullpath & "' could not be created. " & ex.Message)
LOGGER.Error(ex.Message)
MsgBox("Attention: Root Folder '" & oNewFullpath & "' could not be created." & vbNewLine & ex.Message, MsgBoxStyle.Critical)
_Logger.Info("Error in CreateFolderforIndex-Method - Root Folder '" & oNewFullPath & "' could not be created. " & ex.Message)
_Logger.Error(ex.Message)
MsgBox("Attention: Root Folder '" & oNewFullPath & "' could not be created." & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
End If
CURRENT_NEWFILENAME = Path.Combine(oNewFullpath, Path.GetFileName(CURRENT_NEWFILENAME))
CURRENT_NEWFILENAME = Path.Combine(oNewFullPath, Path.GetFileName(CURRENT_NEWFILENAME))
Return True
Catch ex As Exception
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
End Try
End Function
@ -2362,6 +2370,7 @@ Public Class frmIndex
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Unexpected Error in Abort Indexing: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try