From b95e580f068286b67b50ed33953017963dd6e8e8 Mon Sep 17 00:00:00 2001 From: Developer01 Date: Tue, 5 May 2026 18:21:54 +0200 Subject: [PATCH] V 2.9.9.0 Verbesserung DocSearchLoad, Mapping Sharedrive MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Refactoring Zusatzsuchen, Dokumentenhandling & Cleanup Umfangreiches Refactoring der Zusatzsuchen-Logik (Validator/ValidatorSearch): Vereinheitlichung und Typprüfung der DataTables, zentrale Filterung, robustere Tab-Steuerung und thread-sicheres Nachladen. Netzlaufwerk-Mapping und Dokumentenpfad-Handling wurden entfernt bzw. auf neue Handler ausgelagert. Profilsuchen-Handling vereinheitlicht, Parametrierung (Working Mode) klarer strukturiert. Diverse Bugfixes, verbessertes Logging, Cleanup von Ressourcen und Projektdateien, veraltete Komponenten entfernt. Update auf DocumentViewer 2.6.0.0. Die Anwendung ist robuster, wartbarer und für Erweiterungen vorbereitet. --- app/SetupVS19/Product.wxs | 85 +- app/TaskFlow.sln | 22 - app/TaskFlow/ClassAllgemeineFunktionen.vb | 514 ----- app/TaskFlow/ClassDocumentPathHandler.vb | 311 --- app/TaskFlow/ClassIDBData.vb | 80 +- app/TaskFlow/ClassPMWindream.vb | 2 +- app/TaskFlow/ClassParamRefresh.vb | 716 ++++--- app/TaskFlow/ClassWindream_allgemein.vb | 2 +- app/TaskFlow/ModuleRuntimeVariables.vb | 4 +- app/TaskFlow/My Project/AssemblyInfo.vb | 2 +- app/TaskFlow/TaskFlow.vbproj | 6 +- app/TaskFlow/frmMain.vb | 74 +- app/TaskFlow/frmValidator.Designer.vb | 1 - app/TaskFlow/frmValidator.resx | 2 +- app/TaskFlow/frmValidator.vb | 448 +++-- app/TaskFlow/frmValidatorSearch.resx | 28 +- app/TaskFlow/frmValidatorSearch.vb | 661 +++++-- app/TaskFlow/logtaskflow.txt | 1364 ------------- app/TaskFlow/taskFLOW-TEST-Debug.txt | 2141 --------------------- 19 files changed, 1447 insertions(+), 5016 deletions(-) delete mode 100644 app/TaskFlow/ClassDocumentPathHandler.vb delete mode 100644 app/TaskFlow/taskFLOW-TEST-Debug.txt diff --git a/app/SetupVS19/Product.wxs b/app/SetupVS19/Product.wxs index 07bc6c0..9594425 100644 --- a/app/SetupVS19/Product.wxs +++ b/app/SetupVS19/Product.wxs @@ -99,23 +99,17 @@ --> - - - - + + + + - - - - - + - - @@ -139,58 +133,58 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - + - - - + + + + + + + + + + + + + + + + + @@ -307,9 +301,6 @@ - - - diff --git a/app/TaskFlow.sln b/app/TaskFlow.sln index 9ea3668..93d8ea9 100644 --- a/app/TaskFlow.sln +++ b/app/TaskFlow.sln @@ -7,8 +7,6 @@ Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SetupVS19", "SetupVS19\Setu EndProject Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "taskFLOW", "TaskFlow\taskFLOW.vbproj", "{6ACA1432-09A2-47EF-A704-C0AA73905756}" EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DocumentViewer", "..\..\..\2_DLL Projekte\Controls.DocumentViewer\DocumentViewer.vbproj", "{0958CDDF-4A16-41F6-8837-8335F71D599C}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution CD_ROM|Any CPU = CD_ROM|Any CPU @@ -63,26 +61,6 @@ Global {6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|Any CPU.Build.0 = Release|x86 {6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|x86.ActiveCfg = Debug|x86 {6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|x86.Build.0 = Debug|x86 - {0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|Any CPU.ActiveCfg = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|Any CPU.Build.0 = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|x86.ActiveCfg = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|x86.Build.0 = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|x86.ActiveCfg = Debug|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|x86.Build.0 = Debug|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|Any CPU.ActiveCfg = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|Any CPU.Build.0 = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|x86.ActiveCfg = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|x86.Build.0 = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|Any CPU.Build.0 = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|x86.ActiveCfg = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|x86.Build.0 = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|Any CPU.ActiveCfg = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|Any CPU.Build.0 = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|x86.ActiveCfg = Release|Any CPU - {0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/app/TaskFlow/ClassAllgemeineFunktionen.vb b/app/TaskFlow/ClassAllgemeineFunktionen.vb index a998a1d..583c446 100644 --- a/app/TaskFlow/ClassAllgemeineFunktionen.vb +++ b/app/TaskFlow/ClassAllgemeineFunktionen.vb @@ -418,518 +418,4 @@ Public Class ClassAllgemeineFunktionen ' Ergebnis zurückgeben Return b64 End Function -#Region "Windows API Deklarationen" - - Private Shared Function WNetAddConnection2(ByRef lpNetResource As NETRESOURCE, - ByVal lpPassword As String, - ByVal lpUsername As String, - ByVal dwFlags As Integer) As Integer - End Function - - - Private Shared Function WNetCancelConnection2(ByVal lpName As String, - ByVal dwFlags As Integer, - ByVal fForce As Boolean) As Integer - End Function - - - Private Structure NETRESOURCE - Public dwScope As Integer - Public dwType As Integer - Public dwDisplayType As Integer - Public dwUsage As Integer - Public lpLocalName As String - Public lpRemoteName As String - Public lpComment As String - Public lpProvider As String - End Structure - - Private Const RESOURCETYPE_DISK As Integer = 1 - Private Const CONNECT_UPDATE_PROFILE As Integer = 1 - Private Const ERROR_SUCCESS As Integer = 0 - Private Const ERROR_ALREADY_ASSIGNED As Integer = 85 -#End Region - - ''' - ''' Struktur für Netzlaufwerk-Informationen - ''' - Public Structure NetworkDriveInfo - Public DriveLetter As String - Public NetworkPath As String - Public DriveType As IO.DriveType - Public IsReady As Boolean - Public TotalSize As Long - Public FreeSpace As Long - End Structure - - ''' - ''' Ermittelt den nächsten freien Laufwerksbuchstaben (alphabetisch absteigend von Z bis A) - ''' - ''' Liste der nicht erlaubten Laufwerksbuchstaben (z.B. "Y,M,V") - ''' Nächster freier Laufwerksbuchstabe mit Doppelpunkt (z.B. "Z:") oder String.Empty wenn keiner frei - Public Shared Function GetNextFreeDriveLetter(Optional blacklist As String = "") As String - Try - ' Blacklist verarbeiten (Großbuchstaben ohne Doppelpunkte) - Dim blacklistArray As New List(Of Char) - If Not String.IsNullOrEmpty(blacklist) Then - For Each item In blacklist.Split(","c) - Dim letter = item.Trim().ToUpper().Replace(":", "") - If letter.Length = 1 AndAlso Char.IsLetter(letter(0)) Then - blacklistArray.Add(letter(0)) - End If - Next - End If - - ' Alle aktuell verwendeten Laufwerksbuchstaben ermitteln - Dim usedDrives As New List(Of Char) - For Each drive As IO.DriveInfo In IO.DriveInfo.GetDrives() - Dim letter As Char = drive.Name(0) - usedDrives.Add(Char.ToUpper(letter)) - Next - - ' Alphabetisch absteigend von Z bis A durchgehen - For i As Integer = Asc("Z"c) To Asc("A"c) Step -1 - Dim currentLetter As Char = Chr(i) - - ' Prüfen ob Buchstabe verfügbar ist - If Not usedDrives.Contains(currentLetter) AndAlso Not blacklistArray.Contains(currentLetter) Then - LOGGER.Debug($"Nächster freier Laufwerksbuchstabe gefunden: {currentLetter}:") - Return currentLetter & ":" - End If - Next - - LOGGER.Warn("Kein freier Laufwerksbuchstabe gefunden!") - Return String.Empty - - Catch ex As Exception - LOGGER.Error($"Fehler beim Ermitteln des nächsten freien Laufwerksbuchstabens: {ex.Message}") - LOGGER.Error(ex) - Return String.Empty - End Try - End Function - - ''' - ''' Prüft ob ein Laufwerksbuchstabe verfügbar ist (nicht verwendet und nicht in Blacklist) - ''' - ''' Zu prüfender Laufwerksbuchstabe - ''' Liste der nicht erlaubten Laufwerksbuchstaben - ''' True wenn verfügbar, False wenn bereits verwendet oder in Blacklist - Public Shared Function IsDriveLetterAvailable(driveLetter As String, Optional blacklist As String = "") As Boolean - Try - ' Formatierung sicherstellen - driveLetter = driveLetter.Trim().ToUpper().Replace(":", "") - If driveLetter.Length <> 1 OrElse Not Char.IsLetter(driveLetter(0)) Then - LOGGER.Warn($"Ungültiger Laufwerksbuchstabe: {driveLetter}") - Return False - End If - - Dim letter As Char = driveLetter(0) - - ' Blacklist prüfen - If Not String.IsNullOrEmpty(blacklist) Then - For Each item In blacklist.Split(","c) - Dim blacklistedLetter = item.Trim().ToUpper().Replace(":", "") - If blacklistedLetter.Length = 1 AndAlso blacklistedLetter(0) = letter Then - LOGGER.Debug($"Laufwerk {letter}: ist in der Blacklist") - Return False - End If - Next - End If - - ' Prüfen ob bereits verwendet - For Each drive As IO.DriveInfo In IO.DriveInfo.GetDrives() - If Char.ToUpper(drive.Name(0)) = letter Then - LOGGER.Debug($"Laufwerk {letter}: ist bereits verwendet") - Return False - End If - Next - - Return True - - Catch ex As Exception - LOGGER.Error($"Fehler beim Prüfen der Laufwerksverfügbarkeit: {ex.Message}") - LOGGER.Error(ex) - Return False - End Try - End Function - - ''' - ''' Mappt ein Netzlaufwerk mit automatischer Laufwerksbuchstabenwahl oder spezifischem Buchstaben - ''' - ''' Gewünschter Laufwerksbuchstabe (leer = automatisch den nächsten freien wählen) - ''' UNC-Pfad des Netzwerkshares - ''' Komma-getrennte Liste verbotener Laufwerksbuchstaben (z.B. "Y,M,V") - ''' Optionaler Benutzername für Authentifizierung - ''' Optionales Passwort für Authentifizierung - ''' Soll das Mapping persistent sein? - ''' Verwendeter Laufwerksbuchstabe bei Erfolg, String.Empty bei Fehler - Public Shared Function MapNetworkDrive(driveLetter As String, - networkPath As String, - Optional blacklist As String = "", - Optional userName As String = Nothing, - Optional password As String = Nothing, - Optional persistent As Boolean = True) As String - Try - Dim targetDriveLetter As String = "" - - ' Szenario 1: Kein Laufwerksbuchstabe angegeben -> Automatische Auswahl - If String.IsNullOrEmpty(driveLetter) Then - LOGGER.Info("Kein Laufwerksbuchstabe angegeben - suche nächsten freien Buchstaben...") - targetDriveLetter = GetNextFreeDriveLetter(blacklist) - - If String.IsNullOrEmpty(targetDriveLetter) Then - LOGGER.Error("Kein freier Laufwerksbuchstabe verfügbar!") - Return String.Empty - End If - - LOGGER.Info($"Automatisch gewählter Laufwerksbuchstabe: {targetDriveLetter}") - Else - ' Szenario 2: Spezifischer Laufwerksbuchstabe angegeben - targetDriveLetter = driveLetter.Trim().ToUpper() - If Not targetDriveLetter.EndsWith(":") Then - targetDriveLetter &= ":" - End If - - ' Prüfen ob Laufwerk verfügbar ist - If Not IsDriveLetterAvailable(targetDriveLetter, blacklist) Then - LOGGER.Error($"Laufwerk {targetDriveLetter} ist nicht verfügbar (bereits verwendet oder in Blacklist)") - Return String.Empty - End If - End If - - ' Laufwerk mappen - If MapNetworkDriveInternal(targetDriveLetter, networkPath, userName, password, persistent) Then - LOGGER.Info($"✓ Netzlaufwerk {targetDriveLetter} erfolgreich gemappt zu {networkPath}") - Return targetDriveLetter - Else - LOGGER.Error($"✗ Fehler beim Mappen von {targetDriveLetter}") - Return String.Empty - End If - - Catch ex As Exception - LOGGER.Error($"Fehler in MapNetworkDrive: {ex.Message}") - LOGGER.Error(ex) - Return String.Empty - End Try - End Function - - ''' - ''' Interne Methode zum tatsächlichen Mappen eines Netzlaufwerks - ''' - Private Shared Function MapNetworkDriveInternal(driveLetter As String, - networkPath As String, - userName As String, - password As String, - persistent As Boolean) As Boolean - Try - ' Erst trennen falls vorhanden (ohne Fehler wenn nicht vorhanden) - DisconnectNetworkDrive(driveLetter, True) - - ' NETRESOURCE-Struktur vorbereiten - Dim netResource As New NETRESOURCE With { - .dwType = RESOURCETYPE_DISK, - .lpLocalName = driveLetter, - .lpRemoteName = networkPath - } - - Dim flags As Integer = If(persistent, CONNECT_UPDATE_PROFILE, 0) - - ' WICHTIG: Credentials als Nothing übergeben = Verwende aktuelle Windows-Credentials - ' Wenn der Share öffentlich oder mit aktuellen Credentials erreichbar ist, funktioniert es - Dim result As Integer = WNetAddConnection2(netResource, password, userName, flags) - - Select Case result - Case ERROR_SUCCESS - LOGGER.Debug($"✓ Laufwerk {driveLetter} erfolgreich gemappt") - Return True - - Case 1326 ' ERROR_LOGON_FAILURE - LOGGER.Error($"❌ Authentifizierungsfehler (1326): Anmeldung fehlgeschlagen für [{networkPath}]") - LOGGER.Error($" → Der UNC-Pfad erfordert möglicherweise spezielle Credentials") - LOGGER.Error($" → Oder der aktuelle Benutzer hat keine Berechtigung") - Return False - - Case 53 ' ERROR_BAD_NETPATH - LOGGER.Error($"❌ Netzwerkpfad nicht gefunden (53): [{networkPath}]") - Return False - - Case 67 ' ERROR_BAD_NET_NAME - LOGGER.Error($"❌ Netzwerkname ungültig (67): [{networkPath}]") - Return False - - Case 85 ' ERROR_ALREADY_ASSIGNED - LOGGER.Warn($"⚠️ Laufwerk {driveLetter} ist bereits zugewiesen (85)") - ' Versuche es zu trennen und erneut zu verbinden - DisconnectNetworkDrive(driveLetter, force:=True) - System.Threading.Thread.Sleep(500) ' Kurze Pause - result = WNetAddConnection2(netResource, password, userName, flags) - If result = ERROR_SUCCESS Then - LOGGER.Info($"✓ Laufwerk {driveLetter} nach erneutem Versuch erfolgreich gemappt") - Return True - Else - Return False - End If - - Case Else - LOGGER.Error($"❌ WNetAddConnection2 Error Code: {result}") - Return False - End Select - - Catch ex As Exception - LOGGER.Error($"Fehler in MapNetworkDriveInternal: {ex.Message}") - LOGGER.Error(ex) - Return False - End Try - End Function - ''' - ''' Test-Funktion um UNC-Pfad-Zugriff zu prüfen - ''' - Public Shared Function TestUNCAccess(uncPath As String) As Boolean - Try - LOGGER.Info($"🔍 Teste Zugriff auf UNC-Pfad: [{uncPath}]") - - ' Teste ob Pfad existiert und erreichbar ist - If System.IO.Directory.Exists(uncPath) Then - LOGGER.Info($"✓ UNC-Pfad ist direkt erreichbar ohne Mapping") - - ' Teste Lese-Berechtigung - Try - Dim files = System.IO.Directory.GetFiles(uncPath) - LOGGER.Info($"✓ Lese-Berechtigung vorhanden ({files.Length} Dateien gefunden)") - Return True - Catch permEx As UnauthorizedAccessException - LOGGER.Error($"❌ Keine Lese-Berechtigung: {permEx.Message}") - Return False - End Try - Else - LOGGER.Error($"❌ UNC-Pfad nicht erreichbar oder existiert nicht") - Return False - End If - - Catch ex As Exception - LOGGER.Error($"❌ Fehler beim Testen des UNC-Zugriffs: {ex.Message}") - LOGGER.Error(ex) - Return False - End Try - End Function - ''' - ''' Trennt ein Netzlaufwerk mit Windows-API - ''' - Public Shared Function DisconnectNetworkDrive(driveLetter As String, Optional force As Boolean = True) As Boolean - Try - ' Formatierung sicherstellen - driveLetter = driveLetter.Trim().ToUpper() - If Not driveLetter.EndsWith(":") Then - driveLetter &= ":" - End If - - Dim flags As Integer = CONNECT_UPDATE_PROFILE - Dim result As Integer = WNetCancelConnection2(driveLetter, flags, force) - - If result = ERROR_SUCCESS Then - LOGGER.Debug($"Netzlaufwerk {driveLetter} erfolgreich getrennt") - Return True - ElseIf result = ERROR_ALREADY_ASSIGNED Then - LOGGER.Debug($"Netzlaufwerk {driveLetter} war nicht verbunden") - Return True - Else - LOGGER.Warn($"Warnung beim Trennen von {driveLetter}: Error Code {result}") - Return False - End If - - Catch ex As Exception - LOGGER.Debug($"Fehler beim Trennen von {driveLetter} (ignoriert): {ex.Message}") - Return False - End Try - End Function - - ''' - ''' Ermittelt alle gemappten Netzlaufwerke - ''' - Public Shared Function GetMappedNetworkDrives() As List(Of NetworkDriveInfo) - Dim mappedDrives As New List(Of NetworkDriveInfo) - - Try - For Each drive As IO.DriveInfo In IO.DriveInfo.GetDrives() - If drive.DriveType = IO.DriveType.Network Then - Dim driveInfo As New NetworkDriveInfo With { - .DriveLetter = drive.Name, - .NetworkPath = GetNetworkPath(drive.Name), - .DriveType = drive.DriveType, - .IsReady = drive.IsReady - } - - If drive.IsReady Then - Try - driveInfo.TotalSize = drive.TotalSize - driveInfo.FreeSpace = drive.AvailableFreeSpace - Catch ex As Exception - LOGGER.Debug($"Konnte Größeninformationen für {drive.Name} nicht ermitteln: {ex.Message}") - End Try - End If - - mappedDrives.Add(driveInfo) - End If - Next - - LOGGER.Debug($"Insgesamt {mappedDrives.Count} Netzlaufwerk(e) gefunden") - Return mappedDrives - - Catch ex As Exception - LOGGER.Error($"Fehler beim Ermitteln der Netzlaufwerke: {ex.Message}") - LOGGER.Error(ex) - Return mappedDrives - End Try - End Function - - ''' - ''' Ermittelt den UNC-Pfad eines gemappten Laufwerks - ''' - Public Shared Function GetNetworkPath(driveLetter As String) As String - Try - driveLetter = driveLetter.Trim().ToUpper() - If Not driveLetter.EndsWith(":") Then - driveLetter &= ":" - End If - - Dim network As Object = CreateObject("WScript.Network") - Dim enumDrives As Object = network.EnumNetworkDrives() - - For i As Integer = 0 To enumDrives.Count - 1 Step 2 - If enumDrives.Item(i).ToString.Equals(driveLetter, StringComparison.OrdinalIgnoreCase) Then - Return enumDrives.Item(i + 1).ToString() - End If - Next - - Return String.Empty - - Catch ex As Exception - LOGGER.Debug($"Fehler beim Ermitteln des Netzwerkpfads für {driveLetter}: {ex.Message}") - Return String.Empty - End Try - End Function - - ''' - ''' Prüft ob ein bestimmtes Laufwerk als Netzlaufwerk gemappt ist - ''' - Public Shared Function IsDriveMapped(driveLetter As String) As Boolean - Try - driveLetter = driveLetter.Trim().ToUpper() - If Not driveLetter.EndsWith(":") Then - driveLetter &= ":" - End If - If Not driveLetter.EndsWith("\") Then - driveLetter &= "\" - End If - - Dim driveInfo As New IO.DriveInfo(driveLetter) - Return driveInfo.DriveType = IO.DriveType.Network AndAlso driveInfo.IsReady - - Catch ex As Exception - Return False - End Try - End Function - - ''' - ''' Gibt eine formatierte Übersicht aller gemappten Netzlaufwerke zurück - ''' - Public Shared Function GetMappedDrivesInfo() As String - Dim result As New System.Text.StringBuilder() - Dim drives = GetMappedNetworkDrives() - - If drives.Count = 0 Then - Return "Keine Netzlaufwerke gefunden." - End If - - result.AppendLine($"Gemappte Netzlaufwerke ({drives.Count}):") - result.AppendLine(New String("-"c, 60)) - - For Each drive In drives - result.AppendLine($"Laufwerk: {drive.DriveLetter}") - result.AppendLine($" Pfad: {drive.NetworkPath}") - result.AppendLine($" Status: {If(drive.IsReady, "Verfügbar", "Nicht verfügbar")}") - - If drive.IsReady AndAlso drive.TotalSize > 0 Then - Dim totalGB As Double = drive.TotalSize / (1024.0 ^ 3) - Dim freeGB As Double = drive.FreeSpace / (1024.0 ^ 3) - result.AppendLine($" Größe: {totalGB:N2} GB (Frei: {freeGB:N2} GB)") - End If - - result.AppendLine() - Next - - Return result.ToString() - End Function - ''' - ''' Mappt ein spezifisches Laufwerk (z.B. "V") mit Blacklist-Prüfung - ''' - Public Function MapSpecificDrive(driveLetter As String, blacklist As String, networkPath As String) As Boolean - Try - ' Formatierung sicherstellen - driveLetter = driveLetter.Trim().ToUpper().Replace(":", "") - - If String.IsNullOrEmpty(driveLetter) OrElse driveLetter.Length <> 1 Then - LOGGER.Warn($"⚠️ Ungültiger Laufwerksbuchstabe: [{driveLetter}]") - Return False - End If - - Dim driveWithColon As String = driveLetter & ":" - - ' Prüfen ob Laufwerk verfügbar ist - If Not IsDriveLetterAvailable(driveWithColon, blacklist) Then - LOGGER.Warn($"⚠️ Laufwerk {driveWithColon} ist nicht verfügbar (bereits verwendet oder in Blacklist)") - Return False - End If - - ' UNC-Pfad vorbereiten (ohne abschließenden Backslash) - Dim uncPath As String = networkPath.TrimEnd("\"c) - - ' Laufwerk mappen (OHNE Credentials, persistent=False für temporäres Mapping) - Dim result = MapNetworkDrive(driveWithColon, uncPath, blacklist, userName:=Nothing, password:=Nothing, persistent:=False) - - If Not String.IsNullOrEmpty(result) Then - LOGGER.Debug($"✓ Laufwerk {driveWithColon} erfolgreich gemappt zu [{uncPath}]") - Return True - Else - LOGGER.Error($"❌ Fehler beim Mappen von {driveWithColon}") - Return False - End If - - Catch ex As Exception - LOGGER.Error($"Fehler in MapSpecificDrive: {ex.Message}") - LOGGER.Error(ex) - Return False - End Try - End Function - - ''' - ''' Mappt automatisch den nächsten freien Laufwerksbuchstaben (Z→A) - ''' - Public Function MapDriveAutomatic(blacklist As String, networkPath As String) As String - Try - ' UNC-Pfad vorbereiten (ohne abschließenden Backslash) - Dim uncPath As String = networkPath.TrimEnd("\"c) - - LOGGER.Debug($"🔍 Suche automatisch freien Laufwerksbuchstaben...") - LOGGER.Debug($" Blacklist: [{blacklist}]") - LOGGER.Debug($" Netzwerkpfad: [{uncPath}]") - - ' Automatisches Mapping (leer = automatische Auswahl, persistent=False) - Dim result = MapNetworkDrive("", uncPath, blacklist, userName:=Nothing, password:=Nothing, persistent:=False) - - If Not String.IsNullOrEmpty(result) Then - LOGGER.Debug($"✓ Automatisch gewähltes Laufwerk: {result}") - Return result - Else - LOGGER.Error($"❌ Kein freier Laufwerksbuchstabe verfügbar") - Return String.Empty - End If - - Catch ex As Exception - LOGGER.Error($"Fehler in MapDriveAutomatic: {ex.Message}") - LOGGER.Error(ex) - Return String.Empty - End Try - End Function - End Class diff --git a/app/TaskFlow/ClassDocumentPathHandler.vb b/app/TaskFlow/ClassDocumentPathHandler.vb deleted file mode 100644 index e852b76..0000000 --- a/app/TaskFlow/ClassDocumentPathHandler.vb +++ /dev/null @@ -1,311 +0,0 @@ -Imports System.IO -Imports DigitalData.Modules.Logging -''' -''' Zentrale Klasse für Dokumentenpfad-Verwaltung mit optionalem Laufwerks-Mapping und Temp-Kopie -''' -Public Class ClassDocumentPathHandler - - Private ReadOnly _logger As Logger - Private _mappedDrive As String = "" - - ''' - ''' Initialisiert den DocumentPathHandler - ''' - ''' Logger-Instanz - Public Sub New(logger As Logger) - _logger = logger - End Sub - - ''' - ''' Verarbeitet einen Dokumentenpfad: Optional Mapping, dann Temp-Kopie - ''' - ''' Quell-Pfad der Datei (UNC oder lokal) - ''' Optionen für die Verarbeitung - ''' DocumentPathResult mit finalem Pfad und Mapping-Info - Public Function ProcessDocumentPath(sourcePath As String, options As DocumentPathOptions) As DocumentPathResult - Dim result As New DocumentPathResult With { - .SourcePath = sourcePath, - .FinalPath = sourcePath, - .Success = False, - .WasMapped = False, - .WasCopiedToTemp = False - } - - Try - ' Validierung - If String.IsNullOrEmpty(sourcePath) Then - result.ErrorMessage = "Quell-Pfad ist leer" - _logger.Error("❌ ProcessDocumentPath: Quell-Pfad ist leer") - Return result - End If - - Dim workingPath As String = sourcePath - - ' ========== SCHRITT 1: OPTIONALES LAUFWERKS-MAPPING ========== - If options.EnableMapping AndAlso Not String.IsNullOrEmpty(options.WMSuffix) Then - Dim mappingResult = TryMapNetworkDrive(sourcePath, options) - If mappingResult.Success Then - workingPath = mappingResult.MappedPath - _mappedDrive = mappingResult.DriveLetter - result.WasMapped = True - result.MappedDrive = _mappedDrive - _logger.Info($"✓ Laufwerk gemappt: {_mappedDrive}") - Else - _logger.Warn("⚠️ Laufwerks-Mapping fehlgeschlagen - verwende Original-UNC-Pfad") - workingPath = sourcePath - End If - End If - - ' ========== SCHRITT 2: PRÜFEN OB DATEI EXISTIERT ========== - If Not File.Exists(workingPath) Then - result.ErrorMessage = $"Datei nicht gefunden: [{workingPath}]" - _logger.Error($"❌ {result.ErrorMessage}") - - ' Cleanup bei Fehler - If result.WasMapped Then - UnmapDrive() - End If - - Return result - End If - - ' ========== SCHRITT 3: OPTIONALE TEMP-KOPIE ========== - If options.CopyToTemp Then - Dim tempResult = CopyToTempFolder(workingPath, options.TempFolder) - If tempResult.Success Then - result.FinalPath = tempResult.TempPath - result.WasCopiedToTemp = True - result.TempPath = tempResult.TempPath - _logger.Info($"✓ Datei in Temp kopiert: [{Path.GetFileName(tempResult.TempPath)}]") - - ' Laufwerk unmappen nach erfolgreicher Kopie - If result.WasMapped AndAlso options.UnmapAfterCopy Then - UnmapDrive() - result.WasMapped = False ' Wurde bereits getrennt - End If - Else - _logger.Warn($"⚠️ Temp-Kopie fehlgeschlagen: {tempResult.ErrorMessage}") - result.FinalPath = workingPath - - ' Cleanup bei Fehler - If result.WasMapped Then - UnmapDrive() - End If - End If - Else - result.FinalPath = workingPath - _logger.Debug($"📄 Verwende Pfad ohne Temp-Kopie: [{workingPath}]") - End If - - result.Success = True - Return result - - Catch ex As Exception - result.ErrorMessage = $"Unerwarteter Fehler: {ex.Message}" - _logger.Error($"❌ ProcessDocumentPath: {ex.Message}") - _logger.Error(ex) - - ' Cleanup bei Exception - If result.WasMapped Then - UnmapDrive() - End If - - Return result - End Try - End Function - - ''' - ''' Versucht ein Netzlaufwerk zu mappen - ''' - Private Function TryMapNetworkDrive(sourcePath As String, options As DocumentPathOptions) As MappingResult - Dim result As New MappingResult With {.Success = False} - - Try - ' Prüfen ob Pfad mit WMSUFFIX beginnt - If Not sourcePath.StartsWith(options.WMSuffix, StringComparison.OrdinalIgnoreCase) Then - _logger.Debug($"📄 Pfad beginnt nicht mit WMSUFFIX - kein Mapping erforderlich") - Return result - End If - - _logger.Debug($"📂 WMSUFFIX erkannt - starte Laufwerks-Mapping") - - ' Laufwerk mappen - Dim mappedDrive As String = "" - Dim allgFunk As New ClassAllgemeineFunktionen() - - If Not String.IsNullOrEmpty(options.SpecificDrive) AndAlso options.SpecificDrive.Length = 1 Then - ' Spezifisches Laufwerk - If allgFunk.MapSpecificDrive(options.SpecificDrive, options.DriveBlacklist, options.WMSuffix) Then - mappedDrive = options.SpecificDrive & ":" - End If - Else - ' Automatisches Mapping - mappedDrive = allgFunk.MapDriveAutomatic(options.DriveBlacklist, options.WMSuffix) - End If - - If String.IsNullOrEmpty(mappedDrive) Then - _logger.Warn("⚠️ Kein Laufwerk gemappt") - Return result - End If - - ' Pfad umschreiben - Dim relativePath As String = sourcePath.Substring(options.WMSuffix.Length) - If relativePath.StartsWith("\") Then - relativePath = relativePath.Substring(1) - End If - - Dim mappedPath As String = mappedDrive.TrimEnd(":"c, "\"c) & ":\" & relativePath - - _logger.Debug($"📄 Original: [{sourcePath}]") - _logger.Debug($"📄 Gemappt: [{mappedPath}]") - - result.Success = True - result.DriveLetter = mappedDrive - result.MappedPath = mappedPath - Return result - - Catch ex As Exception - _logger.Error($"Fehler beim Mapping: {ex.Message}") - _logger.Error(ex) - Return result - End Try - End Function - - ''' - ''' Kopiert Datei in Temp-Ordner mit eindeutigem Zeitstempel - ''' - Private Function CopyToTempFolder(sourcePath As String, tempFolder As String) As TempCopyResult - Dim result As New TempCopyResult With {.Success = False} - - Try - ' Temp-Ordner validieren - If String.IsNullOrEmpty(tempFolder) Then - result.ErrorMessage = "Temp-Ordner nicht gesetzt" - _logger.Warn("⚠️ TEMP_DOCUMENT_FOLDER ist nicht gesetzt") - - If Not frmValidator.InitializeTempFolder() Then - result.ErrorMessage = "Temp-Ordner konnte nicht initialisiert werden" - Return result - End If - - tempFolder = TEMP_DOCUMENT_FOLDER - End If - - If Not Directory.Exists(tempFolder) Then - result.ErrorMessage = $"Temp-Ordner existiert nicht: [{tempFolder}]" - _logger.Error($"❌ {result.ErrorMessage}") - Return result - End If - - ' Eindeutigen Dateinamen generieren - Dim originalFileName As String = Path.GetFileName(sourcePath) - Dim fileNameWithoutExt As String = Path.GetFileNameWithoutExtension(originalFileName) - Dim extension As String = Path.GetExtension(originalFileName) - Dim timestamp As String = DateTime.Now.ToString("yyyyMMdd_HHmmss_fff") - Dim uniqueFileName As String = $"{fileNameWithoutExt}_{timestamp}{extension}" - Dim targetPath As String = Path.Combine(tempFolder, uniqueFileName) - - _logger.Debug($"📄 Kopiere nach Temp:") - _logger.Debug($" Von: [{sourcePath}]") - _logger.Debug($" Nach: [{targetPath}]") - - ' Datei kopieren - File.Copy(sourcePath, targetPath, overwrite:=True) - - result.Success = True - result.TempPath = targetPath - result.TempFileName = uniqueFileName - Return result - - Catch ex As Exception - result.ErrorMessage = $"Fehler beim Kopieren: {ex.Message}" - _logger.Error($"❌ {result.ErrorMessage}") - _logger.Error(ex) - Return result - End Try - End Function - - ''' - ''' Trennt das gemappte Laufwerk - ''' - Public Sub UnmapDrive() - If Not String.IsNullOrEmpty(_mappedDrive) Then - Try - If ClassAllgemeineFunktionen.DisconnectNetworkDrive(_mappedDrive, force:=True) Then - _logger.Info($"🔌 Laufwerk {_mappedDrive} getrennt") - Else - _logger.Warn($"⚠️ Warnung beim Trennen von {_mappedDrive}") - End If - Catch ex As Exception - _logger.Debug($"Fehler beim Trennen von {_mappedDrive}: {ex.Message}") - Finally - _mappedDrive = "" - End Try - End If - End Sub - - ''' - ''' Cleanup-Methode (z.B. beim Schließen des Forms) - ''' - Public Sub Cleanup() - UnmapDrive() - End Sub - -#Region "Nested Classes für Optionen und Ergebnisse" - - ''' - ''' Optionen für die Dokumentenpfad-Verarbeitung - ''' - Public Class DocumentPathOptions - ''' Soll Laufwerks-Mapping versucht werden? - Public Property EnableMapping As Boolean = False - - ''' WMSUFFIX für Mapping-Erkennung (z.B. "\\windream\objects") - Public Property WMSuffix As String = "" - - ''' Spezifischer Laufwerksbuchstabe (z.B. "V") oder leer für automatisch - Public Property SpecificDrive As String = "" - - ''' Blacklist für Laufwerksbuchstaben (z.B. "Y,M,V") - Public Property DriveBlacklist As String = "" - - ''' Soll Datei in Temp kopiert werden? - Public Property CopyToTemp As Boolean = False - - ''' Temp-Ordner-Pfad - Public Property TempFolder As String = "" - - ''' Laufwerk nach erfolgreicher Temp-Kopie unmappen? - Public Property UnmapAfterCopy As Boolean = True - End Class - - ''' - ''' Ergebnis der Dokumentenpfad-Verarbeitung - ''' - Public Class DocumentPathResult - Public Property Success As Boolean - Public Property SourcePath As String - Public Property FinalPath As String - Public Property ErrorMessage As String - Public Property WasMapped As Boolean - Public Property MappedDrive As String - Public Property WasCopiedToTemp As Boolean - Public Property TempPath As String - End Class - - Private Class MappingResult - Public Property Success As Boolean - Public Property DriveLetter As String - Public Property MappedPath As String - End Class - - Private Class TempCopyResult - Public Property Success As Boolean - Public Property TempPath As String - Public Property TempFileName As String - Public Property ErrorMessage As String - End Class - -#End Region - -End Class diff --git a/app/TaskFlow/ClassIDBData.vb b/app/TaskFlow/ClassIDBData.vb index 35a7efd..e867810 100644 --- a/app/TaskFlow/ClassIDBData.vb +++ b/app/TaskFlow/ClassIDBData.vb @@ -155,52 +155,64 @@ End Function Public Function GetVariableValue(oAttributeName As String, Optional oIDBTyp As Integer = 0, Optional FromIDB As Boolean = False) As Object Try - Dim oSingleAttribute As Boolean = True - Select Case oIDBTyp - Case 8 - oSingleAttribute = False - Case 9 - oSingleAttribute = False - End Select - Dim oAttributeValue - LOGGER.Debug($"IDBData - GetVariableValue - oSingleAttribute [{oSingleAttribute.ToString}] - FromIDB [{FromIDB.ToString}]") - If oSingleAttribute = True And IDB_DT_DOC_DATA.Rows.Count = 1 And FromIDB = False Then + ' Bestimme, ob es sich um ein Single-Value-Attribut handelt (nicht Typ 8 oder 9) + Dim oIsSingleAttribute As Boolean = (oIDBTyp <> 8 AndAlso oIDBTyp <> 9) + + LOGGER.Debug($"IDBData - GetVariableValue - Attribute: [{oAttributeName}] - IsSingleAttribute: [{oIsSingleAttribute}] - FromIDB: [{FromIDB}]") + + ' Schnellpfad: Direkt aus gecachter DataTable holen + If oIsSingleAttribute AndAlso IDB_DT_DOC_DATA.Rows.Count = 1 AndAlso Not FromIDB Then Try - If oAttributeName = "IDBCreatedWhen" Then - oAttributeName = "ADDED_WHEN" - ElseIf oAttributeName = "IDBCreatedWho" Then - oAttributeName = "ADDED_WHO" - ElseIf oAttributeName = "IDBChangedWhen" Then - oAttributeName = "CHANGED_WHEN" - ElseIf oAttributeName = "IDBChangedWho" Then - oAttributeName = "CHANGED_WHO" - End If - LOGGER.Debug($"IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1") - oAttributeValue = IDB_DT_DOC_DATA.Rows(0).Item(oAttributeName) + Dim oMappedName As String = MapSystemAttributeName(oAttributeName) + Dim oValue As Object = IDB_DT_DOC_DATA.Rows(0).Item(oMappedName) + LOGGER.Debug($"IDBData - GetVariableValue - Retrieved from cache: Attribute=[{oAttributeName}] MappedName=[{oMappedName}] Value=[{oValue}]") + Return oValue Catch ex As Exception LOGGER.Debug($"Error getting Attribute from IDB_DT_DOC_DATA: {ex.Message}") + ' Fallthrough zum Datenbank-Fallback End Try + End If - End If - If Not IsNothing(oAttributeValue) Then - LOGGER.Debug($"IDBData - GetVariableValue - Returning value: [{oAttributeValue}]") - Return oAttributeValue + ' Fallback: Wert aus Datenbank über Funktion holen + LOGGER.Debug($"Retrieving value for attribute [{oAttributeName}] via FNIDB_PM_GET_VARIABLE_VALUE") + + Dim oSQL As String = $"SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({CURRENT_DOC_ID},'{oAttributeName}','{USER_LANGUAGE}',CONVERT(BIT,'{IDB_USES_WMFILESTORE}'))" + LOGGER.Debug($"SQL: {oSQL}") + + Dim oResultTable As DataTable = DatabaseFallback.GetDatatableIDB(oSQL) + + If oResultTable IsNot Nothing AndAlso oResultTable.Rows.Count = 1 Then + Dim oValue As Object = oResultTable.Rows(0).Item(0) + LOGGER.Debug($"IDBData - GetVariableValue - Retrieved from DB: [{oValue}]") + Return oValue Else - LOGGER.Debug($"oAttributeValue for Attribute [{oAttributeName}] is so far nothing..Now trying FNIDB_PM_GET_VARIABLE_VALUE ") + LOGGER.Info($"IDBData - GetVariableValue - No value found in DB for attribute [{oAttributeName}] - SQL [{oSQL}]") End If - Dim oFNSQL = $"SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({CURRENT_DOC_ID},'{oAttributeName}','{USER_LANGUAGE}',CONVERT(BIT,'{IDB_USES_WMFILESTORE}'))" - LOGGER.Debug($": {oFNSQL}") - oAttributeValue = DatabaseFallback.GetDatatableIDB(oFNSQL) - Dim odt As DataTable = oAttributeValue - If odt.Rows.Count = 1 Then - oAttributeValue = odt.Rows(0).Item(0) - End If - Return oAttributeValue + + Return oResultTable + Catch ex As Exception LOGGER.Error(ex) Return Nothing End Try + End Function + ''' + ''' Mappt System-Attributnamen auf interne Spaltennamen. + ''' + Private Function MapSystemAttributeName(attributeName As String) As String + Select Case attributeName + Case "IDBCreatedWhen" + Return "ADDED_WHEN" + Case "IDBCreatedWho" + Return "ADDED_WHO" + Case "IDBChangedWhen" + Return "CHANGED_WHEN" + Case "IDBChangedWho" + Return "CHANGED_WHO" + Case Else + Return attributeName + End Select End Function Public Function Delete_Term_Object_From_Metadata(oAttributeName As String, oTerm2Delete As String) As Object Try diff --git a/app/TaskFlow/ClassPMWindream.vb b/app/TaskFlow/ClassPMWindream.vb index 6ab2b30..1ba412a 100644 --- a/app/TaskFlow/ClassPMWindream.vb +++ b/app/TaskFlow/ClassPMWindream.vb @@ -35,7 +35,7 @@ Public Class ClassPMWindream #End Region #Region "+++++ Variablen +++++" - Private oController As New WMOSearchController + 'Private oController As New WMOSearchController #End Region #Region "+++++ Allgemeine Methoden und Funktionen +++++" diff --git a/app/TaskFlow/ClassParamRefresh.vb b/app/TaskFlow/ClassParamRefresh.vb index 982763b..7d3f975 100644 --- a/app/TaskFlow/ClassParamRefresh.vb +++ b/app/TaskFlow/ClassParamRefresh.vb @@ -60,241 +60,242 @@ Public Class ClassParamRefresh ' Use For Each loop over words and display them. Dim oMode As String For Each oMode In oSplitWorkMode - LOGGER.Debug($"oWorkingMode Parameter: {oMode}") - If oMode = "PM.FORCE_LAYOUT_OVERVIEW" Then - FORCE_LAYOUT_OVERVIEW = True - LOGGER.Debug($"FORCE_LAYOUT_OVERVIEW [{FORCE_LAYOUT_OVERVIEW}]") - ElseIf oMode = "PM.NO_MASS_VALIDATOR" Then - SHOW_MASS_VALIDATOR = False - LOGGER.Info($"SHOW_MASS_VALIDATOR [{SHOW_MASS_VALIDATOR}]") - ElseIf oMode = "PM.NO_CHARTS" Then - SHOW_CHARTS = False - LOGGER.Debug($"SHOW_CHARTS [{SHOW_CHARTS}]") - ElseIf oMode = "PM.DEBUG_LOG" Then - DEBUG = True - LOGCONFIG.Debug = True - ElseIf oMode = "PM.LOG_HOTSPOTS" Then - LOG_HOTSPOTS = True - ElseIf oMode.StartsWith("OPERATION_MODE_FS") Then - OPERATION_MODE_FS = oMode.Replace("OPERATION_MODE_FS=", "") - If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then - IDB_USES_WMFILESTORE = True - End If - LOGGER.Info("OPERATION_MODE_FS: " + OPERATION_MODE_FS) - ElseIf oMode = "PM.IDBWITHWMFS" Then - IDB_USES_WMFILESTORE = True - ElseIf oMode = "PM.NO_BASICCONF" Then - BASIC_CONF_VISIBLE = False - LOGGER.Info($"BASIC_CONF_VISIBLE [{BASIC_CONF_VISIBLE}]") - ElseIf oMode = "PM.SYS_LOCKED_MAINTENANCE" Then - SYS_LOCKED_MAINTENANCE = True - ElseIf oMode.StartsWith("PM.IDB_CONID!") Then - If CONNECTION_STRING_IDB <> "" And dbIDBInitialized = True Then - IDB_ACTIVE = True - Continue For - Else - Dim Database_IDB As MSSQLServer = Nothing - Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "") - Dim oConString = DatabaseFallback.GetConnectionString(CON_ID) - CONNECTION_STRING_IDB = oConString - Database_IDB = New MSSQLServer(LOGCONFIG, CONNECTION_STRING_IDB) - If Database_IDB.DBInitialized = True Then - IDB_ACTIVE = True - LOGGER.Info($"IDB is active - IDB-Connection [{CON_ID}]!") - DatabaseFallback.InitializeIDB(Database_IDB) - Else - IDB_ACTIVE = False - End If - End If - ElseIf oMode = "PM.EXCEL_OVERVIEW" Then - EXCEL_OVERVIEW = True - LOGGER.Info($"EXCEL_OVERVIEW [{EXCEL_OVERVIEW}]") - ElseIf oMode = "PM.MONITORING" Then - MONITORING_ACTIVE = True - LOGGER.Debug($"MONITORING_ACTIVE [{MONITORING_ACTIVE}]") - ElseIf oMode = "PM.GHOSTMODE" Then - GHOSTMODE_ACTIVE = True - LOGGER.Info($"GHOSTMODE_ACTIVE [{GHOSTMODE_ACTIVE}]") - ElseIf oMode.StartsWith("PM.COLORSCHEME") Then - Dim oColorScheme = oMode.Replace("PM.COLORSCHEME=", "") - RIBBON_COLOR_SCHEME = oColorScheme.ToUpper - LOGGER.Debug($"RIBBON_COLOR_SCHEME [{RIBBON_COLOR_SCHEME}]") - ElseIf oMode.StartsWith("PM.NO_DETAIL_PROFILES") Then - NO_DETAIL_PROFILES = True - LOGGER.Debug($"NO_DETAIL_PROFILES [{NO_DETAIL_PROFILES}]") - ElseIf oMode = "PM.NO_POPUP" Then - POPUP_REMINDER_ACTIVE = False - LOGGER.Debug($"POPUP_REMINDER_ACTIVE [{POPUP_REMINDER_ACTIVE}]") - ElseIf oMode.StartsWith("PM.POPUP_TIMELAPS_OVERRIDE") Then - Dim oTimeLapse = oMode.Replace("PM.POPUP_TIMELAPS_OVERRIDE=", "") - LOGGER.Info($"CENTRAL POPUP_TIMELAPS_OVERRIDE [{oTimeLapse}]") - Try - CONFIG.Config.ReminderTimer = oTimeLapse - Catch ex As Exception - End Try + ProcessWorkingModeParameter(oMode, pMode) + 'LOGGER.Debug($"oWorkingMode Parameter: {oMode}") + 'If oMode = "PM.FORCE_LAYOUT_OVERVIEW" Then + ' FORCE_LAYOUT_OVERVIEW = True + ' LOGGER.Debug($"FORCE_LAYOUT_OVERVIEW [{FORCE_LAYOUT_OVERVIEW}]") + 'ElseIf oMode = "PM.NO_MASS_VALIDATOR" Then + ' SHOW_MASS_VALIDATOR = False + ' LOGGER.Info($"SHOW_MASS_VALIDATOR [{SHOW_MASS_VALIDATOR}]") + 'ElseIf oMode = "PM.NO_CHARTS" Then + ' SHOW_CHARTS = False + ' LOGGER.Debug($"SHOW_CHARTS [{SHOW_CHARTS}]") + 'ElseIf oMode = "PM.DEBUG_LOG" Then + ' DEBUG = True + ' LOGCONFIG.Debug = True + 'ElseIf oMode = "PM.LOG_HOTSPOTS" Then + ' LOG_HOTSPOTS = True + 'ElseIf oMode.StartsWith("OPERATION_MODE_FS") Then + ' OPERATION_MODE_FS = oMode.Replace("OPERATION_MODE_FS=", "") + ' If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then + ' IDB_USES_WMFILESTORE = True + ' End If + ' LOGGER.Info("OPERATION_MODE_FS: " + OPERATION_MODE_FS) + 'ElseIf oMode = "PM.IDBWITHWMFS" Then + ' IDB_USES_WMFILESTORE = True + 'ElseIf oMode = "PM.NO_BASICCONF" Then + ' BASIC_CONF_VISIBLE = False + ' LOGGER.Info($"BASIC_CONF_VISIBLE [{BASIC_CONF_VISIBLE}]") + 'ElseIf oMode = "PM.SYS_LOCKED_MAINTENANCE" Then + ' SYS_LOCKED_MAINTENANCE = True + 'ElseIf oMode.StartsWith("PM.IDB_CONID!") Then + ' If CONNECTION_STRING_IDB <> "" And dbIDBInitialized = True Then + ' IDB_ACTIVE = True + ' Continue For + ' Else + ' Dim Database_IDB As MSSQLServer = Nothing + ' Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "") + ' Dim oConString = DatabaseFallback.GetConnectionString(CON_ID) + ' CONNECTION_STRING_IDB = oConString + ' Database_IDB = New MSSQLServer(LOGCONFIG, CONNECTION_STRING_IDB) + ' If Database_IDB.DBInitialized = True Then + ' IDB_ACTIVE = True + ' LOGGER.Info($"IDB is active - IDB-Connection [{CON_ID}]!") + ' DatabaseFallback.InitializeIDB(Database_IDB) + ' Else + ' IDB_ACTIVE = False + ' End If + ' End If + 'ElseIf oMode = "PM.EXCEL_OVERVIEW" Then + ' EXCEL_OVERVIEW = True + ' LOGGER.Info($"EXCEL_OVERVIEW [{EXCEL_OVERVIEW}]") + 'ElseIf oMode = "PM.MONITORING" Then + ' MONITORING_ACTIVE = True + ' LOGGER.Debug($"MONITORING_ACTIVE [{MONITORING_ACTIVE}]") + 'ElseIf oMode = "PM.GHOSTMODE" Then + ' GHOSTMODE_ACTIVE = True + ' LOGGER.Info($"GHOSTMODE_ACTIVE [{GHOSTMODE_ACTIVE}]") + 'ElseIf oMode.StartsWith("PM.COLORSCHEME") Then + ' Dim oColorScheme = oMode.Replace("PM.COLORSCHEME=", "") + ' RIBBON_COLOR_SCHEME = oColorScheme.ToUpper + ' LOGGER.Debug($"RIBBON_COLOR_SCHEME [{RIBBON_COLOR_SCHEME}]") + 'ElseIf oMode.StartsWith("PM.NO_DETAIL_PROFILES") Then + ' NO_DETAIL_PROFILES = True + ' LOGGER.Debug($"NO_DETAIL_PROFILES [{NO_DETAIL_PROFILES}]") + 'ElseIf oMode = "PM.NO_POPUP" Then + ' POPUP_REMINDER_ACTIVE = False + ' LOGGER.Debug($"POPUP_REMINDER_ACTIVE [{POPUP_REMINDER_ACTIVE}]") + 'ElseIf oMode.StartsWith("PM.POPUP_TIMELAPS_OVERRIDE") Then + ' Dim oTimeLapse = oMode.Replace("PM.POPUP_TIMELAPS_OVERRIDE=", "") + ' LOGGER.Info($"CENTRAL POPUP_TIMELAPS_OVERRIDE [{oTimeLapse}]") + ' Try + ' CONFIG.Config.ReminderTimer = oTimeLapse + ' Catch ex As Exception + ' End Try - ElseIf oMode.StartsWith("PM.CONV_IDENTIFICATION") Then - Dim oIdent = oMode.Replace("PM.CONV_IDENTIFICATION=", "") - CONV_IDENTIFICATION = oIdent - ElseIf oMode.StartsWith("PM.INACTIVITY_DURATION") Then - Dim oInactivityDuration = oMode.Replace("PM.INACTIVITY_DURATION=", "") - Try - INACTIVITY_DURATION = CInt(oInactivityDuration) - LOGGER.Debug($"InactivityDuration [{INACTIVITY_DURATION}]") - Catch ex As Exception - LOGGER.Warn($"INACTIVITY_DURATION = 0 - {ex.Message}") - INACTIVITY_DURATION = 0 - End Try - ElseIf oMode.StartsWith("PM.COL_LAST_EDITED") Then - Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_EDITED=", "") - Try - LAST_EDITED_COLUMN = oLEDITEDCOL - LOGGER.Debug($"LAST_EDITED_COLUMN: {oLEDITEDCOL}") - Catch ex As Exception - LAST_EDITED_COLUMN = "" + 'ElseIf oMode.StartsWith("PM.CONV_IDENTIFICATION") Then + ' Dim oIdent = oMode.Replace("PM.CONV_IDENTIFICATION=", "") + ' CONV_IDENTIFICATION = oIdent + 'ElseIf oMode.StartsWith("PM.INACTIVITY_DURATION") Then + ' Dim oInactivityDuration = oMode.Replace("PM.INACTIVITY_DURATION=", "") + ' Try + ' INACTIVITY_DURATION = CInt(oInactivityDuration) + ' LOGGER.Debug($"InactivityDuration [{INACTIVITY_DURATION}]") + ' Catch ex As Exception + ' LOGGER.Warn($"INACTIVITY_DURATION = 0 - {ex.Message}") + ' INACTIVITY_DURATION = 0 + ' End Try + 'ElseIf oMode.StartsWith("PM.COL_LAST_EDITED") Then + ' Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_EDITED=", "") + ' Try + ' LAST_EDITED_COLUMN = oLEDITEDCOL + ' LOGGER.Debug($"LAST_EDITED_COLUMN: {oLEDITEDCOL}") + ' Catch ex As Exception + ' LAST_EDITED_COLUMN = "" - End Try - ElseIf oMode.StartsWith("PM.COL_LAST_ADDED") Then - Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_ADDED=", "") - Try - LAST_ADDED_COLUMN = oLEDITEDCOL - LOGGER.Debug($"LAST_ADDED_COLUMN: {oLEDITEDCOL}") - Catch ex As Exception - LAST_ADDED_COLUMN = "" + ' End Try + 'ElseIf oMode.StartsWith("PM.COL_LAST_ADDED") Then + ' Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_ADDED=", "") + ' Try + ' LAST_ADDED_COLUMN = oLEDITEDCOL + ' LOGGER.Debug($"LAST_ADDED_COLUMN: {oLEDITEDCOL}") + ' Catch ex As Exception + ' LAST_ADDED_COLUMN = "" - End Try - ElseIf oMode.StartsWith("PM.MON_COL_CHANGED_WHEN") Then - Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_CHANGED_WHEN=", "") - Try - MON_EDITED_COLUMN = oLEDITEDCOL - LOGGER.Debug($"MON_EDITED_COLUMN: {oLEDITEDCOL}") - Catch ex As Exception + ' End Try + 'ElseIf oMode.StartsWith("PM.MON_COL_CHANGED_WHEN") Then + ' Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_CHANGED_WHEN=", "") + ' Try + ' MON_EDITED_COLUMN = oLEDITEDCOL + ' LOGGER.Debug($"MON_EDITED_COLUMN: {oLEDITEDCOL}") + ' Catch ex As Exception - End Try - ElseIf oMode.StartsWith("PM.MON_COL_ADDED_WHEN") Then - Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_ADDED_WHEN=", "") - Try - MON_ADDED_COLUMN = oLEDITEDCOL - LOGGER.Debug($"MON_COL_ADDED_WHEN: {oLEDITEDCOL}") - Catch ex As Exception + ' End Try + 'ElseIf oMode.StartsWith("PM.MON_COL_ADDED_WHEN") Then + ' Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_ADDED_WHEN=", "") + ' Try + ' MON_ADDED_COLUMN = oLEDITEDCOL + ' LOGGER.Debug($"MON_COL_ADDED_WHEN: {oLEDITEDCOL}") + ' Catch ex As Exception - End Try - ElseIf oMode.StartsWith("PM.USE_APPSERVER") Then - Dim oUSE_APPSERVER = oMode.Replace("PM.USE_APPSERVER=", "") - Try - USE_APPSERVER = CBool(oUSE_APPSERVER) - Catch ex As Exception - USE_APPSERVER = False - End Try - ElseIf oMode.StartsWith("PM.COPYWM2TEMP") Then - Dim oCOPYWM2TEMP = oMode.Replace("PM.COPYWM2TEMP=", "") - Try - COPY_WMFILE_2TEMP = CBool(oCOPYWM2TEMP) - Catch ex As Exception - COPY_WMFILE_2TEMP = False - End Try - ElseIf oMode.StartsWith("PM.MAP_SHARE_DRIVE") Then - Dim oMAP_SHARE_DRIVE = oMode.Replace("PM.MAP_SHARE_DRIVE=", "") - Try - MAP_SHARE_DRIVE = oMAP_SHARE_DRIVE - Catch ex As Exception - oMAP_SHARE_DRIVE = String.Empty - End Try - ElseIf oMode.StartsWith("PM.MAP_BLACKLIST") Then - Dim oMAP_BLACKLIST = oMode.Replace("PM.MAP_BLACKLIST=", "") - Try - MAP_BLACKLIST = oMAP_BLACKLIST - Catch ex As Exception - MAP_BLACKLIST = String.Empty - End Try - ElseIf oMode.StartsWith("PM.SEARCH1") Then - Dim oSearch1 = oMode.Replace("PM.SEARCH1=", "") - Try - SEARCH1 = oSearch1 - Catch ex As Exception - SEARCH1 = "" - End Try - ElseIf oMode.StartsWith("PM.SEARCH2") Then - Dim oSearch2 = oMode.Replace("PM.SEARCH2=", "") - Try - SEARCH2 = oSearch2 - Catch ex As Exception - SEARCH2 = "" - End Try - ElseIf oMode.StartsWith("PM.TRAFFICLIGHT_ICON") Then - Dim oParam = oMode.Replace("PM.TRAFFICLIGHT_ICON=", "") - Try - TL_ICON = CBool(oParam) - Catch ex As Exception - TL_ICON = False - End Try - ElseIf oMode.StartsWith("PM.TITLE_NOTIFICATIONS") Then - Dim oParam = oMode.Replace("PM.TITLE_NOTIFICATIONS=", "") - Try - TITLE_NOTIFICATIONS = oParam - Catch ex As Exception - TITLE_NOTIFICATIONS = "" - End Try - ElseIf oMode.StartsWith("TF.InheritanceMsgAmount") And pMode = "Load" Then - Dim oParam = oMode.Replace("TF.InheritanceMsgAmount=", "") - Try - InheritanceMsgAmount = oParam - Catch ex As Exception + ' End Try + 'ElseIf oMode.StartsWith("PM.USE_APPSERVER") Then + ' Dim oUSE_APPSERVER = oMode.Replace("PM.USE_APPSERVER=", "") + ' Try + ' USE_APPSERVER = CBool(oUSE_APPSERVER) + ' Catch ex As Exception + ' USE_APPSERVER = False + ' End Try + 'ElseIf oMode.StartsWith("PM.COPYWM2TEMP") Then + ' Dim oCOPYWM2TEMP = oMode.Replace("PM.COPYWM2TEMP=", "") + ' Try + ' COPY_WMFILE_2TEMP = CBool(oCOPYWM2TEMP) + ' Catch ex As Exception + ' COPY_WMFILE_2TEMP = False + ' End Try + 'ElseIf oMode.StartsWith("PM.MAP_SHARE_DRIVE") Then + ' Dim oMAP_SHARE_DRIVE = oMode.Replace("PM.MAP_SHARE_DRIVE=", "") + ' Try + ' MAP_SHARE_DRIVE = oMAP_SHARE_DRIVE + ' Catch ex As Exception + ' oMAP_SHARE_DRIVE = String.Empty + ' End Try + 'ElseIf oMode.StartsWith("PM.MAP_BLACKLIST") Then + ' Dim oMAP_BLACKLIST = oMode.Replace("PM.MAP_BLACKLIST=", "") + ' Try + ' MAP_BLACKLIST = oMAP_BLACKLIST + ' Catch ex As Exception + ' MAP_BLACKLIST = String.Empty + ' End Try + 'ElseIf oMode.StartsWith("PM.SEARCH1") Then + ' Dim oSearch1 = oMode.Replace("PM.SEARCH1=", "") + ' Try + ' SEARCH1 = oSearch1 + ' Catch ex As Exception + ' SEARCH1 = "" + ' End Try + 'ElseIf oMode.StartsWith("PM.SEARCH2") Then + ' Dim oSearch2 = oMode.Replace("PM.SEARCH2=", "") + ' Try + ' SEARCH2 = oSearch2 + ' Catch ex As Exception + ' SEARCH2 = "" + ' End Try + 'ElseIf oMode.StartsWith("PM.TRAFFICLIGHT_ICON") Then + ' Dim oParam = oMode.Replace("PM.TRAFFICLIGHT_ICON=", "") + ' Try + ' TL_ICON = CBool(oParam) + ' Catch ex As Exception + ' TL_ICON = False + ' End Try + 'ElseIf oMode.StartsWith("PM.TITLE_NOTIFICATIONS") Then + ' Dim oParam = oMode.Replace("PM.TITLE_NOTIFICATIONS=", "") + ' Try + ' TITLE_NOTIFICATIONS = oParam + ' Catch ex As Exception + ' TITLE_NOTIFICATIONS = "" + ' End Try + 'ElseIf oMode.StartsWith("TF.InheritanceMsgAmount") And pMode = "Load" Then + ' Dim oParam = oMode.Replace("TF.InheritanceMsgAmount=", "") + ' Try + ' InheritanceMsgAmount = oParam + ' Catch ex As Exception - End Try - ElseIf oMode.StartsWith("TF.InheritanceCalcReset") And pMode = "Load" Then - Dim oParam = oMode.Replace("TF.InheritanceCalcReset=", "") - Try - If CBool(oParam) = True Then - LOGGER.Info("Inheritance_Counts werden auf 0 zurückgesetzt bzw gelöscht") - Dim oDELETESQL = "DELETE FROM TBDD_USER_KEY_VALUE_PAIR - WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "' AND KEY_NAME LIKE 'INHERITANCE_CONFIRM_%'" - DatabaseECM.ExecuteNonQuery(oDELETESQL) + ' End Try + 'ElseIf oMode.StartsWith("TF.InheritanceCalcReset") And pMode = "Load" Then + ' Dim oParam = oMode.Replace("TF.InheritanceCalcReset=", "") + ' Try + ' If CBool(oParam) = True Then + ' LOGGER.Info("Inheritance_Counts werden auf 0 zurückgesetzt bzw gelöscht") + ' Dim oDELETESQL = "DELETE FROM TBDD_USER_KEY_VALUE_PAIR + ' WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "' AND KEY_NAME LIKE 'INHERITANCE_CONFIRM_%'" + ' DatabaseECM.ExecuteNonQuery(oDELETESQL) - UserInheritance_ConfirmationByColumn = Nothing - CONFIG.Save() - End If - Catch ex As Exception + ' UserInheritance_ConfirmationByColumn = Nothing + ' CONFIG.Save() + ' End If + ' Catch ex As Exception - End Try - ElseIf oMode.StartsWith("PM.START_CW") Then - Dim oAfterReplace = oMode.Replace("PM.START_CW=", "") - Try - START_CW = True - LOGGER.Debug("PM.START_CW = True") - Dim oSplit As String() = oAfterReplace.Split("~") - START_CW_CAPTION = oSplit(0) - Try - START_CW_LOC_VARIANT = oSplit(1) - Catch ex As Exception - START_CW_LOC_VARIANT = "-1" - LOGGER.Warn($"Could not read START_CW_LOCVARIANT : {ex.Message}") - End Try + ' End Try + 'ElseIf oMode.StartsWith("PM.START_CW") Then + ' Dim oAfterReplace = oMode.Replace("PM.START_CW=", "") + ' Try + ' START_CW = True + ' LOGGER.Debug("PM.START_CW = True") + ' Dim oSplit As String() = oAfterReplace.Split("~") + ' START_CW_CAPTION = oSplit(0) + ' Try + ' START_CW_LOC_VARIANT = oSplit(1) + ' Catch ex As Exception + ' START_CW_LOC_VARIANT = "-1" + ' LOGGER.Warn($"Could not read START_CW_LOCVARIANT : {ex.Message}") + ' End Try - Catch ex As Exception - LOGGER.Warn($"Could not read START_CW Param: {ex.Message}") - START_CW = False - End Try - ElseIf oMode.StartsWith("PM.RibbonPageCustTitle") Then - Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustTitle=", "") - RibbonPageCustTitle = oAfterReplace - ElseIf oMode.StartsWith("PM.RibbonPageCustItm1") Then - Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustItm1=", "") - RibbonPageCustItm1 = oAfterReplace - ElseIf oMode.StartsWith("PM.ButtonExport2FolderCaption") Then - Dim oAfterReplace = oMode.Replace("PM.ButtonExport2FolderCaption=", "") - ButtonExport2Folder_Caption = oAfterReplace - ElseIf oMode.StartsWith("PM.ButtonExport2Folder_Mode") Then - Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_Mode=", "") - ButtonExport2Folder_Mode = oAfterReplace - ElseIf oMode.StartsWith("PM.ButtonExport2Folder_RootFolder") Then - Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_RootFolder=", "") - ButtonExport2Folder_RootFolder = oAfterReplace - ElseIf oMode = "MAINFORM_ALLOW_LOGFILES" Then - MAINFORM_CREATE_LOG_FILES = True - Else - LOGGER.Info($"Wrong oMode: {oMode}") - End If + ' Catch ex As Exception + ' LOGGER.Warn($"Could not read START_CW Param: {ex.Message}") + ' START_CW = False + ' End Try + 'ElseIf oMode.StartsWith("PM.RibbonPageCustTitle") Then + ' Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustTitle=", "") + ' RibbonPageCustTitle = oAfterReplace + 'ElseIf oMode.StartsWith("PM.RibbonPageCustItm1") Then + ' Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustItm1=", "") + ' RibbonPageCustItm1 = oAfterReplace + 'ElseIf oMode.StartsWith("PM.ButtonExport2FolderCaption") Then + ' Dim oAfterReplace = oMode.Replace("PM.ButtonExport2FolderCaption=", "") + ' ButtonExport2Folder_Caption = oAfterReplace + 'ElseIf oMode.StartsWith("PM.ButtonExport2Folder_Mode") Then + ' Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_Mode=", "") + ' ButtonExport2Folder_Mode = oAfterReplace + 'ElseIf oMode.StartsWith("PM.ButtonExport2Folder_RootFolder") Then + ' Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_RootFolder=", "") + ' ButtonExport2Folder_RootFolder = oAfterReplace + 'ElseIf oMode = "MAINFORM_ALLOW_LOGFILES" Then + ' MAINFORM_CREATE_LOG_FILES = True + 'Else + ' LOGGER.Info($"Wrong oMode: {oMode}") + 'End If Next 'If IDB_ACTIVE Then ' If CONNECTION_STRING_APP_SERVER <> String.Empty Then @@ -312,4 +313,267 @@ Public Class ClassParamRefresh End If oStopwatch.Done() End Sub + Private Shared Sub ProcessWorkingModeParameter(oMode As String, pMode As String) + LOGGER.Debug($"Processing Working Mode Parameter: {oMode}") + + Select Case True + Case oMode = "PM.FORCE_LAYOUT_OVERVIEW" + SetBooleanParameter(FORCE_LAYOUT_OVERVIEW, True, "FORCE_LAYOUT_OVERVIEW") + + Case oMode = "PM.NO_MASS_VALIDATOR" + SetBooleanParameter(SHOW_MASS_VALIDATOR, False, "SHOW_MASS_VALIDATOR", LogLevel.Info) + + Case oMode = "PM.NO_CHARTS" + SetBooleanParameter(SHOW_CHARTS, False, "SHOW_CHARTS") + + Case oMode = "PM.DEBUG_LOG" + DEBUG = True + LOGCONFIG.Debug = True + LOGGER.Debug($"DEBUG_LOG = True") + + Case oMode = "PM.LOG_HOTSPOTS" + SetBooleanParameter(LOG_HOTSPOTS, True, "LOG_HOTSPOTS") + + Case oMode.StartsWith("OPERATION_MODE_FS") + OPERATION_MODE_FS = ExtractParameterValue(oMode, "OPERATION_MODE_FS") + If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then + IDB_USES_WMFILESTORE = True + End If + LOGGER.Info($"OPERATION_MODE_FS = {OPERATION_MODE_FS}") + + Case oMode = "PM.IDBWITHWMFS" + SetBooleanParameter(IDB_USES_WMFILESTORE, True, "IDB_USES_WMFILESTORE", LogLevel.Info) + + Case oMode = "PM.NO_BASICCONF" + SetBooleanParameter(BASIC_CONF_VISIBLE, False, "BASIC_CONF_VISIBLE", LogLevel.Info) + + Case oMode = "PM.SYS_LOCKED_MAINTENANCE" + SetBooleanParameter(SYS_LOCKED_MAINTENANCE, True, "SYS_LOCKED_MAINTENANCE") + + Case oMode.StartsWith("PM.IDB_CONID!") + ProcessIDBConnection(oMode) + + Case oMode = "PM.EXCEL_OVERVIEW" + SetBooleanParameter(EXCEL_OVERVIEW, True, "EXCEL_OVERVIEW", LogLevel.Info) + + Case oMode = "PM.MONITORING" + SetBooleanParameter(MONITORING_ACTIVE, True, "MONITORING_ACTIVE") + + Case oMode = "PM.GHOSTMODE" + SetBooleanParameter(GHOSTMODE_ACTIVE, True, "GHOSTMODE_ACTIVE", LogLevel.Info) + + Case oMode.StartsWith("PM.COLORSCHEME") + RIBBON_COLOR_SCHEME = ExtractParameterValue(oMode, "PM.COLORSCHEME").ToUpper + LOGGER.Debug($"RIBBON_COLOR_SCHEME = {RIBBON_COLOR_SCHEME}") + + Case oMode.StartsWith("PM.NO_DETAIL_PROFILES") + SetBooleanParameter(NO_DETAIL_PROFILES, True, "NO_DETAIL_PROFILES") + + Case oMode = "PM.NO_POPUP" + SetBooleanParameter(POPUP_REMINDER_ACTIVE, False, "POPUP_REMINDER_ACTIVE") + + Case oMode.StartsWith("PM.POPUP_TIMELAPS_OVERRIDE") + ProcessPopupTimeLapse(oMode) + + Case oMode.StartsWith("PM.CONV_IDENTIFICATION") + CONV_IDENTIFICATION = ExtractParameterValue(oMode, "PM.CONV_IDENTIFICATION") + LOGGER.Debug($"CONV_IDENTIFICATION = {CONV_IDENTIFICATION}") + + Case oMode.StartsWith("PM.INACTIVITY_DURATION") + ProcessIntegerParameter(oMode, "PM.INACTIVITY_DURATION", INACTIVITY_DURATION, "InactivityDuration") + + Case oMode.StartsWith("PM.COL_LAST_EDITED") + LAST_EDITED_COLUMN = ExtractParameterValue(oMode, "PM.COL_LAST_EDITED") + LOGGER.Debug($"LAST_EDITED_COLUMN = {LAST_EDITED_COLUMN}") + + Case oMode.StartsWith("PM.COL_LAST_ADDED") + LAST_ADDED_COLUMN = ExtractParameterValue(oMode, "PM.COL_LAST_ADDED") + LOGGER.Debug($"LAST_ADDED_COLUMN = {LAST_ADDED_COLUMN}") + + Case oMode.StartsWith("PM.MON_COL_CHANGED_WHEN") + MON_EDITED_COLUMN = ExtractParameterValue(oMode, "PM.MON_COL_CHANGED_WHEN") + LOGGER.Debug($"MON_EDITED_COLUMN = {MON_EDITED_COLUMN}") + + Case oMode.StartsWith("PM.MON_COL_ADDED_WHEN") + MON_ADDED_COLUMN = ExtractParameterValue(oMode, "PM.MON_COL_ADDED_WHEN") + LOGGER.Debug($"MON_ADDED_COLUMN = {MON_ADDED_COLUMN}") + + Case oMode.StartsWith("PM.USE_APPSERVER") + ProcessBooleanParameter(oMode, "PM.USE_APPSERVER", USE_APPSERVER, "USE_APPSERVER") + + Case oMode.StartsWith("PM.COPYWM2TEMP") + ProcessBooleanParameter(oMode, "PM.COPYWM2TEMP", COPY_WMFILE_2TEMP, "COPY_WMFILE_2TEMP") + + Case oMode.StartsWith("PM.MAP_SHARE_DRIVE") + MAP_SHARE_DRIVE = ExtractParameterValue(oMode, "PM.MAP_SHARE_DRIVE") + LOGGER.Debug($"MAP_SHARE_DRIVE = {MAP_SHARE_DRIVE}") + + Case oMode.StartsWith("PM.MAP_BLACKLIST") + MAP_BLACKLIST = ExtractParameterValue(oMode, "PM.MAP_BLACKLIST") + LOGGER.Debug($"MAP_BLACKLIST = {MAP_BLACKLIST}") + + Case oMode.StartsWith("PM.SEARCH1") + SEARCH1 = ExtractParameterValue(oMode, "PM.SEARCH1") + LOGGER.Debug($"SEARCH1 = {SEARCH1}") + + Case oMode.StartsWith("PM.SEARCH2") + SEARCH2 = ExtractParameterValue(oMode, "PM.SEARCH2") + LOGGER.Debug($"SEARCH2 = {SEARCH2}") + + Case oMode.StartsWith("PM.TRAFFICLIGHT_ICON") + ProcessBooleanParameter(oMode, "PM.TRAFFICLIGHT_ICON", TL_ICON, "TL_ICON") + + Case oMode.StartsWith("PM.TITLE_NOTIFICATIONS") + TITLE_NOTIFICATIONS = ExtractParameterValue(oMode, "PM.TITLE_NOTIFICATIONS") + LOGGER.Debug($"TITLE_NOTIFICATIONS = {TITLE_NOTIFICATIONS}") + + Case oMode.StartsWith("TF.InheritanceMsgAmount") AndAlso pMode = "Load" + InheritanceMsgAmount = ExtractParameterValue(oMode, "TF.InheritanceMsgAmount") + LOGGER.Debug($"InheritanceMsgAmount = {InheritanceMsgAmount}") + + Case oMode.StartsWith("TF.InheritanceCalcReset") AndAlso pMode = "Load" + ProcessInheritanceReset(oMode) + + Case oMode.StartsWith("PM.START_CW") + ProcessStartCW(oMode) + + Case oMode.StartsWith("PM.RibbonPageCustTitle") + RibbonPageCustTitle = ExtractParameterValue(oMode, "PM.RibbonPageCustTitle") + LOGGER.Debug($"RibbonPageCustTitle = {RibbonPageCustTitle}") + + Case oMode.StartsWith("PM.RibbonPageCustItm1") + RibbonPageCustItm1 = ExtractParameterValue(oMode, "PM.RibbonPageCustItm1") + LOGGER.Debug($"RibbonPageCustItm1 = {RibbonPageCustItm1}") + + Case oMode.StartsWith("PM.ButtonExport2FolderCaption") + ButtonExport2Folder_Caption = ExtractParameterValue(oMode, "PM.ButtonExport2FolderCaption") + LOGGER.Debug($"ButtonExport2FolderCaption = {ButtonExport2Folder_Caption}") + + Case oMode.StartsWith("PM.ButtonExport2Folder_Mode") + ButtonExport2Folder_Mode = ExtractParameterValue(oMode, "PM.ButtonExport2Folder_Mode") + LOGGER.Debug($"ButtonExport2Folder_Mode = {ButtonExport2Folder_Mode}") + + Case oMode.StartsWith("PM.ButtonExport2Folder_RootFolder") + ButtonExport2Folder_RootFolder = ExtractParameterValue(oMode, "PM.ButtonExport2Folder_RootFolder") + LOGGER.Debug($"ButtonExport2Folder_RootFolder = {ButtonExport2Folder_RootFolder}") + + Case oMode = "MAINFORM_ALLOW_LOGFILES" + SetBooleanParameter(MAINFORM_CREATE_LOG_FILES, True, "MAINFORM_CREATE_LOG_FILES") + + Case Else + LOGGER.Info($"Unknown Working Mode Parameter: {oMode}") + End Select + End Sub + Private Shared Function ExtractParameterValue(parameterString As String, prefix As String) As String + Return parameterString.Replace($"{prefix}=", "") + End Function + + Private Shared Sub SetBooleanParameter(ByRef target As Boolean, value As Boolean, paramName As String, Optional logLevel As LogLevel = LogLevel.Debug) + target = value + LogParameterValue(paramName, value.ToString(), logLevel) + End Sub + + Private Shared Sub ProcessBooleanParameter(oMode As String, prefix As String, ByRef target As Boolean, paramName As String) + Dim value = ExtractParameterValue(oMode, prefix) + Try + target = CBool(value) + LOGGER.Debug($"{paramName} = {target}") + Catch ex As Exception + target = False + LOGGER.Warn($"Failed to parse {paramName}: {ex.Message}") + End Try + End Sub + + Private Shared Sub ProcessIntegerParameter(oMode As String, prefix As String, ByRef target As Integer, paramName As String) + Dim value = ExtractParameterValue(oMode, prefix) + Try + target = CInt(value) + LOGGER.Debug($"{paramName} = {target}") + Catch ex As Exception + LOGGER.Warn($"Failed to parse {paramName}: {ex.Message}. Setting to 0") + target = 0 + End Try + End Sub + + Private Shared Sub ProcessIDBConnection(oMode As String) + Dim Database_IDB As MSSQLServer = Nothing + Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "") + Dim oConString = DatabaseFallback.GetConnectionString(CON_ID) + CONNECTION_STRING_IDB = oConString + Database_IDB = New MSSQLServer(LOGCONFIG, CONNECTION_STRING_IDB) + + If Database_IDB.DBInitialized = True Then + IDB_ACTIVE = True + LOGGER.Info($"IDB is active - IDB-Connection [{CON_ID}]") + DatabaseFallback.InitializeIDB(Database_IDB) + Else + IDB_ACTIVE = False + LOGGER.Warn($"Failed to initialize IDB with Connection [{CON_ID}]") + End If + If CONNECTION_STRING_IDB <> "" AndAlso Database_IDB.DBInitialized = True Then + IDB_ACTIVE = True + LOGGER.Debug("IDB already initialized and active") + Return + End If + End Sub + + Private Shared Sub ProcessPopupTimeLapse(oMode As String) + Dim oTimeLapse = ExtractParameterValue(oMode, "PM.POPUP_TIMELAPS_OVERRIDE") + LOGGER.Info($"POPUP_TIMELAPS_OVERRIDE = {oTimeLapse}") + Try + CONFIG.Config.ReminderTimer = oTimeLapse + Catch ex As Exception + LOGGER.Warn($"Failed to set ReminderTimer: {ex.Message}") + End Try + End Sub + + Private Shared Sub ProcessInheritanceReset(oMode As String) + Dim oParam = ExtractParameterValue(oMode, "TF.InheritanceCalcReset") + Try + If CBool(oParam) = True Then + LOGGER.Info("Inheritance_Counts werden auf 0 zurückgesetzt bzw gelöscht") + Dim oDELETESQL = "DELETE FROM TBDD_USER_KEY_VALUE_PAIR + WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "' AND KEY_NAME LIKE 'INHERITANCE_CONFIRM_%'" + DatabaseECM.ExecuteNonQuery(oDELETESQL) + UserInheritance_ConfirmationByColumn = Nothing + CONFIG.Save() + End If + Catch ex As Exception + LOGGER.Warn($"Failed to process InheritanceCalcReset: {ex.Message}") + End Try + End Sub + + Private Shared Sub ProcessStartCW(oMode As String) + Dim oAfterReplace = ExtractParameterValue(oMode, "PM.START_CW") + Try + START_CW = True + LOGGER.Debug("PM.START_CW = True") + Dim oSplit As String() = oAfterReplace.Split("~") + START_CW_CAPTION = oSplit(0) + Try + START_CW_LOC_VARIANT = oSplit(1) + LOGGER.Debug($"START_CW_LOC_VARIANT = {START_CW_LOC_VARIANT}") + Catch ex As Exception + START_CW_LOC_VARIANT = "-1" + LOGGER.Warn($"Could not read START_CW_LOC_VARIANT: {ex.Message}") + End Try + Catch ex As Exception + LOGGER.Warn($"Could not read START_CW Param: {ex.Message}") + START_CW = False + End Try + End Sub + + Private Shared Sub LogParameterValue(paramName As String, value As String, logLevel As LogLevel) + Select Case logLevel + Case LogLevel.Info + LOGGER.Info($"{paramName} = {value}") + Case Else + LOGGER.Debug($"{paramName} = {value}") + End Select + End Sub + + Private Enum LogLevel + Debug + Info + End Enum End Class diff --git a/app/TaskFlow/ClassWindream_allgemein.vb b/app/TaskFlow/ClassWindream_allgemein.vb index d9fd0ba..8e8dfda 100644 --- a/app/TaskFlow/ClassWindream_allgemein.vb +++ b/app/TaskFlow/ClassWindream_allgemein.vb @@ -124,7 +124,7 @@ Public Class ClassWindream_allgemein Public Function Start_WMCC_andCo() Try ' 04.10.18: Überprüft, ob der Benutzer Mitglied der SERVER_USER Gruppe ist - Dim sql = "SELECT T.GUID FROM TBDD_GROUPS_USER T INNER JOIN TBDD_GROUPS T1 on T1.GUID = T.GROUP_ID WHERE T1.NAME = 'SERVER_USER' AND T.USER_ID = " & USER_ID + Dim sql = "SELECT T.GUID FROM TBDD_GROUPS_USER T WITH (NOLOCK) INNER JOIN TBDD_GROUPS T1 WITH (NOLOCK) on T1.GUID = T.GROUP_ID WHERE T1.NAME = 'SERVER_USER' AND T.USER_ID = " & USER_ID Dim userExistsInServerUserGroup = DatabaseFallback.GetScalarValueECM(sql) ', CONNECTION_STRING_ECM, "StartWMCC-userExistsInServerUserGroup") If WMSESSION_STARTSTOP_STARTUP = True Then diff --git a/app/TaskFlow/ModuleRuntimeVariables.vb b/app/TaskFlow/ModuleRuntimeVariables.vb index 213d555..0266f2f 100644 --- a/app/TaskFlow/ModuleRuntimeVariables.vb +++ b/app/TaskFlow/ModuleRuntimeVariables.vb @@ -30,8 +30,8 @@ Module ModuleRuntimeVariables Public Property BASEDATA_DT_PROFILES_SEARCHES_DOC As DataTable Public Property DT_FILTERED_PROFILE_SEARCHES_DOC As DataTable - Public Property BASEDATA_DT_PROFILES_SEARCHES_SQL As DataTable - Public Property BASEDATA_DT_PROFILE_SEARCHES_SQL As DataTable + Public Property BASEDATA_DT_PROFILES_SEARCHES_DATA As DataTable + Public Property DT_FILTERED_PROFILE_SEARCHES_DATA As DataTable Public Property BASEDATA_DT_VW_PROFILE_USER As DataTable Public Property BASEDATA_TBDD_COLUMNS_FORMAT As DataTable diff --git a/app/TaskFlow/My Project/AssemblyInfo.vb b/app/TaskFlow/My Project/AssemblyInfo.vb index c1144a7..dc23983 100644 --- a/app/TaskFlow/My Project/AssemblyInfo.vb +++ b/app/TaskFlow/My Project/AssemblyInfo.vb @@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices ' übernehmen, indem Sie "*" eingeben: ' - + diff --git a/app/TaskFlow/TaskFlow.vbproj b/app/TaskFlow/TaskFlow.vbproj index 3877f8f..93a2702 100644 --- a/app/TaskFlow/TaskFlow.vbproj +++ b/app/TaskFlow/TaskFlow.vbproj @@ -151,9 +151,9 @@ False - + False - ..\..\..\..\2_DLL Projekte\Controls.DocumentViewer\obj\Debug\DigitalData.Controls.DocumentViewer.dll + ..\..\..\..\2_DLL Projekte\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll ..\..\..\..\2_DLL Projekte\DDMonorepo\Controls.LookupGrid\bin\Debug\DigitalData.Controls.LookupGrid.dll @@ -1256,7 +1256,7 @@ - + diff --git a/app/TaskFlow/frmMain.vb b/app/TaskFlow/frmMain.vb index a6633d3..6dd7227 100644 --- a/app/TaskFlow/frmMain.vb +++ b/app/TaskFlow/frmMain.vb @@ -2044,12 +2044,12 @@ Public Class frmMain End If ' ========== SEARCH SQL PREPARATION ========== - BASEDATA_DT_PROFILE_SEARCHES_SQL = Nothing - rows = BASEDATA_DT_PROFILES_SEARCHES_SQL.Select(oExpression, "TAB_INDEX") + DT_FILTERED_PROFILE_SEARCHES_DATA = Nothing + rows = BASEDATA_DT_PROFILES_SEARCHES_DATA.Select(oExpression, "TAB_INDEX") If rows.Length > 0 Then - BASEDATA_DT_PROFILE_SEARCHES_SQL = rows.CopyToDataTable() + DT_FILTERED_PROFILE_SEARCHES_DATA = rows.CopyToDataTable() Else - BASEDATA_DT_PROFILE_SEARCHES_SQL = BASEDATA_DT_PROFILES_SEARCHES_SQL.Clone() + DT_FILTERED_PROFILE_SEARCHES_DATA = BASEDATA_DT_PROFILES_SEARCHES_DATA.Clone() End If ' ========== VALIDATOR-FORM ÖFFNEN ========== @@ -3178,6 +3178,7 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G End If BASEDATA_DT_PROFILES_SEARCHES_DOC = DatabaseECM.GetDatatable(oSQL) + EnsureProfileSearchType(BASEDATA_DT_PROFILES_SEARCHES_DOC, "DOC", NameOf(BASEDATA_DT_PROFILES_SEARCHES_DOC)) If pMode = "Load" Then DT_FILTERED_PROFILE_SEARCHES_DOC = BASEDATA_DT_PROFILES_SEARCHES_DOC.Clone() @@ -3185,16 +3186,18 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G If pMode = "bwBasicData" Then bwBasicData.ReportProgress(50) oSQL = "select * from TBPM_PROFILE_SEARCH WITH (NOLOCK) where TYPE = 'SQL' AND ACTIVE = 1 ORDER BY PROFILE_ID,TAB_INDEX" - BASEDATA_DT_PROFILES_SEARCHES_SQL = DatabaseFallback.GetDatatable("TBPM_PROFILE_SEARCH", New GetDatatableOptions(oSQL, DatabaseType.ECM) With { - .FilterExpression = "TYPE = 'SQL'", - .SortByColumn = "PROFILE_ID,TAB_INDEX" + BASEDATA_DT_PROFILES_SEARCHES_DATA = DatabaseFallback.GetDatatable("TBPM_PROFILE_SEARCH", New GetDatatableOptions(oSQL, DatabaseType.ECM) With { + .FilterExpression = "TYPE = 'SQL'", + .SortByColumn = "PROFILE_ID,TAB_INDEX" }) + EnsureProfileSearchType(BASEDATA_DT_PROFILES_SEARCHES_DATA, "SQL", NameOf(BASEDATA_DT_PROFILES_SEARCHES_DATA)) + oSQL = String.Format("SELECT [dbo].[FNPM_LANGUAGE_CONTROL_TEXT] (NAME,'{0}',CTRL_TYPE,CTRL_TEXT) CTRL_CAPTION_LANG, '{0}' as LANGUAGE, * FROM TBPM_PROFILE_CONTROLS WITH (NOLOCK)", {USER_LANGUAGE}) BASEDATA_TBPM_PROFILE_CONTROLS = DatabaseFallback.GetDatatable("TBPM_PROFILE_CONTROLS_LANGUAGE", New GetDatatableOptions(oSQL, DatabaseType.ECM) With { .FilterExpression = String.Format("LANGUAGE = '{0}'", {USER_LANGUAGE}) }) If pMode = "Load" Then - BASEDATA_DT_PROFILE_SEARCHES_SQL = BASEDATA_DT_PROFILES_SEARCHES_SQL.Clone() + DT_FILTERED_PROFILE_SEARCHES_DATA = BASEDATA_DT_PROFILES_SEARCHES_DATA.Clone() End If If pMode = "bwBasicData" Then bwBasicData.ReportProgress(60) LoadVWPM_CONTROL_INDEX() @@ -3215,6 +3218,53 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G End Try oStopWatch.Done() End Sub + Private Sub EnsureProfileSearchType(ByRef pTable As DataTable, expectedType As String, tableName As String) + Try + If pTable Is Nothing Then + LOGGER.Warn($"{tableName} is Nothing - type guard skipped") + Exit Sub + End If + + If pTable.Columns.Contains("TYPE") = False Then + LOGGER.Warn($"{tableName} has no TYPE column - type guard skipped") + Exit Sub + End If + + Dim cleanedTable As DataTable = pTable.Clone() + Dim removedCount As Integer = 0 + Dim sampleInvalidSql As String = String.Empty + + For Each row As DataRow In pTable.Rows + Dim rowType As String = String.Empty + If row("TYPE") IsNot DBNull.Value Then + rowType = row("TYPE").ToString().Trim().ToUpperInvariant() + End If + + If rowType = expectedType.ToUpperInvariant() Then + cleanedTable.ImportRow(row) + Else + removedCount += 1 + If sampleInvalidSql = String.Empty AndAlso pTable.Columns.Contains("SQL_COMMAND") Then + If row("SQL_COMMAND") IsNot DBNull.Value Then + sampleInvalidSql = row("SQL_COMMAND").ToString() + End If + End If + End If + Next + + If removedCount > 0 Then + LOGGER.Warn($"{tableName}: removed {removedCount} row(s) with unexpected TYPE. Expected TYPE='{expectedType}'.") + If sampleInvalidSql <> String.Empty Then + LOGGER.Warn($"{tableName}: sample unexpected SQL_COMMAND => {sampleInvalidSql}") + End If + End If + LOGGER.Debug($"{tableName}: {cleanedTable.Rows.Count} rows with TYPE='{expectedType}' after type guard.") + pTable = cleanedTable + Catch ex As Exception + LOGGER.Error(ex) + LOGGER.Warn($"EnsureProfileSearchType failed for {tableName}") + End Try + End Sub Private Sub ConfigureGlobalLookAndFeel() If RIBBON_COLOR_SCHEME <> "" Then UserLookAndFeel.Default.UseDefaultLookAndFeel = False @@ -4082,10 +4132,10 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G oExpression = $"PROFILE_ID = {CURRENT_ProfilGUID}" BASEDATA_DT_PROFILES_SEARCHES_DOC.Select(oExpression, "TAB_INDEX").CopyToDataTable(DT_FILTERED_PROFILE_SEARCHES_DOC, LoadOption.PreserveChanges) - BASEDATA_DT_PROFILE_SEARCHES_SQL = Nothing - BASEDATA_DT_PROFILE_SEARCHES_SQL = BASEDATA_DT_PROFILES_SEARCHES_SQL.Copy - BASEDATA_DT_PROFILE_SEARCHES_SQL.Clear() - BASEDATA_DT_PROFILES_SEARCHES_SQL.Select(oExpression, "TAB_INDEX").CopyToDataTable(BASEDATA_DT_PROFILE_SEARCHES_SQL, LoadOption.PreserveChanges) + DT_FILTERED_PROFILE_SEARCHES_DATA = Nothing + DT_FILTERED_PROFILE_SEARCHES_DATA = BASEDATA_DT_PROFILES_SEARCHES_DATA.Copy + DT_FILTERED_PROFILE_SEARCHES_DATA.Clear() + BASEDATA_DT_PROFILES_SEARCHES_DATA.Select(oExpression, "TAB_INDEX").CopyToDataTable(DT_FILTERED_PROFILE_SEARCHES_DATA, LoadOption.PreserveChanges) Try Dim oEnvironment = GetEnvironment() diff --git a/app/TaskFlow/frmValidator.Designer.vb b/app/TaskFlow/frmValidator.Designer.vb index c106513..76826a3 100644 --- a/app/TaskFlow/frmValidator.Designer.vb +++ b/app/TaskFlow/frmValidator.Designer.vb @@ -762,7 +762,6 @@ Partial Class frmValidator Me.rbnPgGroupAttmt.ItemLinks.Add(Me.Attmnt_bbtnitm_LoadonClick) Me.rbnPgGroupAttmt.Name = "rbnPgGroupAttmt" resources.ApplyResources(Me.rbnPgGroupAttmt, "rbnPgGroupAttmt") - Me.rbnPgGroupAttmt.Visible = False ' 'RibbonPageGroupCustom ' diff --git a/app/TaskFlow/frmValidator.resx b/app/TaskFlow/frmValidator.resx index 3240c8e..3a841e3 100644 --- a/app/TaskFlow/frmValidator.resx +++ b/app/TaskFlow/frmValidator.resx @@ -616,7 +616,7 @@ DocumentViewer1 - DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=2.6.0.0, Culture=neutral, PublicKeyToken=null + DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=2.7.0.0, Culture=neutral, PublicKeyToken=null SplitContainer1.Panel2 diff --git a/app/TaskFlow/frmValidator.vb b/app/TaskFlow/frmValidator.vb index bf4b005..c6f555d 100644 --- a/app/TaskFlow/frmValidator.vb +++ b/app/TaskFlow/frmValidator.vb @@ -140,7 +140,8 @@ Public Class frmValidator Private _overlayHandle As Object = Nothing ' ← NEU: Klassenvariable Private _overlayRefCount As Integer = 0 ' ← NEU: Zähler für verschachtelte Calls Private _overlayLock As New Object() ' ← NEU: Thread-Safe Lock - Private _documentPathHandler As ClassDocumentPathHandler + Private _documentPathHandler As DocumentPathHandler + Private _isLoadingAdditionalSearches As Boolean = False Private Class Translation_Strings @@ -213,7 +214,7 @@ Public Class frmValidator ''' ''' Erzwingt sofortiges Schließen (nur für Fehlerfall / FormClosing) - ''' + ''' DetachAllGridEvents Private Sub ForceCloseOverlay() SyncLock _overlayLock If _overlayHandle IsNot Nothing Then @@ -274,7 +275,7 @@ Public Class frmValidator End If Catch ex As Exception - LOGGER.Error(ex) + MyValidationLogger.Error(ex) ' Bei Fehler sicherheitshalber zentrieren CenterFormOnScreen() End Try @@ -308,8 +309,7 @@ Public Class frmValidator DD_Documentloader = New Loader(LOGCONFIG, OperationMode, Environment.Service.Client, Environment.User) ControlCreator = New ClassControlCreator(LOGCONFIG) Validator = New Validator(LOGCONFIG) - _documentPathHandler = New ClassDocumentPathHandler(MyValidationLogger) - + _documentPathHandler = New DocumentPathHandler(LOGCONFIG) Override = False SplitContainer1.Panel2Collapsed = True first_control = Nothing @@ -330,18 +330,7 @@ Public Class frmValidator MyValidationLogger.Info($"[PERF frmValidation_Load] Nach Initialisierung: {(DateTime.Now - perfLastCheck).TotalMilliseconds}ms") perfLastCheck = DateTime.Now End If - If COPY_WMFILE_2TEMP = True Then - If String.IsNullOrEmpty(TEMP_DOCUMENT_FOLDER) OrElse Not System.IO.Directory.Exists(TEMP_DOCUMENT_FOLDER) Then - MyValidationLogger.Warn("⚠️ TEMP_DOCUMENT_FOLDER nicht initialisiert → Versuche erneut zu erstellen") - If Not InitializeTempFolder() Then - MyValidationLogger.Error("❌ Temp-Ordner konnte nicht erstellt werden!") - ' Optional: Fallback oder Fehlerbehandlung - End If - Else - MyValidationLogger.Debug($"✓ Temp-Ordner verfügbar: [{TEMP_DOCUMENT_FOLDER}]") - End If - End If Catch ex As Exception MyValidationLogger.Warn($"⚠️ Error in frmValidation_load1: {ex.Message}") @@ -694,35 +683,7 @@ Public Class frmValidator End Try End Sub Private _isClosingGuard As Boolean = False - Public Shared Function InitializeTempFolder() As Boolean - Try - If COPY_WMFILE_2TEMP = True Then - ' Basis-Temp-Pfad ermitteln - Dim baseTempPath As String = System.IO.Path.GetTempPath() - ' Application-spezifischen Ordner erstellen (z.B. "TaskFlow_Temp") - TEMP_DOCUMENT_FOLDER = System.IO.Path.Combine(baseTempPath, "DD_VALIDATOR_Documents") - - ' Ordner erstellen, falls nicht vorhanden - If Not System.IO.Directory.Exists(TEMP_DOCUMENT_FOLDER) Then - System.IO.Directory.CreateDirectory(TEMP_DOCUMENT_FOLDER) - LOGGER.Info($"Temporärer Dokumentordner erstellt: [{TEMP_DOCUMENT_FOLDER}]") - Else - LOGGER.Debug($"Temporärer Dokumentordner existiert bereits: [{TEMP_DOCUMENT_FOLDER}]") - End If - - Return True - Else - LOGGER.Debug("COPY_WMFILE_2TEMP = False → Kein Temp-Ordner nötig") - Return True - End If - - Catch ex As Exception - LOGGER.Error($"Fehler beim Erstellen des Temp-Ordners: {ex.Message}") - LOGGER.Error(ex) - Return False - End Try - End Function Private Sub DetachAllGridEvents(parent As Control) For Each ctrl As Control In parent.Controls If TypeOf ctrl Is GridControl Then @@ -776,9 +737,11 @@ Public Class frmValidator MyValidationLogger.Debug($"CloseReason: {e.CloseReason}") MyValidationLogger.Debug($"Cancel: {e.Cancel}") - ' *** KORREKTUR: StackTrace richtig erstellen *** - Dim st As New StackTrace(True) - MyValidationLogger.Debug($"StackTrace: {st.ToString()}") + Try + MyValidationLogger?.Debug($"StackTrace: {System.Environment.StackTrace}") + Catch ex As Exception + MyValidationLogger?.Debug($"StackTrace konnte nicht ermittelt werden: {ex.Message}") + End Try ' Zusätzliche Diagnostik MyValidationLogger.Debug($"_FormClosing-Flag: {_FormClosing}") @@ -898,15 +861,33 @@ Public Class frmValidator MyValidationLogger.Info($"[PERF frmValidation_FormClosing] nach ValidatorSearch.Close: {(DateTime.Now - perfLastCheck).TotalMilliseconds}ms") perfLastCheck = DateTime.Now End If + ' ========== NEU: Temp-Ordner bereinigen ========== + Try + If COPY_WMFILE_2TEMP = True Then + MyValidationLogger.Debug("🗑️ Bereinige Temp-Ordner beim Schließen...") + CleanupTempFolder() + End If + Catch cleanupEx As Exception + MyValidationLogger.Warn($"⚠️ Fehler beim Bereinigen des Temp-Ordners: {cleanupEx.Message}") + End Try + ' ========== ENDE NEU ========== - If LOG_HOTSPOTS Then - MyValidationLogger.Info($"[PERF frmValidation_FormClosing] GESAMT: {(DateTime.Now - perfStart).TotalMilliseconds}ms") - End If + ' Overlay schließen (falls vorhanden) + Try + ForceCloseOverlay() + Catch ex As Exception + MyValidationLogger.Debug($"Overlay-Cleanup-Fehler ignoriert: {ex.Message}") + End Try ' Cleanup DocumentPathHandler If _documentPathHandler IsNot Nothing Then _documentPathHandler.Cleanup() End If + If LOG_HOTSPOTS Then + MyValidationLogger.Info($"[PERF frmValidation_FormClosing] GESAMT: {(DateTime.Now - perfStart).TotalMilliseconds}ms") + End If + + Finally ' WICHTIG: Guard wird NICHT zurückgesetzt, da die Form nun wirklich schließt. @@ -919,6 +900,7 @@ Public Class frmValidator DT_AdditionalSearches_Resultset_Docs.Clear() End If End Sub + Private Sub CleanupTempFolder() Try If String.IsNullOrEmpty(TEMP_DOCUMENT_FOLDER) Then @@ -967,21 +949,20 @@ Public Class frmValidator End Sub Public Function Test_Additional_Data_Searches_Exist() As Boolean - If BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count > 0 Then + If DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count > 0 Then Dim oDataResultCommand As String Dim oDatatableDataResult As DataTable = Nothing - If BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count > 0 Then + If DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count > 0 Then 'Check whether DocData is there - Dim oConID = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("CONN_ID") - oDataResultCommand = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("SQL_COMMAND") + oDataResultCommand = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("SQL_COMMAND") oDataResultCommand = clsPatterns.ReplaceAllValues(oDataResultCommand, PanelValidatorControl, True) - oDatatableDataResult = DatabaseFallback.GetDatatableWithConnection(oDataResultCommand, oConID) + oDatatableDataResult = DatabaseFallback.GetDatatable(New GetDatatableOptions(oDataResultCommand, DatabaseType.ECM)) End If Dim oDataResultsExist As Boolean = False - If BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count > 0 Then + If DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count > 0 Then If Not IsNothing(oDatatableDataResult) Then If oDatatableDataResult.Rows.Count > 0 Then oDataResultsExist = True @@ -1019,68 +1000,162 @@ Public Class frmValidator Return False End If End Function - + Private Function IsValidDocSearchResult(pDt As DataTable) As Boolean + If pDt Is Nothing Then Return False + Return pDt.Columns.Contains("DocID") AndAlso pDt.Columns.Contains("FULL_FILENAME") + End Function Public Sub Load_Additional_Searches(Preload As Boolean) + If _isLoadingAdditionalSearches Then + MyValidationLogger.Debug("Load_Additional_Searches: Reentrance erkannt, Aufruf wird übersprungen.") + Exit Sub + End If + + _isLoadingAdditionalSearches = True Try - AdditionalDocResultsExist = Test_Additional_Doc_Searches_Exist() - AdditionalDataResultsExist = Test_Additional_Data_Searches_Exist() - 'If Test_Additional_Searches_Exist() Then - If AdditionalDataResultsExist = True Or AdditionalDocResultsExist = True Then - Try - If RibbonPageCustItm1 <> "" Then - Attmt_bbtnitmShow.Caption = RibbonPageCustItm1 - End If - rbnPgGroupAttmt.Visible = True - Attmnt_bbtnitm_LoadonClick.Checked = CONFIG.Config.ADDITIONAL_SEARCHES_LOAD_ONCLICK + MyValidationLogger.Debug("========================================") + MyValidationLogger.Debug("=== Load_Additional_Searches START ===") + MyValidationLogger.Debug($"Parameter: Preload={Preload}") + MyValidationLogger.Debug($"Current_Document: Id={Current_Document?.Id}, Path={Current_Document?.FullPath}") + MyValidationLogger.Debug("========================================") - Dim oConID As Int16 - Dim oCommand As String + Dim allSQLSearches As DataTable = DT_FILTERED_PROFILE_SEARCHES_DATA + Dim allDocSearches As DataTable = DT_FILTERED_PROFILE_SEARCHES_DOC - If Preload = True Then - _frmValidatorSearch.TabPreload(BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count, DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count, - BASEDATA_DT_PROFILE_SEARCHES_SQL, DT_FILTERED_PROFILE_SEARCHES_DOC) - If AdditionalDocResultsExist Then - _frmValidatorSearch._DTDocSearches = DT_FILTERED_PROFILE_SEARCHES_DOC - oConID = DT_FILTERED_PROFILE_SEARCHES_DOC.Rows(0).Item("CONN_ID") - oCommand = DT_FILTERED_PROFILE_SEARCHES_DOC.Rows(0).Item("SQL_COMMAND") - oCommand = clsPatterns.ReplaceAllValues(oCommand, PanelValidatorControl, True) - _frmValidatorSearch.RefreshTabDoc(oConID, oCommand, 0, DT_FILTERED_PROFILE_SEARCHES_DOC.Rows(0).Item("TAB_TITLE")) - End If + If allSQLSearches Is Nothing Then allSQLSearches = New DataTable() + If allDocSearches Is Nothing Then allDocSearches = New DataTable() + Dim hasDATASearches As Boolean = allSQLSearches.Rows.Count > 0 + Dim hasDOCSearches As Boolean = allDocSearches.Rows.Count > 0 + Dim hasConfiguredSearches As Boolean = hasDATASearches OrElse hasDOCSearches - If AdditionalDataResultsExist Then - _frmValidatorSearch._DTSQLSearches = BASEDATA_DT_PROFILE_SEARCHES_SQL - oConID = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("CONN_ID") - oCommand = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("SQL_COMMAND") - oCommand = clsPatterns.ReplaceAllValues(oCommand, PanelValidatorControl, True) - _frmValidatorSearch.Refresh_Load_GridSQL(oConID, oCommand, 0, BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("TAB_TITLE")) - - End If - Else - MyValidationLogger.Info("There are additional searches configured, but PRELOAD is false. So they won't be load!") - End If - - - Catch ex As Exception - MyValidationLogger.Error(ex) - End Try - - bbtniRefreshSearches.Visibility = BarItemVisibility.Always - - Else - MyValidationLogger.Debug("AdditionalData/Docresults = false!") - bbtniRefreshSearches.Visibility = BarItemVisibility.Never + If Not hasConfiguredSearches Then + AdditionalDataResultsExist = False + AdditionalDocResultsExist = False rbnPgGroupAttmt.Visible = False + Exit Sub End If - 'Else - ' Logger.Debug("Not loading AdditionalSearches 2...!") - ' bbtniRefreshSearches.Visibility = BarItemVisibility.Never - 'End If - Catch ex As Exception - MsgBox(ex.Message, MsgBoxStyle.Critical, ADDITIONAL_TITLE) - End Try + If RibbonPageCustItm1 <> "" Then + Attmt_bbtnitmShow.Caption = RibbonPageCustItm1 + End If + rbnPgGroupAttmt.Visible = True + Attmnt_bbtnitm_LoadonClick.Checked = CONFIG.Config.ADDITIONAL_SEARCHES_LOAD_ONCLICK + If _frmValidatorSearch Is Nothing OrElse _frmValidatorSearch.IsDisposed Then + _frmValidatorSearch = New frmValidatorSearch(Me, Environment) + End If + + MyValidationLogger.Debug("--- Ergebnisse werden geprüft (DATA/DOC) ---") + Dim validSQLSearches As DataTable = allSQLSearches.Clone() + Dim validDocSearches As DataTable = allDocSearches.Clone() + + If hasDATASearches Then + For i As Integer = 0 To allSQLSearches.Rows.Count - 1 + Dim searchRow = allSQLSearches.Rows(i) + Try + Dim tabTitle As String = If(searchRow.Item("TAB_TITLE")?.ToString(), $"SQL-Tab {i}") + Dim sqlCommand As String = searchRow.Item("SQL_COMMAND")?.ToString() + Dim connId As Integer = If(IsDBNull(searchRow.Item("CONN_ID")), 1, CInt(searchRow.Item("CONN_ID"))) + + If String.IsNullOrEmpty(sqlCommand) Then Continue For + + Dim replacedSql As String = clsPatterns.ReplaceAllValues(sqlCommand, Me.PanelValidatorControl, True) + Dim testDT = DatabaseFallback.GetDatatable(New GetDatatableOptions(replacedSql, DatabaseType.ECM) With {.ConnectionId = connId}) + + If testDT IsNot Nothing AndAlso testDT.Rows.Count > 0 Then + validSQLSearches.ImportRow(searchRow) + MyValidationLogger.Info($"✓ SQL-Search '{tabTitle}': {testDT.Rows.Count} Ergebnisse gefunden") + Else + MyValidationLogger.Debug($"ℹ️ SQL-Search '{tabTitle}': Keine Ergebnisse gefunden") + End If + Catch ex As Exception + MyValidationLogger.Error($"❌ Fehler beim Verarbeiten von SQL-Search Index {i}", ex) + End Try + Next + End If + + If hasDOCSearches Then + For i As Integer = 0 To allDocSearches.Rows.Count - 1 + Dim searchRow = allDocSearches.Rows(i) + Try + Dim tabTitle As String = If(searchRow.Item("TAB_TITLE")?.ToString(), $"Doc-Tab {i}") + Dim sqlCommand As String = searchRow.Item("SQL_COMMAND")?.ToString() + Dim connId As Integer = If(IsDBNull(searchRow.Item("CONN_ID")), 1, CInt(searchRow.Item("CONN_ID"))) + + If String.IsNullOrEmpty(sqlCommand) Then Continue For + + Dim replacedSql As String = clsPatterns.ReplaceAllValues(sqlCommand, Me.PanelValidatorControl, True) + Dim testDT = DatabaseFallback.GetDatatable(New GetDatatableOptions(replacedSql, DatabaseType.ECM) With {.ConnectionId = connId}) + + If testDT IsNot Nothing AndAlso testDT.Rows.Count > 0 Then + If IsValidDocSearchResult(testDT) Then + validDocSearches.ImportRow(searchRow) + MyValidationLogger.Info($"✓ Doc-Search '{tabTitle}': {testDT.Rows.Count} Dokumente gefunden") + Else + MyValidationLogger.Warn($"⚠️ Doc-Search '{tabTitle}' liefert kein Dokument-Schema (DocID/FULL_FILENAME) und wird übersprungen.") + End If + Else + MyValidationLogger.Debug($"ℹ️ Doc-Search '{tabTitle}': Keine Ergebnisse gefunden") + End If + Catch ex As Exception + MyValidationLogger.Error($"❌ Fehler beim Verarbeiten von Doc-Search Index {i}", ex) + End Try + Next + End If + + AdditionalDataResultsExist = validSQLSearches.Rows.Count > 0 + AdditionalDocResultsExist = validDocSearches.Rows.Count > 0 + MyValidationLogger.Debug($"Ergebnisprüfung abgeschlossen: AdditionalDataResultsExist={AdditionalDataResultsExist}, AdditionalDocResultsExist={AdditionalDocResultsExist}") + rbnPgGroupAttmt.Visible = AdditionalDataResultsExist OrElse AdditionalDocResultsExist + MyValidationLogger.Debug($"rbnPgGroupAttmt.Visible gesetzt auf: {rbnPgGroupAttmt.Visible} | Stack: {New System.Diagnostics.StackTrace(True).ToString().Split(vbCrLf)(1)}") + + If Not AdditionalDataResultsExist AndAlso Not AdditionalDocResultsExist Then + If _frmValidatorSearch IsNot Nothing AndAlso Not _frmValidatorSearch.IsDisposed Then + Dim emptySql As DataTable = allSQLSearches.Clone() + Dim emptyDoc As DataTable = allDocSearches.Clone() + _frmValidatorSearch._DTDATASearches = emptySql + _frmValidatorSearch._DTDocSearches = emptyDoc + _frmValidatorSearch.TabPreload(0, 0, emptySql, emptyDoc) + End If + + MyValidationLogger.Debug("Load_Additional_Searches: Keine Ergebnisse (DATA/DOC) -> Exit.") + Exit Sub + End If + + If Preload Then + MyValidationLogger.Debug("--- PRELOAD-MODUS aktiviert (mit Show) ---") + Dim preloadSQL As DataTable = If(allSQLSearches.Rows.Count > 0, allSQLSearches.Copy(), allSQLSearches.Clone()) + Dim preloadDoc As DataTable = If(allDocSearches.Rows.Count > 0, allDocSearches.Copy(), allDocSearches.Clone()) + + _frmValidatorSearch._DTDATASearches = preloadSQL + _frmValidatorSearch._DTDocSearches = preloadDoc + _frmValidatorSearch.TabPreload(preloadSQL.Rows.Count, preloadDoc.Rows.Count, preloadSQL, preloadDoc) + + ' Vorgabe: Preload=True => Formular öffnen + If Not _frmValidatorSearch.Visible Then + _frmValidatorSearch.Show() + End If + + Return + End If + + MyValidationLogger.Debug("--- NORMAL-MODUS aktiviert (nur vorbereiten, NICHT Show) ---") + Dim sqlForUi As DataTable = If(validSQLSearches.Rows.Count > 0, validSQLSearches.Copy(), validSQLSearches.Clone()) + Dim docForUi As DataTable = If(validDocSearches.Rows.Count > 0, validDocSearches.Copy(), validDocSearches.Clone()) + + _frmValidatorSearch._DTDATASearches = sqlForUi + _frmValidatorSearch._DTDocSearches = docForUi + _frmValidatorSearch.TabPreload(sqlForUi.Rows.Count, docForUi.Rows.Count, sqlForUi, docForUi) + + ' Vorgabe: Preload=False => nur vorbereiten, KEIN Show hier + MyValidationLogger.Debug("Load_Additional_Searches: Vorbereitung abgeschlossen (Preload=False), Formular bleibt geschlossen.") + + Catch ex As Exception + MyValidationLogger.Error("❌ Kritischer Fehler in Load_Additional_Searches", ex) + Finally + _isLoadingAdditionalSearches = False + MyValidationLogger.Debug("=== Load_Additional_Searches END ===") + End Try End Sub Private Sub EnsureSqlControlLookup() If _CachedSqlControlsByGuid IsNot Nothing Then @@ -1336,14 +1411,14 @@ Public Class frmValidator End If ' ========== ENDE ========== - oSQL = $"SELECT IIF(LANG.CAPTION IS NULL,T.SPALTEN_HEADER,LANG.CAPTION) SPALTEN_HEADER_LANG, T.* from TBPM_CONTROL_TABLE T INNER JOIN TBPM_PROFILE_CONTROLS T1 ON T.CONTROL_ID = T1.GUID + oSQL = $"SELECT IIF(LANG.CAPTION IS NULL,T.SPALTEN_HEADER,LANG.CAPTION) SPALTEN_HEADER_LANG, T.* from TBPM_CONTROL_TABLE T WITH (NOLOCK) INNER JOIN TBPM_PROFILE_CONTROLS T1 WITH (NOLOCK) ON T.CONTROL_ID = T1.GUID LEFT JOIN (SELECT * FROM TBPM_CONTOL_TABLE_LANG WHERE LANG_CODE = '{USER_LANGUAGE}') LANG ON T.GUID = LANG.COL_ID WHERE T1.CONTROL_ACTIVE = 1 AND T.CONTROL_ID = T1.GUID AND T1.PROFIL_ID = {CURRENT_ProfilGUID} ORDER BY T.SEQUENCE" DT_COLUMNS_GRID = DatabaseFallback.GetDatatable("TBPM_CONTROL_TABLE", New GetDatatableOptions(oSQL, DatabaseType.ECM) With { .FilterExpression = $"PROFIL_ID = {CURRENT_ProfilGUID} AND LANG_CODE = '{USER_LANGUAGE}' ", .SortByColumn = "SEQUENCE" }) - oSQL = "SELECT T1.GUID As CONTROL_ID, T1.PROFIL_ID, T.CONNECTION_ID, T.SQL_COMMAND, T.SPALTENNAME,T.FORMATTYPE,T.FORMATSTRING, T.ADVANCED_LOOKUP from TBPM_CONTROL_TABLE T, TBPM_PROFILE_CONTROLS T1 WHERE T1.CONTROL_ACTIVE = 1 AND T.CONTROL_ID = T1.GUID AND T1.PROFIL_ID = " & CURRENT_ProfilGUID & " AND LEN(T.SQL_COMMAND) > 0 ORDER BY T.SEQUENCE" + oSQL = "SELECT T1.GUID As CONTROL_ID, T1.PROFIL_ID, T.CONNECTION_ID, T.SQL_COMMAND, T.SPALTENNAME,T.FORMATTYPE,T.FORMATSTRING, T.ADVANCED_LOOKUP from TBPM_CONTROL_TABLE T WITH (NOLOCK), TBPM_PROFILE_CONTROLS T1 WITH (NOLOCK) WHERE T1.CONTROL_ACTIVE = 1 AND T.CONTROL_ID = T1.GUID AND T1.PROFIL_ID = " & CURRENT_ProfilGUID & " AND LEN(T.SQL_COMMAND) > 0 ORDER BY T.SEQUENCE" 'DT_COLUMNS_GRID_WITH_SQL = DataASorDB.GetDatatable("DD_ECM", oSQL, "DTGRID_SQL_DEFINITION", $"PROFIL_ID = {CURRENT_ProfilGUID}", "SEQUENCE") DT_COLUMNS_GRID_WITH_SQL = DatabaseFallback.GetDatatable("DTGRID_SQL_DEFINITION", New GetDatatableOptions(oSQL, DatabaseType.ECM) With { .FilterExpression = $"PROFIL_ID = {CURRENT_ProfilGUID}", @@ -1664,7 +1739,7 @@ Public Class frmValidator Catch ex As Exception Dim st As New StackTrace(True) st = New StackTrace(ex, True) - 'Logger.Error(ex) + 'MyValidationLogger.Error(ex) Dim omsg = $"Unexpected Error in Create_Controls (Select Case) [{oControlInfo}] - ERROR: {ex.Message}" MyValidationLogger.Warn(omsg) If DEBUG = False Then MsgBox(omsg, MsgBoxStyle.Critical, "Attention:") @@ -2783,7 +2858,8 @@ Public Class frmValidator ' KstVerantwortliche bereits befüllt wurde. If changedControlNames.Count > 0 Then MyValidationLogger.Debug($"[SetControlValues_FromControl] Führe Controls2beEnabled für {changedControlNames.Count} geänderte Controls aus...") - _CachedSqlScalarCache.Clear() ' SQL_ENABLE-Cache invalidieren, damit frische Werte geprüft werden + ' WICHTIG: SQL-Cache leeren ist NICHT nötig, da Controls2beEnabled bereits frische DB-Werte holt + ' _CachedSqlScalarCache.Clear() wurde entfernt, um Performance zu verbessern For Each changedName As String In changedControlNames Try Controls2beEnabled(changedName) @@ -2946,7 +3022,7 @@ Public Class frmValidator Finally _suppressLookupEvents = wasSuppressed _DependingControl_In_Action = False - LOGGER.Debug($"[LookupControl_DependingControls] _suppressLookupEvents zurückgesetzt auf [{wasSuppressed}]") + MyValidationLogger.Debug($"[LookupControl_DependingControls] _suppressLookupEvents zurückgesetzt auf [{wasSuppressed}]") End Try Next End Sub @@ -3425,16 +3501,16 @@ Public Class frmValidator MyValidationLogger.Debug("Skipping: Invalid SQL_ENABLE_ON_LOAD") Continue For End If - LOGGER.Debug($"[Controls2B_EnDisabled_onLoad] BEFORE ReplaceAllValues for Control [{oENABLE_CtrlName}]") - LOGGER.Debug($" SQL Command: [{oSqlCommand}]") - LOGGER.Debug($" Panel Controls Count: [{PanelValidatorControl?.Controls?.Count - 1}]") + MyValidationLogger.Debug($"[Controls2B_EnDisabled_onLoad] BEFORE ReplaceAllValues for Control [{oENABLE_CtrlName}]") + MyValidationLogger.Debug($" SQL Command: [{oSqlCommand}]") + MyValidationLogger.Debug($" Panel Controls Count: [{PanelValidatorControl?.Controls?.Count - 1}]") Try oSqlCommand = clsPatterns.ReplaceAllValues(oSqlCommand, PanelValidatorControl, True) - LOGGER.Debug($"[Controls2B_EnDisabled_onLoad] AFTER ReplaceAllValues: [{oSqlCommand}]") + MyValidationLogger.Debug($"[Controls2B_EnDisabled_onLoad] AFTER ReplaceAllValues: [{oSqlCommand}]") Catch replaceEx As Exception - LOGGER.Error(replaceEx) + MyValidationLogger.Error(replaceEx) MyValidationLogger.Error($"❌ [Controls2B_EnDisabled_onLoad] ReplaceAllValues CRASH für [{oENABLE_CtrlName}]: {replaceEx.Message}") - LOGGER.Error($" Original SQL: [{oSqlCommand}]") + MyValidationLogger.Error($" Original SQL: [{oSqlCommand}]") Continue For ' ← Überspringe dieses Control und mache weiter End Try ' FIX: Null/Empty-Check nach ReplaceAllValues — verhindert Crash bei leeren Control-Werten @@ -3680,14 +3756,14 @@ Public Class frmValidator Dim cs As String = DatabaseFallback.GetConnectionString(oConnectionId) If allgFunk.CheckValue_Exists(dr.Item("SQL_UEBERPRUEFUNG"), "@Eingabe", control.Text, dr.Item("TYP"), cs, CURRENT_ProfilGUID) = True Then - Return True - Else - errormessage = "the input-value '" & control.Text & "' is not existing in database!" - My.Settings.Save() - Return False - End If - Else Return True + Else + errormessage = "the input-value '" & control.Text & "' is not existing in database!" + My.Settings.Save() + Return False + End If + Else + Return True End If End If Next @@ -3878,28 +3954,42 @@ Public Class frmValidator MyValidationLogger.Debug($"GetDocPathWindows: Filestore is {ClassConstants.OpModeFS_ZF}") End If + If COPY_WMFILE_2TEMP = True Then ' Optionen konfigurieren - Dim options As New ClassDocumentPathHandler.DocumentPathOptions With { - .EnableMapping = True, - .WMSuffix = WMSUFFIX, - .SpecificDrive = If(Len(MAP_SHARE_DRIVE) = 1, MAP_SHARE_DRIVE, ""), - .DriveBlacklist = MAP_BLACKLIST, - .CopyToTemp = True, - .TempFolder = TEMP_DOCUMENT_FOLDER, - .UnmapAfterCopy = True - } + Dim options As New DocumentPathHandler.DocumentPathOptions With { + .EnableMapping = True, + .WMSuffix = WMSUFFIX, + .SpecificDrive = If(Len(MAP_SHARE_DRIVE) = 1, MAP_SHARE_DRIVE, ""), + .DriveBlacklist = MAP_BLACKLIST, + .CopyToTemp = True, + .TempFolder = TEMP_DOCUMENT_FOLDER, + .UnmapAfterCopy = True + } ' Verarbeiten Dim result = _documentPathHandler.ProcessDocumentPath(oFilePath_from_DB, options) - If result.Success Then + ' Guard: FinalPath muss nutzbar sein + If result.Success AndAlso + Not String.IsNullOrWhiteSpace(result.FinalPath) AndAlso + File.Exists(result.FinalPath) Then + DocPathWindows = result.FinalPath WMDocPathWindows = oFilePath_from_DB MyValidationLogger.Info($"✓ Dokument verarbeitet: [{Path.GetFileName(result.FinalPath)}]") Else - MyValidationLogger.Error($"❌ Fehler: {result.ErrorMessage}") + MyValidationLogger.Warn($"⚠️ Dokumentpfad-Verarbeitung fehlgeschlagen: {result.ErrorMessage}") + MyValidationLogger.Warn($"⚠️ Fallback auf Originalpfad: [{oFilePath_from_DB}]") + DocPathWindows = oFilePath_from_DB + WMDocPathWindows = oFilePath_from_DB + + ' Sicherheitsprüfung des Fallbacks + If Not File.Exists(DocPathWindows) Then + MyValidationLogger.Error($"❌ Auch Fallback-Pfad existiert nicht: [{DocPathWindows}]") + Return False + End If End If Else DocPathWindows = oFilePath_from_DB @@ -3982,9 +4072,12 @@ Public Class frmValidator OverrideAll = False _Indexe_Loaded = False MyValidationLogger.Debug("In Load_Next_Document") - ' Alte Temp-Datei aufräumen (falls vorhanden) - If Not first Then - CleanupCurrentTempFile() + If Not first AndAlso COPY_WMFILE_2TEMP = True Then + Try + CleanupCurrentTempFile() + Catch cleanupEx As Exception + MyValidationLogger.Warn($"⚠️ Fehler beim Löschen der vorherigen Temp-Datei: {cleanupEx.Message}") + End Try End If Dim layoutSuspended As Boolean = False Try @@ -4857,7 +4950,7 @@ Public Class frmValidator End If Else - MyValidationLogger.Debug($"GetVariableValuefromSource - IDBCase...") + MyValidationLogger.Debug($"GetVariableValuefromSource - IDBCase - IndexName: {oSourceIndexName}, IDBTyp: {oIDBTyp}, FromIDB: {FromIDB}") oValuefromSource = IDBData.GetVariableValue(oSourceIndexName, oIDBTyp, FromIDB) End If Return oValuefromSource @@ -4870,7 +4963,7 @@ Public Class frmValidator Sub FillIndexValues(first As Boolean, Optional SingleAttribute As String = "") If _SetControlValue_In_Action AndAlso Not String.IsNullOrWhiteSpace(SingleAttribute) Then - MyValidationLogger.Debug("FillIndexValues", $"Übersprungen: SetControlValue läuft für [{SingleAttribute}]") + MyValidationLogger.Debug("FillIndexValues", $"⛔ BLOCKIERT während SetControlValue - Attribut [{SingleAttribute}] nicht aus IDB neu laden") Exit Sub End If @@ -5702,11 +5795,16 @@ Public Class frmValidator Dim oDEPENDING_COLUMN = oRow.Item("SPALTENNAME") Dim oSqlCommand = oRow.Item("SQL_COMMAND") Dim oCONNID = 1 - If Not IsNullOrEmpty(oRow.Item("CONN_ID")) Then - oCONNID = CInt(oRow.Item("CONN_ID")) - Else - MyValidationLogger.Warn($"⚠️ CONN_ID is null or empty for CONTROL_ID {oDEPENDING_CTRL_ID} - defaulting to 1") - End If + Try + If Not IsNullOrEmpty(oRow.Item("CONNECTION_ID")) Then + oCONNID = CInt(oRow.Item("CONNECTION_ID")) + Else + MyValidationLogger.Warn($"⚠️ CONN_ID is null or empty for CONTROL_ID {oDEPENDING_CTRL_ID} - defaulting to 1") + End If + Catch ex As Exception + MyValidationLogger.Warn($"⚠️ FillIndexValues - Error in creating dropdown for Grid - CONTROL_ID {oDEPENDING_CTRL_ID}: " & ex.Message) + End Try + Dim oAdvancedLookup = oRow.Item("ADVANCED_LOOKUP") oSqlCommand = clsPatterns.ReplaceAllValues(oSqlCommand, PanelValidatorControl, True) @@ -5815,7 +5913,7 @@ Public Class frmValidator _Indexe_Loaded = True Load_Additional_Searches(Not CONFIG.Config.ADDITIONAL_SEARCHES_LOAD_ONCLICK) - + MyValidationLogger.Debug($"[FillIndexValues] Nach Load_Additional_Searches: rbnPgGroupAttmt.Visible={rbnPgGroupAttmt.Visible}") If LOG_HOTSPOTS Then MyValidationLogger.Info($"[PERF FillIndexValues] Nach Load_Additional_Searches: {(DateTime.Now - perfLastCheck).TotalMilliseconds}ms") perfLastCheck = DateTime.Now @@ -7623,7 +7721,7 @@ Public Class frmValidator If IDB_ACTIVE Then If oMissing = False Then If Not IDBData.CommitBatch() Then - LOGGER.Warn("CommitBatch failed in Check_UpdateIndexe") + MyValidationLogger.Warn("CommitBatch failed in Check_UpdateIndexe") oMissing = True End If Else @@ -8231,13 +8329,50 @@ Public Class frmValidator End Sub Sub TryOpen_Additional_Searches() Try - _frmValidatorSearch?.Close() - _frmValidatorSearch = New frmValidatorSearch(Me, Environment) - _frmValidatorSearch.Show() + MyValidationLogger.Debug("=== TryOpen_Additional_Searches START ===") + + Dim hasDATASearches As Boolean = (DT_FILTERED_PROFILE_SEARCHES_DATA IsNot Nothing AndAlso DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count > 0) + Dim hasDOCSearches As Boolean = (DT_FILTERED_PROFILE_SEARCHES_DOC IsNot Nothing AndAlso DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count > 0) + + If Not hasDATASearches AndAlso Not hasDOCSearches Then Exit Sub + + ' 1) Immer vorbereiten (ohne Show) + Load_Additional_Searches(False) + + If _frmValidatorSearch Is Nothing OrElse _frmValidatorSearch.IsDisposed Then + MyValidationLogger.Debug("Instantiating frmValidatorSearch for additional searches...") + _frmValidatorSearch = New frmValidatorSearch(Me, Environment) + End If + + ' 2) Öffnen nur hier per User-Aktion + Dim wasVisible As Boolean = _frmValidatorSearch.Visible + If Not wasVisible Then + MyValidationLogger.Debug("Showing frmValidatorSearch for additional searches...") + _frmValidatorSearch.Show() + Else + MyValidationLogger.Debug("Bringing frmValidatorSearch to front for additional searches...") + _frmValidatorSearch.BringToFront() + End If + + ' 3) WICHTIG: Nach erstem Show erneut binden (UI ist jetzt vollständig initialisiert) + If Not wasVisible Then + Me.BeginInvoke(New Action(Sub() + Try + If _frmValidatorSearch IsNot Nothing AndAlso + Not _frmValidatorSearch.IsDisposed AndAlso + _frmValidatorSearch.Visible Then + MyValidationLogger.Debug("TryOpen_Additional_Searches: Post-Show Rebind gestartet") + Load_Additional_Searches(False) + End If + Catch ex As Exception + MyValidationLogger.Error("❌ Fehler beim Post-Show Rebind in TryOpen_Additional_Searches", ex) + End Try + End Sub)) + End If + Catch ex As Exception - MyValidationLogger.Error(ex) + MyValidationLogger.Error("❌ Fehler in TryOpen_Additional_Searches", ex) End Try - Load_Additional_Searches(True) End Sub Private Sub bbtniRefresh_ItemClick(sender As Object, e As ItemClickEventArgs) Handles bbtniRefresh.ItemClick ' ========== KRITISCH: Events KOMPLETT blockieren während Refresh ========== @@ -8416,6 +8551,7 @@ Public Class frmValidator End Sub Private Sub Attmt_bbtnitmShow_Click(sender As Object, e As ItemClickEventArgs) Handles Attmt_bbtnitmShow.ItemClick + MyValidationLogger.Debug("Attmt_bbtnitmShow.ItemClick...") TryOpen_Additional_Searches() End Sub @@ -8627,13 +8763,13 @@ Public Class frmValidator 'For Each oControl As Control In PanelValidatorControl.Controls ' If DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Attribute = PROFIL_NOT_RESP_COMMENT_ATTR Then ' Dim oName = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Name - ' Logger.Debug($"Got the control for the NR Attribute :{oName}..Gettin the value...") + ' MyValidationLogger.Debug($"Got the control for the NR Attribute :{oName}..Gettin the value...") ' If oControl.GetType() = GetType(DevExpress.XtraEditors.TextEdit) Or oControl.GetType() = GetType(MemoEdit) Then ' Try ' DirectCast(oControl, DevExpress.XtraEditors.TextEdit).EditValue = frmDialog.oComment ' Exit For ' Catch ex As Exception - ' Logger.Warn($"⚠️ Unexpected error in Setting EditValue NotResponsible: {ex.Message}") + ' MyValidationLogger.Warn($"⚠️ Unexpected error in Setting EditValue NotResponsible: {ex.Message}") ' End Try ' End If ' End If diff --git a/app/TaskFlow/frmValidatorSearch.resx b/app/TaskFlow/frmValidatorSearch.resx index 7b1fad1..22269a6 100644 --- a/app/TaskFlow/frmValidatorSearch.resx +++ b/app/TaskFlow/frmValidatorSearch.resx @@ -138,7 +138,7 @@ 0, 0 - 349, 557 + 279, 446 @@ -187,7 +187,7 @@ 0, 0 - 349, 557 + 279, 446 1 @@ -229,7 +229,7 @@ 0, 0 - 349, 557 + 279, 446 1 @@ -271,7 +271,7 @@ 0, 0 - 349, 557 + 279, 446 1 @@ -313,7 +313,7 @@ 0, 0 - 349, 557 + 279, 446 1 @@ -454,7 +454,7 @@ 0, 0 - 344, 560 + 275, 448 1 @@ -502,7 +502,7 @@ 0, 0 - 511, 560 + 275, 448 2 @@ -520,7 +520,7 @@ 0 - 511, 560 + 344, 560 Search2 @@ -544,7 +544,7 @@ 0, 0 - 511, 560 + 275, 448 2 @@ -562,7 +562,7 @@ 0 - 511, 560 + 344, 560 XtraTabPage1 @@ -586,7 +586,7 @@ 0, 0 - 511, 560 + 275, 448 2 @@ -604,7 +604,7 @@ 0 - 511, 560 + 344, 560 XtraTabPage2 @@ -628,7 +628,7 @@ 0, 0 - 511, 560 + 275, 448 2 @@ -646,7 +646,7 @@ 0 - 511, 560 + 344, 560 XtraTabPage3 diff --git a/app/TaskFlow/frmValidatorSearch.vb b/app/TaskFlow/frmValidatorSearch.vb index 32ad9fe..47dbe3d 100644 --- a/app/TaskFlow/frmValidatorSearch.vb +++ b/app/TaskFlow/frmValidatorSearch.vb @@ -1,4 +1,5 @@ Imports System.ComponentModel +Imports System.Data.SqlClient Imports System.IO Imports System.Runtime.InteropServices Imports DevExpress.Utils @@ -7,12 +8,13 @@ Imports DevExpress.XtraGrid.Columns Imports DevExpress.XtraGrid.Views.Base Imports DevExpress.XtraGrid.Views.Grid Imports DevExpress.XtraTab +Imports DigitalData.GUIs.Common Imports DigitalData.GUIs.Common.DocumentResultList +Imports DigitalData.Modules.Base Imports DigitalData.Modules.EDMI.API.Constants Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback -Imports DigitalData.Modules.ZooFlow.Constants Imports DigitalData.Modules.ZooFlow -Imports DigitalData.GUIs.Common +Imports DigitalData.Modules.ZooFlow.Constants Public Class frmValidatorSearch @@ -43,7 +45,7 @@ Public Class frmValidatorSearch #End Region Public formLoaded As Boolean = False Public _DTDocSearches As DataTable - Public _DTSQLSearches As DataTable + Public _DTDATASearches As DataTable Private _frmValidator As frmValidator 'You need a reference to Form1 Private Shared BW_DocPath As String Private Shared BW_DocID As Integer @@ -51,7 +53,8 @@ Public Class frmValidatorSearch Private Documentloader As Loader Private Property OperationMode As OperationMode Private ReadOnly Environment As Environment - Private _documentPathHandler As ClassDocumentPathHandler + Private _documentPathHandler As DocumentPathHandler + Private _suppressTabEvents As Boolean = False Public Sub New(pfrmValidator As frmValidator, pEnvironment As Environment) @@ -80,52 +83,354 @@ Public Class frmValidatorSearch End Function Public Sub TabPreload(TabCountSQL As Integer, TabCountDoc As Integer, DTSQL As DataTable, DTDOC As DataTable) Try - SplitContainerSearches.Panel1Collapsed = IIf(DTSQL.Rows.Count > 0, False, True) - SplitContainerSearches.Panel2Collapsed = IIf(DTDOC.Rows.Count > 0, False, True) - If Me.InvokeRequired() Then - Me.Invoke(Sub() TabPreload(TabCountSQL, TabCountDoc, DTSQL, DTDOC)) - Else - '#### SQL Tabs Design Laden - - If DTSQL.Rows.Count > 0 Then - LOGGER.Debug(String.Format("[{0} SQL-Definitions]", DTSQL.Rows.Count)) - For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1 - If XtraTabControlSQL.TabPages(p).TabIndex >= TabCountSQL Then - XtraTabControlSQL.TabPages(p).PageVisible = False - End If - Next - For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1 - If XtraTabControlSQL.TabPages(p).TabIndex >= TabCountSQL Then - Exit For - End If - XtraTabControlSQL.TabPages(p).Text = DTSQL.Rows(p).Item("TAB_TITLE") - - Next - End If - - If DTDOC.Rows.Count > 0 Then - LOGGER.Debug(String.Format("[{0} Doc-Definitions]", DTDOC.Rows.Count)) - '#### Doc Tabs Design Laden - For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1 - If XtraTabControlDocs.TabPages(p).TabIndex >= TabCountDoc Then - XtraTabControlDocs.TabPages(p).PageVisible = False - End If - Next - For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1 - If XtraTabControlDocs.TabPages(p).TabIndex >= TabCountDoc Then - Exit For - End If - XtraTabControlDocs.TabPages(p).Text = DTDOC.Rows(p).Item("TAB_TITLE") - Next - - End If - + LOGGER.Debug("=== TabPreload START ===") + LOGGER.Debug($"Parameters: TabCountSQL={TabCountSQL}, TabCountDoc={TabCountDoc}, DTSQL.Rows={If(DTSQL?.Rows.Count, 0)}, DTDOC.Rows={If(DTDOC?.Rows.Count, 0)}") + ' Validierung der Parameter + If DTSQL Is Nothing Then + LOGGER.Warn("⚠️ DTSQL ist Nothing") + DTSQL = New DataTable() + End If + If DTDOC Is Nothing Then + LOGGER.Warn("⚠️ DTDOC ist Nothing") + DTDOC = New DataTable() End If - Catch ex As Exception - LOGGER.Error(ex) - End Try + ' Thread-Synchronisation + If Me.InvokeRequired() Then + LOGGER.Debug("InvokeRequired=True, rufe auf UI-Thread auf") + Me.Invoke(Sub() TabPreload(TabCountSQL, TabCountDoc, DTSQL, DTDOC)) + Return + End If + + LOGGER.Debug("Ausführung auf UI-Thread") + + ' ============================================================ + ' WICHTIG: Variablen VOR Try-Block deklarieren + ' ============================================================ + Dim hasSQLData As Boolean = False + Dim hasDocData As Boolean = False + Dim actualSQLTabCount As Integer = 0 + Dim actualDocTabCount As Integer = 0 + + ' ============================================================ + ' KRITISCH: Events DEAKTIVIEREN während der Rekonfiguration + ' ============================================================ + _suppressTabEvents = True + LOGGER.Debug("🚫 Tab-Events deaktiviert") + + Try + ' KRITISCH: DataTables SOFORT zuweisen + _DTDATASearches = DTSQL + _DTDocSearches = DTDOC + LOGGER.Debug($"✓ _DTDATASearches und _DTDocSearches zugewiesen: SQL={_DTDATASearches.Rows.Count}, Doc={_DTDocSearches.Rows.Count}") + + ' TabCount-Validierung + actualSQLTabCount = Math.Min(TabCountSQL, DTSQL.Rows.Count) + actualDocTabCount = Math.Min(TabCountDoc, DTDOC.Rows.Count) + + If actualSQLTabCount <> TabCountSQL Then + LOGGER.Warn($"⚠️ TabCountSQL korrigiert: {TabCountSQL} → {actualSQLTabCount}") + End If + If actualDocTabCount <> TabCountDoc Then + LOGGER.Warn($"⚠️ TabCountDoc korrigiert: {TabCountDoc} → {actualDocTabCount}") + End If + + ' Panel-Sichtbarkeit + hasSQLData = DTSQL.Rows.Count > 0 AndAlso actualSQLTabCount > 0 + hasDocData = DTDOC.Rows.Count > 0 AndAlso actualDocTabCount > 0 + + SplitContainerSearches.Panel1Collapsed = Not hasSQLData + SplitContainerSearches.Panel2Collapsed = Not hasDocData + + LOGGER.Debug($"Panel1Collapsed (SQL)={SplitContainerSearches.Panel1Collapsed}, Panel2Collapsed (Doc)={SplitContainerSearches.Panel2Collapsed}") + + ' ============================================================ + ' KRITISCH: DocumentViewer nur bei Doc-Searches sichtbar + ' ============================================================ + If hasDocData Then + If Not DocumentViewer1.Visible Then + DocumentViewer1.Visible = True + LOGGER.Debug("✓ DocumentViewer1 sichtbar gemacht (Doc-Searches vorhanden)") + End If + Else + If DocumentViewer1.Visible Then + DocumentViewer1.Visible = False + LOGGER.Debug("✓ DocumentViewer1 ausgeblendet (keine Doc-Searches)") + End If + End If + + ' #### SQL Tabs konfigurieren + If hasSQLData Then + LOGGER.Debug($"Konfiguriere SQL-Tabs: {DTSQL.Rows.Count} Definitionen") + + ' ALLE Tabs unsichtbar machen + For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1 + XtraTabControlSQL.TabPages(p).PageVisible = False + Next + LOGGER.Debug($"Alle {XtraTabControlSQL.TabPages.Count} SQL-Tabs auf PageVisible=False gesetzt") + + ' Nur benötigte Tabs sichtbar machen + Dim processedTabs As Integer = 0 + For p As Integer = 0 To Math.Min(actualSQLTabCount - 1, XtraTabControlSQL.TabPages.Count - 1) + If p < DTSQL.Rows.Count Then + Try + Dim tabTitle As String = If(DTSQL.Rows(p).Item("TAB_TITLE")?.ToString(), $"Tab {p + 1}") + XtraTabControlSQL.TabPages(p).Text = tabTitle + XtraTabControlSQL.TabPages(p).PageVisible = True + processedTabs += 1 + LOGGER.Debug($"SQL-Tab {p}: Text='{tabTitle}', PageVisible=True") + Catch ex As Exception + LOGGER.Error($"❌ Fehler beim Konfigurieren von SQL-Tab {p}", ex) + End Try + End If + Next + + LOGGER.Info($"✓ {processedTabs} SQL-Tabs konfiguriert") + Else + LOGGER.Debug("Keine SQL-Daten, alle Tabs ausblenden") + For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1 + XtraTabControlSQL.TabPages(p).PageVisible = False + Next + End If + + ' #### Doc Tabs konfigurieren + If hasDocData Then + LOGGER.Debug($"Konfiguriere Doc-Tabs: {DTDOC.Rows.Count} Definitionen") + + ' ALLE Tabs unsichtbar machen + For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1 + XtraTabControlDocs.TabPages(p).PageVisible = False + Next + LOGGER.Debug($"Alle {XtraTabControlDocs.TabPages.Count} Doc-Tabs auf PageVisible=False gesetzt") + + ' Nur benötigte Tabs sichtbar machen + Dim processedTabs As Integer = 0 + For p As Integer = 0 To Math.Min(actualDocTabCount - 1, XtraTabControlDocs.TabPages.Count - 1) + If p < DTDOC.Rows.Count Then + Try + Dim tabTitle As String = If(DTDOC.Rows(p).Item("TAB_TITLE")?.ToString(), $"Tab {p + 1}") + XtraTabControlDocs.TabPages(p).Text = tabTitle + XtraTabControlDocs.TabPages(p).PageVisible = True + processedTabs += 1 + LOGGER.Debug($"Doc-Tab {p}: Text='{tabTitle}', PageVisible=True") + Catch ex As Exception + LOGGER.Error($"❌ Fehler beim Konfigurieren von Doc-Tab {p}", ex) + End Try + End If + Next + + LOGGER.Info($"✓ {processedTabs} Doc-Tabs konfiguriert") + Else + LOGGER.Debug("Keine Doc-Daten, alle Tabs ausblenden") + For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1 + XtraTabControlDocs.TabPages(p).PageVisible = False + Next + End If + + Finally + ' ============================================================ + ' KRITISCH: Events REAKTIVIEREN nach Rekonfiguration + ' ============================================================ + _suppressTabEvents = False + LOGGER.Debug("✓ Tab-Events reaktiviert") + End Try + + ' JETZT manuell den ersten sichtbaren Tab aktivieren + ' ERSETZE im unteren Teil von TabPreload den SQL-Block: + If hasSQLData AndAlso XtraTabControlSQL.TabPages.Count > 0 Then + Dim firstVisibleSqlIndex As Integer = -1 + For i As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1 + If XtraTabControlSQL.TabPages(i).PageVisible Then + firstVisibleSqlIndex = i + Exit For + End If + Next + + If firstVisibleSqlIndex >= 0 AndAlso _DTDATASearches IsNot Nothing AndAlso firstVisibleSqlIndex < _DTDATASearches.Rows.Count Then + LOGGER.Debug($"Setze SQL SelectedTabPageIndex manuell auf {firstVisibleSqlIndex}") + + Dim prevSuppress As Boolean = _suppressTabEvents + _suppressTabEvents = True + XtraTabControlSQL.SelectedTabPageIndex = firstVisibleSqlIndex + _suppressTabEvents = prevSuppress + + Try + Dim selectedRow As DataRow = _DTDATASearches.Rows(firstVisibleSqlIndex) + Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID"))) + Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString() + Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {firstVisibleSqlIndex}") + + If Not String.IsNullOrEmpty(oCommand) Then + oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) + LOGGER.Debug($"SQL-Tab {firstVisibleSqlIndex}: erzwungener Initial-Refresh") + RefreshTabSQL(oConID, oCommand, firstVisibleSqlIndex, oTabCaption) + End If + Catch ex As Exception + LOGGER.Error("❌ Fehler beim SQL-Initial-Refresh in TabPreload", ex) + End Try + End If + End If + + ' ERSETZE im unteren Teil von TabPreload den Doc-Block: + If hasDocData AndAlso XtraTabControlDocs.TabPages.Count > 0 Then + Dim firstVisibleDocIndex As Integer = -1 + For i As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1 + If XtraTabControlDocs.TabPages(i).PageVisible Then + firstVisibleDocIndex = i + Exit For + End If + Next + + If firstVisibleDocIndex >= 0 AndAlso _DTDocSearches IsNot Nothing AndAlso firstVisibleDocIndex < _DTDocSearches.Rows.Count Then + LOGGER.Debug($"Setze Doc SelectedTabPageIndex manuell auf {firstVisibleDocIndex}") + + Dim prevSuppress As Boolean = _suppressTabEvents + _suppressTabEvents = True + XtraTabControlDocs.SelectedTabPageIndex = firstVisibleDocIndex + _suppressTabEvents = prevSuppress + + Try + Dim selectedRow As DataRow = _DTDocSearches.Rows(firstVisibleDocIndex) + Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID"))) + Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString() + Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {firstVisibleDocIndex}") + + If Not String.IsNullOrEmpty(oCommand) Then + oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) + LOGGER.Debug($"Doc-Tab {firstVisibleDocIndex}: erzwungener Initial-Refresh") + RefreshTabDoc(oConID, oCommand, firstVisibleDocIndex, oTabCaption) + End If + Catch ex As Exception + LOGGER.Error("❌ Fehler beim Doc-Initial-Refresh in TabPreload", ex) + End Try + End If + End If + + LOGGER.Debug("=== TabPreload END ===") + + Catch ex As Exception + LOGGER.Error("❌ Fehler in TabPreload", ex) + LOGGER.Error($"Stack Trace: {ex.StackTrace}") + _suppressTabEvents = False ' Sicherstellung + + Try + SplitContainerSearches.Panel1Collapsed = True + SplitContainerSearches.Panel2Collapsed = True + DocumentViewer1.Visible = False + Catch collapseEx As Exception + LOGGER.Error("❌ Fehler beim Kollabieren der Panels", collapseEx) + End Try + End Try + End Sub + Private Sub XtraTabControlSQL_SelectedPageChanged(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlSQL.SelectedPageChanged + Try + ' KRITISCH: Event unterdrücken während TabPreload läuft + If _suppressTabEvents Then + LOGGER.Debug($"🚫 XtraTabControlSQL_SelectedPageChanged unterdrückt (SelectedTabPageIndex={XtraTabControlSQL.SelectedTabPageIndex})") + Exit Sub + End If + + LOGGER.Debug($"=== XtraTabControlSQL_SelectedPageChanged START - SelectedTabPageIndex={XtraTabControlSQL.SelectedTabPageIndex} ===") + + If _DTDATASearches Is Nothing Then + LOGGER.Warn("⚠️ _DTDATASearches ist Nothing - Exit Sub") + Exit Sub + End If + If XtraTabControlSQL.SelectedTabPageIndex >= 0 AndAlso + Not XtraTabControlSQL.TabPages(XtraTabControlSQL.SelectedTabPageIndex).PageVisible Then + LOGGER.Debug("SQL-Tab ist nicht sichtbar - Exit Sub") + Exit Sub + End If + + If XtraTabControlSQL.SelectedTabPageIndex >= _DTDATASearches.Rows.Count Then + LOGGER.Error($"❌ SelectedTabPageIndex ({XtraTabControlSQL.SelectedTabPageIndex}) >= _DTDATASearches.Rows.Count ({_DTDATASearches.Rows.Count}) - Exit Sub") + Exit Sub + End If + + Dim selectedRow As DataRow = _DTDATASearches.Rows(XtraTabControlSQL.SelectedTabPageIndex) + Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID"))) + Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString() + Dim oTabIndex As Integer = XtraTabControlSQL.SelectedTabPageIndex + Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {oTabIndex}") + + LOGGER.Debug($"Tab-Info: '{oTabCaption}', ConID={oConID}, TabIndex={oTabIndex}") + + If String.IsNullOrEmpty(oCommand) Then + LOGGER.Warn($"⚠️ SQL_COMMAND ist leer für Tab '{oTabCaption}' - Exit Sub") + Exit Sub + End If + + oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) + LOGGER.Debug($"SQL ersetzt, Länge={oCommand.Length} Zeichen") + + ' ============================================================ + ' KRITISCH: RefreshTabSQL aufrufen! + ' ============================================================ + LOGGER.Debug($"Rufe RefreshTabSQL auf für Tab '{oTabCaption}'") + RefreshTabSQL(oConID, oCommand, oTabIndex, oTabCaption) + + LOGGER.Debug("=== XtraTabControlSQL_SelectedPageChanged END ===") + + Catch ex As Exception + LOGGER.Error("❌ Fehler in XtraTabControlSQL_SelectedPageChanged", ex) + LOGGER.Error($"Details: SelectedTabPageIndex={XtraTabControlSQL.SelectedTabPageIndex}, _DTDATASearches.Rows.Count={If(_DTDATASearches?.Rows.Count, 0)}") + End Try + End Sub + + Private Sub XtraTabControlDocs_SelectedPageChanged_1(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlDocs.SelectedPageChanged + Try + ' KRITISCH: Event unterdrücken während TabPreload läuft + If _suppressTabEvents Then + LOGGER.Debug($"🚫 XtraTabControlDocs_SelectedPageChanged unterdrückt (SelectedTabPageIndex={XtraTabControlDocs.SelectedTabPageIndex})") + Exit Sub + End If + + LOGGER.Debug($"=== XtraTabControlDocs_SelectedPageChanged START - SelectedTabPageIndex={XtraTabControlDocs.SelectedTabPageIndex} ===") + + If _DTDocSearches Is Nothing Then + LOGGER.Warn("⚠️ _DTDocSearches ist Nothing - Exit Sub") + Exit Sub + End If + + If XtraTabControlDocs.SelectedTabPageIndex < 0 Then + LOGGER.Debug("SelectedTabPageIndex < 0 - Exit Sub") + Exit Sub + End If + + If XtraTabControlDocs.SelectedTabPageIndex >= _DTDocSearches.Rows.Count Then + LOGGER.Error($"❌ SelectedTabPageIndex ({XtraTabControlDocs.SelectedTabPageIndex}) >= _DTDocSearches.Rows.Count ({_DTDocSearches.Rows.Count}) - Exit Sub") + Exit Sub + End If + + Dim selectedRow As DataRow = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex) + Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID"))) + Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString() + Dim oTabIndex As Integer = XtraTabControlDocs.SelectedTabPageIndex + Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {oTabIndex}") + + LOGGER.Debug($"Tab-Info: '{oTabCaption}', ConID={oConID}, TabIndex={oTabIndex}") + + If String.IsNullOrEmpty(oCommand) Then + LOGGER.Warn($"⚠️ SQL_COMMAND ist leer für Tab '{oTabCaption}' - Exit Sub") + Exit Sub + End If + + oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) + LOGGER.Debug($"SQL ersetzt, Länge={oCommand.Length} Zeichen") + + ' ============================================================ + ' KRITISCH: RefreshTabDoc aufrufen! + ' ============================================================ + LOGGER.Debug($"Rufe RefreshTabDoc auf für Tab '{oTabCaption}'") + RefreshTabDoc(oConID, oCommand, oTabIndex, oTabCaption) + + LOGGER.Debug("=== XtraTabControlDocs_SelectedPageChanged END ===") + + Catch ex As Exception + LOGGER.Error("❌ Fehler in XtraTabControlDocs_SelectedPageChanged", ex) + LOGGER.Error($"Details: SelectedTabPageIndex={XtraTabControlDocs.SelectedTabPageIndex}, _DTDocSearches.Rows.Count={If(_DTDocSearches?.Rows.Count, 0)}") + End Try End Sub Public Sub RefreshTabSQL(ConID As Integer, SQLCommand As String, TabIndex As Integer, TabCaption As String) If Me.InvokeRequired() Then @@ -238,28 +543,31 @@ Public Class frmValidatorSearch myGridview = GridViewDocSearch5 End Select myGridControl.ContextMenuStrip = ContextMenuStripWMFile - 'Dim oDatatable As DataTable = ClassDatabase.Return_Datatable_ConId(SQLCommand, ConID) + Dim oDatatable As DataTable = DatabaseFallback.GetDatatable(New GetDatatableOptions(SQLCommand, DatabaseType.ECM) With { - .ConnectionId = ConID - }) + .ConnectionId = ConID + }) If Not IsNothing(oDatatable) Then XtraTabControlDocs.TabPages(TabIndex).Text = $"{TabCaption} ({oDatatable.Rows.Count})" - clsWMDocGrid.DTDocuments = oDatatable - 'Select Case TabIndex - ' Case 0 - ' GridControlDocSearch1.DataSource = oDatatable - ' Case 1 - ' GridControlDocSearch2.DataSource = oDatatable - ' Case 2 - ' GridControlDocSearch3.DataSource = oDatatable - ' Case 3 - ' GridControlDocSearch4.DataSource = oDatatable - ' Case 4 - ' GridControlDocSearch5.DataSource = oDatatable - 'End Select + ' FIX: Nicht jedes Doc-Tab liefert echte Dokumentspalten + Dim hasDocId As Boolean = oDatatable.Columns.Contains("DocID") + Dim hasFullFilename As Boolean = oDatatable.Columns.Contains("FULL_FILENAME") + + If Not hasDocId OrElse Not hasFullFilename Then + LOGGER.Warn($"⚠️ Refresh_Load_GridDoc: Tab [{TabCaption}] liefert kein Dokument-Schema (DocID/FULL_FILENAME fehlt). Fallback auf Standard-Grid.") + myGridControl.DataSource = oDatatable + myGridview.BestFitColumns(True) + clsWMDocGrid.DTDocuments = Nothing + ToolStripDropDownButtonFile.Visible = False + tslblState.Text = $"Tab [{TabCaption}] refreshed (fallback grid) - {Now}" + Exit Sub + End If + + clsWMDocGrid.DTDocuments = oDatatable Create_GridControl(myGridview, oDatatable) + Dim oxmlPath As String = "" oxmlPath = Get_DocGrid_Layout_Filename(XtraTabControlDocs.SelectedTabPageIndex) @@ -465,7 +773,7 @@ Public Class frmValidatorSearch SplitContainerSearches.SplitterDistance = My.Settings.frmValSearchSplitterDistance End If ' DocumentPathHandler initialisieren - _documentPathHandler = New ClassDocumentPathHandler(LOGGER) + _documentPathHandler = New DocumentPathHandler(LOGCONFIG) ToolStripDropDownButtonFile.Visible = False End Sub @@ -522,24 +830,7 @@ Public Class frmValidatorSearch formLoaded = True End Sub - Private Sub XtraTabControlSQL_SelectedPageChanged(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlSQL.SelectedPageChanged - If IsNothing(_DTSQLSearches) Then Exit Sub - Dim oConID = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("CONN_ID") - Dim oCommand = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("SQL_COMMAND") - oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) - Dim oTabIndex = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("TAB_INDEX") - Dim oTabCaption = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("TAB_TITLE") - RefreshTabSQL(oConID, oCommand, oTabIndex, oTabCaption) - End Sub - Private Sub XtraTabControlDocs_SelectedPageChanged_1(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlDocs.SelectedPageChanged - If IsNothing(_DTDocSearches) Then Exit Sub - Dim oConID = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("CONN_ID") - Dim oCommand = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("SQL_COMMAND") - oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) - Dim oTabIndex = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("TAB_INDEX") - Dim oTabCaption = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("TAB_TITLE") - RefreshTabDoc(oConID, oCommand, oTabIndex, oTabCaption) - End Sub + Private Sub EigenschaftenDateiToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EigenschaftenDateiToolStripMenuItem.Click Show_File_Properties() @@ -568,99 +859,126 @@ Public Class frmValidatorSearch Next End Sub Sub Refresh_DocID(myGrid As GridView) - Try + If myGrid Is Nothing Then + LOGGER.Warn("⚠️ Refresh_DocID: myGrid is Nothing - Exit Sub") + Return + End If + Try myGrid.ShowLoadingPanel() clsWMDocGrid.ActiveDocGrid = myGrid clsWMDocGrid.ActiveDocGrid.EndSelection() clsWMDocGrid.GetDocItems() + If ToolStripDropDownButtonFile.Visible = False Then ToolStripDropDownButtonFile.Visible = True End If - If clsWMDocGrid.SELECTED_DOC_ID <> 0 Then - If LastDocID = clsWMDocGrid.SELECTED_DOC_ID Then - myGrid.HideLoadingPanel() - Exit Sub - End If - Dim msg = "DocID: " & clsWMDocGrid.SELECTED_DOC_ID.ToString - tslblDocID.Text = msg - ToolStripDropDownButtonFile.Enabled = True - Dim oDocument As DocumentResultList.Document = Nothing - ' Load DocumentInfo - oDocument = Documentloader.Load(clsWMDocGrid.SELECTED_DOC_ID, clsWMDocGrid.SELECTED_DOC_PATH) - If Not IsNothing(DocumentViewer1) Then - Dim oFileName = $"{clsWMDocGrid.SELECTED_DOC_ID}.{oDocument.Extension}" - If Not IsNothing(DocumentViewer1) AndAlso Not IsNothing(oDocument.Contents) Then - ' Optionen konfigurieren - Dim options As New ClassDocumentPathHandler.DocumentPathOptions With { - .EnableMapping = False, - .CopyToTemp = COPY_WMFILE_2TEMP, - .TempFolder = TEMP_DOCUMENT_FOLDER, - .UnmapAfterCopy = False - } - - ' Verarbeiten - Dim result = _documentPathHandler.ProcessDocumentPath(clsWMDocGrid.SELECTED_DOC_PATH, options) - - If result.Success Then - DocumentViewer1.LoadFile_FromPath(result.FinalPath) - LastDocID = clsWMDocGrid.SELECTED_DOC_ID - DocumentViewer1.RightViewOnly(USER_RIGHT_VIEW_ONLY) - LOGGER.Info($"✓ [ValidatorSearch] Dokument geladen: [{Path.GetFileName(result.FinalPath)}]") - Else - LOGGER.Error($"❌ [ValidatorSearch] {result.ErrorMessage}") - statlbl.Text = $"Fehler: {result.ErrorMessage}" - End If - Else - statlbl.Text = "odocument.content is nothing, Check Your log" - End If - - - - End If - - Else + If clsWMDocGrid.SELECTED_DOC_ID = 0 Then tslblDocID.Text = "DocRow not selected" ToolStripDropDownButtonFile.Enabled = False + Return End If + + If LastDocID = clsWMDocGrid.SELECTED_DOC_ID Then + Return + End If + + tslblDocID.Text = "DocID: " & clsWMDocGrid.SELECTED_DOC_ID.ToString + ToolStripDropDownButtonFile.Enabled = True + LOGGER.Debug($"✓ DocID aktualisiert: {clsWMDocGrid.SELECTED_DOC_ID}") + If IsNothing(Documentloader) Then + If OperationMode = Nothing Then + OperationMode = GetOperationMode() + End If + Documentloader = New Loader(LOGCONFIG, OperationMode, Environment.Service.Client, Environment.User) + End If + + If _documentPathHandler Is Nothing Then + _documentPathHandler = New DocumentPathHandler(LOGCONFIG) + End If + + Dim oDocument As DocumentResultList.Document = Documentloader.Load(clsWMDocGrid.SELECTED_DOC_ID, clsWMDocGrid.SELECTED_DOC_PATH) + + If IsNothing(oDocument) Then + LOGGER.Warn($"⚠️ Refresh_DocID: Documentloader.Load lieferte Nothing (DocID={clsWMDocGrid.SELECTED_DOC_ID})") + statlbl.Text = "Dokument konnte nicht geladen werden." + Return + Else + LOGGER.Debug($"✓ Documentloader.Load erfolgreich für DocID={clsWMDocGrid.SELECTED_DOC_ID}, Pfad: {clsWMDocGrid.SELECTED_DOC_PATH}") + End If + + If Not IsNothing(DocumentViewer1) AndAlso Not IsNothing(oDocument.Contents) Then + Dim options As New DocumentPathHandler.DocumentPathOptions With { + .EnableMapping = COPY_WMFILE_2TEMP AndAlso Not String.IsNullOrWhiteSpace(WMSUFFIX), + .WMSuffix = WMSUFFIX, + .SpecificDrive = If(Len(MAP_SHARE_DRIVE) = 1, MAP_SHARE_DRIVE, ""), + .DriveBlacklist = MAP_BLACKLIST, + .CopyToTemp = COPY_WMFILE_2TEMP, + .TempFolder = TEMP_DOCUMENT_FOLDER, + .UnmapAfterCopy = True + } + + Dim result = _documentPathHandler.ProcessDocumentPath(clsWMDocGrid.SELECTED_DOC_PATH, options) + + If result.Success Then + DocumentViewer1.LoadFile_FromPath(result.FinalPath) + LastDocID = clsWMDocGrid.SELECTED_DOC_ID + DocumentViewer1.RightViewOnly(USER_RIGHT_VIEW_ONLY) + LOGGER.Debug($"✓ [ValidatorSearch] Dokument geladen: [{Path.GetFileName(result.FinalPath)}]") + Else + LOGGER.Error($"❌ [ValidatorSearch] {result.ErrorMessage}") + statlbl.Text = $"Fehler: {result.ErrorMessage}" + End If + Else + statlbl.Text = "Dokumentinhalt ist leer." + End If + Catch ex As Exception LOGGER.Error(ex) + Finally + Try + myGrid.HideLoadingPanel() + Catch + End Try End Try - myGrid.HideLoadingPanel() End Sub - Private Sub GridViewDocSearch1_FocusedRowChanged(sender As Object, e As Views.Base.FocusedRowChangedEventArgs) Handles GridViewDocSearch1.FocusedRowChanged - Refresh_DocID(GridViewDocSearch1) + Private Sub GridViewDocSearch_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch1.FocusedRowChanged, + GridViewDocSearch2.FocusedRowChanged, + GridViewDocSearch3.FocusedRowChanged, + GridViewDocSearch4.FocusedRowChanged, + GridViewDocSearch5.FocusedRowChanged + + If Not Me.Visible Then + Return + End If + + Dim activeGrid As GridView = TryCast(sender, GridView) + If activeGrid Is Nothing Then + Return + End If + + LOGGER.Debug($"FocusedRowChanged ausgelöst: [{activeGrid.Name}]") + Refresh_DocID(activeGrid) End Sub - Private Sub GridViewDocSearch2_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch2.FocusedRowChanged - Refresh_DocID(GridViewDocSearch2) - End Sub - Private Sub GridViewDocSearch3_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch3.FocusedRowChanged - Refresh_DocID(GridViewDocSearch3) - End Sub - Private Sub GridViewDocSearch4_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch4.FocusedRowChanged - Refresh_DocID(GridViewDocSearch4) - End Sub - Private Sub GridViewDocSearch5_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch5.FocusedRowChanged - Refresh_DocID(GridViewDocSearch5) - End Sub + Private Sub GridViewDocSearch_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch1.FocusedColumnChanged, + GridViewDocSearch2.FocusedColumnChanged, + GridViewDocSearch3.FocusedColumnChanged, + GridViewDocSearch4.FocusedColumnChanged, + GridViewDocSearch5.FocusedColumnChanged - Private Sub GridViewDocSearch1_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch1.FocusedColumnChanged - Refresh_DocID(GridViewDocSearch1) - End Sub + If Not Me.Visible Then + Return + End If - Private Sub GridViewDocSearch2_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch2.FocusedColumnChanged - Refresh_DocID(GridViewDocSearch2) - End Sub - Private Sub GridViewDocSearch3_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch3.FocusedColumnChanged - Refresh_DocID(GridViewDocSearch3) - End Sub - Private Sub GridViewDocSearch4_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch4.FocusedColumnChanged - Refresh_DocID(GridViewDocSearch4) - End Sub - Private Sub GridViewDocSearch5_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch5.FocusedColumnChanged - Refresh_DocID(GridViewDocSearch5) + Dim activeGrid As GridView = TryCast(sender, GridView) + If activeGrid Is Nothing Then + Return + End If + + LOGGER.Debug($"FocusedColumnChanged ausgelöst: [{activeGrid.Name}]") + Refresh_DocID(activeGrid) End Sub Private Sub DateiÖffnenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DateiÖffnenToolStripMenuItem.Click @@ -756,14 +1074,16 @@ Public Class frmValidatorSearch End Sub Private Sub ToolStripButtonRefreshSearches_Click(sender As Object, e As EventArgs) Handles ToolStripButtonRefreshSearches.Click - If BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count > 0 Then - LOGGER.Debug($"There are [{BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count}] SQLSearches configured!") - _DTSQLSearches = BASEDATA_DT_PROFILE_SEARCHES_SQL - Dim oConID = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("CONN_ID") - Dim oCommand = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("SQL_COMMAND") + If DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count > 0 Then + LOGGER.Debug($"There are [{DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count}] DATASearches configured!") + _DTDATASearches = DT_FILTERED_PROFILE_SEARCHES_DATA + Dim oConID = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("CONN_ID") + Dim oCommand = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("SQL_COMMAND") oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) XtraTabControlSQL.SelectedTabPageIndex = 0 - Refresh_Load_GridSQL(oConID, oCommand, 0, BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("TAB_TITLE")) + Refresh_Load_GridSQL(oConID, oCommand, 0, DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("TAB_TITLE")) + Else + LOGGER.Debug("No DATASearches configured for this profile!") End If If DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count > 0 Then LOGGER.Debug($"There are [{DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count}] DocSearches configured!") @@ -773,6 +1093,8 @@ Public Class frmValidatorSearch oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) XtraTabControlDocs.SelectedTabPageIndex = 0 RefreshTabDoc(oConID, oCommand, 0, DT_FILTERED_PROFILE_SEARCHES_DOC.Rows(0).Item("TAB_TITLE")) + Else + LOGGER.Debug("No DocSearches configured for this profile!") End If End Sub @@ -817,48 +1139,57 @@ Public Class frmValidatorSearch End Sub Sub ReLoad_Active_SQLTab() Dim oTabIndex = XtraTabControlSQL.SelectedTabPageIndex - Dim oConID = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(oTabIndex).Item("CONN_ID") - Dim oCommand = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(oTabIndex).Item("SQL_COMMAND") + Dim oConID = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(oTabIndex).Item("CONN_ID") + Dim oCommand = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(oTabIndex).Item("SQL_COMMAND") oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) - RefreshTabSQL(oConID, oCommand, oTabIndex, BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(oTabIndex).Item("TAB_TITLE")) + RefreshTabSQL(oConID, oCommand, oTabIndex, DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(oTabIndex).Item("TAB_TITLE")) End Sub Private Sub GridControlDocSearch1_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch1.DoubleClick + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch1) FileShow() End Sub Private Sub GridControlDocSearch2_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch2.DoubleClick + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch2) FileShow() End Sub Private Sub GridControlDocSearch3_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch3.DoubleClick + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch3) FileShow() End Sub Private Sub GridControlDocSearch4_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch4.DoubleClick + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch4) FileShow() End Sub Private Sub GridControlDocSearch5_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch5.DoubleClick + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch5) FileShow() End Sub Private Sub GridControlDocSearch1_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch1.Click + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch1) End Sub Private Sub GridControlDocSearch2_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch2.Click + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch2) End Sub Private Sub GridControlDocSearch3_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch3.Click + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch3) End Sub Private Sub GridControlDocSearch4_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch4.Click + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch4) End Sub Private Sub GridControlDocSearch5_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch5.Click - + If Not Me.Visible Then Return Refresh_DocID(GridViewDocSearch5) End Sub diff --git a/app/TaskFlow/logtaskflow.txt b/app/TaskFlow/logtaskflow.txt index 8e7b016..e69de29 100644 --- a/app/TaskFlow/logtaskflow.txt +++ b/app/TaskFlow/logtaskflow.txt @@ -1,1364 +0,0 @@ -09:18:19.8756|taskFLOW|INFO >> MoveNext -> [PERF Item_Scope] START - startedFrom:[DOUBLECLICK] -09:18:19.8756|taskFLOW|INFO >> MoveNext -> Starting Profile Loading -09:18:19.8756|taskFLOW|DEBUG >> MoveNext -> User clicked normal row. -09:18:19.8756|taskFLOW|DEBUG >> MoveNext -> Clicked ProfileId: [10], Started From: [CMROW] -09:18:19.8756|taskFLOW|DEBUG >> MoveNext -> Item_Scope: InDataRow -09:18:19.8756|taskFLOW|DEBUG >> MoveNext -> Item_Scope: GRID_LOAD_TYPE = OVERVIEW -09:18:19.8756|taskFLOW|DEBUG >> MoveNext -> Item_Scope: OVERVIEWgroupRowText Profile (Fixed): 5. Finale Freigabe - FF -09:18:19.8756|taskFLOW|DEBUG >> MoveNext -> Item_Scope: Valid PROFIL_ID -09:18:19.8756|taskFLOW|DEBUG >> MoveNext -> Item_Scope: hitInfo.InDataRow... -09:18:19.8756|taskFLOW|DEBUG >> MoveNext -> Item_Scope: GotDocID 5877040 and DocGUID 816254 -09:18:19.9056|taskFLOW|INFO >> Load_Profil_from_Grid -> [PERF Load_Profil_from_Grid START - pProfilID:[10] -09:18:19.9176|taskFLOW|INFO >> Load_Profil_from_Grid -> [PERF Load_Profil_from_Grid öffnet frmValidator... -09:18:19.9176|frmValidator|DEBUG >> .ctor -> Initialize Components... -09:18:20.2726|frmValidator|DEBUG >> .ctor -> Initialize _frmValidatorSearch... -09:18:20.3456|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] START -09:18:20.3456|frmValidator|DEBUG >> frmValidation_Load -> ###frmValidation_Load### -09:18:20.3456|frmValidator|DEBUG >> frmValidation_Load -> Current User Language: [de-DE] -09:18:20.3456|Cache|DEBUG >> .ctor -> Initializing DocumentResultCache with capacity of [104900000] bytes. -09:18:20.3456|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Nach Initialisierung: 5,0038ms -09:18:20.4166|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Nach Position/Size: 65,001ms -09:18:20.4356|FilesystemEx|DEBUG >> CreateDirectory(FilesystemEx.vb:332) -> Directory C:\Users\marschreiber\AppData\Roaming\Digital Data\taskFLOW\1.0.0.0\DocumentViewer already exists. Skipping. -09:18:20.4356|FilesystemEx|DEBUG >> CreateDirectory(FilesystemEx.vb:352) -> Using path C:\Users\marschreiber\AppData\Roaming\Digital Data\taskFLOW\1.0.0.0\DocumentViewer -09:18:20.4356|ConfigManager`1|DEBUG >> LoadAppConfig(ConfigManager.vb:247) -> ApplicationConfig does not exist. -09:18:20.4356|ConfigManager`1|DEBUG >> LoadComputerConfig(ConfigManager.vb:269) -> Computer config does not exist. -09:18:20.4356|ConfigManager`1|DEBUG >> ReadFromFile(ConfigManager.vb:367) -> Loading config from: C:\Users\marschreiber\AppData\Roaming\Digital Data\taskFLOW\1.0.0.0\DocumentViewer\UserConfig.xml -09:18:20.4386|ConfigManager`1|DEBUG >> LoadUserConfig(ConfigManager.vb:280) -> UserConfig exists and will be used. [C:\Users\marschreiber\AppData\Roaming\Digital Data\taskFLOW\1.0.0.0\DocumentViewer\UserConfig.xml] -09:18:20.4386|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Nach DocumentViewer.Init: 20,0034ms -09:18:20.4386|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Nach DTVWCONTROL_INDEX laden (56 Rows): 0,9992ms -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> Profile Data loaded -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> frmValidation_Load finished till Step 3! -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> Step 4 -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> Step 5 -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> Step 6 -09:18:20.4386|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Nach Profile-Properties: 0ms -09:18:20.4386|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Nach Language-Loop (81 Rows): 0ms -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> Buttontext validation loaded -09:18:20.4386|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Nach Button-Setup: 2,0009ms -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> oProfileRejectionText: Beleg ablehnen -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> oProfile_REJECT_SQL_REASONS: SELECT T1.TITLE + '-' + T.TITLE_DE as TITLE FROM TBPM_CUST_WF_ACTIONS T, TBPM_CUST_WF_ACTION_TYPE T1 -Where T.ACTION_TYPE = T1.GUID AND T.ACTIVE = 1 AND T1.GUID = 2 ORDER BY TITLE - -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> oProfileNotResponsibleText: Nicht zuständig -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> oProfile_NOT_RESP_SQL: EXEC [dbo].[PRPM_CUST_NICHT_ZUSTAENDIG] {#IDBA#ObjectID},'{#INT#USERNAME}', '{#USER#LANGUAGE}' -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> Nicht zuständig und Ablehnungs-Buttons werden eingeblendet! -09:18:20.4386|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Nach Rejection/NR-Setup: 0,9937ms -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> >> profiledata saved: -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> >> finalProfile: True -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> >> Move2Folder: -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> >> Right_Delete: False -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> PROFIL_sortbynewest: True -09:18:20.4386|frmValidator|DEBUG >> frmValidation_Load -> Right_Delete: False -09:18:20.4386|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Vor Create_Controls -09:18:20.4386|DatabaseWithFallback|DEBUG >> GetDatatable -> Datatable is chached, fetching data from cache. -09:18:20.4706|DatabaseWithFallback|DEBUG >> GetDatatable -> Datatable is chached, fetching data from cache. -09:18:20.4886|DatabaseWithFallback|DEBUG >> GetDatatable -> Datatable is chached, fetching data from cache. -09:18:20.5026|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 293 - CtrlName: lblEingang - CtrlIndex: ]: End of Select... -09:18:20.5266|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 321 - CtrlName: Erstellt - CtrlIndex: EMAIL_DATETIME] - TXT Try to create control... -09:18:20.5266|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 321 - CtrlName: Erstellt - CtrlIndex: EMAIL_DATETIME] - TXT Created!! -09:18:20.5266|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 321 - CtrlName: Erstellt - CtrlIndex: EMAIL_DATETIME]: End of Select... -09:18:20.5266|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 288 - CtrlName: lblBelegNr - CtrlIndex: ]: End of Select... -09:18:20.5266|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 319 - CtrlName: BelegNr - CtrlIndex: BelegNr] - TXT Try to create control... -09:18:20.5266|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 319 - CtrlName: BelegNr - CtrlIndex: BelegNr] - TXT Created!! -09:18:20.5266|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 319 - CtrlName: BelegNr - CtrlIndex: BelegNr]: End of Select... -09:18:20.5336|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 318 - CtrlName: TXT_Belegart - CtrlIndex: @@DISPLAY_ONLY] - TXT Try to create control... -09:18:20.5336|ClassControlCreator|INFO >> TransformDataRow -> Override oReadOnly = True for Control [TXT_Belegart] as Attribute is @@DISPLAY_ONLY and ReadOnly = False -09:18:20.5336|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 318 - CtrlName: TXT_Belegart - CtrlIndex: @@DISPLAY_ONLY] - TXT Created!! -09:18:20.5336|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 318 - CtrlName: TXT_Belegart - CtrlIndex: @@DISPLAY_ONLY]: End of Select... -09:18:20.5336|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3182 - CtrlName: TXT_BelegartSAP - CtrlIndex: BelegartSAP] - TXT Try to create control... -09:18:20.5336|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3182 - CtrlName: TXT_BelegartSAP - CtrlIndex: BelegartSAP] - TXT Created!! -09:18:20.5336|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3182 - CtrlName: TXT_BelegartSAP - CtrlIndex: BelegartSAP]: End of Select... -09:18:20.6056|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 286 - CtrlName: lblBelegDatum - CtrlIndex: ]: End of Select... -09:18:20.6056|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 313 - CtrlName: BelegDatum - CtrlIndex: BelegDatum] - TXT Try to create control... -09:18:20.6056|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 313 - CtrlName: BelegDatum - CtrlIndex: BelegDatum] - TXT Created!! -09:18:20.6056|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 313 - CtrlName: BelegDatum - CtrlIndex: BelegDatum]: End of Select... -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3192 - CtrlName: TXT_EInvoiceTyp - CtrlIndex: eInvoiceTyp] - TXT Try to create control... -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3192 - CtrlName: TXT_EInvoiceTyp - CtrlIndex: eInvoiceTyp] - TXT Created!! -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3192 - CtrlName: TXT_EInvoiceTyp - CtrlIndex: eInvoiceTyp]: End of Select... -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 289 - CtrlName: lblMandant - CtrlIndex: ]: End of Select... -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 320 - CtrlName: BuchungskreisNr - CtrlIndex: BuchungskreisNr] - TXT Try to create control... -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 320 - CtrlName: BuchungskreisNr - CtrlIndex: BuchungskreisNr] - TXT Created!! -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 320 - CtrlName: BuchungskreisNr - CtrlIndex: BuchungskreisNr]: End of Select... -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 317 - CtrlName: BuchungskreisName - CtrlIndex: BuchungskreisName] - TXT Try to create control... -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 317 - CtrlName: BuchungskreisName - CtrlIndex: BuchungskreisName] - TXT Created!! -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 317 - CtrlName: BuchungskreisName - CtrlIndex: BuchungskreisName]: End of Select... -09:18:20.6106|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 287 - CtrlName: lblKostenstelle - CtrlIndex: ]: End of Select... -09:18:20.6256|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 315 - CtrlName: Kostenstelle - CtrlIndex: Kostenstelle] - TXT Try to create control... -09:18:20.6256|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 315 - CtrlName: Kostenstelle - CtrlIndex: Kostenstelle] - TXT Created!! -09:18:20.6256|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 315 - CtrlName: Kostenstelle - CtrlIndex: Kostenstelle]: End of Select... -09:18:20.6256|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 601 - CtrlName: lblEmailvon - CtrlIndex: ]: End of Select... -09:18:20.6256|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 600 - CtrlName: EmailVersender - CtrlIndex: EmailVersender] - TXT Try to create control... -09:18:20.6256|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 600 - CtrlName: EmailVersender - CtrlIndex: EmailVersender] - TXT Created!! -09:18:20.6256|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 600 - CtrlName: EmailVersender - CtrlIndex: EmailVersender]: End of Select... -09:18:20.6866|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 595 - CtrlName: lblBestellNr - CtrlIndex: ]: End of Select... -09:18:20.6866|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 316 - CtrlName: BestellNr - CtrlIndex: BestellNr] - TXT Try to create control... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 316 - CtrlName: BestellNr - CtrlIndex: BestellNr] - TXT Created!! -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 316 - CtrlName: BestellNr - CtrlIndex: BestellNr]: End of Select... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 3131 - CtrlName: lblEmailan - CtrlIndex: ]: End of Select... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3132 - CtrlName: EmailEmfaenger - CtrlIndex: EmailEmpfaenger] - TXT Try to create control... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3132 - CtrlName: EmailEmfaenger - CtrlIndex: EmailEmpfaenger] - TXT Created!! -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3132 - CtrlName: EmailEmfaenger - CtrlIndex: EmailEmpfaenger]: End of Select... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [CtrlID: 305 - CtrlName: line20 - CtrlIndex: ]: End of Select... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 292 - CtrlName: lblKreditor - CtrlIndex: ]: End of Select... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> createControlsLU - Found 2 Controls which are depending on LieferantNr -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> createControlsLU - Found 2 Controls which' enable state is depending on LieferantNr -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [LOOKUP#CtrlID: 2289 - CtrlName: LieferantNr - CtrlIndex: LieferantNr]: End of Select... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 329 - CtrlName: Lieferant - CtrlIndex: Lieferant] - TXT Try to create control... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 329 - CtrlName: Lieferant - CtrlIndex: Lieferant] - TXT Created!! -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 329 - CtrlName: Lieferant - CtrlIndex: Lieferant]: End of Select... -09:18:20.6886|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 296 - CtrlName: lblKontierung - CtrlIndex: ]: End of Select... -09:18:20.7046|frmValidator|DEBUG >> Create_Controls -> We got a DTGRID_COLUMNS definition for [TABLE#CtrlID: 312 - CtrlName: Kontierung - CtrlIndex: Kontierung] -09:18:20.7046|GridControl|DEBUG >> FillGridTables -> Working on SQL for Column[ColumnRowNr]... -09:18:20.7046|GridControl|DEBUG >> FillGridTables -> SQL has no complex patterns! -09:18:20.7046|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:20.7046|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:20.7046|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:20.7046|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:20.7046|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:20.7046|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:20.7046|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:20.7046|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:20.7046|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:20.7046|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT ZAEHLER FROM TBWH_SEQUENCE WHERE ZAEHLER <= 500 order by ZAEHLER] and Parameters [] -09:18:20.7046|GridControl|DEBUG >> FillGridTables -> Working on SQL for Column[colSAKNR]... -09:18:20.7046|GridControl|DEBUG >> FillGridTables -> ...has complex patterns!! -09:18:20.7046|GridControl|DEBUG >> FillGridTables -> Working on SQL for Column[colKostenstelle]... -09:18:20.7046|GridControl|DEBUG >> FillGridTables -> ...has complex patterns!! -09:18:20.7206|GridControl|DEBUG >> ConfigureViewColumns -> CURRENCY column [col2]: DisplayFormat wird von ConfigureViewColumnsCurrency gesetzt -09:18:20.7206|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] riTextEdit erstellt: DisplayFormat=[#,##0.00 EUR], HashCode=[22930682] -09:18:20.7206|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] pGrid.RepositoryItems.Count VOR Schleife=[0] -09:18:20.7206|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] [col2] VOR ColumnEdit: RepositoryItems.Count=[0] -09:18:20.7206|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] [col2] NACH ColumnEdit: RepositoryItems.Count=[0] -09:18:20.7206|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] [col2]: IsSameObject=[True], ColumnEdit.DisplayFormat=[#,##0.00 EUR], ColumnEdit.HashCode=[22930682] -09:18:20.7206|frmValidator|DEBUG >> Create_Controls -> [TABLE#CtrlID: 312 - CtrlName: Kontierung - CtrlIndex: Kontierung]: End of Select... -09:18:20.7206|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:20.7356|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:20.7356|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:20.7356|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:20.7356|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:20.7356|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:20.7356|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 294 - CtrlName: lblBemerkung - CtrlIndex: ]: End of Select... -09:18:20.7356|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 297 - CtrlName: lblZahlart_1 - CtrlIndex: ]: End of Select... -09:18:20.7356|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:20.7356|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:20.7356|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:20.7356|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:20.7356|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:20.7356|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:20.7356|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:20.7356|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:20.7356|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:20.7356|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK // 16.09.2025 - -EXEC [dbo].[PRDD_GET_TRANSLATED_CHOICELIST] - @pSOURCE_QUERY = N'SELECT [ID] as ''ID'',[DESCRIPTION] as ''%DESCRIPTION%'' - FROM [FNCUST_TF_GET_PAYMENT_METHODE](''{#USER#LANGUAGE}'')', - @pLANGUAGE = N'{#USER#LANGUAGE}' - --- Test mit --- de-de] and Parameters [] -09:18:20.7356|frmValidator|DEBUG >> Create_Controls -> createControlsLU - Found 1 Controls which are depending on LU_Zahlart -09:18:20.7356|frmValidator|DEBUG >> Create_Controls -> [LOOKUP#CtrlID: 309 - CtrlName: LU_Zahlart - CtrlIndex: Zahlart]: End of Select... -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3754 - CtrlName: TXT_ZahlartBezeichnung - CtrlIndex: @@DISPLAY_ONLY] - TXT Try to create control... -09:18:20.7506|ClassControlCreator|INFO >> TransformDataRow -> Override oReadOnly = True for Control [TXT_ZahlartBezeichnung] as Attribute is @@DISPLAY_ONLY and ReadOnly = False -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3754 - CtrlName: TXT_ZahlartBezeichnung - CtrlIndex: @@DISPLAY_ONLY] - TXT Created!! -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3754 - CtrlName: TXT_ZahlartBezeichnung - CtrlIndex: @@DISPLAY_ONLY]: End of Select... -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 314 - CtrlName: Bemerkung - CtrlIndex: Bemerkung] - TXT Try to create control... -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 314 - CtrlName: Bemerkung - CtrlIndex: Bemerkung] - TXT Created!! -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 314 - CtrlName: Bemerkung - CtrlIndex: Bemerkung]: End of Select... -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 303 - CtrlName: lblZahlKondition - CtrlIndex: ]: End of Select... -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 2291 - CtrlName: txtZahlungsbedingung1 - CtrlIndex: Zahlungsbedingung1] - TXT Try to create control... -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 2291 - CtrlName: txtZahlungsbedingung1 - CtrlIndex: Zahlungsbedingung1] - TXT Created!! -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 2291 - CtrlName: txtZahlungsbedingung1 - CtrlIndex: Zahlungsbedingung1]: End of Select... -09:18:20.7506|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 298 - CtrlName: lblZahlziel1 - CtrlIndex: ]: End of Select... -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 299 - CtrlName: lblSkonto 1 - CtrlIndex: ]: End of Select... -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 300 - CtrlName: lblZahlziel2 - CtrlIndex: ]: End of Select... -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 301 - CtrlName: lblSkonto2 - CtrlIndex: ]: End of Select... -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 302 - CtrlName: lblZahlzielNetto - CtrlIndex: ]: End of Select... -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 304 - CtrlName: lblZahlungsinfoBeleg - CtrlIndex: ]: End of Select... -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 323 - CtrlName: Zahlziel1 - CtrlIndex: Zahlziel1] - TXT Try to create control... -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 323 - CtrlName: Zahlziel1 - CtrlIndex: Zahlziel1] - TXT Created!! -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 323 - CtrlName: Zahlziel1 - CtrlIndex: Zahlziel1]: End of Select... -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 324 - CtrlName: Skonto1 - CtrlIndex: Skonto1] - TXT Try to create control... -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 324 - CtrlName: Skonto1 - CtrlIndex: Skonto1] - TXT Created!! -09:18:20.7666|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 324 - CtrlName: Skonto1 - CtrlIndex: Skonto1]: End of Select... -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 325 - CtrlName: Zahlziel2 - CtrlIndex: Zahlziel2] - TXT Try to create control... -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 325 - CtrlName: Zahlziel2 - CtrlIndex: Zahlziel2] - TXT Created!! -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 325 - CtrlName: Zahlziel2 - CtrlIndex: Zahlziel2]: End of Select... -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 326 - CtrlName: Skonto2 - CtrlIndex: Skonto2] - TXT Try to create control... -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 326 - CtrlName: Skonto2 - CtrlIndex: Skonto2] - TXT Created!! -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 326 - CtrlName: Skonto2 - CtrlIndex: Skonto2]: End of Select... -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 328 - CtrlName: txt43 - CtrlIndex: Zahlziel_netto] - TXT Try to create control... -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 328 - CtrlName: txt43 - CtrlIndex: Zahlziel_netto] - TXT Created!! -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 328 - CtrlName: txt43 - CtrlIndex: Zahlziel_netto]: End of Select... -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 327 - CtrlName: Zahlungsbedingung2 - CtrlIndex: Zahlungsbedingung2] - TXT Try to create control... -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 327 - CtrlName: Zahlungsbedingung2 - CtrlIndex: Zahlungsbedingung2] - TXT Created!! -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 327 - CtrlName: Zahlungsbedingung2 - CtrlIndex: Zahlungsbedingung2]: End of Select... -09:18:20.7846|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 3160 - CtrlName: LBLSkontobasisbetrag - CtrlIndex: ]: End of Select... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 3162 - CtrlName: LBLSkontobetrag - CtrlIndex: ]: End of Select... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 15019 - CtrlName: lblZahlart - CtrlIndex: ]: End of Select... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3161 - CtrlName: TXT_49784855 - CtrlIndex: Skontobasisbetrag] - TXT Try to create control... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3161 - CtrlName: TXT_49784855 - CtrlIndex: Skontobasisbetrag] - TXT Created!! -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3161 - CtrlName: TXT_49784855 - CtrlIndex: Skontobasisbetrag]: End of Select... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3163 - CtrlName: TXT_Skontobetrag - CtrlIndex: Skontobetrag] - TXT Try to create control... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3163 - CtrlName: TXT_Skontobetrag - CtrlIndex: Skontobetrag] - TXT Created!! -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3163 - CtrlName: TXT_Skontobetrag - CtrlIndex: Skontobetrag]: End of Select... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [LOOKUP#CtrlID: 18774 - CtrlName: Partnerbank - CtrlIndex: Bankverbindung]: End of Select... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [CtrlID: 306 - CtrlName: line21 - CtrlIndex: ]: End of Select... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 330 - CtrlName: lblVerantwortlicheBisher - CtrlIndex: ]: End of Select... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 3148 - CtrlName: LBL_9d62d117 - CtrlIndex: ]: End of Select... -09:18:20.7976|frmValidator|DEBUG >> Create_Controls -> We got a DTGRID_COLUMNS definition for [TABLE#CtrlID: 311 - CtrlName: GridVerantwortliche - CtrlIndex: Verantwortliche] -09:18:20.8146|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] riTextEdit erstellt: DisplayFormat=[#,##0.00 EUR], HashCode=[52099421] -09:18:20.8146|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] pGrid.RepositoryItems.Count VOR Schleife=[0] -09:18:20.8146|frmValidator|DEBUG >> Create_Controls -> [TABLE#CtrlID: 311 - CtrlName: GridVerantwortliche - CtrlIndex: Verantwortliche]: End of Select... -09:18:20.8296|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3149 - CtrlName: BestelltWer - CtrlIndex: BestelltWer] - TXT Try to create control... -09:18:20.8296|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3149 - CtrlName: BestelltWer - CtrlIndex: BestelltWer] - TXT Created!! -09:18:20.8296|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 3149 - CtrlName: BestelltWer - CtrlIndex: BestelltWer]: End of Select... -09:18:20.8296|frmValidator|DEBUG >> Create_Controls -> Create_Controls finished! -09:18:20.8296|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] Nach Create_Controls: 390,0041ms -09:18:20.8296|frmValidator|DEBUG >> frmValidation_Load -> frmValidation_Load finished! -09:18:20.8296|frmValidator|INFO >> frmValidation_Load -> [PERF frmValidation_Load] GESAMT frmValidation_Load: 495,0081ms -09:18:20.8916|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:20.8916|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:20.8916|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:20.8916|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:20.8916|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:20.8916|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:21.0466|taskFLOW|DEBUG >> Load_Profil_from_Grid -> Overlay closed in Load_Profil_from_Grid -09:18:21.0466|taskFLOW|INFO >> Load_Profil_from_Grid -> [PERF Load_Profil_from_Grid GESAMT: 1141,008ms -09:18:21.0486|taskFLOW|INFO >> MoveNext -> [PERF Item_Scope] GESAMT: 1172,9949ms -09:18:21.1156|frmValidator|DEBUG >> ShowOverlaySafe -> [Overlay] Geöffnet (RefCount: 0 → 1) -09:18:21.1156|frmValidator|INFO >> frmValidation_Shown -> [PERF] frmValidation_Shown START -09:18:21.1156|frmValidator|INFO >> Load_Next_Document -> [INFO] Load_Next_Document START - first: True -09:18:21.1156|frmValidator|INFO >> Load_Next_Document -> frmValidator.IsDisposed: False -09:18:21.1156|frmValidator|INFO >> Load_Next_Document -> frmValidator.Visible: True -09:18:21.1156|frmValidator|INFO >> Load_Next_Document -> _FormClosing: False -09:18:21.1156|frmValidator|INFO >> Load_Next_Document -> CURRENT_DOC_GUID: 816254 -09:18:21.1156|taskFLOW|DEBUG >> ClearControlCache -> Control cache cleared -09:18:21.1156|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Load_Next_Document START -09:18:21.1156|frmValidator|DEBUG >> activate_controls -> Sub activate_controls - status = False -09:18:21.3806|frmValidator|DEBUG >> Load_Next_Document -> In Load_Next_Document -09:18:21.3806|frmValidator|DEBUG >> Load_Next_Document -> First Document -09:18:21.3806|frmValidator|DEBUG >> Load_Next_Document -> CURRENT_JUMP_DOC_GUID: 816254' -09:18:21.3806|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach Get_Next_GUID: 258,0003ms -09:18:21.3806|frmValidator|INFO >> Load_Next_Document -> LoadNextDocument - Dokument-GUID: '816254' -09:18:21.3806|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:21.3806|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:21.3806|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:21.3806|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:21.3806|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT dbo.FNPM_GET_FILEPATH(816254,0) AS PATH0, dbo.FNPM_GET_FILEPATH(816254,1) AS PATH1] and Parameters [] -09:18:21.3966|frmValidator|DEBUG >> GetDocPathWindows -> First Checking file [\\W2K19SRV391\Windream\wisag - Geschäftsprozesse\BusinessApplication01\File\Handelsrechnung [380]\0326\2025\12\01\7079357_4101075544.PDF] exists?... -09:18:21.4696|frmValidator|INFO >> GetDocPathWindows -> GetWMDocPathWindows CURRENT_DOC_PATH: \\W2K19SRV391\Windream\wisag - Geschäftsprozesse\BusinessApplication01\File\Handelsrechnung [380]\0326\2025\12\01\7079357_4101075544.PDF -09:18:21.4696|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach GetDocPathWindows: 89,0047ms -09:18:21.4696|frmValidator|DEBUG >> Load_IDB_DOC_DATA -> Load_IDB_DOC_DATA SQL: select * from IDB.dbo.VWIDB_DOC_DATA T, TBPM_PROFILE_FILES T1 WITH (READPAST) WHERE T.IDB_OBJ_ID = T1.DOC_ID AND T1.GUID = 816254 -09:18:21.4696|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:21.4696|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:21.4696|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:21.4696|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:21.4696|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [select * from IDB.dbo.VWIDB_DOC_DATA T, TBPM_PROFILE_FILES T1 WITH (READPAST) WHERE T.IDB_OBJ_ID = T1.DOC_ID AND T1.GUID = 816254] and Parameters [] -09:18:22.1106|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach Load_IDB_DOC_DATA: 638,0034ms -09:18:22.1106|frmValidator|DEBUG >> Load_Next_Document -> Got one IDB DocData Result -09:18:22.1106|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach CreateWMObject/Load_IDB_DOC_DATA: 0ms -09:18:22.1326|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach IN_WORK-UPDATE: 18,9975ms -09:18:22.1326|frmValidator|DEBUG >> Load_Next_Document -> AllDocInfo created... -09:18:22.1326|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach Windream_get_Doc_info: 0ms -09:18:22.1326|Loader|DEBUG >> Load -> DRL Loader - Loading Document Load_FromWindream -09:18:22.1326|Loader|DEBUG >> Load_FromDisk -> Loading file [\\W2K19SRV391\Windream\wisag - Geschäftsprozesse\BusinessApplication01\File\Handelsrechnung [380]\0326\2025\12\01\7079357_4101075544.PDF] -09:18:22.1556|Loader|DEBUG >> Load_FromDisk -> Loaded file [\\W2K19SRV391\Windream\wisag - Geschäftsprozesse\BusinessApplication01\File\Handelsrechnung [380]\0326\2025\12\01\7079357_4101075544.PDF] successfully. -09:18:22.1556|Cache|DEBUG >> Add -> Adding document [5877040]. -09:18:22.1556|frmValidator|INFO >> LoadDocument_DDViewer -> LoadDocument_DDViewer - Current_Document.FullPath: \\W2K19SRV391\Windream\wisag - Geschäftsprozesse\BusinessApplication01\File\Handelsrechnung [380]\0326\2025\12\01\7079357_4101075544.PDF -09:18:22.1576|DocumentViewer|INFO >> LoadFile_FromPath -> Loading file [\\W2K19SRV391\Windream\wisag - Geschäftsprozesse\BusinessApplication01\File\Handelsrechnung [380]\0326\2025\12\01\7079357_4101075544.PDF] from Filesystem -09:18:22.1576|DocumentViewer|DEBUG >> LoadGdPictureFile -> Loading GdPicture: \\W2K19SRV391\Windream\wisag - Geschäftsprozesse\BusinessApplication01\File\Handelsrechnung [380]\0326\2025\12\01\7079357_4101075544.PDF -09:18:22.2216|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach LoadDocument_DDViewer: 87,0056ms -09:18:22.2216|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [EUR] -09:18:22.2216|frmValidator|DEBUG >> Load_Next_Document -> ✓ Währung aus Attribut [Inv_Currency]: EUR -09:18:22.2216|frmValidator|INFO >> Load_Next_Document -> [FINAL] DocCurrency = [EUR] -09:18:22.2216|frmValidator|INFO >> FillIndexValues -> [PERF FillIndexValues] START - Controls: 56 -09:18:22.2216|frmValidator|INFO >> FillIndexValues -> [PERF FillIndexValues] Nach columnsByControl-Gruppierung: 1,0163ms -09:18:22.2216|frmValidator|INFO >> FillIndexValues -> [PERF FillIndexValues] Nach _CachedControlsByGuid-Erstellung: 0ms -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblEingang - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: EMAIL_DATETIME - CONTROLNAME: Erstellt - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [2025-12-01 19:40:05] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [2025-12-01 19:40:05] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblBelegNr - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: BelegNr - CONTROLNAME: BelegNr - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [4101075544] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [4101075544] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: @@DISPLAY_ONLY - CONTROLNAME: TXT_Belegart - LOAD IDXVALUES: False -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> oControl TXT_Belegart: Indexwert soll nicht geladen werden. -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: BelegartSAP - CONTROLNAME: TXT_BelegartSAP - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [R] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [R] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblBelegDatum - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: BelegDatum - CONTROLNAME: BelegDatum - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [01.12.2025 00:00:00] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [01.12.2025 00:00:00] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: eInvoiceTyp - CONTROLNAME: TXT_EInvoiceTyp - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [Z20] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [Z20] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblMandant - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: BuchungskreisNr - CONTROLNAME: BuchungskreisNr - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [0326] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [0326] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: BuchungskreisName - CONTROLNAME: BuchungskreisName - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [WISAG Gebäudetechnik Nord-West GmbH & Co. KG] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [WISAG Gebäudetechnik Nord-West GmbH & Co. KG] -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblKostenstelle - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> FillIndexValues -> INDEX: Kostenstelle - CONTROLNAME: Kostenstelle - LOAD IDXVALUES: True -09:18:22.2216|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2216|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [1990326] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [1990326] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblEmailvon - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: EmailVersender - CONTROLNAME: EmailVersender - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [noreply@cancom.de] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [noreply@cancom.de] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblBestellNr - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: BestellNr - CONTROLNAME: BestellNr - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblEmailan - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: EmailEmpfaenger - CONTROLNAME: EmailEmfaenger - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [eorders.wisag@cancom.de] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [eorders.wisag@cancom.de] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: line20 - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblKreditor - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: LieferantNr - CONTROLNAME: LieferantNr - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [7004027] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LieferantNr]: DataSource-Backup erstellt -09:18:22.2396|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -09:18:22.2396|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -09:18:22.2396|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -09:18:22.2396|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LieferantNr]: SelectedValues auf leere Liste zurückgesetzt -09:18:22.2396|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -09:18:22.2396|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -09:18:22.2396|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -09:18:22.2396|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LieferantNr]: SelectedValues FINAL gesetzt = [7004027] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: Lieferant - CONTROLNAME: Lieferant - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [CANCOM GmbH - ] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [CANCOM GmbH - ] -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblKontierung - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> INDEX: Kontierung - CONTROLNAME: Kontierung - LOAD IDXVALUES: True -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> Grid [Kontierung]: 6 Spalten aus Cache geladen -09:18:22.2396|frmValidator|DEBUG >> FillIndexValues -> getting Value for Attribute [Kontierung] - oIDBTyp [8] - oIDBOverride [False]... -09:18:22.2396|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [False] - FromIDB [False] -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> oAttributeValue for Attribute [Kontierung] is so far nothing..Now trying FNIDB_PM_GET_VARIABLE_VALUE -09:18:22.2396|taskFLOW|DEBUG >> GetVariableValue -> : SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] (5877040,'Kontierung','de-DE',CONVERT(BIT,'True')) -09:18:22.2396|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.2396|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [IDB] with Connection Id [IDB] -09:18:22.2396|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=IDB;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391;; -09:18:22.2396|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.2506|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] (5877040,'Kontierung','de-DE',CONVERT(BIT,'True'))] and Parameters [] -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> oValueType is [System.String]! -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> DevExpressGrid: 6 Columns configured for control 312. -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> IDB Fill Grid [Kontierung] With String -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> oValueFromSource [1~4801300~322.00~199 - Allgemein/Sonstiges NL 0326~~Samsung Galaxy XCover7 EE Bundle] - PMDelimiter[~] -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> Now creating the rows For DevexpressGrid ... -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> ...Index [1] - Value [1] -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue: INTEGER -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] Input: [1] -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] After cleanup: [1], HasDot=False, HasComma=False -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] No separators found → integer or already normalized -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] Output: [1] -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> ...Index [2] - Value [4801300] -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue: TEXT -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue - Case ELSE - pType is TEXT -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> ...Index [3] - Value [322.00] -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue: CURRENCY -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] Input: [322.00] -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] After cleanup: [322.00], HasDot=True, HasComma=False -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] Only dot found: DotCount=1 -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] Single dot: DigitsAfterDot=2 -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] Dot treated as decimal separator (3 digits before, 2 after) -09:18:22.2506|taskFLOW|DEBUG >> NormalizeNumericString -> [NormalizeNumericString] Output: [322.00] -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue CURRENCY: Original=[322.00], Normalized=[322.00] -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> ...Index [4] - Value [199 - Allgemein/Sonstiges NL 0326] -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue: TEXT -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue - Case ELSE - pType is TEXT -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> ...Index [5] - Value [] -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue: TEXT -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue - Case ELSE - pType is TEXT -09:18:22.2506|frmValidator|DEBUG >> FillIndexValues -> ...Index [6] - Value [Samsung Galaxy XCover7 EE Bundle] -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue: TEXT -09:18:22.2506|taskFLOW|DEBUG >> GetConvertedValue -> GetConvertedValue - Case ELSE - pType is TEXT -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:22.2666|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:22.2666|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblBemerkung - LOAD IDXVALUES: True -09:18:22.2666|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblZahlart_1 - LOAD IDXVALUES: True -09:18:22.2666|frmValidator|DEBUG >> FillIndexValues -> INDEX: Zahlart - CONTROLNAME: LU_Zahlart - LOAD IDXVALUES: True -09:18:22.2666|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Zahlart]: Alte SelectedValues gesichert = [0] -09:18:22.2666|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2666|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2666|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2666|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [5] -09:18:22.2666|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Zahlart]: DataSource-Backup erstellt -09:18:22.2666|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -09:18:22.2846|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Zahlart]: SelectedValues auf leere Liste zurückgesetzt -09:18:22.2846|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -09:18:22.2846|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Zahlart]: SelectedValues FINAL gesetzt = [5] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: @@DISPLAY_ONLY - CONTROLNAME: TXT_ZahlartBezeichnung - LOAD IDXVALUES: False -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> oControl TXT_ZahlartBezeichnung: Indexwert soll nicht geladen werden. -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Bemerkung - CONTROLNAME: Bemerkung - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblZahlKondition - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Zahlungsbedingung1 - CONTROLNAME: txtZahlungsbedingung1 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [innerhalb von 10 Tagen ohne Abzug] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [innerhalb von 10 Tagen ohne Abzug] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblZahlziel1 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblSkonto 1 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblZahlziel2 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblSkonto2 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblZahlzielNetto - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblZahlungsinfoBeleg - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Zahlziel1 - CONTROLNAME: Zahlziel1 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [10] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [10] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Skonto1 - CONTROLNAME: Skonto1 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [0] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [0] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Zahlziel2 - CONTROLNAME: Zahlziel2 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [0] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [0] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Skonto2 - CONTROLNAME: Skonto2 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [0] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [0] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Zahlziel_netto - CONTROLNAME: txt43 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [0] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [0] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Zahlungsbedingung2 - CONTROLNAME: Zahlungsbedingung2 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: LBLSkontobasisbetrag - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: LBLSkontobetrag - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblZahlart - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Skontobasisbetrag - CONTROLNAME: TXT_49784855 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [383,19] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [383,19] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Skontobetrag - CONTROLNAME: TXT_Skontobetrag - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Bankverbindung - CONTROLNAME: Partnerbank - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [1200 / 72040046 / 0112921200] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [Partnerbank]: DataSource-Backup erstellt -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [Partnerbank]: SelectedValues auf leere Liste zurückgesetzt -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [Partnerbank]: SelectedValues FINAL gesetzt = [1200 / 72040046 / 0112921200] -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: line21 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: lblVerantwortlicheBisher - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: - CONTROLNAME: LBL_9d62d117 - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> INDEX: Verantwortliche - CONTROLNAME: GridVerantwortliche - LOAD IDXVALUES: True -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> Grid [GridVerantwortliche]: 3 Spalten aus Cache geladen -09:18:22.2846|frmValidator|DEBUG >> FillIndexValues -> getting Value for Attribute [Verantwortliche] - oIDBTyp [8] - oIDBOverride [False]... -09:18:22.2846|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [False] - FromIDB [False] -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> oAttributeValue for Attribute [Verantwortliche] is so far nothing..Now trying FNIDB_PM_GET_VARIABLE_VALUE -09:18:22.2846|taskFLOW|DEBUG >> GetVariableValue -> : SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] (5877040,'Verantwortliche','de-DE',CONVERT(BIT,'True')) -09:18:22.2846|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.2846|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [IDB] with Connection Id [IDB] -09:18:22.2846|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=IDB;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391;; -09:18:22.2846|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.2846|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] (5877040,'Verantwortliche','de-DE',CONVERT(BIT,'True'))] and Parameters [] -09:18:22.2976|frmValidator|DEBUG >> FillIndexValues -> oValueType is [System.Data.DataTable]! -09:18:22.2976|frmValidator|DEBUG >> FillIndexValues -> DevExpressGrid: 3 Columns configured for control 311. -09:18:22.2976|frmValidator|DEBUG >> FillIndexValues -> IDB Fill Grid [GridVerantwortliche] With Datatable - Rows 0 - ReadOnly: True -09:18:22.2976|frmValidator|DEBUG >> FillIndexValues -> INDEX: BestelltWer - CONTROLNAME: BestelltWer - LOAD IDXVALUES: True -09:18:22.2976|frmValidator|DEBUG >> GetVariableValuefromSource -> GetVariableValuefromSource - IDBCase... -09:18:22.2976|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.2976|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.2976|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [] -09:18:22.2976|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -09:18:22.2976|frmValidator|INFO >> FillIndexValues -> [PERF FillIndexValues] Nach Control-Schleife: 75,9968ms -09:18:22.2976|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.2976|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:22.2976|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:22.2976|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:22.2976|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:22.2976|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.2976|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:22.2976|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:22.2976|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.2976|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT ZAEHLER FROM TBWH_SEQUENCE WHERE ZAEHLER <= 500 order by ZAEHLER] and Parameters [] -09:18:22.2976|frmValidator|DEBUG >> FillIndexValues -> Trying to create a DropDown(FIV) for CONTROL-ID [312] - RowCount: [500] -09:18:22.2976|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.2976|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:22.2976|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:22.2976|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:22.2976|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:22.2976|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.2976|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:22.2976|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:22.2976|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.2976|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT ZAEHLER FROM TBWH_SEQUENCE WHERE ZAEHLER <= 500 order by ZAEHLER] and Parameters [] -09:18:22.3136|frmValidator|INFO >> FillIndexValues -> [PERF FillIndexValues] Nach Grid-Dropdown-Loop: 8,9986ms -09:18:22.3136|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.3136|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [IDB] with Connection Id [IDB] -09:18:22.3136|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=IDB;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391;; -09:18:22.3136|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.3136|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [select Attribut, TERM_VALUE from VWIDB_VALUE_TEXT WHERE LANG_CODE IN ('de-DE','UNQID') AND IDB_OBJ_ID = 5877040 AND Attribut in ('PM_Info1','PM_Info2') ORDER BY Attribut] and Parameters [] -09:18:22.3136|frmValidator|DEBUG >> FillIndexValues -> No PM_Info-Configuration!! -09:18:22.3136|frmValidator|INFO >> FillIndexValues -> [PERF FillIndexValues] Nach PM_Info-Setup: 10,0008ms -09:18:22.3136|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = {#IDBA#ObjectID}] -09:18:22.3136|taskFLOW|DEBUG >> ReplaceIDBAttributes -> IS_SQL = True - oReplaceValue = [{#IDBA#ObjectID}] -09:18:22.3136|taskFLOW|DEBUG >> ReplaceIDBAttributes -> oIDBValue = 5877040 -09:18:22.3136|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = {#IDBA#ObjectID} -09:18:22.3136|taskFLOW|DEBUG >> ReplaceControlValues -> Control cache initialized with 57 controls -09:18:22.3136|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = 5877040] -09:18:22.3136|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.3136|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [None] with Connection Id [None] -09:18:22.3136|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:22.3136|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:22.3136|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:22.3136|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.3136|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:22.3136|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:22.3136|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.3136|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = 5877040] and Parameters [] -09:18:22.8736|frmValidator|DEBUG >> Load_Additional_Searches -> AdditionalData/Docresults = false! -09:18:22.8736|frmValidator|INFO >> FillIndexValues -> [PERF FillIndexValues] Nach Load_Additional_Searches: 547,9987ms -09:18:22.8756|frmValidator|INFO >> FillIndexValues -> [PERF FillIndexValues] Nach TryOpen_Additional_Searches: 0ms -09:18:22.8756|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.8756|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:22.8756|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:22.8756|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:22.8756|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:22.8756|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.8756|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:22.8756|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:22.8756|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.8756|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT ZAEHLER FROM TBWH_SEQUENCE WHERE ZAEHLER <= 500 order by ZAEHLER] and Parameters [] -09:18:22.8756|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -09:18:22.8756|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [Kontierung] -09:18:22.8756|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [SELECT SANO,SATITLE,SELECTED AS Häufigkeit FROM dbo.FNCUST_GET_SACHKONTEN ('{#CTRL#BuchungskreisNr}','{#CTRL#LieferantNr}') ORDER BY SELECTED DESC] -09:18:22.8756|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: SELECT SANO,SATITLE,SELECTED AS Häufigkeit FROM dbo.FNCUST_GET_SACHKONTEN ('{#CTRL#BuchungskreisNr}','{#CTRL#LieferantNr}') ORDER BY SELECTED DESC -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [BuchungskreisNr]. -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DevExpress.XtraEditors.TextEdit]. -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> TextEdit- oReplaceValue will be [0326]. -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [BuchungskreisNr], oReplaceValue Type: [String], Value: [0326], IsSQL: [True] -09:18:22.8756|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [0326] -09:18:22.8756|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [0326] -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LieferantNr]. -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LieferantNr] mit genau einem Value -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 7004027 -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 7004027 -09:18:22.8756|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LieferantNr], oReplaceValue Type: [String], Value: [7004027], IsSQL: [True] -09:18:22.8756|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [7004027] -09:18:22.8756|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [7004027] -09:18:22.8756|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [SELECT SANO,SATITLE,SELECTED AS Häufigkeit FROM dbo.FNCUST_GET_SACHKONTEN ('0326','7004027') ORDER BY SELECTED DESC] -09:18:22.8756|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.8756|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:22.8756|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:22.8756|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:22.8756|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:22.8756|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.8756|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:22.8756|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:22.8756|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.8756|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT SANO,SATITLE,SELECTED AS Häufigkeit FROM dbo.FNCUST_GET_SACHKONTEN ('0326','7004027') ORDER BY SELECTED DESC] and Parameters [] -09:18:22.8916|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -09:18:22.8916|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [Kontierung] -09:18:22.8916|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [SELECT KST + ' - ' + TITLE FROM [dbo].[FNCUST_GET_KST] ('{#CTRL#BuchungskreisNr}') ORDER BY SEQU] -09:18:22.8916|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: SELECT KST + ' - ' + TITLE FROM [dbo].[FNCUST_GET_KST] ('{#CTRL#BuchungskreisNr}') ORDER BY SEQU -09:18:22.8916|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [BuchungskreisNr]. -09:18:22.8916|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DevExpress.XtraEditors.TextEdit]. -09:18:22.8916|taskFLOW|DEBUG >> ReplaceControlValues -> TextEdit- oReplaceValue will be [0326]. -09:18:22.8916|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [BuchungskreisNr], oReplaceValue Type: [String], Value: [0326], IsSQL: [True] -09:18:22.8916|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [0326] -09:18:22.8916|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [0326] -09:18:22.8916|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [SELECT KST + ' - ' + TITLE FROM [dbo].[FNCUST_GET_KST] ('0326') ORDER BY SEQU] -09:18:22.8916|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.8916|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:22.8916|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:22.8916|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:22.8916|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:22.8916|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.8916|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:22.8916|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:22.8916|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.8916|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT KST + ' - ' + TITLE FROM [dbo].[FNCUST_GET_KST] ('0326') ORDER BY SEQU] and Parameters [] -09:18:22.9116|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -09:18:22.9116|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [Kontierung] -09:18:22.9116|frmValidator|INFO >> FillIndexValues -> [PERF FillIndexValues] GESAMT: 687,0057ms -09:18:22.9116|frmValidator|DEBUG >> UpdateGridCurrencyFormats -> [UpdateGridCurrencyFormats] DocCurrency is EUR or empty, cache updated but skipping format rebuild. -09:18:22.9116|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach FillIndexValues: 690,0046ms -09:18:22.9116|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [318]... -09:18:22.9116|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [TXT_Belegart] with GUID [318] ... -09:18:22.9116|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MP 27.06.2025 - -IF EXISTS (SELECT 1 FROM [TBDD_GUI_LANGUAGE_PHRASE] WHERE [CAPT_TYPE] = 'Document type' - AND [TITLE] = '{#IDBA#Doctype}' AND [LANGUAGE] = '{#USER#LANGUAGE}') -BEGIN -SELECT [STRING1] -FROM [TBDD_GUI_LANGUAGE_PHRASE] -WHERE [CAPT_TYPE] = 'Document type' - AND [TITLE] = '{#IDBA#Doctype}' - AND [LANGUAGE] = '{#USER#LANGUAGE}' -END -ELSE - SELECT '{#IDBA#Doctype}' -] -09:18:22.9116|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - oSingleAttribute [True] - FromIDB [False] -09:18:22.9116|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1 -09:18:22.9116|taskFLOW|DEBUG >> GetVariableValue -> IDBData - GetVariableValue - Returning value: [Handelsrechnung [380]] -09:18:22.9116|taskFLOW|DEBUG >> ReplaceIDBAttributes -> IS_SQL = True - oReplaceValue = [{#IDBA#Doctype}] -09:18:22.9116|taskFLOW|DEBUG >> ReplaceIDBAttributes -> oIDBValue = Handelsrechnung [380] -09:18:22.9116|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: -- MP 27.06.2025 - -IF EXISTS (SELECT 1 FROM [TBDD_GUI_LANGUAGE_PHRASE] WHERE [CAPT_TYPE] = 'Document type' - AND [TITLE] = '{#IDBA#Doctype}' AND [LANGUAGE] = '{#USER#LANGUAGE}') -BEGIN -SELECT [STRING1] -FROM [TBDD_GUI_LANGUAGE_PHRASE] -WHERE [CAPT_TYPE] = 'Document type' - AND [TITLE] = '{#IDBA#Doctype}' - AND [LANGUAGE] = '{#USER#LANGUAGE}' -END -ELSE - SELECT '{#IDBA#Doctype}' - -09:18:22.9116|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MP 27.06.2025 - -IF EXISTS (SELECT 1 FROM [TBDD_GUI_LANGUAGE_PHRASE] WHERE [CAPT_TYPE] = 'Document type' - AND [TITLE] = 'Handelsrechnung [380]' AND [LANGUAGE] = 'de-DE') -BEGIN -SELECT [STRING1] -FROM [TBDD_GUI_LANGUAGE_PHRASE] -WHERE [CAPT_TYPE] = 'Document type' - AND [TITLE] = 'Handelsrechnung [380]' - AND [LANGUAGE] = 'de-DE' -END -ELSE - SELECT 'Handelsrechnung [380]' -] -09:18:22.9116|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.9116|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:22.9116|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:22.9116|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:22.9116|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:22.9116|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.9116|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:22.9116|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:22.9116|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.9116|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MP 27.06.2025 - -IF EXISTS (SELECT 1 FROM [TBDD_GUI_LANGUAGE_PHRASE] WHERE [CAPT_TYPE] = 'Document type' - AND [TITLE] = 'Handelsrechnung [380]' AND [LANGUAGE] = 'de-DE') -BEGIN -SELECT [STRING1] -FROM [TBDD_GUI_LANGUAGE_PHRASE] -WHERE [CAPT_TYPE] = 'Document type' - AND [TITLE] = 'Handelsrechnung [380]' - AND [LANGUAGE] = 'de-DE' -END -ELSE - SELECT 'Handelsrechnung [380]' -] and Parameters [] -09:18:22.9116|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [2289]... -09:18:22.9116|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [LieferantNr] with GUID [2289] ... -09:18:22.9116|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [SELECT T.KreditorNR AS "KreditorNr", T.KreditorName1_2 AS "Kreditor Name" - FROM [DD_ECM].[dbo].[TBCUST_KREDITOR_DISTINCT] T - INNER JOIN [DD_ECM].[dbo].[TBCUST_SYNC_SAP_KREDITOREN_ZO] T2 - ON '000'+T.KreditorNr = T2.LIFNR - WHERE T2.BUKRS = '{#CTRL#BuchungskreisNr}' - AND LEN(T2.SPERR) = 0 -UNION -SELECT T.KreditorNR AS "KreditorNr", T.KreditorName1_2 AS "Kreditor Name" - FROM [DD_ECM].[dbo].[TBCUST_KREDITOR_DISTINCT] T - INNER JOIN [DD_ECM].[dbo].[TBCUST_SYNC_SAP_KREDITOREN_ZO] T2 - ON T.KreditorNr = T2.LIFNR - WHERE T2.BUKRS = '{#CTRL#BuchungskreisNr}' - AND LEN(T2.SPERR) = 0 - ORDER BY T.KreditorNR ASC - -] -09:18:22.9116|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: SELECT T.KreditorNR AS "KreditorNr", T.KreditorName1_2 AS "Kreditor Name" - FROM [DD_ECM].[dbo].[TBCUST_KREDITOR_DISTINCT] T - INNER JOIN [DD_ECM].[dbo].[TBCUST_SYNC_SAP_KREDITOREN_ZO] T2 - ON '000'+T.KreditorNr = T2.LIFNR - WHERE T2.BUKRS = '{#CTRL#BuchungskreisNr}' - AND LEN(T2.SPERR) = 0 -UNION -SELECT T.KreditorNR AS "KreditorNr", T.KreditorName1_2 AS "Kreditor Name" - FROM [DD_ECM].[dbo].[TBCUST_KREDITOR_DISTINCT] T - INNER JOIN [DD_ECM].[dbo].[TBCUST_SYNC_SAP_KREDITOREN_ZO] T2 - ON T.KreditorNr = T2.LIFNR - WHERE T2.BUKRS = '{#CTRL#BuchungskreisNr}' - AND LEN(T2.SPERR) = 0 - ORDER BY T.KreditorNR ASC - - -09:18:22.9116|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [BuchungskreisNr]. -09:18:22.9116|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DevExpress.XtraEditors.TextEdit]. -09:18:22.9116|taskFLOW|DEBUG >> ReplaceControlValues -> TextEdit- oReplaceValue will be [0326]. -09:18:22.9116|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [BuchungskreisNr], oReplaceValue Type: [String], Value: [0326], IsSQL: [True] -09:18:22.9116|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [0326] -09:18:22.9116|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [0326] -09:18:22.9116|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [SELECT T.KreditorNR AS "KreditorNr", T.KreditorName1_2 AS "Kreditor Name" - FROM [DD_ECM].[dbo].[TBCUST_KREDITOR_DISTINCT] T - INNER JOIN [DD_ECM].[dbo].[TBCUST_SYNC_SAP_KREDITOREN_ZO] T2 - ON '000'+T.KreditorNr = T2.LIFNR - WHERE T2.BUKRS = '0326' - AND LEN(T2.SPERR) = 0 -UNION -SELECT T.KreditorNR AS "KreditorNr", T.KreditorName1_2 AS "Kreditor Name" - FROM [DD_ECM].[dbo].[TBCUST_KREDITOR_DISTINCT] T - INNER JOIN [DD_ECM].[dbo].[TBCUST_SYNC_SAP_KREDITOREN_ZO] T2 - ON T.KreditorNr = T2.LIFNR - WHERE T2.BUKRS = '0326' - AND LEN(T2.SPERR) = 0 - ORDER BY T.KreditorNR ASC - -] -09:18:22.9116|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:22.9116|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:22.9116|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:22.9116|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:22.9116|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:22.9116|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.9116|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:22.9226|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:22.9226|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:22.9226|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT T.KreditorNR AS "KreditorNr", T.KreditorName1_2 AS "Kreditor Name" - FROM [DD_ECM].[dbo].[TBCUST_KREDITOR_DISTINCT] T - INNER JOIN [DD_ECM].[dbo].[TBCUST_SYNC_SAP_KREDITOREN_ZO] T2 - ON '000'+T.KreditorNr = T2.LIFNR - WHERE T2.BUKRS = '0326' - AND LEN(T2.SPERR) = 0 -UNION -SELECT T.KreditorNR AS "KreditorNr", T.KreditorName1_2 AS "Kreditor Name" - FROM [DD_ECM].[dbo].[TBCUST_KREDITOR_DISTINCT] T - INNER JOIN [DD_ECM].[dbo].[TBCUST_SYNC_SAP_KREDITOREN_ZO] T2 - ON T.KreditorNr = T2.LIFNR - WHERE T2.BUKRS = '0326' - AND LEN(T2.SPERR) = 0 - ORDER BY T.KreditorNR ASC - -] and Parameters [] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData DEBUG] Lookup [LieferantNr] konfiguriert: -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> DataSource-Typ: System.Data.DataTable -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> ValueMember: [] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> DisplayMember: [] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Alte SelectedValues gesichert: [7004027] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Wert [7004027] existiert im neuen DataSource ✓ -09:18:23.0026|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -09:18:23.0026|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -09:18:23.0026|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -09:18:23.0026|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] SelectedValues wiederhergestellt: [7004027] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [329]... -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [Lieferant] with GUID [329] ... -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> Control for Index [{0}] is read-only. Continuing. -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [309]... -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [LU_Zahlart] with GUID [309] ... -09:18:23.0026|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK // 16.09.2025 - -EXEC [dbo].[PRDD_GET_TRANSLATED_CHOICELIST] - @pSOURCE_QUERY = N'SELECT [ID] as ''ID'',[DESCRIPTION] as ''%DESCRIPTION%'' - FROM [FNCUST_TF_GET_PAYMENT_METHODE](''{#USER#LANGUAGE}'')', - @pLANGUAGE = N'{#USER#LANGUAGE}' - --- Test mit --- de-de] -09:18:23.0026|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: -- MK // 16.09.2025 - -EXEC [dbo].[PRDD_GET_TRANSLATED_CHOICELIST] - @pSOURCE_QUERY = N'SELECT [ID] as ''ID'',[DESCRIPTION] as ''%DESCRIPTION%'' - FROM [FNCUST_TF_GET_PAYMENT_METHODE](''{#USER#LANGUAGE}'')', - @pLANGUAGE = N'{#USER#LANGUAGE}' - --- Test mit --- de-de -09:18:23.0026|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK // 16.09.2025 - -EXEC [dbo].[PRDD_GET_TRANSLATED_CHOICELIST] - @pSOURCE_QUERY = N'SELECT [ID] as ''ID'',[DESCRIPTION] as ''%DESCRIPTION%'' - FROM [FNCUST_TF_GET_PAYMENT_METHODE](''de-DE'')', - @pLANGUAGE = N'de-DE' - --- Test mit --- de-de] -09:18:23.0026|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:23.0026|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:23.0026|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:23.0026|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:23.0026|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK // 16.09.2025 - -EXEC [dbo].[PRDD_GET_TRANSLATED_CHOICELIST] - @pSOURCE_QUERY = N'SELECT [ID] as ''ID'',[DESCRIPTION] as ''%DESCRIPTION%'' - FROM [FNCUST_TF_GET_PAYMENT_METHODE](''de-DE'')', - @pLANGUAGE = N'de-DE' - --- Test mit --- de-de] and Parameters [] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData DEBUG] Lookup [LU_Zahlart] konfiguriert: -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> DataSource-Typ: System.Data.DataTable -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> ValueMember: [ID] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> DisplayMember: [ID] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Alte SelectedValues gesichert: [5] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Wert [5] existiert im neuen DataSource ✓ -09:18:23.0026|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -09:18:23.0026|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] SelectedValues wiederhergestellt: [5] -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [3754]... -09:18:23.0026|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [TXT_ZahlartBezeichnung] with GUID [3754] ... -09:18:23.0026|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK // 22.10.2025 - -SELECT TOP 1 [DESCRIPTION] -FROM [FNCUST_TF_GET_PAYMENT_METHODE]('{#USER#LANGUAGE}') -WHERE [ID] = '{#CTRL#LU_Zahlart}'; - --- Test mit --- de-de --- 2] -09:18:23.0026|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: -- MK // 22.10.2025 - -SELECT TOP 1 [DESCRIPTION] -FROM [FNCUST_TF_GET_PAYMENT_METHODE]('{#USER#LANGUAGE}') -WHERE [ID] = '{#CTRL#LU_Zahlart}'; - --- Test mit --- de-de --- 2 -09:18:23.0026|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_Zahlart]. -09:18:23.0026|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -09:18:23.0026|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_Zahlart] mit genau einem Value -09:18:23.0026|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 5 -09:18:23.0026|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 5 -09:18:23.0026|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_Zahlart], oReplaceValue Type: [String], Value: [5], IsSQL: [True] -09:18:23.0026|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [5] -09:18:23.0026|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [5] -09:18:23.0026|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK // 22.10.2025 - -SELECT TOP 1 [DESCRIPTION] -FROM [FNCUST_TF_GET_PAYMENT_METHODE]('de-DE') -WHERE [ID] = '5'; - --- Test mit --- de-de --- 2] -09:18:23.0026|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:23.0026|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:23.0026|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -09:18:23.0026|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -09:18:23.0026|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:23.0026|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:23.0026|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -09:18:23.0166|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX -09:18:23.0166|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:23.0166|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK // 22.10.2025 - -SELECT TOP 1 [DESCRIPTION] -FROM [FNCUST_TF_GET_PAYMENT_METHODE]('de-DE') -WHERE [ID] = '5'; - --- Test mit --- de-de --- 2] and Parameters [] -09:18:23.0166|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [18774]... -09:18:23.0166|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [Partnerbank] with GUID [18774] ... -09:18:23.0166|frmValidator|INFO >> LoadSQLData -> No CONNECTION_ID for SQL-Data - oGUID: 18774 -09:18:23.0166|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach LoadSQLData-Loop: 107,0017ms -09:18:23.0166|taskFLOW|DEBUG >> SetVariableValue -> IDBData - SetVariableValue - Attribute: [PM_LOGGING] - NewValue: [PMProfile loaded: [10-4 Workflow 3.0 - Freigabe Final]] - CheckDeleted: [False] - oIDBTyp: [0] -09:18:23.0166|taskFLOW|DEBUG >> SetVariableValue -> DECLARE @NEW_OBJ_MD_ID BIGINT -EXEC PRIDB_NEW_OBJ_DATA 5877040,'PM_LOGGING','marschreiber','PMProfile loaded: [10-4 Workflow 3.0 - Freigabe Final]','de-DE',0,@OMD_ID = @NEW_OBJ_MD_ID OUTPUT; -09:18:23.1256|frmValidator|DEBUG >> activate_controls -> Sub activate_controls - status = True -09:18:23.1556|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:23.1556|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:23.1556|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:23.1577|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:23.1577|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:23.1577|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:23.1577|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:23.1577|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:23.1577|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:23.1577|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:23.1577|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:23.1577|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:23.1577|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:23.1577|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:23.2086|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:23.2086|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:23.2506|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:23.2506|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach Currency-Format: 231,002ms -09:18:23.2506|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access. -09:18:23.2506|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -09:18:23.2506|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:23.2506|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:23.2506|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [ - - SELECT - CONVERT(VARCHAR(30), A.ADDED_WHEN,20) + ' - ' + B.STRING1 as MSG,A.ImageIndex -FROM - TBTF_VALIDATOR_MESSAGE A WITH (READPAST) INNER JOIN - (SELECt * FROM TBDD_GUI_LANGUAGE_PHRASE WITH (READPAST) - WHERE MODULE = 'PM' AND OBJ_NAME = 'frmValidator' AND CAPT_TYPE = 'WF_MESSAGE') B ON A.GUI_LANG_TITLE = B.TITLE WHERE A.Active = 1 and (A.DocID = 5877040 or A.DocID = 1) AND B.LANGUAGE = 'de-DE' ORDER BY A.ADDED_WHEN DESC -] and Parameters [] -09:18:23.2776|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach Show_WF_Messages: 20,9974ms -09:18:23.2776|frmValidator|DEBUG >> Load_Next_Document -> [DIAGNOSE] VOR Controls2B_EnDisabled_onLoad: -09:18:23.2776|frmValidator|DEBUG >> Load_Next_Document -> _FormLoaded = [True] -09:18:23.2776|frmValidator|DEBUG >> Load_Next_Document -> _FormClosing = [False] -09:18:23.2776|frmValidator|DEBUG >> Load_Next_Document -> IsDisposed = [False] -09:18:23.2776|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> We got 2 controls which need to be checked dis/enable on load! -09:18:23.2776|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Checking Control [LU_Zahlart] (ID: 309) for SQL_ENABLE_ON_LOAD... -09:18:23.2776|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Found Control [LU_Zahlart] (ID: 309) on panel which needs to be checked -09:18:23.2776|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> [Controls2B_EnDisabled_onLoad] BEFORE ReplaceAllValues for Control [LU_Zahlart] -09:18:23.2776|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> SQL Command: [-- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '{#CTRL#LieferantNr}'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active;] -09:18:23.2776|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> Panel Controls Count: [55] -09:18:23.2776|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '{#CTRL#LieferantNr}'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active;] -09:18:23.2776|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: -- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '{#CTRL#LieferantNr}'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active; -09:18:23.2776|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LieferantNr]. -09:18:23.2776|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -09:18:23.2776|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LieferantNr] mit genau einem Value -09:18:23.2776|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 7004027 -09:18:23.2776|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 7004027 -09:18:23.2776|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LieferantNr], oReplaceValue Type: [String], Value: [7004027], IsSQL: [True] -09:18:23.2776|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [7004027] -09:18:23.2776|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [7004027] -09:18:23.2776|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '7004027'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active;] -09:18:23.2776|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> [Controls2B_EnDisabled_onLoad] AFTER ReplaceAllValues: [-- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '7004027'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active;] -09:18:23.2776|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> [SQL START] Control [LU_Zahlart]: Führe SQL aus... -09:18:23.2776|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391; -09:18:23.2776|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -09:18:23.2776|MSSQLServer|DEBUG >> GetScalarValueWithConnectionObject(MSSQLServer.vb:562) -> GetScalarValueWithConnectionObject: Running Query [-- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '7004027'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active;] with Parameters [] -09:18:23.2776|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> [SQL ENDE] Control [LU_Zahlart]: Result = [True] -09:18:23.2776|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Result of Enable SQL [True]... -09:18:23.2776|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Checking Control [Partnerbank] (ID: 18774) for SQL_ENABLE_ON_LOAD... -09:18:23.2776|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Found Control [Partnerbank] (ID: 18774) on panel which needs to be checked -09:18:23.2776|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> [Controls2B_EnDisabled_onLoad] BEFORE ReplaceAllValues for Control [Partnerbank] -09:18:23.2776|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> SQL Command: [-- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '{#CTRL#LieferantNr}'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active;] -09:18:23.2826|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> Panel Controls Count: [55] -09:18:23.2826|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '{#CTRL#LieferantNr}'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active;] -09:18:23.2826|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: -- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '{#CTRL#LieferantNr}'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active; -09:18:23.2826|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LieferantNr]. -09:18:23.2826|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -09:18:23.2826|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LieferantNr] mit genau einem Value -09:18:23.2826|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 7004027 -09:18:23.2826|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 7004027 -09:18:23.2826|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LieferantNr], oReplaceValue Type: [String], Value: [7004027], IsSQL: [True] -09:18:23.2826|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [7004027] -09:18:23.2826|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [7004027] -09:18:23.2826|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '7004027'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active;] -09:18:23.2826|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> [Controls2B_EnDisabled_onLoad] AFTER ReplaceAllValues: [-- MK // 17.09.2025 - -DECLARE @Active BIT, - @Creditor NVARCHAR(100) = '7004027'; - -SET @Active = CASE - - WHEN LEN(@Creditor) > 0 and (@Creditor <> '0') - THEN 1 - - ELSE 0 - -END; - -SELECT @Active;] -09:18:23.2826|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> [SQL START] Control [Partnerbank]: Führe SQL aus... -09:18:23.2826|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> [SQL ENDE] Control [Partnerbank]: Result = [True] -09:18:23.2826|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Result of Enable SQL [True]... -09:18:23.2826|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> [EXIT 3] Controls2B_EnDisabled_onLoad: Normale Beendigung -09:18:23.2826|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Nach Controls2B_EnDisabled: 4,9994ms -09:18:23.2826|frmValidator|DEBUG >> Load_Next_Document -> frmValidator: LoadNextDocument finished! -09:18:23.2826|frmValidator|DEBUG >> CloseOverlaySafe -> [Overlay] RefCount: 1 → 0 -09:18:23.2826|frmValidator|DEBUG >> CloseOverlaySafe -> [Overlay] ✓ Geschlossen -09:18:23.2826|frmValidator|INFO >> Load_Next_Document -> [INFO] Load_Next_Document ENDE -09:18:23.2826|frmValidator|INFO >> Load_Next_Document -> frmValidator.IsDisposed: False -09:18:23.2826|frmValidator|INFO >> Load_Next_Document -> frmValidator.Visible: True -09:18:23.2826|frmValidator|INFO >> Load_Next_Document -> [PERF LND] Load_Next_Document GESAMT: 2165,0144ms -09:18:23.2826|frmValidator|INFO >> frmValidation_Shown -> [PERF] frmValidation_Shown nach Load_Next_Document: 2173,0133ms -09:18:23.2826|frmValidator|DEBUG >> frmValidation_Shown -> Enabling Export2File, Caption set -09:18:23.2826|frmValidator|DEBUG >> frmValidation_Shown -> Button Caption: [Export Y:] -09:18:23.2826|frmValidator|DEBUG >> frmValidation_Shown -> Export root folder: [\\wisagservice\re] -09:18:23.2826|frmValidator|DEBUG >> frmValidation_Shown -> File exists, Showing Export Button -09:18:23.4066|frmValidator|DEBUG >> frmValidation_Shown -> Setting default export path to [\\wisagservice\re] -09:18:23.4076|frmValidator|INFO >> frmValidation_Shown -> [PERF] frmValidation_Shown nach Ribbon/Export Setup: 117,9964ms -09:18:23.4076|frmValidator|DEBUG >> frmValidation_Shown -> frmValidation_Shown finished! -09:18:23.4076|frmValidator|DEBUG >> frmValidation_Shown -> ℹ Overlay war bereits geschlossen -09:18:23.4846|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:23.4856|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:23.4856|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [ColumnRowNr] -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colSAKNR] -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [col2] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [colKostenstelle] -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [colZuordnung] does not exist -09:18:23.4856|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [col5] does not exist -09:18:23.6386|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:23.6386|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:23.6686|frmValidator|INFO >> frmValidation_Shown -> [PERF] frmValidation_Shown GESAMT: 2553,02ms -09:18:23.6966|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:23.6966|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:26.8257|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:26.8307|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:26.8587|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:26.8587|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:26.8767|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:26.8767|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:26.8967|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:26.8967|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:26.9257|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:26.9257|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:26.9457|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:26.9457|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:26.9597|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:26.9597|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:26.9727|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:26.9727|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:26.9937|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:26.9937|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:27.0047|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:27.0047|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:27.0197|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:27.0197|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:27.0367|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:27.0367|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:27.0497|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:27.0497|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -09:18:27.0497|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -09:18:27.0497|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [col2]: DisplayText=[322,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) diff --git a/app/TaskFlow/taskFLOW-TEST-Debug.txt b/app/TaskFlow/taskFLOW-TEST-Debug.txt deleted file mode 100644 index e494132..0000000 --- a/app/TaskFlow/taskFLOW-TEST-Debug.txt +++ /dev/null @@ -1,2141 +0,0 @@ -13:41:11.1588|taskFLOW|INFO >> MoveNext -> Starting Profile Loading -13:41:11.1588|taskFLOW|DEBUG >> MoveNext -> User clicked normal row. -13:41:11.1588|taskFLOW|DEBUG >> MoveNext -> Clicked ProfileId: [44], Started From: [CMROW] -13:41:11.1588|taskFLOW|DEBUG >> MoveNext -> Item_Scope: InDataRow -13:41:11.1588|taskFLOW|DEBUG >> MoveNext -> Item_Scope: GRID_LOAD_TYPE = OVERVIEW -13:41:11.1588|taskFLOW|DEBUG >> MoveNext -> Item_Scope: OVERVIEWgroupRowText GROUP_TEXT: SWE - ER 1.0 - Zuweisung und Vorprüfung durch die FiBu -13:41:11.1588|taskFLOW|DEBUG >> MoveNext -> Item_Scope: Valid PROFIL_ID -13:41:11.1588|taskFLOW|DEBUG >> MoveNext -> Item_Scope: hitInfo.InDataRow... -13:41:11.1588|taskFLOW|DEBUG >> MoveNext -> Item_Scope: GotDocID 9210117 and DocGUID 321319 -13:41:11.1588|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:11.1588|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:11.1588|MSSQLServer|DEBUG >> GetScalarValueWithConnectionObject(MSSQLServer.vb:562) -> GetScalarValueWithConnectionObject: Running Query [SELECT [dbo].[FNPM_CHECK_DocGUID_Valid] (321319)] with Parameters [] -13:41:11.1848|frmValidator|DEBUG >> .ctor -> Initialize Components... -13:41:13.6530|frmValidator|DEBUG >> .ctor -> Initialize _frmValidatorSearch... -13:41:13.8090|frmValidator|DEBUG >> frmValidation_Load -> ###frmValidation_Load### -13:41:13.8090|frmValidator|DEBUG >> frmValidation_Load -> Current User Language: [de-DE] -13:41:13.8090|Cache|DEBUG >> .ctor(Cache.vb:34) -> Initializing DocumentResultCache with capacity of [104900000] bytes. -13:41:13.9410|FilesystemEx|DEBUG >> CreateDirectory(FilesystemEx.vb:332) -> Directory C:\Users\svc.digitaldata\AppData\Roaming\Digital Data\taskFLOW\1.0.0.0\DocumentViewer already exists. Skipping. -13:41:13.9410|FilesystemEx|DEBUG >> CreateDirectory(FilesystemEx.vb:352) -> Using path C:\Users\svc.digitaldata\AppData\Roaming\Digital Data\taskFLOW\1.0.0.0\DocumentViewer -13:41:13.9410|ConfigManager`1|DEBUG >> LoadAppConfig(ConfigManager.vb:247) -> ApplicationConfig does not exist. -13:41:13.9410|ConfigManager`1|DEBUG >> LoadComputerConfig(ConfigManager.vb:269) -> Computer config does not exist. -13:41:13.9410|ConfigManager`1|DEBUG >> ReadFromFile(ConfigManager.vb:367) -> Loading config from: C:\Users\svc.digitaldata\AppData\Roaming\Digital Data\taskFLOW\1.0.0.0\DocumentViewer\UserConfig.xml -13:41:13.9410|ConfigManager`1|DEBUG >> LoadUserConfig(ConfigManager.vb:280) -> UserConfig exists and will be used. [C:\Users\svc.digitaldata\AppData\Roaming\Digital Data\taskFLOW\1.0.0.0\DocumentViewer\UserConfig.xml] -13:41:13.9410|frmValidator|DEBUG >> frmValidation_Load -> Profile Data loaded -13:41:13.9410|frmValidator|DEBUG >> frmValidation_Load -> frmValidation_Load finished till Step 3! -13:41:13.9410|frmValidator|DEBUG >> frmValidation_Load -> Step 4 -13:41:13.9410|frmValidator|DEBUG >> frmValidation_Load -> Step 5 -13:41:13.9410|frmValidator|DEBUG >> frmValidation_Load -> Step 6 -13:41:13.9410|frmValidator|DEBUG >> frmValidation_Load -> Buttontext validation loaded -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> oProfileRejectionText: -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> oProfile_REJECT_SQL_REASONS: -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> oProfileNotResponsibleText: -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> oProfile_NOT_RESP_SQL: -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> !Keine Ablehnung und Nicht zuständig Funktion konfiguriert! -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> >> profiledata saved: -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> >> finalProfile: False -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> >> Move2Folder: -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> >> Right_Delete: True -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> PROFIL_sortbynewest: True -13:41:13.9480|frmValidator|DEBUG >> frmValidation_Load -> Right_Delete: True -13:41:13.9480|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:13.9480|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:13.9480|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:13.9480|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:13.9640|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT IIF(LANG.CAPTION IS NULL,T.SPALTEN_HEADER,LANG.CAPTION) SPALTEN_HEADER_LANG, T.* from TBPM_CONTROL_TABLE T INNER JOIN TBPM_PROFILE_CONTROLS T1 ON T.CONTROL_ID = T1.GUID - LEFT JOIN (SELECT * FROM TBPM_CONTOL_TABLE_LANG WHERE LANG_CODE = 'de-DE') LANG ON T.GUID = LANG.COL_ID WHERE T1.CONTROL_ACTIVE = 1 AND T.CONTROL_ID = T1.GUID AND T1.PROFIL_ID = 44 ORDER BY T.SEQUENCE] and Parameters [] -13:41:14.0030|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:14.0030|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:14.0030|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:14.0030|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:14.0030|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT T1.GUID As CONTROL_ID, T1.PROFIL_ID, T.CONNECTION_ID, T.SQL_COMMAND, T.SPALTENNAME,T.FORMATTYPE,T.FORMATSTRING, T.ADVANCED_LOOKUP from TBPM_CONTROL_TABLE T, TBPM_PROFILE_CONTROLS T1 WHERE T1.CONTROL_ACTIVE = 1 AND T.CONTROL_ID = T1.GUID AND T1.PROFIL_ID = 44 AND LEN(T.SQL_COMMAND) > 0 ORDER BY T.SEQUENCE] and Parameters [] -13:41:14.0280|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:14.0280|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:14.0280|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:14.0280|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:14.0280|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT - T1.GUID As CONTROL_ID, - T1.PROFIL_ID, - T.CONNECTION_ID, - T.SQL_COMMAND, - T.SPALTENNAME, - T.FORMATTYPE, - T.FORMATSTRING, - T.ADVANCED_LOOKUP - FROM - TBPM_CONTROL_TABLE T, - TBPM_PROFILE_CONTROLS T1 - WHERE - T1.CONTROL_ACTIVE = 1 AND - T.CONTROL_ID = T1.GUID AND - T1.PROFIL_ID = 44 AND - LEN(T.SQL_COMMAND) > 0 AND - T.SQL_COMMAND LIKE '%{#CTRL%' - ORDER BY T.SEQUENCE] and Parameters [] -13:41:14.0560|frmValidator|DEBUG >> Create_Controls -> [CMB#CtrlID: 158 - CtrlName: CMB_DOKUMENTTYP - CtrlIndex: Dokumententyp] - CMB Try to create control... -13:41:14.0620|frmValidator|DEBUG >> Create_Controls -> In add_ComboBox - GUID: 158 -13:41:14.0620|frmValidator|DEBUG >> Create_Controls -> ConID <> String.Empty -13:41:14.0620|frmValidator|DEBUG >> Create_Controls -> ConID > 0 And commandsql <> String.Empty -13:41:14.0620|frmValidator|DEBUG >> Create_Controls -> SQL HasOnlySimplePatterns! -13:41:14.0620|taskFLOW|DEBUG >> ReplaceControlValues -> Control cache initialized with 0 controls -13:41:14.0620|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:14.0620|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:14.0620|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:14.0620|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:14.0620|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:14.0620|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:14.0620|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:14.1310|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:14.1310|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:14.1310|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT 'Rechnung' as 'Dokumenttyp' -UNION -SELECT 'Gutschrift'] and Parameters [] -13:41:14.1430|frmValidator|DEBUG >> Create_Controls -> [CMB#CtrlID: 158 - CtrlName: CMB_DOKUMENTTYP - CtrlIndex: Dokumententyp] - CMB CONTROL created -13:41:14.1430|frmValidator|DEBUG >> Create_Controls -> [CMB#CtrlID: 158 - CtrlName: CMB_DOKUMENTTYP - CtrlIndex: Dokumententyp]: End of Select... -13:41:14.1610|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 113 - CtrlName: LBL_DMS erstellt - CtrlIndex: ]: End of Select... -13:41:14.1750|frmValidator|DEBUG >> Create_Controls -> [DTP#CtrlID: 114 - CtrlName: DTP_DMS erstellt - CtrlIndex: DMS erstellt]: End of Select... -13:41:14.1750|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 115 - CtrlName: LBL_Belegdatum - CtrlIndex: ]: End of Select... -13:41:14.1750|frmValidator|DEBUG >> Create_Controls -> [DTP#CtrlID: 116 - CtrlName: DTP_Belegdatum - CtrlIndex: Belegdatum]: End of Select... -13:41:14.1750|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 159 - CtrlName: LBL_S/H-Kennzeichen - CtrlIndex: ]: End of Select... -13:41:14.1750|frmValidator|DEBUG >> Create_Controls -> [CMB#CtrlID: 160 - CtrlName: CMB_S/H-Kennzeichen - CtrlIndex: Vektor String 101] - CMB Try to create control... -13:41:14.1750|frmValidator|DEBUG >> Create_Controls -> In add_ComboBox - GUID: 160 -13:41:14.1750|frmValidator|DEBUG >> Create_Controls -> ConID <> String.Empty -13:41:14.1750|frmValidator|DEBUG >> Create_Controls -> ConID > 0 And commandsql <> String.Empty -13:41:14.1750|frmValidator|DEBUG >> Create_Controls -> SQL HasOnlySimplePatterns! -13:41:14.1750|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:14.1820|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:14.1820|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:14.1820|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:14.1820|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:14.1820|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:14.1820|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:14.1820|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:14.1820|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:14.1820|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT 'H' as 'S/H-Kennzeichen' -UNION -SELECT 'S'] and Parameters [] -13:41:14.2030|frmValidator|DEBUG >> Create_Controls -> [CMB#CtrlID: 160 - CtrlName: CMB_S/H-Kennzeichen - CtrlIndex: Vektor String 101] - CMB CONTROL created -13:41:14.2030|frmValidator|DEBUG >> Create_Controls -> [CMB#CtrlID: 160 - CtrlName: CMB_S/H-Kennzeichen - CtrlIndex: Vektor String 101]: End of Select... -13:41:14.2170|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 117 - CtrlName: LBL_Valutadatum - CtrlIndex: ]: End of Select... -13:41:14.2170|frmValidator|DEBUG >> Create_Controls -> [DTP#CtrlID: 118 - CtrlName: DTP_Valutadatum - CtrlIndex: Date 05]: End of Select... -13:41:14.2170|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 122 - CtrlName: LBL_Fälligkeitsdatum - CtrlIndex: ]: End of Select... -13:41:14.2170|frmValidator|DEBUG >> Create_Controls -> [DTP#CtrlID: 123 - CtrlName: DTP_Fälligkeitsdatum - CtrlIndex: Date 06]: End of Select... -13:41:14.2170|frmValidator|DEBUG >> Create_Controls -> [CtrlID: 128 - CtrlName: LINE_OBEN - CtrlIndex: ]: End of Select... -13:41:14.2170|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 121 - CtrlName: LBL_LieferantenNummer - CtrlIndex: ]: End of Select... -13:41:14.2610|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:14.2610|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:14.2610|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:14.2610|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:14.2610|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:14.2610|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:14.2610|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:14.2610|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:14.2610|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:14.2760|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK // 11.03.2025 - -SELECT [LieferantenNr] - ,[Name] - ,[IBAN] - ,[Name 2] - FROM [VWCUST_MS-DYN365BC_VENDOR_LIST] - WHERE [Mandant] = 'SWE' -] and Parameters [] -13:41:15.0599|frmValidator|DEBUG >> Create_Controls -> createControlsLU - Found 1 Controls which are depending on LU_LieferantenNummer -13:41:15.0599|frmValidator|DEBUG >> Create_Controls -> createControlsLU - Found 1 Controls which' enable state is depending on LU_LieferantenNummer -13:41:15.0599|frmValidator|DEBUG >> Create_Controls -> [LOOKUP#CtrlID: 197 - CtrlName: LU_LieferantenNummer - CtrlIndex: Personennummer]: End of Select... -13:41:15.0599|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 163 - CtrlName: LBL_KreditorName - CtrlIndex: ]: End of Select... -13:41:15.0599|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 161 - CtrlName: TXT_LieferantenName - CtrlIndex: Name] - TXT Try to create control... -13:41:15.0599|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 161 - CtrlName: TXT_LieferantenName - CtrlIndex: Name] - TXT Created!! -13:41:15.0599|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 161 - CtrlName: TXT_LieferantenName - CtrlIndex: Name]: End of Select... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 164 - CtrlName: LBL_KundenNr-Lieferant - CtrlIndex: ]: End of Select... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 162 - CtrlName: TXT_KundenNr-Lieferant - CtrlIndex: Kundennummer] - TXT Try to create control... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 162 - CtrlName: TXT_KundenNr-Lieferant - CtrlIndex: Kundennummer] - TXT Created!! -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 162 - CtrlName: TXT_KundenNr-Lieferant - CtrlIndex: Kundennummer]: End of Select... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 119 - CtrlName: LBL_BestellNr - CtrlIndex: ]: End of Select... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [LOOKUP#CtrlID: 702 - CtrlName: LU_BestellNr - CtrlIndex: Nr.Intern]: End of Select... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 124 - CtrlName: LBL_Fremdreferenz_1 - CtrlIndex: ]: End of Select... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 125 - CtrlName: TXT_Fremdreferenz_1 - CtrlIndex: Nr.Extern] - TXT Try to create control... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 125 - CtrlName: TXT_Fremdreferenz_1 - CtrlIndex: Nr.Extern] - TXT Created!! -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 125 - CtrlName: TXT_Fremdreferenz_1 - CtrlIndex: Nr.Extern]: End of Select... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 148 - CtrlName: LBL_Bestell-Summe-Netto - CtrlIndex: ]: End of Select... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 149 - CtrlName: TXT_Bestell-Summe-Netto - CtrlIndex: Float 14] - TXT Try to create control... -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 149 - CtrlName: TXT_Bestell-Summe-Netto - CtrlIndex: Float 14] - TXT Created!! -13:41:15.0759|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 149 - CtrlName: TXT_Bestell-Summe-Netto - CtrlIndex: Float 14]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 135 - CtrlName: LBL_Skontierbarer-Betrag - CtrlIndex: ]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 136 - CtrlName: TXT_Skontierbarer-Betrag - CtrlIndex: Float 08] - TXT Try to create control... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 136 - CtrlName: TXT_Skontierbarer-Betrag - CtrlIndex: Float 08] - TXT Created!! -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 136 - CtrlName: TXT_Skontierbarer-Betrag - CtrlIndex: Float 08]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 152 - CtrlName: LBL_Rechnungs-Summe-Brutto - CtrlIndex: ]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 153 - CtrlName: TXT_Rechnungs-Summe-Brutto - CtrlIndex: Float 13] - TXT Try to create control... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 153 - CtrlName: TXT_Rechnungs-Summe-Brutto - CtrlIndex: Float 13] - TXT Created!! -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 153 - CtrlName: TXT_Rechnungs-Summe-Brutto - CtrlIndex: Float 13]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 133 - CtrlName: LBL_Rechnungs-Summe-Brutto-abzgl.-Skonto - CtrlIndex: ]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 137 - CtrlName: LBL_Bestell-Summe-Brutto - CtrlIndex: ]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 712 - CtrlName: TXT_Bestell-Summe-Brutto - CtrlIndex: Float 11] - TXT Try to create control... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 712 - CtrlName: TXT_Bestell-Summe-Brutto - CtrlIndex: Float 11] - TXT Created!! -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 712 - CtrlName: TXT_Bestell-Summe-Brutto - CtrlIndex: Float 11]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 139 - CtrlName: LBL_Skonto-Daten - CtrlIndex: ]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 138 - CtrlName: TXT_Skonto-Prozent - CtrlIndex: Float 09] - TXT Try to create control... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 138 - CtrlName: TXT_Skonto-Prozent - CtrlIndex: Float 09] - TXT Created!! -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 138 - CtrlName: TXT_Skonto-Prozent - CtrlIndex: Float 09]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 140 - CtrlName: TXT_Skonto-Tage - CtrlIndex: Integer 23] - TXT Try to create control... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 140 - CtrlName: TXT_Skonto-Tage - CtrlIndex: Integer 23] - TXT Created!! -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 140 - CtrlName: TXT_Skonto-Tage - CtrlIndex: Integer 23]: End of Select... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 134 - CtrlName: TXT_Rechnungs-Summe-Brutto-abzgl.-Skonto - CtrlIndex: Float 12] - TXT Try to create control... -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 134 - CtrlName: TXT_Rechnungs-Summe-Brutto-abzgl.-Skonto - CtrlIndex: Float 12] - TXT Created!! -13:41:15.0889|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 134 - CtrlName: TXT_Rechnungs-Summe-Brutto-abzgl.-Skonto - CtrlIndex: Float 12]: End of Select... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 713 - CtrlName: LBL_abzgl.-Skonto - CtrlIndex: ]: End of Select... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 714 - CtrlName: LBL_Zahlbed.-Bestellung - CtrlIndex: ]: End of Select... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 715 - CtrlName: TXT_Zahlbed.-Bestellung - CtrlIndex: Vektor String 240] - TXT Try to create control... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 715 - CtrlName: TXT_Zahlbed.-Bestellung - CtrlIndex: Vektor String 240] - TXT Created!! -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 715 - CtrlName: TXT_Zahlbed.-Bestellung - CtrlIndex: Vektor String 240]: End of Select... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 716 - CtrlName: LBL_Zahlbed.-Rechnung - CtrlIndex: ]: End of Select... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 717 - CtrlName: TXT_Zahlbed.-Rechnung - CtrlIndex: Vektor String 241] - TXT Try to create control... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 717 - CtrlName: TXT_Zahlbed.-Rechnung - CtrlIndex: Vektor String 241] - TXT Created!! -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 717 - CtrlName: TXT_Zahlbed.-Rechnung - CtrlIndex: Vektor String 241]: End of Select... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [CtrlID: 157 - CtrlName: LINE_MITTE - CtrlIndex: ]: End of Select... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 126 - CtrlName: TXT_Beschreibung - CtrlIndex: Beschreibung] - TXT Try to create control... -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 126 - CtrlName: TXT_Beschreibung - CtrlIndex: Beschreibung] - TXT Created!! -13:41:15.1039|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 126 - CtrlName: TXT_Beschreibung - CtrlIndex: Beschreibung]: End of Select... -13:41:15.1229|frmValidator|DEBUG >> Create_Controls -> We got a DTGRID_COLUMNS definition for [TABLE#CtrlID: 144 - CtrlName: TB_Rechnungsaufteilung - CtrlIndex: Vektor String 421] -13:41:15.1459|GridControl|DEBUG >> FillGridTables -> Working on SQL for Column[INVOICE_POS_MATCH_WORK_ORDER_NR]... -13:41:15.1459|GridControl|DEBUG >> FillGridTables -> ...has complex patterns!! -13:41:15.1459|GridControl|DEBUG >> FillGridTables -> Working on SQL for Column[INVOICE_POS_TAX_RATE]... -13:41:15.1459|GridControl|DEBUG >> FillGridTables -> ...has complex patterns!! -13:41:15.1459|GridControl|DEBUG >> FillGridTables -> Working on SQL for Column[INVOICE_POSITION_ARTICLE]... -13:41:15.1459|GridControl|DEBUG >> FillGridTables -> ...has complex patterns!! -13:41:15.1549|GridControl|DEBUG >> ConfigureViewColumns -> CURRENCY column [INVOICE_POS_SUM_NETTO]: DisplayFormat wird von ConfigureViewColumnsCurrency gesetzt -13:41:15.1549|GridControl|DEBUG >> ConfigureViewColumns -> Applying currency summary format for column [INVOICE_POS_SUM_NETTO] -13:41:15.1549|GridControl|DEBUG >> ApplyCurrencySummaryFormat -> Applying currency summary format for column [INVOICE_POS_SUM_NETTO] with symbol [EUR] -13:41:15.1549|GridControl|DEBUG >> ConfigureViewColumns -> CURRENCY column [INVOICE_POS_SUM_BRUTTO]: DisplayFormat wird von ConfigureViewColumnsCurrency gesetzt -13:41:15.1549|GridControl|DEBUG >> ConfigureViewColumns -> Applying currency summary format for column [INVOICE_POS_SUM_BRUTTO] -13:41:15.1549|GridControl|DEBUG >> ApplyCurrencySummaryFormat -> Applying currency summary format for column [INVOICE_POS_SUM_BRUTTO] with symbol [EUR] -13:41:15.1549|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] riTextEdit erstellt: DisplayFormat=[#,##0.00 EUR], HashCode=[2035480] -13:41:15.1549|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] pGrid.RepositoryItems.Count VOR Schleife=[0] -13:41:15.1549|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] [INVOICE_POS_SUM_NETTO] VOR ColumnEdit: RepositoryItems.Count=[0] -13:41:15.1549|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] [INVOICE_POS_SUM_NETTO] NACH ColumnEdit: RepositoryItems.Count=[0] -13:41:15.1549|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] [INVOICE_POS_SUM_NETTO]: IsSameObject=[True], ColumnEdit.DisplayFormat=[#,##0.00 EUR], ColumnEdit.HashCode=[2035480] -13:41:15.1549|frmValidator|DEBUG >> Create_Controls -> [TABLE#CtrlID: 144 - CtrlName: TB_Rechnungsaufteilung - CtrlIndex: Vektor String 421]: End of Select... -13:41:15.1989|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:15.1989|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:15.1989|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:15.1989|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:15.1989|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:15.1989|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:15.1989|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:15.1989|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:15.1989|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:15.2259|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 130 - CtrlName: LBL_FOLGESCHRITTE - CtrlIndex: ]: End of Select... -13:41:15.2289|frmValidator|DEBUG >> Create_Controls -> [CtrlID: 129 - CtrlName: LINE_UNTEN_LINKS - CtrlIndex: ]: End of Select... -13:41:15.2289|frmValidator|DEBUG >> Create_Controls -> [CtrlID: 150 - CtrlName: LINE_UNTEN_RECHTS - CtrlIndex: ]: End of Select... -13:41:15.2289|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 582 - CtrlName: LBL_ER1.0-Status-Detail - CtrlIndex: ]: End of Select... -13:41:15.2289|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:15.2289|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:15.2289|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:15.2289|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:15.2289|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:15.2289|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:15.2289|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:15.2550|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:15.2550|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:15.2630|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 06.03.2025 - -SELECT * FROM [FNCUST_SET_TF_DECISION_LIST_PROFILEID_44]() -ORDER BY 'Entscheidung' desc -] and Parameters [] -13:41:15.2810|frmValidator|DEBUG >> Create_Controls -> createControlsLU - Found 1 Controls which' enable state is depending on LU_Status-Detail -13:41:15.2810|frmValidator|DEBUG >> Create_Controls -> [LOOKUP#CtrlID: 132 - CtrlName: LU_Status-Detail - CtrlIndex: String 03]: End of Select... -13:41:15.2810|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 166 - CtrlName: LBL_Prüfer_Person - CtrlIndex: ]: End of Select... -13:41:15.2810|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:15.2810|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:15.2810|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:15.2810|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:15.2810|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:15.2810|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:15.2960|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:15.3150|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:15.3150|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:15.3150|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 09.03.2026 - -SELECT * FROM [FNCUST_GET_USER_USERNAME_LIST_INCL_DUMMY_USER]('SWE') -] and Parameters [] -13:41:15.3380|frmValidator|DEBUG >> Create_Controls -> createControlsLU - Found 1 Controls which' enable state is depending on LU_Person -13:41:15.3380|frmValidator|DEBUG >> Create_Controls -> [LOOKUP#CtrlID: 196 - CtrlName: LU_Person - CtrlIndex: Person]: End of Select... -13:41:15.3380|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 131 - CtrlName: LBL_Status-Detail - CtrlIndex: ]: End of Select... -13:41:15.3380|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 141 - CtrlName: LBL_Begründung - CtrlIndex: ]: End of Select... -13:41:15.3380|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 145 - CtrlName: TXT_Entscheidungs-Beschreibung - CtrlIndex: Fehlerbeschreibung] - TXT Try to create control... -13:41:15.3380|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 145 - CtrlName: TXT_Entscheidungs-Beschreibung - CtrlIndex: Fehlerbeschreibung] - TXT Created!! -13:41:15.3380|frmValidator|DEBUG >> Create_Controls -> [TXT#CtrlID: 145 - CtrlName: TXT_Entscheidungs-Beschreibung - CtrlIndex: Fehlerbeschreibung]: End of Select... -13:41:15.3380|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 142 - CtrlName: LBL_InfoMail - CtrlIndex: ]: End of Select... -13:41:15.3380|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:15.3380|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:15.3380|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:15.3380|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:15.3380|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:15.3380|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:15.3380|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:15.3700|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:15.3700|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:15.3700|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 05.03.2025 - -SELECT * FROM [FNCUST_GET_USER_MAILADRESS_LIST] ('SWE') -] and Parameters [] -13:41:15.3950|frmValidator|DEBUG >> Create_Controls -> [LOOKUP#CtrlID: 143 - CtrlName: LU_InfoMail - CtrlIndex: Vektor String 031]: End of Select... -13:41:15.3950|frmValidator|DEBUG >> Create_Controls -> [CHK#CtrlID: 573 - CtrlName: CHK_Prüfer-Begründung - CtrlIndex: Vektor Boolean 020]: End of Select... -13:41:15.3950|frmValidator|DEBUG >> Create_Controls -> [LBL#CtrlID: 156 - CtrlName: LBL_HISTORIE - CtrlIndex: ]: End of Select... -13:41:15.3950|frmValidator|DEBUG >> Create_Controls -> [CtrlID: 154 - CtrlName: LINE_UNTEN_LINKS2 - CtrlIndex: ]: End of Select... -13:41:15.4010|frmValidator|DEBUG >> Create_Controls -> [CtrlID: 155 - CtrlName: LINE_UNTEN_RECHTS2 - CtrlIndex: ]: End of Select... -13:41:15.4010|frmValidator|DEBUG >> Create_Controls -> We got a DTGRID_COLUMNS definition for [TABLE#CtrlID: 146 - CtrlName: TB_Workflow-Historie - CtrlIndex: Vektor String 076] -13:41:15.4010|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] riTextEdit erstellt: DisplayFormat=[#,##0.00 EUR], HashCode=[29992219] -13:41:15.4010|GridControl|DEBUG >> ConfigureViewColumnsCurrency -> [ConfigureViewColumnsCurrency] pGrid.RepositoryItems.Count VOR Schleife=[0] -13:41:15.4010|frmValidator|DEBUG >> Create_Controls -> [TABLE#CtrlID: 146 - CtrlName: TB_Workflow-Historie - CtrlIndex: Vektor String 076]: End of Select... -13:41:15.4010|frmValidator|DEBUG >> Create_Controls -> Create_Controls finished! -13:41:15.4010|frmValidator|DEBUG >> frmValidation_Load -> frmValidation_Load finished! -13:41:15.4650|taskFLOW|DEBUG >> Load_Profil_from_Grid -> Overlay closed in Load_Profil_from_Grid -13:41:15.5030|frmValidator|DEBUG >> ShowOverlaySafe -> [Overlay] Geöffnet (RefCount: 0 → 1) -13:41:15.5030|taskFLOW|DEBUG >> ClearControlCache -> Control cache cleared -13:41:15.5030|frmValidator|DEBUG >> activate_controls -> Sub activate_controls - status = False -13:41:15.6020|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:15.6060|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:15.6060|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:15.6060|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:15.6060|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:15.6060|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:15.6060|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:15.6060|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:15.6060|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:15.6940|frmValidator|DEBUG >> Load_Next_Document -> In Load_Next_Document -13:41:15.6940|frmValidator|DEBUG >> Load_Next_Document -> First Document -13:41:15.6940|frmValidator|DEBUG >> Load_Next_Document -> CURRENT_JUMP_DOC_GUID: 321319' -13:41:15.6940|frmValidator|INFO >> Load_Next_Document -> LoadNextDocument - Dokument-GUID: '321319' -13:41:15.6940|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:15.6940|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:15.6940|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:15.6940|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:15.7030|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT dbo.FNPM_GET_FILEPATH(321319,0) AS PATH0, dbo.FNPM_GET_FILEPATH(321319,1) AS PATH1] and Parameters [] -13:41:15.7350|frmValidator|DEBUG >> GetDocPathWindows -> First Checking file [\\windream\objects\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf] exists?... -13:41:15.7350|frmValidator|INFO >> GetDocPathWindows -> GetWMDocPathWindows CURRENT_DOC_PATH: \\windream\objects\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf -13:41:15.7350|frmValidator|DEBUG >> CreateWMObject -> in GetWMDocFileString...' -13:41:15.7350|Windream|DEBUG >> GetNormalizedPath(Windream.vb:818) -> Normalizing Path: [\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf] -13:41:15.7350|Windream|DEBUG >> GetNormalizedPath(Windream.vb:823) -> Path after RemoveInvalidCharacters: [\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf] -13:41:15.7350|Windream|DEBUG >> GetNormalizedPath(Windream.vb:863) -> Path after converting slashes: [\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf] -13:41:15.7350|Windream|DEBUG >> GetNormalizedPath(Windream.vb:870) -> NormalizedPath: [\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf] -13:41:15.7550|frmValidator|DEBUG >> CreateWMObject -> CURRENT_WMFILE: [WINDREAMLib.WMObjectClass] -13:41:15.7550|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:15.7550|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:15.7660|MSSQLServer|DEBUG >> ExecuteNonQueryWithConnectionObject(MSSQLServer.vb:473) -> ExecuteNonQueryWithConnectionObject: Running Command [EXEC PRTF_PROFILE_FILES_WORK 9210117,44,2,'InWork'] and Parameters [] -13:41:15.7930|frmValidator|DEBUG >> Load_Next_Document -> AllDocInfo created... -13:41:15.7930|frmValidator|DEBUG >> Windream_get_Doc_info -> GetVariableValue [DMS erstellt]... -13:41:15.7930|frmValidator|DEBUG >> Windream_get_Doc_info -> DMS-Erstellt aus WD: 12.03.2026 -13:41:15.7930|frmValidator|DEBUG >> Windream_get_Doc_info -> GetVariableValue [DMS erstellt (Zeit)]... -13:41:15.7930|frmValidator|DEBUG >> Windream_get_Doc_info -> DMSErstelltZeit aus WD: 30.11.1999 11:58:24 -13:41:15.7930|Loader|DEBUG >> Load(Loader.vb:55) -> DRL Loader - Loading Document Load_FromWindream -13:41:15.7930|Loader|DEBUG >> Load_FromDisk(Loader.vb:140) -> Loading file [\\windream\objects\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf] -13:41:15.8370|Loader|DEBUG >> Load_FromDisk(Loader.vb:144) -> Loaded file [\\windream\objects\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf] successfully. -13:41:15.8390|Cache|DEBUG >> Add(Cache.vb:50) -> Adding document [9210117]. -13:41:15.8390|frmValidator|INFO >> LoadDocument_DDViewer -> LoadDocument_DDViewer - Current_Document.FullPath: \\windream\objects\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf -13:41:15.8390|DocumentViewer|INFO >> LoadFile_FromPath(DocumentViewer.vb:158) -> Loading file [\\windream\objects\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf] from Filesystem -13:41:15.8390|DocumentViewer|DEBUG >> LoadGdPictureFile(DocumentViewer.vb:675) -> Loading GdPicture: \\windream\objects\Test\Eingangsrechnungsworkflow\E-Rechnung\ERw202603031420066299148lfelsburg~Attm0.pdf -13:41:16.1300|frmValidator|DEBUG >> Load_Next_Document -> Kein PROFIL_CURRENCY_ATTRIBUTE konfiguriert → EUR -13:41:16.1300|frmValidator|INFO >> Load_Next_Document -> [FINAL] DocCurrency = [EUR] -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> INDEX: Dokumententyp - CONTROLNAME: CMB_DOKUMENTTYP - LOAD IDXVALUES: True -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> Indexwert from Index Dokumententyp: Rechnung -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> Items in Combobox: 2 -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> Index Wert [Rechnung] wurde ausgewählt -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> oMyComboBox CMB_DOKUMENTTYP .SelectedIndex: 0 -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_DMS erstellt - LOAD IDXVALUES: True -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> INDEX: DMS erstellt - CONTROLNAME: DTP_DMS erstellt - LOAD IDXVALUES: True -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> DATE konnte umgewandelt werden -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Belegdatum - LOAD IDXVALUES: True -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> INDEX: Belegdatum - CONTROLNAME: DTP_Belegdatum - LOAD IDXVALUES: True -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> DATE konnte umgewandelt werden -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_S/H-Kennzeichen - LOAD IDXVALUES: True -13:41:16.1430|frmValidator|DEBUG >> FillIndexValues -> INDEX: Vektor String 101 - CONTROLNAME: CMB_S/H-Kennzeichen - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> Indexwert from Index Vektor String 101: H -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> Items in Combobox: 2 -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> Index Wert [H] wurde ausgewählt -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> oMyComboBox CMB_S/H-Kennzeichen .SelectedIndex: 0 -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Valutadatum - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: Date 05 - CONTROLNAME: DTP_Valutadatum - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> DATE ist leer -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Fälligkeitsdatum - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: Date 06 - CONTROLNAME: DTP_Fälligkeitsdatum - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> DATE konnte umgewandelt werden -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LINE_OBEN - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_LieferantenNummer - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: Personennummer - CONTROLNAME: LU_LieferantenNummer - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_LieferantenNummer]: DataSource-Backup erstellt -13:41:16.1530|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:16.1530|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:16.1530|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:16.1530|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_LieferantenNummer]: SelectedValues auf leere Liste zurückgesetzt -13:41:16.1530|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:16.1530|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:16.1530|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:16.1530|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_LieferantenNummer]: SelectedValues FINAL gesetzt = [120904] -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_KreditorName - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: Name - CONTROLNAME: TXT_LieferantenName - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [BIM Textil Mietservice] -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_KundenNr-Lieferant - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: Kundennummer - CONTROLNAME: TXT_KundenNr-Lieferant - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [D26068] -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_BestellNr - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: Nr.Intern - CONTROLNAME: LU_BestellNr - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_BestellNr]: DataSource-Backup erstellt -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_BestellNr]: SelectedValues auf leere Liste zurückgesetzt -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_BestellNr]: SelectedValues FINAL gesetzt = [EB9999999] -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Fremdreferenz_1 - LOAD IDXVALUES: True -13:41:16.1530|frmValidator|DEBUG >> FillIndexValues -> INDEX: Nr.Extern - CONTROLNAME: TXT_Fremdreferenz_1 - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [252579] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Bestell-Summe-Netto - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Float 14 - CONTROLNAME: TXT_Bestell-Summe-Netto - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Skontierbarer-Betrag - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Float 08 - CONTROLNAME: TXT_Skontierbarer-Betrag - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [178,06] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Rechnungs-Summe-Brutto - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Float 13 - CONTROLNAME: TXT_Rechnungs-Summe-Brutto - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [178,06] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Rechnungs-Summe-Brutto-abzgl.-Skonto - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Bestell-Summe-Brutto - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Float 11 - CONTROLNAME: TXT_Bestell-Summe-Brutto - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Skonto-Daten - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Float 09 - CONTROLNAME: TXT_Skonto-Prozent - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [0] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Integer 23 - CONTROLNAME: TXT_Skonto-Tage - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [8] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Float 12 - CONTROLNAME: TXT_Rechnungs-Summe-Brutto-abzgl.-Skonto - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [178,06] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_abzgl.-Skonto - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Zahlbed.-Bestellung - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Vektor String 240 - CONTROLNAME: TXT_Zahlbed.-Bestellung - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [8 Tage netto] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Zahlbed.-Rechnung - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Vektor String 241 - CONTROLNAME: TXT_Zahlbed.-Rechnung - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LINE_MITTE - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> INDEX: Beschreibung - CONTROLNAME: TXT_Beschreibung - LOAD IDXVALUES: True -13:41:16.1660|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -13:41:16.1820|frmValidator|DEBUG >> FillIndexValues -> INDEX: Vektor String 421 - CONTROLNAME: TB_Rechnungsaufteilung - LOAD IDXVALUES: True -13:41:16.1820|frmValidator|DEBUG >> FillIndexValues -> Grid [TB_Rechnungsaufteilung]: 9 Spalten aus Cache geladen -13:41:16.1820|frmValidator|DEBUG >> FillIndexValues -> getting Value for Attribute [Vektor String 421] - oIDBTyp [] - oIDBOverride [False]... -13:41:16.1820|frmValidator|DEBUG >> FillIndexValues -> oValueType is [System.Object[]]! -13:41:16.1820|frmValidator|DEBUG >> FillIndexValues -> DevExpressGrid: 9 Columns configured for control 144. -13:41:16.1820|frmValidator|DEBUG >> FillIndexValues -> ValueFromSource contains System.Object[] items -13:41:16.1820|frmValidator|DEBUG >> FillIndexValues -> vektorrow Value 1~~~4.00~17.16~19.00~20.42~false~... -13:41:16.1820|frmValidator|DEBUG >> FillIndexValues -> Creating new row.. -13:41:16.1820|frmValidator|DEBUG >> FillIndexValues -> Adding row To grid.. -13:41:16.1820|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.1820|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.1820|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.1820|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.1820|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.1820|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.1820|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.1820|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.1820|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> vektorrow Value 2~~~4.00~17.16~19.00~20.42~false~... -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Creating new row.. -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Adding row To grid.. -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> vektorrow Value 3~~~12.00~78.00~19.00~92.82~false~... -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Creating new row.. -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Adding row To grid.. -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> vektorrow Value 4~~~4.00~12.80~19.00~15.23~false~... -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Creating new row.. -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Adding row To grid.. -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> vektorrow Value 5~~~4.00~15.64~19.00~18.61~false~... -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Creating new row.. -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Adding row To grid.. -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> vektorrow Value 6~~~1.00~8.87~19.00~10.56~false~... -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Creating new row.. -13:41:16.2060|frmValidator|DEBUG >> FillIndexValues -> Adding row To grid.. -13:41:16.2060|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2060|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2060|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2060|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2060|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2060|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2210|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2310|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2440|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:16.2600|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:16.2600|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_FOLGESCHRITTE - LOAD IDXVALUES: True -13:41:16.2600|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LINE_UNTEN_LINKS - LOAD IDXVALUES: True -13:41:16.2600|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LINE_UNTEN_RECHTS - LOAD IDXVALUES: True -13:41:16.2600|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_ER1.0-Status-Detail - LOAD IDXVALUES: True -13:41:16.2600|frmValidator|DEBUG >> FillIndexValues -> INDEX: String 03 - CONTROLNAME: LU_Status-Detail - LOAD IDXVALUES: True -13:41:16.2600|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Status-Detail]: Alte SelectedValues gesichert = [Bestätigt] -13:41:16.2600|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Status-Detail]: DataSource-Backup erstellt -13:41:16.2760|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:16.2760|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Status-Detail]: SelectedValues auf leere Liste zurückgesetzt -13:41:16.2760|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:16.2760|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Status-Detail]: SelectedValues FINAL gesetzt = [Bestätigt] -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Prüfer_Person - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: Person - CONTROLNAME: LU_Person - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Person]: KEINE Werte (oValueFromSource=Nothing, oDefaultValue leer, keine vorherigen Werte) -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Person]: DataSource-Backup erstellt -13:41:16.2760|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:16.2760|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Person]: SelectedValues auf leere Liste zurückgesetzt -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_Person]: oNewValues ist Nothing, SelectedValues bleiben leer -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Status-Detail - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_Begründung - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: Fehlerbeschreibung - CONTROLNAME: TXT_Entscheidungs-Beschreibung - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> Value from Source: [] -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_InfoMail - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: Vektor String 031 - CONTROLNAME: LU_InfoMail - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_InfoMail]: KEINE Werte (oValueFromSource=Nothing, oDefaultValue leer, keine vorherigen Werte) -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_InfoMail]: DataSource-Backup erstellt -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_InfoMail]: SelectedValues auf leere Liste zurückgesetzt -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> [FillIndexValues BUGFIX] Lookup [LU_InfoMail]: oNewValues ist Nothing, SelectedValues bleiben leer -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: Vektor Boolean 020 - CONTROLNAME: CHK_Prüfer-Begründung - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> Loading checkbox... -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> Loading Bool-Value from Source... -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> ..Now GetVariableValue(Vektor Boolean 020)... -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> oValueFromSource: False -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> Value is not nothing and also not System.Object: [False] -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> >> CBool(_value) = False -13:41:16.2760|frmValidator|DEBUG >> onCheckBox_CheckedChange -> onCheckBox_CheckedChange -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LBL_HISTORIE - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LINE_UNTEN_LINKS2 - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: ' - CONTROLNAME: LINE_UNTEN_RECHTS2 - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> INDEX: Vektor String 076 - CONTROLNAME: TB_Workflow-Historie - LOAD IDXVALUES: True -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> Grid [TB_Workflow-Historie]: 5 Spalten aus Cache geladen -13:41:16.2760|frmValidator|DEBUG >> FillIndexValues -> getting Value for Attribute [Vektor String 076] - oIDBTyp [] - oIDBOverride [False]... -13:41:16.2940|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [SELECT * FROM [DD_ECM].[dbo].[FNCUST_GET_LINKED_DOC_LIST1](NULL,1,{#INT#WMDocID})] -13:41:16.2940|taskFLOW|DEBUG >> ReplaceControlValues -> Control cache initialized with 61 controls -13:41:16.2940|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [SELECT * FROM [DD_ECM].[dbo].[FNCUST_GET_LINKED_DOC_LIST1](NULL,1,9210117)] -13:41:16.2940|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:16.2940|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [None] with Connection Id [None] -13:41:16.2940|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:16.2940|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:16.2940|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:16.2940|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:16.2940|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:16.2940|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:16.2940|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:16.3080|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM [DD_ECM].[dbo].[FNCUST_GET_LINKED_DOC_LIST1](NULL,1,9210117)] and Parameters [] -13:41:16.3580|frmValidator|INFO >> Load_Additional_Searches -> There are additional searches configured, but PRELOAD is false. So they won't be load! -13:41:16.3580|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- HE, MK // 26.03.2025 - -SELECT [No_] as 'Arbeitsauftragsnummer', - [Description] as 'Beschreibung', - [Description 2] as 'Beschreibung 2', - [Description 3] as 'Beschreibung 3', - [WOStateValue] as 'Auftragsstatuswert', - [Level] as 'Level' -FROM [FNCUST_GET_MS-DYN365BC_WORK_ORDER_LIST]('SWE','{#CTRL#LU_BestellNr}') - --- Test mit EB00015129 ODER "" -] -13:41:16.3580|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_BestellNr]. -13:41:16.3580|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:16.3580|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_BestellNr] mit genau einem Value -13:41:16.3580|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:16.3580|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:16.3580|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_BestellNr], oReplaceValue Type: [String], Value: [EB9999999], IsSQL: [True] -13:41:16.3580|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [EB9999999] -13:41:16.3580|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [EB9999999] -13:41:16.3580|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- HE, MK // 26.03.2025 - -SELECT [No_] as 'Arbeitsauftragsnummer', - [Description] as 'Beschreibung', - [Description 2] as 'Beschreibung 2', - [Description 3] as 'Beschreibung 3', - [WOStateValue] as 'Auftragsstatuswert', - [Level] as 'Level' -FROM [FNCUST_GET_MS-DYN365BC_WORK_ORDER_LIST]('SWE','EB9999999') - --- Test mit EB00015129 ODER "" -] -13:41:16.3580|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:16.3580|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:16.3580|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:16.3580|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:16.3580|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:16.3580|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:16.3580|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:16.3740|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:16.3740|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:16.3740|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 26.03.2025 - -SELECT [No_] as 'Arbeitsauftragsnummer', - [Description] as 'Beschreibung', - [Description 2] as 'Beschreibung 2', - [Description 3] as 'Beschreibung 3', - [WOStateValue] as 'Auftragsstatuswert', - [Level] as 'Level' -FROM [FNCUST_GET_MS-DYN365BC_WORK_ORDER_LIST]('SWE','EB9999999') - --- Test mit EB00015129 ODER "" -] and Parameters [] -13:41:17.1500|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -13:41:17.1510|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [TB_Rechnungsaufteilung] -13:41:17.1510|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK / 18.03.2026 - -SELECT [CONTENT_CONCAT] as 'Auswahl' -FROM [FNCUST_GET_MS-DYN365BC_VAT_LIST]( -'SWE', -'{#CTRL#LU_BestellNr}', -' | ') - --- EB00021129 --- EB9999999] -13:41:17.1510|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_BestellNr]. -13:41:17.1510|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:17.1510|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_BestellNr] mit genau einem Value -13:41:17.1510|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:17.1510|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:17.1510|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_BestellNr], oReplaceValue Type: [String], Value: [EB9999999], IsSQL: [True] -13:41:17.1510|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [EB9999999] -13:41:17.1510|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [EB9999999] -13:41:17.1510|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK / 18.03.2026 - -SELECT [CONTENT_CONCAT] as 'Auswahl' -FROM [FNCUST_GET_MS-DYN365BC_VAT_LIST]( -'SWE', -'EB9999999', -' | ') - --- EB00021129 --- EB9999999] -13:41:17.1510|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:17.1510|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:17.1510|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:17.1510|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:17.1510|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:17.1510|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:17.1510|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:17.1730|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:17.1730|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:17.1730|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK / 18.03.2026 - -SELECT [CONTENT_CONCAT] as 'Auswahl' -FROM [FNCUST_GET_MS-DYN365BC_VAT_LIST]( -'SWE', -'EB9999999', -' | ') - --- EB00021129 --- EB9999999] and Parameters [] -13:41:17.4190|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -13:41:17.4190|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [TB_Rechnungsaufteilung] -13:41:17.4190|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK / 13.03.2026 - -SELECT [Artikelnummer], - [Fremd-Artikelnummer], - [Beschreibung], - [Beschreibung 2], - [Einheitscode], - [EK], - [VK] -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ITEM_LIST]('SWE','{#CTRL#LU_BestellNr}','~'); - --- Test mit: --- EB00015129 --- EB9999999 -] -13:41:17.4190|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_BestellNr]. -13:41:17.4190|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:17.4190|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_BestellNr] mit genau einem Value -13:41:17.4190|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:17.4190|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:17.4190|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_BestellNr], oReplaceValue Type: [String], Value: [EB9999999], IsSQL: [True] -13:41:17.4190|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [EB9999999] -13:41:17.4190|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [EB9999999] -13:41:17.4190|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK / 13.03.2026 - -SELECT [Artikelnummer], - [Fremd-Artikelnummer], - [Beschreibung], - [Beschreibung 2], - [Einheitscode], - [EK], - [VK] -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ITEM_LIST]('SWE','EB9999999','~'); - --- Test mit: --- EB00015129 --- EB9999999 -] -13:41:17.4190|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:17.4190|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:17.4190|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:17.4190|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:17.4190|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:17.4190|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:17.4190|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:17.4430|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:17.4430|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:17.4510|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK / 13.03.2026 - -SELECT [Artikelnummer], - [Fremd-Artikelnummer], - [Beschreibung], - [Beschreibung 2], - [Einheitscode], - [EK], - [VK] -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ITEM_LIST]('SWE','EB9999999','~'); - --- Test mit: --- EB00015129 --- EB9999999 -] and Parameters [] -13:41:18.9358|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -13:41:18.9358|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [TB_Rechnungsaufteilung] -13:41:18.9478|frmValidator|DEBUG >> UpdateGridCurrencyFormats -> [UpdateGridCurrencyFormats] DocCurrency is EUR or empty, cache updated but skipping format rebuild. -13:41:18.9478|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [158]... -13:41:18.9478|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [CMB_DOKUMENTTYP] with GUID [158] ... -13:41:18.9478|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:18.9478|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:18.9478|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:18.9478|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:18.9478|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:18.9478|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:18.9478|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:18.9769|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:18.9769|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:18.9849|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT 'Rechnung' as 'Dokumenttyp' -UNION -SELECT 'Gutschrift'] and Parameters [] -13:41:19.0009|frmValidator|DEBUG >> LoadSQLData -> oMyComboBox CMB_DOKUMENTTYP - Saving selected index 0 -13:41:19.0009|taskFLOW|DEBUG >> UpdateControlInCache -> Cache updated for control [CMB_DOKUMENTTYP] with value type [String] -13:41:19.0009|frmValidator|DEBUG >> OnCmbselectedIndex -> ComboBox [CMB_DOKUMENTTYP] marked as dirty -13:41:19.0009|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- HE, MK // 26.03.2025 - -SELECT [No_] as 'Arbeitsauftragsnummer', - [Description] as 'Beschreibung', - [Description 2] as 'Beschreibung 2', - [Description 3] as 'Beschreibung 3', - [WOStateValue] as 'Auftragsstatuswert', - [Level] as 'Level' -FROM [FNCUST_GET_MS-DYN365BC_WORK_ORDER_LIST]('SWE','{#CTRL#LU_BestellNr}') - --- Test mit EB00015129 ODER "" -] -13:41:19.0009|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_BestellNr]. -13:41:19.0009|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:19.0009|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_BestellNr] mit genau einem Value -13:41:19.0009|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:19.0009|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:19.0009|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_BestellNr], oReplaceValue Type: [String], Value: [EB9999999], IsSQL: [True] -13:41:19.0009|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [EB9999999] -13:41:19.0009|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [EB9999999] -13:41:19.0009|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- HE, MK // 26.03.2025 - -SELECT [No_] as 'Arbeitsauftragsnummer', - [Description] as 'Beschreibung', - [Description 2] as 'Beschreibung 2', - [Description 3] as 'Beschreibung 3', - [WOStateValue] as 'Auftragsstatuswert', - [Level] as 'Level' -FROM [FNCUST_GET_MS-DYN365BC_WORK_ORDER_LIST]('SWE','EB9999999') - --- Test mit EB00015129 ODER "" -] -13:41:19.0009|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:19.0009|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:19.0009|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:19.0009|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:19.0009|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:19.0009|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:19.0128|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:19.0299|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:19.0299|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:19.0299|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 26.03.2025 - -SELECT [No_] as 'Arbeitsauftragsnummer', - [Description] as 'Beschreibung', - [Description 2] as 'Beschreibung 2', - [Description 3] as 'Beschreibung 3', - [WOStateValue] as 'Auftragsstatuswert', - [Level] as 'Level' -FROM [FNCUST_GET_MS-DYN365BC_WORK_ORDER_LIST]('SWE','EB9999999') - --- Test mit EB00015129 ODER "" -] and Parameters [] -13:41:19.7019|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -13:41:19.7019|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [TB_Rechnungsaufteilung] -13:41:19.7019|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK / 18.03.2026 - -SELECT [CONTENT_CONCAT] as 'Auswahl' -FROM [FNCUST_GET_MS-DYN365BC_VAT_LIST]( -'SWE', -'{#CTRL#LU_BestellNr}', -' | ') - --- EB00021129 --- EB9999999] -13:41:19.7019|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_BestellNr]. -13:41:19.7019|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:19.7019|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_BestellNr] mit genau einem Value -13:41:19.7019|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:19.7019|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:19.7019|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_BestellNr], oReplaceValue Type: [String], Value: [EB9999999], IsSQL: [True] -13:41:19.7019|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [EB9999999] -13:41:19.7019|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [EB9999999] -13:41:19.7019|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK / 18.03.2026 - -SELECT [CONTENT_CONCAT] as 'Auswahl' -FROM [FNCUST_GET_MS-DYN365BC_VAT_LIST]( -'SWE', -'EB9999999', -' | ') - --- EB00021129 --- EB9999999] -13:41:19.7019|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:19.7019|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:19.7019|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:19.7019|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:19.7019|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:19.7019|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:19.7019|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:19.7249|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:19.7249|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:19.7329|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK / 18.03.2026 - -SELECT [CONTENT_CONCAT] as 'Auswahl' -FROM [FNCUST_GET_MS-DYN365BC_VAT_LIST]( -'SWE', -'EB9999999', -' | ') - --- EB00021129 --- EB9999999] and Parameters [] -13:41:19.9529|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -13:41:19.9529|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [TB_Rechnungsaufteilung] -13:41:19.9529|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK / 13.03.2026 - -SELECT [Artikelnummer], - [Fremd-Artikelnummer], - [Beschreibung], - [Beschreibung 2], - [Einheitscode], - [EK], - [VK] -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ITEM_LIST]('SWE','{#CTRL#LU_BestellNr}','~'); - --- Test mit: --- EB00015129 --- EB9999999 -] -13:41:19.9529|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_BestellNr]. -13:41:19.9529|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:19.9529|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_BestellNr] mit genau einem Value -13:41:19.9529|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:19.9529|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:19.9529|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_BestellNr], oReplaceValue Type: [String], Value: [EB9999999], IsSQL: [True] -13:41:19.9529|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [EB9999999] -13:41:19.9529|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [EB9999999] -13:41:19.9529|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK / 13.03.2026 - -SELECT [Artikelnummer], - [Fremd-Artikelnummer], - [Beschreibung], - [Beschreibung 2], - [Einheitscode], - [EK], - [VK] -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ITEM_LIST]('SWE','EB9999999','~'); - --- Test mit: --- EB00015129 --- EB9999999 -] -13:41:19.9529|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:19.9529|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:19.9529|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:19.9529|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:19.9529|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:19.9529|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:19.9529|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:19.9679|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:19.9679|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:19.9679|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK / 13.03.2026 - -SELECT [Artikelnummer], - [Fremd-Artikelnummer], - [Beschreibung], - [Beschreibung 2], - [Einheitscode], - [EK], - [VK] -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ITEM_LIST]('SWE','EB9999999','~'); - --- Test mit: --- EB00015129 --- EB9999999 -] and Parameters [] -13:41:20.3944|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -13:41:20.3944|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [TB_Rechnungsaufteilung] -13:41:20.3944|frmValidator|DEBUG >> Controls2beEnabled -> [EXIT 1] Controls2beEnabled: Form noch nicht geladen -13:41:20.4014|frmValidator|DEBUG >> SetControlValues_FromControl -> [SetControlValues_FromControl] START für Control: [CMB_DOKUMENTTYP], GUID: [158] -13:41:20.4014|frmValidator|DEBUG >> SetControlValues_FromControl -> [SetControlValues_FromControl] SET_CONTROL_DATA is empty for control [CMB_DOKUMENTTYP]. Exiting. -13:41:20.4014|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [160]... -13:41:20.4014|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [CMB_S/H-Kennzeichen] with GUID [160] ... -13:41:20.4014|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:20.4014|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:20.4014|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:20.4014|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:20.4014|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:20.4014|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.4014|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:20.4014|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:20.4014|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.4014|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT 'H' as 'S/H-Kennzeichen' -UNION -SELECT 'S'] and Parameters [] -13:41:20.4014|frmValidator|DEBUG >> LoadSQLData -> oMyComboBox CMB_S/H-Kennzeichen - Saving selected index 0 -13:41:20.4014|taskFLOW|DEBUG >> UpdateControlInCache -> Cache updated for control [CMB_S/H-Kennzeichen] with value type [String] -13:41:20.4014|frmValidator|DEBUG >> OnCmbselectedIndex -> ComboBox [CMB_S/H-Kennzeichen] marked as dirty -13:41:20.4014|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- HE, MK // 26.03.2025 - -SELECT [No_] as 'Arbeitsauftragsnummer', - [Description] as 'Beschreibung', - [Description 2] as 'Beschreibung 2', - [Description 3] as 'Beschreibung 3', - [WOStateValue] as 'Auftragsstatuswert', - [Level] as 'Level' -FROM [FNCUST_GET_MS-DYN365BC_WORK_ORDER_LIST]('SWE','{#CTRL#LU_BestellNr}') - --- Test mit EB00015129 ODER "" -] -13:41:20.4014|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_BestellNr]. -13:41:20.4014|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:20.4014|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_BestellNr] mit genau einem Value -13:41:20.4014|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:20.4014|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:20.4014|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_BestellNr], oReplaceValue Type: [String], Value: [EB9999999], IsSQL: [True] -13:41:20.4014|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [EB9999999] -13:41:20.4014|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [EB9999999] -13:41:20.4014|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- HE, MK // 26.03.2025 - -SELECT [No_] as 'Arbeitsauftragsnummer', - [Description] as 'Beschreibung', - [Description 2] as 'Beschreibung 2', - [Description 3] as 'Beschreibung 3', - [WOStateValue] as 'Auftragsstatuswert', - [Level] as 'Level' -FROM [FNCUST_GET_MS-DYN365BC_WORK_ORDER_LIST]('SWE','EB9999999') - --- Test mit EB00015129 ODER "" -] -13:41:20.4014|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:20.4014|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:20.4014|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:20.4014|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:20.4014|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:20.4014|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.4014|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:20.4014|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:20.4014|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.4014|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 26.03.2025 - -SELECT [No_] as 'Arbeitsauftragsnummer', - [Description] as 'Beschreibung', - [Description 2] as 'Beschreibung 2', - [Description 3] as 'Beschreibung 3', - [WOStateValue] as 'Auftragsstatuswert', - [Level] as 'Level' -FROM [FNCUST_GET_MS-DYN365BC_WORK_ORDER_LIST]('SWE','EB9999999') - --- Test mit EB00015129 ODER "" -] and Parameters [] -13:41:20.6634|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -13:41:20.6634|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [TB_Rechnungsaufteilung] -13:41:20.6634|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK / 18.03.2026 - -SELECT [CONTENT_CONCAT] as 'Auswahl' -FROM [FNCUST_GET_MS-DYN365BC_VAT_LIST]( -'SWE', -'{#CTRL#LU_BestellNr}', -' | ') - --- EB00021129 --- EB9999999] -13:41:20.6634|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_BestellNr]. -13:41:20.6634|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:20.6634|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_BestellNr] mit genau einem Value -13:41:20.6634|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:20.6634|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:20.6634|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_BestellNr], oReplaceValue Type: [String], Value: [EB9999999], IsSQL: [True] -13:41:20.6634|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [EB9999999] -13:41:20.6634|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [EB9999999] -13:41:20.6634|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK / 18.03.2026 - -SELECT [CONTENT_CONCAT] as 'Auswahl' -FROM [FNCUST_GET_MS-DYN365BC_VAT_LIST]( -'SWE', -'EB9999999', -' | ') - --- EB00021129 --- EB9999999] -13:41:20.6634|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:20.6634|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:20.6634|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:20.6634|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:20.6634|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:20.6634|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.6634|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:20.6664|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:20.6664|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.6664|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK / 18.03.2026 - -SELECT [CONTENT_CONCAT] as 'Auswahl' -FROM [FNCUST_GET_MS-DYN365BC_VAT_LIST]( -'SWE', -'EB9999999', -' | ') - --- EB00021129 --- EB9999999] and Parameters [] -13:41:20.6664|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -13:41:20.6664|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [TB_Rechnungsaufteilung] -13:41:20.6664|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- MK / 13.03.2026 - -SELECT [Artikelnummer], - [Fremd-Artikelnummer], - [Beschreibung], - [Beschreibung 2], - [Einheitscode], - [EK], - [VK] -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ITEM_LIST]('SWE','{#CTRL#LU_BestellNr}','~'); - --- Test mit: --- EB00015129 --- EB9999999 -] -13:41:20.6664|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_BestellNr]. -13:41:20.6664|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:20.6664|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_BestellNr] mit genau einem Value -13:41:20.6664|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:20.6664|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: EB9999999 -13:41:20.6664|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_BestellNr], oReplaceValue Type: [String], Value: [EB9999999], IsSQL: [True] -13:41:20.6664|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [EB9999999] -13:41:20.6664|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [EB9999999] -13:41:20.6664|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- MK / 13.03.2026 - -SELECT [Artikelnummer], - [Fremd-Artikelnummer], - [Beschreibung], - [Beschreibung 2], - [Einheitscode], - [EK], - [VK] -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ITEM_LIST]('SWE','EB9999999','~'); - --- Test mit: --- EB00015129 --- EB9999999 -] -13:41:20.6664|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:20.6664|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:20.6664|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:20.6664|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:20.6664|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:20.6664|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.6664|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:20.6664|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:20.6664|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.6664|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK / 13.03.2026 - -SELECT [Artikelnummer], - [Fremd-Artikelnummer], - [Beschreibung], - [Beschreibung 2], - [Einheitscode], - [EK], - [VK] -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ITEM_LIST]('SWE','EB9999999','~'); - --- Test mit: --- EB00015129 --- EB9999999 -] and Parameters [] -13:41:20.7362|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for all Gridcells.. -13:41:20.7362|ClassControlCreator|DEBUG >> GridTables_HandleControlValueChange -> Force-setting Editor for Grid [TB_Rechnungsaufteilung] -13:41:20.7362|frmValidator|DEBUG >> Controls2beEnabled -> [EXIT 1] Controls2beEnabled: Form noch nicht geladen -13:41:20.7362|frmValidator|DEBUG >> SetControlValues_FromControl -> [SetControlValues_FromControl] START für Control: [CMB_S/H-Kennzeichen], GUID: [160] -13:41:20.7362|frmValidator|DEBUG >> SetControlValues_FromControl -> [SetControlValues_FromControl] SET_CONTROL_DATA is empty for control [CMB_S/H-Kennzeichen]. Exiting. -13:41:20.7362|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [197]... -13:41:20.7362|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [LU_LieferantenNummer] with GUID [197] ... -13:41:20.7362|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:20.7362|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:20.7362|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:20.7362|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:20.7362|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:20.7362|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.7362|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:20.7362|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:20.7362|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.7362|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- MK // 11.03.2025 - -SELECT [LieferantenNr] - ,[Name] - ,[IBAN] - ,[Name 2] - FROM [VWCUST_MS-DYN365BC_VENDOR_LIST] - WHERE [Mandant] = 'SWE' -] and Parameters [] -13:41:20.7572|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData DEBUG] Lookup [LU_LieferantenNummer] konfiguriert: -13:41:20.7572|frmValidator|DEBUG >> LoadSQLData -> DataSource-Typ: System.Data.DataTable -13:41:20.7572|frmValidator|DEBUG >> LoadSQLData -> ValueMember: [LieferantenNr] -13:41:20.7572|frmValidator|DEBUG >> LoadSQLData -> DisplayMember: [LieferantenNr] -13:41:20.7572|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Alte SelectedValues gesichert: [120904] -13:41:20.7622|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Wert [120904] existiert im neuen DataSource ✓ -13:41:20.7622|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:20.7622|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:20.7622|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:20.7622|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:20.7622|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] SelectedValues wiederhergestellt: [120904] -13:41:20.7622|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [702]... -13:41:20.7622|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [LU_BestellNr] with GUID [702] ... -13:41:20.7622|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- HE, MK // 11.04.2025 - -DECLARE @LieferantenNummer NVARCHAR(50) = '{#CTRL#LU_LieferantenNummer}'; - --- Fallback to windream Index if control value is empty -SET @LieferantenNummer = CASE WHEN @LieferantenNummer = '0' - THEN '{#WMI#Personennummer}' - ELSE @LieferantenNummer -END; - -SELECT [No_] as 'Bestellnummer', - [Order Date] as 'Bestelldatum', - [Payment Terms Code] as 'Zahlbed.', - [Your Reference] as 'Bestellreferenz', - [Amount] as 'Bestellsumme netto', - --[Total Tax Amount] as 'Steuerbetrag', - [Amount Including VAT] as 'Bestellsumme brutto' -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ORDER_LIST]('SWE',@LieferantenNummer) -ORDER BY [Order Date] DESC, [NO_] ASC - --- Test mit 370433] -13:41:20.7622|taskFLOW|DEBUG >> ReplaceWindreamIndicies -> IS_SQL = True - oReplaceValue = 120904 -13:41:20.7622|taskFLOW|DEBUG >> ReplaceWindreamIndicies -> oReplaceValue = 120904 -13:41:20.7622|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_LieferantenNummer]. -13:41:20.7622|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:20.7622|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_LieferantenNummer] mit genau einem Value -13:41:20.7622|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 120904 -13:41:20.7622|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 120904 -13:41:20.7622|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_LieferantenNummer], oReplaceValue Type: [String], Value: [120904], IsSQL: [True] -13:41:20.7622|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [120904] -13:41:20.7622|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [120904] -13:41:20.7622|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [-- HE, MK // 11.04.2025 - -DECLARE @LieferantenNummer NVARCHAR(50) = '120904'; - --- Fallback to windream Index if control value is empty -SET @LieferantenNummer = CASE WHEN @LieferantenNummer = '0' - THEN '120904' - ELSE @LieferantenNummer -END; - -SELECT [No_] as 'Bestellnummer', - [Order Date] as 'Bestelldatum', - [Payment Terms Code] as 'Zahlbed.', - [Your Reference] as 'Bestellreferenz', - [Amount] as 'Bestellsumme netto', - --[Total Tax Amount] as 'Steuerbetrag', - [Amount Including VAT] as 'Bestellsumme brutto' -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ORDER_LIST]('SWE',@LieferantenNummer) -ORDER BY [Order Date] DESC, [NO_] ASC - --- Test mit 370433] -13:41:20.7622|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:20.7622|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:20.7622|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:20.7622|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:20.7622|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:20.7622|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.7622|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:20.7622|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:20.7622|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:20.7622|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 11.04.2025 - -DECLARE @LieferantenNummer NVARCHAR(50) = '120904'; - --- Fallback to windream Index if control value is empty -SET @LieferantenNummer = CASE WHEN @LieferantenNummer = '0' - THEN '120904' - ELSE @LieferantenNummer -END; - -SELECT [No_] as 'Bestellnummer', - [Order Date] as 'Bestelldatum', - [Payment Terms Code] as 'Zahlbed.', - [Your Reference] as 'Bestellreferenz', - [Amount] as 'Bestellsumme netto', - --[Total Tax Amount] as 'Steuerbetrag', - [Amount Including VAT] as 'Bestellsumme brutto' -FROM [dbo].[FNCUST_GET_MS-DYN365BC_ORDER_LIST]('SWE',@LieferantenNummer) -ORDER BY [Order Date] DESC, [NO_] ASC - --- Test mit 370433] and Parameters [] -13:41:21.1432|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData DEBUG] Lookup [LU_BestellNr] konfiguriert: -13:41:21.1432|frmValidator|DEBUG >> LoadSQLData -> DataSource-Typ: System.Data.DataTable -13:41:21.1432|frmValidator|DEBUG >> LoadSQLData -> ValueMember: [] -13:41:21.1432|frmValidator|DEBUG >> LoadSQLData -> DisplayMember: [] -13:41:21.1432|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Alte SelectedValues gesichert: [EB9999999] -13:41:21.1432|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Wert [EB9999999] existiert im neuen DataSource ✓ -13:41:21.1432|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] SelectedValues wiederhergestellt: [EB9999999] -13:41:21.1432|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [132]... -13:41:21.1432|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [LU_Status-Detail] with GUID [132] ... -13:41:21.1512|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:21.1512|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:21.1512|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:21.1512|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:21.1512|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:21.1512|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:21.2189|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:21.2189|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:21.2189|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:21.2189|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 06.03.2025 - -SELECT * FROM [FNCUST_SET_TF_DECISION_LIST_PROFILEID_44]() -ORDER BY 'Entscheidung' desc -] and Parameters [] -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData DEBUG] Lookup [LU_Status-Detail] konfiguriert: -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> DataSource-Typ: System.Data.DataTable -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> ValueMember: [Entscheidung] -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> DisplayMember: [Entscheidung] -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Alte SelectedValues gesichert: [Bestätigt] -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] Wert [Bestätigt] existiert im neuen DataSource ✓ -13:41:21.2189|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue -13:41:21.2189|frmValidator|DEBUG >> onLookUpselectedValue -> onLookUpselectedValue suppressed (global guard active) -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData BUGFIX] SelectedValues wiederhergestellt: [Bestätigt] -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [196]... -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [LU_Person] with GUID [196] ... -13:41:21.2189|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:21.2189|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:21.2189|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:21.2189|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:21.2189|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 09.03.2026 - -SELECT * FROM [FNCUST_GET_USER_USERNAME_LIST_INCL_DUMMY_USER]('SWE') -] and Parameters [] -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData DEBUG] Lookup [LU_Person] konfiguriert: -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> DataSource-Typ: System.Data.DataTable -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> ValueMember: [Benutzername] -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> DisplayMember: [Benutzername] -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> in LoadSQLData for ControlID [143]... -13:41:21.2189|frmValidator|DEBUG >> LoadSQLData -> LoadSQLData for Control [LU_InfoMail] with GUID [143] ... -13:41:21.2189|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:21.2189|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:21.2189|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1] -13:41:21.2189|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:21.2189|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:21.2189|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:21.2189|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:21.2189|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:21.2189|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:21.2189|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [-- HE, MK // 05.03.2025 - -SELECT * FROM [FNCUST_GET_USER_MAILADRESS_LIST] ('SWE') -] and Parameters [] -13:41:21.2289|frmValidator|DEBUG >> LoadSQLData -> [LoadSQLData DEBUG] Lookup [LU_InfoMail] konfiguriert: -13:41:21.2289|frmValidator|DEBUG >> LoadSQLData -> DataSource-Typ: System.Data.DataTable -13:41:21.2289|frmValidator|DEBUG >> LoadSQLData -> ValueMember: [E-Mail Adressen Liste] -13:41:21.2289|frmValidator|DEBUG >> LoadSQLData -> DisplayMember: [E-Mail Adressen Liste] -13:41:21.2289|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.2289|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.2289|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.2289|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.2289|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2289|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[78,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.2289|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[78,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[92,82 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[92,82 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[12,80 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[12,80 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[15,23 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[15,23 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[15,64 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[15,64 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[18,61 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[18,61 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[8,87 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[8,87 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[10,56 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[10,56 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.2449|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.3249|frmValidator|DEBUG >> WMIndexVectofield -> WMIndexVectofield - pValues is Single String ... -13:41:21.3249|frmValidator|DEBUG >> Indexiere_File -> Indexing Index 'Vektor String 075' with Arrayvalue -13:41:21.3249|frmValidator|DEBUG >> Indexiere_File -> Current Index Value for [Vektor String 075] is [PMProfile loaded: [44-SWE - ER 1.0 - Zuweisung und Vorprüfung durch die FiBu]~svc.digitaldata~12.03.2026 12:52:16] -13:41:21.3249|frmValidator|DEBUG >> Indexiere_File -> Current Index Value for [Vektor String 075] is [PMProfile loaded: [44-SWE - ER 1.0 - Zuweisung und Vorprüfung durch die FiBu]~svc.digitaldata~12.03.2026 21:06:04] -13:41:21.3249|frmValidator|DEBUG >> Indexiere_File -> Current Index Value for [Vektor String 075] is [PMProfile loaded: [44-SWE - ER 1.0 - Zuweisung und Vorprüfung durch die FiBu]~svc.digitaldata~23.03.2026 14:22:53] -13:41:21.3249|frmValidator|DEBUG >> Indexiere_File -> Current Index Value for [Vektor String 075] is [PMProfile loaded: [44-SWE - ER 1.0 - Zuweisung und Vorprüfung durch die FiBu]~svc.digitaldata~23.03.2026 14:27:41] -13:41:21.3249|frmValidator|DEBUG >> Indexiere_File -> Current Index Value for [Vektor String 075] is [PMProfile loaded: [44-SWE - ER 1.0 - Zuweisung und Vorprüfung durch die FiBu]~svc.digitaldata~23.03.2026 14:53:11] -13:41:21.3249|frmValidator|DEBUG >> Indexiere_File -> Current Index Value for [Vektor String 075] is [PMProfile loaded: [44-SWE - ER 1.0 - Zuweisung und Vorprüfung durch die FiBu]~svc.digitaldata~24.03.2026 13:41:21] -13:41:21.3469|taskFLOW|DEBUG >> RunIndexing -> ### Indexierung von Index: Vektor String 075 #### -13:41:21.3469|taskFLOW|DEBUG >> RunIndexing -> Typ des windream-Indexes: 4097 Vektor alphanumerisch -13:41:21.3469|taskFLOW|DEBUG >> RunIndexing -> VEKTORFELD: Vorbereiten des Arrays -13:41:21.3469|taskFLOW|DEBUG >> RunIndexing -> Wert für Index vor Indexierung: [PMProfile loaded: [44-SWE - ER 1.0 - Zuweisung und Vorprüfung durch die FiBu]~svc.digitaldata~12.03.2026 12:52:16] -13:41:21.3469|taskFLOW|DEBUG >> RunIndexing -> 'SetVariableValue' für VEKTOR erfolgreich -13:41:21.3769|taskFLOW|DEBUG >> RunIndexing -> ### Indexierung erfolgreich beendet (Save und Unlock durchgeführt) ### -13:41:21.3769|frmValidator|DEBUG >> activate_controls -> Sub activate_controls - status = True -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[78,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[78,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[92,82 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[92,82 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[12,80 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[12,80 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[15,23 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[15,23 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[15,64 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[15,64 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[18,61 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[18,61 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[8,87 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[8,87 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[10,56 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[10,56 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4189|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4339|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4479|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4479|DatabaseWithFallback|DEBUG >> GetDatatable -> Client is empty, falling back to direct database access. -13:41:21.4479|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM] -13:41:21.4479|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:21.4479|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:21.4479|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT - CONVERT(VARCHAR(30), A.ADDED_WHEN,20) + ' - ' + B.STRING1 as MSG,A.ImageIndex -FROM - TBTF_VALIDATOR_MESSAGE A INNER JOIN - (SELECt * FROM TBDD_GUI_LANGUAGE_PHRASE - WHERE MODULE = 'PM' AND OBJ_NAME = 'frmValidator' AND CAPT_TYPE = 'WF_MESSAGE') B ON A.GUI_LANG_TITLE = B.TITLE -WHERE - A.Active = 1 and (A.DocID = 9210117 or A.DocID = 1) AND B.LANGUAGE = 'de-DE' ORDER BY A.ADDED_WHEN DESC] and Parameters [] -13:41:21.4479|frmValidator|DEBUG >> Load_Next_Document -> [DIAGNOSE] VOR Controls2B_EnDisabled_onLoad: -13:41:21.4479|frmValidator|DEBUG >> Load_Next_Document -> _FormLoaded = [True] -13:41:21.4479|frmValidator|DEBUG >> Load_Next_Document -> _FormClosing = [False] -13:41:21.4479|frmValidator|DEBUG >> Load_Next_Document -> IsDisposed = [False] -13:41:21.4479|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> We got 2 controls which need to be checked dis/enable on load! -13:41:21.4479|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Checking Control [LU_BestellNr] (ID: 702) for SQL_ENABLE_ON_LOAD... -13:41:21.4479|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Found Control [LU_BestellNr] (ID: 702) on panel which needs to be checked -13:41:21.4479|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> [Controls2B_EnDisabled_onLoad] BEFORE ReplaceAllValues for Control [LU_BestellNr] -13:41:21.4479|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> SQL Command: [DECLARE @Active as Bit -IF LEN('{#CTRL#LU_LieferantenNummer}') > 1 -SET @Active = 1 -ELSE -SET @Active = 0 -SELECT @Active -] -13:41:21.4479|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> Panel Controls Count: [59] -13:41:21.4479|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [DECLARE @Active as Bit -IF LEN('{#CTRL#LU_LieferantenNummer}') > 1 -SET @Active = 1 -ELSE -SET @Active = 0 -SELECT @Active -] -13:41:21.4479|taskFLOW|DEBUG >> ReplaceControlValues -> Found placeholder for control [LU_LieferantenNummer]. -13:41:21.4479|taskFLOW|DEBUG >> ReplaceControlValues -> oControl.GetType [DigitalData.Controls.LookupGrid.LookupControl3]. -13:41:21.4479|taskFLOW|DEBUG >> ReplaceControlValues -> LookupControl3 [LU_LieferantenNummer] mit genau einem Value -13:41:21.4479|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 120904 -13:41:21.4479|taskFLOW|DEBUG >> ReplaceControlValues -> oReplaceValue nach Durchlaufen selectedValues: 120904 -13:41:21.4479|taskFLOW|DEBUG >> ReplaceControlValues -> [SQL-ESCAPE CHECK] Control: [LU_LieferantenNummer], oReplaceValue Type: [String], Value: [120904], IsSQL: [True] -13:41:21.4479|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Input Type: [String], Value: [120904] -13:41:21.4479|taskFLOW|DEBUG >> SafeSqlEscape -> [SafeSqlEscape] Output: [120904] -13:41:21.4479|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [DECLARE @Active as Bit -IF LEN('120904') > 1 -SET @Active = 1 -ELSE -SET @Active = 0 -SELECT @Active -] -13:41:21.4479|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> [Controls2B_EnDisabled_onLoad] AFTER ReplaceAllValues: [DECLARE @Active as Bit -IF LEN('120904') > 1 -SET @Active = 1 -ELSE -SET @Active = 0 -SELECT @Active -] -13:41:21.4479|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> [SQL START] Control [LU_BestellNr]: Führe SQL aus... -13:41:21.4479|MSSQLServer|DEBUG >> Get_ConnectionStringforID(MSSQLServer.vb:172) -> Getting ConnectionString for ConnectionId [1] -13:41:21.4479|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Server=SWESQL;Database=DD_ECM;User Id=svc.ecm;Password=XXXXX; -13:41:21.4479|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:21.4479|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject(MSSQLServer.vb:390) -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters [] -13:41:21.4479|MSSQLServer|DEBUG >> GetConnection(MSSQLServer.vb:275) -> The Following Connection is open: Data Source=swesql;Initial Catalog=DD_ECM;User ID=svc.ecm;Password=XXXXX -13:41:21.4479|MSSQLServer|DEBUG >> MaybeGetTransaction(MSSQLServer.vb:117) -> Transaction Mode: [WithTransaction] -13:41:21.4479|MSSQLServer|DEBUG >> GetScalarValueWithConnectionObject(MSSQLServer.vb:562) -> GetScalarValueWithConnectionObject: Running Query [DECLARE @Active as Bit -IF LEN('120904') > 1 -SET @Active = 1 -ELSE -SET @Active = 0 -SELECT @Active -] with Parameters [] -13:41:21.4629|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> [SQL ENDE] Control [LU_BestellNr]: Result = [True] -13:41:21.4629|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Result of Enable SQL [True]... -13:41:21.4629|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Checking Control [TXT_Entscheidungs-Beschreibung] (ID: 145) for SQL_ENABLE_ON_LOAD... -13:41:21.4629|frmValidator|DEBUG >> Controls2B_EnDisabled_onLoad -> Found Control [TXT_Entscheidungs-Beschreibung] (ID: 145) on panel which needs to be checked -13:41:21.4629|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> [Controls2B_EnDisabled_onLoad] BEFORE ReplaceAllValues for Control [TXT_Entscheidungs-Beschreibung] -13:41:21.4629|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> SQL Command: [-- HE // 09.03.2026 - -DECLARE @Active BIT, - @Entscheidung NVARCHAR(100) = '{#CTRL#LU_Status-Detail}', - @WMIPerson NVARCHAR(100) = '{#WMI#Person}', - @LUPerson NVARCHAR(100) = '{#CTRL#LU_Person}', - @AbweichungBegründen BIT = '{#CTRL#CHK_Prüfer-Begründung}'; - -SET @Active = CASE - - WHEN @Entscheidung <> 'Bestätigt' - THEN 1 - - WHEN @AbweichungBegründen <> 0 - THEN 1 - - ELSE 0 - -END; - -SELECT @Active - -] -13:41:21.4629|taskFLOW|DEBUG >> Controls2B_EnDisabled_onLoad -> Panel Controls Count: [59] -13:41:21.4629|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [-- HE // 09.03.2026 - -DECLARE @Active BIT, - @Entscheidung NVARCHAR(100) = '{#CTRL#LU_Status-Detail}', - @WMIPerson NVARCHAR(100) = '{#WMI#Person}', - @LUPerson NVARCHAR(100) = '{#CTRL#LU_Person}', - @AbweichungBegründen BIT = '{#CTRL#CHK_Prüfer-Begründung}'; - -SET @Active = CASE - - WHEN @Entscheidung <> 'Bestätigt' - THEN 1 - - WHEN @AbweichungBegründen <> 0 - THEN 1 - - ELSE 0 - -END; - -SELECT @Active - -] -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4629|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[78,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4629|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[78,00 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4629|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[92,82 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4629|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[92,82 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4629|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[12,80 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[12,80 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[15,23 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[15,23 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[15,64 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[15,64 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[18,61 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[18,61 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[8,87 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_NETTO]: DisplayText=[8,87 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[10,56 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewColumnsCurrency) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__1 -> [CustomColumnDisplayText] CURRENCY [INVOICE_POS_SUM_BRUTTO]: DisplayText=[10,56 EUR], Symbol=[EUR] (from Shared Dict in ConfigureViewEvents) -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_COUNTER] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_MATCH_WORK_ORDER_NR] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_INTERNAL_NOTE] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POSITION_AMOUNT] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_NETTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POS_TAX_RATE] -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> CURRENCY column [INVOICE_POS_SUM_BRUTTO] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Editor for Column [INVOICE_POS_OK] does not exist -13:41:21.4789|GridControl|DEBUG >> _Lambda$__2 -> Assigning Editor to Column [INVOICE_POSITION_ARTICLE]