MS Klassen überarbeitet NLOG integriert

This commit is contained in:
Digital Data - Marlon Schreiber
2018-08-16 10:58:57 +02:00
parent be9fca94b3
commit 844a423f7d
76 changed files with 365601 additions and 1752 deletions

View File

@@ -10,7 +10,7 @@ Imports WMOSRCHLib
Imports System.IO
Public Class clsWindream_allgemein
Private Shared Logger As NLog.Logger = NLog.LogManager.GetCurrentClassLogger
#Region "+++++ Konstanten +++++"
Const DEBUG = AUS
Const AUS = 0
@@ -26,7 +26,6 @@ Public Class clsWindream_allgemein
Private Shared oController As New WMOSearchController
#End Region
#Region "+++++ Allgemeine Methoden und Funktionen +++++"
''' <summary>
@@ -37,7 +36,7 @@ Public Class clsWindream_allgemein
' wenn ein Fehler bei der Initialisierung auftrat
If Not Init() Then
' Nachricht ausgeben
clsLogger.Add("Es trat ein Fehler bei der Initialisierung der Klasse windream auf. Bitte prüfen Sie ob der windream-Server aktiv ist und alle Dienste gestartet sind", True, "clsWindream_allgemein.Init")
Logger.Warn("Es trat ein Fehler bei der Initialisierung der Klasse windream auf. Bitte prüfen Sie ob der windream-Server aktiv ist und alle Dienste gestartet sind")
' das Programm "abschießen"
Process.GetCurrentProcess.Kill()
End If
@@ -72,7 +71,7 @@ Public Class clsWindream_allgemein
' setzt die minimal erwartete windream-Version
oConnect.MinReqVersion = "3"
' clsLogger.AddDetailLog("Personifizierung'")
' Logger.Info("Personifizierung'")
' -- Impersonifizierung nur möglich mit registry-eintrag --
'oConnect.UserName = "\digitaldata\SchreiberM"
@@ -80,11 +79,11 @@ Public Class clsWindream_allgemein
' Verbindung mit Session-Objekt (und dem ausgewählten Server) aufbauen
oConnect.LoginSession(oSession)
clsLogger.AddDetailLog("windream-Server: '" & GetCurrentServer() & "'")
clsLogger.AddDetailLog("windream-UserName: '" & oConnect.UserName & "'")
Logger.Info("windream-Server: '" & GetCurrentServer() & "'")
Logger.Info("windream-UserName: '" & oConnect.UserName & "'")
If oSession.aLoggedin = False Then
clsLogger.Add("Es konnte keine Verbindung mit dem windream-Server hergestellt werden", True, "clswindream.Init")
Logger.Warn("Es konnte keine Verbindung mit dem windream-Server hergestellt werden")
Return False
End If
@@ -109,20 +108,22 @@ Public Class clsWindream_allgemein
' Ordnertypen ausgelesen werden
oDokumentTypen = oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
Catch ex As Exception
clsLogger.AddError("Problem beim Auslesen der Objekttypen", "clswindream.Init")
Logger.Warn("Problem beim Auslesen der Objekttypen: " & ex.Message)
Return False
End Try
End If
clsLogger.AddDetailLog("Alles OK - Erfolgreich angemeldet und Session aufgebaut")
Logger.Info("Alles OK - Erfolgreich angemeldet und Session aufgebaut")
Return True
Catch ex As Exception
If Err.Number = -2147220985 Then
clsLogger.AddError("Die installierte windream-Version ist nicht ausreichend für den Betrieb", "clswindream.Init")
Else
clsLogger.AddError("Fehler beim Login an windream: " & ex.Message, "clswindream.Init")
End If
Logger.Error(ex)
'If Err.Number = -2147220985 Then
' clsLogger.AddError("Die installierte windream-Version ist nicht ausreichend für den Betrieb", "clswindream.Init")
'Else
' clsLogger.AddError("Fehler beim Login an windream: " & ex.Message, "clswindream.Init")
'End If
Return False
End Try
@@ -145,7 +146,8 @@ Public Class clsWindream_allgemein
Return oDokumentTypen
Catch ex As Exception
clsLogger.AddError("Fehler beim Auslesen der Objekttypen: " & ex.Message, "clswindream.GetObjecttypesAsObjects")
Logger.Warn("Fehler beim Auslesen der Objekttypen: " & ex.Message)
'clsLogger.AddError("Fehler beim Auslesen der Objekttypen: " & ex.Message, "clswindream.GetObjecttypesAsObjects")
Return Nothing
End Try
End Function
@@ -167,7 +169,8 @@ Public Class clsWindream_allgemein
Return objektTypenStr
Catch ex As Exception
clsLogger.AddError("Fehler beim Auslesen der Objekttypen als String: " & ex.Message, "clswindream.GetObjecttypesAsStrings")
Logger.Error(ex)
'
Return Nothing
End Try
@@ -216,7 +219,8 @@ Public Class clsWindream_allgemein
Return aIndexNames
Catch ex As Exception
clsLogger.AddError("Fehler beim Auslesen der windream-Indexe: " & ex.Message, "clswindream.GetIndicesByObjecttype")
Logger.Error(ex)
Return Nothing
End Try
End Function
@@ -241,7 +245,8 @@ Public Class clsWindream_allgemein
Return Nothing
Catch ex As Exception
clsLogger.AddError("Ein Objekttyp kopnnte nicht erstellt werden. Fehler: " & ex.Message, "clswindream.GetObjecttypeByName")
Logger.Error(ex)
Return Nothing
End Try
End Function
@@ -264,7 +269,8 @@ Public Class clsWindream_allgemein
Next
Catch ex As Exception
clsLogger.AddError("Beim Prüfen ob ein Index für einen Objekttypen existiert, ist ein Fehler aufgetreten. Fehler: " & ex.Message, "clswindream.ExistIndexInObjekttyp")
Logger.Error(ex)
Return False
End Try
End Function
@@ -282,7 +288,7 @@ Public Class clsWindream_allgemein
Try
Return oSession.aLoggedin
Catch ex As Exception
clsLogger.AddError("Es konnte nicht erfolgreich geprüft werden, ob das Programm am windream-Server angemeldet ist. Fehler: " & ex.Message, "clswindream.IsLoggedIn")
Logger.Error(ex)
End Try
Return False
@@ -295,10 +301,10 @@ Public Class clsWindream_allgemein
''' <remarks></remarks>
Public Shared Function GetCurrentServer() As String
Try
clsLogger.AddDetailLog(oBrowser.GetCurrentServer.ToString)
Logger.Info(oBrowser.GetCurrentServer.ToString)
Return oBrowser.GetCurrentServer 'ClassWindream.oBrowser.GetCurrentServer
Catch ex As Exception
clsLogger.AddError("Der aktuell gewählte windream-Server konnte nicht ausgelesen werden. Fehler: " & ex.Message, "clswindream.GetCurrentServer")
Logger.Error(ex)
End Try
Return ""
@@ -378,12 +384,12 @@ Public Class clsWindream_allgemein
Next
Return strListe
Else
clsLogger.Add("Auswahlliste: " & indexname & " nicht gefunden.", True, "clswindream.GetValuesfromAuswahlliste")
Logger.Warn("Auswahlliste: " & indexname & " nicht gefunden.")
Return Nothing
End If
Catch ex As Exception
clsLogger.AddError("Fehler: " & ex.Message, "clswindream.GetValuesfromAuswahlliste")
Logger.Error(ex)
Return Nothing
End Try
End Function
@@ -394,13 +400,13 @@ Public Class clsWindream_allgemein
If WDObject Is Nothing Then
Return False
Else
clsLogger.AddDetailLog("WDObject exists")
Logger.Info("WDObject exists")
Return True
End If
Catch ex As Exception
' bei einem Fehler einen Eintrag in der Logdatei machen
clsLogger.AddError("Es konnte kein windream-Object erzeugt werden - " & ex.Message, "clswindream.WDObject_exists")
Logger.Error(ex)
Return False
End Try
End Function
@@ -409,12 +415,12 @@ Public Class clsWindream_allgemein
Try
Dim SearchName = wdfLocation.Substring(wdfLocation.LastIndexOf("\") + 1)
Dim SearchPath = wdfLocation.Substring(0, wdfLocation.Length - SearchName.Length)
clsLogger.Add("WMSearch: " & wdfLocation.ToLower, False)
Logger.Warn("WMSearch: " & wdfLocation.ToLower)
If System.IO.File.Exists(wdfLocation.ToLower) Then
clsLogger.AddDetailLog("Search exists")
Logger.Info("Search exists")
End If
oController.CheckSearchProfile(wdfLocation.ToLower) 'wdfLocation.ToLower)
clsLogger.AddDetailLog("oController erzeugt")
Logger.Info("oController erzeugt")
Dim suchTyp = oController.SearchProfileTargetProgID
Dim ExSettings As Object
Dim oSearch As Object
@@ -424,8 +430,8 @@ Public Class clsWindream_allgemein
Dim srchQuick As WMOSRCHLib.WMQuickSearch = CreateObject("WMOSrch.WMQuickSearch")
Dim srchIndex As WMOSRCHLib.WMIndexSearch = CreateObject("WMOSrch.WMIndexSearch")
Dim srchObjectType As WMOSRCHLib.WMObjectTypeSearch = CreateObject("WMOSrch.WMObjectTypeSearch")
clsLogger.AddDetailLog("WD Objekte in GetSearchDocuments erzeugt")
clsLogger.AddDetailLog(suchTyp.ToString.ToUpper)
Logger.Info("WD Objekte in GetSearchDocuments erzeugt")
Logger.Info(suchTyp.ToString.ToUpper)
'' Der öffentliche Member CheckSearchProfile für den Typ IWMQuickSearch7 wurde nicht gefunden. [Microsoft.VisualBasic] => GetSearchDocuments()
Select Case suchTyp.ToString.ToUpper
Case "WMOSRCH.WMQUICKSEARCH"
@@ -438,15 +444,15 @@ Public Class clsWindream_allgemein
Case "WMOSRCH.WMINDEXSEARCH"
srchIndex.WMSession = CreateObject("Windream.WMSession", GetCurrentServer)
clsLogger.AddDetailLog("Session created...")
Logger.Info("Session created...")
oConnect.LoginSession(srchIndex.WMSession)
clsLogger.AddDetailLog("LoginSession...")
Logger.Info("LoginSession...")
srchIndex.SearchProfilePath = SearchPath
clsLogger.AddDetailLog("SearchPath...")
Logger.Info("SearchPath...")
srchIndex.LoadSearchProfile(SearchName)
clsLogger.AddDetailLog("LoadSearchProfile...")
Logger.Info("LoadSearchProfile...")
oSearch = srchIndex.GetSearch()
clsLogger.AddDetailLog("GetSearch...")
Logger.Info("GetSearch...")
Case "WMOSRCH.WMOBJECTTYPESEARCH"
srchObjectType.WMSession = CreateObject("Windream.WMSession", GetCurrentServer)
oConnect.LoginSession(srchObjectType.WMSession)
@@ -456,18 +462,17 @@ Public Class clsWindream_allgemein
oSearch = srchObjectType.GetSearch()
Case Else
clsLogger.Add("KEIN GÜLTIGER WINDREAM-SUCHTYP", True, "clswindream.GetSearchDocuments")
Logger.Warn("KEIN GÜLTIGER WINDREAM-SUCHTYP")
Return Nothing
End Select
Dim WMObjects As Object
WMObjects = oSearch.Execute
clsLogger.AddDetailLog("WD Objekte werden zurückgegeben")
Logger.Info("WD Objekte werden zurückgegeben")
Return oSearch.execute
Catch ex As Exception
' bei einem Fehler einen Eintrag in der Logdatei machen
clsLogger.AddError(ex.Message, "clswindream.GetSearchDocuments")
Logger.Error(ex)
Return Nothing
End Try