MS PersonifiedLogin

This commit is contained in:
Developer01 2025-06-06 13:25:50 +02:00
parent 1e55845ff0
commit 4e40cec97e
29 changed files with 466 additions and 746 deletions

View File

@ -1,3 +0,0 @@
{
"CurrentProjectSetting": null
}

View File

@ -1,7 +0,0 @@
{
"ExpandedNodes": [
""
],
"SelectedNode": "\\ToolCollection.sln",
"PreviewInSolutionExplorer": false
}

Binary file not shown.

View File

@ -1,3 +0,0 @@
{
"CurrentProjectSetting": null
}

View File

@ -1,6 +0,0 @@
{
"ExpandedNodes": [
""
],
"PreviewInSolutionExplorer": false
}

Binary file not shown.

View File

@ -7,16 +7,12 @@ Public Class ClassDI
' ++++++++++++++++++++++++++++++++++++++++++++++ Methoden ++++++++++++++++++++++++++++++++++++++++++++++ ' ++++++++++++++++++++++++++++++++++++++++++++++ Methoden ++++++++++++++++++++++++++++++++++++++++++++++
Sub New(LogConfig As LogConfig) Sub New(LogConfig As LogConfig)
Try Try
' 3a. Windream instanziieren ' 3a. Windream instanziieren
Me._windream = New ClassWindream_allgemein(LogConfig) Me._windream = New ClassWindream_allgemein(LogConfig)
' 3b. Windream initialisieren (Connection, Session, ... aufbauen) ' 3b. Windream initialisieren (Connection, Session, ... aufbauen)
Me._windream.Init() Me._windream.Init()
Catch ex As Exception Catch ex As Exception
MsgBox("Unbekannter Fehler im Konstuktor des Moduls 'XYZ'." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unbekannter Fehler") MsgBox("Unbekannter Fehler im Konstuktor des Moduls 'XYZ'." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unbekannter Fehler")
End Try End Try

View File

@ -29,156 +29,6 @@ Public Class ClassMO_REOld
Return False Return False
End Try End Try
End Function End Function
'Public Shared Function RUN_MO_RE(ByVal dokument As WMObject, ByVal vDatei As String, ByVal _MRDOKART As Object, ByVal _MRKUNDE As Object) As String
' Try
' Dim DT As New DataTable
' Dim _MRDeskrIndex
' Dim _path, _praefix, _kunde, _ziel As String
' _Logger.Debug(">> Ausgelesener Kundenidentifikator: " & _MRKUNDE)
' _Logger.Debug(">> Ausgelesene Dokumentart: " & _MRDOKART)
' Dim oSelect As String
' If _MRKUNDE Is Nothing Or _MRKUNDE = "" Then
' 'Auslesen der MORE-Konfiguration für Kunde und Standard
' oSelect = "SELECT * FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = '" & _MRDOKART.ToString & "') AND (UPPER(KUNDEN_NAME) = 'STANDARD')"
' DT = Return_Datatable(oSelect)
' _Logger.Debug(oSelect)
' Else
' If _MRKUNDE = "Standard-VZ" Then _MRKUNDE = "Standard"
' oSelect = "SELECT * FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = '" & _MRDOKART.ToString & "') AND (UPPER(KUNDEN_NAME) = UPPER('" & _MRKUNDE.ToString & "'))"
' 'Auslesen der MORE-Konfiguration für Kunde und Dokart
' DT = Return_Datatable(oSelect)
' _Logger.Debug("Select2: " & oSelect)
' End If
' If DT.Rows.Count = 0 Then
' _Logger.Debug("Für Kunden keine Daten - also Standard lesen")
' oSelect = "SELECT * FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = '" & _MRDOKART.ToString & "') AND (UPPER(KUNDEN_NAME) = 'STANDARD')"
' 'Für diesen Kunden wurde keine Konfiguration gefunden also den Standard laden
' DT = Return_Datatable(oSelect)
' _Logger.Debug("Select3: " & oSelect)
' End If
' If DT.Rows.Count = 1 Then
' 'Es liegt sowohl Kunde als auch Dokumentart vor
' Try
' _Logger.Debug("Versuch für den Index " & DT.Rows(0).Item("INDEXNAME").ToString & " den Indexwert auszulesen")
' Dim sw As New ClassStopwatch($"GetVariableValue _MRDeskrIndex({DT.Rows(0).Item("INDEXNAME").ToString})")
' _MRDeskrIndex = dokument.GetVariableValue(DT.Rows(0).Item("INDEXNAME").ToString)
' Dim msg = sw.Done
' If msg <> String.Empty Then _Logger.Info(msg)
' Catch ex As Exception
' _Logger.Warn("Achtung: ein eindeutiger/deskriptiver Indexwert existiert noch nicht! Dokument kann nicht verschoben und umbenannt werden!")
' Return False
' End Try
' _Logger.Debug("Ausgelesener Deskriptiver Index: " & _MRDeskrIndex)
' 'Datei-Paramter auslesen
' Dim extension As String = Path.GetExtension(vDatei)
' Dim myFolderPath As String
' myFolderPath = Path.GetDirectoryName(vDatei)
' Dim _WDLaufwerk, _newfilename As String
' _WDLaufwerk = My.Settings.MRWD_Laufwerk
' _path = DT.Rows(0).Item("DOKUMENTARTORDNER")
' '####### _path anpassen evtl Unterordner
' 'Unterordner Index 1
' Dim _UOindex As String = DT.Rows(0).Item("UO_IDX1")
' Dim _UOindex_Value As String = ""
' If _UOindex <> "" Then
' Dim sw As New ClassStopwatch($"GetVariableValue _UOindex({_UOindex})")
' _UOindex_Value = dokument.GetVariableValue(_UOindex)
' Dim msg = sw.Done
' If msg <> String.Empty Then _Logger.Info(msg)
' If Not _UOindex_Value Is Nothing Then
' _path &= "\" & _UOindex_Value
' If _path.Contains(" 00:00:00") Then _path = _path.Replace(" 00:00:00", "")
' _Logger.Debug("Unterordner 1 soll erzeugt werden - Path '" & _path & "'")
' End If
' End If
' 'Unterordner Index 2
' _UOindex = DT.Rows(0).Item("UO_IDX2")
' If _UOindex <> "" Then
' Dim sw As New ClassStopwatch($"GetVariableValue _UOindex({_UOindex})")
' _UOindex_Value = dokument.GetVariableValue(_UOindex)
' Dim msg = sw.Done
' If msg <> String.Empty Then _Logger.Info(msg)
' If Not _UOindex_Value Is Nothing Then
' _path &= "\" & _UOindex_Value
' If _path.Contains(" 00:00:00") Then _path = _path.Replace(" 00:00:00", "")
' _Logger.Debug("Unterordner 2 soll erzeugt werden - Path '" & _path & "'")
' End If
' End If
' _UOindex = DT.Rows(0).Item("UO_IDX3")
' If _UOindex <> "" Then
' Dim sw As New ClassStopwatch($"GetVariableValue _UOindex({_UOindex})")
' _UOindex_Value = dokument.GetVariableValue(_UOindex)
' Dim msg = sw.Done
' If msg <> String.Empty Then _Logger.Info(msg)
' If Not _UOindex_Value Is Nothing Then
' _path &= "\" & _UOindex_Value
' If _path.Contains(" 00:00:00") Then _path = _path.Replace(" 00:00:00", "")
' _Logger.Debug("Unterordner 3 soll erzeugt werden - Path '" & _path & "'")
' End If
' End If
' '#####
' _kunde = DT.Rows(0).Item("KUNDEN_NAME")
' _praefix = DT.Rows(0).Item("PRAEFIX")
' 'Dem Neuen Dateinamen schon mal das Präfix mitgeben
' _newfilename = _praefix
' _newfilename = _newfilename & _MRDeskrIndex & extension
' _Logger.Debug("Ausgelesener Pfad: " & _path)
' _Logger.Debug("Neuer Dateiname: " & _newfilename)
' '### VERSIONIERUNG ###
' Dim version As Integer = 2
' Dim Stammname As String = _newfilename.Substring(0, _newfilename.LastIndexOf("."))
' Dim neuername As String = _newfilename.Substring(0, _newfilename.LastIndexOf("."))
' 'Überprüfen ob File existiert
' Do While file_exists(_path & "\" & neuername & extension, False) = True
' neuername = Stammname & "~" & version
' _newfilename = neuername & extension
' version = version + 1
' Loop
' _ziel = _path & "\" & _newfilename
' If My.Settings.vLogErrorsonly = False Then
' If neuername.Contains("~") Then _Logger.Info("Neuer Dateiname: " & _newfilename)
' _Logger.Debug("Neuer Dateiname: " & _newfilename)
' _Logger.Debug("Quelle: " & vDatei)
' _Logger.Debug("Ziel: " & _ziel)
' End If
' If myFolderPath <> _path Then
' _windreamNI.NEW_MOVE_FILE(_ziel, vDatei, "MO_RE")
' 'ClassLoggerNI.Add(" ######### Erfolgsmeldung - Datei wurde erfolgreich umbenannt und verschoben ###########")
' Else
' _Logger.Info("Verschieben nicht notwendig: Ordnerpfad identisch!")
' Dim sw As New ClassStopwatch("RenameFile")
' My.Computer.FileSystem.RenameFile(vDatei, _newfilename)
' _Logger.Debug("Erfolgsmeldung - Datei wurde erfolgreich umbenannt")
' Dim msg = sw.Done
' If msg <> "" Then _Logger.Debug($"SWResult: {msg}")
' End If
' Execute_Command("INSERT INTO TBMO_RE_HISTORY (FILE_ORIGINAL, FILE_NEW, KUNDE, INDEX1, INDEX2, ERSTELLTWER) VALUES " &
' "('" & vDatei & "','" & _ziel & "','" & _kunde & "','" & _MRDeskrIndex & "','" & _MRDOKART & "','ToolCollection MORE')")
' Return _ziel
' Else
' _Logger.Info("MO_RE Result was not 1 row: check select..." & oSelect)
' Return False
' End If
' Catch ex As Exception
' _Logger.Error(ex)
' MsgBox(ex.Message, MsgBoxStyle.Critical)
' Return False
' End Try
'End Function
Private Shared Function file_exists(ByVal _file As String, ByVal suche As Boolean) Private Shared Function file_exists(ByVal _file As String, ByVal suche As Boolean)
Try Try
_file = _file.Replace("W:", "\\windream\objects") _file = _file.Replace("W:", "\\windream\objects")

View File

@ -300,9 +300,7 @@ Public Class ClassNIDatenbankzugriff
Catch ex As Exception Catch ex As Exception
' an dieser Stelle sollte jeder unvorhergesehene Fehler der Funktion abgefangen werden ' an dieser Stelle sollte jeder unvorhergesehene Fehler der Funktion abgefangen werden
_Logger.Error(ex) _Logger.Error(ex)
'If My.Settings.vMailsenden = True Then
' email.Send_EMail("Profilname: " & Profilname & "<br>ClassNIDatenbankzugriff.ExecuteonOracleDb - Ein unbekannter Fehler in ExecuteonOracleDb: " & ex.Message)
'End If
Timer_Stop() Timer_Stop()
Return 0 Return 0
End Try End Try
@ -540,7 +538,6 @@ Public Class ClassNIDatenbankzugriff
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex) _Logger.Error(ex)
EMAIL_DD.Send_EMail("Profilname: " & Profilname & "<br>ClassNIDatenbankzugriff.GetValueFromMssqlDb - SQL-Abfrage definieren: " & ex.Message, "NIDB_GetValueFromMssqlDb")
' DB-Connection schliessen ' DB-Connection schliessen
SQLconnect.Close() SQLconnect.Close()

View File

@ -1,39 +0,0 @@
Imports System.Net.Mail
Imports System.IO
Imports DigitalData.Modules.Logging
Public Class ClassEmail
Private Shared _Logger As DigitalData.Modules.Logging.Logger
Public Shared err_message As String
Public Sub New(pLogConf As DigitalData.Modules.Logging.LogConfig)
_Logger = pLogConf.GetLogger()
End Sub
Public Sub Send_EMail(ByVal vBody As String, ByVal pRefString As String)
'#### E-MAIL NACHRICHT VERSENDEN
Try
If My.Settings.vMailRecipient <> "" And My.Settings.vMailsenden = True Then
If My.Settings.vMailRecipient.Contains(";") Then
Dim oPROC As String
Dim oBody As String = ""
If My.Settings.vMailBodyPraefix <> String.Empty Then
oBody = My.Settings.vMailBodyPraefix
End If
oBody += "<br>>> machinename: " & Environment.MachineName
oBody += "<br>>> Domain-Name: " & Environment.UserDomainName
oPROC = $"EXEC PREMAIL_NEW_EMAIL {My.Settings.vMailProfilID},'{My.Settings.vMailRecipient}','{My.Settings.vMailSubject}','{oBody}','{pRefString}',9999,8888,'ToolCollection'"
If Not IsNothing(DB_ECM) Then
If DB_ECM.DBInitialized Then
DB_ECM.ExecuteNonQuery(oPROC)
End If
End If
End If
End If
'########
Catch ex As Exception
_Logger.Warn(">> Achtung: Fehler in Mailversand: " & ex.Message)
End Try
End Sub
End Class

View File

@ -1,6 +1,9 @@
Imports WINDREAMLib Imports WINDREAMLib
Imports WMOSRCHLib Imports WMOSRCHLib
Imports DigitalData.Modules.Logging Imports DigitalData.Modules.Logging
Imports System.Reflection
Imports System.Runtime
Public Class ClassNIWindream Public Class ClassNIWindream
Inherits ClassWindream_allgemein Inherits ClassWindream_allgemein
Private Shared _Logger As DigitalData.Modules.Logging.Logger Private Shared _Logger As DigitalData.Modules.Logging.Logger
@ -174,21 +177,28 @@ Public Class ClassNIWindream
_Logger.Debug("Typ des windream-Indexes: 8204 Integer") _Logger.Debug("Typ des windream-Indexes: 8204 Integer")
Case 8 Case 8
_Logger.Debug("Typ des windream-Indexes: 8 Vektor Boolean") _Logger.Debug("Typ des windream-Indexes: 8 Vektor Boolean")
Case Else
_Logger.Info($"RunIndexing_Vektor - Invalid type: {vType}")
End Select End Select
Dim Anzahl As Integer = aValues.Length - 1 Dim oAnzahl_Werte As Integer = aValues.Length - 1
Dim oIndex = 0
For Each aValue As String In aValues
oIndex += 1
Next
_Logger.Debug("RunIndexing_Vektor - oIndex = {0}", oIndex)
'Vektorfeld wird mit EINEM Wert gefüllt 'Vektorfeld wird mit EINEM Wert gefüllt
If Anzahl = 0 Then If oAnzahl_Werte = 0 Or oIndex = 1 Then
_Logger.Debug("RunIndexing_Vektor: Vektorfeld wird mit EINEM Wert gefüllt ") _Logger.Debug("RunIndexing_Vektor: Vektorfeld wird mit EINEM Wert gefüllt ")
ReDim myArray(0) ReDim myArray(0)
myArray(0) = Convert_IndexValue(vType, aValues(0)) myArray(0) = Convert_IndexValue(vType, aValues(0))
_Logger.Debug("RunIndexing_Vektor: Konvertierter Wert: " & myArray(0).ToString) _Logger.Debug("RunIndexing_Vektor: Konvertierter Wert: " & myArray(0).ToString)
Else Else
_Logger.Debug($"RunIndexing_Vektor: Vektorfeld wird mit MEHREREN Werten [{Anzahl}] gefüllt ") _Logger.Debug($"RunIndexing_Vektor: Vektorfeld wird mit MEHREREN Werten [{oAnzahl_Werte}] gefüllt ")
Dim _value As String Dim _value As String
Try Try
'Die Größe des Arrays festlegen 'Die Größe des Arrays festlegen
ReDim myArray(Anzahl) ReDim myArray(oAnzahl_Werte)
Dim i1 As Integer = 0 Dim i1 As Integer = 0
For Each aValue As String In aValues For Each aValue As String In aValues
_value = aValue _value = aValue
@ -444,7 +454,7 @@ Public Class ClassNIWindream
vektor = True vektor = True
Case Else Case Else
_Logger.Warn("Typ des windream-Indexes konnte nicht bestimmt werden!") _Logger.Warn("Typ des windream-Indexes konnte nicht bestimmt werden!")
_Logger.Debug("Versuch des Auslesens (vType): " & vType) _Logger.Info($"RunIndexing - Invalid IndexType: {vType}")
'MsgBox(vType & vbNewLine & CStr(value), MsgBoxStyle.Exclamation, "Marlon-Case Else") 'MsgBox(vType & vbNewLine & CStr(value), MsgBoxStyle.Exclamation, "Marlon-Case Else")
convertValue = "" convertValue = ""
End Select End Select
@ -469,7 +479,7 @@ Public Class ClassNIWindream
_Logger.Info("Achtung das Ändern des Indexes: '" & aName & "' ist nicht mehr erlaubt! Bitte überprüfen Sie Ihre Nachindexierungslogik und den Objekttyp.") _Logger.Info("Achtung das Ändern des Indexes: '" & aName & "' ist nicht mehr erlaubt! Bitte überprüfen Sie Ihre Nachindexierungslogik und den Objekttyp.")
oDocument.Save() oDocument.Save()
Else Else
_Logger.Warn("Unvorhergesehener Fehler bei NonVektor-SetVariableValue:") _Logger.Warn($"Unvorhergesehener Fehler bei NonVektor-SetVariableValue - Indexname: {aName}")
_Logger.Warn("Fehlermeldung:" & ex.Message) _Logger.Warn("Fehlermeldung:" & ex.Message)
oDocument.Save() oDocument.Save()
oDocument.unlock() oDocument.unlock()
@ -569,99 +579,138 @@ Public Class ClassNIWindream
End If End If
Else Else
_Logger.Warn(">> Achtung: Das Profil konnte nicht geladen werden - _selectedProfil is NOTHING") _Logger.Warn(">> Achtung: Das Profil konnte nicht geladen werden - _selectedProfil is NOTHING")
End If
Else
If oAnzahl = 0 Then
_Logger.Debug($"Vektorfeld wird mit MEHREREN Werten [{oAnzahl}] gefüllt oAnzahl ist aber 0! ")
Dim oAnzahlCheck As Integer = 0
For Each DR In DT_VEKTOR.Rows
If DR.Item("IndexName") = aName.ToString Then
value = DR.Item("Value")
oAnzahlCheck += 1
_Logger.Debug($"Prüfung ob Value kommt: [{value}] ")
End If End If
Else Next
_Logger.Debug($"Vektorfeld wird mit MEHREREN Werten [{oAnzahl}] gefüllt ") If oAnzahlCheck = 1 Then
' das ausgewählte Profil in _selectedProfile laden _Logger.Debug($"Vektorfeld wird tatsächlich nur mit einem Wert gefüllt!! ")
_selectedProfil = ClassNIProfile.getProfilByName(Profil) myArray(0) = Convert_IndexValue(vType, value)
ReDim myArray(0)
oDocument.SetVariableValue(aName, myArray)
_Logger.Debug("'SetVariableValue' für VEKTOR nach Anzahl 1 erfolgreich")
'Die Größe des Arrays festlegen 'Die Änderungen festsschreiben/speichern
ReDim myArray(oAnzahl - 1) oDocument.Save()
Dim i1 As Integer = 0 _Logger.Debug("Indexierung erfolgreich beendet (Save Anzahl 1 ...")
'Die Datatable durchlaufen und Werte für den Index in Array schreiben
For Each DR In DT_VEKTOR.Rows
If DR.Item("IndexName") = aName.ToString Then
myArray(i1) = Convert_IndexValue(vType, DR.Item("Value"))
_Logger.Debug("Value (" & i1 & "): '" & DR.Item("Value").ToString & "'")
i1 = i1 + 1
End If End If
Next Else
_Logger.Debug("Array wurde erfolgreich erzeugt") _Logger.Debug($"Vektorfeld wird mit MEHREREN Werten [{oAnzahl}] gefüllt ")
If _selectedProfil Is Nothing = False Then
Me._selectedProfil._links.selectedLink = Me._selectedProfil._links.getLinkByIndex(aName)
If Me._selectedProfil._links.selectedLink IsNot Nothing Then
Dim VektorArray
Select Case Me._selectedProfil._links.selectedLink.vktins_state
Case 1
_Logger.Debug("vektInsState = '1' - Vektovalues will be replaced")
Dim z As Integer = 0
Try
ReDim VektorArray(myArray.Length)
Catch ex As Exception
ReDim VektorArray(myArray.Count)
End Try
For Each oVectValue As Object In myArray
If oVectValue Is Nothing = False Then
'Das Array anpassen
ReDim Preserve VektorArray(z)
'Den Wert im Array speichern ' das ausgewählte Profil in _selectedProfile laden
VektorArray(z) = Convert_IndexValue(vType, oVectValue) _selectedProfil = ClassNIProfile.getProfilByName(Profil)
z += 1 'Die Größe des Arrays festlegen
End If ReDim myArray(oAnzahl - 1)
Dim i1 As Integer = 0
'Die Datatable durchlaufen und Werte für den Index in Array schreiben
For Each DR In DT_VEKTOR.Rows
If DR.Item("IndexName") = aName.ToString Then
myArray(i1) = Convert_IndexValue(vType, DR.Item("Value"))
_Logger.Debug("Value (" & i1 & "): '" & DR.Item("Value").ToString & "'")
i1 = i1 + 1
End If
Next
_Logger.Debug("Array wurde erfolgreich erzeugt")
If _selectedProfil Is Nothing = False Then
Me._selectedProfil._links.selectedLink = Me._selectedProfil._links.getLinkByIndex(aName)
If Me._selectedProfil._links.selectedLink IsNot Nothing Then
Dim VektorArray
Select Case Me._selectedProfil._links.selectedLink.vktins_state
Case 1
_Logger.Debug("vektInsState = '1' - Vektovalues will be replaced")
Dim z As Integer = 0
Try
ReDim VektorArray(myArray.Length)
Catch ex As Exception
ReDim VektorArray(myArray.Count)
End Try
For Each oVectValue As Object In myArray
If oVectValue Is Nothing = False Then
'Das Array anpassen
ReDim Preserve VektorArray(z)
'Den Wert im Array speichern
VektorArray(z) = Convert_IndexValue(vType, oVectValue)
z += 1
End If
Next
Case 2 'Anfügen
_Logger.Debug("vektInsState = '2'-638")
VektorArray = Return_VektorArray(oDocument, aName, myArray, False, vType)
Case 3 'Anfügen mit DuplikatCheck
_Logger.Debug("vektInsState = '3'")
VektorArray = Return_VektorArray(oDocument, aName, myArray, True, vType)
End Select
If VektorArray Is Nothing = False Then
Dim oIndex As Integer = 0
For Each oStr In VektorArray
_Logger.Debug("For Each oStr In VektorArray - Value [{0}]", oStr)
oIndex += 1
Next Next
Case 2 'Anfügen If oIndex = 0 Then
_Logger.Debug("vektInsState = '2'-638") _Logger.Debug("VektorArray.length = 0 ... Skipping Redim")
VektorArray = Return_VektorArray(oDocument, aName, myArray, False, vType) Else
Case 3 'Anfügen mit DuplikatCheck _Logger.Debug("RunIndexing - Nun nochmal redimensionieren Array für windeam...")
_Logger.Debug("vektInsState = '3'") 'Das Array wieder anpassen
VektorArray = Return_VektorArray(oDocument, aName, myArray, True, vType) Try
End Select ReDim myArray(VektorArray.Length - 1)
If VektorArray Is Nothing = False Then Catch ex As Exception
'Das Array wieder anpassen ReDim myArray(VektorArray.count - 1)
Try End Try
ReDim myArray(VektorArray.Length - 1) Dim oIndex1 As Integer = 0
Catch ex As Exception For Each oStr In VektorArray
ReDim myArray(VektorArray.count - 1) myArray(oIndex1) = oStr
End Try _Logger.Debug("RunIndexing - Value {0} - [{1}]", oIndex1, oStr)
Dim oIndex As Integer = 0 oIndex1 += 1
For Each oStr In VektorArray Next
myArray(oIndex) = oStr End If
oIndex += 1
Next
'Jetzt die Nachindexierung für Vektor-Felder
oDocument.SetVariableValue(aName, myArray)
_Logger.Debug("'SetVariableValue' für VEKTOR erfolgreich")
' oDocument.LockRights() 'Jetzt die Nachindexierung für Vektor-Felder
oDocument.SetVariableValue(aName, myArray)
_Logger.Debug("'SetVariableValue' für VEKTOR erfolgreich")
' oDocument.LockRights()
'Die Änderungen festsschreiben/speichern
oDocument.Save()
_Logger.Debug("Indexierung erfolgreich beendet (Save ...")
Else
If My.Settings.vLogErrorsonly = False Then _Logger.Info("Achtung: VektorArray Is NOTHING")
oDocument.Save()
Return True
End If
'Die Änderungen festsschreiben/speichern
oDocument.Save()
_Logger.Debug("Indexierung erfolgreich beendet (Save ...")
Else Else
If My.Settings.vLogErrorsonly = False Then _Logger.Info("Achtung: VektorArray Is NOTHING") _Logger.Warn(">> Achtung: Der Link konnte nicht geladen werden - _selectedProfil._links.selectedLink is NOTHING")
oDocument.Save() oDocument.Save()
Return True Return True
End If End If
Else Else
_Logger.Warn(">> Achtung: Der Link konnte nicht geladen werden - _selectedProfil._links.selectedLink is NOTHING") _Logger.Warn(">> Achtung: Das Profil konnte nicht geladen werden - _selectedProfil is NOTHING")
oDocument.Save() oDocument.Save()
Return True Return True
End If End If
Else
_Logger.Warn(">> Achtung: Das Profil konnte nicht geladen werden - _selectedProfil is NOTHING")
oDocument.Save()
Return True
End If End If
End If End If
End If End If
@ -689,9 +738,6 @@ Public Class ClassNIWindream
i1 += 1 i1 += 1
Next Next
End If End If
If My.Settings.vMailsenden = True Then
'email.Send_EMail("Fehler bei RunIndexing - Datei: " & oDocument.aName.ToString & "<br>Profilname: " & Profil & "<br>Fehler: " & ex.Message)
End If
oDocument.Save() oDocument.Save()
oDocument.unlock() oDocument.unlock()
Return True Return True
@ -786,6 +832,7 @@ Public Class ClassNIWindream
End If End If
End If End If
Next Next
_Logger.Debug("Vektor-Array wurde erzeugt - Anzahl {0}", oValues.Count)
End If End If
Return oValues Return oValues
@ -913,9 +960,6 @@ Public Class ClassNIWindream
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex) _Logger.Error(ex)
If My.Settings.vMailsenden = True Then
'email.Send_EMail("Fehler bei SetfinalIndex - Datei: " & oDocument.aName.ToString & " - Fehler: " & ex.Message)
End If
oDocument.Save() oDocument.Save()
oDocument.unlock() oDocument.unlock()
End Try End Try
@ -949,9 +993,6 @@ Public Class ClassNIWindream
'' Der öffentliche Member CheckSearchProfile für den Typ IWMQuickSearch7 wurde nicht gefunden. [Microsoft.VisualBasic] => GetSearchDocuments() '' Der öffentliche Member CheckSearchProfile für den Typ IWMQuickSearch7 wurde nicht gefunden. [Microsoft.VisualBasic] => GetSearchDocuments()
Select Case suchTyp.ToString.ToUpper Select Case suchTyp.ToString.ToUpper
Case "WMOSRCH.WMQUICKSEARCH" Case "WMOSRCH.WMQUICKSEARCH"
'srchQuick.WMSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
'Me.oConnect.LoginSession(oWMSession) 'srchQuick.WMSession)
srchQuick.ClearSearch() srchQuick.ClearSearch()
srchQuick.SearchProfilePath = ProfilePath srchQuick.SearchProfilePath = ProfilePath
@ -960,8 +1001,7 @@ Public Class ClassNIWindream
oSearch = srchQuick.GetSearch() oSearch = srchQuick.GetSearch()
Case "WMOSRCH.WMINDEXSEARCH" Case "WMOSRCH.WMINDEXSEARCH"
srchIndex.WMSession = oWMSession 'CreateObject("Windream.WMSession", Me.GetCurrentServer) srchIndex.WMSession = oWMSession
'Me.oConnect.LoginSession(srchIndex.WMSession) 'Me.oConnect.LoginSession(srchIndex.WMSession)
srchIndex.ClearSearch() srchIndex.ClearSearch()
@ -971,7 +1011,7 @@ Public Class ClassNIWindream
oSearch = srchIndex.GetSearch() oSearch = srchIndex.GetSearch()
Case "WMOSRCH.WMOBJECTTYPESEARCH" Case "WMOSRCH.WMOBJECTTYPESEARCH"
srchObjectType.WMSession = oWMSession 'CreateObject("Windream.WMSession", Me.GetCurrentServer) srchObjectType.WMSession = oWMSession
'Me.oConnect.LoginSession(oWMSession) 'srchObjectType.WMSession) 'Me.oConnect.LoginSession(oWMSession) 'srchObjectType.WMSession)
@ -997,6 +1037,7 @@ Public Class ClassNIWindream
End Try End Try
Else Else
If wdfLocation.ToUpper.Contains("SELECT") Or wdfLocation.ToUpper.Contains("EXEC") Then If wdfLocation.ToUpper.Contains("SELECT") Or wdfLocation.ToUpper.Contains("EXEC") Then
_Logger.Info("WMSearch replaced with SQL Command ...:")
WMSearchIsSQL = True WMSearchIsSQL = True
End If End If
End If End If
@ -1023,26 +1064,33 @@ Public Class ClassNIWindream
Public Function NEW_MOVE_FILE(targetpath As String, sourcepath As String, oMethod As String, pFileName As String) As Boolean Public Function NEW_MOVE_FILE(targetpath As String, sourcepath As String, oMethod As String, pFileName As String) As Boolean
Dim oWMFile As WINDREAMLib.WMObject Dim oWMFile As WINDREAMLib.WMObject
Try Try
sourcepath = sourcepath.ToLower
targetpath = targetpath.ToLower
If IsNothing(oWMSession) Then
_Logger.Warn($"Error in NEW_MOVE_FILE - oWMSession is nothing")
Return False
End If
_Logger.Debug($"targetpath ({targetpath})") _Logger.Debug($"targetpath ({targetpath})")
_Logger.Debug($"sourcepath ({sourcepath})") _Logger.Debug($"sourcepath ({sourcepath})")
Dim sw As New ClassStopwatch("NEW_MOVE_FILE") Dim sw As New ClassStopwatch("NEW_MOVE_FILE")
Dim oTargetpath = System.IO.Path.GetDirectoryName(targetpath) Dim oTargetpath = System.IO.Path.GetDirectoryName(targetpath)
oTargetpath = oTargetpath.Replace("\\windream\objects", "") oTargetpath = oTargetpath.Replace("windream\objects", "")
oTargetpath = oTargetpath.Replace("W:\", "\") oTargetpath = oTargetpath.Replace("w:\", "\")
targetpath = targetpath.Replace("\\windream\objects", "") targetpath = targetpath.Replace("windream\objects", "")
targetpath = targetpath.Replace("W:\", "\") targetpath = targetpath.Replace("w:\", "\")
sourcepath = sourcepath.Replace("w:\", "\")
sourcepath = sourcepath.Replace("windream\objects", "")
sourcepath = sourcepath.Replace("\\", "\")
sourcepath = sourcepath.Replace("\\windream\objects", "")
sourcepath = sourcepath.Replace("W:\", "\")
targetpath = targetpath.Replace("\\", "\") targetpath = targetpath.Replace("\\", "\")
Const WMEntityDocument = 1 Const WMEntityDocument = 1
Dim IndexwertAusWindream As Object = Nothing
_Logger.Debug($"NEW_MOVE_FILE getting WMObject for: {sourcepath}") _Logger.Debug($"getting WMObject for: {sourcepath}")
Try Try
oWMFile = oWMSession.GetWMObjectByPath(WMEntityDocument, sourcepath) oWMFile = oWMSession.GetWMObjectByPath(WMEntityDocument, sourcepath)
Catch ex As Exception Catch ex As Exception

View File

@ -63,6 +63,8 @@ Public Class ClassWD_Rechte
oServername = Me.GetCurrentServer() oServername = Me.GetCurrentServer()
' Connection-Objekt instanziieren ' Connection-Objekt instanziieren
Me.oConnect = CreateObject("Windream.WMConnect") Me.oConnect = CreateObject("Windream.WMConnect")
'MsgBox("windrem init 'ed") 'MsgBox("windrem init 'ed")
Catch ex As Exception Catch ex As Exception

View File

@ -49,7 +49,57 @@ Public Class ClassWindream_allgemein
' Process.GetCurrentProcess.Kill() ' Process.GetCurrentProcess.Kill()
End If End If
End Sub End Sub
Public Function GetWMSessionAsUser(Domain, ServerName, UserName, Password)
Dim SessionAsUser
Dim aConnect, aUserId, aSession
On Error Resume Next
' Hilfsobjekte erschaffen, um eine Verbindung zum windream Server herzustellen
' mit der gewünschten Benutzer-Identität
aConnect = CreateObject("Windream.WMConnect")
'Bei einer impersonifizierten Session ist zu beachten, dass die ModuleID 9 zu nutzen ist.
'Wird keine Session-ID angegeben, hat die Session die ID 0 (Default).
aConnect.ModuleId = 9
If Err.Number <> 0 Then
Dim msg = "Fehler bei CreateObject (aConnect) - Err.Number: " & Err.Number & vbNewLine & Err.Description
_Logger.Warn(msg)
SessionAsUser = Nothing
Return SessionAsUser
End If
aUserId = CreateObject("WMOTool.WMUserIdentity")
If Err.Number <> 0 Then
Dim msg = "Fehler bei CreateObject('WMOTool.WMUserIdentity') - Err.Number: " & Err.Number & vbNewLine & Err.Description
_Logger.Warn(msg)
SessionAsUser = Nothing
Return SessionAsUser
End If
aUserId.aDomain = Domain
aUserId.aServerName = ServerName
aUserId.aUserName = UserName
aUserId.aPassword = Password
aSession = aConnect.Login(aUserId)
If Err.Number <> 0 Then
Dim msg = "Fehler bei aConnect.Login(aUserId) - Err.Number: " & Err.Number & vbNewLine & Err.Description
_Logger.Warn(msg)
SessionAsUser = Nothing
Return SessionAsUser
Else
SessionAsUser = aSession
If aSession.aLoggedin = True Then
_Logger.Debug($"#Impersonate login [{UserName}] successfull!")
Return SessionAsUser
End If
End If
End Function
''' <summary> ''' <summary>
''' Initialisiert die statische Klasse (Login, Session starten, usw.) ''' Initialisiert die statische Klasse (Login, Session starten, usw.)
@ -60,99 +110,12 @@ Public Class ClassWindream_allgemein
Dim oHourDifference As Integer Dim oHourDifference As Integer
oHourDifference = CInt(DateDiff(DateInterval.Hour, CURRENToWMSession_Created, Now)) oHourDifference = CInt(DateDiff(DateInterval.Hour, CURRENToWMSession_Created, Now))
If IsNothing(CURRENToWMSession) Or oHourDifference >= 2 Then If IsNothing(CURRENToWMSession) Or oHourDifference >= 2 Then
Try If WMLOGIN_DOMAIN <> String.Empty Then
GetWMSessionAsUser(WMLOGIN_DOMAIN, Me.GetCurrentServer, WMLOGIN_USER, WMLOGIN_PW)
Try Else
' Session-Objekt instanziieren und mit dem im Client ausgewählten Server belegen GetWMSession()
Me.oWMSession = CreateObject("Windream.WMSession", Me.GetCurrentServer) End If
' Connection-Objekt instanziieren
Me.oConnect = CreateObject("Windream.WMConnect")
CURRENToWMConnect = oConnect
'MsgBox("windrem init 'ed")
Catch ex As Exception
clsHelper.Add_Application_log("Unexpected error in Windream.Init(CreateObjects): " & ex.Message)
EMAIL_DD.Send_EMail("Unexpected error in Windream.Init(CreateObjects): " & ex.Message, "WMInit77")
Return False
End Try
' wenn windream nicht angemeldet ist
If Not Me.IsLoggedIn Then
' Art der Anmeldung an windream festlegen
' 0x0L (also 0) = Standard windream Benutzer
' WM_MODULE_ID_DOCTYPEEDITOR_LIC = ermöglicht Zugriff auf die windream Management Funktionen (Z.B. zur Verwaltung der windream Dokumententypen, Auswahllisten, etc.)
' WM_MODULE_ID_INDEXSERVICE = ermöglicht der Session die Indexierungs-Events vom windream DMS-Service zu empfangen
Me.oConnect.ModuleID = 0
' setzt die minimal erwartete windream-Version
Me.oConnect.MinReqVersion = "3"
' -- Impersonifizierung nur möglich mit registry-eintrag --
'oConnect.UserName = "\digitaldata\schreiberm"
'oConnect.Password = "schreiber"
' Verbindung mit Session-Objekt (und dem ausgewählten Server) aufbauen
Me.oConnect.LoginSession(Me.oWMSession)
If Me.oWMSession.aLoggedin = False Then
clsHelper.Add_Application_log("Unexpected error in Windream.Init(oSession.aloggedIn): Could not check session-state")
EMAIL_DD.Send_EMail("Unexpected error in Windream.Init(oSession.aloggedIn): Could not check session-state", "clswmallgInit")
Return False
End If
' AUSGABE VON SYSTEMINFORMATIONEN
' Gibt die Versionsart (Lizenztyp) also Small-Business-Edition (SBE), Small-Business-Extension (SBX)
' oder Business-Edition (BE) aus
'MsgBox("WindreamVersion: " & oSession.GetSystemInfo("WindreamVersion") & vbNewLine & "LicenceKey: " & oSession.GetSystemInfo("LicenceKey") & vbNewLine & _
' vbNewLine & "LicenceName: " & oSession.GetSystemInfo("LicenceName"))
'Dim WMCtrl As AISCONTROLDATACOMLib.AISControlData
'WMCtrl = New AISCONTROLDATACOMLib.AISControlData
'' liefert die Versionsnummer des Clients
'MsgBox(WMCtrl.WMWorkstationBuildNo)
'MsgBox(WMCtrl.W
'' liefert den Servernamen des angemeldeten windreams
'MsgBox(WMCtrl.WMServerName)
Try
Me.oWMSession.SwitchEvents(WMCOMEventWMSessionNeedIndex, False)
' der Parameter WMEntityDocument definiert, dass nur Dokumenttypen und keine
' Ordnertypen ausgelesen werden
Me.oObjekttypen = Me.oWMSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
' Ordnertypen auslesen
Me.oOrdnerTypen = Me.oWMSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityFolder)
' den Objekttyp laden
' Me.oSystemIndizes = Me.oSession.GetWMObjectByName(WMObjectRelationTypeObjectByName)
Catch ex As Exception
Return False
End Try
End If
_Logger.Info("WMSession has been created! (clsWindreamAllgemein)")
CURRENToWMSession = oWMSession
CURRENToWMSession_Created = Now
Return True
Catch ex As Exception
If Err.Number = -2147220985 Then
clsHelper.Add_Application_log("Unexpected error in Windream.Init(2147220985): " & ex.Message)
Else
If Not ex.Message.Contains("Already logged in") Then
clsHelper.Add_Application_log("Unexpected error in Windream.Init(Already logged in): " & ex.Message)
EMAIL_DD.Send_EMail("Unexpected error in Windream.Init(Already logged in): " & ex.Message, "clswmallgInit2")
Else
Return True
End If
End If
Return False
End Try
Else Else
If My.Settings.vLogErrorsonly = False Then _Logger.Debug("WMSession already created!") If My.Settings.vLogErrorsonly = False Then _Logger.Debug("WMSession already created!")
@ -162,6 +125,95 @@ Public Class ClassWindream_allgemein
End Function End Function
Private Function GetWMSession()
Try
Try
' Session-Objekt instanziieren und mit dem im Client ausgewählten Server belegen
Me.oWMSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
' Connection-Objekt instanziieren
Me.oConnect = CreateObject("Windream.WMConnect")
CURRENToWMConnect = oConnect
'MsgBox("windrem init 'ed")
Catch ex As Exception
clsHelper.Add_Application_log("Unexpected error in Windream.Init(CreateObjects): " & ex.Message)
Return False
End Try
' wenn windream nicht angemeldet ist
If Not Me.IsLoggedIn Then
' Art der Anmeldung an windream festlegen
' 0x0L (also 0) = Standard windream Benutzer
' WM_MODULE_ID_DOCTYPEEDITOR_LIC = ermöglicht Zugriff auf die windream Management Funktionen (Z.B. zur Verwaltung der windream Dokumententypen, Auswahllisten, etc.)
' WM_MODULE_ID_INDEXSERVICE = ermöglicht der Session die Indexierungs-Events vom windream DMS-Service zu empfangen
Me.oConnect.ModuleID = 0
' setzt die minimal erwartete windream-Version
Me.oConnect.MinReqVersion = "3"
' -- Impersonifizierung nur möglich mit registry-eintrag --
'oConnect.UserName = "\digitaldata\schreiberm"
'oConnect.Password = "schreiber"
' Verbindung mit Session-Objekt (und dem ausgewählten Server) aufbauen
Me.oConnect.LoginSession(Me.oWMSession)
If Me.oWMSession.aLoggedin = False Then
clsHelper.Add_Application_log("Unexpected error in Windream.Init(oSession.aloggedIn): Could not check session-state")
Return False
End If
' AUSGABE VON SYSTEMINFORMATIONEN
' Gibt die Versionsart (Lizenztyp) also Small-Business-Edition (SBE), Small-Business-Extension (SBX)
' oder Business-Edition (BE) aus
'MsgBox("WindreamVersion: " & oSession.GetSystemInfo("WindreamVersion") & vbNewLine & "LicenceKey: " & oSession.GetSystemInfo("LicenceKey") & vbNewLine & _
' vbNewLine & "LicenceName: " & oSession.GetSystemInfo("LicenceName"))
'Dim WMCtrl As AISCONTROLDATACOMLib.AISControlData
'WMCtrl = New AISCONTROLDATACOMLib.AISControlData
'' liefert die Versionsnummer des Clients
'MsgBox(WMCtrl.WMWorkstationBuildNo)
'MsgBox(WMCtrl.W
'' liefert den Servernamen des angemeldeten windreams
'MsgBox(WMCtrl.WMServerName)
Try
Me.oWMSession.SwitchEvents(WMCOMEventWMSessionNeedIndex, False)
' der Parameter WMEntityDocument definiert, dass nur Dokumenttypen und keine
' Ordnertypen ausgelesen werden
Me.oObjekttypen = Me.oWMSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
' Ordnertypen auslesen
Me.oOrdnerTypen = Me.oWMSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityFolder)
' den Objekttyp laden
' Me.oSystemIndizes = Me.oSession.GetWMObjectByName(WMObjectRelationTypeObjectByName)
Catch ex As Exception
Return False
End Try
End If
_Logger.Info("WMSession has been created! (clsWindreamAllgemein)")
CURRENToWMSession = oWMSession
CURRENToWMSession_Created = Now
Return True
Catch ex As Exception
If Err.Number = -2147220985 Then
clsHelper.Add_Application_log("Unexpected error in Windream.Init(2147220985): " & ex.Message)
Else
If Not ex.Message.Contains("Already logged in") Then
clsHelper.Add_Application_log("Unexpected error in Windream.Init(Already logged in): " & ex.Message)
Else
Return True
End If
End If
Return False
End Try
End Function
#End Region #End Region
#Region "+++++ Funktionen die für den Objekttyp relevate Informationen zurückliefern +++++" #Region "+++++ Funktionen die für den Objekttyp relevate Informationen zurückliefern +++++"
@ -498,7 +550,6 @@ Public Class ClassWindream_allgemein
Return server 'ClassWindream.oBrowser.GetCurrentServer Return server 'ClassWindream.oBrowser.GetCurrentServer
Catch ex As Exception Catch ex As Exception
clsHelper.Add_Application_log("Unexpected error in Windream.GetCurrentServer: " & ex.Message) clsHelper.Add_Application_log("Unexpected error in Windream.GetCurrentServer: " & ex.Message)
EMAIL_DD.Send_EMail("Unexpected error in Windream.GetCurrentServer: " & ex.Message, "GetCurrentServer")
'MsgBox("Der aktuell gewählte windream-Server konnte nicht ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen des windream-Servers") 'MsgBox("Der aktuell gewählte windream-Server konnte nicht ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen des windream-Servers")
End Try End Try

View File

@ -32,6 +32,9 @@ Module ModuleCURRENT
Public CURRENT_DOCID As Int64 Public CURRENT_DOCID As Int64
Public WMSearchIsSQL As Boolean = False Public WMSearchIsSQL As Boolean = False
Public DB_ECM As MSSQLServer Public DB_ECM As MSSQLServer
Public EMAIL_DD As ClassEmail Public DIDurchlaufRunning As Boolean = False
Public NIDurchlaufRunning As Boolean = False
Public WMLOGIN_USER As String = ""
Public WMLOGIN_PW As String = ""
Public WMLOGIN_DOMAIN As String = ""
End Module End Module

View File

@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben: ' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.9.5.0")> <Assembly: AssemblyVersion("2.9.6.0")>
<Assembly: AssemblyFileVersion("2.9.5.0")> <Assembly: AssemblyFileVersion("2.9.6.0")>

View File

@ -106,73 +106,6 @@ Namespace My
End Set End Set
End Property End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("1")> _
Public ReadOnly Property vMailProfilID() As Integer
Get
Return CType(Me("vMailProfilID"),Integer)
End Get
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("support-flow@digitaldata.works")> _
Public ReadOnly Property vMailRecipient() As String
Get
Return CType(Me("vMailRecipient"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Fehler in Modul ToolCollection"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vMailSubject() As String
Get
Return CType(Me("vMailSubject"),String)
End Get
Set
Me("vMailSubject") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("<p>__________________<br>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" <b><font face=""Arial"">Achtung Fehler:</font></b><fon"& _
"t face=""Arial""><br>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" <br>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" Folgender Fehler wurde festgestellt:</font> </p>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vMailBodyPraefix() As String
Get
Return CType(Me("vMailBodyPraefix"),String)
End Get
Set
Me("vMailBodyPraefix") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False")> _
Public ReadOnly Property vMailsenden() As Boolean
Get
Return CType(Me("vMailsenden"),Boolean)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmNI_SQL_Loc() As Global.System.Drawing.Point
Get
Return CType(Me("frmNI_SQL_Loc"),Global.System.Drawing.Point)
End Get
Set
Me("frmNI_SQL_Loc") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _ <Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _ Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("dd"), _ Global.System.Configuration.DefaultSettingValueAttribute("dd"), _
@ -186,32 +119,6 @@ Namespace My
End Set End Set
End Property End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property NIDurchlauf_Intervall() As Integer
Get
Return CType(Me("NIDurchlauf_Intervall"),Integer)
End Get
Set
Me("NIDurchlauf_Intervall") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vDIDurchlaufRunning() As Boolean
Get
Return CType(Me("vDIDurchlaufRunning"),Boolean)
End Get
Set
Me("vDIDurchlaufRunning") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _ <Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _ Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _ Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
@ -637,32 +544,6 @@ Namespace My
End Set End Set
End Property End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("25"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vemailPort() As Integer
Get
Return CType(Me("vemailPort"),Integer)
End Get
Set
Me("vemailPort") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property NI_RUNNING() As Boolean
Get
Return CType(Me("NI_RUNNING"),Boolean)
End Get
Set
Me("NI_RUNNING") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _ <Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _ Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("DigitalData\windream_CLIENT_WMCC_Neustart")> _ Global.System.Configuration.DefaultSettingValueAttribute("DigitalData\windream_CLIENT_WMCC_Neustart")> _
@ -796,6 +677,39 @@ Namespace My
Return CType(Me("DDECMConString"),String) Return CType(Me("DDECMConString"),String)
End Get End Get
End Property End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False")> _
Public Property NI_RUNNING() As Boolean
Get
Return CType(Me("NI_RUNNING"),Boolean)
End Get
Set
Me("NI_RUNNING") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False")> _
Public Property DI_RUNNING() As Boolean
Get
Return CType(Me("DI_RUNNING"),Boolean)
End Get
Set
Me("DI_RUNNING") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("@Domain#@User#@PW")> _
Public ReadOnly Property WM_PERS_LOGIN() As String
Get
Return CType(Me("WM_PERS_LOGIN"),String)
End Get
End Property
End Class End Class
End Namespace End Namespace

View File

@ -14,37 +14,9 @@
<Setting Name="vDIConfigDatei" Roaming="true" Type="System.String" Scope="User"> <Setting Name="vDIConfigDatei" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">modDateiimportConfig.xml</Value> <Value Profile="(Default)">modDateiimportConfig.xml</Value>
</Setting> </Setting>
<Setting Name="vMailProfilID" Roaming="true" Type="System.Int32" Scope="Application">
<Value Profile="(Default)">1</Value>
</Setting>
<Setting Name="vMailRecipient" Roaming="true" Type="System.String" Scope="Application">
<Value Profile="(Default)">support-flow@digitaldata.works</Value>
</Setting>
<Setting Name="vMailSubject" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">Fehler in Modul ToolCollection</Value>
</Setting>
<Setting Name="vMailBodyPraefix" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">&lt;p&gt;__________________&lt;br&gt;
&lt;b&gt;&lt;font face="Arial"&gt;Achtung Fehler:&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial"&gt;&lt;br&gt;
&lt;br&gt;
Folgender Fehler wurde festgestellt:&lt;/font&gt; &lt;/p&gt;
</Value>
</Setting>
<Setting Name="vMailsenden" Roaming="true" Type="System.Boolean" Scope="Application">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="frmNI_SQL_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="vPW_Admin" Roaming="true" Type="System.String" Scope="User"> <Setting Name="vPW_Admin" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">dd</Value> <Value Profile="(Default)">dd</Value>
</Setting> </Setting>
<Setting Name="NIDurchlauf_Intervall" Roaming="true" Type="System.Int32" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="vDIDurchlaufRunning" Roaming="true" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="frmNIHauptseite_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User"> <Setting Name="frmNIHauptseite_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value> <Value Profile="(Default)">0, 0</Value>
</Setting> </Setting>
@ -147,12 +119,6 @@
<Setting Name="errortext" Type="System.String" Scope="User"> <Setting Name="errortext" Type="System.String" Scope="User">
<Value Profile="(Default)">Fehlermeldung</Value> <Value Profile="(Default)">Fehlermeldung</Value>
</Setting> </Setting>
<Setting Name="vemailPort" Roaming="true" Type="System.Int32" Scope="User">
<Value Profile="(Default)">25</Value>
</Setting>
<Setting Name="NI_RUNNING" Roaming="true" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="WMCC_RESTART" Type="System.String" Scope="Application"> <Setting Name="WMCC_RESTART" Type="System.String" Scope="Application">
<Value Profile="(Default)">DigitalData\windream_CLIENT_WMCC_Neustart</Value> <Value Profile="(Default)">DigitalData\windream_CLIENT_WMCC_Neustart</Value>
</Setting> </Setting>
@ -200,5 +166,14 @@
&lt;/SerializableConnectionString&gt;</DesignTimeValue> &lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM_TEST;Persist Security Info=True;User ID=sa;Password=dd</Value> <Value Profile="(Default)">Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM_TEST;Persist Security Info=True;User ID=sa;Password=dd</Value>
</Setting> </Setting>
<Setting Name="NI_RUNNING" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="DI_RUNNING" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="WM_PERS_LOGIN" Type="System.String" Scope="Application">
<Value Profile="(Default)">@Domain#@User#@PW</Value>
</Setting>
</Settings> </Settings>
</SettingsFile> </SettingsFile>

View File

@ -83,71 +83,7 @@ Public Class TCService
ClassLoggerService.Add("###############################################################", False) ClassLoggerService.Add("###############################################################", False)
End Sub End Sub
Private Sub Profil_DurchlaufNI() Private Sub Profil_DurchlaufNI()
'Try
' For Each profil As ClassNIProfilS In ClassNIProfileS.Profile
' ' aktuelles Profil der Klasse mitteilen
' Me.aktivesProfil = profil
' ' Ausgabe an Logdatei über nächstes Profil
' _Logger.Info("", False)
' _Logger.Info(">> Starte Durchlauf für Profil: " & profil.Profilname, False)
' ' Überprüfen ob Profil aktiv oder inaktiv
' If CBool(Me.aktivesProfil.Aktiv) = False Then
' _Logger.Info(">> Profil: " & profil.Profilname & " ist inaktiv geschaltet", False)
' _Logger.Info("", False)
' Else
' ' den Durchlaufszeitpunkt speichern
' aktivesProfil.LastRun = Now
' aktivesProfil.Save(False)
' If file_exists(Me.aktivesProfil.WindreamSuche, True) = False Then
' _Logger.Info(">> Windream Suche für Profil: " & profil.Profilname & " konnte nicht ausgeführt werden! Datei " & Me.aktivesProfil.WindreamSuche & " existiert nicht!", False)
' Else
' ' windream-Suche für Profil starten
' Dim windreamSucheErgebnisse As WMObjects = Me._windreamNI.GetSearchDocuments(Me.aktivesProfil.WindreamSuche)
' If windreamSucheErgebnisse.Count > 0 Then
' ' neue Anzahl von Dateien an ProgressBar2
' For Each dok As WMObject In windreamSucheErgebnisse
' ' aktuelles Dokument der Klasse mitteilen
' Me.aktivesDokument = dok
' '####### Go für das Dokument ##########
' ' Thread für diese Datei starten
' Me.startDateiDurchlauf()
' '######################################
' ' solange der Datei-Thread noch nicht abgeschlossen wurde
' While Me.bwDatei.IsBusy
' ' warten
' End While
' ' nächste Datei an ProgressBar2
' bwProfil.ReportProgress(-1)
' ' Vorgang abbrechen
' If bwProfil.CancellationPending Then Exit Sub
' Next
' Else
' _Logger.Info("Keine windream-Dokumente für Profil: " & profil.Profilname & " gefunden!", False)
' _Logger.Info("", False)
' ' keine Dateien zum Importieren
' End If
' End If
' End If
' ' nächstes Profil an ProgressBar1
' Next
' ' Do Stuff Here...
' EventLog1.WriteEntry("Durchlauf der Profile erfolgreich.")
'Catch ex As System.Exception
' EventLog1.WriteEntry("TCService stellte einen Fehler fest '" & _
' ex.Message & "'", EventLogEntryType.Error)
' EventLog1.WriteEntry("TCService Stack Trace: " & _
' ex.StackTrace, EventLogEntryType.Error)
' ClassLoggerService.Add("Fehler in Profil_Durchlauf", ex.Message)
'End Try
End Sub End Sub
Private Sub Profil_DurchlaufDI() Private Sub Profil_DurchlaufDI()
Try Try

View File

@ -86,21 +86,17 @@
<OutputPath>bin\x64\Release\</OutputPath> <OutputPath>bin\x64\Release\</OutputPath>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="DigitalData.Modules.Config, Version=1.1.4.1, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Config">
<SpecificVersion>False</SpecificVersion> <HintPath>..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
<HintPath>..\..\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Database">
<SpecificVersion>False</SpecificVersion> <HintPath>..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Filesystem, Version=1.3.1.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Filesystem">
<SpecificVersion>False</SpecificVersion> <HintPath>..\..\2_DLL Projekte\DDModules\Filesystem\bin\Debug\DigitalData.Modules.Filesystem.dll</HintPath>
<HintPath>..\..\DDModules\Filesystem\bin\Debug\DigitalData.Modules.Filesystem.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Logging">
<SpecificVersion>False</SpecificVersion> <HintPath>..\..\2_DLL Projekte\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference> </Reference>
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"> <Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<HintPath>packages\EntityFramework.6.0.2\lib\net45\EntityFramework.dll</HintPath> <HintPath>packages\EntityFramework.6.0.2\lib\net45\EntityFramework.dll</HintPath>
@ -201,7 +197,6 @@
<Compile Include="ClassMoveRenameLogger.vb" /> <Compile Include="ClassMoveRenameLogger.vb" />
<Compile Include="ClassMO_RE.vb" /> <Compile Include="ClassMO_RE.vb" />
<Compile Include="ClassNIDatenbankzugriff.vb" /> <Compile Include="ClassNIDatenbankzugriff.vb" />
<Compile Include="ClassNIEmail.vb" />
<Compile Include="ClassNIProfil.vb" /> <Compile Include="ClassNIProfil.vb" />
<Compile Include="ClassNIProfile.vb" /> <Compile Include="ClassNIProfile.vb" />
<Compile Include="ClassNIVerknüpfung.vb" /> <Compile Include="ClassNIVerknüpfung.vb" />

View File

@ -48,28 +48,9 @@
<setting name="vDIConfigDatei" serializeAs="String"> <setting name="vDIConfigDatei" serializeAs="String">
<value>modDateiimportConfig.xml</value> <value>modDateiimportConfig.xml</value>
</setting> </setting>
<setting name="vMailSubject" serializeAs="String">
<value>Fehler in Modul ToolCollection</value>
</setting>
<setting name="vMailBodyPraefix" serializeAs="String">
<value>&lt;p&gt;__________________&lt;br&gt;
&lt;b&gt;&lt;font face="Arial"&gt;Achtung Fehler:&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial"&gt;&lt;br&gt;
&lt;br&gt;
Folgender Fehler wurde festgestellt:&lt;/font&gt; &lt;/p&gt;
</value>
</setting>
<setting name="frmNI_SQL_Loc" serializeAs="String">
<value>0, 0</value>
</setting>
<setting name="vPW_Admin" serializeAs="String"> <setting name="vPW_Admin" serializeAs="String">
<value>dd</value> <value>dd</value>
</setting> </setting>
<setting name="NIDurchlauf_Intervall" serializeAs="String">
<value>0</value>
</setting>
<setting name="vDIDurchlaufRunning" serializeAs="String">
<value>False</value>
</setting>
<setting name="frmNIHauptseite_Loc" serializeAs="String"> <setting name="frmNIHauptseite_Loc" serializeAs="String">
<value>0, 0</value> <value>0, 0</value>
</setting> </setting>
@ -160,31 +141,22 @@
<setting name="errortext" serializeAs="String"> <setting name="errortext" serializeAs="String">
<value>Fehlermeldung</value> <value>Fehlermeldung</value>
</setting> </setting>
<setting name="vemailPort" serializeAs="String">
<value>25</value>
</setting>
<setting name="NI_RUNNING" serializeAs="String">
<value>False</value>
</setting>
<setting name="VFS_RESTART" serializeAs="String"> <setting name="VFS_RESTART" serializeAs="String">
<value>DigitalData\windream_VFS_RESTART</value> <value>DigitalData\windream_VFS_RESTART</value>
</setting> </setting>
<setting name="myDateiname" serializeAs="String"> <setting name="myDateiname" serializeAs="String">
<value>myInvalidDateiname.pdf</value> <value>myInvalidDateiname.pdf</value>
</setting> </setting>
<setting name="NI_RUNNING" serializeAs="String">
<value>False</value>
</setting>
<setting name="DI_RUNNING" serializeAs="String">
<value>False</value>
</setting>
</ToolCollection.My.MySettings> </ToolCollection.My.MySettings>
</userSettings> </userSettings>
<applicationSettings> <applicationSettings>
<ToolCollection.My.MySettings> <ToolCollection.My.MySettings>
<setting name="vMailProfilID" serializeAs="String">
<value>1</value>
</setting>
<setting name="vMailRecipient" serializeAs="String">
<value>support-flow@digitaldata.works</value>
</setting>
<setting name="vMailsenden" serializeAs="String">
<value>False</value>
</setting>
<setting name="MRWD_Laufwerk" serializeAs="String"> <setting name="MRWD_Laufwerk" serializeAs="String">
<value>W</value> <value>W</value>
</setting> </setting>
@ -230,6 +202,9 @@
<setting name="REGEX_INVALID_PATH" serializeAs="String"> <setting name="REGEX_INVALID_PATH" serializeAs="String">
<value>[\\\/:\*\?""'&lt;&gt;|]</value> <value>[\\\/:\*\?""'&lt;&gt;|]</value>
</setting> </setting>
<setting name="WM_PERS_LOGIN" serializeAs="String">
<value>@Domain#@User#@PW</value>
</setting>
</ToolCollection.My.MySettings> </ToolCollection.My.MySettings>
</applicationSettings> </applicationSettings>
<startup> <startup>

View File

@ -63,8 +63,6 @@ Public Class clsNI_WorkFile
'bei einem Fehler einen Eintrag in der Logdatei machen 'bei einem Fehler einen Eintrag in der Logdatei machen
_Logger.Warn("ACHTUNG Schwerwiegender Fehler in Work_File: " & ex.Message) _Logger.Warn("ACHTUNG Schwerwiegender Fehler in Work_File: " & ex.Message)
EMAIL_DD.Send_EMail("Schwerwiegender Fehler bei Work_File - <br> Profil: " & aktivesProfil.Profilname & "<br> Datei: " & dokument.aName.ToString & "<br> Fehler: " & ex.Message, "clsNIWorkFileWorkFile")
Return False Return False
End Try End Try
End Function End Function

View File

@ -155,7 +155,7 @@ Public Class frmDIHauptseite
Me.tvLog.Visible = False Me.tvLog.Visible = False
Me.timRun_Dateiimport.Stop() Me.timRun_Dateiimport.Stop()
Durchlauf = False Durchlauf = False
My.Settings.vDIDurchlaufRunning = False My.Settings.DI_RUNNING = False
End If End If
Me.progressImport.Enabled = False Me.progressImport.Enabled = False
@ -239,7 +239,7 @@ Public Class frmDIHauptseite
Private Sub frmDIHauptseite_Shown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shown Private Sub frmDIHauptseite_Shown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shown
Formloaded = True Formloaded = True
Me.LoadProfilesInCombobox() Me.LoadProfilesInCombobox()
If My.Settings.vDIDurchlaufRunning = True Then If My.Settings.DI_RUNNING = True Then
Me.rbAutomatisch.Checked = True Me.rbAutomatisch.Checked = True
Automatischer_Durchlauf(False) Automatischer_Durchlauf(False)
End If End If
@ -722,15 +722,10 @@ Public Class frmDIHauptseite
'DAS Windream-Laufwerk ist nicht verfügbar! 'DAS Windream-Laufwerk ist nicht verfügbar!
CriticalErrorInBackgroundWorker = True CriticalErrorInBackgroundWorker = True
Import_Abbrechen() Import_Abbrechen()
EMAIL_DD.Send_EMail("ESKALATIONSTUFE 1: Schwerwiegender Fehler in Dateiimporter windream <br>ERROR: " & Err.Description & "<br> DAS WINDREAM-LAUFWERK oder der Netzwerkname IST NICHT VERFÜGBAR!<br>" &
"Der Importvorgang wurde abgebrochen!<br>Fehlerbehebung: ==> Starten Sie windream und den den Dateiimporter neu!", "DI_WMNOTACCESSIBLE")
MsgBox("Schwerwiegender Fehler in Dateiimporter windream!" & vbNewLine & "ERROR: " & Err.Description & vbNewLine & "DAS WINDREAM-LAUFWERK IST NICHT VERFÜGBAR!" & vbNewLine & MsgBox("Schwerwiegender Fehler in Dateiimporter windream!" & vbNewLine & "ERROR: " & Err.Description & vbNewLine & "DAS WINDREAM-LAUFWERK IST NICHT VERFÜGBAR!" & vbNewLine &
"Der Importvorgang wurde abgebrochen!" & vbNewLine & "Fehlerbehebung: ==> Starten Sie windream und den den Dateiimporter neu!") "Der Importvorgang wurde abgebrochen!" & vbNewLine & "Fehlerbehebung: ==> Starten Sie windream und den den Dateiimporter neu!")
Exit Sub Exit Sub
Else
EMAIL_DD.Send_EMail("Fehler bei Datei: " & oFilenameQuelle & " <br\>ERROR: " & Err.Description, "DI_WMFILEACCESS")
End If End If
@ -1148,40 +1143,58 @@ Public Class frmDIHauptseite
_Step = "3.1.1" _Step = "3.1.1"
DetailLog("_Step: " & _Step) DetailLog("_Step: " & _Step)
' wenn auf die Datei zugeriffen werden konnte ist sie bereits vorhanden -> Datum anhängen ' wenn auf die Datei zugeriffen werden konnte ist sie bereits vorhanden -> Datum anhängen
DetailLog("-> DATEI IST BEREITS VORHANDEN") DetailLog("DATEI IST BEREITS VORHANDEN - MUSS VERSIONIERT WERDEN!")
Err.Clear() Err.Clear()
'### Automatische Versionierung mit ~ (Tilde) ### '### Automatische Versionierung mit ~ (Tilde) ###
Dim version As Integer = 2 Dim oMyVersion As Integer = 2
Dim extension As String = Quelldatei_Name.Substring(Quelldatei_Name.LastIndexOf(".")) Dim extension As String = Quelldatei_Name.Substring(Quelldatei_Name.LastIndexOf("."))
Dim Stammname As String = zielpfad.Substring(2) & "\" & Quelldatei_Name.Substring(0, Quelldatei_Name.LastIndexOf(".")) If zielpfad.StartsWith("\\Windream\Objects") Then
Dim neuername As String = zielpfad.Substring(2) & "\" & Quelldatei_Name.Substring(0, Quelldatei_Name.LastIndexOf(".")) DetailLog("Replacing windream\objects...")
zielpfad = zielpfad.Replace("\\Windream\Objects", "")
Else
zielpfad = zielpfad.Substring(2)
End If
Do While file_exists(My.Settings.vWLaufwerk & ":\" & neuername & extension) = True Dim Stammname As String = zielpfad & "\" & Quelldatei_Name.Substring(0, Quelldatei_Name.LastIndexOf("."))
DetailLog("Datei " & endgültigerDateiname & " ist vorhanden!") Dim neuername As String = zielpfad & "\" & Quelldatei_Name.Substring(0, Quelldatei_Name.LastIndexOf("."))
neuername = Stammname & "~" & version DetailLog("Stammname [" & Stammname & "]")
DetailLog("neuername [" & neuername & "]")
Do While file_exists("\\WINDREAM\OBJECTS\" & neuername & extension) = True
DetailLog("Versionierung - Datei [" & neuername & extension & "] ist vorhanden!")
neuername = Stammname & "~" & oMyVersion
DetailLog("Versionierung - neuername [" & neuername & "]")
endgültigerDateiname = neuername & extension endgültigerDateiname = neuername & extension
version = version + 1 oMyVersion = oMyVersion + 1
Loop Loop
DetailLog("Datei [" & endgültigerDateiname & "] wird benutzt um den Filestream nach WM zu erzeugen...")
_Step = "3.1.2" _Step = "3.1.2"
DetailLog("_Step: " & _Step) DetailLog("_Step: " & _Step)
oNewWMObject = _windream.oWMSession.GetNewWMObjectFS(WMEntityDocument, endgültigerDateiname, WMObjectEditModeObject) Try
oNewWMObject = _windream.oWMSession.GetNewWMObjectFS(WMEntityDocument, endgültigerDateiname, WMObjectEditModeObject)
Catch ex As Exception
ClassLoggerDI.Add(" FEHLER DATEI_VORHANDEN GetNewWMObjectFS...")
ClassLoggerDI.Add(" FEHLER bei _windream.oWMSession.GetNewWMObjectFS: '" & ex.Message)
Return -1
End Try
If Err.Number > 0 Then If Err.Number > 0 Then
ClassLoggerDI.Add(" FEHLER: Neues WMObject (Kopie) konnte nicht erzeugt werden - Error: '" & Err.Description & "'") ClassLoggerDI.Add(" FEHLER: Neues WMObject (Kopie) konnte nicht erzeugt werden - Error: '" & Err.Description & "'")
If My.Settings.StopwatchTimerActive = True Then If My.Settings.StopwatchTimerActive = True Then
oStopWatchTimer.Done() oStopWatchTimer.Done()
oStopWatchTimerC.Done() oStopWatchTimerC.Done()
End If
'MsgBox(Err.Description)
End If End If
'MsgBox(Err.Description) DetailLog("...WMObject-Filestream zugewiesen")
End If End If
DetailLog("WMObject zugewiesen") _Step = "3.2"
End If
_Step = "3.2"
DetailLog("_Step: " & _Step) DetailLog("_Step: " & _Step)
DetailLog("ENDGÜLTIGER DATEINAME => " & endgültigerDateiname) DetailLog("ENDGÜLTIGER DATEINAME => " & endgültigerDateiname)
If oNewWMObject IsNot Nothing Then If oNewWMObject IsNot Nothing Then
' lock object for file system access (to change the file itself) ' lock object for file system access (to change the file itself)
oNewWMObject.lock() oNewWMObject.lock()
' set fileIO the local source file ' set fileIO the local source file
DetailLog("Now Streaming from filenameQuelle...")
oFileIO.bstrOriginalFileName = filenameQuelle oFileIO.bstrOriginalFileName = filenameQuelle
If Err.Number > 0 Then If Err.Number > 0 Then
'MsgBox(Err.Number.ToString) 'MsgBox(Err.Number.ToString)
@ -1198,8 +1211,25 @@ Public Class frmDIHauptseite
End If End If
_Step = "3.3" _Step = "3.3"
DetailLog("_Step: " & _Step) DetailLog("_Step: " & _Step)
' open the windream object's file stream for writing Try
oWMStream = oNewWMObject.OpenStream(STREAM_BinaryObject, WMObjectStreamOpenModeReadWrite) ' open the windream object's file stream for writing
oWMStream = oNewWMObject.OpenStream(STREAM_BinaryObject, WMObjectStreamOpenModeReadWrite)
Catch ex As Exception
ClassLoggerDI.Add(" FEHLER bei OpenStream - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
oNewWMObject.Unlock()
Try
System.IO.File.Delete(My.Settings.vWLaufwerk & ":" & endgültigerDateiname)
Catch ex1 As Exception
End Try
If My.Settings.StopwatchTimerActive = True Then
oStopWatchTimer.Done()
oStopWatchTimerC.Done()
End If
Return -1
End Try
If Err.Number > 0 Then If Err.Number > 0 Then
ClassLoggerDI.Add(" FEHLER bei OpenStream - Datei wird wieder gelöscht - Error: '" & Err.Description & "'") ClassLoggerDI.Add(" FEHLER bei OpenStream - Datei wird wieder gelöscht - Error: '" & Err.Description & "'")
oNewWMObject.Unlock() oNewWMObject.Unlock()
@ -2267,7 +2297,7 @@ Public Class frmDIHauptseite
Me.timRun_Dateiimport.Interval = Me.numIntervallDurchlauf.Value * 60 * 1000 Me.timRun_Dateiimport.Interval = Me.numIntervallDurchlauf.Value * 60 * 1000
Me.timRun_Dateiimport.Start() Me.timRun_Dateiimport.Start()
My.Settings.vDIDurchlaufRunning = True My.Settings.DI_RUNNING = True
My.Settings.Save() My.Settings.Save()
'Direkt einen Durchlauf starten 'Direkt einen Durchlauf starten
If runnow = True Then If runnow = True Then
@ -2286,7 +2316,7 @@ Public Class frmDIHauptseite
Me.tvLog.Visible = False Me.tvLog.Visible = False
Me.timRun_Dateiimport.Stop() Me.timRun_Dateiimport.Stop()
Durchlauf = False Durchlauf = False
My.Settings.vDIDurchlaufRunning = False My.Settings.DI_RUNNING = False
End If End If
Catch ex As Exception Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler bei btnDurchlauf.Click:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler bei btnDurchlauf.Click:")

View File

@ -1,4 +1,5 @@
Imports System.ComponentModel Imports System.ComponentModel
Imports System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder
Imports System.IO Imports System.IO
Imports System.Text.RegularExpressions Imports System.Text.RegularExpressions
Imports DigitalData.Modules.Logging Imports DigitalData.Modules.Logging
@ -12,8 +13,7 @@ Public Class frmNIHauptseite
'####Variablen für Nachindexierung '####Variablen für Nachindexierung
Private _windreamNI As ClassNIWindream Private _windreamNI As ClassNIWindream
Private _clsWorkfile As clsNI_WorkFile Private _clsWorkfile As clsNI_WorkFile
'Private _clsMoRe As ClassMO_RE
'Private _windreamNI As ClassNIWindream = Me.ParentClass.Windream
Private bwProfil As New BackgroundWorker Private bwProfil As New BackgroundWorker
Private bwDatei As New BackgroundWorker Private bwDatei As New BackgroundWorker
Private bwsearch As New BackgroundWorker Private bwsearch As New BackgroundWorker
@ -67,7 +67,9 @@ Public Class frmNIHauptseite
' 3b. Windream initialisieren (Connection, Session, ... aufbauen) ' 3b. Windream initialisieren (Connection, Session, ... aufbauen)
If _windreamNI.Init() = False Then If _windreamNI.Init() = False Then
EMAIL_DD.Send_EMail("Die Windream-Klasse konnte nicht initialisiert werden. Windream-Client unvollständig gestartert.", "windreamNI.Init()") _Logger.Warn("Die Windream-Klasse konnte nicht initialisiert werden. Windream-Client unvollständig gestartert.")
Exit Sub
End If End If
'ClassMoveRenameLogger.Init("", "MoveRename_", True) 'ClassMoveRenameLogger.Init("", "MoveRename_", True)
@ -340,8 +342,6 @@ Public Class frmNIHauptseite
_Logger.Warn("Windream Suche für Profil: " & profil.Profilname & " konnte nicht ausgeführt werden! Die Datei " & Me.aktivesProfil.WindreamSuche & " existiert nicht!") _Logger.Warn("Windream Suche für Profil: " & profil.Profilname & " konnte nicht ausgeführt werden! Die Datei " & Me.aktivesProfil.WindreamSuche & " existiert nicht!")
' wenn die gesuchte File eine Suche ist: per MAil informierne und Indexierung abbrechen ' wenn die gesuchte File eine Suche ist: per MAil informierne und Indexierung abbrechen
EMAIL_DD.Send_EMail("Fehler bei Nachindexierung: <br> >> Profil: " & Me.aktivesProfil.Profilname & "<br> >> Die windream-Suche : " & Me.aktivesProfil.WindreamSuche & " konnte nicht gefunden werden!" &
"<br> >> Mögliche Fehlerursache: Das W-Laufwerk ist nicht verfügbar!", "WMissing")
Abbruch_NI("Windream-Suche konnte nicht gefunden werden!", True, False) Abbruch_NI("Windream-Suche konnte nicht gefunden werden!", True, False)
clsHelper.Add_Application_log("Nachindexierung wurde abgebrochen, da eine Windream-Suche (" & Me.aktivesProfil.WindreamSuche & ") nicht gefunden werden konnte") clsHelper.Add_Application_log("Nachindexierung wurde abgebrochen, da eine Windream-Suche (" & Me.aktivesProfil.WindreamSuche & ") nicht gefunden werden konnte")
@ -479,23 +479,22 @@ Public Class frmNIHauptseite
bwProfil.ReportProgress(oDTResults.Rows.Count) bwProfil.ReportProgress(oDTResults.Rows.Count)
_Logger.Debug($">> Working on [{oDTResults.Rows.Count}] documents via SQL...") _Logger.Debug($">> Working on [{oDTResults.Rows.Count}] documents via SQL...")
If Not IsNothing(_windreamNI) Then If Not IsNothing(_windreamNI) Then
Dim oColumnIndex As Integer
Try
Dim oCheckInt As Integer
Dim oCheckStr As String
If Integer.TryParse(oDTResults.Rows(0).Item(1).ToString, oCheckInt) Then
oColumnIndex = 0
Else
oColumnIndex = 1
End If
_Logger.Debug($">> WM fullFilePath is obviously located in ColumnIndex: {oColumnIndex}")
Catch ex As Exception
End Try
Dim i As Integer = 0 Dim i As Integer = 0
For Each oROW As DataRow In oDTResults.Rows For Each oROW As DataRow In oDTResults.Rows
Dim oColumnIndex As Integer
Try
Dim oCheckInt As Integer
Dim oCheckStr As String
If Integer.TryParse(oROW.Item(1), oCheckInt) Then
' childAge successfully parsed as Integer
oColumnIndex = 0
Else
oColumnIndex = 1
End If
Catch ex As Exception
End Try
Dim oFilenameWM = oROW.Item(oColumnIndex).ToString Dim oFilenameWM = oROW.Item(oColumnIndex).ToString
oFilenameWM = oFilenameWM.Replace("W:", "") oFilenameWM = oFilenameWM.Replace("W:", "")
oFilenameWM = oFilenameWM.Replace("\\windream\objects", "") oFilenameWM = oFilenameWM.Replace("\\windream\objects", "")
@ -692,7 +691,6 @@ Public Class frmNIHauptseite
IsWorking_Hour = True IsWorking_Hour = True
End If End If
If _windreamNI.Init() = False Then If _windreamNI.Init() = False Then
EMAIL_DD.Send_EMail("Die Windream-Klasse konnte nicht initialisiert werden. Windream-Client unvollständig gestartert.", "_windreamNI.Init(693)")
clsHelper.Add_Application_log("Die Windream-Klasse konnte nicht initialisiert werden. Windream-Client unvollständig gestartert?") clsHelper.Add_Application_log("Die Windream-Klasse konnte nicht initialisiert werden. Windream-Client unvollständig gestartert?")
Exit Sub Exit Sub
@ -797,8 +795,6 @@ Public Class frmNIHauptseite
Catch ex As Exception Catch ex As Exception
errormsg = " FEHLER bei Check_Desk_Index (GetVariableValue für Index '" & aktivesProfil.Desk_windreamIndex & "'): " & ex.Message errormsg = " FEHLER bei Check_Desk_Index (GetVariableValue für Index '" & aktivesProfil.Desk_windreamIndex & "'): " & ex.Message
_Logger.Warn(errormsg) _Logger.Warn(errormsg)
EMAIL_DD.Send_EMail("Beim Indexieren der Datei " & dokument.aName.ToString & " ist ein Fehler aufgetreten Check_Desk_Index (GetVariableValue): " & ex.Message, "Check_Desk_Index")
' wenn ein Fehler aufgetreten ist, muss das Flag gesetzt werden ' wenn ein Fehler aufgetreten ist, muss das Flag gesetzt werden
Return True Return True
@ -1039,8 +1035,6 @@ Public Class frmNIHauptseite
result &= vbNewLine & " - Schwerwiegender Fehler bei Auslesen des einschränkenden Wertes aus Index':" & idxName_ohneSonderzeichen & "'" result &= vbNewLine & " - Schwerwiegender Fehler bei Auslesen des einschränkenden Wertes aus Index':" & idxName_ohneSonderzeichen & "'"
oUnexpectedError = True oUnexpectedError = True
fehlermsg &= vbNewLine & "Schwerwiegender Fehler bei Auslesen des einschränkenden Wertes aus Index':" & idxName_ohneSonderzeichen & "' - Fehler: " & ex.Message fehlermsg &= vbNewLine & "Schwerwiegender Fehler bei Auslesen des einschränkenden Wertes aus Index':" & idxName_ohneSonderzeichen & "' - Fehler: " & ex.Message
EMAIL_DD.Send_EMail(fehlermsg, "GettingWMIndexInfo")
End Try End Try
' wenn beim Auslesen des Wertes für den aktuellen windream-Index kein Fehler auftrat ' wenn beim Auslesen des Wertes für den aktuellen windream-Index kein Fehler auftrat
@ -1637,7 +1631,7 @@ Public Class frmNIHauptseite
'Wenn Speicherort gespeichert werden soll wird Platzhalter ersetzt! 'Wenn Speicherort gespeichert werden soll wird Platzhalter ersetzt!
Sqlcommand = Sqlcommand.Replace("vSpeicherort", "'" & My.Settings.vWLaufwerk & ":" & Me.aktivesDokument.aPath & "'") Sqlcommand = Sqlcommand.Replace("vSpeicherort", "'" & My.Settings.vWLaufwerk & ":" & Me.aktivesDokument.aPath & "'")
_Logger.Debug("SQL-Command: " & Sqlcommand) _Logger.Debug("SQL-Command: " & Sqlcommand)
'MsgBox(Me.aktivesDokument.aPath & vbNewLine & vbNewLine & Me.aktivesDokument.aName)
Next Next
If Me.aktivesProfil.DbArt = "Oracle" Then If Me.aktivesProfil.DbArt = "Oracle" Then
If database.ExecuteonOracleDb(aktivesProfil.Profilname, Sqlcommand, aktivesProfil.DataSource, aktivesProfil.InitialCatalog, aktivesProfil.UserId, aktivesProfil.Password) = 1 Then If database.ExecuteonOracleDb(aktivesProfil.Profilname, Sqlcommand, aktivesProfil.DataSource, aktivesProfil.InitialCatalog, aktivesProfil.UserId, aktivesProfil.Password) = 1 Then
@ -1752,7 +1746,6 @@ Public Class frmNIHauptseite
If unvollstaendig = False And Me.aktivesProfil.Ni_Art.ToLower <> "fulltext" Then If unvollstaendig = False And Me.aktivesProfil.Ni_Art.ToLower <> "fulltext" Then
_Logger.Warn("Fehler bei IndexiereVerarbeiteDokument für die Datei: " & pMyWMDoc.aName.ToString) _Logger.Warn("Fehler bei IndexiereVerarbeiteDokument für die Datei: " & pMyWMDoc.aName.ToString)
_Logger.Warn("Fehlermeldung: " & fehlermsg) _Logger.Warn("Fehlermeldung: " & fehlermsg)
EMAIL_DD.Send_EMail("Fehler in IndexiereVerarbeiteDokument für die Datei: " & pMyWMDoc.aName.ToString & "<br> Profilname: " & aktivesProfil.Profilname & " <br> Fehlermeldung: " & fehlermsg, "IndexiereVerarbeiteDokument1760")
End If End If
End If End If
@ -1830,7 +1823,6 @@ Public Class frmNIHauptseite
Dim oMyDocumentName = pMyWMDoc.aName Dim oMyDocumentName = pMyWMDoc.aName
Dim err As Boolean = CrFolderForIndex(docpath, oMyDocumentName) Dim err As Boolean = CrFolderForIndex(docpath, oMyDocumentName)
If err = True Then If err = True Then
EMAIL_DD.Send_EMail("Fehler bei Create Folder for Index bei der Datei: '" & pMyWMDoc.aName.ToString & "'<br> Fehler: Die Datei wurde indexiert aber der Ordner konnte nicht erstellt werden!", "CrFolderForIndex")
End If End If
Else Else
@ -1868,7 +1860,6 @@ Public Class frmNIHauptseite
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex) _Logger.Error(ex)
_Logger.Warn($"oResultNachindexierung so far: {oResultNachindexierung.ToString}") _Logger.Warn($"oResultNachindexierung so far: {oResultNachindexierung.ToString}")
EMAIL_DD.Send_EMail("Schwerwiegender Fehler bei IndexiereVerarbeiteDokument - <br> Profil: " & aktivesProfil.Profilname & "<br> Datei: " & pMyWMDoc.aName.ToString & "<br> Fehler: " & ex.Message, "IndexiereVerarbeiteDokument1874")
End Try End Try
End Sub End Sub
Private Function FolderForIndex(oDynamicFolder As String, myWMDocument As WMObject) As String Private Function FolderForIndex(oDynamicFolder As String, myWMDocument As WMObject) As String
@ -2165,7 +2156,14 @@ Public Class frmNIHauptseite
oReturnString = oNewPathFilename oReturnString = oNewPathFilename
End If End If
End If End If
If _windreamNI.NEW_MOVE_FILE(oReturnString, oActWMPath, "MO_RE", myWMDocument.aName) = True Then Dim oFilename = myWMDocument.aName
If myWMDocument.aLocked Then
_Logger.Debug("Document still is locked...now unlocking...")
myWMDocument.unlock()
End If
myWMDocument = Nothing
If _windreamNI.NEW_MOVE_FILE(oReturnString, oActWMPath, "MO_RE", oFilename) = True Then
Return False Return False
Else Else
Return True Return True
@ -2549,8 +2547,6 @@ Public Class frmNIHauptseite
_Logger.Error(ex) _Logger.Error(ex)
End If End If
EMAIL_DD.Send_EMail("Schwerwiegender Fehler bei SetErrorMeldung - <br> Profil: " & aktivesProfil.Profilname & "<br> Datei: " & dokument.aName.ToString & "<br> Fehler: " & ex.Message, "SetErrorMeldung")
End Try End Try
End Sub End Sub
Private Function IsNotEmpty(ByVal aValue As Object) Private Function IsNotEmpty(ByVal aValue As Object)

View File

@ -186,7 +186,7 @@ Partial Class frmNI_SQLTest
Me.DataBindings.Add(New System.Windows.Forms.Binding("Location", Global.ToolCollection.My.MySettings.Default, "frmNI_SQL_Loc", True, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged)) Me.DataBindings.Add(New System.Windows.Forms.Binding("Location", Global.ToolCollection.My.MySettings.Default, "frmNI_SQL_Loc", True, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged))
Me.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) Me.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
Me.Location = Global.ToolCollection.My.MySettings.Default.frmNI_SQL_Loc
Me.Name = "frmNI_SQLTest" Me.Name = "frmNI_SQLTest"
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Test-Ergebnis der Nachindexierungverknüpfung" Me.Text = "Test-Ergebnis der Nachindexierungverknüpfung"

View File

@ -62,6 +62,25 @@ Public Class frmStart
' timUhrzeit.Start() ' timUhrzeit.Start()
TimerErrorLog.Start() TimerErrorLog.Start()
If My.Settings.WM_PERS_LOGIN <> String.Empty Then
Dim oSPLIT As String()
oSPLIT = My.Settings.WM_PERS_LOGIN.Split("#")
If oSPLIT.Length > 0 Then
If oSPLIT(0) <> "@Domain" Then
WMLOGIN_DOMAIN = oSPLIT(0)
_Logger.Info($"WMLOGIN_DOMAIN: {WMLOGIN_DOMAIN}")
WMLOGIN_USER = oSPLIT(1)
_Logger.Info($"WMLOGIN_USER: {WMLOGIN_USER}")
WMLOGIN_PW = oSPLIT(2)
Else
_Logger.Info($"No dedicated WMUser(1)")
End If
End If
End If
If Not My.Settings.licensekey = "" Then If Not My.Settings.licensekey = "" Then
' Lizenz-Manager initialisieren ' Lizenz-Manager initialisieren
Me.licenseManager = New ClassLicenseManager("#DigitalData9731258!#", My.Settings.licensekey) Me.licenseManager = New ClassLicenseManager("#DigitalData9731258!#", My.Settings.licensekey)
@ -69,7 +88,6 @@ Public Class frmStart
' alle vorhandenen Module laden ' alle vorhandenen Module laden
Me.LoadAllModules() Me.LoadAllModules()
End If End If
EMAIL_DD = New ClassEmail(_MyLogger)
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex) _Logger.Error(ex)
@ -257,10 +275,10 @@ Public Class frmStart
Private Sub FMStart_Shown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shown Private Sub FMStart_Shown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shown
TimerNIRestart.Start() TimerNIRestart.Start()
If My.Settings.vDIDurchlaufRunning = True Then If My.Settings.DI_RUNNING = True Then
Open_DI_Main() Open_DI_Main()
End If End If
If My.Settings.NI_RUNNING = True Then If NIDurchlaufRunning = True Then
Open_NI_Main() Open_NI_Main()
End If End If
End Sub End Sub
@ -411,12 +429,6 @@ Public Class frmStart
End If End If
End Sub End Sub
Private Sub CriticalEmailTestToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles CriticalEmailTestToolStripMenuItem.Click
Cursor = Cursors.WaitCursor
EMAIL_DD.Send_EMail("Dies ist eine Test-Email!", "888888888")
Cursor = Cursors.Default
End Sub
Private Sub TimerErrorLog_Tick(sender As Object, e As EventArgs) Handles TimerErrorLog.Tick Private Sub TimerErrorLog_Tick(sender As Object, e As EventArgs) Handles TimerErrorLog.Tick
If CURRENT_APPLICATION_LOG <> String.Empty Then If CURRENT_APPLICATION_LOG <> String.Empty Then
Dim frm As New frmApplicationLog Dim frm As New frmApplicationLog