This commit is contained in:
SchreiberM 2020-12-30 14:11:04 +01:00
parent 5959f3dfe9
commit e1a2005d8a
8 changed files with 257 additions and 149 deletions

View File

@ -455,6 +455,9 @@ Public Class ClassNIWindream
' _Logger.Debug("Typ des windream-Indexes: 36865 Vektor alphanumerisch")
'Vektor Kommazahl
vektor = True
Case 8193
_Logger.Debug("Typ des WMIndexes: manuellerVolltext")
convertValue = CStr(value)
Case Else
_Logger.Warn("Typ des windream-Indexes konnte nicht bestimmt werden!")
_Logger.Debug("Versuch des Auslesens (vType): " & vType)

View File

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

View File

@ -1998,7 +1998,17 @@ Public Class frmDIHauptseite
End If
Case WMObjectVariableValueTypeInteger
convertValue = CInt(werte)
Try
convertValue = CInt(werte)
Catch ex As Exception
ClassLoggerDI.Add("Convert value to integer", $"Error while converting value [{werte}] to integer", ex)
indexInfos.Add($"Error while converting value [{werte}] to integer")
Return indexInfos
End Try
Case 11
convertValue = Convert.ToInt64(werte)
Case WMObjectVariableValueTypeFloat
werte = werte.ToString.Replace(".", ",")
convertValue = CDbl(werte)
@ -2056,74 +2066,82 @@ Public Class frmDIHauptseite
Case WMObjectVariableValueTypeDefaultValue ' zu klären !!!!
convertValue = vbEmpty
Case Else
' wenn es sich um einen TypVektorIndex handelt
If TypDesIndexes >= 4096 And TypDesIndexes < 8192 Or TypDesIndexes = 36865 Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- Es handelt sich um einen Vektorindex", False)
Dim temp_arr As New ArrayList
Dim oTemp_arr As New ArrayList
Select Case TypDesIndexes
Case 4097
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex vom Typ 4097", False)
For Each wert As Object In werte
''Führende Nullen Entfernen
'If werte.ToString.StartsWith("0") Then
' Dim werteString As String = CStr(CInt(wert.ToString))
' wert = werteString
' temp_arr.Add(CStr(wert))
' ClassLoggerDI.Add("- Führende Nullen wurden entfernt", False)
'Else
' temp_arr.Add(CStr(wert))
'End If
temp_arr.Add(CStr(wert))
oTemp_arr.Add(CStr(wert))
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- Wert " & CStr(wert) & " konvertiert", False)
Next
Case 4098
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex vom Typ 4098 Integer", False)
If count_Values = 1 Then
temp_arr.Add(CInt(werte))
oTemp_arr.Add(CInt(werte))
Else
For Each wert As Object In werte
temp_arr.Add(CInt(wert))
oTemp_arr.Add(CInt(wert))
Next
End If
Case 4099
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex vom Typ 4099 (Float)", False)
For Each wert As Object In werte
wert = wert.ToString.Replace(".", ",")
temp_arr.Add(CDbl(wert))
Next
If count_Values = 1 Then
werte = werte.ToString.Replace(".", ",")
oTemp_arr.Add(CDbl(werte))
Else
For Each wert As Object In werte
wert = wert.ToString.Replace(".", ",")
oTemp_arr.Add(CDbl(wert))
Next
End If
Case 4100
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex vom Typ 4100 (Boolean)", False)
If count_Values = 1 Then
temp_arr.Add(CBool(werte))
oTemp_arr.Add(CBool(werte))
Else
For Each wert As Object In werte
temp_arr.Add(CBool(wert))
oTemp_arr.Add(CBool(wert))
Next
End If
Case 4101
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex vom Typ 4101 Date", False)
For Each wert As Object In werte
'wert =
temp_arr.Add(CDate(wert))
oTemp_arr.Add(CDate(wert))
Next
Case 4107 ' Vektor64bit
oTemp_arr.Add(Convert.ToInt64(werte))
'convertValue = Convert.ToInt64(werte)
Case WMObjectVariableValueTypeTimeStamp
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex vom Typ DateTime " & WMObjectVariableValueTypeTimeStamp.ToString, False)
For Each wert As Object In werte
temp_arr.Add(CLng(wert))
oTemp_arr.Add(CLng(wert))
Next
Case 4104
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex vom Typ Currency", False)
For Each wert As Object In werte
Dim aValue As System.Runtime.InteropServices.CurrencyWrapper = New System.Runtime.InteropServices.CurrencyWrapper(werte)
temp_arr.Add(aValue)
oTemp_arr.Add(aValue)
Next
Case 4107
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex vom Typ Integer 64bit", False)
For Each wert As Object In werte
temp_arr.Add(CInt(wert))
Next
If count_Values = 1 Then
oTemp_arr.Add(Convert.ToInt64(werte))
Else
For Each wert As Object In werte
oTemp_arr.Add(Convert.ToInt64(wert))
Next
End If
Case 36865
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex vom Typ 36865", False)
'For Each wert As Object In werte
@ -2141,9 +2159,9 @@ Public Class frmDIHauptseite
' If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- Wert " & CStr(wert) & " konvertiert", False)
'Next
Try
temp_arr.Add(CStr(werte))
oTemp_arr.Add(CStr(werte))
Catch ex As Exception
temp_arr.Add(werte)
oTemp_arr.Add(werte)
End Try
Case WMObjectVariableValueTypeUndefined
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex Undefined", False)
@ -2152,21 +2170,21 @@ Public Class frmDIHauptseite
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex Boolean", False)
For Each wert As Object In werte
Try
temp_arr.Add(CBool(wert))
oTemp_arr.Add(CBool(wert))
Catch ex As Exception
' Nothing zuweisen damit SetVariableValue nicht ausgeführt wird
temp_arr = Nothing
oTemp_arr = Nothing
End Try
Next
Case WMObjectVariableValueTypeFixedPoint
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex WMObjectVariableValueTypeFixedPoint", False)
For Each wert As Object In werte
temp_arr.Add(CDbl(wert))
oTemp_arr.Add(CDbl(wert))
Next
Case WMObjectVariableValueTypeTime
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex WMObjectVariableValueTypeTime", False)
For Each wert As Object In werte
temp_arr.Add(CDate(wert))
oTemp_arr.Add(CDate(wert))
Next
Case WMObjectVariableValueTypeVariant
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- VektorIndex WMObjectVariableValueTypeVariant", False)
@ -2206,10 +2224,10 @@ Public Class frmDIHauptseite
'End Select
If temp_arr.Count > 0 Then
If oTemp_arr.Count > 0 Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- Einträge in temp_arr also Speichern des Arrays in convertValue", False)
convertValue = Nothing
convertValue = temp_arr.ToArray
convertValue = oTemp_arr.ToArray
Else
convertValue = vbEmpty
End If

View File

@ -1292,6 +1292,10 @@ Public Class frmNIHauptseite
If Me.aktivesProfil.SQL_Anweisung.StartsWith("EXECUTEVB") Then
_Logger.Debug("Execute VB-Script after indexing......")
Dim oVBScriptRAW As String = Me.aktivesProfil.SQL_Anweisung.Replace("EXECUTEVB ", "")
oVBScriptRAW = oVBScriptRAW.Replace("EXECUTEVB", "")
oVBScriptRAW = oVBScriptRAW.Replace("EXECUTEVB ", "")
_Logger.Debug("oVBScriptRAW [" & oVBScriptRAW & "]")
' Regulären Ausdruck zum Auslesen der windream-Indexe definieren
Dim preg As String = "\[%{1}[a-zA-Z0-9\!\$\&\/\(\)\=\?\,\.\-\;\:_öÖüÜäÄ\#\'\+\*\~\{\}\@\€\<\>\ ]+]{1}"
@ -1337,69 +1341,137 @@ Public Class frmNIHauptseite
'MsgBox(Me.aktivesDokument.aPath & vbNewLine & vbNewLine & Me.aktivesDokument.aName)
Next
_Logger.Debug("VBSCRIPTCOMMAND after replacing variables: " & oVBScriptCommand)
_Logger.Debug("VBSCRIPTCOMMAND after replacing variables [" & oVBScriptCommand & "]")
Try
Dim oArrParams As String()
oArrParams = oVBScriptCommand.Split("#")
_Logger.Debug("VBSplit1 - Path: " & oArrParams(0).ToString)
_Logger.Debug("VBSCRIPTCOMMAND - Path [" & oArrParams(0).ToString & "]")
Dim oVBScriptFile = oArrParams(0).ToString
_Logger.Debug("oVBScriptFile - Path [" & oVBScriptFile & "]")
If File.Exists(oVBScriptFile) Then
Dim start As New ProcessStartInfo
Dim task As New Process
Dim oParamArg As String = ""
Dim myProcess As New Process
Dim oProcessID
myProcess.StartInfo.FileName = oArrParams(0)
' Dim startInfo As New ProcessStartInfo(arr_split(0))
' startInfo.CreateNoWindow = True
Dim oParamArg As String = ""
Dim i As Integer = 0
Dim oStepArg As String
For Each oParam As String In oArrParams
If i <> 0 Then
If i = 1 Then
oStepArg = $"""{oParam.Replace("'", """")}"""
Else
oStepArg = $" ""{oParam.Replace("'", """")}"""
Dim i As Integer = 0
Dim oStepArg As String
For Each oParam As String In oArrParams
If i <> 0 Then
If i = 1 Then
oStepArg = $"{oParam.Replace("'", """")}"
Else
oStepArg = $" {oParam.Replace("'", """")}"
End If
oParamArg += oStepArg
End If
oParamArg += oStepArg
End If
i += 1
Next
myProcess.StartInfo.Arguments = oParamArg
_Logger.Debug("Argument from myProcess: " & myProcess.StartInfo.Arguments)
myProcess.Start()
'Process.Start(startInfo)
oProcessID = myProcess.Id
_Logger.Debug("Script executed!")
If IsNumeric(oProcessID) Then
_Logger.Debug("got an PROCID: " & oProcessID.ToString)
i += 1
Next
Dim oMyProcess As Process
oMyProcess = Process.GetProcessById(oProcessID)
Dim args As String = String.Format("""{0}"" ""{1}""", oArrParams(0).ToString, oParamArg)
start.FileName = "C:\WINDOWS\system32\cscript.exe"
start.Arguments = args
_Logger.Debug("Argument(s) For myProcess [" & args & "]")
start.UseShellExecute = False
' start.RedirectStandardOutput = True
' start.RedirectStandardError = False
task.StartInfo = start
task.StartInfo.CreateNoWindow = True
Dim _sw As Stopwatch = New Stopwatch()
_sw.Start()
Do While oMyProcess.HasExited = False
task.Start()
' so = task.StandardOutput
Do While task.HasExited = False
If _sw.Elapsed.TotalSeconds = 30 Then
_Logger.Debug("Still waiting (30 sec) for ending of process-id: " & oProcessID.ToString)
_Logger.Debug("Still waiting (30 sec) for ending of Task")
ElseIf _sw.Elapsed.TotalMinutes = 1 Then
_Logger.Debug("Still waiting (60 sec) for ending of process-id: " & oProcessID.ToString & " - Exit now", True)
_Logger.Debug("Still waiting (60 sec) for ending of Task - Exit now", True)
Exit Do
End If
Loop
_Logger.Debug("...process has exited: ")
_sw.Stop()
'Dim myProcess As New Process
'Dim oProcessID
'myProcess.StartInfo.FileName = oVBScriptFile
'Dim startInfo As New ProcessStartInfo(oVBScriptFile)
'startInfo.CreateNoWindow = True
'myProcess.StartInfo.Arguments = oParamArg
'_Logger.Debug("Argument For myProcess [" & myProcess.StartInfo.Arguments & "]")
'myProcess.Start()
'oProcessID = myProcess.Id
'_Logger.Debug("Script executed!")
'If IsNumeric(oProcessID) Then
' _Logger.Debug("got an PROCID: " & oProcessID.ToString)
' Dim oMyProcess1 As Process
' oMyProcess1 = Process.GetProcessById(oProcessID)
' Dim _sw1 As Stopwatch = New Stopwatch()
' _sw1.Start()
' Do While oMyProcess1.HasExited = False
' If _sw1.Elapsed.TotalSeconds = 30 Then
' _Logger.Debug("Still waiting (30 sec) for ending of process-id: " & oProcessID.ToString)
' ElseIf _sw1.Elapsed.TotalMinutes = 1 Then
' _Logger.Debug("Still waiting (60 sec) for ending of process-id: " & oProcessID.ToString & " - Exit now", True)
' Exit Do
' End If
' Loop
' _Logger.Debug("...process has exited: ")
' _sw1.Stop()
'End If
Else
_Logger.Warn($"VBSCRIPT not File.exists: {oVBScriptFile}")
End If
'task.WaitForExit()
' MsgBox(so.ReadToEnd)
'myProcess.StartInfo.Arguments = oParamArg
'_Logger.Debug("Argument For myProcess [" & myProcess.StartInfo.Arguments & "]")
'myProcess.Start()
''Process.Start(startInfo)
'oProcessID = myProcess.Id
'_Logger.Debug("Script executed!")
'If IsNumeric(oProcessID) Then
' _Logger.Debug("got an PROCID: " & oProcessID.ToString)
' Dim oMyProcess As Process
' oMyProcess = Process.GetProcessById(oProcessID)
' Dim _sw As Stopwatch = New Stopwatch()
' _sw.Start()
' Do While oMyProcess.HasExited = False
' If _sw.Elapsed.TotalSeconds = 30 Then
' _Logger.Debug("Still waiting (30 sec) for ending of process-id: " & oProcessID.ToString)
' ElseIf _sw.Elapsed.TotalMinutes = 1 Then
' _Logger.Debug("Still waiting (60 sec) for ending of process-id: " & oProcessID.ToString & " - Exit now", True)
' Exit Do
' End If
' Loop
' _Logger.Debug("...process has exited: ")
' _sw.Stop()
'End If
Catch ex As Exception
_Logger.Warn("Unexpected error in running script: " & ex.Message)
End Try

View File

@ -22,7 +22,6 @@ Partial Class frmNIVerknuepfungen
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmNIVerknuepfungen))
Me.txtfinalSkriptUpdate = New System.Windows.Forms.TextBox()
Me.cmbDatenbankSpalten = New System.Windows.Forms.ComboBox()
@ -58,6 +57,7 @@ Partial Class frmNIVerknuepfungen
Me.btnTestSQL = New System.Windows.Forms.Button()
Me.Label9 = New System.Windows.Forms.Label()
Me.gbUpdate = New System.Windows.Forms.GroupBox()
Me.Label2 = New System.Windows.Forms.Label()
Me.Button5 = New System.Windows.Forms.Button()
Me.Label1 = New System.Windows.Forms.Label()
Me.lblsaveSQLAnweisung = New System.Windows.Forms.Label()
@ -82,7 +82,7 @@ Partial Class frmNIVerknuepfungen
Me.cmbDataviews = New System.Windows.Forms.ComboBox()
Me.lblDescrQuelle = New System.Windows.Forms.Label()
Me.lblDescrIndex = New System.Windows.Forms.Label()
Me.lbxIndex = New System.Windows.Forms.ListBox()
Me.lbxWMIndex = New System.Windows.Forms.ListBox()
Me.lblDescrangelegteVerknuepf = New System.Windows.Forms.Label()
Me.tabctrlbottom = New System.Windows.Forms.TabControl()
Me.TabPage6 = New System.Windows.Forms.TabPage()
@ -573,6 +573,7 @@ Partial Class frmNIVerknuepfungen
'
'gbUpdate
'
Me.gbUpdate.Controls.Add(Me.Label2)
Me.gbUpdate.Controls.Add(Me.Button5)
Me.gbUpdate.Controls.Add(Me.Label1)
Me.gbUpdate.Controls.Add(Me.lblsaveSQLAnweisung)
@ -590,6 +591,15 @@ Partial Class frmNIVerknuepfungen
Me.gbUpdate.TabStop = False
Me.gbUpdate.Text = "SQL-Befehl oder Skript (ausgeführt nach jedem Dateidurchlauf)"
'
'Label2
'
Me.Label2.AutoSize = True
Me.Label2.Location = New System.Drawing.Point(237, 18)
Me.Label2.Name = "Label2"
Me.Label2.Size = New System.Drawing.Size(394, 13)
Me.Label2.TabIndex = 55
Me.Label2.Text = "EXECUTEVB PathToMyVBScriptfile.vbs Argument#Argument2#Argument3"
'
'Button5
'
Me.Button5.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
@ -611,9 +621,9 @@ Partial Class frmNIVerknuepfungen
Me.Label1.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label1.Location = New System.Drawing.Point(8, 18)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(892, 26)
Me.Label1.Size = New System.Drawing.Size(223, 13)
Me.Label1.TabIndex = 52
Me.Label1.Text = resources.GetString("Label1.Text")
Me.Label1.Text = "VB-Skript Command with following construct:"
'
'lblsaveSQLAnweisung
'
@ -701,7 +711,7 @@ Partial Class frmNIVerknuepfungen
Me.rbTables.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.rbTables.Location = New System.Drawing.Point(132, 8)
Me.rbTables.Name = "rbTables"
Me.rbTables.Size = New System.Drawing.Size(67, 17)
Me.rbTables.Size = New System.Drawing.Size(68, 17)
Me.rbTables.TabIndex = 29
Me.rbTables.Text = "Tabellen"
Me.rbTables.UseVisualStyleBackColor = True
@ -900,14 +910,14 @@ Partial Class frmNIVerknuepfungen
Me.lblDescrIndex.TabIndex = 19
Me.lblDescrIndex.Text = "1. windream-Index wählen:"
'
'lbxIndex
'lbxWMIndex
'
Me.lbxIndex.FormattingEnabled = True
Me.lbxIndex.Location = New System.Drawing.Point(10, 95)
Me.lbxIndex.Name = "lbxIndex"
Me.lbxIndex.Size = New System.Drawing.Size(138, 134)
Me.lbxIndex.Sorted = True
Me.lbxIndex.TabIndex = 18
Me.lbxWMIndex.FormattingEnabled = True
Me.lbxWMIndex.Location = New System.Drawing.Point(10, 95)
Me.lbxWMIndex.Name = "lbxWMIndex"
Me.lbxWMIndex.Size = New System.Drawing.Size(138, 134)
Me.lbxWMIndex.Sorted = True
Me.lbxWMIndex.TabIndex = 18
'
'lblDescrangelegteVerknuepf
'
@ -1140,7 +1150,7 @@ Partial Class frmNIVerknuepfungen
Me.Label12.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Label12.Location = New System.Drawing.Point(5, 17)
Me.Label12.Name = "Label12"
Me.Label12.Size = New System.Drawing.Size(647, 13)
Me.Label12.Size = New System.Drawing.Size(646, 13)
Me.Label12.TabIndex = 38
Me.Label12.Text = "Wenn ein SQL-Ergebnis geliefert wurde wird dieses Dokument als fertig indexiert m" &
"arkiert! Voraussetzung Indextyp: Boolean"
@ -1343,7 +1353,7 @@ Partial Class frmNIVerknuepfungen
Me.rbFT_single.AutoSize = True
Me.rbFT_single.Location = New System.Drawing.Point(6, 21)
Me.rbFT_single.Name = "rbFT_single"
Me.rbFT_single.Size = New System.Drawing.Size(202, 17)
Me.rbFT_single.Size = New System.Drawing.Size(201, 17)
Me.rbFT_single.TabIndex = 3
Me.rbFT_single.Text = "Nur Bestimmte Position auswerten"
Me.rbFT_single.UseVisualStyleBackColor = True
@ -1820,7 +1830,7 @@ Partial Class frmNIVerknuepfungen
Me.pnlZielQuelle.Controls.Add(Me.txteindeutigerIndex)
Me.pnlZielQuelle.Controls.Add(Me.txtManIndexwert)
Me.pnlZielQuelle.Controls.Add(Me.lvwVerknuepfungen)
Me.pnlZielQuelle.Controls.Add(Me.lbxIndex)
Me.pnlZielQuelle.Controls.Add(Me.lbxWMIndex)
Me.pnlZielQuelle.Controls.Add(Me.lblDescrQuelle)
Me.pnlZielQuelle.Controls.Add(Me.Label5)
Me.pnlZielQuelle.Controls.Add(Me.btnUnlink)
@ -1847,7 +1857,7 @@ Partial Class frmNIVerknuepfungen
Me.rbFunctionsTb.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.rbFunctionsTb.Location = New System.Drawing.Point(322, 8)
Me.rbFunctionsTb.Name = "rbFunctionsTb"
Me.rbFunctionsTb.Size = New System.Drawing.Size(111, 17)
Me.rbFunctionsTb.Size = New System.Drawing.Size(112, 17)
Me.rbFunctionsTb.TabIndex = 81
Me.rbFunctionsTb.Text = "Functions (Table)"
Me.rbFunctionsTb.UseVisualStyleBackColor = True
@ -2026,7 +2036,7 @@ Partial Class frmNIVerknuepfungen
Friend WithEvents cmbDataviews As System.Windows.Forms.ComboBox
Friend WithEvents lblDescrQuelle As System.Windows.Forms.Label
Friend WithEvents lblDescrIndex As System.Windows.Forms.Label
Friend WithEvents lbxIndex As System.Windows.Forms.ListBox
Friend WithEvents lbxWMIndex As System.Windows.Forms.ListBox
Friend WithEvents tabctrlbottom As System.Windows.Forms.TabControl
Friend WithEvents TabPage1 As System.Windows.Forms.TabPage
Friend WithEvents TabPage2 As System.Windows.Forms.TabPage
@ -2121,4 +2131,5 @@ Partial Class frmNIVerknuepfungen
Friend WithEvents Button5 As Button
Friend WithEvents rbFunctionsTb As RadioButton
Friend WithEvents rbFunctionsSc As RadioButton
Friend WithEvents Label2 As Label
End Class

View File

@ -120,10 +120,6 @@
<metadata name="StatusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<data name="Label1.Text" xml:space="preserve">
<value>VB-Skript Command must start with prefix 'EXECUTEVB '. VB-Command and arguments must be seperated via an #. For double quotes in executing please use single quotes in configuration.
SQL-Command can be written like sql.</value>
</data>
<metadata name="FolderBrowserDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>134, 17</value>
</metadata>

View File

@ -113,17 +113,18 @@ Public Class frmNIVerknuepfungen
Private Sub LoadIndexesToListViews()
Try
' Indexliste
Me.lbxIndex.Items.Clear()
Me.lbxWMIndex.Items.Clear()
Me.cmbIndex_Statusfertig.Items.Clear()
Dim indexe = _windream.GetIndicesByObjecttype(Me._selectedProfil.Dokumenttyp.aName, False, "NI")
If indexe IsNot Nothing Then
'Erst die windream-Indexe in die Standard Listbox eintragen
For Each index As String In indexe
Me.lbxIndex.Items.Add(index)
Me.lbxWMIndex.Items.Add(index)
Me.cmbIndex_Statusfertig.Items.Add(index)
Next
Me.lbxIndex.Items.Add("WD-Dateiname")
Me.lbxWMIndex.Items.Add("WD-Dateiname")
Me.lbxWMIndex.Items.Add("Manueller Volltext")
Me.cmbIndex_Statusfertig.Items.Add("")
Me.cmbIndex_Statusfertig.SelectedIndex = -1
@ -247,11 +248,11 @@ Public Class frmNIVerknuepfungen
For Each link As ClassNIVerknüpfung In Me._selectedProfil._links.Links
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {link.Index, link.Spalte, link.From}))
' wenn es den aktuellen Index noch in der Indexliste gibt
If Me.lbxIndex.Items.Contains(link.Index) Then
If Me.lbxWMIndex.Items.Contains(link.Index) Then
Dim indextype As String = ClassNIWindream.GetIndex_Type(link.Index)
If Not indextype.StartsWith("Vektor") Then
' dann diesen Eintrag löschen
Me.lbxIndex.Items.Remove(link.Index)
Me.lbxWMIndex.Items.Remove(link.Index)
End If
@ -315,11 +316,11 @@ Public Class frmNIVerknuepfungen
For Each link As ClassNIVerknüpfung In Me._selectedProfil._links.Links
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {link.Index, link.Spalte, link.From}))
' wenn es den aktuellen Index noch in der Indexliste gibt
If Me.lbxIndex.Items.Contains(link.Index) Then
If Me.lbxWMIndex.Items.Contains(link.Index) Then
Dim indextype As String = ClassNIWindream.GetIndex_Type(link.Index)
If Not indextype.StartsWith("Vektor") Then
' dann diesen Eintrag löschen
Me.lbxIndex.Items.Remove(link.Index)
Me.lbxWMIndex.Items.Remove(link.Index)
End If
End If
Next
@ -395,11 +396,11 @@ Public Class frmNIVerknuepfungen
i += 1
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {link.Index, link.Spalte, link.SelectAnweisung}))
' wenn es den aktuellen Index noch in der Indexliste gibt
If Me.lbxIndex.Items.Contains(link.Index) Then
If Me.lbxWMIndex.Items.Contains(link.Index) Then
Dim indextype As String = ClassNIWindream.GetIndex_Type(link.Index)
If Not indextype.StartsWith("Vektor") Then
' dann diesen Eintrag löschen
Me.lbxIndex.Items.Remove(link.Index)
Me.lbxWMIndex.Items.Remove(link.Index)
End If
End If
Next
@ -445,11 +446,11 @@ Public Class frmNIVerknuepfungen
For Each link As ClassNIVerknüpfung In Me._selectedProfil._links.Links
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {link.Index, link.Spalte, link.From}))
' wenn es den aktuellen Index noch in der Indexliste gibt
If Me.lbxIndex.Items.Contains(link.Index) Then
If Me.lbxWMIndex.Items.Contains(link.Index) Then
Dim indextype As String = ClassNIWindream.GetIndex_Type(link.Index)
If Not indextype.StartsWith("Vektor") Then
' dann diesen Eintrag löschen
Me.lbxIndex.Items.Remove(link.Index)
Me.lbxWMIndex.Items.Remove(link.Index)
End If
End If
Next
@ -1383,7 +1384,7 @@ Public Class frmNIVerknuepfungen
Try
' wenn sowohl ein Index als auch eine Spalte ausgewählt wurde
If (Me.lbxIndex.SelectedItems.Count > 0) And ((Me.lbxQuelle1.SelectedItems.Count > 0) Or Me.txtManIndexwert.Text <> "") Then
If (Me.lbxWMIndex.SelectedItems.Count > 0) And ((Me.lbxQuelle1.SelectedItems.Count > 0) Or Me.txtManIndexwert.Text <> "") Then
Dim Indexquelle, Datenquelle As String
If Me.txtManIndexwert.Text <> "" Then
@ -1394,21 +1395,21 @@ Public Class frmNIVerknuepfungen
Datenquelle = Me.cmbDataviews.SelectedItem
End If
' Eintrag in ListView machen
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {Me.lbxIndex.SelectedItem, Indexquelle, Datenquelle}))
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {Me.lbxWMIndex.SelectedItem, Indexquelle, Datenquelle}))
' das Textfeld der SQL-Anweisung leeren
Me.txtSelectAnweisung.Text = ""
' dem Profil den neuen Link anhängen
Me._selectedProfil._links.AddLink(Me.lbxIndex.SelectedItem, Indexquelle, Datenquelle, Me.txtSelectAnweisung.Text, vktState)
Me._selectedProfil._links.AddLink(Me.lbxWMIndex.SelectedItem, Indexquelle, Datenquelle, Me.txtSelectAnweisung.Text, vktState)
' Liste mit Spalten deselektieren
Me.lbxQuelle1.SelectedIndex = -1
If Me.txtManIndexwert.Text = "" Then
Dim indextype As String = ClassNIWindream.GetIndex_Type(Me.lbxIndex.SelectedItem)
Dim indextype As String = ClassNIWindream.GetIndex_Type(Me.lbxWMIndex.SelectedItem)
If Not indextype.StartsWith("Vektor") Then
' dann diesen Eintrag löschen
Me.lbxIndex.Items.Remove(Me.lbxIndex.SelectedItem)
Me.lbxWMIndex.Items.Remove(Me.lbxWMIndex.SelectedItem)
End If
Else
Me.txtManIndexwert.Text = ""
@ -1425,7 +1426,7 @@ Public Class frmNIVerknuepfungen
Try
Dim _value As String
' wenn sowohl ein Index als auch eine Spalte ausgewählt wurde
If (Me.lbxIndex.SelectedItems.Count > 0) And ((Me.trvwxml.SelectedNode Is Nothing = False Or Me.txtManIndexwert.Text <> "")) Then
If (Me.lbxWMIndex.SelectedItems.Count > 0) And ((Me.trvwxml.SelectedNode Is Nothing = False Or Me.txtManIndexwert.Text <> "")) Then
If Me.txtManIndexwert.Text <> "" Then
_value = "%" & Me.txtManIndexwert.Text & "%"
Me.txtManIndexwert.Text = ""
@ -1449,10 +1450,10 @@ Public Class frmNIVerknuepfungen
End If
' Eintrag in ListView machen
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {Me.lbxIndex.SelectedItem, _value}))
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {Me.lbxWMIndex.SelectedItem, _value}))
' dem Profil den neuen Link anhängen
Me._selectedProfil._links.AddLink(Me.lbxIndex.SelectedItem, _value, "", "", vktState)
Me._selectedProfil._links.AddLink(Me.lbxWMIndex.SelectedItem, _value, "", "", vktState)
' den Index aus Liste mit Indexen löschen
' Me.lbxIndexDatei.Items.Remove(Me.lbxIndexDatei.SelectedItem)
@ -1473,7 +1474,7 @@ Public Class frmNIVerknuepfungen
Try
Dim _value As String
' wenn sowohl ein Index als auch eine Spalte ausgewählt wurde
If (Me.lbxIndex.SelectedItems.Count > 0) And ((Me.txtregex.Text <> "" Or Me.txtManIndexwert.Text <> "")) Then
If (Me.lbxWMIndex.SelectedItems.Count > 0) And ((Me.txtregex.Text <> "" Or Me.txtManIndexwert.Text <> "")) Then
If Me.txtManIndexwert.Text <> "" Then
_value = "%" & txtManIndexwert.Text & "%"
Me.txtManIndexwert.Text = ""
@ -1510,13 +1511,13 @@ Public Class frmNIVerknuepfungen
Ft_area = Ft_area & ";" & "False"
End If
' dem Profil den neuen Link anhängen
Me._selectedProfil._links.AddLink(Me.lbxIndex.SelectedItem, _value, "ft", Ft_area)
Me._selectedProfil._links.AddLink(Me.lbxWMIndex.SelectedItem, _value, "ft", Ft_area)
' Eintrag in ListView machen
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {Me.lbxIndex.SelectedItem, _value, Ft_area}))
Dim indextype As String = ClassNIWindream.GetIndex_Type(Me.lbxIndex.SelectedItem)
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {Me.lbxWMIndex.SelectedItem, _value, Ft_area}))
Dim indextype As String = ClassNIWindream.GetIndex_Type(Me.lbxWMIndex.SelectedItem)
If Not indextype.StartsWith("Vektor") Then
' dann diesen Eintrag löschen
Me.lbxIndex.Items.Remove(lbxIndex.SelectedItem)
Me.lbxWMIndex.Items.Remove(lbxWMIndex.SelectedItem)
End If
' definieren das am aktuellen Profil Änderungen vorgenommen wurden
@ -1532,7 +1533,7 @@ Public Class frmNIVerknuepfungen
Try
' wenn sowohl ein Index als auch eine Spalte ausgewählt wurde
If (Me.lbxIndex.SelectedItems.Count > 0) And ((Me.lbxQuelle1.SelectedItems.Count > 0) Or Me.txtManIndexwert.Text <> "") Then
If (Me.lbxWMIndex.SelectedItems.Count > 0) And ((Me.lbxQuelle1.SelectedItems.Count > 0) Or Me.txtManIndexwert.Text <> "") Then
' wenn im ListView ein Element selektiert wurde
If Me.lvwVerknuepfungen.SelectedItems.Count > 0 Then
@ -1548,20 +1549,20 @@ Public Class frmNIVerknuepfungen
Datenquelle = "AD"
End If
' Eintrag in ListView machen
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {Me.lbxIndex.SelectedItem, Indexquelle, Datenquelle}))
Me.lvwVerknuepfungen.Items.Add(New Windows.Forms.ListViewItem(New String() {Me.lbxWMIndex.SelectedItem, Indexquelle, Datenquelle}))
' das Textfeld der SQL-Anweisung leere
Me.txtLDAP_EinschrUserGroup.Text = "(" & Indexquelle & "=[%" & Me.lbxIndex.SelectedItem & "])"
Me.txtLDAP_EinschrUserGroup.Text = "(" & Indexquelle & "=[%" & Me.lbxWMIndex.SelectedItem & "])"
' dem Profil den neuen Link anhängen
Me._selectedProfil._links.AddLink(Me.lbxIndex.SelectedItem, Indexquelle, Datenquelle, Me.txtLDAP_EinschrUserGroup.Text)
Me._selectedProfil._links.AddLink(Me.lbxWMIndex.SelectedItem, Indexquelle, Datenquelle, Me.txtLDAP_EinschrUserGroup.Text)
' Liste mit Spalten deselektieren
Me.lbxQuelle1.SelectedIndex = -1
If Me.txtManIndexwert.Text = "" Then
Dim indextype As String = ClassNIWindream.GetIndex_Type(Me.lbxIndex.SelectedItem)
Dim indextype As String = ClassNIWindream.GetIndex_Type(Me.lbxWMIndex.SelectedItem)
If Not indextype.StartsWith("Vektor") Then
' dann diesen Eintrag löschen
Me.lbxIndex.Items.Remove(Me.lbxIndex.SelectedItem)
Me.lbxWMIndex.Items.Remove(Me.lbxWMIndex.SelectedItem)
End If
Else
Me.txtManIndexwert.Text = ""
@ -1586,10 +1587,10 @@ Public Class frmNIVerknuepfungen
If (Me.lvwVerknuepfungen.SelectedItems.Count > 0) Then
' wenn der Index nicht in der Liste der Indexe steht
If Me.lbxIndex.FindStringExact(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text) = Windows.Forms.ListBox.NoMatches Then
If Me.lbxWMIndex.FindStringExact(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text) = Windows.Forms.ListBox.NoMatches Then
' diesen Index hinzufügen
Me.lbxIndex.Items.Add(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text)
Me.lbxWMIndex.Items.Add(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text)
End If
' den Link aus dem aktuellen Profil entfernen
@ -1608,10 +1609,10 @@ Public Class frmNIVerknuepfungen
If (Me.lvwVerknuepfungen.SelectedItems.Count > 0) Then
' wenn der Index nicht in der Liste der Indexe steht
If Me.lbxIndex.FindStringExact(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text) = Windows.Forms.ListBox.NoMatches Then
If Me.lbxWMIndex.FindStringExact(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text) = Windows.Forms.ListBox.NoMatches Then
' diesen Index hinzufügen
Me.lbxIndex.Items.Add(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text)
Me.lbxWMIndex.Items.Add(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text)
End If
' den Link aus dem aktuellen Profil entfernen
@ -1630,9 +1631,9 @@ Public Class frmNIVerknuepfungen
If (Me.lvwVerknuepfungen.SelectedItems.Count > 0) Then
' wenn der Index nicht in der Liste der Indexe steht
If Me.lbxIndex.FindStringExact(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text) = Windows.Forms.ListBox.NoMatches Then
If Me.lbxWMIndex.FindStringExact(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text) = Windows.Forms.ListBox.NoMatches Then
' diesen Index hinzufügen
Me.lbxIndex.Items.Add(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text)
Me.lbxWMIndex.Items.Add(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text)
End If
' den Link aus dem aktuellen Profil entfernen
Me._selectedProfil._links.RemoveLink(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text, Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(1).Text, "ft")
@ -1649,10 +1650,10 @@ Public Class frmNIVerknuepfungen
If (Me.lvwVerknuepfungen.SelectedItems.Count > 0) Then
' wenn der Index nicht in der Liste der Indexe steht
If Me.lbxIndex.FindStringExact(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text) = Windows.Forms.ListBox.NoMatches Then
If Me.lbxWMIndex.FindStringExact(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text) = Windows.Forms.ListBox.NoMatches Then
' diesen Index hinzufügen
Me.lbxIndex.Items.Add(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text)
Me.lbxWMIndex.Items.Add(Me.lvwVerknuepfungen.SelectedItems.Item(0).SubItems(0).Text)
End If
' den Link aus dem aktuellen Profil entfernen
@ -2197,11 +2198,11 @@ Public Class frmNIVerknuepfungen
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnaddUniqueIndex.Click
If (Me.lbxIndex.SelectedItems.Count > 0) Then
If (Me.lbxWMIndex.SelectedItems.Count > 0) Then
' Eintrag in textBox aktualisieren
Me.txteindeutigerIndex.Text = Me.lbxIndex.SelectedItem
Me.txteindeutigerIndex.Text = Me.lbxWMIndex.SelectedItem
Dim text As String = Me.lbxIndex.SelectedItem
Dim text As String = Me.lbxWMIndex.SelectedItem
If Me._selectedProfil IsNot Nothing Then
Me._selectedProfil.Desk_windreamIndex = text
@ -3377,7 +3378,7 @@ Public Class frmNIVerknuepfungen
check_changes_ftArea()
End Sub
Private Sub lbxIndex_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lbxIndex.SelectedIndexChanged
Private Sub lbxIndex_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lbxWMIndex.SelectedIndexChanged
Select Case Me._selectedProfil.Ni_Art
Case "fulltext"
' wenn im ListView ein Element selektiert wurde
@ -3388,7 +3389,7 @@ Public Class frmNIVerknuepfungen
Me.chkboxWhitespace.Checked = False
Me.txtregex.Text = ""
End Select
selectedIndex_Type = ClassNIWindream.GetIndex_Type(lbxIndex.SelectedItem)
selectedIndex_Type = ClassNIWindream.GetIndex_Type(lbxWMIndex.SelectedItem)
If selectedIndex_Type Is Nothing = False Then
visinvisible_Vektor_ins_State()
End If
@ -3579,4 +3580,8 @@ Public Class frmNIVerknuepfungen
End If
End Sub
Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click
End Sub
End Class

View File

@ -22,16 +22,17 @@ Public Class frmStart
'End Sub
Private Sub Delete_LogFiles()
Try
Dim vDate = DateAdd("d", -CInt(My.Settings.logolder_then), Now)
Dim log_files As ReadOnlyCollection(Of String)
log_files = My.Computer.FileSystem.GetFiles(My.Application.Info.DirectoryPath & "\Log", FileIO.SearchOption.SearchAllSubDirectories, "*.*")
If log_files.Count > 0 Then
For Each filename As String In log_files
If FileDateTime(filename) < vDate Then
IO.File.Delete(filename)
End If
' Dim vDate = DateAdd("d", -CInt(My.Settings.logolder_then), Now)
Try
Dim directory As New IO.DirectoryInfo(My.Application.Info.DirectoryPath & "\Log")
For Each file As IO.FileInfo In directory.GetFiles
If (Now - file.CreationTime).Days > 29 Then file.Delete()
Next
End If
Catch ex As Exception
End Try
Catch ex As Exception
_Logger.Error(ex.Message)
End Try
@ -46,8 +47,10 @@ Public Class frmStart
_MyLogger = New LogConfig(LogConfig.PathType.CustomPath, Path.Combine(My.Application.Info.DirectoryPath, "Log"), Nothing, My.Application.Info.CompanyName,
My.Application.Info.ProductName)
_Logger = _MyLogger.GetLogger()
CURR_Logger = _Logger
CURR_LogConfig = _MyLogger
Delete_LogFiles()
'Aktueller Benutzer
Me.tslblVersion.Text = Environment.UserName.ToString
Me.Text = Application.CompanyName & "-" & Application.ProductName