MS2909
This commit is contained in:
@@ -344,16 +344,16 @@ Public Class frmIndex
|
||||
For Each DR In DT.Rows
|
||||
If DR.Item("INDEXNAME").ToString.ToLower = indexname.ToLower Then
|
||||
If DR.Item("Indexiert") = True Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Manueller Index: " & indexname, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >>Manueller Index: " & indexname, False)
|
||||
Select Case RequestFor
|
||||
Case "FILE"
|
||||
If DR.Item("Indexwert_File").ToString <> String.Empty Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Es liegt ein separater nachbearbeiteter Wert für die Dateibenennung vor: " & DR.Item("Indexwert_File").ToString, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Zurückgegebener NachbearbeitungsWert: " & DR.Item("Indexwert_File"), False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >>Es liegt ein separater nachbearbeiteter Wert für die Dateibenennung vor: " & DR.Item("Indexwert_File").ToString, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >>Zurückgegebener NachbearbeitungsWert: " & DR.Item("Indexwert_File"), False)
|
||||
Return DR.Item("Indexwert_File")
|
||||
Else
|
||||
If DR.Item("Indexwert").ToString <> String.Empty Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Zurückgegebener manueller Indexwert: " & DR.Item("Indexwert"), False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >>Zurückgegebener manueller Indexwert: " & DR.Item("Indexwert"), False)
|
||||
Console.WriteLine("Rückgabe manueller wert: " & DR.Item("Indexwert"))
|
||||
Return DR.Item("Indexwert")
|
||||
Else
|
||||
@@ -367,7 +367,7 @@ Public Class frmIndex
|
||||
End If
|
||||
Case Else
|
||||
If DR.Item("Indexwert").ToString <> String.Empty Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Zurückgegebener manueller Indexwert: " & DR.Item("Indexwert"), False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >>Zurückgegebener manueller Indexwert: " & DR.Item("Indexwert"), False)
|
||||
Return DR.Item("Indexwert")
|
||||
Else
|
||||
Dim optional_index As Boolean = ClassDatabase.Execute_Scalar("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & CURRENT_DOKART_ID & " AND UPPER(NAME) = UPPER('" & indexname & "')", MyConnectionString, True)
|
||||
@@ -433,7 +433,7 @@ Public Class frmIndex
|
||||
End If
|
||||
|
||||
If LogErrorsOnly = False Then
|
||||
ClassLogger.Add(" ...SQL-ConnectionString: " & connectionString.Substring(0, connectionString.LastIndexOf("=")), False)
|
||||
ClassLogger.Add(" >>SQL-ConnectionString: " & connectionString.Substring(0, connectionString.LastIndexOf("=")), False)
|
||||
End If
|
||||
|
||||
If ergebnis Is Nothing Then
|
||||
@@ -489,7 +489,7 @@ Public Class frmIndex
|
||||
End If
|
||||
Else
|
||||
runinLZ = True
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...sql enthält Platzhalter und wird erst während der Laufzeit gefüllt!", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >>sql enthält Platzhalter und wird erst während der Laufzeit gefüllt!", False)
|
||||
End If
|
||||
|
||||
|
||||
@@ -673,7 +673,7 @@ Public Class frmIndex
|
||||
Function CheckWrite_IndexeMan(dokartid As Integer)
|
||||
'#### Zuerst manuelle Werte indexieren ####
|
||||
Try
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...In CheckWrite_IndexeMan", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >>In CheckWrite_IndexeMan", False)
|
||||
Dim result As Boolean = False
|
||||
For Each ctrl As Control In Me.pnlIndex.Controls
|
||||
' ' MsgBox(ctrl.Name)
|
||||
@@ -859,7 +859,7 @@ Public Class frmIndex
|
||||
Select Case element.Value.Substring(2, 1).ToUpper
|
||||
'Manueller Indexwert
|
||||
Case "M"
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Manueller Index wird geprüft...", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >>Manueller Index wird geprüft...", False)
|
||||
Dim Indexname = element.Value.Substring(3, element.Value.Length - 4)
|
||||
Dim value As String = GetManIndex_Value(element.Value.Substring(3, element.Value.Length - 4), "FILE")
|
||||
If value <> String.Empty Then
|
||||
@@ -1012,7 +1012,7 @@ Public Class frmIndex
|
||||
|
||||
|
||||
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Manueller Indexvalue: " & idxvalue.ToString, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Manueller Indexvalue: " & idxvalue.ToString, False)
|
||||
Count += 1
|
||||
indexierung_erfolgreich = ClassWindream.DateiIndexieren(CURRENT_NEWFILENAME, indexname, idxvalue)
|
||||
If indexierung_erfolgreich = False Then
|
||||
@@ -1032,8 +1032,8 @@ Public Class frmIndex
|
||||
If CBool(row.Item("Indexiert")) = True And row.Item("Indexwert").ToString <> "" Then
|
||||
Dim indexname = row.Item("INDEXNAME").ToString
|
||||
Dim idxvalue = row.Item("Indexwert")
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Auto Indexvalue: " & idxvalue.ToString, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Indexvalue: " & idxvalue.ToString, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Auto Indexvalue: " & idxvalue.ToString, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexvalue: " & idxvalue.ToString, False)
|
||||
Count += 1
|
||||
indexierung_erfolgreich = ClassWindream.DateiIndexieren(CURRENT_NEWFILENAME, indexname, idxvalue)
|
||||
If indexierung_erfolgreich = False Then
|
||||
@@ -1068,7 +1068,7 @@ Public Class frmIndex
|
||||
End Function
|
||||
Private Function WriteIndex2File(indexname As String, indexvalue As String)
|
||||
Try
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Indexvalue: " & indexvalue.ToString, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexvalue: " & indexvalue.ToString, False)
|
||||
Return ClassWindream.DateiIndexieren(CURRENT_NEWFILENAME, indexname, indexvalue)
|
||||
Catch ex As Exception
|
||||
MsgBox("Error in WriteIndex2File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
||||
@@ -1095,6 +1095,8 @@ Public Class frmIndex
|
||||
|
||||
Dim DT As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM TBGI_OBJECTTYPE_EMAIL_INDEX WHERE OBJECTTYPE = '" & ClassWindream._WDObjekttyp & "'")
|
||||
If DT.Rows.Count = 1 Then
|
||||
CURRENT_MESSAGEDATE = ""
|
||||
CURRENT_MESSAGESUBJECT = ""
|
||||
'Message-ID nur auswerten wenn vorher nicht gestzt wurde!
|
||||
If CURRENT_MESSAGEID = "" Then
|
||||
If Not msg.InternetMessageId Is Nothing Then
|
||||
@@ -1143,8 +1145,8 @@ Public Class frmIndex
|
||||
End If
|
||||
|
||||
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...emailFrom: " & emailFrom, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...emailTo: " & emailTo, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> emailFrom: " & emailFrom, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> emailTo: " & emailTo, False)
|
||||
'FROM
|
||||
If Not IsNothing(emailFrom) Then
|
||||
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_FROM").ToString, emailFrom)
|
||||
@@ -1163,13 +1165,14 @@ Public Class frmIndex
|
||||
End If
|
||||
|
||||
' Dim subj As String = ClassFormFunctions.CleanInput(msg.Subject)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...subj: " & msg.Subject, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> subj: " & msg.Subject, False)
|
||||
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_SUBJECT").ToString, msg.Subject)
|
||||
CURRENT_MESSAGESUBJECT = msg.Subject
|
||||
If indexierung_erfolgreich = False Then
|
||||
MsgBox("Error in SetEmailIndices-Subject - See log", MsgBoxStyle.Critical)
|
||||
Return False
|
||||
End If
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...MessageDeliveryTime: " & msg.MessageDeliveryTime, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> MessageDeliveryTime: " & msg.MessageDeliveryTime, False)
|
||||
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_DATE_IN").ToString, msg.MessageDeliveryTime)
|
||||
CURRENT_MESSAGEDATE = msg.MessageDeliveryTime
|
||||
If indexierung_erfolgreich = False Then
|
||||
@@ -1195,40 +1198,36 @@ Public Class frmIndex
|
||||
Try
|
||||
Dim DT As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM TBGI_OBJECTTYPE_EMAIL_INDEX WHERE OBJECTTYPE = '" & ClassWindream._WDObjekttyp & "'")
|
||||
If DT.Rows.Count = 1 Then
|
||||
|
||||
If Not CURRENT_MESSAGEID Is Nothing Then
|
||||
If CURRENT_MESSAGEID <> "" Then
|
||||
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_ID").ToString, CURRENT_MESSAGEID)
|
||||
If indexierung_erfolgreich = False Then
|
||||
MsgBox("Error in SetAttachmentIndices - See log", MsgBoxStyle.Critical)
|
||||
MsgBox("Error in SetAttachmentIndices MESSAGE-ID - See log", MsgBoxStyle.Critical)
|
||||
Return False
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
'indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_FROM").ToString, msg.SenderEmailAddress)
|
||||
'If indexierung_erfolgreich = False Then
|
||||
' MsgBox("Error in SetAttachmentIndices - See log", MsgBoxStyle.Critical)
|
||||
' Return False
|
||||
'End If
|
||||
'indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_TO").ToString, msg.ReceivedByEmailAddress)
|
||||
'If indexierung_erfolgreich = False Then
|
||||
' MsgBox("Error in SetAttachmentIndices - See log", MsgBoxStyle.Critical)
|
||||
' Return False
|
||||
'End If
|
||||
'indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_SUBJECT").ToString, msg.Subject)
|
||||
'If indexierung_erfolgreich = False Then
|
||||
' MsgBox("Error in SetAttachmentIndices - See log", MsgBoxStyle.Critical)
|
||||
' Return False
|
||||
'End If
|
||||
If CURRENT_MESSAGEDATE <> "" Then
|
||||
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_DATE_IN").ToString, CURRENT_MESSAGEDATE)
|
||||
'Das Subject speichern
|
||||
If CURRENT_MESSAGESUBJECT <> "" Then
|
||||
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_SUBJECT").ToString, CURRENT_MESSAGESUBJECT)
|
||||
If indexierung_erfolgreich = False Then
|
||||
MsgBox("Error in SetAttachmentIndices - See log", MsgBoxStyle.Critical)
|
||||
MsgBox("Error in SetAttachmentIndices SUBJECT - See log", MsgBoxStyle.Critical)
|
||||
Return False
|
||||
End If
|
||||
End If
|
||||
'Das MesageDate speichern
|
||||
If CURRENT_MESSAGEDATE <> "" Then
|
||||
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_EMAIL_DATE_IN").ToString, CURRENT_MESSAGEDATE)
|
||||
If indexierung_erfolgreich = False Then
|
||||
MsgBox("Error in SetAttachmentIndices DATE - See log", MsgBoxStyle.Critical)
|
||||
Return False
|
||||
End If
|
||||
End If
|
||||
'Kennzeichnen das es ein Anhang war!
|
||||
indexierung_erfolgreich = WriteIndex2File(DT.Rows(0).Item("IDX_CHECK_ATTACHMENT").ToString, True)
|
||||
If indexierung_erfolgreich = False Then
|
||||
MsgBox("Error in SetAttachmentIndices - See log", MsgBoxStyle.Critical)
|
||||
MsgBox("Error in SetAttachmentIndices ATTACHMENT Y/N - See log", MsgBoxStyle.Critical)
|
||||
Return False
|
||||
End If
|
||||
Return indexierung_erfolgreich
|
||||
@@ -1318,9 +1317,10 @@ Public Class frmIndex
|
||||
|
||||
End Sub
|
||||
Sub CloseUniversalViewer()
|
||||
If Not CURRENT_WORKFILE.EndsWith("msg") Then
|
||||
Dim workfile = CURRENT_WORKFILE.ToLower
|
||||
If Not workfile.EndsWith("msg") Then
|
||||
CURRENT_HTML_DOC = ""
|
||||
If CURRENT_WORKFILE.EndsWith("pdf") Then
|
||||
If workfile.EndsWith("pdf") Then
|
||||
Me.PdfViewer1.DocumentFilePath = ""
|
||||
My.Settings.SplitterDistance_Viewer = SplitContainer1.SplitterDistance
|
||||
Else
|
||||
@@ -1332,6 +1332,14 @@ Public Class frmIndex
|
||||
|
||||
Else
|
||||
My.Settings.SplitterDistance_Viewer = SplitContainer1.SplitterDistance
|
||||
Try
|
||||
If File.Exists(CURRENT_HTML_DOC) Then
|
||||
File.Delete(CURRENT_HTML_DOC)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
ClassLogger.Add(" - Fehler bei Delete HTML-Doc - Fehler: " & vbNewLine & ex.Message)
|
||||
End Try
|
||||
|
||||
End If
|
||||
My.Settings.Save()
|
||||
|
||||
@@ -1353,10 +1361,10 @@ Public Class frmIndex
|
||||
ElseIf DropType = "@OUTLOOK_MESSAGE@" Or DropType = "@FW_MSGONLY@" Then
|
||||
Select Case DropType
|
||||
Case "@FW_MSGONLY@"
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ....msg-file from folderwatch", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> .msg-file from folderwatch", False)
|
||||
Me.Text = "Indexierung der msg-Datei (ohne Anhang) - aus Folderwatch:"
|
||||
Case "@OUTLOOK_MESSAGE@"
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ....msg-file through dragdrop", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> .msg-file through dragdrop", False)
|
||||
Me.Text = "Indexierung der msg-Datei (ohne Anhang):"
|
||||
End Select
|
||||
|
||||
@@ -1553,7 +1561,7 @@ Public Class frmIndex
|
||||
' MsgBox(DT.Rows.Count.ToString)
|
||||
For Each DR_AUTOINDEX As DataRow In DT_INDEXAUTOM.Rows
|
||||
Dim indexname As String = DR_AUTOINDEX.Item("INDEXNAME")
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Build Automatischer Index '" & indexname & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Build Automatischer Index '" & indexname & "'", False)
|
||||
If DR_AUTOINDEX.Item("SQL_RESULT").ToString <> String.Empty And CBool(DR_AUTOINDEX.Item("SQL_ACTIVE")) = True Then
|
||||
' Regulären Ausdruck zum Auslesen der windream-Indexe definieren
|
||||
Dim preg As String = "\[%{1}[a-zA-Z0-9\!\$\&\/\(\)\=\?\,\.\-\;\:_öÖüÜäÄ\#\'\+\*\~\{\}\@\€\<\>\ ]+]{1}"
|
||||
@@ -1566,26 +1574,26 @@ Public Class frmIndex
|
||||
' alle Vorkommen der Indexe im SQL-String durchlaufen
|
||||
For Each element As System.Text.RegularExpressions.Match In elemente
|
||||
' MsgBox(element.Value.ToUpper)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Element: '" & element.Value & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Element: '" & element.Value & "'", False)
|
||||
'' wenn es sich nicht um dedizeirte Werte handelt (es sollen ja nur die Indexe ausgelesen werden)
|
||||
'If Not element.Value.ToUpper = "[%SPALTE]" And Not element.Value.ToUpper = "[%VIEW]" Then
|
||||
'die Zeichen [% und ] entfernen (liefert den wirklichen windream-Index)
|
||||
Dim elementOhneSonderzeichen As String = element.Value.Substring(2, element.Value.Length - 3)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...elementOhneSonderzeichen: '" & elementOhneSonderzeichen & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> elementOhneSonderzeichen: '" & elementOhneSonderzeichen & "'", False)
|
||||
'den Platzhalter im SQL-String durch den Wert ersetzen
|
||||
Dim manIndexwert As String = GetManIndex_Value(elementOhneSonderzeichen, "IDX_AUTO")
|
||||
If manIndexwert <> "" Then
|
||||
SqlString = SqlString.Replace(element.Value, manIndexwert)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...zusammengesetzter SQL-String: " & SqlString, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> zusammengesetzter SQL-String: " & SqlString, False)
|
||||
Else
|
||||
ClassLogger.Add(" - ACHTUNG: manIndexwert = String.Empty - Funktion: FillIndexe_Autom", False)
|
||||
Return False
|
||||
End If
|
||||
Next
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Ausführen SQL....", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Ausführen SQL....", False)
|
||||
Dim automatischerValue As String = ""
|
||||
automatischerValue = Get_AutomatischerIndex_SQL(SqlString, DR_AUTOINDEX.Item("CONNECTION_ID"), DR_AUTOINDEX.Item("SQL_PROVIDER"))
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Ergebnis SQL: '" & automatischerValue & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Ergebnis SQL: '" & automatischerValue & "'", False)
|
||||
If automatischerValue <> String.Empty Then
|
||||
DR_AUTOINDEX.Item("Indexiert") = True
|
||||
DR_AUTOINDEX.Item("Indexwert") = automatischerValue
|
||||
@@ -1600,7 +1608,7 @@ Public Class frmIndex
|
||||
Dim DEFAULTVALUE As String = DR_AUTOINDEX.Item("VALUE")
|
||||
'Indexierung mit WindowsVariable
|
||||
If DEFAULTVALUE.StartsWith("$") Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Indexierung mit einer Windowsvariable: '" & DEFAULTVALUE & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexierung mit einer Windowsvariable: '" & DEFAULTVALUE & "'", False)
|
||||
Select Case DEFAULTVALUE.ToUpper
|
||||
Case "$filename_ext".ToUpper
|
||||
DEFAULTVALUE = Path.GetFileName(CURRENT_WORKFILE)
|
||||
@@ -1619,9 +1627,9 @@ Public Class frmIndex
|
||||
Case "$DateDDMMYYY".ToUpper
|
||||
DEFAULTVALUE = System.DateTime.Now.ToShortDateString
|
||||
End Select
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Ergebnis der Windowsvariable: '" & DEFAULTVALUE & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Ergebnis der Windowsvariable: '" & DEFAULTVALUE & "'", False)
|
||||
Else
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Indexierung mit einem Festen Wert: '" & DEFAULTVALUE & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexierung mit einem Festen Wert: '" & DEFAULTVALUE & "'", False)
|
||||
End If
|
||||
'Den Wert in der Zwischentabelle speichern
|
||||
DR_AUTOINDEX.Item("Indexiert") = True
|
||||
@@ -1653,9 +1661,10 @@ Public Class frmIndex
|
||||
Me.grpBetreff.Visible = False
|
||||
Me.pnlPDF.Visible = False
|
||||
CURRENT_HTML_DOC = ""
|
||||
If Not CURRENT_WORKFILE.EndsWith("msg") Then
|
||||
Dim workfile As String = CURRENT_WORKFILE.ToLower
|
||||
If Not workfile.EndsWith("msg") Then
|
||||
CURRENT_HTML_DOC = ""
|
||||
If CURRENT_WORKFILE.EndsWith("pdf") Then
|
||||
If workfile.EndsWith("pdf") Then
|
||||
Me.SplitContainer1.Panel2Collapsed = False
|
||||
PdfViewer1.LoadDocument(CURRENT_WORKFILE)
|
||||
pnlPDF.Dock = DockStyle.Fill
|
||||
@@ -1695,35 +1704,41 @@ Public Class frmIndex
|
||||
End If
|
||||
|
||||
Else
|
||||
Me.grpBetreff.Dock = DockStyle.Top
|
||||
Me.grpbxMailBody.Dock = DockStyle.Fill
|
||||
Dim msg_email As New Msg.Message(CURRENT_WORKFILE)
|
||||
'Eine tempfile generieren
|
||||
Dim tempFilename = My.Computer.FileSystem.GetTempFileName()
|
||||
Dim name = Path.GetFileNameWithoutExtension(tempFilename)
|
||||
tempFilename = Path.Combine(Path.GetDirectoryName(tempFilename), name & ".html")
|
||||
'tempfile löschen
|
||||
If My.Computer.FileSystem.FileExists(tempFilename) Then
|
||||
My.Computer.FileSystem.DeleteFile(tempFilename)
|
||||
End If
|
||||
Try
|
||||
Me.grpBetreff.Dock = DockStyle.Top
|
||||
Me.grpbxMailBody.Dock = DockStyle.Fill
|
||||
Dim msg_email As New Msg.Message(CURRENT_WORKFILE)
|
||||
'Eine tempfile generieren
|
||||
Dim name = Path.GetFileNameWithoutExtension(tempFilename)
|
||||
tempFilename = Path.Combine(Path.GetDirectoryName(tempFilename), name & ".html")
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...tempFilename: " & tempFilename, False)
|
||||
'tempfile löschen
|
||||
If My.Computer.FileSystem.FileExists(tempFilename) Then
|
||||
My.Computer.FileSystem.DeleteFile(tempFilename)
|
||||
End If
|
||||
|
||||
Me.txtBetreff.Text = msg_email.Subject
|
||||
'Try
|
||||
Dim wFile As System.IO.FileStream
|
||||
Dim byteData() As Byte
|
||||
byteData = msg_email.BodyHtml
|
||||
Me.txtBetreff.Text = msg_email.Subject
|
||||
'Try
|
||||
Dim wFile As System.IO.FileStream
|
||||
Dim byteData() As Byte
|
||||
byteData = msg_email.BodyHtml
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...byteData HTML finished", False)
|
||||
' MsgBox(msg_email.InternetCodePage)
|
||||
' wFile = New FileStream(tempFilename, FileMode.Append)
|
||||
' wFile.Write(byteData, 0, byteData.Length)
|
||||
' wFile.Close()
|
||||
'Catch ex As IOException
|
||||
' MsgBox(ex.ToString)
|
||||
'End Try
|
||||
|
||||
' MsgBox(msg_email.InternetCodePage)
|
||||
' wFile = New FileStream(tempFilename, FileMode.Append)
|
||||
' wFile.Write(byteData, 0, byteData.Length)
|
||||
' wFile.Close()
|
||||
'Catch ex As IOException
|
||||
' MsgBox(ex.ToString)
|
||||
'End Try
|
||||
|
||||
Dim vIn() As Byte = msg_email.BodyHtml
|
||||
Dim vOut As String = System.Text.Encoding.UTF8.GetString(vIn)
|
||||
File.WriteAllText(tempFilename, vOut, System.Text.Encoding.UTF8)
|
||||
Dim vIn() As Byte = msg_email.BodyHtml
|
||||
Dim vOut As String = System.Text.Encoding.UTF8.GetString(vIn)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...byteData finished. Now write to file", False)
|
||||
File.WriteAllText(tempFilename, vOut, System.Text.Encoding.UTF8)
|
||||
Catch ex As Exception
|
||||
MsgBox("Unerwarteter Fehler bei getHTML from Email: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
||||
End Try
|
||||
|
||||
CURRENT_HTML_DOC = tempFilename
|
||||
Me.tslblWebbrowser.Text = CURRENT_HTML_DOC
|
||||
@@ -1773,20 +1788,24 @@ Public Class frmIndex
|
||||
Private Function WORK_FILE()
|
||||
Try
|
||||
Me.VWDDINDEX_MANTableAdapter.Fill(Me.MyDataset.VWDDINDEX_MAN, CURRENT_DOKART_ID)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Manuelle Indexe geladen", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Manuelle Indexe geladen", False)
|
||||
|
||||
If MyDataset.VWDDINDEX_MAN.Rows.Count > 0 Then
|
||||
CURRENT_DOKART_ID = Me.cmbDokumentart.SelectedValue
|
||||
If CheckWrite_IndexeMan(Me.cmbDokumentart.SelectedValue) = True Then
|
||||
'##### Manuelle Indexe indexiert #####
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Datei " & CURRENT_WORKFILE & " wird nun indexiert...", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Datei " & CURRENT_WORKFILE & " wird nun indexiert...", False)
|
||||
If FillIndexe_Autom(Me.cmbDokumentart.SelectedValue) = True Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...FillIndexe_Autom durchlaufen", False)
|
||||
'Den Zielnamen zusammenbauen
|
||||
If Name_Generieren() = True Then
|
||||
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Name_Generieren durchlaufen", False)
|
||||
'Dokumentenviewer ausblenden
|
||||
CloseUniversalViewer()
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Viewer geschlossen", False)
|
||||
'Die Datei verschieben
|
||||
If Move_File2_Target() = True Then
|
||||
CloseUniversalViewer()
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Move_File2_Target durchlaufen", False)
|
||||
'Die Originaldatei löschen
|
||||
If DropType = "@DROPFROMFSYSTEM@" Then
|
||||
If chkdelete_origin.Checked = True Then
|
||||
@@ -1892,7 +1911,7 @@ Public Class frmIndex
|
||||
exp2WD = SINGLEFILE_2_WINDREAM(CURR_DOKART_OBJECTTYPE)
|
||||
End If
|
||||
If exp2WD = True Then
|
||||
'Prüfen ob Sessiond a ist - wenn nicht nochmal neu initiieren
|
||||
'Prüfen ob Session da ist - wenn nicht nochmal neu initiieren
|
||||
If ClassWindream.oSession Is Nothing Then
|
||||
ClassWindream.Init()
|
||||
End If
|
||||
@@ -1998,24 +2017,24 @@ Public Class frmIndex
|
||||
'####
|
||||
' alle Vorkommen innerhalb des Ordnerstrings durchlaufen
|
||||
For Each element As System.Text.RegularExpressions.Match In elemente
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Elementname in FolderString: '" & element.ToString & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Elementname in FolderString: '" & element.ToString & "'", False)
|
||||
Select Case element.Value.Substring(2, 1).ToUpper
|
||||
'Manueller Indexwert
|
||||
Case "M"
|
||||
Dim ManIndexname = element.Value.Substring(3, element.Value.Length - 4)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Versuch den Indexwert aus '" & ManIndexname & "' auszulesen.", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch den Indexwert aus '" & ManIndexname & "' auszulesen.", False)
|
||||
Dim ManIndex_Value As String = GetManIndex_Value(ManIndexname, "FILE")
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Ergebnis/Wert für neuen Ordner: '" & ManIndexname & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Ergebnis/Wert für neuen Ordner: '" & ManIndexname & "'", False)
|
||||
If Not ManIndex_Value = String.Empty Then
|
||||
If IsDate(ManIndex_Value) Then
|
||||
ManIndex_Value = CDate(ManIndex_Value).ToString("yyyyMMdd")
|
||||
End If
|
||||
folderindex = folderindex.Replace(element.ToString, ManIndex_Value)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...FolderPattern: '" & folderindex & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> FolderPattern: '" & folderindex & "'", False)
|
||||
Else
|
||||
Dim optional_index As Boolean = ClassDatabase.Execute_Scalar("SELECT OPTIONAL FROM TBDD_INDEX_MAN WHERE DOK_ID = " & CURRENT_DOKART_ID & " AND UPPER(NAME) = UPPER('" & ManIndexname & "')", MyConnectionString, True)
|
||||
If optional_index = True Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Optionaler Indexwert ist NICHT gefüllt", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Optionaler Indexwert ist NICHT gefüllt", False)
|
||||
Else
|
||||
ClassLogger.Add(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!", True)
|
||||
Return True
|
||||
@@ -2023,12 +2042,12 @@ Public Class frmIndex
|
||||
End If
|
||||
Case "A"
|
||||
Dim AutoIndexname = element.Value.Substring(3, element.Value.Length - 4)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Versuch den Auto-Indexwert aus '" & AutoIndexname & "' auszulesen.", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Versuch den Auto-Indexwert aus '" & AutoIndexname & "' auszulesen.", False)
|
||||
Dim AutoIndex_Value As String = GetAutoIndex_Value(AutoIndexname)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Ergebnis/Wert für neuen Ordner: '" & AutoIndexname & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Ergebnis/Wert für neuen Ordner: '" & AutoIndexname & "'", False)
|
||||
If Not AutoIndex_Value = String.Empty Then
|
||||
folderindex = folderindex.Replace(element.ToString, AutoIndex_Value)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...FolderPattern: '" & folderindex & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> FolderPattern: '" & folderindex & "'", False)
|
||||
Else
|
||||
ClassLogger.Add(" - Achtung Ausnahme in 'CrFolderForIndex': der Index ist leer!", True)
|
||||
End If
|
||||
@@ -2054,7 +2073,7 @@ Public Class frmIndex
|
||||
folder_temp = My.Computer.Clock.LocalTime.Year & "-" & _Month
|
||||
End Select
|
||||
folderindex = folderindex.Replace(element.ToString, folder_temp)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...FolderPatter nach V-Element: '" & folderindex & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> FolderPatter nach V-Element: '" & folderindex & "'", False)
|
||||
Case Else
|
||||
ClassLogger.Add(" - Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & element.Value.ToUpper)
|
||||
MsgBox("Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & element.Value.ToUpper, MsgBoxStyle.Exclamation, "Fehler bei Name generieren:")
|
||||
@@ -2137,10 +2156,10 @@ Public Class frmIndex
|
||||
'Next
|
||||
|
||||
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Den Root-Folder zusammenfügen...", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Den Root-Folder zusammenfügen>> ", False)
|
||||
Dim fullpath As String = RootFolder & "\" & folderindex & "\"
|
||||
fullpath.Replace("\\", "\")
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Fullpath (mit evtl. Sonderzeichen (SZ)) '" & fullpath & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Fullpath (mit evtl. Sonderzeichen (SZ)) '" & fullpath & "'", False)
|
||||
Dim invalidPathChars() As Char = Path.GetInvalidPathChars()
|
||||
For Each sonderChar As Char In invalidPathChars
|
||||
'Sonderzeichen ausser Whitespace entfernen
|
||||
@@ -2150,10 +2169,10 @@ Public Class frmIndex
|
||||
End If
|
||||
End If
|
||||
Next sonderChar
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Fullpath (ohne SZ) '" & fullpath & "'", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Fullpath (ohne SZ) '" & fullpath & "'", False)
|
||||
If Directory.Exists(fullpath) = False Then
|
||||
Directory.CreateDirectory(fullpath)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Folder '" & fullpath & "' wurde angelegt", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Folder '" & fullpath & "' wurde angelegt", False)
|
||||
End If
|
||||
|
||||
'Die aktuelle Datei soll gleichzeitig verschoben werden
|
||||
@@ -2161,13 +2180,13 @@ Public Class frmIndex
|
||||
Dim Dateiname As String = Path.GetFileName(fullfilename)
|
||||
Dim _Pfad, _WDLaufwerk, _Ziel As String
|
||||
_Ziel = fullpath & Dateiname
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Ziel: " & _Ziel, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Ziel: " & _Ziel, False)
|
||||
'Nur verschieben und überprüfen wenn Pfad ungleich
|
||||
If Path.GetDirectoryName(fullfilename) <> Path.GetDirectoryName(_Ziel) Then
|
||||
Dim Stammname As String = _Ziel.Substring(0, _Ziel.LastIndexOf("."))
|
||||
Dim version As Integer = 2
|
||||
Do While File.Exists(_Ziel) = True
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" ...Achtung: Datei ' " & Path.GetFileName(_Ziel) & "' existiert bereits!", False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Achtung: Datei ' " & Path.GetFileName(_Ziel) & "' existiert bereits!", False)
|
||||
Dim neuername As String = Stammname & "~" & version & extension
|
||||
_Ziel = neuername
|
||||
version = version + 1
|
||||
|
||||
Reference in New Issue
Block a user