MS_05042016

This commit is contained in:
SchreiberM
2016-04-05 17:28:12 +02:00
parent b9eb1e1981
commit d1eb7ecb5b
72 changed files with 11883 additions and 9088 deletions

View File

@@ -197,7 +197,7 @@ Public Class ClassWindream
Try
' Session-Objekt instanziieren und mit dem im Client ausgewählten Server belegen
oSession = CreateObject("Windream.WMSession", GetCurrentServer)
If LogErrorsOnly = False Then ClassLogger.Add(">> windream-Server: '" & GetCurrentServer() & "'", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> windream-Server: '" & GetCurrentServer() & "'", False)
' Connection-Objekt instanziieren
oConnect = CreateObject("Windream.WMConnect")
'MsgBox("windrem init 'ed")
@@ -541,25 +541,23 @@ Public Class ClassWindream
aktWMObject = Nothing
If My.Computer.FileSystem.DirectoryExists(zielpfad) = False Then
My.Computer.FileSystem.CreateDirectory(zielpfad)
ClassLogger.Add(" - Zielverzeichnis neu erzeugt!", False)
ClassLogger.Add(">> Zielverzeichnis neu erzeugt!", False)
End If
Const STREAM_BinaryObject = "BinaryObject"
If LogErrorsOnly = False Then ClassLogger.Add(" - Stream_File wurde gestartet", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Stream_File wurde gestartet", False)
Dim endgültigerDateiname As String = ""
' Objekt für Datei und Zielverzeichnis anlegen
' Dim Quelldatei_Name As String = Path.GetFileName(filenameQuelle)
If LogErrorsOnly = False Then ClassLogger.Add(" - Quelldatei gelesen", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Quelldatei gelesen", False)
'########
Dim Zielverzeichnis As String = zielpfad
endgültigerDateiname = CURRENT_NEWFILENAME.Substring(2)
If LogErrorsOnly = False Then ClassLogger.Add(" - Zielverzeichnis erzeugt", False)
If My.Computer.FileSystem.DirectoryExists(Zielverzeichnis) Then
If LogErrorsOnly = False Then ClassLogger.Add(" - targetPath exisitiert", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> targetPath exisitiert", False)
' Überprüfen ob der zu Kopieren notwendige Speicherplatz auf Ziellaufwerk vorhanden ist
Dim dvr As New DriveInfo(vWLaufwerk & ":")
Dim freeSpace = dvr.TotalFreeSpace
@@ -572,7 +570,7 @@ Public Class ClassWindream
Return -10
End If
If LogErrorsOnly = False Then ClassLogger.Add(" - Datei kopieren von " & filenameQuelle & " nach " & endgültigerDateiname & ".", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei kopieren von " & filenameQuelle & " nach " & endgültigerDateiname & ".", False)
Dim Connect
Dim Session
Dim WMObject
@@ -580,15 +578,15 @@ Public Class ClassWindream
Dim aWMStream
Dim wmbrwsr
Dim dmsServer As String
If LogErrorsOnly = False Then ClassLogger.Add(" - Connect definieren: CreateObject('Windream.WMConnect')", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Connect definieren: CreateObject('Windream.WMConnect')", False)
Connect = CreateObject("Windream.WMConnect")
aFileIO = New WMOTOOLLib.WMFileIO
'If My.Settings.DLL_WMOTOOL = "" Then
' aFileIO = New WMOTOOLLib.WMFileIO
' If LogErrorsOnly = False Then ClassLogger.Add(" - Direkter Verweis auf New WMOTOOLLib.WMFileIO", False)
' If LogErrorsOnly = False Then ClassLogger.Add(" >> Direkter Verweis auf New WMOTOOLLib.WMFileIO", False)
'Else
' aFileIO = CreateObject(My.Settings.DLL_WMOTOOL) 'WMOTool.WMFileIO oder WMOTOOLLib.WMFileIO
' If LogErrorsOnly = False Then ClassLogger.Add(" - Verwendeter Verweis aus Anwendungsstring: '" & My.Settings.DLL_WMOTOOL & "'", False)
' If LogErrorsOnly = False Then ClassLogger.Add(" >> Verwendeter Verweis aus Anwendungsstring: '" & My.Settings.DLL_WMOTOOL & "'", False)
'End If
wmbrwsr = CreateObject("WMOBrws.ServerBrowser")
@@ -606,10 +604,10 @@ Public Class ClassWindream
Connect.LoginSession(Session)
Dim LoggedIn = Session.aLoggedin
If LoggedIn Then
If LogErrorsOnly = False Then ClassLogger.Add(" - Login ok. You are logged in as '" & Connect.UserName & "' on Server '" & dmsServer, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Login ok. You are logged in as '" & Connect.UserName & "' on Server '" & dmsServer, False)
'MsgBox("Login ok. You are logged in as '" + Connect.UserName + "' on Server '" + dmsServer + "'")
Else
ClassLogger.Add(" - Login on dms-Server failed", False)
ClassLogger.Add(">> Login on dms-Server failed", False)
' MsgBox("Login failed. ")
End If
Const WMCOMEventWMSessionNeedIndex = 1
@@ -619,13 +617,13 @@ Public Class ClassWindream
'==================================================================
' check if files exist
'==================================================================
If LogErrorsOnly = False Then ClassLogger.Add(" - ÜBERPRÜFTER DATEINAME => " & endgültigerDateiname, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> ÜBERPRÜFTER DATEINAME => " & endgültigerDateiname, False)
Dim wdFilexists As Boolean
If LogErrorsOnly = False Then ClassLogger.Add(" - Versuch auf die Datei in W: zuzugreifen und zu sperren...", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch auf die Datei in W: zuzugreifen und zu sperren...", False)
wdFilexists = Session.WMObjectExists(WMEntityDocument, endgültigerDateiname, 0, 0)
If wdFilexists = False Then
If LogErrorsOnly = False Then ClassLogger.Add(" - Datei ist NICHT vorhanden, kann also einfach neu angelegt werden", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei ist NICHT vorhanden, kann also einfach neu angelegt werden", False)
Err.Clear()
'==================================================================
' create an object
@@ -638,17 +636,17 @@ Public Class ClassWindream
' MsgBox("Created file: " + endgültigerDateiname)
Else
' wenn auf die Datei zugeriffen werden konnte ist sie bereits vorhanden -> Datum anhängen
If LogErrorsOnly = False Then ClassLogger.Add(" - Es konnte zugegriffen werden -> DATEI IST BEREITS VORHANDEN", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Es konnte zugegriffen werden -> DATEI IST BEREITS VORHANDEN", False)
Err.Clear()
WMObject = Session.GetNewWMObjectFS(WMEntityDocument, endgültigerDateiname, WMObjectEditModeObject)
If Err.Number > 0 Then
ClassLogger.Add(" FEHLER: Neues WMObject (Kopie) konnte nicht erzeugt werden - Error: '" & Err.Description & "'")
'MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" - WMObject zugewiesen", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> WMObject zugewiesen", False)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" - ENDGÜLTIGER DATEINAME => " & endgültigerDateiname, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> ENDGÜLTIGER DATEINAME => " & endgültigerDateiname, False)
If WMObject IsNot Nothing Then
' lock object for file system access (to change the file itself)
WMObject.lock()
@@ -672,7 +670,7 @@ Public Class ClassWindream
Return False
'MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" - oWMStream erzeugt", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> oWMStream erzeugt", False)
' give fileIO helper object the windream stream
aFileIO.aWMStream = aWMStream
If Err.Number > 0 Then
@@ -691,7 +689,7 @@ Public Class ClassWindream
Return False
' MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" - Inhalt der Datei konnte übertragen werden", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Inhalt der Datei konnte übertragen werden", False)
' close the windream file stream
aWMStream.Close()
If Err.Number > 0 Then
@@ -710,7 +708,7 @@ Public Class ClassWindream
Return Err.Number
'MsgBox(Err.Description)
End If
If LogErrorsOnly = False Then ClassLogger.Add(" - Datei konnte gespeichert werden", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei konnte gespeichert werden", False)
' unlock the windream object
WMObject.unlock()
If Err.Number > 0 Then
@@ -723,7 +721,6 @@ Public Class ClassWindream
'DATEI GRÖSSE ERMITTELN - MANCHMAL KOMMT ES VOR DAS DATEIGRÖße 0 ist
Dim info2 As New FileInfo(vWLaufwerk & ":\" & endgültigerDateiname)
Dim length1 As Long = info2.Length
If LogErrorsOnly = False Then ClassLogger.Add(" - Length der Zieldatei: " & length1.ToString, False)
If length1 > 0 And Err.Number = 0 Then
If endgültigerDateiname.StartsWith("\") Then
If endgültigerDateiname.StartsWith("\\") Then
@@ -735,7 +732,7 @@ Public Class ClassWindream
endgültigerDateiname = "\" & endgültigerDateiname
End If
CURRENT_FILEIN_WD = vWLaufwerk & ":" & endgültigerDateiname
ClassLogger.Add(" - Datei '" & CURRENT_FILEIN_WD & "' wurde erfolgreich importiert!", False)
ClassLogger.Add(">> Datei '" & CURRENT_FILEIN_WD & "' wurde erfolgreich importiert!", False)
aktWMObject = WMObject
Return True
Else
@@ -747,7 +744,7 @@ Public Class ClassWindream
Return False
End If
Else
If LogErrorsOnly = False Then ClassLogger.Add(" - targetPath exisitiert NICHT", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> targetPath exisitiert NICHT", False)
Return False
End If
@@ -761,7 +758,7 @@ Public Class ClassWindream
''' <remarks></remarks>
Public Shared Function DateiIndexieren(ByVal WD_File As String, ByVal _Indexname As String, ByVal _Value As String)
Try
If LogErrorsOnly = False Then ClassLogger.Add(" - DateiIndexieren wurde aufgerufen", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> DateiIndexieren wurde aufgerufen", False)
' das entsprechende Attribut aus windream auslesen
Dim oAttribute = oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, _Indexname)
' den Variablentyp (String, Integer, ...) auslesen
@@ -772,7 +769,7 @@ Public Class ClassWindream
Dim WMObject As WINDREAMLib.WMObject '= CreateObject("WINDREAMLib.WMObject") 'New WINDREAMLib.WMObject
'MsgBox("DateiIndexieren:" & vbNewLine & ClassDateiimportWindream.GetWindreamDriveLetter & filenameZiel & vbNewLine & Me.selectedProfile.DokumenttypString)
' den Dokumenttyp schreiben
If LogErrorsOnly = False Then ClassLogger.Add(" ## Indexieren wird gestartet ##", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexieren wird gestartet", False)
' ein windream-Objekt der Datei anlegen
WMObject = aktWMObject 'oSession.GetWMObjectByPath(WINDREAMLib.WMEntity.WMEntityDocument, WD_File)
Try
@@ -788,9 +785,9 @@ Public Class ClassWindream
' ihr den entsprechenden Dokumenttyp zuweisen
WMObject.aObjectType = oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityObjectType, _WDObjekttyp)
' WMObject.aObjectType = Me.selectedProfile.Dokumenttyp
If LogErrorsOnly = False Then ClassLogger.Add(" - Objekttyp wird gesetzt", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Objekttyp wird gesetzt", False)
Else
If LogErrorsOnly = False Then ClassLogger.Add(" - Objekttyp war bereits gesetzt", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Objekttyp war bereits gesetzt", False)
End If
Try
@@ -806,46 +803,46 @@ Public Class ClassWindream
Catch ex As Exception
' wenn das entsperren nicht geklappt hat, dann war die Datei auch nicht gesperrt
End Try
If LogErrorsOnly = False Then ClassLogger.Add(" - Datei wurde gespeichert / Unlock wurde durchgeführt", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei wurde gespeichert / Unlock wurde durchgeführt", False)
' wenn bis hierher alles geklappt hat wurde ein Dokumenttyp übergeben
If LogErrorsOnly = False Then ClassLogger.Add(" - Objekttyp: " & _WDObjekttyp, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Objekttyp: " & _WDObjekttyp, False)
' wenn keine Werte vorhanden sind, soll wenigstens der Dokumenttyp eingetragen werden
Dim indexe As String = ""
If LogErrorsOnly = False Then ClassLogger.Add(" - Indexname: '" & _Indexname & "'", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexname: '" & _Indexname & "'", False)
Dim werte = New ArrayList
'Den Typ des Index-Feldes auslesen
'MsgBox(value.GetType.ToString)
If (GetTypeOfIndexAsIntByName(_Indexname) = WMObjectVariableValueTypeVector) Or GetTypeOfIndexAsIntByName(_Indexname) = 4097 Then
If LogErrorsOnly = False Then ClassLogger.Add(" - Es handelt sich um ein Vektor-Feld", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Es handelt sich um ein Vektor-Feld", False)
'Am 04.08.2014 aktualisiert: um zu verhindern das die vorangegangene Versionierung "Tilde-Werte" schreibt
If LogErrorsOnly = False Then ClassLogger.Add(" - Wert vor Überprüfung: " & _Value, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Wert vor Überprüfung: " & _Value, False)
_Value = CheckIndexValue(_Value)
'Ausstieg da Fehler in der Überprüfung
If _Value Is Nothing Then
Return False
End If
If LogErrorsOnly = False Then ClassLogger.Add(" - Value für Indexierung: " & _Value, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Value für Indexierung: " & _Value, False)
werte.Add(_Value)
If LogErrorsOnly = False Then ClassLogger.Add(" - Werte zu Array hinzugefügt!", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Werte zu Array hinzugefügt!", False)
Else
'Am 04.08.2014 aktualisiert: um zu verhindern das die vorangegangene Versionierung "Tilde-Werte" schreibt
If LogErrorsOnly = False Then ClassLogger.Add(" - Value vor Überprüfung: " & _Value, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Value vor Überprüfung: " & _Value, False)
_Value = CheckIndexValue(_Value)
'Ausstieg da Fehler in der Überprüfung
If _Value Is Nothing Then
Return False
End If
If LogErrorsOnly = False Then ClassLogger.Add(" - Value für Indexierung: " & _Value, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Value für Indexierung: " & _Value, False)
werte.Add(_Value)
End If
@@ -872,7 +869,37 @@ Public Class ClassWindream
Return False
End Try
End Function
Private Shared Function RunIndexing(ByVal oDocument As WMObject, ByVal Indizes() As String, ByVal aValues() As Object)
Public Shared Function File_SetBooleanIndex(ByVal _value As Boolean, ByVal _dok As WINDREAMLib.WMObject, ByVal _Indexname As String, Optional SetOType As Boolean = True)
Try
If _Indexname <> "" Then
'Überprüfen ob Boolean-Value bereits gesetzt wurde?
Dim akt_Status As Boolean = CBool(_dok.GetVariableValue(_Indexname))
If akt_Status <> _value Then
'Index muß angepasst werden
If LogErrorsOnly = False Then ClassLogger.Add(" >> Index not set to '" & _value.ToString & "'", False)
Dim arrIndex() As String = Nothing
Dim arrValue() As String = Nothing
'Nun die Datei indexieren
arrIndex = Nothing
arrValue = Nothing
ReDim Preserve arrIndex(0)
ReDim Preserve arrValue(0)
arrIndex(0) = _Indexname
arrValue(0) = _value.ToString
RunIndexing(_dok, arrIndex, arrValue, SetOType)
Else
'Validation muß nicht angepasst werden
If LogErrorsOnly = False Then ClassLogger.Add(" >> Index already set to '" & _value.ToString & "'", False)
End If
End If
Catch ex As Exception
ClassLogger.Add("Unexpected Error in File_SetBooleanIndex!")
ClassLogger.Add("Error-Description: " & ex.Message)
End Try
End Function
Private Shared Function RunIndexing(ByVal oDocument As WMObject, ByVal Indizes() As String, ByVal aValues() As Object, Optional setOType As Boolean = True)
Dim vektInsState As Integer = 1
Try
If Indizes IsNot Nothing And aValues IsNot Nothing Then
@@ -881,32 +908,33 @@ Public Class ClassWindream
Dim i As Integer = 0
Dim indexname As String
If aValues.Length = 1 And aValues(0) = "" Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexwert ist leer/Nothing - Keine Nachindexierung", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexvalue is empty - No indexing", False)
End If
' wenn der Datei noch kein Dokumenttyp zugewiesen wurde
If oDocument.aObjectType.aName <> _WDObjekttyp Then
If oDocument.aObjectType.aName <> _WDObjekttyp And setOType = True Then
' ihr den entsprechenden Dokumenttyp zuweisen
oDocument.aObjectType = oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityObjectType, _WDObjekttyp)
' WMObject.aObjectType = Me.selectedProfile.Dokumenttyp
If LogErrorsOnly = False Then ClassLogger.Add(" >> Objekttyp '" & oDocument.aObjectType.aName & "' wurde in '" & _WDObjekttyp & "' geändert.", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Objecttype '" & oDocument.aObjectType.aName & "' was changed to '" & _WDObjekttyp, False)
Else
If LogErrorsOnly = False Then ClassLogger.Add(" >> Objekttyp war bereits gesetzt", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Objecttype was set already.", False)
End If
If setOType = True Then
Try
oDocument.Save()
Catch ex As Exception
' wenn es einen Fehler beim speichern gab, dann konnte auch kein Objekttyp gesetzt werden -> es kann also auch keine
' Indexierung stattfinden und die Indexierung muss nicht fortgesetzt werden
Return False
End Try
End If
Try
oDocument.Save()
Catch ex As Exception
' wenn es einen Fehler beim speichern gab, dann konnte auch kein Dokumenttyp gesetzt werden -> es kann also auch keine
' Indexierung stattfinden und die Indexierung muss nicht fortgesetzt werden
Return False
End Try
'Jetzt jeden Indexwert durchlaufen
For Each aName As String In Indizes
indexname = aName
If LogErrorsOnly = False Then
ClassLogger.Add(" ", False)
ClassLogger.Add(" >> Indexierung von Index '" & indexname & "'", False)
ClassLogger.Add(" >> Indexing of index '" & indexname & "'", False)
End If
' das entsprechende Attribut aus windream auslesen
Dim oAttribute = oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, Indizes(i))
@@ -938,7 +966,7 @@ Public Class ClassWindream
If LogErrorsOnly = False Then ClassLogger.Add(" >> type of windreamIndex WMObjectVariableValueTypeInteger", False)
value = value.ToString.Replace(" ", "")
If IsNumeric(value) = False Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Achtung: Value '" & value & "' kann nicht in Zahl konvertiert werden!", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Attention: Value '" & value & "' can not be converted to integer!", False)
End If
value = value.ToString.Replace(" ", "")
convertValue = CInt(value)
@@ -1022,7 +1050,7 @@ Public Class ClassWindream
End Select
If vektor = False Then
If convertValue.ToString Is Nothing = False Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Konvertierter Wert: '" & convertValue.ToString & "'", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Converted valuet: '" & convertValue.ToString & "'", False)
End If
End If
'############################################################################################
@@ -1031,7 +1059,7 @@ Public Class ClassWindream
If vektor = False Then
Try
If convertValue.ToString Is Nothing = False Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch dem Dok einen Index zuzuweisen: oDocument.SetVariableValue(" & aName & ", " & convertValue & ")", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Now: oDocument.SetVariableValue(" & aName & ", " & convertValue & ")", False)
If _int = True Then
convertValue = convertValue.ToString.Replace(" ", "")
oDocument.SetVariableValue(aName, CInt(convertValue))
@@ -1048,11 +1076,11 @@ Public Class ClassWindream
'Die Datei speichern
oDocument.Save()
If LogErrorsOnly = False Then
ClassLogger.Add(" >> Index '" & aName & "' wurde geschrieben", False)
ClassLogger.Add(" >> index '" & aName & "' was written", False)
ClassLogger.Add("", False)
End If
Else
ClassLogger.Add(" >> Kein Indexwert vorhanden", False)
ClassLogger.Add(" >> No indexvalue exists", False)
End If
Catch ex As Exception
ClassLogger.Add("Unexpected Error in SetVariableValue für Index '" & aName & "': " & ex.Message, True)
@@ -1060,7 +1088,7 @@ Public Class ClassWindream
oDocument.unlock()
Return False
End Try
Else
'VEKTORFELDER, ALSO ÜBERPRÜFEN OB ERGEBNIS-ARRAY GEFÜLLT IST
If LogErrorsOnly = False Then ClassLogger.Add(" >> Vectorfield: Preparing of Array", False)
@@ -1074,7 +1102,7 @@ Public Class ClassWindream
Dim Anzahl As Integer = aValues.Length
'Vektorfeld wird mit EINEM Wert gefüllt
If Anzahl = 0 Then
If LogErrorsOnly = False Then ClassLogger.Add(" >> Vectorfield willl be filled with ONE VALUE", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Vectorfield will be filled with ONE VALUE", False)
ReDim myArray(0)
Select Case vType
Case 36865
@@ -1238,19 +1266,18 @@ Public Class ClassWindream
End If
Else
If LogErrorsOnly = False Then ClassLogger.Add(" >> Array der Indexwerte ist leer/Nothing - Keine Nachindexierung", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Array of indexvalues is nothing - No indexing", False)
End If
i += 1
Next
oDocument.unlock()
If LogErrorsOnly = False Then
ClassLogger.Add(">> ...und Unlock durchgeführt)", False)
ClassLogger.Add("", False)
ClassLogger.Add(" >> ...and unlock.", False)
End If
Return True
Else
ClassLogger.Add(" >> Dokument ist gesperrt, Indexierung erst im nächsten Durchlauf!", False)
ClassLogger.Add(" >> document is locked!", False)
'oDocument.unlock()
Return False
End If
@@ -1364,7 +1391,7 @@ Public Class ClassWindream
''' <returns>Liefert True wenn das Indexieren erfolgreich war, sonst False</returns>
''' <remarks></remarks>
Private Shared Function Indexiere(ByVal filenameZiel As String, ByVal index As String, ByVal werte As Object)
If LogErrorsOnly = False Then ClassLogger.Add(" - In Indexierungsvorgang für: " & filenameZiel, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> In Indexierungsvorgang für: " & filenameZiel, False)
Try
Dim WMObject As WINDREAMLib.WMObject = Nothing '= CreateObject("WINDREAMLib.WMObject") '= New WINDREAMLib.WMObject 'CreateObject("WINDREAMLib.WMObject")
'MsgBox("Indexiere: " & vbNewLine & filenameZiel)
@@ -1450,7 +1477,7 @@ Public Class ClassWindream
' wenn es sich bei dem Index NICHT um ein Vektorfeld handelt
If TypDesIndexes < WMObjectVariableValueTypeVector Then
If LogErrorsOnly = False Then ClassLogger.Add(" - Bei dem Zielindex handelt es sich um einen Einzelindex.", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Bei dem Zielindex handelt es sich um einen Einzelindex.", False)
Else
If LogErrorsOnly = False Then ClassLogger.Add(" Bei dem Zielindex handelt es sich um ein Vektorfeld.", False)
' ein Backup der Indexwerte anlegen
@@ -1460,7 +1487,7 @@ Public Class ClassWindream
' dann soll nur der letzte Wert des Arrays übernommen werden, damit nicht versucht wird ein
' Array in einen Einzelindex zu speichern
werte = temp
If LogErrorsOnly = False Then ClassLogger.Add(" - Array geleert und erneuert!", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Array geleert und erneuert!", False)
End If
Catch ex As Exception
ClassLogger.Add("Hinweis: Beim Initialisieren der Datei auf dem windream-Laufwerk ist ein Fehler aufgetreten.", False)
@@ -1470,7 +1497,7 @@ Public Class ClassWindream
'Try
' den Typ des Zielindexes
If LogErrorsOnly = False Then ClassLogger.Add(" - Typ des Indexes: " & TypDesIndexes.ToString, False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Typ des Indexes: " & TypDesIndexes.ToString, False)
Select Case (TypDesIndexes)
Case WMObjectVariableValueTypeUndefined ' zu klären !!!!
'convertValue = vbEmpty
@@ -1688,13 +1715,13 @@ Public Class ClassWindream
' die Indexinformationen des Dokuments speichern
WMObject.Save()
If LogErrorsOnly = False Then ClassLogger.Add(" - die Indexinformationen des Dokuments speichern", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> die Indexinformationen des Dokuments speichern", False)
' Unlock in einem unbehandelten Try-Block um Fehler abzufangen,
' wenn eine Datei nicht gesperrt ist
Try
' die Sperrung des Dokuments aufheben
WMObject.unlock()
If LogErrorsOnly = False Then ClassLogger.Add(" - die Sperrung des Dokuments aufheben", False)
If LogErrorsOnly = False Then ClassLogger.Add(" >> die Sperrung des Dokuments aufheben", False)
Catch ex As Exception
' nichts tun (Datei war nicht gesperrt)
End Try