Überprüfung WerteLookUpControl

This commit is contained in:
Digital Data - Marlon Schreiber 2019-06-11 09:45:44 +02:00
parent b787f0bd87
commit 8fe526f5c0
2 changed files with 52 additions and 42 deletions

View File

@ -121,7 +121,14 @@ Public Class ClassPMWindream
' 02.07. Änderung der Lock Methode, um eine Validierung auch zuzulassen, wenn das Recht "Datei ändern" ' 02.07. Änderung der Lock Methode, um eine Validierung auch zuzulassen, wenn das Recht "Datei ändern"
' nicht gesetzt ist ' nicht gesetzt ist
'oDocument.lock() 'oDocument.lock()
oDocument.LockFor(WMObjectEditModeIndexEdit)
Try
oDocument.LockFor(WMObjectEditModeIndexEdit)
Catch ex As Exception
LOGGER.Error(ex)
frmValidator.idxerr_message = "Could not lock WMFile - Check Your rights and inform the admin!"
Return False
End Try
Dim i As Integer = 0 Dim i As Integer = 0
Dim indexname As String Dim indexname As String

View File

@ -3018,61 +3018,64 @@ Public Class frmValidator
Else Else
input = lookup.SelectedValues.FirstOrDefault() input = lookup.SelectedValues.FirstOrDefault()
If IsNothing(input) Then
oMissing = True
oErrorMessage = "Could not get FirstOrDefault-Value of LookUpGrid!"
Exit For
End If
'den aktuellen Wert in windream auslesen 'den aktuellen Wert in windream auslesen
Dim wertWD Dim wertWD
If oIndexName.StartsWith("[%VKT") Then If oIndexName.StartsWith("[%VKT") Then
wertWD = ReturnVektor_IndexValue(oIndexName) wertWD = ReturnVektor_IndexValue(oIndexName)
Else
wertWD = CURRENT_WMFILE.GetVariableValue(oIndexName)
If Not IsNothing(wertWD) Then
If wertWD.ToString = "System.Object[]" Then
If wertWD.Length = 1 Then
wertWD = wertWD(0)
Else '
LOGGER.Info(" >> Vectorfield " & oIndexName & "' contains more then one value - First value will be used")
wertWD = wertWD(0)
End If
End If
Else Else
wertWD = "" wertWD = CURRENT_WMFILE.GetVariableValue(oIndexName)
End If If Not IsNothing(wertWD) Then
If wertWD.ToString = "System.Object[]" Then
'wenn Wert in Windream <> der Eingabe darf indexiert werden If wertWD.Length = 1 Then
If IsNothing(wertWD) Or wertWD <> input Then wertWD = wertWD(0)
'Wenn der Wert in ein Vektorfeld geschrieben wird Else '
If oIndexName.StartsWith("[%VKT") Then LOGGER.Info(" >> Vectorfield " & oIndexName & "' contains more then one value - First value will be used")
input = Return_PM_VEKTOR(input, oIndexName) wertWD = wertWD(0)
'Hier muss nun separat als Vektorfeld indexiert werden End If
If Indexiere_VektorfeldPM(input, PROFIL_VEKTORINDEX) = True Then
oMissing = True
oErrorMessage = "Fehler beim Indexieren Textbox als VEKTOR - ERROR: " & idxerr_message
Exit For
End If End If
Else Else
Dim result() As String wertWD = ""
ReDim Preserve result(0) End If
result(0) = input
If Indexiere_File(CURRENT_WMFILE, oIndexName, result) = False Then 'wenn Wert in Windream <> der Eingabe darf indexiert werden
oMissing = True If IsNothing(wertWD) Or wertWD <> input Then
oErrorMessage = "Fehler beim Indexieren Textbox - ERROR: " & idxerr_message 'Wenn der Wert in ein Vektorfeld geschrieben wird
Exit For If oIndexName.StartsWith("[%VKT") Then
input = Return_PM_VEKTOR(input, oIndexName)
'Hier muss nun separat als Vektorfeld indexiert werden
If Indexiere_VektorfeldPM(input, PROFIL_VEKTORINDEX) = True Then
oMissing = True
oErrorMessage = "Fehler beim Indexieren Textbox als VEKTOR - ERROR: " & idxerr_message
Exit For
End If
Else Else
'Nun das Logging Dim result() As String
If PROFIL_LOGINDEX <> "" Then ReDim Preserve result(0)
input = Return_LOGString(input, wertWD, oIndexName) result(0) = input
Indexiere_VektorfeldPM(input, PROFIL_LOGINDEX) If Indexiere_File(CURRENT_WMFILE, oIndexName, result) = False Then
oMissing = True
oErrorMessage = "Fehler beim Indexieren Textbox - ERROR: " & idxerr_message
Exit For
Else
'Nun das Logging
If PROFIL_LOGINDEX <> "" Then
input = Return_LOGString(input, wertWD, oIndexName)
Indexiere_VektorfeldPM(input, PROFIL_LOGINDEX)
End If
End If End If
End If End If
End If End If
End If End If
End If End If
End If
End If End If
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)