MS2
This commit is contained in:
@@ -41,8 +41,53 @@ Public Class frmWD_Index_Dokart
|
||||
Case "@DOKART"
|
||||
idxvalue = idxvalue.ToString.Replace("@Dokart", vDokart)
|
||||
End Select
|
||||
Else 'Es wird nicht über einen @PAttern indexiert
|
||||
' Regulären Ausdruck zum Auslesen der Indexe definieren
|
||||
Dim preg As String = "\[%{1}[a-zA-Z0-9\!\$\&\/\(\)\=\?\,\.\-\;\:_öÖüÜäÄ\#\'\+\*\~\{\}\@\€\<\>\ ]+]{1}"
|
||||
' einen Regulären Ausdruck laden
|
||||
Dim regulärerAusdruck As System.Text.RegularExpressions.Regex = New System.Text.RegularExpressions.Regex(preg)
|
||||
' die Vorkommen im SQL-String auslesen
|
||||
Dim elemente As System.Text.RegularExpressions.MatchCollection = regulärerAusdruck.Matches(idxvalue)
|
||||
'####
|
||||
' alle Vorkommen innerhalbd er Namenkonvention durchlaufen
|
||||
For Each element As System.Text.RegularExpressions.Match In elemente
|
||||
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> element in RegeX: " & element.Value, False)
|
||||
Select Case element.Value.Substring(2, 1).ToUpper
|
||||
'Nur automatische Indizes auswerten
|
||||
Case "A"
|
||||
Dim APattern = element.Value.Substring(3, element.Value.Length - 4)
|
||||
If APattern.Contains("#") Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> element filled with Record-Data.......: ", False)
|
||||
Dim split() As String = APattern.Split("#")
|
||||
If split.Length = 2 Then
|
||||
Dim CONTROL_ID = split(1)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> CONTROL_ID: " & CONTROL_ID, False)
|
||||
If IsNumeric(CONTROL_ID) Then
|
||||
Dim CONTROLVALUE = ClassControlValues.Get_Control_Value_for_ID(CONTROL_ID, CURRENT_RECORD_ID)
|
||||
If IsNothing(CONTROLVALUE) Then
|
||||
ClassLogger.Add(">> Index should be filled with value of Control-ID '" & CONTROL_ID & "', but result was nothing.", False)
|
||||
ClassLogger.Add(">> SQL-Command: " & CURRENT_LAST_SQL)
|
||||
idxvalue = ""
|
||||
Else
|
||||
If IsDBNull(CONTROLVALUE) Then
|
||||
ClassLogger.Add(">> Index should be filled with value of Control-ID '" & CONTROL_ID & "', but result was DBNULL.", False)
|
||||
ClassLogger.Add(">> SQL-Command: " & CURRENT_LAST_SQL)
|
||||
idxvalue = ""
|
||||
Else
|
||||
idxvalue = CONTROLVALUE
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Select
|
||||
|
||||
Next
|
||||
End If
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Indexvalue: " & idxvalue.ToString, False)
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(" >> Value for Indexing : '" & idxvalue.ToString & "'", False)
|
||||
Count += 1
|
||||
indexierung_erfolgreich = ClassWindream.IndexFile(CURRENT_FILEIN_WD, indexname, idxvalue)
|
||||
If indexierung_erfolgreich = False Then
|
||||
|
||||
Reference in New Issue
Block a user