2 Commits

Author SHA1 Message Date
Developer01
04d9aac24f Navigation auf TreeList umgestellt, Monitor-Layout refactored
- NavBarControl entfernt, Navigation erfolgt jetzt über TreeList_Cockpit mit modernem Design und Rechteprüfung (Monitor/Charts).
- TreeList lädt Cockpit-Struktur aus DB, blendet Knoten je nach Berechtigung aus und zeigt mehrsprachige Fehler bei fehlender Konfiguration.
- Klick auf Monitor- oder Chart-Knoten öffnet gezielt Monitor/Dashboard mit passender Konfiguration.
- Methoden zum Laden/Speichern/Entfernen von Monitor-Grid-Layouts vereinheitlicht und auf Cockpit-spezifische Layout-Dateien umgestellt.
- TreeList-Breite und Splitter-Positionen werden benutzerspezifisch gespeichert.
- Neuer Refresh-Button für TreeList im Ribbon ergänzt.
- Diverse Refactorings, Logging- und Fehlerbehandlungs-Verbesserungen.
2026-05-13 14:23:24 +02:00
Developer01
d74beddb35 Cockpit-Navigation: DevExpress TreeList integriert
Das Hauptfenster nutzt nun eine moderne, hierarchische Cockpit-Navigation auf Basis der DevExpress TreeList. Die TreeList ersetzt die bisherige alleinige Navigation über die NavBar und lädt ihre Struktur dynamisch aus der Datenbank. Knoten können asynchron Zähler nachladen und verschiedene Typen (Übersicht, Profil, SQL) abbilden. Die Datenlade-Logik wurde für die TreeList angepasst und erweitert. UI und Ressourcen wurden modernisiert, die TreeList ist für zukünftige Erweiterungen vorbereitet. Die NavBar bleibt erhalten, ist aber nicht mehr Hauptnavigation.
2026-05-13 09:52:20 +02:00
50 changed files with 5879 additions and 10651 deletions

Binary file not shown.

View File

@@ -0,0 +1,3 @@
{
"CurrentProjectSetting": null
}

View File

@@ -0,0 +1,7 @@
{
"ExpandedNodes": [
""
],
"SelectedNode": "\\DD_PM_WINDREAM.sln",
"PreviewInSolutionExplorer": false
}

BIN
app/.vs/slnx.sqlite Normal file

Binary file not shown.

View File

@@ -110,27 +110,26 @@
</Component>
<Component Id="DDLibs" Guid="BA2979E3-3778-48B8-B0D8-4B77825B9293">
<File Id="LookupGrid" Name="DigitalData.Controls.LookupGrid.dll" Source="DigitalData.Controls.LookupGrid.dll"/>
<File Id="DDSnapPanel" Name="DigitalData.Controls.SnapPanel.dll" Source="DigitalData.Controls.SnapPanel.dll"/>
<File Id="DDCommonGUIs" Name="DigitalData.GUIs.Common.dll" Source="DigitalData.GUIs.Common.dll"/>
<File Id="DDConfig" Name="DigitalData.Modules.Config.dll" Source="DigitalData.Modules.Config.dll"/>
<File Id="DDLogging" Name="DigitalData.Modules.Logging.dll" Source="DigitalData.Modules.Logging.dll"/>
<File Id="DDInterfaces" Name="DigitalData.Modules.Interfaces.dll" Source="DigitalData.Modules.Interfaces.dll"/>
<File Id="DDBase" Name="DigitalData.Modules.Base.dll" Source="DigitalData.Modules.Base.dll"/>
<File Id="DDFilesystem" Name="DigitalData.Modules.Filesystem.dll" Source="DigitalData.Modules.Filesystem.dll"/>
<File Id="DDEncryption" Name="DigitalData.Modules.Encryption.dll" Source="DigitalData.Modules.Encryption.dll"/>
<File Id="DDWindream" Name="DigitalData.Modules.Windream.dll" Source="DigitalData.Modules.Windream.dll"/>
<File Id="DDWindows" Name="DigitalData.Modules.Windows.dll" Source="DigitalData.Modules.Windows.dll"/>
<File Id="DDZooflow" Name="DigitalData.Modules.Zooflow.dll" Source="DigitalData.Modules.Zooflow.dll"/>
<File Id="DDDatabase" Name="DigitalData.Modules.Database.dll" Source="DigitalData.Modules.Database.dll"/>
<File Id="DDPatterns" Name="DigitalData.Modules.Patterns.dll" Source="DigitalData.Modules.Patterns.dll"/>
<File Id="DDEDMIAPI" Name="DigitalData.Modules.EDMI.API.dll" Source="DigitalData.Modules.EDMI.API.dll"/>
<File Id="DDDocumentViewer" Name="DigitalData.Controls.DocumentViewer.dll" Source="DigitalData.Controls.DocumentViewer.dll"/>
<File Id="DDLicenseManager" Name="DLLLicenseManager.dll" Source="DLLLicenseManager.dll" KeyPath="no" />
<File Id="Messaging" Name="DigitalData.Modules.Messaging.dll" Source="DigitalData.Modules.Messaging.dll" KeyPath="no" />
<File Id="Messaging.License" Name="MailLicense.xml" Source="MailLicense.xml" KeyPath="no" />
<File Id="Limilabs.Mail" Name="Mail.dll" Source="Mail.dll" KeyPath="no" />
<File Id="NLog" Name="NLog.dll" Source="NLog.dll"/>
<File Id="LookupGrid" Name="DigitalData.Controls.LookupGrid.dll" Source="DigitalData.Controls.LookupGrid.dll"/>
<File Id="DDSnapPanel" Name="DigitalData.Controls.SnapPanel.dll" Source="DigitalData.Controls.SnapPanel.dll"/>
<File Id="DDCommonGUIs" Name="DigitalData.GUIs.Common.dll" Source="DigitalData.GUIs.Common.dll"/>
<File Id="DDConfig" Name="DigitalData.Modules.Config.dll" Source="DigitalData.Modules.Config.dll"/>
<File Id="DDLogging" Name="DigitalData.Modules.Logging.dll" Source="DigitalData.Modules.Logging.dll"/>
<File Id="DDInterfaces" Name="DigitalData.Modules.Interfaces.dll" Source="DigitalData.Modules.Interfaces.dll"/>
<File Id="DDBase" Name="DigitalData.Modules.Base.dll" Source="DigitalData.Modules.Base.dll"/>
<File Id="DDFilesystem" Name="DigitalData.Modules.Filesystem.dll" Source="DigitalData.Modules.Filesystem.dll"/>
<File Id="DDEncryption" Name="DigitalData.Modules.Encryption.dll" Source="DigitalData.Modules.Encryption.dll"/>
<File Id="DDWindream" Name="DigitalData.Modules.Windream.dll" Source="DigitalData.Modules.Windream.dll"/>
<File Id="DDWindows" Name="DigitalData.Modules.Windows.dll" Source="DigitalData.Modules.Windows.dll"/>
<File Id="DDZooflow" Name="DigitalData.Modules.Zooflow.dll" Source="DigitalData.Modules.Zooflow.dll"/>
<File Id="DDDatabase" Name="DigitalData.Modules.Database.dll" Source="DigitalData.Modules.Database.dll"/>
<File Id="DDPatterns" Name="DigitalData.Modules.Patterns.dll" Source="DigitalData.Modules.Patterns.dll"/>
<File Id="DDEDMIAPI" Name="DigitalData.Modules.EDMI.API.dll" Source="DigitalData.Modules.EDMI.API.dll"/>
<File Id="DDDocumentViewer" Name="DigitalData.Controls.DocumentViewer.dll" Source="DigitalData.Controls.DocumentViewer.dll"/>
<File Id="Messaging" Name="DigitalData.Modules.Messaging.dll" Source="DigitalData.Modules.Messaging.dll" KeyPath="no" />
<File Id="Messaging.License" Name="MailLicense.xml" Source="MailLicense.xml" KeyPath="no" />
<File Id="Limilabs.Mail" Name="Mail.dll" Source="Mail.dll" KeyPath="no" />
<File Id="NLog" Name="NLog.dll" Source="NLog.dll"/>
</Component>
<Component Id="RuntimeLibs" Guid="F7170744-3DB5-4275-ACCD-7F3B9BDE1D6E">
<File Id="Newtonsoft.Json" Name="Newtonsoft.Json.dll" Source="Newtonsoft.Json.dll" KeyPath="yes" />
@@ -142,94 +141,51 @@
</Component>
<Component Id="GDPictureLibs" Guid="9ea5ab43-58ff-4813-9a8b-f854784f0275">
<!-- Haupt-DLL -->
<File Id="GdPicture.NET.14" Name="GdPicture.NET.14.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.dll" KeyPath="yes" />
<!-- Native x64 DLLs -->
<File Id="GdPicture.NET.14.barcode.1d.reader.64" Name="GdPicture.NET.14.barcode.1d.reader.64.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.barcode.1d.reader.64.dll" />
<File Id="GdPicture.NET.14.barcode.2d.reader.64" Name="GdPicture.NET.14.barcode.2d.reader.64.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.barcode.2d.reader.64.dll" />
<File Id="GdPicture.NET.14.filters64" Name="GdPicture.NET.14.filters.64.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.filters.64.dll" />
<File Id="GdPicture.NET.14.image64" Name="GdPicture.NET.14.image.gdimgplug.64.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.image.gdimgplug.64.dll" />
<File Id="GdPicture.NET.14.Imaging.ML.64" Name="GdPicture.NET.14.Imaging.ML.64.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Imaging.ML.64.dll" />
<File Id="GdPicture.NET.14.Rendering.Skia.64" Name="GdPicture.NET.14.Imaging.Rendering.Skia.64.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Imaging.Rendering.Skia.64.dll" />
<File Id="GdPicture.NET.14.machine.vision.64" Name="GdPicture.NET.14.machine.vision.64.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.machine.vision.64.dll" />
<File Id="GdPicture.NET.14.twain.client.64" Name="GdPicture.NET.14.twain.client.64.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.twain.client.64.dll" />
<!-- Native x86 DLLs -->
<File Id="GdPicture.NET.14.barcode.1d.reader" Name="GdPicture.NET.14.barcode.1d.reader.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.barcode.1d.reader.dll" />
<File Id="GdPicture.NET.14.barcode.1d.writer" Name="GdPicture.NET.14.barcode.1d.writer.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.barcode.1d.writer.dll" />
<File Id="GdPicture.NET.14.barcode.2d.reader" Name="GdPicture.NET.14.barcode.2d.reader.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.barcode.2d.reader.dll" />
<File Id="GdPicture.NET.14.barcode.2d.writer" Name="GdPicture.NET.14.barcode.2d.writer.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.barcode.2d.writer.dll" />
<File Id="GdPicture.NET.14.filters" Name="GdPicture.NET.14.filters.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.filters.dll" />
<File Id="GdPicture.NET.14.image" Name="GdPicture.NET.14.image.gdimgplug.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.image.gdimgplug.dll" />
<File Id="GdPicture.NET.14.Imaging.ML" Name="GdPicture.NET.14.Imaging.ML.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Imaging.ML.dll" />
<File Id="GdPicture.NET.14.machine.vision" Name="GdPicture.NET.14.machine.vision.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.machine.vision.dll" />
<File Id="GdPicture.NET.14.twain.client" Name="GdPicture.NET.14.twain.client.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.twain.client.dll" />
<!-- Managed GdPicture DLLs -->
<File Id="GdPicture.NET.14.WinForms" Name="GdPicture.NET.14.WinForms.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.WinForms.dll" />
<File Id="GdPicture.NET.14.CAD" Name="GdPicture.NET.14.CAD.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.CAD.dll" />
<File Id="GdPicture.NET.14.CAD.DWG" Name="GdPicture.NET.14.CAD.DWG.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.CAD.DWG.dll" />
<File Id="GdPicture.NET.14.Common" Name="GdPicture.NET.14.Common.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Common.dll" />
<File Id="GdPicture.NET.14.Document" Name="GdPicture.NET.14.Document.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Document.dll" />
<File Id="GdPicture.NET.14.Email" Name="GdPicture.NET.14.Email.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Email.dll" />
<File Id="GdPicture.NET.14.HTML" Name="GdPicture.NET.14.HTML.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.HTML.dll" />
<File Id="GdPicture.NET.14.Imaging" Name="GdPicture.NET.14.Imaging.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Imaging.dll" />
<File Id="GdPicture.NET.14.Imaging.Formats" Name="GdPicture.NET.14.Imaging.Formats.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Imaging.Formats.dll" />
<File Id="GdPicture.NET.14.Imaging.Formats.Conversion" Name="GdPicture.NET.14.Imaging.Formats.Conversion.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Imaging.Formats.Conversion.dll" />
<File Id="GdPicture.NET.14.Imaging.Rendering" Name="GdPicture.NET.14.Imaging.Rendering.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Imaging.Rendering.dll" />
<File Id="GdPicture.NET.14.Imaging.Rendering.Skia" Name="GdPicture.NET.14.Imaging.Rendering.Skia.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Imaging.Rendering.Skia.dll" />
<File Id="GdPicture.NET.14.Markdown" Name="GdPicture.NET.14.Markdown.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.Markdown.dll" />
<File Id="GdPicture.NET.14.MSOfficeBinary" Name="GdPicture.NET.14.MSOfficeBinary.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.MSOfficeBinary.dll"/>
<File Id="GdPicture.NET.14.OpenDocument" Name="GdPicture.NET.14.OpenDocument.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.OpenDocument.dll" />
<File Id="GdPicture.NET.14.OpenXML" Name="GdPicture.NET.14.OpenXML.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.OpenXML.dll" />
<File Id="GdPicture.NET.14.OpenXML.Templating" Name="GdPicture.NET.14.OpenXML.Templating.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.OpenXML.Templating.dll" />
<File Id="GdPicture.NET.14.PDF" Name="GdPicture.NET.14.PDF.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.PDF.dll" />
<File Id="GdPicture.NET.14.RTF" Name="GdPicture.NET.14.RTF.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.RTF.dll" />
<File Id="GdPicture.NET.14.SVG" Name="GdPicture.NET.14.SVG.dll" Source="..\taskFLOW\bin\$(var.Configuration)\GdPicture.NET.14.SVG.dll" />
<!-- GdPicture Dependencies -->
<File Id="BouncyCastle.Cryptography" Name="BouncyCastle.Cryptography.dll" Source="..\taskFLOW\bin\$(var.Configuration)\BouncyCastle.Cryptography.dll"/>
<File Id="DocumentFormat.OpenXml" Name="DocumentFormat.OpenXml.dll" Source="..\taskFLOW\bin\$(var.Configuration)\DocumentFormat.OpenXml.dll" />
<File Id="DocumentFormat.OpenXml.Framework" Name="DocumentFormat.OpenXml.Framework.dll" Source="..\taskFLOW\bin\$(var.Configuration)\DocumentFormat.OpenXml.Framework.dll" />
<File Id="Google.Protobuf" Name="Google.Protobuf.dll" Source="..\taskFLOW\bin\$(var.Configuration)\Google.Protobuf.dll" />
<File Id="Microsoft.Bcl.AsyncInterfaces" Name="Microsoft.Bcl.AsyncInterfaces.dll" Source="..\taskFLOW\bin\$(var.Configuration)\Microsoft.Bcl.AsyncInterfaces.dll" />
<File Id="Microsoft.Bcl.Cryptography" Name="Microsoft.Bcl.Cryptography.dll" Source="..\taskFLOW\bin\$(var.Configuration)\Microsoft.Bcl.Cryptography.dll" />
<File Id="Microsoft.Bcl.HashCode" Name="Microsoft.Bcl.HashCode.dll" Source="..\taskFLOW\bin\$(var.Configuration)\Microsoft.Bcl.HashCode.dll" />
<File Id="Microsoft.Identity.Client" Name="Microsoft.Identity.Client.dll" Source="..\taskFLOW\bin\$(var.Configuration)\Microsoft.Identity.Client.dll" />
<File Id="Microsoft.IdentityModel.Abstractions" Name="Microsoft.IdentityModel.Abstractions.dll" Source="..\taskFLOW\bin\$(var.Configuration)\Microsoft.IdentityModel.Abstractions.dll" />
<File Id="Newtonsoft.Json.Bson" Name="Newtonsoft.Json.Bson.dll" Source="..\taskFLOW\bin\$(var.Configuration)\Newtonsoft.Json.Bson.dll" />
<File Id="OpenMcdf" Name="OpenMcdf.dll" Source="..\taskFLOW\bin\$(var.Configuration)\OpenMcdf.dll" />
<File Id="protobufnet" Name="protobuf-net.dll" Source="..\taskFLOW\bin\$(var.Configuration)\protobuf-net.dll" />
<File Id="protobufnet.Core" Name="protobuf-net.Core.dll" Source="..\taskFLOW\bin\$(var.Configuration)\protobuf-net.Core.dll" />
<File Id="RtfPipe" Name="RtfPipe.dll" Source="..\taskFLOW\bin\$(var.Configuration)\RtfPipe.dll" />
<!-- System DLLs -->
<File Id="netstandard" Name="netstandard.dll" Source="..\taskFLOW\bin\$(var.Configuration)\netstandard.dll" />
<File Id="System.Buffers" Name="System.Buffers.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Buffers.dll" />
<File Id="System.CodeDom" Name="System.CodeDom.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.CodeDom.dll" />
<File Id="System.Collections.Immutable" Name="System.Collections.Immutable.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Collections.Immutable.dll" />
<File Id="System.Data.Odbc" Name="System.Data.Odbc.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Data.Odbc.dll" />
<File Id="System.Formats.Asn1" Name="System.Formats.Asn1.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Formats.Asn1.dll" />
<File Id="System.IO.Packaging" Name="System.IO.Packaging.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.IO.Packaging.dll" />
<File Id="System.IO.Pipelines" Name="System.IO.Pipelines.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.IO.Pipelines.dll" />
<File Id="System.Memory2" Name="System.Memory.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Memory.dll" />
<File Id="System.Net.Http.Formatting" Name="System.Net.Http.Formatting.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Net.Http.Formatting.dll" />
<File Id="System.Numerics.Vectors" Name="System.Numerics.Vectors.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Numerics.Vectors.dll" />
<File Id="System.Runtime.CompilerServices.Unsafe" Name="System.Runtime.CompilerServices.Unsafe.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Runtime.CompilerServices.Unsafe.dll" />
<File Id="System.Security.Cryptography.Pkcs" Name="System.Security.Cryptography.Pkcs.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Security.Cryptography.Pkcs.dll" />
<File Id="System.Text.Encodings.Web" Name="System.Text.Encodings.Web.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Text.Encodings.Web.dll" />
<File Id="System.Threading.Channels" Name="System.Threading.Channels.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Threading.Channels.dll" />
<File Id="System.Threading.Tasks.Extensions" Name="System.Threading.Tasks.Extensions.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.Threading.Tasks.Extensions.dll" />
<File Id="System.ValueTuple" Name="System.ValueTuple.dll" Source="..\taskFLOW\bin\$(var.Configuration)\System.ValueTuple.dll" />
<File Id="Microsoft.Win32.Primitives" Name="Microsoft.Win32.Primitives.dll" Source="..\taskFLOW\bin\$(var.Configuration)\Microsoft.Win32.Primitives.dll" />
<File Id="Microsoft.Win32.Registry" Name="Microsoft.Win32.Registry.dll" Source="..\taskFLOW\bin\$(var.Configuration)\Microsoft.Win32.Registry.dll" />
<!-- NativeSDK DLLs -->
<File Id="NativeSDK.Exceptions" Name="NativeSDK.Exceptions.dll" Source="..\taskFLOW\bin\$(var.Configuration)\NativeSDK.Exceptions.dll" />
<File Id="NativeSDK.Settings" Name="NativeSDK.Settings.dll" Source="..\taskFLOW\bin\$(var.Configuration)\NativeSDK.Settings.dll" />
<File Id="NativeSDK.Settings.Edition" Name="NativeSDK.Settings.Edition.dll" Source="..\taskFLOW\bin\$(var.Configuration)\NativeSDK.Settings.Edition.dll" />
</Component>
<File Id="GdPicture.NET.14" Name="GdPicture.NET.14.dll" KeyPath="yes" />
<File Id="GdPicture.NET.14.CAD" Name="GdPicture.NET.14.CAD.dll" />
<File Id="GdPicture.NET.14.CAD.DWG" Name="GdPicture.NET.14.CAD.DWG.dll" />
<File Id="GdPicture.NET.14.filters" Name="GdPicture.NET.14.filters.dll" />
<File Id="GdPicture.NET.14.filters64" Name="GdPicture.NET.14.filters.64.dll" />
<File Id="GdPicture.NET.14.image" Name="GdPicture.NET.14.image.gdimgplug.dll" />
<File Id="GdPicture.NET.14.image64" Name="GdPicture.NET.14.image.gdimgplug.64.dll" />
<File Id="GdPicture.NET.14.Imaging.Formats" Name="GdPicture.NET.14.Imaging.Formats.dll" />
<File Id="GdPicture.NET.14.Imaging.Rendering" Name="GdPicture.NET.14.Imaging.Rendering.dll" />
<File Id="GdPicture.NET.14.Imaging.Rendering.Skia" Name="GdPicture.NET.14.Imaging.Rendering.Skia.dll" />
<File Id="GdPicture.NET.14.Rendering.Skia.64" Name="GdPicture.NET.14.Imaging.Rendering.Skia.64.dll" />
<File Id="GdPicture.NET.14.Imaging" Name="GdPicture.NET.14.Imaging.dll" />
<File Id="GdPicture.NET.14.Imaging.ML.64" Name="GdPicture.NET.14.Imaging.ML.64.dll" />
<File Id="GdPicture.NET.14.Imaging.ML" Name="GdPicture.NET.14.Imaging.ML.dll" />
<File Id="GdPicture.NET.14.Imaging.Formats.Conversion" Name="GdPicture.NET.14.Imaging.Formats.Conversion.dll" />
<File Id="GdPicture.NET.14.Common" Name="GdPicture.NET.14.Common.dll" />
<File Id="GdPicture.NET.14.Document" Name="GdPicture.NET.14.Document.dll" />
<File Id="GdPicture.NET.14.PDF" Name="GdPicture.NET.14.PDF.dll" />
<File Id="GdPicture.NET.14.RTF" Name="GdPicture.NET.14.RTF.dll" />
<File Id="GdPicture.NET.14.SVG" Name="GdPicture.NET.14.SVG.dll" />
<File Id="GdPicture.NET.14.OpenDocument" Name="GdPicture.NET.14.OpenDocument.dll" />
<File Id="GdPicture.NET.14.OpenXML" Name="GdPicture.NET.14.OpenXML.dll" />
<File Id="GdPicture.NET.14.Email" Name="GdPicture.NET.14.Email.dll" />
<File Id="GdPicture.NET.14.HTML" Name="GdPicture.NET.14.HTML.dll" />
<File Id="GdPicture.NET.14.MSOfficeBinary" Name="GdPicture.NET.14.MSOfficeBinary.dll"/>
<File Id="BouncyCastle.Cryptography" Name="BouncyCastle.Cryptography.dll"/>
<File Id="DocumentFormat.OpenXml" Name="DocumentFormat.OpenXml.dll" />
<File Id="DocumentFormat.OpenXml.Framework" Name="DocumentFormat.OpenXml.Framework.dll" />
<File Id="Microsoft.Bcl.AsyncInterfaces" Name="Microsoft.Bcl.AsyncInterfaces.dll" />
<File Id="OpenMcdf" Name="OpenMcdf.dll" />
<File Id="protobufnet.Core" Name="protobuf-net.Core.dll" />
<File Id="protobufnet" Name="protobuf-net.dll" />
<File Id="RtfPipe" Name="RtfPipe.dll" />
<File Id="System.Buffers" Name="System.Buffers.dll" />
<File Id="System.CodeDom" Name="System.CodeDom.dll" />
<File Id="System.Collections.Immutable" Name="System.Collections.Immutable.dll" />
<File Id="System.IO.Packaging" Name="System.IO.Packaging.dll" />
<File Id="System.Memory" Name="System.Memory.dll" />
<File Id="System.Numerics.Vectors" Name="System.Numerics.Vectors.dll" />
<File Id="System.Runtime.CompilerServices.Unsafe" Name="System.Runtime.CompilerServices.Unsafe.dll" />
<File Id="System.Security.Cryptography.Pkcs" Name="System.Security.Cryptography.Pkcs.dll" />
<File Id="System.Text.Encodings.Web" Name="System.Text.Encodings.Web.dll" />
<File Id="System.Threading.Tasks.Extensions" Name="System.Threading.Tasks.Extensions.dll" />
<File Id="System.ValueTuple" Name="System.ValueTuple.dll" />
</Component>
<Component Id="DevExpressLibs" Guid="CB40DAAE-348E-4BD3-B275-9A526EB8F191">
<File Id="DevExpress.Images.v21.2" Name="DevExpress.Images.v21.2.dll" KeyPath="yes"/>

View File

@@ -124,19 +124,19 @@
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.5.0" newVersion="4.0.5.0" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.3.0" newVersion="6.0.3.0" />
<bindingRedirect oldVersion="0.0.0.0-6.0.1.0" newVersion="6.0.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.5.0" newVersion="4.0.5.0" />
<bindingRedirect oldVersion="0.0.0.0-4.0.4.0" newVersion="4.0.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.5" newVersion="10.0.0.5" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
@@ -152,15 +152,15 @@
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Security.Cryptography.Pkcs" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.5" newVersion="10.0.0.5" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Packaging" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.5" newVersion="10.0.0.5" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Text.Json" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.5" newVersion="10.0.0.5" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="FirebirdSql.Data.FirebirdClient" publicKeyToken="3750abcc3150b00c" culture="neutral" />
@@ -176,7 +176,7 @@
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.4.0" newVersion="4.2.4.0" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="DocumentFormat.OpenXml.Framework" publicKeyToken="8fb06cb64d019a17" culture="neutral" />
@@ -188,7 +188,7 @@
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Text.Encodings.Web" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.5" newVersion="10.0.0.5" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
@@ -196,11 +196,7 @@
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Formats.Asn1" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.5" newVersion="10.0.0.5" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Channels" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.5" newVersion="10.0.0.5" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>

View File

@@ -41,7 +41,6 @@ Public Class ClassAllgemeineFunktionen
Catch ex As Exception
LOGGER.Info($"Unexpected error in GUI_LANGUAGE_INFO FOR [{pTITLE}]...")
LOGGER.Error(ex)
Return Nothing
End Try
End Function

View File

@@ -32,6 +32,8 @@ Public Class ClassConfig
Public Property ReminderTimer As Integer = 5
Public Property OverviewRefresh_Intervall As Integer = 2
Public Property MainTreeList_Width As Integer = 250
Public Property MonitorSplitter1_Distance As Integer = 510
Public Property MonitorSplitter2_Distance As Integer = 270
Public Property MonitorSplitter3_Distance As Integer = 400
@@ -43,8 +45,12 @@ Public Class ClassConfig
Public Property NOTES_ONCLICK As Boolean = True
Public Property GridFontSizeDelta As Integer = 0
Public Property ProfileConfig As New ProfileUserConfig
Public Property InvDashboardSplitterPositions As New List(Of InvDashboardSplitterPosition)
Public Class InvDashboardSplitterPosition
Public Property CockpitChartId As Integer
Public Property SplitterPosition As Integer
End Class
Public Class ProfileUserConfig
Public Property ProfileID As Integer

View File

@@ -544,9 +544,8 @@ Public Class ClassControlCreator
Return oControl
End Function
Public Function CreateExistingGridControl(row As DataRow, DT_MY_COLUMNS As DataTable, designMode As Boolean,
pcurrencySymbol As String, pParentControl As Control) As GridControl
Dim oGridControlCreator = New ControlCreator.GridControl(LogConfig, GridTables, pcurrencySymbol, pParentControl)
Public Function CreateExistingGridControl(row As DataRow, DT_MY_COLUMNS As DataTable, designMode As Boolean, pcurrencySymbol As String) As GridControl
Dim oGridControlCreator = New ControlCreator.GridControl(LogConfig, GridTables, pcurrencySymbol)
Dim oControl As GridControl = CreateBaseControl(New GridControl(), row, designMode)
Dim oControlId = DirectCast(oControl.Tag, ControlMetadata).Guid
Dim oView As GridView
@@ -901,15 +900,7 @@ Public Class ClassControlCreator
Dim oColumnName = oRow.Item("SPALTENNAME")
Dim oAdvancedLookup = oRow.Item("ADVANCED_LOOKUP")
' *** NEU: Prüfe ob Spalte #TBCOL# verwendet (dynamisch pro Zeile) ***
If oSqlStatement <> String.Empty AndAlso oConnectionId > -1 Then
' *** NEU: Skip Spalten mit #TBCOL# (werden in ShowingEditor behandelt) ***
If oSqlStatement.Contains("{#TBCOL#") Then
Logger.Debug($"GridTables_HandleControlValueChange -> Skipping column [{oColumnName}] (has #TBCOL# placeholders, will be resolved per row)")
Continue For
End If
' *** BESTEHENDER CODE: Nur für statische Spalten ({#CTRL#} only) ***
oSqlStatement = clsPatterns.ReplaceAllValues(oSqlStatement, pControlPanel, True)
GridTables_CacheDatatableForColumn(oControlId, oColumnName, oSqlStatement, oConnectionId, oAdvancedLookup)

View File

@@ -1,422 +0,0 @@
Imports System.Data
Imports System.Globalization
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Columns
Imports DevExpress.XtraGrid.Views.Grid
Imports DigitalData.Modules.EDMI.API
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
Imports DigitalData.Modules.Logging
Public Class ClassGridDataLoader
Private ReadOnly _GDLoaderLogger As Logger
Private ReadOnly _DatabaseWithFallback As DatabaseWithFallback
Private Const PMDelimiter As String = "~"
Public Sub New(pDatabaseFallback As DatabaseWithFallback)
_GDLoaderLogger = LOGCONFIG.GetLogger()
_DatabaseWithFallback = pDatabaseFallback
End Sub
''' <summary>
''' Befüllt ein GridControl mit Daten basierend auf der Grid-Konfiguration
''' </summary>
Public Function FillGridData(gridControl As GridControl,
controlRow As DataRow,
columnDefinitions As DataTable,
validator As frmValidator
) As Boolean
Try
If gridControl Is Nothing OrElse controlRow Is Nothing Then
_GDLoaderLogger?.Warn("FillGridData: GridControl oder ControlRow ist Nothing")
Return False
End If
Dim controlGuid As Integer = If(IsDBNull(controlRow("GUID")), 0, CInt(controlRow("GUID")))
Dim controlType As String = If(IsDBNull(controlRow("TYP")), "TABLE", controlRow("TYP").ToString())
_GDLoaderLogger?.Debug($"FillGridData für Control GUID={controlGuid}, Name={gridControl.Name}, Type={controlType}")
' DataTable aus GridControl holen
Dim gridDataTable As DataTable = TryCast(gridControl.DataSource, DataTable)
If gridDataTable Is Nothing Then
_GDLoaderLogger?.Warn($"GridControl {gridControl.Name} hat keine DataTable als DataSource")
Return False
End If
' Spalten-Definitionen für dieses Grid holen
Dim filteredColumns As DataTable = GetFilteredColumnDefinitions(columnDefinitions, controlGuid)
If filteredColumns Is Nothing OrElse filteredColumns.Rows.Count = 0 Then
_GDLoaderLogger?.Warn($"Keine Spalten-Definitionen für Grid GUID={controlGuid}")
Return True
End If
_GDLoaderLogger?.Debug($"Grid {gridControl.Name}: {filteredColumns.Rows.Count} Spalten-Definitionen gefunden")
' INDEX_NAME holen
Dim sourceIndexName As String = If(IsDBNull(controlRow("INDEX_NAME")), String.Empty, controlRow("INDEX_NAME").ToString())
If String.IsNullOrEmpty(sourceIndexName) Then
_GDLoaderLogger?.Warn($"Kein INDEX_NAME für Grid {gridControl.Name} konfiguriert")
Return False
End If
' Wert aus Quelle holen
Dim valueFromSource As Object = validator?.GetVariableValuefromSource(sourceIndexName, 0, False)
If valueFromSource Is Nothing Then
_GDLoaderLogger?.Debug($"Kein Wert für INDEX_NAME [{sourceIndexName}] gefunden - Grid wird geleert")
gridDataTable.Rows.Clear()
Return True
End If
' Daten befüllen basierend auf Typ
Dim success As Boolean = False
Dim valueType As String = valueFromSource.GetType().ToString()
_GDLoaderLogger?.Debug($"ValueType: {valueType}, ControlType: {controlType}")
Select Case controlType
Case "TABLE"
success = FillTableGrid(gridDataTable, filteredColumns, valueFromSource, valueType, gridControl)
Case Else
success = FillSimpleGrid(gridDataTable, valueFromSource)
End Select
' Spaltenbreiten anwenden
If success Then
ApplyColumnWidths(gridControl, filteredColumns)
End If
Return success
Catch ex As Exception
_GDLoaderLogger?.Error($"Fehler in FillGridData: {ex.Message}", ex)
Return False
End Try
End Function
''' <summary>
''' Befüllt ein TABLE-Grid (komplexe Logik mit Vektor/IDB)
''' </summary>
Private Function FillTableGrid(gridDataTable As DataTable,
columnDefinitions As DataTable,
valueFromSource As Object,
valueType As String,
gridControl As GridControl) As Boolean
Try
gridDataTable.Rows.Clear()
' ========== NICHT-IDB-MODUS: Vektor-Array-Verarbeitung ==========
If Not IDB_ACTIVE Then
If valueType.Contains("System.Object") OrElse IsArrayOrEnumerable(valueFromSource) Then
_GDLoaderLogger?.Debug($"Nicht-IDB-Modus: Verarbeite Array/Enumerable mit {TryGetCount(valueFromSource)} Elementen")
For Each zeile As Object In DirectCast(valueFromSource, IEnumerable)
Dim colValuesFromSource As String() = Split(zeile.ToString(), PMDelimiter)
Dim newRow As DataRow = gridDataTable.NewRow()
For index = 0 To columnDefinitions.Rows.Count - 1
Try
Dim rawValue As String = If(index < colValuesFromSource.Length, colValuesFromSource(index), String.Empty)
Dim targetColumn As DataColumn = gridDataTable.Columns(index)
Dim colType As Type = targetColumn.DataType
' NULL-Handling
If String.IsNullOrWhiteSpace(rawValue) Then
If colType.IsValueType AndAlso Nullable.GetUnderlyingType(colType) Is Nothing Then
newRow.Item(index) = Activator.CreateInstance(colType)
Else
newRow.Item(index) = DBNull.Value
End If
Continue For
End If
' Typ-Konvertierung
Select Case Type.GetTypeCode(colType)
Case TypeCode.Int32
newRow.Item(index) = Integer.Parse(rawValue.Trim(), CultureInfo.InvariantCulture)
Case TypeCode.Int64
newRow.Item(index) = Long.Parse(rawValue.Trim(), CultureInfo.InvariantCulture)
Case TypeCode.Double
newRow.Item(index) = Double.Parse(rawValue.Trim().Replace(",", "."), CultureInfo.InvariantCulture)
Case TypeCode.Decimal
newRow.Item(index) = Decimal.Parse(rawValue.Trim().Replace(",", "."), CultureInfo.InvariantCulture)
Case TypeCode.Boolean
newRow.Item(index) = Boolean.Parse(rawValue.Trim())
Case TypeCode.DateTime
newRow.Item(index) = DateTime.Parse(rawValue.Trim(), CultureInfo.CurrentCulture)
Case Else
newRow.Item(index) = rawValue
End Select
Catch convEx As FormatException
_GDLoaderLogger?.Warn($"Konvertierungsfehler: ColIdx={index}, RawValue=[{If(index < colValuesFromSource.Length, colValuesFromSource(index), "N/A")}]")
If gridDataTable.Columns(index).DataType.IsValueType Then
newRow.Item(index) = Activator.CreateInstance(gridDataTable.Columns(index).DataType)
Else
newRow.Item(index) = DBNull.Value
End If
End Try
Next
gridDataTable.Rows.Add(newRow)
Next
Return True
End If
End If
' ========== IDB-MODUS: String oder DataTable ==========
If valueType = "System.String" Then
Return FillIDBFromString(gridDataTable, columnDefinitions, valueFromSource.ToString())
ElseIf valueType = "System.Data.DataTable" Then
Return FillIDBFromDataTable(gridDataTable, columnDefinitions, DirectCast(valueFromSource, DataTable), gridControl)
End If
_GDLoaderLogger?.Warn($"Nicht unterstützter ValueType: {valueType}")
Return False
Catch ex As Exception
_GDLoaderLogger?.Error($"Fehler in FillTableGrid: {ex.Message}", ex)
Return False
End Try
End Function
''' <summary>
''' IDB-Modus: String-Vektor verarbeiten
''' </summary>
Private Function FillIDBFromString(gridDataTable As DataTable, columnDefinitions As DataTable, vectorString As String) As Boolean
Try
Dim colValuesFromSource As String() = Split(vectorString, PMDelimiter)
If colValuesFromSource.Length > 8 Then
_GDLoaderLogger?.Warn("⚠️ Mehr als 8 Spalten in IDB-String - Maximum ist 8!")
End If
Dim rowData As New List(Of Object)
For index = 1 To Math.Min(colValuesFromSource.Length, columnDefinitions.Rows.Count)
Try
Dim rawValue As String = colValuesFromSource(index - 1)
Dim columnType = columnDefinitions.Rows(index - 1).Item("TYPE_COLUMN")
Dim convertedValue = ClassFormat.GetConvertedValue(rawValue, columnType)
rowData.Add(convertedValue)
Catch ex As Exception
_GDLoaderLogger?.Warn($"Fehler bei Spalte {index}: {ex.Message}")
rowData.Add(String.Empty)
End Try
Next
gridDataTable.Rows.Add(rowData.ToArray())
Return True
Catch ex As Exception
_GDLoaderLogger?.Error($"Fehler in FillIDBFromString: {ex.Message}", ex)
Return False
End Try
End Function
''' <summary>
''' IDB-Modus: DataTable verarbeiten
''' </summary>
Private Function FillIDBFromDataTable(gridDataTable As DataTable,
columnDefinitions As DataTable,
sourceDataTable As DataTable,
gridControl As GridControl) As Boolean
Try
Dim isReadOnly As Boolean = False
If gridControl.Tag IsNot Nothing AndAlso TypeOf gridControl.Tag Is DataRow Then
Dim controlRow As DataRow = DirectCast(gridControl.Tag, DataRow)
isReadOnly = If(IsDBNull(controlRow("READ_ONLY")), False, CBool(controlRow("READ_ONLY")))
End If
_GDLoaderLogger?.Debug($"IDB DataTable: {sourceDataTable.Rows.Count} Zeilen, ReadOnly={isReadOnly}")
' Spaltenanzahl-Prüfung
Dim configuredColumns As Integer = columnDefinitions.Rows.Count
Dim maxSourceColumns As Integer = 0
If sourceDataTable.Rows.Count > 0 Then
For Each row As DataRow In sourceDataTable.Rows
Dim parts As String() = Split(row.Item(0).ToString(), PMDelimiter)
If parts.Length > maxSourceColumns Then
maxSourceColumns = parts.Length
End If
Next
End If
If maxSourceColumns > configuredColumns Then
If Not isReadOnly Then
' Benutzer-Dialog
Dim title, question As String
Select Case USER_LANGUAGE
Case "de-DE"
title = "Spaltenkonfiguration prüfen"
question = $"Das Grid '{gridControl.Name}' enthält Zeilen mit bis zu {maxSourceColumns} Datenwerten," & vbCrLf &
$"aber nur {configuredColumns} Spalten sind konfiguriert." & vbCrLf &
$"Es werden nur die ersten {configuredColumns} Werte je Zeile angezeigt." & vbCrLf & vbCrLf &
"Möchten Sie trotzdem fortfahren?"
Case "fr-FR"
title = "Vérifier la configuration des colonnes"
question = $"La grille '{gridControl.Name}' contient des lignes avec jusqu'à {maxSourceColumns} valeurs," & vbCrLf &
$"mais seulement {configuredColumns} colonnes sont configurées."
Case Else
title = "Check column configuration"
question = $"The grid '{gridControl.Name}' contains rows with up to {maxSourceColumns} values," & vbCrLf &
$"but only {configuredColumns} columns are configured."
End Select
Dim result = MessageBox.Show(question, title, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
If result = DialogResult.No Then
_GDLoaderLogger?.Warn("Benutzer hat Fortfahren abgebrochen")
Return False
End If
Else
_GDLoaderLogger?.Info($"ReadOnly-Grid: Ignoriere überzählige Spalten ({maxSourceColumns} → {configuredColumns})")
End If
End If
' Zeilen befüllen
For Each sourceRow As DataRow In sourceDataTable.Rows
Try
Dim colValuesFromSource As String() = Split(sourceRow.Item(0).ToString(), PMDelimiter)
Dim rowData As New List(Of Object)
For index = 1 To configuredColumns
Try
Dim rawValue As String = If(index <= colValuesFromSource.Length, colValuesFromSource(index - 1), String.Empty)
Dim columnType = columnDefinitions.Rows(index - 1).Item("TYPE_COLUMN")
Dim convertedValue = ClassFormat.GetConvertedValue(rawValue, columnType)
rowData.Add(convertedValue)
Catch ex As Exception
_GDLoaderLogger?.Warn($"Fehler bei Spalte {index}: {ex.Message}")
rowData.Add(String.Empty)
End Try
Next
gridDataTable.Rows.Add(rowData.ToArray())
Catch ex As Exception
_GDLoaderLogger?.Warn($"Fehler beim Hinzufügen der Zeile: {ex.Message}")
End Try
Next
Return True
Catch ex As Exception
_GDLoaderLogger?.Error($"Fehler in FillIDBFromDataTable: {ex.Message}", ex)
Return False
End Try
End Function
''' <summary>
''' Befüllt ein einfaches Grid (nicht TABLE-Typ)
''' </summary>
Private Function FillSimpleGrid(gridDataTable As DataTable, valueFromSource As Object) As Boolean
Try
gridDataTable.Rows.Clear()
If IsArrayOrEnumerable(valueFromSource) Then
For Each obj As Object In DirectCast(valueFromSource, IEnumerable)
If obj IsNot Nothing Then
gridDataTable.Rows.Add(New String() {obj.ToString()})
End If
Next
End If
Return True
Catch ex As Exception
_GDLoaderLogger?.Error($"Fehler in FillSimpleGrid: {ex.Message}", ex)
Return False
End Try
End Function
''' <summary>
''' Wendet Spaltenbreiten aus der Konfiguration an
''' </summary>
Private Sub ApplyColumnWidths(gridControl As GridControl, columnDefinitions As DataTable)
Try
Dim gridView As GridView = TryCast(gridControl.MainView, GridView)
If gridView Is Nothing Then Return
gridView.OptionsView.ColumnAutoWidth = False
If columnDefinitions Is Nothing OrElse columnDefinitions.Rows.Count = 0 Then
_GDLoaderLogger?.Warn("ApplyColumnWidths: Keine Spalten-Definitionen vorhanden")
Return
End If
Dim columnsByName = gridView.Columns.Cast(Of GridColumn)().
ToDictionary(Function(c) c.FieldName, StringComparer.OrdinalIgnoreCase)
For Each row As DataRow In columnDefinitions.Rows
Try
If Not IsDBNull(row("SPALTENNAME")) AndAlso Not IsDBNull(row("SPALTENBREITE")) Then
Dim columnName As String = row("SPALTENNAME").ToString()
Dim column As GridColumn = Nothing
If columnsByName.TryGetValue(columnName, column) Then
column.Width = CInt(row("SPALTENBREITE"))
_GDLoaderLogger?.Debug($"Spaltenbreite gesetzt: {columnName} = {row("SPALTENBREITE")}")
End If
End If
Catch ex As Exception
_GDLoaderLogger?.Warn($"Fehler beim Setzen der Spaltenbreite für Zeile: {ex.Message}")
End Try
Next
Catch ex As Exception
_GDLoaderLogger?.Error($"Fehler in ApplyColumnWidths: {ex.Message}", ex)
End Try
End Sub
''' <summary>
''' Filtert Spalten-Definitionen für ein bestimmtes Grid
''' </summary>
Private Function GetFilteredColumnDefinitions(columnDefinitions As DataTable, controlGuid As Integer) As DataTable
If columnDefinitions Is Nothing Then Return Nothing
Try
Dim filteredRows = columnDefinitions.AsEnumerable().
Where(Function(row) Not IsDBNull(row("CONTROL_ID")) AndAlso CInt(row("CONTROL_ID")) = controlGuid).
ToList()
If filteredRows.Count = 0 Then Return Nothing
Dim resultTable As DataTable = columnDefinitions.Clone()
For Each row In filteredRows
resultTable.ImportRow(row)
Next
Return resultTable
Catch ex As Exception
_GDLoaderLogger?.Error($"Fehler in GetFilteredColumnDefinitions: {ex.Message}", ex)
Return Nothing
End Try
End Function
''' <summary>
''' Prüft ob ein Objekt Array oder IEnumerable ist
''' </summary>
Private Function IsArrayOrEnumerable(obj As Object) As Boolean
If obj Is Nothing Then Return False
Return TypeOf obj Is IEnumerable AndAlso Not TypeOf obj Is String
End Function
''' <summary>
''' Versucht die Anzahl der Elemente zu ermitteln
''' </summary>
Private Function TryGetCount(obj As Object) As Integer
Try
If TypeOf obj Is ICollection Then
Return DirectCast(obj, ICollection).Count
End If
Return DirectCast(obj, IEnumerable).Cast(Of Object)().Count()
Catch
Return 0
End Try
End Function
End Class

View File

@@ -528,7 +528,7 @@ Public Class ClassInit
oStep = "TBPM_CHART"
oSql = "SELECT * FROM TBPM_CHART"
oSql = "SELECT * FROM TBPM_CHART WITH (NOLOCK)"
BASEDATA_DT_CHARTS = DatabaseFallback.GetDatatable("TBPM_CHART", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStep = "TBDD_GUI_LANGUAGE"

View File

@@ -200,7 +200,10 @@ Public Class RefreshHelper
Private Sub LoadVisibleIndex()
Try
_View.MakeRowVisible(_View.FocusedRowHandle, True)
_View.TopRowIndex = _View.GetVisibleIndex(_View.FocusedRowHandle) - _VisibleRowIndex
If _View.FocusedRowHandle <> -1 Then
_View.TopRowIndex = _View.GetVisibleIndex(_View.FocusedRowHandle) - _VisibleRowIndex
End If
Catch ex As Exception
_Logger.Error(ex)
End Try

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -29,6 +29,9 @@ Partial Public Class DD_DMSLiteDataSet
End Class
Namespace DD_DMSLiteDataSetTableAdapters
Partial Public Class VWPM_CHART_INVOICE_MONITORTableAdapter
End Class
Partial Public Class TBPM_PROFILETableAdapter
Private Sub TBPM_PROFILETableAdapter_Disposed(sender As Object, e As EventArgs) Handles Me.Disposed
@@ -41,3 +44,13 @@ Namespace DD_DMSLiteDataSetTableAdapters
Partial Public Class TBPM_PROFILE_INDEXETableAdapter
End Class
End Namespace
Namespace DD_DMSLiteDataSetTableAdapters
Partial Public Class VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter
End Class
End Namespace
Namespace DD_DMSLiteDataSetTableAdapters
Partial Public Class VWPM_CHART_TOP5TableAdapter
End Class
End Namespace

View File

@@ -968,7 +968,7 @@ WHERE (GUID = @Original_GUID)</CommandText>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>INSERT INTO TBPM_PROFILE_CONTROLS
(PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, INDEX_NAME, TYP, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_UEBERPRUEFUNG,
HEIGHT, WIDTH, FONT_STYLE, FONT_SIZE, FONT_FAMILY, FONT_COLOR, READ_ONLY, LOAD_IDX_VALUE, DEFAULT_VALUE, MULTISELECT, VKT_ADD_ITEM, VKT_PREVENT_MULTIPLE_VALUES, REGEX_MATCH,
@@ -976,43 +976,43 @@ WHERE (GUID = @Original_GUID)</CommandText>
VALUES (@PROFIL_ID,@NAME,@CTRL_TYPE,@CTRL_TEXT,@X_LOC,@Y_LOC,@ADDED_WHO,@ADDED_WHEN,@CHANGED_WHO,@CHANGED_WHEN,@INDEX_NAME,@TYP,@VALIDATION,@CHOICE_LIST,@CONNECTION_ID,@SQL_UEBERPRUEFUNG,@HEIGHT,@WIDTH,@FONT_STYLE,@FONT_SIZE,@FONT_FAMILY,@FONT_COLOR,@READ_ONLY,@LOAD_IDX_VALUE,@DEFAULT_VALUE,@MULTISELECT,@VKT_ADD_ITEM,@VKT_PREVENT_MULTIPLE_VALUES,@REGEX_MATCH,@REGEX_MESSAGE_DE,@REGEX_MESSAGE_EN,@IMAGE_CONTROL,@SQL2,@SQL_ENABLE,@SAVE_CHANGE_ON_ENABLED,@FORMAT_STRING,@TEXT_ALIGNMENT);
SELECT GUID, PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, INDEX_NAME, TYP, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_UEBERPRUEFUNG, HEIGHT, WIDTH, FONT_STYLE, FONT_SIZE, FONT_FAMILY, FONT_COLOR, READ_ONLY, LOAD_IDX_VALUE, DEFAULT_VALUE, MULTISELECT, VKT_ADD_ITEM, VKT_PREVENT_MULTIPLE_VALUES, REGEX_MATCH, REGEX_MESSAGE_DE, REGEX_MESSAGE_EN FROM TBPM_PROFILE_CONTROLS WHERE (GUID = SCOPE_IDENTITY()) ORDER BY Y_LOC, X_LOC</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="PROFIL_ID" ColumnName="PROFIL_ID" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@PROFIL_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="PROFIL_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="NAME" ColumnName="NAME" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="CTRL_TYPE" ColumnName="CTRL_TYPE" DataSourceName="" DataTypeServer="varchar(10)" DbType="AnsiString" Direction="Input" ParameterName="@CTRL_TYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="10" SourceColumn="CTRL_TYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="CTRL_TEXT" ColumnName="CTRL_TEXT" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@CTRL_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="CTRL_TEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="X_LOC" ColumnName="X_LOC" DataSourceName="" DataTypeServer="float" DbType="Double" Direction="Input" ParameterName="@X_LOC" Precision="0" ProviderType="Float" Scale="0" Size="8" SourceColumn="X_LOC" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Y_LOC" ColumnName="Y_LOC" DataSourceName="" DataTypeServer="float" DbType="Double" Direction="Input" ParameterName="@Y_LOC" Precision="0" ProviderType="Float" Scale="0" Size="8" SourceColumn="Y_LOC" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ADDED_WHO" ColumnName="ADDED_WHO" DataSourceName="" DataTypeServer="varchar(30)" DbType="AnsiString" Direction="Input" ParameterName="@ADDED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="30" SourceColumn="ADDED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ADDED_WHEN" ColumnName="ADDED_WHEN" DataSourceName="" DataTypeServer="datetime" DbType="DateTime" Direction="Input" ParameterName="@ADDED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="8" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHANGED_WHO" ColumnName="CHANGED_WHO" DataSourceName="" DataTypeServer="varchar(30)" DbType="AnsiString" Direction="Input" ParameterName="@CHANGED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="30" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHANGED_WHEN" ColumnName="CHANGED_WHEN" DataSourceName="" DataTypeServer="datetime" DbType="DateTime" Direction="Input" ParameterName="@CHANGED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="8" SourceColumn="CHANGED_WHEN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="INDEX_NAME" ColumnName="INDEX_NAME" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@INDEX_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="INDEX_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="TYP" ColumnName="TYP" DataSourceName="" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@TYP" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="TYP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VALIDATION" ColumnName="VALIDATION" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VALIDATION" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VALIDATION" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHOICE_LIST" ColumnName="CHOICE_LIST" DataSourceName="" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@CHOICE_LIST" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="CHOICE_LIST" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CONNECTION_ID" ColumnName="CONNECTION_ID" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@CONNECTION_ID" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="CONNECTION_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL_UEBERPRUEFUNG" ColumnName="SQL_UEBERPRUEFUNG" DataSourceName="" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL_UEBERPRUEFUNG" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL_UEBERPRUEFUNG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="HEIGHT" ColumnName="HEIGHT" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@HEIGHT" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="HEIGHT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WIDTH" ColumnName="WIDTH" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@WIDTH" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="WIDTH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_STYLE" ColumnName="FONT_STYLE" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@FONT_STYLE" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="FONT_STYLE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_SIZE" ColumnName="FONT_SIZE" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@FONT_SIZE" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="FONT_SIZE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_FAMILY" ColumnName="FONT_FAMILY" DataSourceName="" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@FONT_FAMILY" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="FONT_FAMILY" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_COLOR" ColumnName="FONT_COLOR" DataSourceName="" DataTypeServer="bigint" DbType="Int64" Direction="Input" ParameterName="@FONT_COLOR" Precision="0" ProviderType="BigInt" Scale="0" Size="8" SourceColumn="FONT_COLOR" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="READ_ONLY" ColumnName="READ_ONLY" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@READ_ONLY" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="READ_ONLY" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="LOAD_IDX_VALUE" ColumnName="LOAD_IDX_VALUE" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@LOAD_IDX_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="LOAD_IDX_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="DEFAULT_VALUE" ColumnName="DEFAULT_VALUE" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@DEFAULT_VALUE" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="DEFAULT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="MULTISELECT" ColumnName="MULTISELECT" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@MULTISELECT" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="MULTISELECT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VKT_ADD_ITEM" ColumnName="VKT_ADD_ITEM" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VKT_ADD_ITEM" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VKT_ADD_ITEM" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VKT_PREVENT_MULTIPLE_VALUES" ColumnName="VKT_PREVENT_MULTIPLE_VALUES" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VKT_PREVENT_MULTIPLE_VALUES" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VKT_PREVENT_MULTIPLE_VALUES" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="REGEX_MATCH" ColumnName="REGEX_MATCH" DataSourceName="" DataTypeServer="nvarchar(1000)" DbType="String" Direction="Input" ParameterName="@REGEX_MATCH" Precision="0" ProviderType="NVarChar" Scale="0" Size="1000" SourceColumn="REGEX_MATCH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="REGEX_MESSAGE_DE" ColumnName="REGEX_MESSAGE_DE" DataSourceName="" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@REGEX_MESSAGE_DE" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="REGEX_MESSAGE_DE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="REGEX_MESSAGE_EN" ColumnName="REGEX_MESSAGE_EN" DataSourceName="" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@REGEX_MESSAGE_EN" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="REGEX_MESSAGE_EN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="IMAGE_CONTROL" ColumnName="IMAGE_CONTROL" DataSourceName="" DataTypeServer="varbinary(MAX)" DbType="Binary" Direction="Input" ParameterName="@IMAGE_CONTROL" Precision="0" ProviderType="VarBinary" Scale="0" Size="2147483647" SourceColumn="IMAGE_CONTROL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL2" ColumnName="SQL2" DataSourceName="" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL2" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL2" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL_ENABLE" ColumnName="SQL_ENABLE" DataSourceName="" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL_ENABLE" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL_ENABLE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="SAVE_CHANGE_ON_ENABLED" ColumnName="SAVE_CHANGE_ON_ENABLED" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@SAVE_CHANGE_ON_ENABLED" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="SAVE_CHANGE_ON_ENABLED" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FORMAT_STRING" ColumnName="FORMAT_STRING" DataSourceName="" DataTypeServer="varchar(200)" DbType="AnsiString" Direction="Input" ParameterName="@FORMAT_STRING" Precision="0" ProviderType="VarChar" Scale="0" Size="200" SourceColumn="FORMAT_STRING" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="TEXT_ALIGNMENT" ColumnName="TEXT_ALIGNMENT" DataSourceName="" DataTypeServer="nvarchar(20)" DbType="String" Direction="Input" ParameterName="@TEXT_ALIGNMENT" Precision="0" ProviderType="NVarChar" Scale="0" Size="20" SourceColumn="TEXT_ALIGNMENT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PROFIL_ID" ColumnName="PROFIL_ID" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@PROFIL_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="PROFIL_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="NAME" ColumnName="NAME" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="CTRL_TYPE" ColumnName="CTRL_TYPE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(10)" DbType="AnsiString" Direction="Input" ParameterName="@CTRL_TYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="10" SourceColumn="CTRL_TYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="CTRL_TEXT" ColumnName="CTRL_TEXT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@CTRL_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="CTRL_TEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="X_LOC" ColumnName="X_LOC" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="float" DbType="Double" Direction="Input" ParameterName="@X_LOC" Precision="0" ProviderType="Float" Scale="0" Size="8" SourceColumn="X_LOC" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Y_LOC" ColumnName="Y_LOC" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="float" DbType="Double" Direction="Input" ParameterName="@Y_LOC" Precision="0" ProviderType="Float" Scale="0" Size="8" SourceColumn="Y_LOC" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ADDED_WHO" ColumnName="ADDED_WHO" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(30)" DbType="AnsiString" Direction="Input" ParameterName="@ADDED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="30" SourceColumn="ADDED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ADDED_WHEN" ColumnName="ADDED_WHEN" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="datetime" DbType="DateTime" Direction="Input" ParameterName="@ADDED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="8" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHANGED_WHO" ColumnName="CHANGED_WHO" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(30)" DbType="AnsiString" Direction="Input" ParameterName="@CHANGED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="30" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHANGED_WHEN" ColumnName="CHANGED_WHEN" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="datetime" DbType="DateTime" Direction="Input" ParameterName="@CHANGED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="8" SourceColumn="CHANGED_WHEN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="INDEX_NAME" ColumnName="INDEX_NAME" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@INDEX_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="INDEX_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="TYP" ColumnName="TYP" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@TYP" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="TYP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VALIDATION" ColumnName="VALIDATION" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VALIDATION" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VALIDATION" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHOICE_LIST" ColumnName="CHOICE_LIST" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@CHOICE_LIST" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="CHOICE_LIST" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CONNECTION_ID" ColumnName="CONNECTION_ID" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@CONNECTION_ID" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="CONNECTION_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL_UEBERPRUEFUNG" ColumnName="SQL_UEBERPRUEFUNG" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL_UEBERPRUEFUNG" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL_UEBERPRUEFUNG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="HEIGHT" ColumnName="HEIGHT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@HEIGHT" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="HEIGHT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WIDTH" ColumnName="WIDTH" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@WIDTH" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="WIDTH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_STYLE" ColumnName="FONT_STYLE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@FONT_STYLE" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="FONT_STYLE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_SIZE" ColumnName="FONT_SIZE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@FONT_SIZE" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="FONT_SIZE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_FAMILY" ColumnName="FONT_FAMILY" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@FONT_FAMILY" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="FONT_FAMILY" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_COLOR" ColumnName="FONT_COLOR" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bigint" DbType="Int64" Direction="Input" ParameterName="@FONT_COLOR" Precision="0" ProviderType="BigInt" Scale="0" Size="8" SourceColumn="FONT_COLOR" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="READ_ONLY" ColumnName="READ_ONLY" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@READ_ONLY" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="READ_ONLY" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="LOAD_IDX_VALUE" ColumnName="LOAD_IDX_VALUE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@LOAD_IDX_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="LOAD_IDX_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="DEFAULT_VALUE" ColumnName="DEFAULT_VALUE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@DEFAULT_VALUE" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="DEFAULT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="MULTISELECT" ColumnName="MULTISELECT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@MULTISELECT" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="MULTISELECT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VKT_ADD_ITEM" ColumnName="VKT_ADD_ITEM" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VKT_ADD_ITEM" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VKT_ADD_ITEM" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VKT_PREVENT_MULTIPLE_VALUES" ColumnName="VKT_PREVENT_MULTIPLE_VALUES" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VKT_PREVENT_MULTIPLE_VALUES" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VKT_PREVENT_MULTIPLE_VALUES" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="REGEX_MATCH" ColumnName="REGEX_MATCH" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(1000)" DbType="String" Direction="Input" ParameterName="@REGEX_MATCH" Precision="0" ProviderType="NVarChar" Scale="0" Size="1000" SourceColumn="REGEX_MATCH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="REGEX_MESSAGE_DE" ColumnName="REGEX_MESSAGE_DE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@REGEX_MESSAGE_DE" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="REGEX_MESSAGE_DE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="REGEX_MESSAGE_EN" ColumnName="REGEX_MESSAGE_EN" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@REGEX_MESSAGE_EN" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="REGEX_MESSAGE_EN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="IMAGE_CONTROL" ColumnName="IMAGE_CONTROL" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varbinary(MAX)" DbType="Binary" Direction="Input" ParameterName="@IMAGE_CONTROL" Precision="0" ProviderType="VarBinary" Scale="0" Size="2147483647" SourceColumn="IMAGE_CONTROL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL2" ColumnName="SQL2" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL2" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL2" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL_ENABLE" ColumnName="SQL_ENABLE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL_ENABLE" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL_ENABLE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="SAVE_CHANGE_ON_ENABLED" ColumnName="SAVE_CHANGE_ON_ENABLED" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@SAVE_CHANGE_ON_ENABLED" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="SAVE_CHANGE_ON_ENABLED" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FORMAT_STRING" ColumnName="FORMAT_STRING" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(200)" DbType="AnsiString" Direction="Input" ParameterName="@FORMAT_STRING" Precision="0" ProviderType="VarChar" Scale="0" Size="200" SourceColumn="FORMAT_STRING" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="TEXT_ALIGNMENT" ColumnName="TEXT_ALIGNMENT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(20)" DbType="String" Direction="Input" ParameterName="@TEXT_ALIGNMENT" Precision="0" ProviderType="NVarChar" Scale="0" Size="20" SourceColumn="TEXT_ALIGNMENT" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
@@ -1021,7 +1021,7 @@ SELECT GUID, PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, ADD
<CommandText>SELECT GUID, PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, INDEX_NAME, TYP, VALIDATION, CHOICE_LIST, CONNECTION_ID,
SQL_UEBERPRUEFUNG, HEIGHT, WIDTH, FONT_STYLE, FONT_SIZE, FONT_FAMILY, FONT_COLOR, READ_ONLY, LOAD_IDX_VALUE, DEFAULT_VALUE, MULTISELECT, VKT_ADD_ITEM, VKT_PREVENT_MULTIPLE_VALUES,
REGEX_MATCH, REGEX_MESSAGE_DE, REGEX_MESSAGE_EN, IMAGE_CONTROL, SQL2, SQL_ENABLE, SET_CONTROL_DATA, SQL_ENABLE_ON_LOAD, SQL_ENABLE_ON_LOAD_CONID, CONTROL_ACTIVE,
TABLE_ORDER_COLUMN, SAVE_CHANGE_ON_ENABLED, FORMAT_STRING, TEXT_ALIGNMENT, DISPLAY_IN_SEPERATE_FORM
TABLE_ORDER_COLUMN, SAVE_CHANGE_ON_ENABLED, FORMAT_STRING, TEXT_ALIGNMENT
FROM TBPM_PROFILE_CONTROLS
WHERE (GUID = @guid)
ORDER BY Y_LOC, X_LOC</CommandText>
@@ -1031,7 +1031,7 @@ ORDER BY Y_LOC, X_LOC</CommandText>
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>UPDATE TBPM_PROFILE_CONTROLS
SET PROFIL_ID = @PROFIL_ID, NAME = @NAME, CTRL_TYPE = @CTRL_TYPE, CTRL_TEXT = @CTRL_TEXT, X_LOC = @X_LOC, Y_LOC = @Y_LOC, CHANGED_WHO = @CHANGED_WHO, INDEX_NAME = @INDEX_NAME,
TYP = @TYP, VALIDATION = @VALIDATION, CHOICE_LIST = @CHOICE_LIST, CONNECTION_ID = @CONNECTION_ID, SQL_UEBERPRUEFUNG = @SQL_UEBERPRUEFUNG, HEIGHT = @HEIGHT, WIDTH = @WIDTH,
@@ -1042,42 +1042,42 @@ SET PROFIL_ID = @PROFIL_ID, NAME = @NAME, CTRL_TYPE = @CTRL_TYPE,
WHERE (GUID = @Original_GUID);
SELECT GUID, PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, INDEX_NAME, TYP, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_UEBERPRUEFUNG, HEIGHT, WIDTH, FONT_STYLE, FONT_SIZE, FONT_FAMILY, FONT_COLOR, READ_ONLY, LOAD_IDX_VALUE, DEFAULT_VALUE, MULTISELECT, VKT_ADD_ITEM, VKT_PREVENT_MULTIPLE_VALUES, REGEX_MATCH, REGEX_MESSAGE_DE, REGEX_MESSAGE_EN FROM TBPM_PROFILE_CONTROLS WHERE (GUID = @GUID) ORDER BY Y_LOC, X_LOC</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="PROFIL_ID" ColumnName="PROFIL_ID" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@PROFIL_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="PROFIL_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="NAME" ColumnName="NAME" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="CTRL_TYPE" ColumnName="CTRL_TYPE" DataSourceName="" DataTypeServer="varchar(10)" DbType="AnsiString" Direction="Input" ParameterName="@CTRL_TYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="10" SourceColumn="CTRL_TYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="CTRL_TEXT" ColumnName="CTRL_TEXT" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@CTRL_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="CTRL_TEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="X_LOC" ColumnName="X_LOC" DataSourceName="" DataTypeServer="float" DbType="Double" Direction="Input" ParameterName="@X_LOC" Precision="0" ProviderType="Float" Scale="0" Size="8" SourceColumn="X_LOC" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Y_LOC" ColumnName="Y_LOC" DataSourceName="" DataTypeServer="float" DbType="Double" Direction="Input" ParameterName="@Y_LOC" Precision="0" ProviderType="Float" Scale="0" Size="8" SourceColumn="Y_LOC" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHANGED_WHO" ColumnName="CHANGED_WHO" DataSourceName="" DataTypeServer="varchar(30)" DbType="AnsiString" Direction="Input" ParameterName="@CHANGED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="30" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="INDEX_NAME" ColumnName="INDEX_NAME" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@INDEX_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="INDEX_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="TYP" ColumnName="TYP" DataSourceName="" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@TYP" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="TYP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VALIDATION" ColumnName="VALIDATION" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VALIDATION" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VALIDATION" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHOICE_LIST" ColumnName="CHOICE_LIST" DataSourceName="" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@CHOICE_LIST" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="CHOICE_LIST" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CONNECTION_ID" ColumnName="CONNECTION_ID" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@CONNECTION_ID" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="CONNECTION_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL_UEBERPRUEFUNG" ColumnName="SQL_UEBERPRUEFUNG" DataSourceName="" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL_UEBERPRUEFUNG" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL_UEBERPRUEFUNG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="HEIGHT" ColumnName="HEIGHT" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@HEIGHT" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="HEIGHT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WIDTH" ColumnName="WIDTH" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@WIDTH" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="WIDTH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_STYLE" ColumnName="FONT_STYLE" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@FONT_STYLE" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="FONT_STYLE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_SIZE" ColumnName="FONT_SIZE" DataSourceName="" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@FONT_SIZE" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="FONT_SIZE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_FAMILY" ColumnName="FONT_FAMILY" DataSourceName="" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@FONT_FAMILY" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="FONT_FAMILY" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_COLOR" ColumnName="FONT_COLOR" DataSourceName="" DataTypeServer="bigint" DbType="Int64" Direction="Input" ParameterName="@FONT_COLOR" Precision="0" ProviderType="BigInt" Scale="0" Size="8" SourceColumn="FONT_COLOR" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="READ_ONLY" ColumnName="READ_ONLY" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@READ_ONLY" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="READ_ONLY" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="LOAD_IDX_VALUE" ColumnName="LOAD_IDX_VALUE" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@LOAD_IDX_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="LOAD_IDX_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="DEFAULT_VALUE" ColumnName="DEFAULT_VALUE" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@DEFAULT_VALUE" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="DEFAULT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="MULTISELECT" ColumnName="MULTISELECT" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@MULTISELECT" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="MULTISELECT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VKT_ADD_ITEM" ColumnName="VKT_ADD_ITEM" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VKT_ADD_ITEM" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VKT_ADD_ITEM" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VKT_PREVENT_MULTIPLE_VALUES" ColumnName="VKT_PREVENT_MULTIPLE_VALUES" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VKT_PREVENT_MULTIPLE_VALUES" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VKT_PREVENT_MULTIPLE_VALUES" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="REGEX_MATCH" ColumnName="REGEX_MATCH" DataSourceName="" DataTypeServer="nvarchar(1000)" DbType="String" Direction="Input" ParameterName="@REGEX_MATCH" Precision="0" ProviderType="NVarChar" Scale="0" Size="1000" SourceColumn="REGEX_MATCH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="REGEX_MESSAGE_DE" ColumnName="REGEX_MESSAGE_DE" DataSourceName="" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@REGEX_MESSAGE_DE" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="REGEX_MESSAGE_DE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="REGEX_MESSAGE_EN" ColumnName="REGEX_MESSAGE_EN" DataSourceName="" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@REGEX_MESSAGE_EN" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="REGEX_MESSAGE_EN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="IMAGE_CONTROL" ColumnName="IMAGE_CONTROL" DataSourceName="" DataTypeServer="varbinary(MAX)" DbType="Binary" Direction="Input" ParameterName="@IMAGE_CONTROL" Precision="0" ProviderType="VarBinary" Scale="0" Size="2147483647" SourceColumn="IMAGE_CONTROL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL2" ColumnName="SQL2" DataSourceName="" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL2" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL2" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL_ENABLE" ColumnName="SQL_ENABLE" DataSourceName="" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL_ENABLE" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL_ENABLE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="SAVE_CHANGE_ON_ENABLED" ColumnName="SAVE_CHANGE_ON_ENABLED" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@SAVE_CHANGE_ON_ENABLED" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="SAVE_CHANGE_ON_ENABLED" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FORMAT_STRING" ColumnName="FORMAT_STRING" DataSourceName="" DataTypeServer="varchar(200)" DbType="AnsiString" Direction="Input" ParameterName="@FORMAT_STRING" Precision="0" ProviderType="VarChar" Scale="0" Size="200" SourceColumn="FORMAT_STRING" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="TEXT_ALIGNMENT" ColumnName="TEXT_ALIGNMENT" DataSourceName="" DataTypeServer="nvarchar(20)" DbType="String" Direction="Input" ParameterName="@TEXT_ALIGNMENT" Precision="0" ProviderType="NVarChar" Scale="0" Size="20" SourceColumn="TEXT_ALIGNMENT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="GUID" ColumnName="GUID" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="PROFIL_ID" ColumnName="PROFIL_ID" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@PROFIL_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="PROFIL_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="NAME" ColumnName="NAME" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="CTRL_TYPE" ColumnName="CTRL_TYPE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(10)" DbType="AnsiString" Direction="Input" ParameterName="@CTRL_TYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="10" SourceColumn="CTRL_TYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="CTRL_TEXT" ColumnName="CTRL_TEXT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@CTRL_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="CTRL_TEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="X_LOC" ColumnName="X_LOC" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="float" DbType="Double" Direction="Input" ParameterName="@X_LOC" Precision="0" ProviderType="Float" Scale="0" Size="8" SourceColumn="X_LOC" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Y_LOC" ColumnName="Y_LOC" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="float" DbType="Double" Direction="Input" ParameterName="@Y_LOC" Precision="0" ProviderType="Float" Scale="0" Size="8" SourceColumn="Y_LOC" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHANGED_WHO" ColumnName="CHANGED_WHO" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(30)" DbType="AnsiString" Direction="Input" ParameterName="@CHANGED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="30" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="INDEX_NAME" ColumnName="INDEX_NAME" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@INDEX_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="INDEX_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="TYP" ColumnName="TYP" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@TYP" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="TYP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VALIDATION" ColumnName="VALIDATION" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VALIDATION" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VALIDATION" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHOICE_LIST" ColumnName="CHOICE_LIST" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@CHOICE_LIST" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="CHOICE_LIST" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CONNECTION_ID" ColumnName="CONNECTION_ID" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@CONNECTION_ID" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="CONNECTION_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL_UEBERPRUEFUNG" ColumnName="SQL_UEBERPRUEFUNG" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL_UEBERPRUEFUNG" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL_UEBERPRUEFUNG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="HEIGHT" ColumnName="HEIGHT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@HEIGHT" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="HEIGHT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WIDTH" ColumnName="WIDTH" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@WIDTH" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="WIDTH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_STYLE" ColumnName="FONT_STYLE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@FONT_STYLE" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="FONT_STYLE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_SIZE" ColumnName="FONT_SIZE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@FONT_SIZE" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="FONT_SIZE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_FAMILY" ColumnName="FONT_FAMILY" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@FONT_FAMILY" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="FONT_FAMILY" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FONT_COLOR" ColumnName="FONT_COLOR" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bigint" DbType="Int64" Direction="Input" ParameterName="@FONT_COLOR" Precision="0" ProviderType="BigInt" Scale="0" Size="8" SourceColumn="FONT_COLOR" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="READ_ONLY" ColumnName="READ_ONLY" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@READ_ONLY" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="READ_ONLY" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="LOAD_IDX_VALUE" ColumnName="LOAD_IDX_VALUE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@LOAD_IDX_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="LOAD_IDX_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="DEFAULT_VALUE" ColumnName="DEFAULT_VALUE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@DEFAULT_VALUE" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="DEFAULT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="MULTISELECT" ColumnName="MULTISELECT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@MULTISELECT" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="MULTISELECT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VKT_ADD_ITEM" ColumnName="VKT_ADD_ITEM" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VKT_ADD_ITEM" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VKT_ADD_ITEM" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="VKT_PREVENT_MULTIPLE_VALUES" ColumnName="VKT_PREVENT_MULTIPLE_VALUES" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@VKT_PREVENT_MULTIPLE_VALUES" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="VKT_PREVENT_MULTIPLE_VALUES" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="REGEX_MATCH" ColumnName="REGEX_MATCH" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(1000)" DbType="String" Direction="Input" ParameterName="@REGEX_MATCH" Precision="0" ProviderType="NVarChar" Scale="0" Size="1000" SourceColumn="REGEX_MATCH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="REGEX_MESSAGE_DE" ColumnName="REGEX_MESSAGE_DE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@REGEX_MESSAGE_DE" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="REGEX_MESSAGE_DE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="REGEX_MESSAGE_EN" ColumnName="REGEX_MESSAGE_EN" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@REGEX_MESSAGE_EN" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="REGEX_MESSAGE_EN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="IMAGE_CONTROL" ColumnName="IMAGE_CONTROL" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varbinary(MAX)" DbType="Binary" Direction="Input" ParameterName="@IMAGE_CONTROL" Precision="0" ProviderType="VarBinary" Scale="0" Size="2147483647" SourceColumn="IMAGE_CONTROL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL2" ColumnName="SQL2" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL2" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL2" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SQL_ENABLE" ColumnName="SQL_ENABLE" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(MAX)" DbType="String" Direction="Input" ParameterName="@SQL_ENABLE" Precision="0" ProviderType="NVarChar" Scale="0" Size="2147483647" SourceColumn="SQL_ENABLE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="SAVE_CHANGE_ON_ENABLED" ColumnName="SAVE_CHANGE_ON_ENABLED" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@SAVE_CHANGE_ON_ENABLED" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="SAVE_CHANGE_ON_ENABLED" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="FORMAT_STRING" ColumnName="FORMAT_STRING" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(200)" DbType="AnsiString" Direction="Input" ParameterName="@FORMAT_STRING" Precision="0" ProviderType="VarChar" Scale="0" Size="200" SourceColumn="FORMAT_STRING" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="TEXT_ALIGNMENT" ColumnName="TEXT_ALIGNMENT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(20)" DbType="String" Direction="Input" ParameterName="@TEXT_ALIGNMENT" Precision="0" ProviderType="NVarChar" Scale="0" Size="20" SourceColumn="TEXT_ALIGNMENT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</UpdateCommand>
@@ -1127,7 +1127,6 @@ SELECT GUID, PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, ADD
<Mapping SourceColumn="SAVE_CHANGE_ON_ENABLED" DataSetColumn="SAVE_CHANGE_ON_ENABLED" />
<Mapping SourceColumn="FORMAT_STRING" DataSetColumn="FORMAT_STRING" />
<Mapping SourceColumn="TEXT_ALIGNMENT" DataSetColumn="TEXT_ALIGNMENT" />
<Mapping SourceColumn="DISPLAY_IN_SEPERATE_FORM" DataSetColumn="DISPLAY_IN_SEPERATE_FORM" />
</Mappings>
<Sources>
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectType="Unknown" GenerateShortCommands="true" GeneratorSourceName="cmdControlExists" Modifier="Public" Name="cmdControlExists" QueryType="Scalar" ScalarCallRetval="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy" UserSourceName="cmdControlExists">
@@ -1237,8 +1236,8 @@ VALUES (@PROFIL_ID,@NAME,@CTRL_TYPE,@CTRL_TEXT,@X_LOC,@Y_LOC,@ADDED_WHO,@
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>INSERT INTO TBPM_PROFILE_CONTROLS
(PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, HEIGHT, WIDTH, TEXT_ALIGNMENT, DISPLAY_IN_SEPERATE_FORM)
VALUES (@PROFIL_ID,@NAME,@CTRL_TYPE,@CTRL_TEXT,@X_LOC,@Y_LOC,@ADDED_WHO,@HEIGHT,@Width,@TEXT_ALIGNMENT,@DISPLAY_IN_SEPERATE_FORM)</CommandText>
(PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, HEIGHT, WIDTH, TEXT_ALIGNMENT)
VALUES (@PROFIL_ID,@NAME,@CTRL_TYPE,@CTRL_TEXT,@X_LOC,@Y_LOC,@ADDED_WHO,@HEIGHT,@Width,@TEXT_ALIGNMENT)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="PROFIL_ID" ColumnName="PROFIL_ID" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@PROFIL_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="PROFIL_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="NAME" ColumnName="NAME" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -1250,7 +1249,6 @@ VALUES (@PROFIL_ID,@NAME,@CTRL_TYPE,@CTRL_TEXT,@X_LOC,@Y_LOC,@ADDED_WHO,@
<Parameter AllowDbNull="false" AutogeneratedName="HEIGHT" ColumnName="HEIGHT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@HEIGHT" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="HEIGHT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Width" ColumnName="WIDTH" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="smallint" DbType="Int16" Direction="Input" ParameterName="@Width" Precision="0" ProviderType="SmallInt" Scale="0" Size="2" SourceColumn="WIDTH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="TEXT_ALIGNMENT" ColumnName="TEXT_ALIGNMENT" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="nvarchar(20)" DbType="String" Direction="Input" ParameterName="@TEXT_ALIGNMENT" Precision="0" ProviderType="NVarChar" Scale="0" Size="20" SourceColumn="TEXT_ALIGNMENT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="DISPLAY_IN_SEPERATE_FORM" ColumnName="DISPLAY_IN_SEPERATE_FORM" DataSourceName="DD_ECM.dbo.TBPM_PROFILE_CONTROLS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@DISPLAY_IN_SEPERATE_FORM" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="DISPLAY_IN_SEPERATE_FORM" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
@@ -1275,8 +1273,7 @@ WHERE (GUID = @Original_GUID);</CommandText>
<CommandText>SELECT dbo.FNPM_LANGUAGE_CONTROL_TEXT(NAME, @USER_LANGUAGE, CTRL_TYPE, CTRL_TEXT) AS CTRL_CAPTION_LANG, ADDED_WHEN, ADDED_WHO, CHANGED_WHEN, CHANGED_WHO, CHOICE_LIST, CONNECTION_ID,
CTRL_TEXT, CTRL_TYPE, DEFAULT_VALUE, FONT_COLOR, FONT_FAMILY, FONT_SIZE, FONT_STYLE, GUID, HEIGHT, INDEX_NAME, LOAD_IDX_VALUE, MULTISELECT, NAME, PROFIL_ID, READ_ONLY, REGEX_MATCH,
REGEX_MESSAGE_DE, REGEX_MESSAGE_EN, SQL_UEBERPRUEFUNG, TYP, VALIDATION, VKT_ADD_ITEM, VKT_PREVENT_MULTIPLE_VALUES, WIDTH, X_LOC, Y_LOC, IMAGE_CONTROL, SQL2, SQL_ENABLE,
SET_CONTROL_DATA, SQL_ENABLE_ON_LOAD, SQL_ENABLE_ON_LOAD_CONID, CONTROL_ACTIVE, TABLE_ORDER_COLUMN, SAVE_CHANGE_ON_ENABLED, FORMAT_STRING, TEXT_ALIGNMENT,
DISPLAY_IN_SEPERATE_FORM
SET_CONTROL_DATA, SQL_ENABLE_ON_LOAD, SQL_ENABLE_ON_LOAD_CONID, CONTROL_ACTIVE, TABLE_ORDER_COLUMN, SAVE_CHANGE_ON_ENABLED, FORMAT_STRING, TEXT_ALIGNMENT
FROM TBPM_PROFILE_CONTROLS AS T
WHERE (PROFIL_ID = @profil_id)
ORDER BY Y_LOC, X_LOC</CommandText>
@@ -1804,13 +1801,16 @@ FROM VWPM_CHART_INVOICE_MONITOR</CommandText>
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter" GeneratorDataComponentClassName="VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter" Name="VWPM_CHART_INVOICE_MONITOR_SERIES" UserDataComponentName="VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter">
<MainSource>
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM_TEST.dbo.VWPM_CHART_INVOICE_MONITOR_SERIES" DbObjectType="View" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM.dbo.VWPM_CHART_INVOICE_MONITOR_SERIES" DbObjectType="View" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="false" UserGetMethodName="GetData" UserSourceName="Fill">
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT Title, Anzahl, NettoSumme, SEQ
FROM VWPM_CHART_INVOICE_MONITOR_SERIES
WHERE (COCKPIT_CHART_ID = @COCKPIT_CHART_ID)
ORDER BY SEQ</CommandText>
<Parameters />
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="COCKPIT_CHART_ID" ColumnName="COCKPIT_CHART_ID" DataSourceName="DD_ECM.dbo.VWPM_CHART_INVOICE_MONITOR_SERIES" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@COCKPIT_CHART_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="COCKPIT_CHART_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
@@ -1823,27 +1823,6 @@ ORDER BY SEQ</CommandText>
</Mappings>
<Sources />
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="VWPM_CHART_TOP5TableAdapter" GeneratorDataComponentClassName="VWPM_CHART_TOP5TableAdapter" Name="VWPM_CHART_TOP5" UserDataComponentName="VWPM_CHART_TOP5TableAdapter">
<MainSource>
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM_TEST.dbo.VWPM_CHART_TOP5" DbObjectType="View" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT KRED_NAME, ANZ_BELEG, Netto, Skonto
FROM VWPM_CHART_TOP5
ORDER BY Netto DESC</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="KRED_NAME" DataSetColumn="KRED_NAME" />
<Mapping SourceColumn="ANZ_BELEG" DataSetColumn="ANZ_BELEG" />
<Mapping SourceColumn="Netto" DataSetColumn="Netto" />
<Mapping SourceColumn="Skonto" DataSetColumn="Skonto" />
</Mappings>
<Sources />
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TBPM_PROFILETableAdapter" GeneratorDataComponentClassName="TBPM_PROFILETableAdapter" Name="TBPM_PROFILE" UserDataComponentName="TBPM_PROFILETableAdapter">
<MainSource>
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM.dbo.TBPM_PROFILE" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
@@ -2706,7 +2685,7 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
</xs:simpleType>
</xs:element>
<xs:element name="SAVE_CHANGE_ON_ENABLED" msprop:Generator_ColumnPropNameInTable="SAVE_CHANGE_ON_ENABLEDColumn" msprop:Generator_ColumnPropNameInRow="SAVE_CHANGE_ON_ENABLED" msprop:Generator_UserColumnName="SAVE_CHANGE_ON_ENABLED" msprop:Generator_ColumnVarNameInTable="columnSAVE_CHANGE_ON_ENABLED" type="xs:boolean" />
<xs:element name="FORMAT_STRING" msprop:Generator_ColumnPropNameInTable="FORMAT_STRINGColumn" msprop:Generator_ColumnPropNameInRow="FORMAT_STRING" msprop:Generator_UserColumnName="FORMAT_STRING" msprop:Generator_ColumnVarNameInTable="columnFORMAT_STRING" type="xs:string" default="" />
<xs:element name="FORMAT_STRING" msprop:Generator_ColumnPropNameInTable="FORMAT_STRINGColumn" msprop:Generator_ColumnPropNameInRow="FORMAT_STRING" msprop:Generator_UserColumnName="FORMAT_STRING" msprop:Generator_ColumnVarNameInTable="columnFORMAT_STRING" type="xs:string" default="" minOccurs="0" />
<xs:element name="BACKCOLOR_IF" msprop:Generator_ColumnPropNameInTable="BACKCOLOR_IFColumn" msprop:Generator_ColumnPropNameInRow="BACKCOLOR_IF" msprop:Generator_UserColumnName="BACKCOLOR_IF" msprop:Generator_ColumnVarNameInTable="columnBACKCOLOR_IF" type="xs:string" minOccurs="0" />
<xs:element name="TEXT_ALIGNMENT" msprop:Generator_ColumnPropNameInTable="TEXT_ALIGNMENTColumn" msprop:Generator_ColumnPropNameInRow="TEXT_ALIGNMENT" msprop:Generator_UserColumnName="TEXT_ALIGNMENT" msprop:Generator_ColumnVarNameInTable="columnTEXT_ALIGNMENT" default="Near">
<xs:simpleType>
@@ -2715,7 +2694,6 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DISPLAY_IN_SEPERATE_FORM" msprop:Generator_ColumnPropNameInRow="DISPLAY_IN_SEPERATE_FORM" msprop:Generator_ColumnPropNameInTable="DISPLAY_IN_SEPERATE_FORMColumn" msprop:Generator_ColumnVarNameInTable="columnDISPLAY_IN_SEPERATE_FORM" msprop:Generator_UserColumnName="DISPLAY_IN_SEPERATE_FORM" type="xs:boolean" default="false" />
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -2826,7 +2804,7 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FORMULA_SQL" msprop:Generator_UserColumnName="FORMULA_SQL" msprop:Generator_ColumnPropNameInTable="FORMULA_SQLColumn" msprop:Generator_ColumnPropNameInRow="FORMULA_SQL" msprop:Generator_ColumnVarNameInTable="columnFORMULA_SQL" default="">
<xs:element name="FORMULA_SQL" msprop:Generator_ColumnPropNameInTable="FORMULA_SQLColumn" msprop:Generator_ColumnPropNameInRow="FORMULA_SQL" msprop:Generator_UserColumnName="FORMULA_SQL" msprop:Generator_ColumnVarNameInTable="columnFORMULA_SQL" default="">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3000" />
@@ -3200,22 +3178,6 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="VWPM_CHART_TOP5" msprop:Generator_RowEvHandlerName="VWPM_CHART_TOP5RowChangeEventHandler" msprop:Generator_RowDeletedName="VWPM_CHART_TOP5RowDeleted" msprop:Generator_RowDeletingName="VWPM_CHART_TOP5RowDeleting" msprop:Generator_RowEvArgName="VWPM_CHART_TOP5RowChangeEvent" msprop:Generator_TablePropName="VWPM_CHART_TOP5" msprop:Generator_RowChangedName="VWPM_CHART_TOP5RowChanged" msprop:Generator_UserTableName="VWPM_CHART_TOP5" msprop:Generator_RowChangingName="VWPM_CHART_TOP5RowChanging" msprop:Generator_RowClassName="VWPM_CHART_TOP5Row" msprop:Generator_TableClassName="VWPM_CHART_TOP5DataTable" msprop:Generator_TableVarName="tableVWPM_CHART_TOP5">
<xs:complexType>
<xs:sequence>
<xs:element name="KRED_NAME" msprop:Generator_ColumnPropNameInTable="KRED_NAMEColumn" msprop:Generator_ColumnPropNameInRow="KRED_NAME" msprop:Generator_UserColumnName="KRED_NAME" msprop:Generator_ColumnVarNameInTable="columnKRED_NAME">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="250" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ANZ_BELEG" msprop:Generator_ColumnPropNameInTable="ANZ_BELEGColumn" msprop:Generator_ColumnPropNameInRow="ANZ_BELEG" msprop:Generator_UserColumnName="ANZ_BELEG" msprop:Generator_ColumnVarNameInTable="columnANZ_BELEG" type="xs:short" />
<xs:element name="Netto" msprop:Generator_ColumnPropNameInTable="NettoColumn" msprop:Generator_ColumnPropNameInRow="Netto" msprop:Generator_UserColumnName="Netto" msprop:Generator_ColumnVarNameInTable="columnNetto" type="xs:decimal" minOccurs="0" />
<xs:element name="Skonto" msprop:Generator_ColumnPropNameInTable="SkontoColumn" msprop:Generator_ColumnPropNameInRow="Skonto" msprop:Generator_UserColumnName="Skonto" msprop:Generator_ColumnVarNameInTable="columnSkonto" type="xs:decimal" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TBPM_PROFILE" msprop:Generator_RowEvHandlerName="TBPM_PROFILERowChangeEventHandler" msprop:Generator_RowDeletedName="TBPM_PROFILERowDeleted" msprop:Generator_RowDeletingName="TBPM_PROFILERowDeleting" msprop:Generator_RowEvArgName="TBPM_PROFILERowChangeEvent" msprop:Generator_TablePropName="TBPM_PROFILE" msprop:Generator_RowChangedName="TBPM_PROFILERowChanged" msprop:Generator_UserTableName="TBPM_PROFILE" msprop:Generator_RowChangingName="TBPM_PROFILERowChanging" msprop:Generator_RowClassName="TBPM_PROFILERow" msprop:Generator_TableClassName="TBPM_PROFILEDataTable" msprop:Generator_TableVarName="tableTBPM_PROFILE">
<xs:complexType>
<xs:sequence>
@@ -3419,9 +3381,9 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
</xs:element>
<xs:annotation>
<xs:appinfo>
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL1" msdata:parent="TBPM_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL1" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL1" msprop:Generator_ParentPropName="TBPM_PROFILE_CONTROLSRow" />
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL" msdata:parent="TBWH_CHECK_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBWH_CHECK_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_ParentPropName="TBWH_CHECK_PROFILE_CONTROLSRow" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL" />
<msdata:Relationship name="FK_TBPM_PROFILE_CONTROLS_PROFILE" msdata:parent="TBPM_PROFILE" msdata:child="TBPM_PROFILE_CONTROLS" msdata:parentkey="GUID" msdata:childkey="PROFIL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE" msprop:Generator_UserChildTable="TBPM_PROFILE_CONTROLS" msprop:Generator_RelationVarName="relationFK_TBPM_PROFILE_CONTROLS_PROFILE" msprop:Generator_ChildPropName="GetTBPM_PROFILE_CONTROLSRows" msprop:Generator_ParentPropName="TBPM_PROFILERow" msprop:Generator_UserRelationName="FK_TBPM_PROFILE_CONTROLS_PROFILE" />
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL1" msdata:parent="TBPM_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL1" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_ParentPropName="TBPM_PROFILE_CONTROLSRow" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL1" />
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL" msdata:parent="TBWH_CHECK_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBWH_CHECK_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL" msprop:Generator_ParentPropName="TBWH_CHECK_PROFILE_CONTROLSRow" />
<msdata:Relationship name="FK_TBPM_PROFILE_CONTROLS_PROFILE" msdata:parent="TBPM_PROFILE" msdata:child="TBPM_PROFILE_CONTROLS" msdata:parentkey="GUID" msdata:childkey="PROFIL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE" msprop:Generator_UserChildTable="TBPM_PROFILE_CONTROLS" msprop:Generator_RelationVarName="relationFK_TBPM_PROFILE_CONTROLS_PROFILE" msprop:Generator_ChildPropName="GetTBPM_PROFILE_CONTROLSRows" msprop:Generator_UserRelationName="FK_TBPM_PROFILE_CONTROLS_PROFILE" msprop:Generator_ParentPropName="TBPM_PROFILERow" />
</xs:appinfo>
</xs:annotation>
</xs:schema>

View File

@@ -4,32 +4,31 @@
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="472" ViewPortY="190" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="472" ViewPortY="-96" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:TBPM_PROFILE_FINAL_INDEXING" ZOrder="14" X="1688" Y="-74" Height="324" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" />
<Shape ID="DesignTable:TBPM_KONFIGURATION" ZOrder="2" X="-17" Y="232" Height="262" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="97" />
<Shape ID="DesignTable:TBDD_USER" ZOrder="18" X="608" Y="444" Height="305" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:TBPM_TYPE" ZOrder="19" X="17" Y="113" Height="203" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:TBPM_ERROR_LOG" ZOrder="21" X="443" Y="-87" Height="111" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="21" />
<Shape ID="DesignTable:TBDD_CONNECTION" ZOrder="4" X="408" Y="-78" Height="379" Width="178" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="273" />
<Shape ID="DesignTable:TBPROFILE_USER" ZOrder="15" X="509" Y="-80" Height="267" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:TBPM_PROFILE_FILES" ZOrder="3" X="1391" Y="-70" Height="229" Width="268" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
<Shape ID="DesignTable:TBWH_CHECK_PROFILE_CONTROLS" ZOrder="23" X="0" Y="-72" Height="168" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="78" />
<Shape ID="DesignTable:TBPM_KONFIGURATION" ZOrder="4" X="-17" Y="232" Height="262" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="97" />
<Shape ID="DesignTable:TBDD_USER" ZOrder="17" X="608" Y="444" Height="305" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:TBPM_TYPE" ZOrder="18" X="17" Y="113" Height="203" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:TBPM_ERROR_LOG" ZOrder="20" X="443" Y="-87" Height="111" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="21" />
<Shape ID="DesignTable:TBDD_CONNECTION" ZOrder="6" X="408" Y="-78" Height="379" Width="178" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="273" />
<Shape ID="DesignTable:TBPROFILE_USER" ZOrder="2" X="1041" Y="-53" Height="267" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:TBPM_PROFILE_FILES" ZOrder="5" X="1391" Y="-70" Height="229" Width="268" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
<Shape ID="DesignTable:TBWH_CHECK_PROFILE_CONTROLS" ZOrder="22" X="0" Y="-72" Height="168" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="78" />
<Shape ID="DesignTable:TBPM_PROFILE_CONTROLS" ZOrder="12" X="947" Y="404" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="24" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:TBPM_CONTROL_TABLE" ZOrder="1" X="1297" Y="391" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="24" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:TBDD_GROUPS" ZOrder="17" X="19" Y="320" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:TBPM_CONTROL_TABLE" ZOrder="3" X="1297" Y="391" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="24" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:TBDD_GROUPS" ZOrder="16" X="19" Y="320" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:TBPROFILE_GROUP" ZOrder="13" X="1054" Y="47" Height="286" Width="277" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:FNPM_GET_FREE_USER_FOR_PROFILE" ZOrder="16" X="807" Y="155" Height="229" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:TBDD_EMAIL_TEMPLATE" ZOrder="7" X="1645" Y="598" Height="267" Width="287" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
<Shape ID="DesignTable:FNPM_GET_FREE_USER_FOR_PROFILE" ZOrder="15" X="807" Y="155" Height="229" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:TBDD_EMAIL_TEMPLATE" ZOrder="9" X="1645" Y="598" Height="267" Width="287" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
<Shape ID="DesignTable:TBDD_GUI_LANGUAGE_PHRASE" ZOrder="11" X="1427" Y="251" Height="305" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR" ZOrder="10" X="1828" Y="457" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR_SERIES" ZOrder="9" X="1903" Y="311" Height="153" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:VWPM_CHART_TOP5" ZOrder="8" X="1302" Y="15" Height="153" Width="267" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:TBPM_PROFILE" ZOrder="6" X="862" Y="-66" Height="305" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:TBWH_CONNECTION" ZOrder="24" X="625" Y="114" Height="276" Width="189" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="272" />
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR" ZOrder="1" X="1828" Y="457" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR_SERIES" ZOrder="10" X="1908" Y="274" Height="153" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:TBPM_PROFILE" ZOrder="8" X="862" Y="-66" Height="305" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:TBWH_CONNECTION" ZOrder="23" X="625" Y="114" Height="276" Width="189" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="272" />
</Shapes>
<Connectors>
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL1" ZOrder="22" LineWidth="11">
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL1" ZOrder="21" LineWidth="11">
<RoutePoints>
<Point>
<X>1247</X>
@@ -41,7 +40,7 @@
</Point>
</RoutePoints>
</Connector>
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL" ZOrder="20" LineWidth="11">
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL" ZOrder="19" LineWidth="11">
<RoutePoints>
<Point>
<X>141</X>
@@ -57,7 +56,7 @@
</Point>
</RoutePoints>
</Connector>
<Connector ID="DesignRelation:FK_TBPM_PROFILE_CONTROLS_PROFILE" ZOrder="5" LineWidth="11">
<Connector ID="DesignRelation:FK_TBPM_PROFILE_CONTROLS_PROFILE" ZOrder="7" LineWidth="11">
<RoutePoints>
<Point>
<X>965</X>

View File

@@ -134,6 +134,7 @@ Public Module ModuleControlProperties
<Description("Stores data of Read Only fields when document is saved. Default behaviour is NOT to save Read Only fields.")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property [SaveChangeOnReadOnly]() As Boolean
<Browsable(False)>
<Category(ClassConstants.CAT_GENERAL)>
Public Property IndexType() As IndexTypes
@@ -349,10 +350,6 @@ Public Module ModuleControlProperties
<DisplayName("Allow Adding New Values")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property AllowAddNewValues As Boolean
<DisplayName("Display in seperate form")>
<Category(ClassConstants.CAT_BEHAVIOUR)>
Public Property [DISPLAY_SEP_FORM]() As Boolean
End Class
Public Class ButtonProperties

View File

@@ -150,14 +150,13 @@ Module ModuleRuntimeVariables
Public Property CURRENT_DT_MASS_CHANGE_DOCS As DataTable
Public Property CURRENT_DT_FINAL_INDEXING As DataTable
Public Property CURRENT_DT_PROFILES As DataTable
Public Property CURRENT_DT_PROFILE_LANGUAGE As DataTable
Public Property CURRENT_DT_PROFILE As DataTable
Public Property CURRENT_CONTROL_NAME_LIST As New List(Of String)
Public Property COCKPIT_MONITOR_ID As Integer = 0
Public Property COCKPIT_CHART_ID As Integer
Public Property DTVWCONTROLS_INDEX As DataTable
Public Property DTVWCONTROL_INDEX As DataTable

View File

@@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.9.4.0")>
<Assembly: AssemblyVersion("3.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>
<Assembly: NeutralResourcesLanguage("")>

View File

@@ -1,15 +1,16 @@
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v21.2.UI, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraVerticalGrid.PropertyGridControl, DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.LookUpEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraDataLayout.DataLayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraDataLayout.DataLayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraVerticalGrid.PropertyGridControl, DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraTreeList.TreeList, DevExpress.XtraTreeList.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v21.2.UI, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

View File

@@ -227,71 +227,84 @@
<Reference Include="FormsUtils">
<HintPath>M:\Bibliotheken\3rdParty\FormsUtils.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.dll</HintPath>
<Reference Include="GdPicture.NET.14, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Common, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Document, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Email, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.HTML, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Markdown, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Markdown.dll</HintPath>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.PDF, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.RTF, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.SVG, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Google.Protobuf, Version=3.33.2.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604, processorArchitecture=MSIL">
@@ -316,14 +329,11 @@
<Reference Include="Mail">
<HintPath>M:\Bibliotheken\3rdParty\Limilabs\Mail.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.10.0.5\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.9.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.Cryptography, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.Cryptography.10.0.5\lib\net462\Microsoft.Bcl.Cryptography.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.HashCode, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.HashCode.6.0.0\lib\net462\Microsoft.Bcl.HashCode.dll</HintPath>
<Reference Include="Microsoft.Bcl.Cryptography, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.Cryptography.9.0.0\lib\net462\Microsoft.Bcl.Cryptography.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="Microsoft.Identity.Client, Version=4.55.0.0, Culture=neutral, PublicKeyToken=0a613f4dd989e8ae, processorArchitecture=MSIL">
@@ -332,15 +342,6 @@
<Reference Include="Microsoft.IdentityModel.Abstractions, Version=6.22.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Abstractions.6.22.0\lib\net461\Microsoft.IdentityModel.Abstractions.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Exceptions, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\NativeSDK.Exceptions.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\NativeSDK.Settings.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings.Edition, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\NativeSDK.Settings.Edition.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
@@ -350,8 +351,8 @@
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.5.0.5\lib\net46\NLog.dll</HintPath>
</Reference>
<Reference Include="OpenMcdf, Version=3.1.4.0, Culture=neutral, PublicKeyToken=fdbb1629d7c00800, processorArchitecture=MSIL">
<HintPath>..\packages\OpenMcdf.3.1.4\lib\netstandard2.0\OpenMcdf.dll</HintPath>
<Reference Include="OpenMcdf, Version=2.4.1.0, Culture=neutral, PublicKeyToken=fdbb1629d7c00800, processorArchitecture=MSIL">
<HintPath>..\packages\OpenMcdf.2.4.1\lib\net40\OpenMcdf.dll</HintPath>
</Reference>
<Reference Include="Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL">
<HintPath>..\packages\Oracle.ManagedDataAccess.21.15.0\lib\net462\Oracle.ManagedDataAccess.dll</HintPath>
@@ -366,14 +367,14 @@
<HintPath>..\packages\RtfPipe.2.0.7677.4303\lib\net45\RtfPipe.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.6.1\lib\net462\System.Buffers.dll</HintPath>
<Reference Include="System.Buffers, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.6.0\lib\net462\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.CodeDom, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.CodeDom.9.0.0\lib\net462\System.CodeDom.dll</HintPath>
</Reference>
<Reference Include="System.Collections.Immutable, Version=10.0.0.5, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Collections.Immutable.10.0.5\lib\net462\System.Collections.Immutable.dll</HintPath>
<Reference Include="System.Collections.Immutable, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Collections.Immutable.9.0.0\lib\net462\System.Collections.Immutable.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
@@ -388,53 +389,53 @@
<Reference Include="System.DirectoryServices" />
<Reference Include="System.DirectoryServices.AccountManagement" />
<Reference Include="System.Drawing" />
<Reference Include="System.Formats.Asn1, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Formats.Asn1.10.0.5\lib\net462\System.Formats.Asn1.dll</HintPath>
<Reference Include="System.Formats.Asn1, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Formats.Asn1.9.0.0\lib\net462\System.Formats.Asn1.dll</HintPath>
</Reference>
<Reference Include="System.IdentityModel" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.IO.Packaging, Version=10.0.0.5, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Packaging.10.0.5\lib\net462\System.IO.Packaging.dll</HintPath>
<Reference Include="System.IO.Packaging, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Packaging.9.0.0\lib\net462\System.IO.Packaging.dll</HintPath>
</Reference>
<Reference Include="System.IO.Pipelines, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Pipelines.10.0.5\lib\net462\System.IO.Pipelines.dll</HintPath>
<Reference Include="System.IO.Pipelines, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Pipelines.9.0.0\lib\net462\System.IO.Pipelines.dll</HintPath>
</Reference>
<Reference Include="System.Management" />
<Reference Include="System.Memory, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.6.3\lib\net462\System.Memory.dll</HintPath>
<Reference Include="System.Memory, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.6.0\lib\net462\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http" />
<Reference Include="System.Net.Http.Formatting, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.6.0.0\lib\net45\System.Net.Http.Formatting.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.6.1\lib\net462\System.Numerics.Vectors.dll</HintPath>
<Reference Include="System.Numerics.Vectors, Version=4.1.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.6.0\lib\net462\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.1.2\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.1.0\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Security" />
<Reference Include="System.Security.Cryptography.Pkcs, Version=10.0.0.5, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Cryptography.Pkcs.10.0.5\lib\net462\System.Security.Cryptography.Pkcs.dll</HintPath>
<Reference Include="System.Security.Cryptography.Pkcs, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Cryptography.Pkcs.9.0.0\lib\net462\System.Security.Cryptography.Pkcs.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel" />
<Reference Include="System.Text.Encodings.Web, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Encodings.Web.10.0.5\lib\net462\System.Text.Encodings.Web.dll</HintPath>
<Reference Include="System.Text.Encodings.Web, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Encodings.Web.9.0.0\lib\net462\System.Text.Encodings.Web.dll</HintPath>
</Reference>
<Reference Include="System.Text.Json, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Json.10.0.5\lib\net462\System.Text.Json.dll</HintPath>
<Reference Include="System.Text.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Json.9.0.0\lib\net462\System.Text.Json.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Channels, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Channels.10.0.5\lib\net462\System.Threading.Channels.dll</HintPath>
<Reference Include="System.Threading.Channels, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Channels.8.0.0\lib\net462\System.Threading.Channels.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.6.3\lib\net462\System.Threading.Tasks.Extensions.dll</HintPath>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Transactions" />
<Reference Include="System.ValueTuple, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.6.1\lib\net462\System.ValueTuple.dll</HintPath>
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Web.Services" />
<Reference Include="System.Windows.Forms" />
@@ -465,7 +466,6 @@
<Compile Include="ClassFinalIndex.vb" />
<Compile Include="ClassFinalizeDoc.vb" />
<Compile Include="ClassFormat.vb" />
<Compile Include="ClassGridDataLoader.vb" />
<Compile Include="ClassIDBData.vb" />
<Compile Include="ClassImageSelector.vb" />
<Compile Include="ClassImageValue.vb" />
@@ -557,12 +557,6 @@
<Compile Include="frmColumn_Detail.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmControl_Table.Designer.vb">
<DependentUpon>frmControl_Table.vb</DependentUpon>
</Compile>
<Compile Include="frmControl_Table.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmDesignerLayout.Designer.vb">
<DependentUpon>frmDesignerLayout.vb</DependentUpon>
</Compile>
@@ -826,9 +820,6 @@
<DependentUpon>frmColumn_Detail.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmControl_Table.resx">
<DependentUpon>frmControl_Table.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmDesignerLayout.resx">
<DependentUpon>frmDesignerLayout.vb</DependentUpon>
<SubType>Designer</SubType>
@@ -1375,14 +1366,10 @@
</PropertyGroup>
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.props'))" />
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.targets'))" />
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.4.4\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.4.4\build\net462\GdPicture.runtimes.windows.targets'))" />
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets'))" />
</Target>
<Import Project="..\packages\EntityFramework.6.4.4\build\EntityFramework.targets" Condition="Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" />
<Import Project="..\packages\GdPicture.runtimes.windows.14.4.4\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.4.4\build\net462\GdPicture.runtimes.windows.targets')" />
<PropertyGroup>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
<Import Project="..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets')" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">

View File

@@ -92,7 +92,7 @@ Namespace My.Resources
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Aktuell keine Workflowdaten vorhanden! {0} ähnelt.
''' Sucht eine lokalisierte Zeichenfolge, die Aktuell keine Workflowdaten vorhanden - {0} ähnelt.
'''</summary>
Friend Shared ReadOnly Property Aktuell_keine_Workflowdaten_vorhanden___0_() As String
Get

View File

@@ -120,36 +120,27 @@
<data name="Achtung:" xml:space="preserve">
<value>Attention:</value>
</data>
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
<value>Currently no workflow data available - {0}</value>
</data>
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
<value>Current license has expired or is invalid!</value>
</data>
<data name="Anzahl angemeldete Benutzer: {0}" xml:space="preserve">
<value>Logged in users: {0}</value>
</data>
<data name="Anzahl Lizenzen: {0}" xml:space="preserve">
<value>Number of licenses: {0}</value>
</data>
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
<value>Please close the currently open workflow!</value>
</data>
<data name="Größer" xml:space="preserve">
<value>Bigger</value>
</data>
<data name="Kleiner" xml:space="preserve">
<value>Smaller</value>
</data>
<data name="Normal" xml:space="preserve">
<value>Normal</value>
</data>
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
<value>Currently no workflow data available! {0}</value>
</data>
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
<value>Current license has expired or is invalid!</value>
</data>
<data name="Bitte konfigurieren Sie eine Datenbankverbindung!" xml:space="preserve">
<value>Please configure a database connection!</value>
</data>
<data name="Bitte kontaktieren Sie Ihren Administrator!" xml:space="preserve">
<value>Please contact your administrator!</value>
</data>
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
<value>Please close the currently open workflow!</value>
</data>
<data name="Bitte wählen Sie ein Profil aus!" xml:space="preserve">
<value>Please select a profile!</value>
</data>
@@ -177,9 +168,18 @@
<data name="Ghost Modus ({0}) deaktivieren" xml:space="preserve">
<value>Deactivate ({0}) Ghost Mode</value>
</data>
<data name="Größer" xml:space="preserve">
<value>Bigger</value>
</data>
<data name="HINWEIS: Debug Modus ist eingeschaltet!" xml:space="preserve">
<value>NOTE: Debug mode is switched on!</value>
</data>
<data name="IDB Aktiv" xml:space="preserve">
<value>IDB Active</value>
</data>
<data name="Kleiner" xml:space="preserve">
<value>Smaller</value>
</data>
<data name="Letzte Synchronisation: {0}" xml:space="preserve">
<value>Last synchronization: {0}</value>
</data>
@@ -189,6 +189,9 @@
<data name="Massenabschluss konnte nicht ausgeführt werden, weil windream nicht initialisiert werden konnte!" xml:space="preserve">
<value>Mass completion could not be executed because windream could not be initialised!</value>
</data>
<data name="Normal" xml:space="preserve">
<value>Normal</value>
</data>
<data name="Nächste Aktivitätsüberprüfung: {0} {1}" xml:space="preserve">
<value>Next activity check: {0} {1}</value>
</data>
@@ -213,7 +216,4 @@
<data name="{0} Vorgänge" xml:space="preserve">
<value>{0} Processes</value>
</data>
<data name="IDB Aktiv" xml:space="preserve">
<value>IDB Active</value>
</data>
</root>

View File

@@ -120,36 +120,27 @@
<data name="Achtung:" xml:space="preserve">
<value>Attention:</value>
</data>
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
<value>Actuellement, aucune donnée de workflow n'est disponible - {0}</value>
</data>
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
<value>La licence actuelle a expiré ou n'est plus valable !</value>
</data>
<data name="Anzahl angemeldete Benutzer: {0}" xml:space="preserve">
<value>Nombre d'utilisateurs connectés: {0}</value>
</data>
<data name="Anzahl Lizenzen: {0}" xml:space="preserve">
<value>Nombre de licences: {0}</value>
</data>
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
<value>Veuillez fermer le workflow ouvert !</value>
</data>
<data name="Größer" xml:space="preserve">
<value>Plus grand</value>
</data>
<data name="Kleiner" xml:space="preserve">
<value>Petit</value>
</data>
<data name="Normal" xml:space="preserve">
<value>Normal</value>
</data>
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
<value>Actuellement, aucune donnée de workflow n'est disponible ! {0}</value>
</data>
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
<value>La licence actuelle a expiré ou n'est plus valable !</value>
</data>
<data name="Bitte konfigurieren Sie eine Datenbankverbindung!" xml:space="preserve">
<value>Veuillez configurer une connexion à la base de données !</value>
</data>
<data name="Bitte kontaktieren Sie Ihren Administrator!" xml:space="preserve">
<value>Veuillez contacter votre administrateur !</value>
</data>
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
<value>Veuillez fermer le workflow ouvert !</value>
</data>
<data name="Bitte wählen Sie ein Profil aus!" xml:space="preserve">
<value>Veuillez sélectionner un profil !</value>
</data>
@@ -177,9 +168,18 @@
<data name="Ghost Modus ({0}) deaktivieren" xml:space="preserve">
<value>Désactiver ({0}) le Mode Fantôme</value>
</data>
<data name="Größer" xml:space="preserve">
<value>Plus grand</value>
</data>
<data name="HINWEIS: Debug Modus ist eingeschaltet!" xml:space="preserve">
<value>REMARQUE : le mode de débogage est activé !</value>
</data>
<data name="IDB Aktiv" xml:space="preserve">
<value>IDB Aktif</value>
</data>
<data name="Kleiner" xml:space="preserve">
<value>Petit</value>
</data>
<data name="Letzte Synchronisation: {0}" xml:space="preserve">
<value>Dernière synchronisation : {0}</value>
</data>
@@ -189,6 +189,9 @@
<data name="Massenabschluss konnte nicht ausgeführt werden, weil windream nicht initialisiert werden konnte!" xml:space="preserve">
<value>La clôture en masse n'a pas pu être exécutée parce que windream n'a pas pu être initialisé !</value>
</data>
<data name="Normal" xml:space="preserve">
<value>Normal</value>
</data>
<data name="Nächste Aktivitätsüberprüfung: {0} {1}" xml:space="preserve">
<value>Prochaine vérification d'activité : {0} {1}</value>
</data>
@@ -213,7 +216,4 @@
<data name="{0} Vorgänge" xml:space="preserve">
<value>{0} Opérations</value>
</data>
<data name="IDB Aktiv" xml:space="preserve">
<value>IDB Aktif</value>
</data>
</root>

View File

@@ -121,7 +121,7 @@
<value>Achtung:</value>
</data>
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
<value>Aktuell keine Workflowdaten vorhanden! {0}</value>
<value>Aktuell keine Workflowdaten vorhanden - {0}</value>
</data>
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
<value>Aktuelle Lizenz ist abgelaufen oder ungültig!</value>

View File

@@ -70,7 +70,7 @@ Public Class clsPatterns
''' </summary>
Public Shared Sub ClearControlCache()
_ControlLookupCache = Nothing
If LOG_HOTSPOTS Then LOGGER.Debug("Control cache cleared")
LOGGER.Debug("Control cache cleared")
End Sub
''' <summary>
''' Aktualisiert den Wert eines Controls im Cache
@@ -122,7 +122,7 @@ Public Class clsPatterns
LOGGER.Warn($"Unsupported control type for cache update: {ctrl.GetType.Name}")
End Select
If LOG_HOTSPOTS Then LOGGER.Debug($"Cache updated for control [{controlName}] with value type [{newValue?.GetType().Name}]")
LOGGER.Debug($"Cache updated for control [{controlName}] with value type [{newValue?.GetType().Name}]")
Catch ex As Exception
LOGGER.Error(ex)
@@ -144,7 +144,7 @@ Public Class clsPatterns
UpdateControlInCache(kvp.Key, kvp.Value)
Next
If LOG_HOTSPOTS Then LOGGER.Debug($"Batch cache update completed for {updates.Count} controls")
LOGGER.Debug($"Batch cache update completed for {updates.Count} controls")
End Sub
''' <summary>
''' Wraps a pattern-type and -value in the common format: {#type#value}
@@ -175,9 +175,9 @@ Public Class clsPatterns
If Not IsNothing(oResult) Then
oResult = ReplaceUserValues(oResult)
LOGGER.Debug($"input AFTER replacing: [{oResult}]")
End If
LOGGER.Debug($"input AFTER replacing: [{oResult}]")
Return oResult
Catch ex As Exception
LOGGER.Error(ex)
@@ -305,7 +305,7 @@ Public Class clsPatterns
End SyncLock
Try
If LOG_HOTSPOTS Then LOGGER.Debug($"Starting ReplaceControlValues with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
LOGGER.Debug($"Starting ReplaceControlValues with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
Dim oTryCounter = 0
While ContainsPattern(oResult, PATTERN_CTRL)
@@ -325,7 +325,7 @@ Public Class clsPatterns
oColumnName = oSplitName.Last()
End If
If LOG_HOTSPOTS Then LOGGER.Debug("Found placeholder for control [{0}].", oControlName)
LOGGER.Debug("Found placeholder for control [{0}].", oControlName)
' Beim Cache-Zugriff Lock verwenden
Dim oControl As Control = Nothing
SyncLock _ControlLookupCache
@@ -349,11 +349,11 @@ Public Class clsPatterns
If oControl IsNot Nothing Then
Dim oReplaceValue As String
If LOG_HOTSPOTS Then LOGGER.Debug("oControl.GetType [{0}].", oControl.GetType.ToString)
LOGGER.Debug("oControl.GetType [{0}].", oControl.GetType.ToString)
Select Case oControl.GetType
Case GetType(TextBox)
oReplaceValue = oControl.Text
If LOG_HOTSPOTS Then LOGGER.Debug("TextBox- oReplaceValue will be [{0}].", oReplaceValue)
LOGGER.Debug("TextBox- oReplaceValue will be [{0}].", oReplaceValue)
Case GetType(TextEdit)
Try
oReplaceValue = ClassAllgemeineFunktionen.NotNullString(DirectCast(oControl, TextEdit).EditValue, String.Empty)
@@ -361,7 +361,7 @@ Public Class clsPatterns
LOGGER.Warn($"Error in ReplaceValue MemoEdit: {ex.Message}")
oReplaceValue = ""
End Try
If LOG_HOTSPOTS Then LOGGER.Debug("TextEdit- oReplaceValue will be [{0}].", oReplaceValue)
LOGGER.Debug("TextEdit- oReplaceValue will be [{0}].", oReplaceValue)
Case GetType(MemoEdit)
Try
oReplaceValue = ClassAllgemeineFunktionen.NotNullString(DirectCast(oControl, MemoEdit).EditValue, String.Empty)
@@ -369,7 +369,7 @@ Public Class clsPatterns
LOGGER.Warn($"Error in ReplaceValue MemoEdit: {ex.Message}")
oReplaceValue = ""
End Try
If LOG_HOTSPOTS Then LOGGER.Debug("MemoEdit- oReplaceValue will be [{0}].", oReplaceValue)
LOGGER.Debug("MemoEdit- oReplaceValue will be [{0}].", oReplaceValue)
Case GetType(LookupControl3)
Dim oLookupControl3 As LookupControl3 = oControl
@@ -391,7 +391,7 @@ Public Class clsPatterns
oReplaceValue = ERROR_REPLACE_VALUE
' ========== FIX END ==========
ElseIf selectedValues.Count > 1 Then
If LOG_HOTSPOTS Then LOGGER.Debug($"LookupControl3 [{oControlName}] mit mehr als 1 Value")
LOGGER.Debug($"LookupControl3 [{oControlName}] mit mehr als 1 Value")
Dim oIndex As Integer = 0
For Each oString As String In selectedValues
If oIndex = 0 Then
@@ -403,11 +403,12 @@ Public Class clsPatterns
Next
oIsSQL = False
Else ' Count = 1
If LOG_HOTSPOTS Then LOGGER.Debug($"LookupControl3 [{oControlName}] mit genau einem Value")
LOGGER.Debug($"LookupControl3 [{oControlName}] mit genau einem Value")
oReplaceValue = selectedValues(0)
End If
If LOG_HOTSPOTS Then LOGGER.Debug($"oReplaceValue nach Durchlaufen selectedValues: {oReplaceValue}")
LOGGER.Debug($"oReplaceValue nach Durchlaufen selectedValues: {oReplaceValue}")
LOGGER.Debug($"oReplaceValue nach Durchlaufen selectedValues: {oReplaceValue}")
Case GetType(Windows.Forms.ComboBox)
oReplaceValue = oControl.Text
@@ -439,7 +440,7 @@ Public Class clsPatterns
Case Else
oReplaceValue = ERROR_REPLACE_VALUE
End Select
If LOG_HOTSPOTS Then LOGGER.Debug($"[SQL-ESCAPE CHECK] Control: [{oControlName}], oReplaceValue Type: [{If(oReplaceValue?.GetType()?.Name, "NULL")}], Value: [{oReplaceValue}], IsSQL: [{oIsSQL}]")
LOGGER.Debug($"[SQL-ESCAPE CHECK] Control: [{oControlName}], oReplaceValue Type: [{If(oReplaceValue?.GetType()?.Name, "NULL")}], Value: [{oReplaceValue}], IsSQL: [{oIsSQL}]")
If oReplaceValue Is Nothing Then
LOGGER.Warn($"⚠️ oReplaceValue is Nothing for control [{oControlName}]! Setting to ERROR_REPLACE_VALUE")
oReplaceValue = ERROR_REPLACE_VALUE
@@ -467,7 +468,7 @@ Public Class clsPatterns
End Try
End Function
Private Shared Function SafeSqlEscape(value As Object) As String
If LOG_HOTSPOTS Then LOGGER.Debug($"[SafeSqlEscape] Input Type: [{If(value?.GetType()?.Name, "NULL")}], Value: [{value}]")
LOGGER.Debug($"[SafeSqlEscape] Input Type: [{If(value?.GetType()?.Name, "NULL")}], Value: [{value}]")
If value Is Nothing Then
LOGGER.Warn("[SafeSqlEscape] Value is Nothing → returning ERROR_REPLACE_VALUE")
@@ -489,14 +490,14 @@ Public Class clsPatterns
End If
Dim escaped = strValue.Replace("'", "''")
If LOG_HOTSPOTS Then LOGGER.Debug($"[SafeSqlEscape] Output: [{escaped}]")
LOGGER.Debug($"[SafeSqlEscape] Output: [{escaped}]")
Return escaped
End Function
Public Shared Function ReplaceWindreamIndicies(pInput As String, pDocument As WMObject, pIsSQL As Boolean) As String
Try
Dim oResult = pInput
Dim oTryCounter As Integer = 0
If LOG_HOTSPOTS Then LOGGER.Debug($"Starting ReplaceWindreamIndicies with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
LOGGER.Debug($"Starting ReplaceWindreamIndicies with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
While ContainsPattern(oResult, PATTERN_WMI)
Dim oWMValue As String
Dim oIndexName As String = GetNextPattern(oResult, PATTERN_WMI).Value
@@ -516,9 +517,9 @@ Public Class clsPatterns
If oWMValue IsNot Nothing Then
If pIsSQL = True Then
If LOG_HOTSPOTS Then LOGGER.Debug($"IS_SQL = True - oReplaceValue = {oWMValue}")
LOGGER.Debug($"IS_SQL = True - oReplaceValue = {oWMValue}")
oWMValue = oWMValue.ToString().Replace("'", "''")
If LOG_HOTSPOTS Then LOGGER.Debug($"oReplaceValue = {oWMValue}")
LOGGER.Debug($"oReplaceValue = {oWMValue}")
End If
oResult = ReplacePattern(oResult, PATTERN_WMI, oWMValue)
Else
@@ -542,7 +543,7 @@ Public Class clsPatterns
Try
Dim result = input
Dim oTryCounter As Integer = 0
If LOG_HOTSPOTS Then LOGGER.Debug($"Starting ReplaceIDBAttributes with input: [{result}] for document ID: {CURRENT_DOC_ID}")
LOGGER.Debug($"Starting ReplaceIDBAttributes with input: [{result}] for document ID: {CURRENT_DOC_ID}")
While ContainsPattern(result, PATTERN_IDBA)
Dim indexName As String = GetNextPattern(result, PATTERN_IDBA).Value
@@ -567,7 +568,7 @@ Public Class clsPatterns
If oIDBValue IsNot Nothing Or Not IsDBNull(oIDBValue) Then
Dim oReplaceValue = "{" + $"#{PATTERN_IDBA}#{indexName}" + "}"
If IS_SQL = True Then
If LOG_HOTSPOTS Then LOGGER.Debug($"IS_SQL = True - oReplaceValue = [{oReplaceValue}]")
LOGGER.Debug($"IS_SQL = True - oReplaceValue = [{oReplaceValue}]")
If indexName <> "ObjectID" And indexName <> "OBJID" And indexName <> "DocID" Then
Try
oIDBValue = oIDBValue.Replace("'", "''")
@@ -577,7 +578,7 @@ Public Class clsPatterns
End Try
End If
If LOG_HOTSPOTS Then LOGGER.Debug($"oIDBValue = {oIDBValue}")
LOGGER.Debug($"oIDBValue = {oIDBValue}")
End If
result = result.Replace(oReplaceValue, oIDBValue)
Else
@@ -589,7 +590,7 @@ Public Class clsPatterns
' Increase counter by 10 to avoid DDOSing the Database/IDB Service
oTryCounter += 10
End While
If LOG_HOTSPOTS Then LOGGER.Debug("sql after ReplaceIDBAttributes: " & input)
LOGGER.Debug("sql after ReplaceIDBAttributes: " & input)
Return result
Catch ex As Exception
LOGGER.Error(ex)

View File

@@ -136,18 +136,9 @@ Public Class frmColumn_Detail
CURRENT_DESIGN_TYPE = "SQL_SOURCE_TABLE_COLUMN"
CURRENT_INDEX_ID = GUIDTextBox.Text
Dim oForm2 As New frmSQLEditor(LOGCONFIG, DatabaseECM) With {
.SQLCommand = SQL_COMMANDTextBox.Text,
.SQLConnection = 1,
.PlaceholdersManualPrefix = "CTRL",
.PlaceholdersManualTitle = "Controls",
.PlaceholdersManual = CURRENT_CONTROL_NAME_LIST.ToDictionary(Function(name) name, Function(name) name)
}
If IDB_ACTIVE = False Then
oForm2.ATTRIBUTE_STORE = "WM"
oForm2.PlaceholdersWindream = MVSource_AllIndicies
Else
oForm2.ATTRIBUTE_STORE = "IDB"
End If
.SQLCommand = SQL_COMMANDTextBox.Text,
.SQLConnection = 0
}
oForm2.ShowDialog()
If oForm2.DialogResult = DialogResult.OK Then
@@ -195,10 +186,7 @@ Public Class frmColumn_Detail
CURRENT_INDEX_ID = GUIDTextBox.Text
Dim oForm2 As New frmSQLEditor(LOGCONFIG, DatabaseECM) With {
.SQLCommand = SQL_COMMANDTextBox.Text,
.SQLConnection = 0,
.PlaceholdersManualPrefix = "CTRL",
.PlaceholdersManualTitle = "Controls",
.PlaceholdersManual = CURRENT_CONTROL_NAME_LIST.ToDictionary(Function(name) name, Function(name) name)
.SQLConnection = 0
}
oForm2.ShowDialog()
@@ -244,10 +232,7 @@ Public Class frmColumn_Detail
CURRENT_INDEX_ID = GUIDTextBox.Text
Dim oForm2 As New frmSQLEditor(LOGCONFIG, DatabaseECM) With {
.SQLCommand = FORMULA_SQLTextBox.Text,
.SQLConnection = 0,
.PlaceholdersManualPrefix = "CTRL",
.PlaceholdersManualTitle = "Controls",
.PlaceholdersManual = CURRENT_CONTROL_NAME_LIST.ToDictionary(Function(name) name, Function(name) name)
.SQLConnection = 0
}
oForm2.ShowDialog()

View File

@@ -1,122 +0,0 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmControl_Table
Inherits DevExpress.XtraBars.Ribbon.RibbonForm
'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Wird vom Windows Form-Designer benötigt.
Private components As System.ComponentModel.IContainer
'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich.
'Das Bearbeiten ist mit dem Windows Form-Designer möglich.
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmControl_Table))
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem()
Me.rbnPageStart = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'RibbonControl1
'
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
Me.RibbonControl1.MaxItemId = 5
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.rbnPageStart})
Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
Me.RibbonControl1.Size = New System.Drawing.Size(800, 158)
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
'
'BarButtonItem1
'
Me.BarButtonItem1.Caption = "Daten neu laden"
Me.BarButtonItem1.Id = 1
Me.BarButtonItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem1.Name = "BarButtonItem1"
'
'BarButtonItem2
'
Me.BarButtonItem2.Caption = "Abbruch"
Me.BarButtonItem2.Id = 3
Me.BarButtonItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem2.Name = "BarButtonItem2"
'
'rbnPageStart
'
Me.rbnPageStart.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1})
Me.rbnPageStart.Name = "rbnPageStart"
Me.rbnPageStart.Text = "Start"
'
'RibbonPageGroup1
'
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem1)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem2)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem3)
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
Me.RibbonPageGroup1.Text = "Funktionen"
'
'RibbonStatusBar1
'
Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 428)
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
Me.RibbonStatusBar1.Size = New System.Drawing.Size(800, 22)
'
'RibbonPage2
'
Me.RibbonPage2.Name = "RibbonPage2"
Me.RibbonPage2.Text = "RibbonPage2"
'
'BarButtonItem3
'
Me.BarButtonItem3.Caption = "Layout zurücksetzen"
Me.BarButtonItem3.Id = 4
Me.BarButtonItem3.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem3.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem3.Name = "BarButtonItem3"
'
'frmControl_Table
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(800, 450)
Me.Controls.Add(Me.RibbonStatusBar1)
Me.Controls.Add(Me.RibbonControl1)
Me.IconOptions.SvgImage = CType(resources.GetObject("frmControl_Table.IconOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.Name = "frmControl_Table"
Me.Ribbon = Me.RibbonControl1
Me.StatusBar = Me.RibbonStatusBar1
Me.Text = "frmControl_Table"
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents RibbonControl1 As DevExpress.XtraBars.Ribbon.RibbonControl
Friend WithEvents rbnPageStart As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonStatusBar1 As DevExpress.XtraBars.Ribbon.RibbonStatusBar
Friend WithEvents RibbonPage2 As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem
End Class

View File

@@ -1,197 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="DevExpress.Data.v21.2" name="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="BarButtonItem1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANYDAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3
RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh
Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm
aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iVXBkYXRlIj4NCiAgICA8ZyBj
bGFzcz0ic3QxIj4NCiAgICAgIDxwYXRoIGQ9Ik0xNiw2aC02VjJoNlY2eiBNMTYsOGgtNnY0aDZWOHog
TTI0LDJoLTZ2NGg2VjJ6IE0yNCwxMlY4aC02djRIMjR6IE0yLDZoNlYySDJWNnogTTIsMThoNnYtNEgy
VjE4eiBNMTYsMTQgICAgTDE2LDE0bC02LDB2NGgyLjhDMTMuNSwxNi40LDE0LjYsMTUsMTYsMTR6IE0y
LDEyaDZWOEgyVjEyeiIgY2xhc3M9IkJsYWNrIiAvPg0KICAgIDwvZz4NCiAgICA8cGF0aCBkPSJNMjcu
NywyMGgySDMwdi02bC0yLjMsMi4zQzI2LjIsMTQuOSwyNC4yLDE0LDIyLDE0Yy00LjQsMC04LDMuNi04
LDhjMCw0LjQsMy42LDgsOCw4czgtMy42LDgtOGgtMiAgIGMwLDMuMy0yLjcsNi02LDZzLTYtMi43LTYt
NnMyLjctNiw2LTZjMS43LDAsMy4yLDAuNyw0LjIsMS44TDI0LDIwSDI3Ljd6IiBjbGFzcz0iR3JlZW4i
IC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
</data>
<data name="BarButtonItem2.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPoBAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iQ2xlYXJIZWFkZXJBbmRGb290ZXIiIHN0eWxlPSJlbmFibGUtYmFja2dy
b3VuZDpuZXcgMCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5SZWR7ZmlsbDoj
RDExQzFDO30KPC9zdHlsZT4NCiAgPHBhdGggZD0iTTI3LDRINUM0LjUsNCw0LDQuNSw0LDV2MjJjMCww
LjUsMC41LDEsMSwxaDIyYzAuNSwwLDEtMC41LDEtMVY1QzI4LDQuNSwyNy41LDQsMjcsNHogTTIyLDIw
bC0yLDJsLTQtNGwtNCw0ICBsLTItMmw0LTRsLTQtNGwyLTJsNCw0bDQtNGwyLDJsLTQsNEwyMiwyMHoi
IGNsYXNzPSJSZWQiIC8+DQo8L3N2Zz4L
</value>
</data>
<data name="BarButtonItem3.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPECAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz
OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
Pg0KICA8ZyBpZD0iRGVsZXRlTGlzdCI+DQogICAgPHBhdGggZD0iTTYsMjZWNGgxOHYxMy4ybDItMlYz
YzAtMC42LTAuNC0xLTEtMUg1QzQuNCwyLDQsMi40LDQsM3YyNGMwLDAuNiwwLjQsMSwxLDFoOC4ybDIt
Mkg2eiIgY2xhc3M9IkJsYWNrIiAvPg0KICAgIDxwb2x5Z29uIHBvaW50cz0iMjgsMjAgMjYsMTggMjIs
MjIgMTgsMTggMTYsMjAgMjAsMjQgMTYsMjggMTgsMzAgMjIsMjYgMjYsMzAgMjgsMjggMjQsMjQgICIg
Y2xhc3M9IlJlZCIgLz4NCiAgPC9nPg0KPC9zdmc+Cw==
</value>
</data>
<data name="frmControl_Table.IconOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPoBAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iU2VsZWN0VGFibGUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcg
MCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5CbHVle2ZpbGw6IzExNzdENzt9
Cjwvc3R5bGU+DQogIDxwYXRoIGQ9Ik0xMCwxMEgyVjRoOFYxMHogTTIwLDRoLTh2Nmg4VjR6IE0zMCw0
aC04djZoOFY0eiBNMTAsMTJIMnY2aDhWMTJ6IE0yMCwxMmgtOHY2aDhWMTJ6IE0zMCwxMmgtOHY2aDhW
MTJ6ICAgTTEwLDIwSDJ2Nmg4VjIweiBNMjAsMjBoLTh2Nmg4VjIweiBNMzAsMjBoLTh2Nmg4VjIweiIg
Y2xhc3M9IkJsdWUiIC8+DQo8L3N2Zz4L
</value>
</data>
</root>

View File

@@ -1,607 +0,0 @@
Imports System.Data
Imports System.Globalization
Imports DevExpress.Data
Imports DevExpress.Utils
Imports DevExpress.XtraEditors
Imports DevExpress.XtraExport.Helpers
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Columns
Imports DevExpress.XtraGrid.Views.Base
Imports DevExpress.XtraGrid.Views.Grid
Imports DevExpress.XtraReports.ReportGeneration
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.EDMI.API
Public Class frmControl_Table
Private _gridControl As GridControl
Private _gridView As GridView
Private _controlRow As DataRow
Private _dataTable As DataTable
Private _docCurrency As String
Private _profilID As Integer
Private _controlID As Integer
Private _parentValidator As frmValidator
Private _controlCreator As ClassControlCreator
Private ReadOnly MyControlTableLogger As Logger
Private _gridDataLoader As ClassGridDataLoader
Private _isDirty As Boolean = False
' Öffentliche Property für Dirty-Status
Public ReadOnly Property IsDirty As Boolean
Get
Return _isDirty
End Get
End Property
Public Sub New(controlRow As DataRow, dataTable As DataTable, docCurrency As String, parentValidator As frmValidator, controlCreator As ClassControlCreator)
InitializeComponent()
MyControlTableLogger = LOGCONFIG.GetLogger()
_gridDataLoader = New ClassGridDataLoader(DatabaseFallback)
_controlRow = controlRow
_dataTable = dataTable
_docCurrency = docCurrency
_parentValidator = parentValidator
_controlCreator = controlCreator
If controlRow IsNot Nothing Then
_profilID = If(IsDBNull(controlRow("PROFIL_ID")), 0, CInt(controlRow("PROFIL_ID")))
_controlID = If(IsDBNull(controlRow("GUID")), 0, CInt(controlRow("GUID")))
Dim oTitle = $"TABLE.{controlRow("NAME")}.FORMCAPTION"
Dim oCaption = ClassAllgemeineFunktionen.GUI_LANGUAGE_INFO(oTitle)
If IsNothing(oCaption) Then
Me.Text = controlRow("CTRL_TEXT").ToString()
Else
Me.Text = oCaption
End If
End If
End Sub
Private Function GetXML_FormSizeName(pProfilID As Integer, pControlID As Integer)
Dim Filename As String = String.Format($"Formlayout_{pProfilID}-{pControlID}.xml")
Return System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
End Function
Public Function GetGridControl() As GridControl
Return _gridControl
End Function
Private Sub frmControl_Table_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
MyControlTableLogger?.Debug("=== FORM LOAD START ===")
MyControlTableLogger?.Debug($"Form Size: {Me.Size}, Controls vor Grid: {Me.Controls.Count}")
' Grid über ControlCreator erstellen (wie im frmValidator)
CreateGridViaControlCreator()
' WICHTIG: Grid-Daten befüllen
FillGridWithData()
MyControlTableLogger?.Debug($"Nach CreateGrid - Controls im Form: {Me.Controls.Count}")
' GridControl-Status prüfen
If _gridControl IsNot Nothing Then
MyControlTableLogger?.Debug($"GridControl.Visible: {_gridControl.Visible}, Enabled: {_gridControl.Enabled}")
MyControlTableLogger?.Debug($"GridControl.Size: {_gridControl.Size}, Location: {_gridControl.Location}")
MyControlTableLogger?.Debug($"GridControl.Parent: {_gridControl.Parent?.Name}")
End If
' Formular-Größe wiederherstellen
RestoreFormSize()
MyControlTableLogger?.Debug("=== FORM LOAD END ===")
Catch ex As Exception
MyControlTableLogger?.Error($"Fehler beim Laden des Grids: {ex.Message}", ex)
XtraMessageBox.Show($"Fehler beim Laden des Grids: {ex.Message}", "Fehler", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
''' <summary>
''' Befüllt das Grid mit Daten aus der Datenbank
''' </summary>
Private Sub FillGridWithData()
Try
If _gridControl Is Nothing OrElse _parentValidator Is Nothing Then
MyControlTableLogger?.Warn("FillGridWithData: GridControl oder ParentValidator ist Nothing")
Return
End If
MyControlTableLogger?.Debug("Starte FillGridWithData...")
' ✅ RICHTIG: DT_COLUMNS_GRID (ALLE Spalten mit SPALTENBREITE!)
Dim allColumnDefinitions As DataTable = _parentValidator.DT_COLUMNS_GRID
If allColumnDefinitions Is Nothing Then
MyControlTableLogger?.Warn("Keine Spalten-Definitionen verfügbar (DT_COLUMNS_GRID)")
Return
End If
Dim isIDBActive As Boolean = IDB_ACTIVE
Dim userLanguage As String = USER_LANGUAGE
' GridDataLoader mit der RICHTIGEN Tabelle aufrufen
Dim success As Boolean = _gridDataLoader.FillGridData(
_gridControl,
_controlRow,
allColumnDefinitions, ' ← ALLE Spalten, nicht nur SQL!
_parentValidator
)
If success Then
MyControlTableLogger?.Debug("Grid-Daten erfolgreich befüllt")
_gridControl.RefreshDataSource()
Else
MyControlTableLogger?.Warn("Grid-Daten konnten nicht befüllt werden")
End If
Catch ex As Exception
MyControlTableLogger?.Error($"Fehler in FillGridWithData: {ex.Message}", ex)
End Try
End Sub
Private Sub CreateGridViaControlCreator()
If _controlCreator Is Nothing OrElse _controlRow Is Nothing OrElse _dataTable Is Nothing Then
Throw New InvalidOperationException("ControlCreator, ControlRow oder DataTable fehlen.")
End If
Try
MyControlTableLogger?.Debug($"Starte Grid-Erstellung für Control-ID: {_controlID}, Profil-ID: {_profilID}")
' WICHTIG: PanelControl (DevExpress) statt Panel verwenden!
Dim containerPanel As New DevExpress.XtraEditors.PanelControl()
containerPanel.Dock = DockStyle.Fill
containerPanel.Name = "GridContainerPanel"
containerPanel.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder
Me.Controls.Add(containerPanel)
MyControlTableLogger?.Debug("Container PanelControl erstellt und zum Form hinzugefügt")
' Grid über ControlCreator erstellen - MIT PanelControl als Parent
_gridControl = _controlCreator.CreateExistingGridControl(_controlRow, _dataTable, False, _docCurrency, containerPanel)
If _gridControl Is Nothing Then
MyControlTableLogger?.Warn("CreateExistingGridControl hat Nothing zurückgegeben")
Throw New InvalidOperationException("Grid konnte nicht erstellt werden.")
End If
MyControlTableLogger?.Debug($"GridControl erstellt: {_gridControl.Name}")
MyControlTableLogger?.Debug($"GridControl.Parent nach Erstellung: {_gridControl.Parent?.Name}")
' GridControl sollte bereits vom ControlCreator hinzugefügt worden sein
' Falls nicht, explizit hinzufügen
If _gridControl.Parent Is Nothing Then
containerPanel.Controls.Add(_gridControl)
MyControlTableLogger?.Debug("GridControl manuell zu Container hinzugefügt")
End If
' GridControl konfigurieren
_gridControl.Dock = DockStyle.Fill
_gridControl.Visible = True
_gridControl.BringToFront()
MyControlTableLogger?.Debug($"GridControl Dock-Style gesetzt, Container.Controls.Count: {containerPanel.Controls.Count}")
' GridView-Referenz holen
If _gridControl.MainView IsNot Nothing AndAlso TypeOf _gridControl.MainView Is GridView Then
_gridView = DirectCast(_gridControl.MainView, GridView)
MyControlTableLogger?.Debug($"GridView gefunden: {_gridView.Name}, Columns: {_gridView.Columns.Count}")
' Events registrieren (wie im frmValidator)
AddHandler _gridView.CellValueChanged, AddressOf GridView_CellValueChanged
AddHandler _gridView.KeyDown, AddressOf GridView_KeyDown
AddHandler _gridView.RowDeleting, AddressOf GridView_RowDeleting
MyControlTableLogger?.Debug("GridView Events registriert")
Else
MyControlTableLogger?.Warn($"Kein GridView gefunden. MainView ist: {_gridControl.MainView?.GetType().Name}")
End If
If _dataTable IsNot Nothing Then
AddHandler _dataTable.RowDeleted, AddressOf GridDataSource_RowDeleted
MyControlTableLogger?.Debug($"DataTable Events registriert. Rows: {_dataTable.Rows.Count}")
End If
' Refresh erzwingen
_gridControl.Refresh()
containerPanel.Refresh()
Me.Refresh()
MyControlTableLogger?.Debug("CreateGridViaControlCreator abgeschlossen")
Catch ex As Exception
MyControlTableLogger?.Error($"Fehler in CreateGridViaControlCreator: {ex.Message}", ex)
MyControlTableLogger?.Error($"StackTrace: {ex.StackTrace}")
Throw
End Try
End Sub
Private Sub GridView_CellValueChanged(sender As Object, e As CellValueChangedEventArgs)
' Markiere als geändert
_isDirty = True
MyControlTableLogger?.Debug("Grid-Daten geändert - IsDirty = True")
' Änderungen an Parent-Validator weitergeben, falls notwendig
If _parentValidator IsNot Nothing Then
' Hier können Sie die gleiche Logik wie im frmValidator implementieren
End If
End Sub
Private Sub GridView_KeyDown(sender As Object, e As KeyEventArgs)
If e.KeyCode = Keys.Delete Then
If _gridView IsNot Nothing AndAlso _gridView.SelectedRowsCount > 0 Then
Dim result = XtraMessageBox.Show("Möchten Sie die ausgewählte(n) Zeile(n) wirklich löschen?",
"Löschen bestätigen",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question)
If result = DialogResult.Yes Then
_gridView.DeleteSelectedRows()
End If
End If
End If
End Sub
Private Sub GridView_RowDeleting(sender As Object, e As RowDeletingEventArgs)
' Markiere als geändert beim Löschen
_isDirty = True
MyControlTableLogger?.Debug("Grid-Zeile gelöscht - IsDirty = True")
End Sub
Private Sub GridDataSource_RowDeleted(sender As Object, e As DataRowChangeEventArgs)
' Cleanup nach dem Löschen
CleanupDeletedRows()
End Sub
Private Sub CleanupDeletedRows()
If _dataTable Is Nothing Then Return
Try
Dim rowsToRemove As New List(Of DataRow)
For Each row As DataRow In _dataTable.Rows
If row.RowState = DataRowState.Deleted OrElse row.RowState = DataRowState.Detached Then
rowsToRemove.Add(row)
End If
Next
For Each row In rowsToRemove
Try
If row.RowState <> DataRowState.Detached Then
_dataTable.Rows.Remove(row)
End If
Catch
' Row bereits entfernt
End Try
Next
Catch ex As Exception
' Fehlerbehandlung
End Try
End Sub
Public Function GetGridData() As DataTable
Return _dataTable
End Function
Public Function ValidateGrid() As Boolean
If _gridView Is Nothing Then Return True
Try
_gridView.CloseEditor()
_gridView.UpdateCurrentRow()
Return _gridView.PostEditor()
Catch ex As Exception
Return False
End Try
End Function
Private Sub frmControl_Table_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
Try
' Validierung vor dem Schließen
If Not ValidateGrid() Then
Dim result = XtraMessageBox.Show("Es gibt ungespeicherte Änderungen. Trotzdem schließen?",
"Warnung",
MessageBoxButtons.YesNo,
MessageBoxIcon.Warning)
If result = DialogResult.No Then
e.Cancel = True
Return
End If
End If
' Formular-Größe speichern
SaveFormSize()
' Events entfernen
If _gridView IsNot Nothing Then
RemoveHandler _gridView.CellValueChanged, AddressOf GridView_CellValueChanged
RemoveHandler _gridView.KeyDown, AddressOf GridView_KeyDown
RemoveHandler _gridView.RowDeleting, AddressOf GridView_RowDeleting
End If
If _dataTable IsNot Nothing Then
RemoveHandler _dataTable.RowDeleted, AddressOf GridDataSource_RowDeleted
End If
Catch ex As Exception
' Fehlerbehandlung beim Schließen
End Try
End Sub
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick
Try
MyControlTableLogger?.Debug("Daten neu laden angefordert ...")
' Sprachabhängige Texte
Dim title, question, successMessage As String
Select Case USER_LANGUAGE
Case "de-DE"
title = "Daten neu laden"
question = "Möchten Sie die Daten wirklich neu laden?" & vbCrLf & vbCrLf &
"Alle nicht gespeicherten Änderungen gehen verloren!"
successMessage = "Daten wurden erfolgreich neu geladen."
Case "fr-FR"
title = "Recharger les données"
question = "Voulez-vous vraiment recharger les données?" & vbCrLf & vbCrLf &
"Toutes les modifications non enregistrées seront perdues!"
successMessage = "Les données ont été rechargées avec succès."
Case Else ' en-US, en-GB, etc.
title = "Reload Data"
question = "Do you really want to reload the data?" & vbCrLf & vbCrLf &
"All unsaved changes will be lost!"
successMessage = "Data has been successfully reloaded."
End Select
' Benutzer-Bestätigung
Dim result = XtraMessageBox.Show(
question,
title,
MessageBoxButtons.YesNo,
MessageBoxIcon.Question
)
If result = DialogResult.No Then
MyControlTableLogger?.Debug("Reload vom Benutzer abgebrochen")
Return
End If
' GridView zurücksetzen
If _gridView IsNot Nothing Then
_gridView.ClearColumnsFilter()
_gridView.ClearSorting()
_gridView.ClearGrouping()
MyControlTableLogger?.Debug("GridView Filter/Sortierung/Gruppierung gelöscht!")
End If
' Daten neu laden (Spaltenbreiten kommen aus DB!)
FillGridWithData()
' Erfolgs-Meldung
XtraMessageBox.Show(
successMessage,
title,
MessageBoxButtons.OK,
MessageBoxIcon.Information
)
MyControlTableLogger?.Debug("Daten erfolgreich neu geladen")
Catch ex As Exception
MyControlTableLogger?.Error($"Fehler beim Neuladen: {ex.Message}", ex)
' Fehler-Meldung (auch mehrsprachig)
Dim errorTitle As String = If(USER_LANGUAGE = "de-DE", "Fehler", "Error")
Dim errorPrefix As String = If(USER_LANGUAGE = "de-DE", "Fehler beim Neuladen der Daten:", "Error while reloading data:")
XtraMessageBox.Show(
$"{errorPrefix}{vbCrLf}{ex.Message}",
errorTitle,
MessageBoxButtons.OK,
MessageBoxIcon.Error
)
End Try
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
Me.Close()
End Sub
''' <summary>
''' Speichert die aktuelle Formular-Größe und Position in einer XML-Datei
''' </summary>
Private Sub SaveFormSize()
Try
Dim xmlFile As String = GetXML_FormSizeName(_profilID, _controlID)
' XML-Dokument erstellen
Dim xmlDoc As New Xml.XmlDocument()
Dim rootNode As Xml.XmlElement = xmlDoc.CreateElement("FormSize")
xmlDoc.AppendChild(rootNode)
' Größe speichern
Dim widthNode As Xml.XmlElement = xmlDoc.CreateElement("Width")
widthNode.InnerText = Me.Width.ToString()
rootNode.AppendChild(widthNode)
Dim heightNode As Xml.XmlElement = xmlDoc.CreateElement("Height")
heightNode.InnerText = Me.Height.ToString()
rootNode.AppendChild(heightNode)
' Position speichern
Dim leftNode As Xml.XmlElement = xmlDoc.CreateElement("Left")
leftNode.InnerText = Me.Left.ToString()
rootNode.AppendChild(leftNode)
Dim topNode As Xml.XmlElement = xmlDoc.CreateElement("Top")
topNode.InnerText = Me.Top.ToString()
rootNode.AppendChild(topNode)
' WindowState speichern
Dim stateNode As Xml.XmlElement = xmlDoc.CreateElement("WindowState")
stateNode.InnerText = Me.WindowState.ToString()
rootNode.AppendChild(stateNode)
' Verzeichnis erstellen, falls nicht vorhanden
Dim directory As String = System.IO.Path.GetDirectoryName(xmlFile)
If Not String.IsNullOrEmpty(directory) AndAlso Not System.IO.Directory.Exists(directory) Then
System.IO.Directory.CreateDirectory(directory)
End If
' XML speichern
xmlDoc.Save(xmlFile)
MyControlTableLogger?.Debug($"Formular-Größe gespeichert: {xmlFile}")
Catch ex As Exception
MyControlTableLogger?.Error($"Fehler beim Speichern der Formular-Größe: {ex.Message}", ex)
End Try
End Sub
''' <summary>
''' Lädt die gespeicherte Formular-Größe und Position aus der XML-Datei
''' </summary>
Private Sub RestoreFormSize()
Try
Dim xmlFile As String = GetXML_FormSizeName(_profilID, _controlID)
If Not System.IO.File.Exists(xmlFile) Then
MyControlTableLogger?.Debug($"Keine gespeicherte Formular-Größe gefunden: {xmlFile}")
Return
End If
' XML laden
Dim xmlDoc As New Xml.XmlDocument()
xmlDoc.Load(xmlFile)
Dim rootNode As Xml.XmlNode = xmlDoc.SelectSingleNode("FormSize")
If rootNode Is Nothing Then Return
' Größe wiederherstellen
Dim widthNode As Xml.XmlNode = rootNode.SelectSingleNode("Width")
Dim heightNode As Xml.XmlNode = rootNode.SelectSingleNode("Height")
If widthNode IsNot Nothing AndAlso heightNode IsNot Nothing Then
Dim width As Integer = 0
Dim height As Integer = 0
If Integer.TryParse(widthNode.InnerText, width) AndAlso Integer.TryParse(heightNode.InnerText, height) Then
Me.Size = New Size(width, height)
End If
End If
' Position wiederherstellen
Dim leftNode As Xml.XmlNode = rootNode.SelectSingleNode("Left")
Dim topNode As Xml.XmlNode = rootNode.SelectSingleNode("Top")
If leftNode IsNot Nothing AndAlso topNode IsNot Nothing Then
Dim left As Integer = 0
Dim top As Integer = 0
If Integer.TryParse(leftNode.InnerText, left) AndAlso Integer.TryParse(topNode.InnerText, top) Then
Me.Location = New Point(left, top)
End If
End If
' WindowState wiederherstellen
Dim stateNode As Xml.XmlNode = rootNode.SelectSingleNode("WindowState")
If stateNode IsNot Nothing Then
Dim state As FormWindowState
If [Enum].TryParse(Of FormWindowState)(stateNode.InnerText, state) Then
Me.WindowState = state
End If
End If
MyControlTableLogger?.Debug($"Formular-Größe wiederhergestellt: {xmlFile}")
Catch ex As Exception
MyControlTableLogger?.Error($"Fehler beim Wiederherstellen der Formular-Größe: {ex.Message}", ex)
End Try
End Sub
Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick
Try
' Sprachabhängige Texte
Dim title, question, successMessage As String
Select Case USER_LANGUAGE
Case "de-DE"
title = "Layout löschen"
question = "Möchten Sie das gespeicherte Layout wirklich löschen?" & vbCrLf & vbCrLf &
"Das Formular wird auf die Standardgröße zurückgesetzt und neu geladen."
successMessage = "Layout wurde erfolgreich gelöscht." & vbCrLf & "Das Formular wird neu geladen..."
Case "fr-FR"
title = "Supprimer la disposition"
question = "Voulez-vous vraiment supprimer la disposition enregistrée?" & vbCrLf & vbCrLf &
"Le formulaire sera réinitialisé à la taille par défaut et rechargé."
successMessage = "La disposition a été supprimée avec succès." & vbCrLf & "Le formulaire va être rechargé..."
Case Else ' en-US, en-GB, etc.
title = "Delete Layout"
question = "Do you really want to delete the saved layout?" & vbCrLf & vbCrLf &
"The form will be reset to the default size and reloaded."
successMessage = "Layout has been successfully deleted." & vbCrLf & "The form will be reloaded..."
End Select
' Benutzer-Bestätigung
Dim result = XtraMessageBox.Show(
question,
title,
MessageBoxButtons.YesNo,
MessageBoxIcon.Question
)
If result = DialogResult.No Then
MyControlTableLogger?.Debug("Layout-Löschung vom Benutzer abgebrochen")
Return
End If
' Layout-Datei löschen
Dim xmlFile As String = GetXML_FormSizeName(_profilID, _controlID)
Dim layoutDeleted As Boolean = False
If System.IO.File.Exists(xmlFile) Then
System.IO.File.Delete(xmlFile)
layoutDeleted = True
MyControlTableLogger?.Debug($"Layout-Datei gelöscht: {xmlFile}")
Else
MyControlTableLogger?.Debug($"Keine Layout-Datei zum Löschen gefunden: {xmlFile}")
End If
' Erfolgs-Meldung
XtraMessageBox.Show(
successMessage,
title,
MessageBoxButtons.OK,
MessageBoxIcon.Information
)
' Formular neu laden
If layoutDeleted Then
MyControlTableLogger?.Debug("Lade Formular nach Layout-Löschung neu...")
' GridView zurücksetzen
If _gridView IsNot Nothing Then
_gridView.ClearColumnsFilter()
_gridView.ClearSorting()
_gridView.ClearGrouping()
MyControlTableLogger?.Debug("GridView Filter/Sortierung/Gruppierung zurückgesetzt")
End If
' Daten neu laden
FillGridWithData()
' Formular auf Standardgröße zurücksetzen
Me.WindowState = FormWindowState.Normal
Me.StartPosition = FormStartPosition.CenterParent
MyControlTableLogger?.Debug("Formular erfolgreich neu geladen")
End If
Catch ex As Exception
MyControlTableLogger?.Error($"Fehler beim Löschen des Layouts: {ex.Message}", ex)
' Fehler-Meldung (mehrsprachig)
Dim errorTitle As String = If(USER_LANGUAGE = "de-DE", "Fehler", If(USER_LANGUAGE = "fr-FR", "Erreur", "Error"))
Dim errorPrefix As String = If(USER_LANGUAGE = "de-DE",
"Fehler beim Löschen des Layouts:",
If(USER_LANGUAGE = "fr-FR",
"Erreur lors de la suppression de la disposition:",
"Error while deleting layout:"))
XtraMessageBox.Show(
$"{errorPrefix}{vbCrLf}{ex.Message}",
errorTitle,
MessageBoxButtons.OK,
MessageBoxIcon.Error
)
End Try
End Sub
End Class

View File

@@ -298,7 +298,7 @@ Public Class frmFormDesigner
Dim oDTColumnsPerDevExGrid As DataTable = DatabaseFallback.GetDatatableECM(oSQL) ', "FDesignLaodControls")
Dim table = ControlCreator.CreateExistingGridControl(row, oDTColumnsPerDevExGrid, True, "EUR", Panel1)
Dim table = ControlCreator.CreateExistingGridControl(row, oDTColumnsPerDevExGrid, True, "EUR")
AddHandler table.MouseClick, AddressOf gridControl_MouseClick
' AddHandler table.ColumnHeaderMouseClick, AddressOf table_ColumnHeaderMouseClick
@@ -624,6 +624,7 @@ Public Class frmFormDesigner
obj.Index = ClassAllgemeineFunktionen.NotNullString(row.Item("INDEX_NAME"), "")
obj.DefaultValue = ClassAllgemeineFunktionen.NotNullString(row.Item("DEFAULT_VALUE"), Nothing)
obj.TextAlignment = ClassAllgemeineFunktionen.NotNullString(row.Item("TEXT_ALIGNMENT"), "Near")
' Default value for ConnectionID
Dim oConnectionId = ClassAllgemeineFunktionen.NotNullString(row.Item("CONNECTION_ID"), 0)
obj.SQLCommand = New SQLValue(row.Item("SQL_UEBERPRUEFUNG"))
Return obj
@@ -745,7 +746,6 @@ Public Class frmFormDesigner
oGridProps.AllowAddNewValues = StrToBool(oRow.Item("VKT_ADD_ITEM"))
oGridProps.Enable_SQL = New SQLValue(ClassAllgemeineFunktionen.NotNullString(oRow.Item("SQL_ENABLE"), ""))
oGridProps.Enable_SQL_OnLoad = New SQLValue(ClassAllgemeineFunktionen.NotNullString(oRow.Item("SQL_ENABLE_ON_LOAD"), ""))
oGridProps.DISPLAY_SEP_FORM = StrToBool(oRow.Item("DISPLAY_IN_SEPERATE_FORM")) ' Hier hinzufügen
props = oGridProps
ElseIf TypeOf sender Is Button Then
Dim oButton As Button = sender
@@ -908,8 +908,6 @@ Public Class frmFormDesigner
Case "Active"
UpdateSingleValue("CONTROL_ACTIVE", IIf(newValue = True, 1, 0))
Case "DISPLAY_SEP_FORM"
UpdateSingleValue("DISPLAY_IN_SEPERATE_FORM", IIf(newValue = True, 1, 0))
Case "CtrlImage"
Dim myPath As ImageValue = newValue
UpdateImage(myPath.Value)
@@ -1023,19 +1021,12 @@ Public Class frmFormDesigner
Dim oSQL = $"SELECT SQL_BTN_FINISH FROM TBPM_PROFILE WHERE GUID = {ProfileId}"
Dim oldSQL = DatabaseFallback.GetScalarValueECM(oSQL)
Dim oForm As New frmSQLEditor(LOGCONFIG, DatabaseECM) With {
.SQLCommand = oldSQL,
.SQLConnection = 1,
.PlaceholdersManualPrefix = "CTRL",
.PlaceholdersManualTitle = "Controls",
.PlaceholdersManual = CURRENT_CONTROL_NAME_LIST.ToDictionary(Function(name) name, Function(name) name)
}
If IDB_ACTIVE = False Then
oForm.ATTRIBUTE_STORE = "WM"
oForm.PlaceholdersWindream = MVSource_AllIndicies
Else
oForm.ATTRIBUTE_STORE = "IDB"
End If
.SQLCommand = oldSQL,
.SQLConnection = 1,
.PlaceholdersManualPrefix = "CTRL",
.PlaceholdersManualTitle = "Controls",
.PlaceholdersManual = CURRENT_CONTROL_NAME_LIST.ToDictionary(Function(name) name, Function(name) name)
}
oForm.ShowDialog()
If oForm.DialogResult = DialogResult.OK Then
@@ -1155,7 +1146,7 @@ Public Class frmFormDesigner
Dim label = ControlCreator.CreateNewLabel(cursorPosition)
SetMovementHandlers(label)
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, label.Name, "LBL", label.Text, label.Location.X, label.Location.Y, USER_USERNAME, label.Size.Height, label.Size.Width, label.TextAlign, "")
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, label.Name, "LBL", label.Text, label.Location.X, label.Location.Y, USER_USERNAME, label.Size.Height, label.Size.Width, label.TextAlign)
CHANGES_FORM_DESIGN = True
CurrentControl = label
CurrentControl.Tag = New ClassControlCreator.ControlMetadata() With {
@@ -1169,7 +1160,7 @@ Public Class frmFormDesigner
Dim txt = ControlCreator.CreateNewTextBox(cursorPosition)
SetMovementHandlers(txt)
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, txt.Name, "TXT", txt.Name, txt.Location.X, txt.Location.Y, USER_USERNAME, txt.Size.Height, txt.Size.Width, txt.Properties.Appearance.TextOptions.HAlignment, "0")
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, txt.Name, "TXT", txt.Name, txt.Location.X, txt.Location.Y, USER_USERNAME, txt.Size.Height, txt.Size.Width, txt.Properties.Appearance.TextOptions.HAlignment)
CHANGES_FORM_DESIGN = True
CurrentControl = txt
CurrentControl.Tag = New ClassControlCreator.ControlMetadata() With {
@@ -1183,7 +1174,7 @@ Public Class frmFormDesigner
Dim cmb = ControlCreator.CreateNewCombobox(cursorPosition)
SetMovementHandlers(cmb)
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, cmb.Name, "CMB", cmb.Name, cmb.Location.X, cmb.Location.Y, USER_USERNAME, cmb.Size.Height, cmb.Size.Width, "NONE", "0")
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, cmb.Name, "CMB", cmb.Name, cmb.Location.X, cmb.Location.Y, USER_USERNAME, cmb.Size.Height, cmb.Size.Width, "NONE")
CHANGES_FORM_DESIGN = True
CurrentControl = cmb
CurrentControl.Tag = New ClassControlCreator.ControlMetadata() With {
@@ -1197,7 +1188,7 @@ Public Class frmFormDesigner
Dim dtp = ControlCreator.CreateNewDatetimepicker(cursorPosition)
SetMovementHandlers(dtp)
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, dtp.Name, "DTP", dtp.Name, dtp.Location.X, dtp.Location.Y, USER_USERNAME, dtp.Size.Height, dtp.Size.Width, "NONE", "0")
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, dtp.Name, "DTP", dtp.Name, dtp.Location.X, dtp.Location.Y, USER_USERNAME, dtp.Size.Height, dtp.Size.Width, "NONE")
CHANGES_FORM_DESIGN = True
CurrentControl = dtp
CurrentControl.Tag = New ClassControlCreator.ControlMetadata() With {
@@ -1211,7 +1202,7 @@ Public Class frmFormDesigner
Dim chk = ControlCreator.CreateNewCheckbox(cursorPosition)
SetMovementHandlers(chk)
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, chk.Name, "CHK", chk.Text, chk.Location.X, chk.Location.Y, USER_USERNAME, chk.Size.Height, chk.Size.Width, "NONE", "0")
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, chk.Name, "CHK", chk.Text, chk.Location.X, chk.Location.Y, USER_USERNAME, chk.Size.Height, chk.Size.Width, "NONE")
CHANGES_FORM_DESIGN = True
CurrentControl = chk
CurrentControl.Tag = New ClassControlCreator.ControlMetadata() With {
@@ -1226,7 +1217,7 @@ Public Class frmFormDesigner
SetMovementHandlers(lc)
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, lc.Name, "LOOKUP", lc.Name, lc.Location.X, lc.Location.Y, USER_USERNAME, lc.Size.Height, lc.Size.Width, lc.Properties.Appearance.TextOptions.HAlignment, "0")
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, lc.Name, "LOOKUP", lc.Name, lc.Location.X, lc.Location.Y, USER_USERNAME, lc.Size.Height, lc.Size.Width, lc.Properties.Appearance.TextOptions.HAlignment)
CHANGES_FORM_DESIGN = True
CurrentControl = lc
CurrentControl.Tag = New ClassControlCreator.ControlMetadata() With {
@@ -1242,7 +1233,7 @@ Public Class frmFormDesigner
SetMovementHandlers(tb)
AddHandler tb.MouseClick, AddressOf gridControl_MouseClick
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, tb.Name, "TABLE", tb.Name, tb.Location.X, tb.Location.Y, USER_USERNAME, tb.Size.Height, tb.Size.Width, "NONE", "")
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, tb.Name, "TABLE", tb.Name, tb.Location.X, tb.Location.Y, USER_USERNAME, tb.Size.Height, tb.Size.Width, "NONE")
CHANGES_FORM_DESIGN = True
Dim oControlId = GetLastID()
@@ -1261,7 +1252,7 @@ Public Class frmFormDesigner
SetMovementHandlers(line)
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, line.Name, "LINE", line.Name, line.Location.X, line.Location.Y, USER_USERNAME, line.Size.Height, line.Size.Width, "NONE", "")
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, line.Name, "LINE", line.Name, line.Location.X, line.Location.Y, USER_USERNAME, line.Size.Height, line.Size.Width, "NONE")
CHANGES_FORM_DESIGN = True
CurrentControl = line
CurrentControl.Tag = New ClassControlCreator.ControlMetadata() With {
@@ -1276,7 +1267,7 @@ Public Class frmFormDesigner
SetMovementHandlers(oButton)
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, oButton.Name, "BUTTON", oButton.Name, oButton.Location.X, oButton.Location.Y, USER_USERNAME, oButton.Size.Height, oButton.Size.Width, "NONE", "")
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, oButton.Name, "BUTTON", oButton.Name, oButton.Location.X, oButton.Location.Y, USER_USERNAME, oButton.Size.Height, oButton.Size.Width, "NONE")
CHANGES_FORM_DESIGN = True
CurrentControl = oButton
CurrentControl.Tag = New ClassControlCreator.ControlMetadata() With {

File diff suppressed because it is too large Load Diff

View File

@@ -290,9 +290,6 @@
<metadata name="TableAdapterManager.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>905, 17</value>
</metadata>
<metadata name="VWPM_CHART_TOP5BindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>1078, 17</value>
</metadata>
<data name="colKRED_NAME.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
@@ -437,6 +434,9 @@
GT/5HgfSAAAAAElFTkSuQmCC
</value>
</data>
<metadata name="VWPM_CHART_TOP5BindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>1078, 17</value>
</metadata>
<metadata name="VWPM_CHART_TOP5TableAdapter.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 56</value>
</metadata>

View File

@@ -4,7 +4,7 @@ Imports DevExpress.XtraCharts
Imports DevExpress.XtraGrid.Views.Tile
Imports DigitalData.GUIs.Common
Public Class frmInvDashboard
Partial Public Class frmInvDashboard
Private _selectedChart As ChartControl
Private Sub frmInvDashboard_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
@@ -15,26 +15,104 @@ Public Class frmInvDashboard
WithClipboardHandler()
Try
VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter.Connection.ConnectionString = CONNECTION_STRING_ECM
Me.VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter.Fill(Me.DD_DMSLiteDataSet.VWPM_CHART_INVOICE_MONITOR_SERIES)
Catch ex As Exception
MsgBox("Error loading form1 - " & ex.Message, MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
End Try
VWPM_CHART_TOP5TableAdapter.Connection.ConnectionString = CONNECTION_STRING_ECM
Me.VWPM_CHART_TOP5TableAdapter.Fill(Me.DD_DMSLiteDataSet.VWPM_CHART_TOP5)
VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter.Connection.ConnectionString = CONNECTION_STRING_ECM
Me.VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter.Fill(Me.DD_DMSLiteDataSet.VWPM_CHART_INVOICE_MONITOR_SERIES, COCKPIT_CHART_ID)
Catch ex As Exception
MsgBox("Error loading VWPM_CHART_INVOICE_MONITOR_SERIES - " & ex.Message, MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
LOGGER.Error(ex)
End Try
Try
Dim osql = $"SELECT KRED_NAME, ANZ_BELEG, Netto, Skonto FROM VWPM_CHART_TOP5 WHERE COCKPIT_CHART_ID = {COCKPIT_CHART_ID}"
Dim dtTOP5 As DataTable = DatabaseFallback.GetDatatableECM(osql)
If IsNothing(dtTOP5) OrElse dtTOP5.Rows.Count = 0 Then
LOGGER.Warn("No data for VWPM_CHART_TOP5 - check SQL query or connection!")
GridControlTopKreditoren.DataSource = Nothing
GridControlTopKreditoren.Visible = False
BarButtonItemTKredPdf.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
BarButtonItemTKredExcel.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
Else
GridControlTopKreditoren.DataSource = dtTOP5
GridControlTopKreditoren.Visible = True
BarButtonItemTKredPdf.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
BarButtonItemTKredExcel.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
End If
'VWPM_CHART_TOP5TableAdapter.Connection.ConnectionString = CONNECTION_STRING_ECM
'Me.VWPM_CHART_TOP5TableAdapter.Fill(Me.DD_DMSLiteDataSet.VWPM_CHART_TOP5, COCKPIT_CHART_ID)
Catch ex As Exception
MsgBox("Error loading VWPM_CHART_TOP5 - " & ex.Message, MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
LOGGER.Error(ex)
End Try
ApplySplitterPosition()
Layout_Dashboard()
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Error loading form2 - " & ex.Message, MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
End Try
End Sub
Private Sub frmInvDashboard_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
SaveSplitterPosition()
End Sub
Private Sub ApplySplitterPosition()
Try
If IsNothing(CONFIG) OrElse IsNothing(CONFIG.Config) Then
Return
End If
If IsNothing(CONFIG.Config.InvDashboardSplitterPositions) Then
CONFIG.Config.InvDashboardSplitterPositions = New List(Of ClassConfig.InvDashboardSplitterPosition)
Return
End If
Dim entry = CONFIG.Config.InvDashboardSplitterPositions.
FirstOrDefault(Function(x) x.CockpitChartId = COCKPIT_CHART_ID)
If entry IsNot Nothing Then
SplitContainerControl1.SplitterPosition = entry.SplitterPosition
End If
Catch ex As Exception
LOGGER.Error(ex)
End Try
End Sub
Private Sub SaveSplitterPosition()
Try
If IsNothing(CONFIG) OrElse IsNothing(CONFIG.Config) Then
Return
End If
If IsNothing(CONFIG.Config.InvDashboardSplitterPositions) Then
CONFIG.Config.InvDashboardSplitterPositions = New List(Of ClassConfig.InvDashboardSplitterPosition)
End If
Dim entry = CONFIG.Config.InvDashboardSplitterPositions.
FirstOrDefault(Function(x) x.CockpitChartId = COCKPIT_CHART_ID)
If entry Is Nothing Then
CONFIG.Config.InvDashboardSplitterPositions.Add(New ClassConfig.InvDashboardSplitterPosition With {
.CockpitChartId = COCKPIT_CHART_ID,
.SplitterPosition = SplitContainerControl1.SplitterPosition
})
Else
entry.SplitterPosition = SplitContainerControl1.SplitterPosition
End If
CONFIG.Save()
Catch ex As Exception
LOGGER.Error(ex)
End Try
End Sub
Sub Layout_Dashboard()
Try
Dim groupCount As Integer
Dim charts As List(Of ChartControl)
Dim oGroups As DataRowCollection = BASEDATA_DT_CHARTS.Rows
Dim oGroups As DataRow() = BASEDATA_DT_CHARTS.Select($"COCKPIT_CHART_ID = {COCKPIT_CHART_ID}")
groupCount = oGroups.Count
Configure_Split_Containers(groupCount)
charts = New List(Of ChartControl) From {ChartTopLeft, ChartTopRight, ChartBottomLeft, ChartBottomRight}
If groupCount >= 1 Then
@@ -53,7 +131,7 @@ Public Class frmInvDashboard
If groupCount >= 1 Then
LOGGER.Debug($"ChartCreating...Found more than one charts [{groupCount}]")
For Each gRow As DataRow In oGroups
Dim oGroupIndex As Integer = oGroups.IndexOf(gRow)
Dim oGroupIndex As Integer = Array.IndexOf(oGroups, gRow)
Dim oGroupID As String = gRow.Item("GROUP_ID")
Dim groupCharts = BASEDATA_DT_CHARTS.Select(String.Format("GROUP_ID = '{0}'", oGroupID))
@@ -314,8 +392,8 @@ Public Class frmInvDashboard
RibbonPageGroup1.Enabled = False
RibbonPageGroup2.Enabled = True
BarButtonItem3.Enabled = True
BarButtonItem4.Enabled = False
BarButtonItem5.Enabled = False
BarButtonItemTKredExcel.Enabled = False
BarButtonItemTKredPdf.Enabled = False
End Sub
Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick
@@ -325,25 +403,25 @@ Public Class frmInvDashboard
End If
End Sub
Private Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem4.ItemClick
Private Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemTKredExcel.ItemClick
SaveFileDialog1.Filter = "Excel Files (*.xlsx*)|*.xlsx"
If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
GridView1.ExportToXlsx(SaveFileDialog1.FileName)
End If
End Sub
Private Sub BarButtonItem5_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem5.ItemClick
Private Sub BarButtonItem5_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemTKredPdf.ItemClick
SaveFileDialog1.Filter = "PDF Files (*.pdf*)|*.pdf"
If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
GridView1.ExportToPdf(SaveFileDialog1.FileName)
End If
End Sub
Private Sub GridControl2_Click(sender As Object, e As EventArgs) Handles GridControl2.Click
Private Sub GridControl2_Click(sender As Object, e As EventArgs) Handles GridControlTopKreditoren.Click
RibbonPageGroup1.Enabled = False
RibbonPageGroup2.Enabled = True
BarButtonItem3.Enabled = False
BarButtonItem4.Enabled = True
BarButtonItem5.Enabled = True
BarButtonItemTKredExcel.Enabled = True
BarButtonItemTKredPdf.Enabled = True
End Sub
End Class

View File

@@ -24,15 +24,9 @@ Partial Class frmMain
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmMain))
Me.ImageListProfile = New System.Windows.Forms.ImageList(Me.components)
Me.DD_DMSLiteDataSet = New taskFLOW.DD_DMSLiteDataSet()
Me.TableAdapterManager = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager()
Me.Panel1 = New System.Windows.Forms.Panel()
Me.GridControlWorkflows = New DevExpress.XtraGrid.GridControl()
Me.GridViewWorkflows = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.TreeList_Cockpit = New DevExpress.XtraTreeList.TreeList()
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
Me.bbtniRefresh = New DevExpress.XtraBars.BarButtonItem()
Me.bbtniMonitor = New DevExpress.XtraBars.BarButtonItem()
Me.bbiProfilverwaltung = New DevExpress.XtraBars.BarButtonItem()
Me.bbiKonfiguration = New DevExpress.XtraBars.BarButtonItem()
Me.bbtniGrundeinstellung = New DevExpress.XtraBars.BarButtonItem()
@@ -48,7 +42,6 @@ Partial Class frmMain
Me.bbtniMetadataFile = New DevExpress.XtraBars.BarButtonItem()
Me.BarEditItem1 = New DevExpress.XtraBars.BarEditItem()
Me.RepositoryItemProgressBar1 = New DevExpress.XtraEditors.Repository.RepositoryItemProgressBar()
Me.bbtnitDashboardInv = New DevExpress.XtraBars.BarButtonItem()
Me.bsiGeneralInfo = New DevExpress.XtraBars.BarStaticItem()
Me.bbtnitmGhostMode = New DevExpress.XtraBars.BarButtonItem()
Me.bsi_GhostMode = New DevExpress.XtraBars.BarStaticItem()
@@ -84,9 +77,9 @@ Partial Class frmMain
Me.BSIVERSION1 = New DevExpress.XtraBars.BarStaticItem()
Me.barbtnitmsaveLogfiles = New DevExpress.XtraBars.BarButtonItem()
Me.bsitmCount = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItemCock_refresh = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPageStart = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroupBasicConf = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup7 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
@@ -99,14 +92,18 @@ Partial Class frmMain
Me.RibbonPageGroup8 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RepositoryItemTrackBar1 = New DevExpress.XtraEditors.Repository.RepositoryItemTrackBar()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.ImageCollection1 = New DevExpress.Utils.ImageCollection(Me.components)
Me.GridControlWorkflows = New DevExpress.XtraGrid.GridControl()
Me.GridViewWorkflows = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.Panel2 = New System.Windows.Forms.Panel()
Me.lblCaptionMainGrid = New System.Windows.Forms.Label()
Me.NavBarControl1 = New DevExpress.XtraNavBar.NavBarControl()
Me.NavBarGroupProfiles = New DevExpress.XtraNavBar.NavBarGroup()
Me.ImageListProfile = New System.Windows.Forms.ImageList(Me.components)
Me.DD_DMSLiteDataSet = New taskFLOW.DD_DMSLiteDataSet()
Me.TableAdapterManager = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager()
Me.Panel1 = New System.Windows.Forms.Panel()
Me.SplitterControl1 = New DevExpress.XtraEditors.SplitterControl()
Me.cmsNavPane = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.tsmiValidationProfil = New System.Windows.Forms.ToolStripMenuItem()
Me.NavBarGroupMore = New DevExpress.XtraNavBar.NavBarGroup()
Me.NavBarItemOverview = New DevExpress.XtraNavBar.NavBarItem()
Me.bindsourcegrid = New System.Windows.Forms.BindingSource(Me.components)
Me.NotifyIcon1 = New System.Windows.Forms.NotifyIcon(Me.components)
Me.ContextMenuNotifyIcon = New System.Windows.Forms.ContextMenuStrip(Me.components)
@@ -194,16 +191,17 @@ Partial Class frmMain
Me.TimerInactivity = New System.Windows.Forms.Timer(Me.components)
Me.BarButtonItem5 = New DevExpress.XtraBars.BarButtonItem()
Me.BarButtonItem9 = New DevExpress.XtraBars.BarButtonItem()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
Me.Panel1.SuspendLayout()
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TreeList_Cockpit, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemProgressBar1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.cmbGridFontSize, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTrackBar1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.ImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
Me.Panel2.SuspendLayout()
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
Me.Panel1.SuspendLayout()
Me.cmsNavPane.SuspendLayout()
CType(Me.bindsourcegrid, System.ComponentModel.ISupportInitialize).BeginInit()
Me.ContextMenuNotifyIcon.SuspendLayout()
@@ -214,88 +212,36 @@ Partial Class frmMain
CType(Me.ApplicationMenu1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'ImageListProfile
'TreeList_Cockpit
'
Me.ImageListProfile.ImageStream = CType(resources.GetObject("ImageListProfile.ImageStream"), System.Windows.Forms.ImageListStreamer)
Me.ImageListProfile.TransparentColor = System.Drawing.Color.Transparent
Me.ImageListProfile.Images.SetKeyName(0, "ico2558.ico")
Me.ImageListProfile.Images.SetKeyName(1, "ico2591.ico")
'
'DD_DMSLiteDataSet
'
Me.DD_DMSLiteDataSet.DataSetName = "DD_DMSLiteDataSet"
Me.DD_DMSLiteDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema
'
'TableAdapterManager
'
Me.TableAdapterManager.BackupDataSetBeforeUpdate = False
Me.TableAdapterManager.Connection = Nothing
Me.TableAdapterManager.TBDD_CONNECTIONTableAdapter = Nothing
Me.TableAdapterManager.TBDD_EMAIL_TEMPLATETableAdapter = Nothing
Me.TableAdapterManager.TBDD_GUI_LANGUAGE_PHRASETableAdapter = Nothing
Me.TableAdapterManager.TBDD_USERTableAdapter = Nothing
Me.TableAdapterManager.TBPM_CONTROL_TABLETableAdapter = Nothing
Me.TableAdapterManager.TBPM_ERROR_LOGTableAdapter = Nothing
Me.TableAdapterManager.TBPM_KONFIGURATIONTableAdapter = Nothing
Me.TableAdapterManager.TBPM_PROFILE_CONTROLSTableAdapter = Nothing
Me.TableAdapterManager.TBPM_PROFILE_FILESTableAdapter = Nothing
Me.TableAdapterManager.TBPM_PROFILE_FINAL_INDEXINGTableAdapter = Nothing
Me.TableAdapterManager.TBPM_PROFILETableAdapter = Nothing
Me.TableAdapterManager.TBPM_TYPETableAdapter = Nothing
Me.TableAdapterManager.UpdateOrder = taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete
'
'Panel1
'
Me.Panel1.BackColor = System.Drawing.Color.Transparent
Me.Panel1.Controls.Add(Me.GridControlWorkflows)
Me.Panel1.Controls.Add(Me.Panel2)
Me.Panel1.Controls.Add(Me.NavBarControl1)
resources.ApplyResources(Me.Panel1, "Panel1")
Me.Panel1.Name = "Panel1"
'
'GridControlWorkflows
'
resources.ApplyResources(Me.GridControlWorkflows, "GridControlWorkflows")
Me.GridControlWorkflows.MainView = Me.GridViewWorkflows
Me.GridControlWorkflows.MenuManager = Me.RibbonControl1
Me.GridControlWorkflows.Name = "GridControlWorkflows"
Me.GridControlWorkflows.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewWorkflows})
'
'GridViewWorkflows
'
Me.GridViewWorkflows.Appearance.EvenRow.BackColor = System.Drawing.Color.Azure
Me.GridViewWorkflows.Appearance.EvenRow.Options.UseBackColor = True
Me.GridViewWorkflows.Appearance.FooterPanel.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.FooterPanel.Font"), System.Drawing.Font)
Me.GridViewWorkflows.Appearance.FooterPanel.Options.UseFont = True
Me.GridViewWorkflows.Appearance.ViewCaption.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.ViewCaption.Font"), System.Drawing.Font)
Me.GridViewWorkflows.Appearance.ViewCaption.ForeColor = System.Drawing.Color.Black
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseFont = True
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseForeColor = True
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseTextOptions = True
Me.GridViewWorkflows.Appearance.ViewCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near
Me.GridViewWorkflows.GridControl = Me.GridControlWorkflows
Me.GridViewWorkflows.Name = "GridViewWorkflows"
Me.GridViewWorkflows.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.[False]
Me.GridViewWorkflows.OptionsBehavior.AllowDeleteRows = DevExpress.Utils.DefaultBoolean.[False]
Me.GridViewWorkflows.OptionsBehavior.AllowFixedGroups = DevExpress.Utils.DefaultBoolean.[True]
Me.GridViewWorkflows.OptionsBehavior.AllowGroupExpandAnimation = DevExpress.Utils.DefaultBoolean.[True]
Me.GridViewWorkflows.OptionsBehavior.Editable = False
Me.GridViewWorkflows.OptionsClipboard.CopyColumnHeaders = DevExpress.Utils.DefaultBoolean.[False]
Me.GridViewWorkflows.OptionsSelection.MultiSelect = True
Me.GridViewWorkflows.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CellSelect
Me.GridViewWorkflows.OptionsView.ColumnAutoWidth = False
Me.GridViewWorkflows.OptionsView.EnableAppearanceEvenRow = True
Me.GridViewWorkflows.OptionsView.ShowAutoFilterRow = True
Me.GridViewWorkflows.OptionsView.ShowErrorPanel = DevExpress.Utils.DefaultBoolean.[True]
Me.GridViewWorkflows.OptionsView.ShowHorizontalLines = DevExpress.Utils.DefaultBoolean.[False]
Me.GridViewWorkflows.OptionsView.ShowVerticalLines = DevExpress.Utils.DefaultBoolean.[False]
resources.ApplyResources(Me.TreeList_Cockpit, "TreeList_Cockpit")
Me.TreeList_Cockpit.ImageIndexFieldName = "ICON_INDEX"
Me.TreeList_Cockpit.KeyFieldName = "PK_CFG_COCKPIT_DEFINITION_ID"
Me.TreeList_Cockpit.MenuManager = Me.RibbonControl1
Me.TreeList_Cockpit.Name = "TreeList_Cockpit"
Me.TreeList_Cockpit.OptionsBehavior.Editable = False
Me.TreeList_Cockpit.OptionsBehavior.PopulateServiceColumns = True
Me.TreeList_Cockpit.OptionsBehavior.ReadOnly = True
Me.TreeList_Cockpit.OptionsLayout.AddNewColumns = False
Me.TreeList_Cockpit.OptionsMenu.ShowExpandCollapseItems = False
Me.TreeList_Cockpit.OptionsSelection.EnableAppearanceFocusedCell = False
Me.TreeList_Cockpit.OptionsView.ShowColumns = False
Me.TreeList_Cockpit.OptionsView.ShowFilterPanelMode = DevExpress.XtraTreeList.ShowFilterPanelMode.Never
Me.TreeList_Cockpit.OptionsView.ShowFirstLines = False
Me.TreeList_Cockpit.OptionsView.ShowHorzLines = False
Me.TreeList_Cockpit.OptionsView.ShowIndentAsRowStyle = True
Me.TreeList_Cockpit.OptionsView.ShowIndicator = False
Me.TreeList_Cockpit.OptionsView.ShowVertLines = False
Me.TreeList_Cockpit.OptionsView.TreeLineStyle = DevExpress.XtraTreeList.LineStyle.Dark
Me.TreeList_Cockpit.ParentFieldName = "Parent_ID"
Me.TreeList_Cockpit.SelectImageList = Me.ImageCollection1
'
'RibbonControl1
'
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.bbtniRefresh, Me.bbtniMonitor, Me.bbiProfilverwaltung, Me.bbiKonfiguration, Me.bbtniGrundeinstellung, Me.bbtnitemInfo, Me.BarButtonItem1, Me.bsiUser, Me.bsiLicenses, Me.bsiUserLoggedIn, Me.bsiVersion, Me.bsilastsync, Me.bsiDebug, Me.bsiMessage, Me.bbtniMetadataFile, Me.BarEditItem1, Me.bbtnitDashboardInv, Me.bsiGeneralInfo, Me.bbtnitmGhostMode, Me.bsi_GhostMode, Me.BarButtonItemGhostMode, Me.SearchItem1, Me.SearchItem2, Me.BarStaticItemAppServer, Me.bbtniCW, Me.bsiInactivityCheck, Me.BarButtonItem2, Me.BarCheckItemAutofilter, Me.BarCheckItem2, Me.BarButtonItemResetLayout, Me.BarButtonItem4, Me.BarButtonItemExportExcel, Me.BarButtonItem6, Me.BarButtonItem7, Me.BarButtonItemWFSingle, Me.BarButtonItemWFGroup, Me.BarButtonItemFileLink, Me.BarButtonItemMassValidation, Me.BarCheckItemShowSearch, Me.barItemGridFontSize, Me.BarButtonItem8, Me.BbtnitmAHWF1, Me.BbtnitmAHWF2, Me.BbtnitmAHWF3, Me.BbtnitmAHWF4, Me.bbtnitmLanguage_Change, Me.BarButtonItem10, Me.BBtnItmNotfications, Me.BSIVERSION1, Me.barbtnitmsaveLogfiles, Me.bsitmCount})
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.bbtniRefresh, Me.bbiProfilverwaltung, Me.bbiKonfiguration, Me.bbtniGrundeinstellung, Me.bbtnitemInfo, Me.BarButtonItem1, Me.bsiUser, Me.bsiLicenses, Me.bsiUserLoggedIn, Me.bsiVersion, Me.bsilastsync, Me.bsiDebug, Me.bsiMessage, Me.bbtniMetadataFile, Me.BarEditItem1, Me.bsiGeneralInfo, Me.bbtnitmGhostMode, Me.bsi_GhostMode, Me.BarButtonItemGhostMode, Me.SearchItem1, Me.SearchItem2, Me.BarStaticItemAppServer, Me.bbtniCW, Me.bsiInactivityCheck, Me.BarButtonItem2, Me.BarCheckItemAutofilter, Me.BarCheckItem2, Me.BarButtonItemResetLayout, Me.BarButtonItem4, Me.BarButtonItemExportExcel, Me.BarButtonItem6, Me.BarButtonItem7, Me.BarButtonItemWFSingle, Me.BarButtonItemWFGroup, Me.BarButtonItemFileLink, Me.BarButtonItemMassValidation, Me.BarCheckItemShowSearch, Me.barItemGridFontSize, Me.BarButtonItem8, Me.BbtnitmAHWF1, Me.BbtnitmAHWF2, Me.BbtnitmAHWF3, Me.BbtnitmAHWF4, Me.bbtnitmLanguage_Change, Me.BarButtonItem10, Me.BBtnItmNotfications, Me.BSIVERSION1, Me.barbtnitmsaveLogfiles, Me.bsitmCount, Me.BarButtonItemCock_refresh})
resources.ApplyResources(Me.RibbonControl1, "RibbonControl1")
Me.RibbonControl1.MaxItemId = 57
Me.RibbonControl1.MaxItemId = 58
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPageStart, Me.RibbonPageTabelle, Me.RibbonPageAktionen})
Me.RibbonControl1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemProgressBar1, Me.RepositoryItemTrackBar1, Me.cmbGridFontSize})
@@ -313,14 +259,6 @@ Partial Class frmMain
Me.bbtniRefresh.ImageOptions.LargeImage = CType(resources.GetObject("bbtniRefresh.ImageOptions.LargeImage"), System.Drawing.Image)
Me.bbtniRefresh.Name = "bbtniRefresh"
'
'bbtniMonitor
'
resources.ApplyResources(Me.bbtniMonitor, "bbtniMonitor")
Me.bbtniMonitor.Id = 2
Me.bbtniMonitor.ImageOptions.Image = CType(resources.GetObject("bbtniMonitor.ImageOptions.Image"), System.Drawing.Image)
Me.bbtniMonitor.ImageOptions.LargeImage = CType(resources.GetObject("bbtniMonitor.ImageOptions.LargeImage"), System.Drawing.Image)
Me.bbtniMonitor.Name = "bbtniMonitor"
'
'bbiProfilverwaltung
'
resources.ApplyResources(Me.bbiProfilverwaltung, "bbiProfilverwaltung")
@@ -436,13 +374,6 @@ Partial Class frmMain
Me.RepositoryItemProgressBar1.Name = "RepositoryItemProgressBar1"
Me.RepositoryItemProgressBar1.ShowTitle = True
'
'bbtnitDashboardInv
'
resources.ApplyResources(Me.bbtnitDashboardInv, "bbtnitDashboardInv")
Me.bbtnitDashboardInv.Id = 17
Me.bbtnitDashboardInv.ImageOptions.SvgImage = CType(resources.GetObject("bbtnitDashboardInv.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.bbtnitDashboardInv.Name = "bbtnitDashboardInv"
'
'bsiGeneralInfo
'
Me.bsiGeneralInfo.Id = 18
@@ -732,29 +663,29 @@ Partial Class frmMain
Me.bsitmCount.Name = "bsitmCount"
Me.bsitmCount.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
'
'BarButtonItemCock_refresh
'
resources.ApplyResources(Me.BarButtonItemCock_refresh, "BarButtonItemCock_refresh")
Me.BarButtonItemCock_refresh.Id = 57
Me.BarButtonItemCock_refresh.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItemCock_refresh.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItemCock_refresh.Name = "BarButtonItemCock_refresh"
'
'RibbonPageStart
'
Me.RibbonPageStart.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3, Me.RibbonPageGroupBasicConf, Me.RibbonPageGroup7, Me.RibbonPageGroup4, Me.RibbonPageGroupAHW})
Me.RibbonPageStart.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup3, Me.RibbonPageGroupBasicConf, Me.RibbonPageGroup7, Me.RibbonPageGroup4, Me.RibbonPageGroupAHW})
Me.RibbonPageStart.Name = "RibbonPageStart"
resources.ApplyResources(Me.RibbonPageStart, "RibbonPageStart")
'
'RibbonPageGroup1
'
Me.RibbonPageGroup1.AllowTextClipping = False
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItemCock_refresh)
Me.RibbonPageGroup1.ItemLinks.Add(Me.bbtniRefresh)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItemGhostMode)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BBtnItmNotfications)
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
resources.ApplyResources(Me.RibbonPageGroup1, "RibbonPageGroup1")
'
'RibbonPageGroup2
'
Me.RibbonPageGroup2.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
Me.RibbonPageGroup2.ItemLinks.Add(Me.bbtnitDashboardInv)
Me.RibbonPageGroup2.ItemLinks.Add(Me.bbtniMonitor)
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
resources.ApplyResources(Me.RibbonPageGroup2, "RibbonPageGroup2")
'
'RibbonPageGroup3
'
Me.RibbonPageGroup3.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
@@ -863,6 +794,52 @@ Partial Class frmMain
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
'
'ImageCollection1
'
resources.ApplyResources(Me.ImageCollection1, "ImageCollection1")
Me.ImageCollection1.ImageStream = CType(resources.GetObject("ImageCollection1.ImageStream"), DevExpress.Utils.ImageCollectionStreamer)
Me.ImageCollection1.Images.SetKeyName(0, "splittablecells_32x32.png")
Me.ImageCollection1.Images.SetKeyName(1, "bosaleitem_32x32.png")
Me.ImageCollection1.Images.SetKeyName(2, "bar2_32x32.png")
Me.ImageCollection1.Images.SetKeyName(3, "gaugestylefullcircular_32x32.png")
'
'GridControlWorkflows
'
resources.ApplyResources(Me.GridControlWorkflows, "GridControlWorkflows")
Me.GridControlWorkflows.MainView = Me.GridViewWorkflows
Me.GridControlWorkflows.MenuManager = Me.RibbonControl1
Me.GridControlWorkflows.Name = "GridControlWorkflows"
Me.GridControlWorkflows.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewWorkflows})
'
'GridViewWorkflows
'
Me.GridViewWorkflows.Appearance.EvenRow.BackColor = System.Drawing.Color.Azure
Me.GridViewWorkflows.Appearance.EvenRow.Options.UseBackColor = True
Me.GridViewWorkflows.Appearance.FooterPanel.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.FooterPanel.Font"), System.Drawing.Font)
Me.GridViewWorkflows.Appearance.FooterPanel.Options.UseFont = True
Me.GridViewWorkflows.Appearance.ViewCaption.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.ViewCaption.Font"), System.Drawing.Font)
Me.GridViewWorkflows.Appearance.ViewCaption.ForeColor = System.Drawing.Color.Black
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseFont = True
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseForeColor = True
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseTextOptions = True
Me.GridViewWorkflows.Appearance.ViewCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near
Me.GridViewWorkflows.GridControl = Me.GridControlWorkflows
Me.GridViewWorkflows.Name = "GridViewWorkflows"
Me.GridViewWorkflows.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.[False]
Me.GridViewWorkflows.OptionsBehavior.AllowDeleteRows = DevExpress.Utils.DefaultBoolean.[False]
Me.GridViewWorkflows.OptionsBehavior.AllowFixedGroups = DevExpress.Utils.DefaultBoolean.[True]
Me.GridViewWorkflows.OptionsBehavior.AllowGroupExpandAnimation = DevExpress.Utils.DefaultBoolean.[True]
Me.GridViewWorkflows.OptionsBehavior.Editable = False
Me.GridViewWorkflows.OptionsClipboard.CopyColumnHeaders = DevExpress.Utils.DefaultBoolean.[False]
Me.GridViewWorkflows.OptionsSelection.MultiSelect = True
Me.GridViewWorkflows.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CellSelect
Me.GridViewWorkflows.OptionsView.ColumnAutoWidth = False
Me.GridViewWorkflows.OptionsView.EnableAppearanceEvenRow = True
Me.GridViewWorkflows.OptionsView.ShowAutoFilterRow = True
Me.GridViewWorkflows.OptionsView.ShowErrorPanel = DevExpress.Utils.DefaultBoolean.[True]
Me.GridViewWorkflows.OptionsView.ShowHorizontalLines = DevExpress.Utils.DefaultBoolean.[False]
Me.GridViewWorkflows.OptionsView.ShowVerticalLines = DevExpress.Utils.DefaultBoolean.[False]
'
'Panel2
'
Me.Panel2.Controls.Add(Me.lblCaptionMainGrid)
@@ -874,26 +851,51 @@ Partial Class frmMain
resources.ApplyResources(Me.lblCaptionMainGrid, "lblCaptionMainGrid")
Me.lblCaptionMainGrid.Name = "lblCaptionMainGrid"
'
'NavBarControl1
'ImageListProfile
'
Me.NavBarControl1.ActiveGroup = Me.NavBarGroupProfiles
Me.NavBarControl1.ContextMenuStrip = Me.cmsNavPane
resources.ApplyResources(Me.NavBarControl1, "NavBarControl1")
Me.NavBarControl1.Groups.AddRange(New DevExpress.XtraNavBar.NavBarGroup() {Me.NavBarGroupMore, Me.NavBarGroupProfiles})
Me.NavBarControl1.Items.AddRange(New DevExpress.XtraNavBar.NavBarItem() {Me.NavBarItemOverview})
Me.NavBarControl1.Name = "NavBarControl1"
Me.NavBarControl1.OptionsNavPane.ExpandedWidth = CType(resources.GetObject("resource.ExpandedWidth"), Integer)
Me.NavBarControl1.PaintStyleKind = DevExpress.XtraNavBar.NavBarViewKind.NavigationPane
Me.NavBarControl1.ShowIcons = DevExpress.Utils.DefaultBoolean.[True]
Me.NavBarControl1.View = New DevExpress.XtraNavBar.ViewInfo.StandardSkinExplorerBarViewInfoRegistrator("Office 2019 White")
Me.ImageListProfile.ImageStream = CType(resources.GetObject("ImageListProfile.ImageStream"), System.Windows.Forms.ImageListStreamer)
Me.ImageListProfile.TransparentColor = System.Drawing.Color.Transparent
Me.ImageListProfile.Images.SetKeyName(0, "ico2558.ico")
Me.ImageListProfile.Images.SetKeyName(1, "ico2591.ico")
'
'NavBarGroupProfiles
'DD_DMSLiteDataSet
'
resources.ApplyResources(Me.NavBarGroupProfiles, "NavBarGroupProfiles")
Me.NavBarGroupProfiles.Expanded = True
Me.NavBarGroupProfiles.GroupStyle = DevExpress.XtraNavBar.NavBarGroupStyle.LargeIconsText
Me.NavBarGroupProfiles.ImageOptions.LargeImage = CType(resources.GetObject("NavBarGroupProfiles.ImageOptions.LargeImage"), System.Drawing.Image)
Me.NavBarGroupProfiles.Name = "NavBarGroupProfiles"
Me.DD_DMSLiteDataSet.DataSetName = "DD_DMSLiteDataSet"
Me.DD_DMSLiteDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema
'
'TableAdapterManager
'
Me.TableAdapterManager.BackupDataSetBeforeUpdate = False
Me.TableAdapterManager.Connection = Nothing
Me.TableAdapterManager.TBDD_CONNECTIONTableAdapter = Nothing
Me.TableAdapterManager.TBDD_EMAIL_TEMPLATETableAdapter = Nothing
Me.TableAdapterManager.TBDD_GUI_LANGUAGE_PHRASETableAdapter = Nothing
Me.TableAdapterManager.TBDD_USERTableAdapter = Nothing
Me.TableAdapterManager.TBPM_CONTROL_TABLETableAdapter = Nothing
Me.TableAdapterManager.TBPM_ERROR_LOGTableAdapter = Nothing
Me.TableAdapterManager.TBPM_KONFIGURATIONTableAdapter = Nothing
Me.TableAdapterManager.TBPM_PROFILE_CONTROLSTableAdapter = Nothing
Me.TableAdapterManager.TBPM_PROFILE_FILESTableAdapter = Nothing
Me.TableAdapterManager.TBPM_PROFILE_FINAL_INDEXINGTableAdapter = Nothing
Me.TableAdapterManager.TBPM_PROFILETableAdapter = Nothing
Me.TableAdapterManager.TBPM_TYPETableAdapter = Nothing
Me.TableAdapterManager.UpdateOrder = taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete
'
'Panel1
'
Me.Panel1.BackColor = System.Drawing.Color.Transparent
Me.Panel1.Controls.Add(Me.GridControlWorkflows)
Me.Panel1.Controls.Add(Me.Panel2)
Me.Panel1.Controls.Add(Me.SplitterControl1)
Me.Panel1.Controls.Add(Me.TreeList_Cockpit)
resources.ApplyResources(Me.Panel1, "Panel1")
Me.Panel1.Name = "Panel1"
'
'SplitterControl1
'
resources.ApplyResources(Me.SplitterControl1, "SplitterControl1")
Me.SplitterControl1.Name = "SplitterControl1"
Me.SplitterControl1.TabStop = False
'
'cmsNavPane
'
@@ -908,25 +910,6 @@ Partial Class frmMain
Me.tsmiValidationProfil.Name = "tsmiValidationProfil"
resources.ApplyResources(Me.tsmiValidationProfil, "tsmiValidationProfil")
'
'NavBarGroupMore
'
resources.ApplyResources(Me.NavBarGroupMore, "NavBarGroupMore")
Me.NavBarGroupMore.Expanded = True
Me.NavBarGroupMore.GroupStyle = DevExpress.XtraNavBar.NavBarGroupStyle.LargeIconsText
Me.NavBarGroupMore.ImageOptions.LargeImage = CType(resources.GetObject("NavBarGroupMore.ImageOptions.LargeImage"), System.Drawing.Image)
Me.NavBarGroupMore.ItemLinks.AddRange(New DevExpress.XtraNavBar.NavBarItemLink() {New DevExpress.XtraNavBar.NavBarItemLink(Me.NavBarItemOverview)})
Me.NavBarGroupMore.Name = "NavBarGroupMore"
'
'NavBarItemOverview
'
Me.NavBarItemOverview.Appearance.Image = CType(resources.GetObject("NavBarItemOverview.Appearance.Image"), System.Drawing.Image)
Me.NavBarItemOverview.Appearance.Options.UseImage = True
resources.ApplyResources(Me.NavBarItemOverview, "NavBarItemOverview")
Me.NavBarItemOverview.ImageOptions.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.[False]
Me.NavBarItemOverview.ImageOptions.LargeImage = CType(resources.GetObject("NavBarItemOverview.ImageOptions.LargeImage"), System.Drawing.Image)
Me.NavBarItemOverview.Name = "NavBarItemOverview"
Me.NavBarItemOverview.Tag = "OVERVIEW"
'
'NotifyIcon1
'
Me.NotifyIcon1.BalloonTipIcon = System.Windows.Forms.ToolTipIcon.Info
@@ -1619,17 +1602,18 @@ Partial Class frmMain
Me.Name = "frmMain"
Me.Ribbon = Me.RibbonControl1
Me.StatusBar = Me.RibbonStatusBar1
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).EndInit()
Me.Panel1.ResumeLayout(False)
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TreeList_Cockpit, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RepositoryItemProgressBar1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.cmbGridFontSize, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RepositoryItemTrackBar1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.ImageCollection1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
Me.Panel2.ResumeLayout(False)
Me.Panel2.PerformLayout()
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).EndInit()
Me.Panel1.ResumeLayout(False)
Me.cmsNavPane.ResumeLayout(False)
CType(Me.bindsourcegrid, System.ComponentModel.ISupportInitialize).EndInit()
Me.ContextMenuNotifyIcon.ResumeLayout(False)
@@ -1648,10 +1632,6 @@ Partial Class frmMain
Friend WithEvents NotifyIcon1 As System.Windows.Forms.NotifyIcon
Friend WithEvents TimerRefresh As System.Windows.Forms.Timer
Friend WithEvents TimerReminder As System.Windows.Forms.Timer
Friend WithEvents NavBarControl1 As DevExpress.XtraNavBar.NavBarControl
Friend WithEvents NavBarGroupProfiles As DevExpress.XtraNavBar.NavBarGroup
Friend WithEvents NavBarGroupMore As DevExpress.XtraNavBar.NavBarGroup
Friend WithEvents NavBarItemOverview As DevExpress.XtraNavBar.NavBarItem
Friend WithEvents cmsNavPane As ContextMenuStrip
Friend WithEvents tsmiValidationProfil As ToolStripMenuItem
Friend WithEvents bindsourcegrid As BindingSource
@@ -1733,7 +1713,6 @@ Partial Class frmMain
Friend WithEvents PrintPreviewBarCheckItem17 As DevExpress.XtraPrinting.Preview.PrintPreviewBarCheckItem
Friend WithEvents PrintPreviewBarCheckItem18 As DevExpress.XtraPrinting.Preview.PrintPreviewBarCheckItem
Friend WithEvents PrintPreviewBarCheckItem19 As DevExpress.XtraPrinting.Preview.PrintPreviewBarCheckItem
Friend WithEvents Panel1 As Panel
Friend WithEvents OutOfRangePMFixierenToolStripMenuItem As ToolStripMenuItem
Friend WithEvents ToolStripSeparator1 As ToolStripSeparator
Friend WithEvents XtraSaveFileDialog1 As DevExpress.XtraEditors.XtraSaveFileDialog
@@ -1742,7 +1721,6 @@ Partial Class frmMain
Friend WithEvents BarButtonItem9 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonControl1 As DevExpress.XtraBars.Ribbon.RibbonControl
Friend WithEvents bbtniRefresh As DevExpress.XtraBars.BarButtonItem
Friend WithEvents bbtniMonitor As DevExpress.XtraBars.BarButtonItem
Friend WithEvents bbiProfilverwaltung As DevExpress.XtraBars.BarButtonItem
Friend WithEvents bbiKonfiguration As DevExpress.XtraBars.BarButtonItem
Friend WithEvents bbtniGrundeinstellung As DevExpress.XtraBars.BarButtonItem
@@ -1758,7 +1736,6 @@ Partial Class frmMain
Friend WithEvents bbtniMetadataFile As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarEditItem1 As DevExpress.XtraBars.BarEditItem
Friend WithEvents RepositoryItemProgressBar1 As DevExpress.XtraEditors.Repository.RepositoryItemProgressBar
Friend WithEvents bbtnitDashboardInv As DevExpress.XtraBars.BarButtonItem
Friend WithEvents bsiGeneralInfo As DevExpress.XtraBars.BarStaticItem
Friend WithEvents bbtnitmGhostMode As DevExpress.XtraBars.BarButtonItem
Friend WithEvents bsi_GhostMode As DevExpress.XtraBars.BarStaticItem
@@ -1793,7 +1770,6 @@ Partial Class frmMain
Friend WithEvents BBtnItmNotfications As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageStart As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonPageGroupBasicConf As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonPageGroup7 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
@@ -1805,11 +1781,16 @@ Partial Class frmMain
Friend WithEvents RibbonPageAktionen As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents RibbonPageGroup8 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RepositoryItemTrackBar1 As DevExpress.XtraEditors.Repository.RepositoryItemTrackBar
Friend WithEvents Panel2 As Panel
Friend WithEvents lblCaptionMainGrid As Label
Friend WithEvents GridControlWorkflows As DevExpress.XtraGrid.GridControl
Friend WithEvents GridViewWorkflows As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents BSIVERSION1 As DevExpress.XtraBars.BarStaticItem
Friend WithEvents barbtnitmsaveLogfiles As DevExpress.XtraBars.BarButtonItem
Friend WithEvents bsitmCount As DevExpress.XtraBars.BarStaticItem
Friend WithEvents TreeList_Cockpit As DevExpress.XtraTreeList.TreeList
Friend WithEvents ImageCollection1 As DevExpress.Utils.ImageCollection
Friend WithEvents Panel2 As Panel
Friend WithEvents Panel1 As Panel
Friend WithEvents SplitterControl1 As DevExpress.XtraEditors.SplitterControl
Friend WithEvents BarButtonItemCock_refresh As DevExpress.XtraBars.BarButtonItem
End Class

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -354,7 +354,7 @@ Public Class frmMassValidator
LOGGER.Debug("Versuch Tabelle zu laden")
Dim oDTMyColumns As DataTable = DatabaseFallback.GetDatatableECM($"SELECT * FROM TBPM_CONTROL_TABLE WHERE CONTROL_ID = {oControlRow.Item("GUID")} ORDER BY SEQUENCE") ', "MV_LoadControls1")
oControl = ControlCreator.CreateExistingGridControl(oControlRow, oDTMyColumns, False, CURRENT_DOC_CURRENCY, pnldesigner)
oControl = ControlCreator.CreateExistingGridControl(oControlRow, oDTMyColumns, False, CURRENT_DOC_CURRENCY)
End Select
If oControl IsNot Nothing AndAlso TypeOf oControl IsNot Label Then

View File

@@ -211,20 +211,20 @@ Public Class frmMonitor
Select Case DT_MONITOR_KONFIG.Rows.Count
Case 2
LoadGrid1Layout()
LoadGrid2Layout()
LoadGridLayout(1)
LoadGridLayout(2)
SplitContainerControl1.SplitterPosition = CONFIG.Config.MonitorSplitter1_Distance
Case 3
LoadGrid1Layout()
LoadGrid2Layout()
LoadGrid3Layout()
LoadGridLayout(1)
LoadGridLayout(2)
LoadGridLayout(3)
SplitContainerControl1.SplitterPosition = CONFIG.Config.MonitorSplitter1_Distance
SplitContainerControl2.SplitterPosition = CONFIG.Config.MonitorSplitter2_Distance
Case 4
LoadGrid1Layout()
LoadGrid2Layout()
LoadGrid3Layout()
LoadGrid4Layout()
LoadGridLayout(1)
LoadGridLayout(2)
LoadGridLayout(3)
LoadGridLayout(4)
SplitContainerControl1.SplitterPosition = CONFIG.Config.MonitorSplitter1_Distance
SplitContainerControl2.SplitterPosition = CONFIG.Config.MonitorSplitter2_Distance
SplitContainerControl3.SplitterPosition = CONFIG.Config.MonitorSplitter3_Distance
@@ -243,212 +243,140 @@ Public Class frmMonitor
Async Function Load_Grid_Data() As Threading.Tasks.Task
Try
FormShown = False
Dim oSQL = "SELECT * FROM TBPM_MONITOR_KONFIG"
Dim oSQL = $"SELECT * FROM TBPM_MONITOR_KONFIG (NOLOCK) WHERE COCKPIT_ID = {COCKPIT_MONITOR_ID}"
DT_MONITOR_KONFIG = DatabaseFallback.GetDatatableECM(oSQL) ', "Monitor-Load_Grid_Data1")
If Not IsNothing(DT_MONITOR_KONFIG) Then
If DT_MONITOR_KONFIG.Rows.Count >= 1 Then
oSQL = DT_MONITOR_KONFIG.Rows(0).Item("GRID_SQL")
GridView1.Columns.Clear()
Dim oDTGRID1 As DataTable = Await DatabaseFallback.GetDatatableECMAsync(oSQL) ', "Monitor-Load_Grid_Data2")
GridControl1.DataSource = oDTGRID1
GRID1_TITLE = DT_MONITOR_KONFIG.Rows(0).Item("GRID_TITLE")
GridView1.ViewCaption = GRID1_TITLE
Format_Datetime_Columns(GridView1, "Grid 1")
Try
'GridView1.Columns.Item("FULL_FILE_PATH").Visible = False
Catch ex As Exception
LOGGER.Info($"Attention: No Column FULL_FILE_PATH in GridView1")
End Try
Select Case DT_MONITOR_KONFIG.Rows.Count
Case 2
SplitContainerControl2.Collapsed = True
Case 3
SplitContainerControl3.Collapsed = True
Case Else
SplitContainerControl2.Collapsed = False
SplitContainerControl3.Collapsed = False
End Select
If DT_MONITOR_KONFIG.Rows.Count > 1 Then
GRID2_TITLE = DT_MONITOR_KONFIG.Rows(1).Item("GRID_TITLE")
GRID2_SQL = DT_MONITOR_KONFIG.Rows(1).Item("GRID_SQL")
GridView2.ViewCaption = GRID2_TITLE
Select Case DT_MONITOR_KONFIG.Rows.Count
Case 3
GRID3_TITLE = DT_MONITOR_KONFIG.Rows(2).Item("GRID_TITLE")
GRID3_SQL = DT_MONITOR_KONFIG.Rows(2).Item("GRID_SQL")
GridView3.ViewCaption = GRID3_TITLE
Case 4
GRID3_TITLE = DT_MONITOR_KONFIG.Rows(2).Item("GRID_TITLE")
GRID3_SQL = DT_MONITOR_KONFIG.Rows(2).Item("GRID_SQL")
GridView3.ViewCaption = GRID3_TITLE
GRID4_TITLE = DT_MONITOR_KONFIG.Rows(3).Item("GRID_TITLE")
GRID4_SQL = DT_MONITOR_KONFIG.Rows(3).Item("GRID_SQL")
GridView4.ViewCaption = GRID4_TITLE
End Select
End If
End If
If DT_MONITOR_KONFIG Is Nothing OrElse DT_MONITOR_KONFIG.Rows.Count = 0 Then
MsgBox("No configuration found for this monitor cockpit. Please contact your administrator.", MsgBoxStyle.Critical, "No Configuration")
Me.Close()
End If
oSQL = DT_MONITOR_KONFIG.Rows(0).Item("GRID_SQL")
GridView1.Columns.Clear()
Dim oDTGRID1 As DataTable = Await DatabaseFallback.GetDatatableECMAsync(oSQL) ', "Monitor-Load_Grid_Data2")
GridControl1.DataSource = oDTGRID1
GRID1_TITLE = DT_MONITOR_KONFIG.Rows(0).Item("GRID_TITLE")
GridView1.ViewCaption = GRID1_TITLE
Format_Datetime_Columns(GridView1, "Grid 1")
Try
'GridView1.Columns.Item("FULL_FILE_PATH").Visible = False
Catch ex As Exception
LOGGER.Info($"Attention: No Column FULL_FILE_PATH in GridView1")
End Try
Select Case DT_MONITOR_KONFIG.Rows.Count
Case 2
SplitContainerControl2.Collapsed = True
Case 3
SplitContainerControl3.Collapsed = True
Case Else
SplitContainerControl2.Collapsed = False
SplitContainerControl3.Collapsed = False
End Select
If DT_MONITOR_KONFIG.Rows.Count > 1 Then
GRID2_TITLE = DT_MONITOR_KONFIG.Rows(1).Item("GRID_TITLE")
GRID2_SQL = DT_MONITOR_KONFIG.Rows(1).Item("GRID_SQL")
GridView2.ViewCaption = GRID2_TITLE
Select Case DT_MONITOR_KONFIG.Rows.Count
Case 3
GRID3_TITLE = DT_MONITOR_KONFIG.Rows(2).Item("GRID_TITLE")
GRID3_SQL = DT_MONITOR_KONFIG.Rows(2).Item("GRID_SQL")
GridView3.ViewCaption = GRID3_TITLE
Case 4
GRID3_TITLE = DT_MONITOR_KONFIG.Rows(2).Item("GRID_TITLE")
GRID3_SQL = DT_MONITOR_KONFIG.Rows(2).Item("GRID_SQL")
GridView3.ViewCaption = GRID3_TITLE
GRID4_TITLE = DT_MONITOR_KONFIG.Rows(3).Item("GRID_TITLE")
GRID4_SQL = DT_MONITOR_KONFIG.Rows(3).Item("GRID_SQL")
GridView4.ViewCaption = GRID4_TITLE
End Select
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in Load_Grid_Data:")
Finally
FormShown = True
End Try
End Function
Sub LoadGrid1Layout()
Private Function GetGridLayoutPath(pGridNumber As Integer) As String
Dim oFilename As String = $"DevExpressGridViewMonitor_UserLayout_Grid{pGridNumber}_Cockpit{COCKPIT_MONITOR_ID}.xml"
Return System.IO.Path.Combine(USER_CONFIG_DIRECTORY, oFilename)
End Function
Private Sub SaveGridLayout(pGridNumber As Integer)
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid1.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
If File.Exists(xml) Then
GridView1.RestoreLayoutFromXml(xml, OptionsLayoutBase.FullLayout)
Dim oGridView As GridView = Nothing
Select Case pGridNumber
Case 1 : oGridView = GridView1
Case 2 : oGridView = GridView2
Case 3 : oGridView = GridView3
Case 4 : oGridView = GridView4
Case Else
LOGGER.Warn($"SaveGridLayout: Invalid grid number [{pGridNumber}]")
Exit Sub
End Select
oGridView.SaveLayoutToXml(GetGridLayoutPath(pGridNumber), OptionsLayoutBase.FullLayout)
LOGGER.Debug($"SaveGridLayout: Grid{pGridNumber} layout saved for Cockpit [{COCKPIT_MONITOR_ID}]")
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info($"Error while saving Grid{pGridNumber}Layout: {ex.Message}")
End Try
End Sub
Private Sub LoadGridLayout(pGridNumber As Integer)
Try
Dim oXml As String = GetGridLayoutPath(pGridNumber)
If Not File.Exists(oXml) Then Exit Sub
Dim oGridView As GridView = Nothing
Select Case pGridNumber
Case 1 : oGridView = GridView1
Case 2 : oGridView = GridView2
Case 3 : oGridView = GridView3
Case 4 : oGridView = GridView4
Case Else
LOGGER.Warn($"LoadGridLayout: Invalid grid number [{pGridNumber}]")
Exit Sub
End Select
oGridView.RestoreLayoutFromXml(oXml, OptionsLayoutBase.FullLayout)
LOGGER.Debug($"LoadGridLayout: Grid{pGridNumber} layout restored for Cockpit [{COCKPIT_MONITOR_ID}]")
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info($"Error while restoring Grid{pGridNumber}Layout: {ex.Message}")
End Try
End Sub
Private Sub RemoveGridLayout(pGridNumber As Integer)
Try
Dim oXml As String = GetGridLayoutPath(pGridNumber)
If File.Exists(oXml) Then
IO.File.Delete(oXml)
LOGGER.Debug($"RemoveGridLayout: Grid{pGridNumber} layout removed for Cockpit [{COCKPIT_MONITOR_ID}]")
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while restoring layout 1: " & ex.Message)
LOGGER.Info($"Error while removing Grid{pGridNumber}Layout: {ex.Message}")
End Try
End Sub
Sub LoadGrid2Layout()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid2.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
If File.Exists(xml) Then
GridView2.RestoreLayoutFromXml(xml, OptionsLayoutBase.FullLayout)
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while restoring layout 2: " & ex.Message)
End Try
End Sub
Sub LoadGrid3Layout()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid3.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
If File.Exists(xml) Then
GridView3.RestoreLayoutFromXml(xml, OptionsLayoutBase.FullLayout)
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while restoring layout 3: " & ex.Message)
End Try
End Sub
Sub LoadGrid4Layout()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid4.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
If File.Exists(xml) Then
GridView4.RestoreLayoutFromXml(xml, OptionsLayoutBase.FullLayout)
End If
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while restoring layout 4: " & ex.Message)
End Try
End Sub
Sub SaveGrid1layout()
Try
Dim o = USER_CONFIG_DIRECTORY
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid1.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
GridView1.SaveLayoutToXml(xml, OptionsLayoutBase.FullLayout)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while saving Grid1Layout: " & ex.Message)
End Try
End Sub
Sub RemoveLayout()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid1.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
IO.File.Delete(xml)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while saving RemoveLayout1: " & ex.Message)
End Try
End Sub
Sub SaveGrid2layout()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid2.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
GridView2.SaveLayoutToXml(xml, OptionsLayoutBase.FullLayout)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while saving Grid2Layout: " & ex.Message)
End Try
End Sub
Sub RemoveLayout2()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid2.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
IO.File.Delete(xml)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while saving RemoveLayout2: " & ex.Message)
End Try
End Sub
Sub SaveGrid3layout()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid3.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
GridView3.SaveLayoutToXml(xml, OptionsLayoutBase.FullLayout)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while saving Grid3Layout: " & ex.Message)
End Try
End Sub
Sub RemoveLayout3()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid3.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
IO.File.Delete(xml)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while saving RemoveLayout3: " & ex.Message)
End Try
End Sub
Sub SaveGrid4layout()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid4.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
GridView4.SaveLayoutToXml(xml, OptionsLayoutBase.FullLayout)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while saving Grid4Layout: " & ex.Message)
End Try
End Sub
Sub RemoveLayout4()
Try
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid4.xml")
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
IO.File.Delete(xml)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Info("Error while saving RemoveLayout4: " & ex.Message)
End Try
End Sub
Private Sub frmMonitor_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
Select Case DT_MONITOR_KONFIG.Rows.Count
Case 2
SaveGrid1layout()
SaveGrid2layout()
SaveGridLayout(1)
SaveGridLayout(2)
Case 3
SaveGrid1layout()
SaveGrid2layout()
SaveGrid3layout()
SaveGridLayout(1)
SaveGridLayout(2)
SaveGridLayout(3)
CONFIG.Config.MonitorSplitter1_Distance = SplitContainerControl1.SplitterPosition
CONFIG.Config.MonitorSplitter2_Distance = SplitContainerControl2.SplitterPosition
Case 4
SaveGrid1layout()
SaveGrid2layout()
SaveGrid3layout()
SaveGrid4layout()
SaveGridLayout(1)
SaveGridLayout(2)
SaveGridLayout(3)
SaveGridLayout(4)
CONFIG.Config.MonitorSplitter1_Distance = SplitContainerControl1.SplitterPosition
CONFIG.Config.MonitorSplitter2_Distance = SplitContainerControl2.SplitterPosition
CONFIG.Config.MonitorSplitter3_Distance = SplitContainerControl3.SplitterPosition
@@ -549,17 +477,17 @@ Public Class frmMonitor
Private Async Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem4.ItemClick
Select Case DT_MONITOR_KONFIG.Rows.Count
Case 2
RemoveLayout()
RemoveLayout2()
RemoveGridLayout(1)
RemoveGridLayout(2)
Case 3
RemoveLayout()
RemoveLayout2()
RemoveLayout3()
RemoveGridLayout(1)
RemoveGridLayout(2)
RemoveGridLayout(3)
Case 4
RemoveLayout()
RemoveLayout2()
RemoveLayout3()
RemoveLayout4()
RemoveGridLayout(1)
RemoveGridLayout(2)
RemoveGridLayout(3)
RemoveGridLayout(4)
End Select
GridView1.ShowLoadingPanel()

View File

@@ -616,7 +616,7 @@
<value>DocumentViewer1</value>
</data>
<data name="&gt;&gt;DocumentViewer1.Type" xml:space="preserve">
<value>DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=2.7.2.0, Culture=neutral, PublicKeyToken=null</value>
<value>DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=2.7.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;DocumentViewer1.Parent" xml:space="preserve">
<value>SplitContainer1.Panel2</value>

View File

@@ -4,7 +4,6 @@ Imports System.Data.Entity.Core.Common.CommandTrees
'Imports System.Data.SqlClient
Imports System.Globalization
Imports System.IO
Imports System.Linq
Imports System.Reflection
Imports System.Runtime.InteropServices
Imports System.Text.RegularExpressions
@@ -28,7 +27,6 @@ Imports DigitalData.Controls.LookupGrid
Imports DigitalData.GUIs.Common
Imports DigitalData.GUIs.Common.DocumentResultList
Imports DigitalData.Modules.Base
Imports DigitalData.Modules.EDMI.API
Imports DigitalData.Modules.EDMI.API.Constants
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
Imports DigitalData.Modules.Interfaces
@@ -38,6 +36,7 @@ Imports DigitalData.Modules.ZooFlow.Constants
'Imports System.Windows.Forms.VisualStyles.VisualStyleElement
'Imports System.Windows.Forms.VisualStyles.VisualStyleElement.TextBox
Imports WINDREAMLib
Imports System.Linq
Public Class frmValidator
Public Event CustomColumnDisplayText As CustomColumnDisplayTextEventHandler
@@ -50,12 +49,12 @@ Public Class frmValidator
''' <summary>
''' Contains all grid columns for the current profile
''' </summary>
Public Property DT_COLUMNS_GRID As DataTable
Private Property DT_COLUMNS_GRID As DataTable
Private Property GIT_TEST As Boolean = False
''' <summary>
''' Contains all grid columns for the current profile which have an sql but don't have a reference to a control
''' </summary>
Public Property DT_COLUMNS_GRID_WITH_SQL As DataTable
Private Property DT_COLUMNS_GRID_WITH_SQL As DataTable
''' <summary>
''' Contains all grid columns for the current profile which have an sql and have a reference to a control
@@ -137,16 +136,14 @@ Public Class frmValidator
Private _CachedControlsByGuid As Dictionary(Of Integer, Control)
Private _isUpdatingLookup As Boolean = False
Private _suppressLookupEvents As Boolean = False
Private _isShowingErrorDialog As Boolean = False
Private _overlayHandle As Object = Nothing
Private _overlayRefCount As Integer = 0 'Zähler für verschachtelte Calls
Private _overlayLock As New Object() 'Thread-Safe Lock
Private _isShowingErrorDialog As Boolean = False ' ← NEU: Klassenvariable oben hinzufügen
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 DocumentPathHandler
Private _isLoadingAdditionalSearches As Boolean = False
Private _gridDataLoader As ClassGridDataLoader
Private _separateGridDataCache As New Dictionary(Of String, DataTable)
' Bei den anderen Private-Deklarationen:
Private _separateGridControlCache As New Dictionary(Of String, GridControl)
Private Class Translation_Strings
Inherits My.Resources.frmValidator_Strings
End Class
@@ -410,7 +407,7 @@ Public Class frmValidator
Catch ex As Exception
MyValidationLogger.Error(ex)
MsgBox("Error LOADING profile-data(" & _step.ToString & "):" & vbCrLf & ex.Message, MsgBoxStyle.Critical, "Attention:")
MsgBox("Error LOADING profile-data(" & _step.ToString & "):" & vbcrlf & ex.Message, MsgBoxStyle.Critical, "Attention:")
MyValidationLogger.Info(">> Error in LOADING profile-data: " & ex.Message, True)
Me.Close()
End Try
@@ -546,7 +543,7 @@ Public Class frmValidator
Catch ex As Exception
MyValidationLogger.Error(ex)
MsgBox("Error loading final profile text:" & vbCrLf & ex.Message, MsgBoxStyle.Critical, "Attention:")
MsgBox("Error loading final profile text:" & vbcrlf & ex.Message, MsgBoxStyle.Critical, "Attention:")
MyValidationLogger.Info(">> Error loading final profile text: " & ex.Message, True)
End Try
@@ -681,7 +678,7 @@ Public Class frmValidator
Catch ex As Exception
MyValidationLogger.Error(ex)
MsgBox("Error LOADING Profile-Data1:" & vbCrLf & ex.Message, MsgBoxStyle.Critical, "Attention:")
MsgBox("Error LOADING Profile-Data1:" & vbcrlf & ex.Message, MsgBoxStyle.Critical, "Attention:")
MyValidationLogger.Info("Unexpected error in LOADING Profile-Data1: " & ex.Message)
End Try
End Sub
@@ -821,7 +818,7 @@ Public Class frmValidator
DatabaseFallback.ExecuteNonQueryECM(oSQL)
Catch ex As Exception
MyValidationLogger.Error(ex)
MsgBox("Error in delete jumped files:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
MsgBox("Error in delete jumped files:" & vbcrlf & ex.Message, MsgBoxStyle.Critical)
End Try
If LOG_HOTSPOTS Then
@@ -868,7 +865,7 @@ Public Class frmValidator
Try
If COPY_WMFILE_2TEMP = True Then
MyValidationLogger.Debug("🗑️ Bereinige Temp-Ordner beim Schließen...")
_documentPathHandler.CleanupTempFolder()
CleanupTempFolder()
End If
Catch cleanupEx As Exception
MyValidationLogger.Warn($"⚠️ Fehler beim Bereinigen des Temp-Ordners: {cleanupEx.Message}")
@@ -904,7 +901,52 @@ Public Class frmValidator
End If
End Sub
Private Sub CleanupTempFolder()
Try
If String.IsNullOrEmpty(TEMP_DOCUMENT_FOLDER) Then
MyValidationLogger.Debug("TEMP_DOCUMENT_FOLDER ist nicht gesetzt → Kein Cleanup erforderlich")
Return
End If
If Not System.IO.Directory.Exists(TEMP_DOCUMENT_FOLDER) Then
MyValidationLogger.Debug($"Temp-Ordner [{TEMP_DOCUMENT_FOLDER}] existiert nicht → Kein Cleanup erforderlich")
Return
End If
' Alle Dateien im Ordner ermitteln
Dim files As String() = System.IO.Directory.GetFiles(TEMP_DOCUMENT_FOLDER)
If files.Length = 0 Then
MyValidationLogger.Debug($"Temp-Ordner [{TEMP_DOCUMENT_FOLDER}] ist bereits leer")
Return
End If
' Alle Dateien löschen
Dim deletedCount As Integer = 0
Dim errorCount As Integer = 0
For Each filePath As String In files
Try
System.IO.File.Delete(filePath)
deletedCount += 1
MyValidationLogger.Debug($"Datei gelöscht: [{System.IO.Path.GetFileName(filePath)}]")
Catch fileEx As Exception
errorCount += 1
MyValidationLogger.Warn($"⚠️ Datei konnte nicht gelöscht werden: [{System.IO.Path.GetFileName(filePath)}] - {fileEx.Message}")
End Try
Next
If errorCount = 0 Then
MyValidationLogger.Debug($"✓ Temp-Ordner bereinigt: {deletedCount} Datei(en) gelöscht")
Else
MyValidationLogger.Warn($"⚠️ Temp-Ordner teilweise bereinigt: {deletedCount} gelöscht, {errorCount} Fehler")
End If
Catch ex As Exception
MyValidationLogger.Error($"❌ Fehler beim Bereinigen des Temp-Ordners: {ex.Message}")
MyValidationLogger.Error(ex)
End Try
End Sub
Public Function Test_Additional_Data_Searches_Exist() As Boolean
If DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count > 0 Then
@@ -976,8 +1018,6 @@ Public Class frmValidator
MyValidationLogger.Debug($"Current_Document: Id={Current_Document?.Id}, Path={Current_Document?.FullPath}")
MyValidationLogger.Debug("========================================")
DT_AdditionalSearches_Resultset_Docs = Nothing
Dim allSQLSearches As DataTable = DT_FILTERED_PROFILE_SEARCHES_DATA
Dim allDocSearches As DataTable = DT_FILTERED_PROFILE_SEARCHES_DOC
@@ -1008,7 +1048,6 @@ Public Class frmValidator
MyValidationLogger.Debug("--- Ergebnisse werden geprüft (DATA/DOC) ---")
Dim validSQLSearches As DataTable = allSQLSearches.Clone()
Dim validDocSearches As DataTable = allDocSearches.Clone()
Dim aggregatedDocResults As DataTable = Nothing
If hasDATASearches Then
For i As Integer = 0 To allSQLSearches.Rows.Count - 1
@@ -1052,12 +1091,6 @@ Public Class frmValidator
If IsValidDocSearchResult(testDT) Then
validDocSearches.ImportRow(searchRow)
MyValidationLogger.Info($"✓ Doc-Search '{tabTitle}': {testDT.Rows.Count} Dokumente gefunden")
If aggregatedDocResults Is Nothing Then
aggregatedDocResults = testDT.Clone()
End If
For Each resultRow As DataRow In testDT.Rows
aggregatedDocResults.ImportRow(resultRow)
Next
Else
MyValidationLogger.Warn($"⚠️ Doc-Search '{tabTitle}' liefert kein Dokument-Schema (DocID/FULL_FILENAME) und wird übersprungen.")
End If
@@ -1069,10 +1102,6 @@ Public Class frmValidator
End Try
Next
End If
DT_AdditionalSearches_Resultset_Docs = aggregatedDocResults
If DT_AdditionalSearches_Resultset_Docs IsNot Nothing Then
MyValidationLogger.Debug($"Zusätzliche Doc-Results gecached: {DT_AdditionalSearches_Resultset_Docs.Rows.Count} Rows")
End If
AdditionalDataResultsExist = validSQLSearches.Rows.Count > 0
AdditionalDocResultsExist = validDocSearches.Rows.Count > 0
@@ -1665,7 +1694,9 @@ Public Class frmValidator
Case "TABLE"
If LOG_PERF Then PerformanceLogger.Info("Create_Controls/Table")
oControlInfo = "TABLE#" & oControlInfo
Dim oFilteredDatatable As DataTable = DT_COLUMNS_GRID.Clone()
Dim oExpression = $"CONTROL_ID = {oControlRow.Item("GUID")}"
DT_COLUMNS_GRID.Select(oExpression, "SEQUENCE").CopyToDataTable(oFilteredDatatable, LoadOption.PreserveChanges)
@@ -1676,58 +1707,13 @@ Public Class frmValidator
Continue For
End If
Dim displayInSeparateForm As Boolean = False
If Not IsDBNull(oControlRow("DISPLAY_IN_SEPERATE_FORM")) Then
displayInSeparateForm = CBool(oControlRow("DISPLAY_IN_SEPERATE_FORM"))
End If
If displayInSeparateForm Then
MyValidationLogger.Debug($"[{oControlInfo}] - DisplayInSeparateForm is True. Creating a separate form for the grid.")
' Button erstellen statt Grid
Dim btnShowGrid As New DevExpress.XtraEditors.SimpleButton()
btnShowGrid.Name = "BTNDYN_GRID_" + oControlRow("NAME").ToString()
Dim oTitle = "TABLE." + oControlRow("NAME").ToString()
Dim oCaption = ClassAllgemeineFunktionen.GUI_LANGUAGE_INFO(oTitle)
If IsNothing(oCaption) Then
btnShowGrid.Text = oControlRow("CTRL_TEXT").ToString()
Else
btnShowGrid.Text = oCaption
End If
btnShowGrid.Font = New Font("Segoe UI", 10.0F, FontStyle.Bold)
' Button-Position aus oControlRow setzen
If Not IsDBNull(oControlRow("X_LOC")) Then
btnShowGrid.Left = CInt(oControlRow("X_LOC"))
End If
If Not IsDBNull(oControlRow("Y_LOC")) Then
btnShowGrid.Top = CInt(oControlRow("Y_LOC"))
End If
' Dynamische Breite basierend auf Textlänge berechnen
Using g As Graphics = btnShowGrid.CreateGraphics()
Dim textSize As SizeF = g.MeasureString(btnShowGrid.Text, btnShowGrid.Font)
btnShowGrid.Width = CInt(textSize.Width) + 20 ' +20 für Padding (links/rechts)
End Using
btnShowGrid.Height = 30
' Click-Event für Button
AddHandler btnShowGrid.Click, Sub(sender, e)
OpenGridInSeparateForm(oControlRow, oFilteredDatatable)
End Sub
PanelValidatorControl.Controls.Add(btnShowGrid)
Else
MyValidationLogger.Debug($"[{oControlInfo}] - DisplayInSeparateForm is False. Creating an embedded grid.")
Dim oGrid = ControlCreator.CreateExistingGridControl(oControlRow, oFilteredDatatable, False, DocCurrency, PanelValidatorControl)
oMyControl = oGrid
' NEU: GridView Event registrieren
AddHandler DirectCast(oGrid.MainView, GridView).CellValueChanged, AddressOf GridView_CellValueChanged
AddHandler DirectCast(oGrid.DataSource, DataTable).RowDeleted, AddressOf GridDataSource_RowDeleted
AddHandler DirectCast(oGrid.MainView, GridView).KeyDown, AddressOf GridView_KeyDown
AddHandler DirectCast(oGrid.MainView, GridView).RowDeleting, AddressOf GridView_RowDeleting
End If
Dim oGrid = ControlCreator.CreateExistingGridControl(oControlRow, oFilteredDatatable, False, DocCurrency)
oMyControl = oGrid
' NEU: GridView Event registrieren
AddHandler DirectCast(oGrid.MainView, GridView).CellValueChanged, AddressOf GridView_CellValueChanged
AddHandler DirectCast(oGrid.DataSource, DataTable).RowDeleted, AddressOf GridDataSource_RowDeleted
AddHandler DirectCast(oGrid.MainView, GridView).KeyDown, AddressOf GridView_KeyDown
AddHandler DirectCast(oGrid.MainView, GridView).RowDeleting, AddressOf GridView_RowDeleting
Case "LINE"
oMyControl = ControlCreator.CreateExistingLine(oControlRow, False)
@@ -1785,9 +1771,6 @@ Public Class frmValidator
Sub Clear_all_Input()
For Each inctrl As Control In Me.PanelValidatorControl.Controls
If inctrl.Name.StartsWith("BTNDYN_GRID") Then
Continue For
End If
Dim Type As Type = inctrl.GetType
Select Case True
Case Type = GetType(DevExpress.XtraEditors.TextEdit) Or Type = GetType(MemoEdit)
@@ -2123,77 +2106,6 @@ Public Class frmValidator
End Sub
Private Sub OpenGridInSeparateForm(controlRow As DataRow, dataTable As DataTable)
Try
MyValidationLogger?.Debug($"Öffne Grid in separatem Fenster für Control: {controlRow("NAME")}")
Dim controlName As String = controlRow("NAME").ToString()
' Erstelle das separate Formular
Dim frmTable As New frmControl_Table(
controlRow,
dataTable,
DocCurrency,
Me,
ControlCreator
)
' Modal anzeigen
Dim dialogResult = frmTable.ShowDialog(Me)
' Nach dem Schließen: IsDirty-Status und GridControl übertragen
If frmTable.IsDirty Then
MyValidationLogger?.Debug("Separate Grid-Form wurde als 'Dirty' markiert - übertrage Status und GridControl")
' 1. GridControl aus separatem Formular holen
Dim separateGrid As GridControl = frmTable.GetGridControl()
If separateGrid IsNot Nothing Then
' 2. GridControl in Cache speichern für Check_UpdateIndexe
If _separateGridDataCache.ContainsKey(controlName) Then
' Ersetze DataTable durch GridControl-Referenz
_separateGridDataCache(controlName) = TryCast(separateGrid.DataSource, DataTable)
Else
_separateGridDataCache.Add(controlName, TryCast(separateGrid.DataSource, DataTable))
End If
' ODER BESSER: Speichere das GridControl selbst
' Dafür neues Dictionary verwenden
If _separateGridControlCache.ContainsKey(controlName) Then
_separateGridControlCache(controlName) = separateGrid
Else
_separateGridControlCache.Add(controlName, separateGrid)
End If
MyValidationLogger?.Debug($"GridControl für '{controlName}' gecacht")
End If
' 3. IsDirty für dieses Control setzen
If Not listofControls.Contains(controlName) Then
listofControls.Add(controlName)
MyValidationLogger?.Debug($"Control '{controlName}' zu listofControls hinzugefügt (IsDirty)")
End If
' Status-Label aktualisieren
SetStatusLabel("Tabellendaten wurden geändert", "Orange")
Else
MyValidationLogger?.Debug("Separate Grid-Form wurde NICHT geändert (IsDirty = False)")
End If
' WICHTIG: Formular NICHT disposen, da wir das GridControl noch brauchen!
' frmTable.Dispose() ← NICHT aufrufen!
Catch ex As Exception
MyValidationLogger?.Error($"Fehler beim Öffnen des separaten Grid-Fensters: {ex.Message}", ex)
XtraMessageBox.Show(
$"Fehler beim Öffnen des separaten Fensters:{vbCrLf}{ex.Message}",
"Fehler",
MessageBoxButtons.OK,
MessageBoxIcon.Error
)
End Try
End Sub
Public Sub onDGVRowValidating(ByVal sender As Object, ByVal e As DataGridViewCellCancelEventArgs)
Dim dgv As DataGridView = sender
Try
@@ -4049,14 +3961,14 @@ Public Class frmValidator
If COPY_WMFILE_2TEMP = True Then
' Optionen konfigurieren
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
}
.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)
@@ -4069,7 +3981,6 @@ Public Class frmValidator
DocPathWindows = result.FinalPath
WMDocPathWindows = oFilePath_from_DB
MyValidationLogger.Info($"✓ Dokument verarbeitet: [{Path.GetFileName(result.FinalPath)}]")
Else
MyValidationLogger.Warn($"⚠️ Dokumentpfad-Verarbeitung fehlgeschlagen: {result.ErrorMessage}")
MyValidationLogger.Warn($"⚠️ Fallback auf Originalpfad: [{oFilePath_from_DB}]")
@@ -4083,7 +3994,6 @@ Public Class frmValidator
Return False
End If
End If
CURRENT_DOC_PATH = WMDocPathWindows
Else
DocPathWindows = oFilePath_from_DB
MyValidationLogger.Info($"📄 Verwende Originalpfad: [{oFilePath_from_DB}]")
@@ -4155,8 +4065,6 @@ Public Class frmValidator
_CachedSqlDataCache.Clear()
_CachedSqlScalarCache.Clear()
_separateGridDataCache.Clear()
_separateGridControlCache.Clear()
_CachedSqlControlsByGuid = Nothing
CURRENT_WMFILE = Nothing
activate_controls(False)
@@ -4319,9 +4227,6 @@ Public Class frmValidator
DocCurrency = oCurrency
MyValidationLogger.Info($"[FINAL] DocCurrency = [{DocCurrency}]")
taskFLOW.ControlCreator.GridControl.ClearDynamicEditorCache()
taskFLOW.ControlCreator.GridControl.ResetCurrencySymbolCache()
Catch ex As Exception
MyValidationLogger.Error($"Währungsladung fehlgeschlagen: {ex.Message}")
DocCurrency = "EUR"
@@ -4359,9 +4264,6 @@ Public Class frmValidator
Next
For Each oControl As Control In PanelValidatorControl.Controls
If oControl.Name.StartsWith("BTNDYN_GRID") Then
Continue For
End If
Dim controlId = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Guid
If sqlControlIds.Contains(controlId) Then
LoadSQLData(oControl, controlId)
@@ -4409,9 +4311,6 @@ Public Class frmValidator
End If
For Each oControl As Control In PanelValidatorControl.Controls
Try
If oControl.Name.StartsWith("BTNDYN_GRID") Then
Continue For
End If
If TypeOf oControl Is GridControl Then
Dim oGrid As GridControl = DirectCast(oControl, GridControl)
Dim oControlMeta = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata)
@@ -4580,7 +4479,7 @@ Public Class frmValidator
End If
' GridControl-Helper erstellen und Währungsformat aktualisieren
Dim oGridControlHelper As New ControlCreator.GridControl(LOGCONFIG, ControlCreator.GridTables, currencySymbol, PanelValidatorControl)
Dim oGridControlHelper As New ControlCreator.GridControl(LOGCONFIG, ControlCreator.GridTables, currencySymbol)
oGridControlHelper.UpdateCurrencyFormat(oColumnTable, oView, oGrid, currencySymbol)
MyValidationLogger.Info("[UpdateGridCurrencyFormats] ✓ Updated GridControl [{0}] to currency [{1}]", oGrid.Name, DocCurrency)
@@ -5042,7 +4941,7 @@ Public Class frmValidator
End Function
Public Function GetVariableValuefromSource(oSourceIndexName As String, Optional oIDBTyp As Integer = 0, Optional FromIDB As Boolean = False) As Object
Private Function GetVariableValuefromSource(oSourceIndexName As String, Optional oIDBTyp As Integer = 0, Optional FromIDB As Boolean = False) As Object
Try
Dim oValuefromSource
If IDB_ACTIVE = False Then
@@ -5113,9 +5012,6 @@ Public Class frmValidator
_CachedControlsByGuid = New Dictionary(Of Integer, Control)()
For Each ctrl As Control In PanelValidatorControl.Controls
Try
If ctrl.Name.StartsWith("BTNDYN_GRID") Then
Continue For
End If
Dim meta = DirectCast(ctrl.Tag, ClassControlCreator.ControlMetadata)
_CachedControlsByGuid(meta.Guid) = ctrl
Catch
@@ -5142,9 +5038,6 @@ Public Class frmValidator
If DTVWCONTROL_INDEX.Rows.Count > 0 Then
Dim oCount As Integer = 0
For Each oControl As Control In Me.PanelValidatorControl.Controls
If oControl.Name.StartsWith("BTNDYN_GRID") Then
Continue For
End If
Dim oValueFromSource
Dim oFormattedValue As String = ""
@@ -5362,6 +5255,9 @@ Public Class frmValidator
oControlType = "DevExpress.XtraGrid.GridControl"
Dim oMyGridControl As GridControl = oControl
' ========== OPTIMIERUNG 6: Dictionary-Lookup statt Select() ==========
' VORHER: DT_COLUMNS_GRID.Select($"CONTROL_ID = {oControlId}") → O(n) pro Grid
' NACHHER: Dictionary.TryGetValue() → O(1)
Dim oDTColumnsPerDevExGrid As DataTable = Nothing
If columnsByControl IsNot Nothing AndAlso columnsByControl.TryGetValue(oControlId, oDTColumnsPerDevExGrid) Then
MyValidationLogger.Debug($"Grid [{oControl.Name}]: {oDTColumnsPerDevExGrid.Rows.Count} Spalten aus Cache geladen")
@@ -5369,6 +5265,7 @@ Public Class frmValidator
oDTColumnsPerDevExGrid = DT_COLUMNS_GRID.Clone()
MyValidationLogger.Warn($"⚠️ Grid [{oControl.Name}]: Keine Spalten-Definition gefunden!")
End If
' ========== ENDE OPTIMIERUNG 6 ==========
Try
If oSourceIndexName = "" Then
@@ -5399,93 +5296,72 @@ Public Class frmValidator
If IDB_ACTIVE = False Then
MyValidationLogger.Debug("ValueFromSource contains {0} items", oValueFromSource)
' ========== EXPRESSION-SPALTEN EINMALIG IDENTIFIZIEREN ==========
Dim expressionColumnIndices As New HashSet(Of Integer)
MyValidationLogger.Warn($"🔍 [DEBUG] Grid [{oControl.Name}]: Prüfe {oDataSource.Columns.Count} Spalten auf Expressions...")
For colIdx As Integer = 0 To oDataSource.Columns.Count - 1
If Not String.IsNullOrEmpty(oDataSource.Columns(colIdx).Expression) Then
expressionColumnIndices.Add(colIdx)
MyValidationLogger.Error($"🔴 EXPRESSION-SPALTE: [{oDataSource.Columns(colIdx).ColumnName}] = [{oDataSource.Columns(colIdx).Expression}]")
End If
Next
' ========== ENDE Expression-Check ==========
For Each Zeile As Object In oValueFromSource
MyValidationLogger.Debug($"vektorrow Value {Zeile.ToString}...")
Try
oColValuesfromSource = Split(Zeile, PMDelimiter)
Dim oNewRow = oDataSource.NewRow()
MyValidationLogger.Debug("Creating new row..")
oColValuesfromSource = Split(Zeile, PMDelimiter)
Dim oNewRow = oDataSource.NewRow()
MyValidationLogger.Debug("Creating new row..")
For index = 0 To oDTColumnsPerDevExGrid.Rows.Count - 1
For index = 0 To oDTColumnsPerDevExGrid.Rows.Count - 1
Try
' 1. Basis-Checks
Dim rawValue As String = If(index < oColValuesfromSource.Length, oColValuesfromSource(index), String.Empty)
Dim targetColumn As DataColumn = oDataSource.Columns(index)
Dim colType As Type = targetColumn.DataType
' 2. NULL-Handling
If String.IsNullOrWhiteSpace(rawValue) Then
If colType.IsValueType AndAlso Nullable.GetUnderlyingType(colType) Is Nothing Then
' Nicht-Nullable Value-Type → Default-Wert setzen
oNewRow.Item(index) = Activator.CreateInstance(colType)
MyValidationLogger.Debug($"Grid row default: ColIdx={index}, ColType={colType.Name}")
Else
' Nullable/Reference-Type → DBNull
oNewRow.Item(index) = DBNull.Value
End If
Continue For
End If
' 3. Typ-spezifische Konvertierung
Try
' ✅ FIX: Expression-Spalten überspringen
If expressionColumnIndices.Contains(index) Then
MyValidationLogger.Debug($"⏭️ SKIP Expression-Spalte: Index={index}")
Continue For
Select Case Type.GetTypeCode(colType)
Case TypeCode.Int32
oNewRow.Item(index) = Integer.Parse(rawValue.Trim(), CultureInfo.InvariantCulture)
Case TypeCode.Int64
oNewRow.Item(index) = Long.Parse(rawValue.Trim(), CultureInfo.InvariantCulture)
Case TypeCode.Double
oNewRow.Item(index) = Double.Parse(rawValue.Trim().Replace(",", "."), CultureInfo.InvariantCulture)
Case TypeCode.Decimal
oNewRow.Item(index) = Decimal.Parse(rawValue.Trim().Replace(",", "."), CultureInfo.InvariantCulture)
Case TypeCode.Boolean
oNewRow.Item(index) = Boolean.Parse(rawValue.Trim())
Case TypeCode.DateTime
oNewRow.Item(index) = DateTime.Parse(rawValue.Trim(), CultureInfo.CurrentCulture)
Case Else
' String oder Custom-Type → direkt übernehmen
oNewRow.Item(index) = rawValue
End Select
Catch convEx As FormatException
MyValidationLogger.Warn($"⚠️ Grid conversion FAILED: ColIdx={index}, ColType={colType.Name}, RawValue=[{rawValue}] → using default")
' Fallback: Default-Wert statt Crash
If colType.IsValueType Then
oNewRow.Item(index) = Activator.CreateInstance(colType)
Else
oNewRow.Item(index) = DBNull.Value
End If
' 1. Basis-Checks
Dim rawValue As String = If(index < oColValuesfromSource.Length, oColValuesfromSource(index), String.Empty)
Dim targetColumn As DataColumn = oDataSource.Columns(index)
Dim colType As Type = targetColumn.DataType
' 2. NULL-Handling
If String.IsNullOrWhiteSpace(rawValue) Then
If colType.IsValueType AndAlso Nullable.GetUnderlyingType(colType) Is Nothing Then
oNewRow.Item(index) = Activator.CreateInstance(colType)
MyValidationLogger.Debug($"Grid row default: ColIdx={index}, ColType={colType.Name}")
Else
oNewRow.Item(index) = DBNull.Value
End If
Continue For
End If
' 3. Typ-spezifische Konvertierung
Try
Select Case Type.GetTypeCode(colType)
Case TypeCode.Int32
oNewRow.Item(index) = Integer.Parse(rawValue.Trim(), CultureInfo.InvariantCulture)
Case TypeCode.Int64
oNewRow.Item(index) = Long.Parse(rawValue.Trim(), CultureInfo.InvariantCulture)
Case TypeCode.Double
' ✅ KRITISCH: Komma durch Punkt ersetzen!
oNewRow.Item(index) = Double.Parse(rawValue.Trim().Replace(",", "."), CultureInfo.InvariantCulture)
Case TypeCode.Decimal
oNewRow.Item(index) = Decimal.Parse(rawValue.Trim().Replace(",", "."), CultureInfo.InvariantCulture)
Case TypeCode.Boolean
oNewRow.Item(index) = Boolean.Parse(rawValue.Trim())
Case TypeCode.DateTime
oNewRow.Item(index) = DateTime.Parse(rawValue.Trim(), CultureInfo.CurrentCulture)
Case Else
' String oder Custom-Type
oNewRow.Item(index) = rawValue
End Select
Catch convEx As FormatException
MyValidationLogger.Warn($"⚠️ Grid conversion FAILED: ColIdx={index}, ColType={colType.Name}, RawValue=[{rawValue}] → using default")
If colType.IsValueType Then
oNewRow.Item(index) = Activator.CreateInstance(colType)
Else
oNewRow.Item(index) = DBNull.Value
End If
End Try
Catch logEx As Exception
MyValidationLogger.Debug($"Grid row assign CRITICAL: ColIdx={index} [error: {logEx.Message}]")
oNewRow.Item(index) = DBNull.Value
End Try
Next
MyValidationLogger.Debug("Adding row To grid..")
oDataSource.Rows.Add(oNewRow)
Catch ex As Exception
MyValidationLogger.Error(ex)
errormessage = $"Unexpected error in for each oValueFromSource: {Zeile.ToString}
{ex.Message} - Check your logfile"
My.Settings.Save()
frmError.ShowDialog()
End Try
Catch logEx As Exception
' Fallback: Minimales Logging ohne Fehler
MyValidationLogger.Debug($"Grid row assign CRITICAL: ColIdx={index} [error: {logEx.Message}]")
' Leere Zelle → DBNull
oNewRow.Item(index) = DBNull.Value
End Try
Next
MyValidationLogger.Debug("Adding row To grid..")
oDataSource.Rows.Add(oNewRow)
Next
Else
' IDB-Logik (bleibt gleich)
@@ -5934,30 +5810,26 @@ Public Class frmValidator
Dim oAdvancedLookup = oRow.Item("ADVANCED_LOOKUP")
oSqlCommand = clsPatterns.ReplaceAllValues(oSqlCommand, PanelValidatorControl, True)
' Prüfen ob Platzhalter enthalten sind
If Not ContainsTableColumnPlaceholder(oSqlCommand?.ToString()) Then
Try
Dim oDTRESULT_FOR_COLUMN As DataTable = GetCachedDatatable(oSqlCommand, oCONNID)
If Not IsNothing(oDTRESULT_FOR_COLUMN) Then
MyValidationLogger.Debug($"Trying to create a DropDown(FIV) for CONTROL-ID [{oDEPENDING_CTRL_ID}] - RowCount: [{oDTRESULT_FOR_COLUMN.Rows.Count}] ")
Try
Dim oDTRESULT_FOR_COLUMN As DataTable = GetCachedDatatable(oSqlCommand, oCONNID)
' Dictionary-Lookup statt Loop
Dim oControl As Control = Nothing
If _CachedControlsByGuid.TryGetValue(oDEPENDING_CTRL_ID, oControl) Then
ControlCreator.GridTables_CacheDatatableForColumn(oDEPENDING_CTRL_ID, oDEPENDING_COLUMN, oSqlCommand, oCONNID, oAdvancedLookup)
Else
MyValidationLogger.Warn($"⚠️ Control mit ID {oDEPENDING_CTRL_ID} nicht gefunden!")
End If
If Not IsNothing(oDTRESULT_FOR_COLUMN) Then
MyValidationLogger.Debug($"Trying to create a DropDown(FIV) for CONTROL-ID [{oDEPENDING_CTRL_ID}] - RowCount: [{oDTRESULT_FOR_COLUMN.Rows.Count}] ")
' Dictionary-Lookup statt Loop
Dim oControl As Control = Nothing
If _CachedControlsByGuid.TryGetValue(oDEPENDING_CTRL_ID, oControl) Then
ControlCreator.GridTables_CacheDatatableForColumn(oDEPENDING_CTRL_ID, oDEPENDING_COLUMN, oSqlCommand, oCONNID, oAdvancedLookup)
Else
MyValidationLogger.Warn($"⚠️ FillIndexValues - oDTRESULT_FOR_COLUMN is nothing!")
MyValidationLogger.Warn($"⚠️ Control mit ID {oDEPENDING_CTRL_ID} nicht gefunden!")
End If
Catch ex As Exception
MyValidationLogger.Warn($"⚠️ FillIndexValues - Unexpected error in creating Grid-Dropdown-Column [{oDEPENDING_COLUMN}] for CONTROL-ID [{oDEPENDING_CTRL_ID}]: " & ex.Message)
End Try
Else
MyValidationLogger.Debug($"⚠️ FillIndexValues - SQL-Command for Grid-Dropdown-Column contains #CTRL# placeholder, skipping dropdown creation for CONTROL-ID [{oDEPENDING_CTRL_ID}] - Column [{oDEPENDING_COLUMN}]")
End If
Else
MyValidationLogger.Warn($"⚠️ FillIndexValues - oDTRESULT_FOR_COLUMN is nothing!")
End If
Catch ex As Exception
MyValidationLogger.Warn($"⚠️ FillIndexValues - Unexpected error in creating Grid-Dropdown-Column [{oDEPENDING_COLUMN}] for CONTROL-ID [{oDEPENDING_CTRL_ID}]: " & ex.Message)
End Try
Next
Catch ex As Exception
MyValidationLogger.Warn($"⚠️ FillIndexValues - Unexpected error in creating dropdown for Grid: " & ex.Message)
@@ -6095,19 +5967,7 @@ Public Class frmValidator
End If
End Try
End Sub
''' <summary>
''' Prüft, ob ein SQL-Command Grid-Spalten-Platzhalter enthält
''' </summary>
''' <param name="sqlCommand">Der zu prüfende SQL-Command</param>
''' <returns>True wenn Platzhalter enthalten sind, sonst False</returns>
Private Function ContainsTableColumnPlaceholder(sqlCommand As String) As Boolean
If String.IsNullOrWhiteSpace(sqlCommand) Then
Return False
End If
' Prüft auf #TBCOL# Platzhalter (case-insensitive)
Return sqlCommand.IndexOf("#TBCOL#", StringComparison.OrdinalIgnoreCase) >= 0
End Function
Private Sub ApplyCurrencyMask(pTextEdit As TextEdit)
If pTextEdit Is Nothing Then Return
Try
@@ -6144,7 +6004,7 @@ Public Class frmValidator
MyValidationLogger.Info("[PERF] frmValidation_Shown START")
End If
Try
_gridDataLoader = New ClassGridDataLoader(DatabaseFallback)
' Refresh_FileList()
Load_Next_Document(True)
If LOG_HOTSPOTS Then
@@ -6662,9 +6522,6 @@ Public Class frmValidator
If IsNumeric(CTRL_ID) Then
For Each oControl As Control In Me.PanelValidatorControl.Controls
Try
If oControl.Name.StartsWith("BTNDYN_GRID") Then
Continue For
End If
If IsNothing(DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Guid) Then
Continue For
End If
@@ -7010,9 +6867,6 @@ Public Class frmValidator
' ========== ENDE BATCH START ==========
' ========== OPTIMIERUNG: Nur geänderte Controls durchlaufen ==========
For Each oControl As Control In Me.PanelValidatorControl.Controls
If oControl.Name.StartsWith("BTNDYN_GRID") Then
Continue For
End If
Dim oMeta As ClassControlCreator.ControlMetadata = Nothing
Try
oMeta = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata)
@@ -7866,65 +7720,6 @@ Public Class frmValidator
Next ' End For Each oControl
' ========== TEIL 2: Separate Grids aus Cache verarbeiten ==========
' Nach dem Ende der "For Each oControl As Control In Me.PanelValidatorControl.Controls" Schleife
If _separateGridControlCache.Count > 0 Then
MyValidationLogger?.Debug($"Verarbeite {_separateGridControlCache.Count} separate Grid(s) aus Cache")
For Each kvp As KeyValuePair(Of String, GridControl) In _separateGridControlCache
Dim controlName As String = kvp.Key
Dim oGrid As GridControl = kvp.Value
' Nur verarbeiten, wenn Control als "dirty" markiert ist
If Not listofControls.Contains(controlName) Then
MyValidationLogger?.Debug($"Separate Grid '{controlName}' wurde nicht geändert - überspringe")
Continue For
End If
MyValidationLogger?.Debug($"[4] Separates GridControl verarbeiten: [{controlName}]")
' Control-Metadaten holen (EXAKT wie bei normalem Grid)
Dim oControlRow As DataRow = GetControlMetaBySql($"NAME='{controlName}'").Rows(0)
Dim oGUID = oControlRow("GUID")
Dim oControlRow1 = (From form In DTVWCONTROL_INDEX.AsEnumerable()
Where form.Item("GUID") = oGUID).SingleOrDefault()
Dim oIndexName As String = If(IsDBNull(oControlRow1("INDEX_NAME")), "", oControlRow1("INDEX_NAME").ToString())
Dim oIsRequired As Boolean = True
Dim oIDBTyp As Integer = If(IsDBNull(oControlRow1("IDB_TYP")), 0, CInt(oControlRow1("IDB_TYP")))
' Cleanup (wie bei normalem Grid)
CleanupDeletedRows(oGrid)
' Settings erstellen (EXAKT wie bei normalem Grid)
Dim oSettings = New ControlSettings() With {
.IndexName = oIndexName,
.ControlType = GetType(GridControl).ToString,
.Name = controlName,
.IsRequired = oIsRequired,
.IDBAttributeType = oIDBTyp
}
' Spalten-Definition holen (EXAKT wie bei normalem Grid)
Dim oGridColumnDefinition As DataTable = DT_COLUMNS_GRID.Clone()
Dim oExpression = $"CONTROL_ID = {oGUID}"
Dim selectedRows() As DataRow = DT_COLUMNS_GRID.Select(oExpression, "SEQUENCE")
If selectedRows.Length > 0 Then
selectedRows.CopyToDataTable(oGridColumnDefinition, LoadOption.PreserveChanges)
End If
' WICHTIG: DEINE BESTEHENDE ValidateGridControl Funktion verwenden!
Dim oResult = ValidateGridControl(oGrid, oSettings, oGridColumnDefinition, oMissing, oErrMsgMissingInput)
If oResult = False Then
MyValidationLogger?.Warn($"⚠️ Validierung fehlgeschlagen für separates Grid [{controlName}] → Exit For")
Exit For
End If
Next
End If
' ========== BATCH: Gesammelte Statements abfeuern ==========
If IDB_ACTIVE Then
If oMissing = False Then
@@ -8783,9 +8578,9 @@ Public Class frmValidator
oFilenameOnly = Path.GetFileName(DocPathWindows)
oExtension = Path.GetExtension(DocPathWindows)
oSQLGetFilename = $"DECLARE @Filename Varchar(512) " & vbCrLf &
$"EXEC dbo.PRPM_GETFILENAME_EXPORT {CURRENT_DOC_ID}, 1, @Outputfilename = @Filename OUTPUT;" & vbCrLf &
"SELECT @Filename"
oSQLGetFilename = $"DECLARE @Filename Varchar(512) " & vbcrlf &
$"EXEC dbo.PRPM_GETFILENAME_EXPORT {CURRENT_DOC_ID}, 1, @Outputfilename = @Filename OUTPUT;" & vbcrlf &
"SELECT @Filename"
Dim oExportFilename = DatabaseFallback.GetScalarValueECM(oSQLGetFilename)
If Not IsNothing(oExportFilename) Then
@@ -8826,49 +8621,23 @@ Public Class frmValidator
MyValidationLogger.Info($"File {oFile2Export} exported successfully!")
oCount += 1
Else
MsgBox("Error encountered while extracting Export-Filename!" & vbCrLf & "Please inform Admin-Team!", MsgBoxStyle.Critical, ADDITIONAL_TITLE)
MsgBox("Error encountered while extracting Export-Filename!" & vbcrlf & "Please inform Admin-Team!", MsgBoxStyle.Critical, ADDITIONAL_TITLE)
End If
Else
MyValidationLogger.Info($"#### ATTENTION: oExportFilename is Nothing - SQL: {oSQLGetFilename}")
MsgBox("Error encountered while extracting Export-Filename - Result is Nothing!" & vbCrLf & "Please inform Admin-Team!", MsgBoxStyle.Critical, ADDITIONAL_TITLE)
End If
Dim oFileCount As Integer = 1
If Not IsNothing(DT_AdditionalSearches_Resultset_Docs) Then
For Each oFileRecord As DataRow In DT_AdditionalSearches_Resultset_Docs.Rows
Dim oFromFilename = oFileRecord.Item("FULL_FILENAME")?.ToString()
Dim oFromFilename = oFileRecord.Item("FULL_FILENAME")
Dim oDocID = oFileRecord.Item("DocID")
' COPY_WMFILE_2TEMP: Pfad analog zu GetDocPathWindows() auflösen
Dim oResolvedFilename As String = oFromFilename
If COPY_WMFILE_2TEMP = True AndAlso Not String.IsNullOrWhiteSpace(oFromFilename) Then
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
}
Dim result = _documentPathHandler.ProcessDocumentPath(oFromFilename, options)
If result.Success AndAlso Not String.IsNullOrWhiteSpace(result.FinalPath) AndAlso File.Exists(result.FinalPath) Then
MyValidationLogger.Info($"✓ Zusatzdokument via Temp aufgelöst: [{result.FinalPath}]")
oResolvedFilename = result.FinalPath
Else
MyValidationLogger.Warn($"⚠️ Temp-Auflösung fehlgeschlagen für [{oFromFilename}]: {result.ErrorMessage} - Fallback auf Originalpfad")
oResolvedFilename = oFromFilename
End If
End If
If File.Exists(oResolvedFilename) Then
MyValidationLogger.Debug($"Found additional document for export: [{oResolvedFilename}] (WM: [{oFromFilename}]) with DocID [{oDocID}]")
If File.Exists(oFromFilename) Then
oFileCount += 1
oSQLGetFilename = $"DECLARE @Filename Varchar(512) " & vbCrLf &
$"EXEC dbo.PRPM_GETFILENAME_EXPORT {oDocID}, {oFileCount}, @Outputfilename = @Filename OUTPUT;" & vbCrLf &
"SELECT @Filename"
oSQLGetFilename = $"DECLARE @Filename Varchar(512) " & vbcrlf &
$"EXEC dbo.PRPM_GETFILENAME_EXPORT {oDocID}, {oFileCount}, @Outputfilename = @Filename OUTPUT;" & vbcrlf &
"SELECT @Filename"
oExportFilename = DatabaseFallback.GetScalarValueECM(oSQLGetFilename)
oExtension = Path.GetExtension(oResolvedFilename)
oExtension = Path.GetExtension(oFromFilename)
If Not IsNothing(oExportFilename) Then
If IsDBNull(oExportFilename) Then
MyValidationLogger.Info($"#### ATTENTION: oExportFilename is DBNULL - SQL: {oSQLGetFilename}")
@@ -8876,25 +8645,18 @@ Public Class frmValidator
End If
If oExportFilename <> String.Empty Then
oTargetPath = FolderBrowserDialog1.SelectedPath & "\" & oExportFilename & oExtension
File.Copy(oResolvedFilename, oTargetPath)
MyValidationLogger.Info($"Additional file [{oResolvedFilename}] exported successfully to [{oTargetPath}]")
File.Copy(oFromFilename, oTargetPath)
oCount += 1
Else
Dim omsg = $"Error encountered while extracting ATTACHMENT-Export-Filename DocID [{oDocID}]!"
MyValidationLogger.Info($"#### ATTENTION: {omsg} SQL: {oSQLGetFilename}")
MsgBox(omsg & vbCrLf & "Please inform Admin-Team!", MsgBoxStyle.Critical, ADDITIONAL_TITLE)
MsgBox(omsg & vbcrlf & "Please inform Admin-Team!", MsgBoxStyle.Critical, ADDITIONAL_TITLE)
End If
Else
Dim omsg = $"Error encountered while extracting ATTACHMENT-Export-Filename DocID [{oDocID}] - Result is Nothing!"
MyValidationLogger.Info($"#### ATTENTION: {omsg} SQL: {oSQLGetFilename}")
MsgBox(omsg & vbCrLf & "Please inform Admin-Team!", MsgBoxStyle.Critical, ADDITIONAL_TITLE)
End If
Else
MyValidationLogger.Warn($"⚠️ Additional file for export not found: [{oResolvedFilename}] (WM: [{oFromFilename}]) with DocID [{oDocID}]")
'oFilenameOnly = Path.GetFileName(oFromFilename)
End If
Next
Else
MyValidationLogger.Info("No additional documents to export (DT_AdditionalSearches_Resultset_Docs is Nothing)")
End If
CONFIG.Config.LastExportPath = FolderBrowserDialog1.SelectedPath
@@ -8903,7 +8665,7 @@ Public Class frmValidator
Catch ex As Exception
MyValidationLogger.Error(ex)
MsgBox("Could not move file to target: " & vbCrLf & ex.Message, MsgBoxStyle.Critical, ADDITIONAL_TITLE)
MsgBox("Could not move file to target: " & vbcrlf & ex.Message, MsgBoxStyle.Critical, ADDITIONAL_TITLE)
End Try
End Sub
@@ -9037,8 +8799,4 @@ Public Class frmValidator
CONFIG.Config.NOTES_ONCLICK = bchkitmNotes.Checked
CONFIG.Save()
End Sub
Private Sub frmValidator_SizeChanged(sender As Object, e As EventArgs) Handles Me.SizeChanged
End Sub
End Class

File diff suppressed because it is too large Load Diff

View File

@@ -5,13 +5,12 @@
<package id="DocumentFormat.OpenXml.Framework" version="3.2.0" targetFramework="net462" />
<package id="EntityFramework" version="6.4.4" targetFramework="net462" />
<package id="EntityFramework.Firebird" version="6.4.0" targetFramework="net462" />
<package id="GdPicture" version="14.4.4" targetFramework="net462" />
<package id="GdPicture.runtimes.windows" version="14.4.4" targetFramework="net462" />
<package id="GdPicture" version="14.3.3" targetFramework="net462" />
<package id="GdPicture.runtimes.windows" version="14.3.3" targetFramework="net462" />
<package id="Google.Protobuf" version="3.33.2" targetFramework="net462" />
<package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net462" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="10.0.5" targetFramework="net462" />
<package id="Microsoft.Bcl.Cryptography" version="10.0.5" targetFramework="net462" />
<package id="Microsoft.Bcl.HashCode" version="6.0.0" targetFramework="net462" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="9.0.0" targetFramework="net462" />
<package id="Microsoft.Bcl.Cryptography" version="9.0.0" targetFramework="net462" />
<package id="Microsoft.CSharp" version="4.7.0" targetFramework="net462" />
<package id="Microsoft.Identity.Client" version="4.55.0" targetFramework="net462" />
<package id="Microsoft.IdentityModel.Abstractions" version="6.22.0" targetFramework="net462" />
@@ -19,27 +18,27 @@
<package id="Newtonsoft.Json" version="13.0.3" targetFramework="net462" />
<package id="Newtonsoft.Json.Bson" version="1.0.2" targetFramework="net462" />
<package id="NLog" version="5.0.5" targetFramework="net461" />
<package id="OpenMcdf" version="3.1.4" targetFramework="net462" />
<package id="OpenMcdf" version="2.4.1" targetFramework="net462" />
<package id="Oracle.ManagedDataAccess" version="21.15.0" targetFramework="net462" />
<package id="protobuf-net" version="3.2.46" targetFramework="net462" />
<package id="protobuf-net.Core" version="3.2.46" targetFramework="net462" />
<package id="RtfPipe" version="2.0.7677.4303" targetFramework="net462" />
<package id="S22.Imap" version="3.6.0.0" targetFramework="net462" />
<package id="System.Buffers" version="4.6.1" targetFramework="net462" />
<package id="System.Buffers" version="4.6.0" targetFramework="net462" />
<package id="System.CodeDom" version="9.0.0" targetFramework="net462" />
<package id="System.Collections.Immutable" version="10.0.5" targetFramework="net462" />
<package id="System.Collections.Immutable" version="9.0.0" targetFramework="net462" />
<package id="System.Data.Odbc" version="6.0.1" targetFramework="net462" />
<package id="System.Formats.Asn1" version="10.0.5" targetFramework="net462" />
<package id="System.IO.Packaging" version="10.0.5" targetFramework="net462" />
<package id="System.IO.Pipelines" version="10.0.5" targetFramework="net462" />
<package id="System.Formats.Asn1" version="9.0.0" targetFramework="net462" />
<package id="System.IO.Packaging" version="9.0.0" targetFramework="net462" />
<package id="System.IO.Pipelines" version="9.0.0" targetFramework="net462" />
<package id="System.Management" version="9.0.0" targetFramework="net462" />
<package id="System.Memory" version="4.6.3" targetFramework="net462" />
<package id="System.Numerics.Vectors" version="4.6.1" targetFramework="net462" />
<package id="System.Runtime.CompilerServices.Unsafe" version="6.1.2" targetFramework="net462" />
<package id="System.Security.Cryptography.Pkcs" version="10.0.5" targetFramework="net462" />
<package id="System.Text.Encodings.Web" version="10.0.5" targetFramework="net462" />
<package id="System.Text.Json" version="10.0.5" targetFramework="net462" />
<package id="System.Threading.Channels" version="10.0.5" targetFramework="net462" />
<package id="System.Threading.Tasks.Extensions" version="4.6.3" targetFramework="net462" />
<package id="System.ValueTuple" version="4.6.1" targetFramework="net462" />
<package id="System.Memory" version="4.6.0" targetFramework="net462" />
<package id="System.Numerics.Vectors" version="4.6.0" targetFramework="net462" />
<package id="System.Runtime.CompilerServices.Unsafe" version="6.1.0" targetFramework="net462" />
<package id="System.Security.Cryptography.Pkcs" version="9.0.0" targetFramework="net462" />
<package id="System.Text.Encodings.Web" version="9.0.0" targetFramework="net462" />
<package id="System.Text.Json" version="9.0.0" targetFramework="net462" />
<package id="System.Threading.Channels" version="8.0.0" targetFramework="net462" />
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
</packages>

View File

@@ -227,71 +227,84 @@
<Reference Include="FormsUtils">
<HintPath>M:\Bibliotheken\3rdParty\FormsUtils.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.dll</HintPath>
<Reference Include="GdPicture.NET.14, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Common, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Document, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Email, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.HTML, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Markdown, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.Markdown.dll</HintPath>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.PDF, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.RTF, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.SVG, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Google.Protobuf, Version=3.33.2.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604, processorArchitecture=MSIL">
@@ -316,14 +329,11 @@
<Reference Include="Mail">
<HintPath>M:\Bibliotheken\3rdParty\Limilabs\Mail.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.10.0.5\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.9.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.Cryptography, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.Cryptography.10.0.5\lib\net462\Microsoft.Bcl.Cryptography.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.HashCode, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.HashCode.6.0.0\lib\net462\Microsoft.Bcl.HashCode.dll</HintPath>
<Reference Include="Microsoft.Bcl.Cryptography, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.Cryptography.9.0.0\lib\net462\Microsoft.Bcl.Cryptography.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="Microsoft.Identity.Client, Version=4.55.0.0, Culture=neutral, PublicKeyToken=0a613f4dd989e8ae, processorArchitecture=MSIL">
@@ -332,15 +342,6 @@
<Reference Include="Microsoft.IdentityModel.Abstractions, Version=6.22.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Abstractions.6.22.0\lib\net461\Microsoft.IdentityModel.Abstractions.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Exceptions, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\NativeSDK.Exceptions.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\NativeSDK.Settings.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings.Edition, Version=14.4.4.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.4.4\lib\net462\NativeSDK.Settings.Edition.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
@@ -350,8 +351,8 @@
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.5.0.5\lib\net46\NLog.dll</HintPath>
</Reference>
<Reference Include="OpenMcdf, Version=3.1.4.0, Culture=neutral, PublicKeyToken=fdbb1629d7c00800, processorArchitecture=MSIL">
<HintPath>..\packages\OpenMcdf.3.1.4\lib\netstandard2.0\OpenMcdf.dll</HintPath>
<Reference Include="OpenMcdf, Version=2.4.1.0, Culture=neutral, PublicKeyToken=fdbb1629d7c00800, processorArchitecture=MSIL">
<HintPath>..\packages\OpenMcdf.2.4.1\lib\net40\OpenMcdf.dll</HintPath>
</Reference>
<Reference Include="Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL">
<HintPath>..\packages\Oracle.ManagedDataAccess.21.15.0\lib\net462\Oracle.ManagedDataAccess.dll</HintPath>
@@ -366,14 +367,14 @@
<HintPath>..\packages\RtfPipe.2.0.7677.4303\lib\net45\RtfPipe.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.6.1\lib\net462\System.Buffers.dll</HintPath>
<Reference Include="System.Buffers, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.6.0\lib\net462\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.CodeDom, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.CodeDom.9.0.0\lib\net462\System.CodeDom.dll</HintPath>
</Reference>
<Reference Include="System.Collections.Immutable, Version=10.0.0.5, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Collections.Immutable.10.0.5\lib\net462\System.Collections.Immutable.dll</HintPath>
<Reference Include="System.Collections.Immutable, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Collections.Immutable.9.0.0\lib\net462\System.Collections.Immutable.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
@@ -388,53 +389,53 @@
<Reference Include="System.DirectoryServices" />
<Reference Include="System.DirectoryServices.AccountManagement" />
<Reference Include="System.Drawing" />
<Reference Include="System.Formats.Asn1, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Formats.Asn1.10.0.5\lib\net462\System.Formats.Asn1.dll</HintPath>
<Reference Include="System.Formats.Asn1, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Formats.Asn1.9.0.0\lib\net462\System.Formats.Asn1.dll</HintPath>
</Reference>
<Reference Include="System.IdentityModel" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.IO.Packaging, Version=10.0.0.5, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Packaging.10.0.5\lib\net462\System.IO.Packaging.dll</HintPath>
<Reference Include="System.IO.Packaging, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Packaging.9.0.0\lib\net462\System.IO.Packaging.dll</HintPath>
</Reference>
<Reference Include="System.IO.Pipelines, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Pipelines.10.0.5\lib\net462\System.IO.Pipelines.dll</HintPath>
<Reference Include="System.IO.Pipelines, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Pipelines.9.0.0\lib\net462\System.IO.Pipelines.dll</HintPath>
</Reference>
<Reference Include="System.Management" />
<Reference Include="System.Memory, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.6.3\lib\net462\System.Memory.dll</HintPath>
<Reference Include="System.Memory, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.6.0\lib\net462\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http" />
<Reference Include="System.Net.Http.Formatting, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.6.0.0\lib\net45\System.Net.Http.Formatting.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.6.1\lib\net462\System.Numerics.Vectors.dll</HintPath>
<Reference Include="System.Numerics.Vectors, Version=4.1.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.6.0\lib\net462\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.1.2\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.1.0\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Security" />
<Reference Include="System.Security.Cryptography.Pkcs, Version=10.0.0.5, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Cryptography.Pkcs.10.0.5\lib\net462\System.Security.Cryptography.Pkcs.dll</HintPath>
<Reference Include="System.Security.Cryptography.Pkcs, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Cryptography.Pkcs.9.0.0\lib\net462\System.Security.Cryptography.Pkcs.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel" />
<Reference Include="System.Text.Encodings.Web, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Encodings.Web.10.0.5\lib\net462\System.Text.Encodings.Web.dll</HintPath>
<Reference Include="System.Text.Encodings.Web, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Encodings.Web.9.0.0\lib\net462\System.Text.Encodings.Web.dll</HintPath>
</Reference>
<Reference Include="System.Text.Json, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Json.10.0.5\lib\net462\System.Text.Json.dll</HintPath>
<Reference Include="System.Text.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Json.9.0.0\lib\net462\System.Text.Json.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Channels, Version=10.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Channels.10.0.5\lib\net462\System.Threading.Channels.dll</HintPath>
<Reference Include="System.Threading.Channels, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Channels.8.0.0\lib\net462\System.Threading.Channels.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.6.3\lib\net462\System.Threading.Tasks.Extensions.dll</HintPath>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Transactions" />
<Reference Include="System.ValueTuple, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.6.1\lib\net462\System.ValueTuple.dll</HintPath>
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Web.Services" />
<Reference Include="System.Windows.Forms" />
@@ -465,7 +466,6 @@
<Compile Include="ClassFinalIndex.vb" />
<Compile Include="ClassFinalizeDoc.vb" />
<Compile Include="ClassFormat.vb" />
<Compile Include="ClassGridDataLoader.vb" />
<Compile Include="ClassIDBData.vb" />
<Compile Include="ClassImageSelector.vb" />
<Compile Include="ClassImageValue.vb" />
@@ -557,12 +557,6 @@
<Compile Include="frmColumn_Detail.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmControl_Table.Designer.vb">
<DependentUpon>frmControl_Table.vb</DependentUpon>
</Compile>
<Compile Include="frmControl_Table.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmDesignerLayout.Designer.vb">
<DependentUpon>frmDesignerLayout.vb</DependentUpon>
</Compile>
@@ -826,9 +820,6 @@
<DependentUpon>frmColumn_Detail.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmControl_Table.resx">
<DependentUpon>frmControl_Table.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmDesignerLayout.resx">
<DependentUpon>frmDesignerLayout.vb</DependentUpon>
<SubType>Designer</SubType>
@@ -1375,14 +1366,10 @@
</PropertyGroup>
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.props'))" />
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.targets'))" />
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.4.4\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.4.4\build\net462\GdPicture.runtimes.windows.targets'))" />
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets'))" />
</Target>
<Import Project="..\packages\EntityFramework.6.4.4\build\EntityFramework.targets" Condition="Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" />
<Import Project="..\packages\GdPicture.runtimes.windows.14.4.4\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.4.4\build\net462\GdPicture.runtimes.windows.targets')" />
<PropertyGroup>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
<Import Project="..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets')" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">