27 Commits

Author SHA1 Message Date
Developer01
960acb0ce1 Nochmal 2026-05-05 18:22:06 +02:00
Developer01
b95e580f06 V 2.9.9.0
Verbesserung DocSearchLoad, Mapping Sharedrive

Refactoring Zusatzsuchen, Dokumentenhandling & Cleanup

Umfangreiches Refactoring der Zusatzsuchen-Logik (Validator/ValidatorSearch): Vereinheitlichung und Typprüfung der DataTables, zentrale Filterung, robustere Tab-Steuerung und thread-sicheres Nachladen. Netzlaufwerk-Mapping und Dokumentenpfad-Handling wurden entfernt bzw. auf neue Handler ausgelagert. Profilsuchen-Handling vereinheitlicht, Parametrierung (Working Mode) klarer strukturiert. Diverse Bugfixes, verbessertes Logging, Cleanup von Ressourcen und Projektdateien, veraltete Komponenten entfernt. Update auf DocumentViewer 2.6.0.0. Die Anwendung ist robuster, wartbarer und für Erweiterungen vorbereitet.
2026-05-05 18:21:54 +02:00
Developer01
df3f8167fe Automatisches Mappen und Arbeiten mit Temporärem Verzeichnis
ConnectionID sicher auf 1
2026-04-24 11:15:09 +02:00
Developer01
376dc3390f DigitalData.Modules.Language.Utils auskommentiert 2026-04-21 09:59:02 +02:00
Developer01
a2a96c0f8d Verweise 2026-04-21 09:50:16 +02:00
Developer01
771fca60f0 Verweise nach Domänenupdate erneuern 2026-04-21 09:50:06 +02:00
Developer01
a84dafef0b Leerzeile wegen Push 2026-04-14 08:11:14 +02:00
Developer01
4cb3bd9eb1 TestPush 2026-04-13 09:28:09 +02:00
Developer01
43ad71f520 Leerzeilen 2026-03-30 15:13:23 +02:00
Developer01
724a37ad47 Leerzeile entfernt 2026-03-30 12:45:04 +02:00
Developer01
f5ca487158 Session.Logout 2026-03-27 13:50:30 +01:00
Developer01
73e69b3eef 2.8.7.1 2026-03-27 12:48:25 +01:00
Developer01
cb51396952 FORMEL_SQL release Candidate 2026-03-25 15:20:39 +01:00
Developer01
c464f24681 Vor SetControlValuesChange 2026-03-20 13:43:09 +01:00
Developer01
969e07eb17 Vor Controls2B_EnDisabled Change 2026-03-11 16:43:34 +01:00
Developer01
7629d54fe1 2.8.4 Beta IDB replace Hochkomma bei Delete, Währungskonvertierung 2026-03-11 12:08:46 +01:00
Developer01
41e46f9dbb Version 2.8.3 zu Test an MK und HE 2026-03-03 12:55:01 +01:00
Developer01
a192267d96 MS Anpassung Speicherung IDBData 2026-03-02 16:29:14 +01:00
Developer01
a0d3a487d8 Vor Ändeurng LoogUpControl 2026-02-27 11:46:09 +01:00
Developer01
54744a0531 Vor GridControl Length 2026-02-26 10:37:05 +01:00
Developer01
743ef3fe22 MS 2.8.2 Fehlerhandling und Column-Formel Test bei Henning 2026-02-25 13:16:12 +01:00
Developer01
25dcfb2061 VorKOG_Hotspots in LOD 2026-02-13 07:56:02 +01:00
Developer01
3e34b52c6f 2.8.1 2026-02-12 17:25:46 +01:00
Developer01
950aeba89e 2.8.1 2026-02-12 17:25:40 +01:00
Developer01
e086c5db14 Finalisierung Columnberechnungen - ab in den TEST 2026-02-12 10:19:28 +01:00
Developer01
4898d25388 Berechnung Spalten start 2026-02-10 17:40:15 +01:00
Developer01
c2b3c023b9 Merge in MAster 2026-02-10 13:05:24 +01:00
50 changed files with 8692 additions and 2537 deletions

62
app/README.md Normal file
View File

@@ -0,0 +1,62 @@
Here's the improved `README.md` file incorporating the new content while maintaining the existing structure and coherence:
# Project Title
## Overview
Provide a brief description of the project, its purpose, and its main features.
## Installation
Instructions on how to install and set up the project.
## Usage
How to use the project, including code examples and explanations.
## DataColumn.Expression (Formelsprachen-Übersicht)
Die dynamischen Grid-Formeln verwenden die ADO.NET **`DataColumn.Expression`**-Sprache. Spalten werden immer über den **Spaltennamen** referenziert (in eckigen Klammern).
### Grundoperatoren
| Typ | Ausdruck | Beispiel |
|---|---|---|
| Arithmetik | `+ - * /` | `[A] * [B]` |
| Vergleich | `= <> > >= < <=` | `[MENGE] > 0` |
| Logik | `AND OR NOT` | `[A] > 0 AND [B] < 10` |
| Klammern | `(...)` | `([A] + [B]) * 2` |
### String-Verkettung
| Ausdruck | Beispiel |
|---|---|
| `+` | `[VORNAME] + ' - ' + [NACHNAME]` |
| `Convert` | `Convert([NUMMER], 'System.String')` |
### Bedingungen
| Ausdruck | Beispiel |
|---|---|
| `IIF` | `IIF([A] = 'Harry', 'Blume', 'Tier')` |
### Häufige Funktionen
| Funktion | Beispiel |
|---|---|
| `Len` | `Len([TEXT])` |
| `Trim` | `Trim([TEXT])` |
| `Substring` | `Substring([TEXT], 0, 3)` |
| `IsNull` | `IsNull([WERT], 0)` |
| `Convert` | `Convert([WERT], 'System.Double')` |
### Beispiele (FORMULA_EXPRESSION)
- **Multiplikation:** `[MENGE] * [PREIS]`
- **Addieren:** `[A] + [B]`
- **Division:** `[A] / [B]`
- **Text zusammensetzen:** `[SAKNR] + ' - ' + [KST]`
- **Bedingung:** `IIF([STATUS] = 'X', 'OK', 'NOK')`
## Contributing
Guidelines for contributing to the project.
## License
Information about the project's license.
## Contact
How to contact the project maintainers for questions or support.

View File

@@ -99,23 +99,17 @@
</Component>--> </Component>-->
<Component Id="WindreamLibs" Guid="4D11FC99-50D9-4E54-B18A-8885C9112646"> <Component Id="WindreamLibs" Guid="4D11FC99-50D9-4E54-B18A-8885C9112646">
<File Id="WINDREAMLibDLL" Name="Interop.WINDREAMLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WINDREAMLib.dll" KeyPath="yes"/> <File Id="WINDREAMLibDLL" Name="Interop.WINDREAMLib.dll" Source="M:\Bibliotheken\3rdParty\windream\Interop.WINDREAMLib.dll" KeyPath="yes"/>
<File Id="WMOTOOLLib" Name="Interop.WMOTOOLLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOTOOLLib.dll"/> <File Id="WMOTOOLLib" Name="Interop.WMOTOOLLib.dll" Source="M:\Bibliotheken\3rdParty\windream\Interop.WMOTOOLLib.dll"/>
<File Id="WMOSRCHLib" Name="Interop.WMOSRCHLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOSRCHLib.dll"/> <File Id="WMOSRCHLib" Name="Interop.WMOSRCHLib.dll" Source="M:\Bibliotheken\3rdParty\windream\Interop.WMOSRCHLib.dll"/>
<File Id="WMOBRWSLib" Name="Interop.WMOBRWSLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOBRWSLib.dll"/> <File Id="WMOBRWSLib" Name="Interop.WMOBRWSLib.dll" Source="M:\Bibliotheken\3rdParty\windream\Interop.WMOBRWSLib.dll"/>
</Component> </Component>
<Component Id="FormsUtilsLibs" Guid="51c183a7-af21-481a-bd34-0e547e6f6e1c"> <Component Id="FormsUtilsLibs" Guid="51c183a7-af21-481a-bd34-0e547e6f6e1c">
<File Id="FormsUtilsLib" Name="FormsUtils.dll" Source="P:\Visual Studio Projekte\Bibliotheken\FormsUtils.dll" KeyPath="yes" /> <File Id="FormsUtilsLib" Name="FormsUtils.dll" Source="M:\Bibliotheken\3rdParty\FormsUtils.dll" KeyPath="yes" />
</Component>
<Component Id="IndependentsoftLibs" Guid="C3B3BB48-DB41-4419-A4B8-0E4DC5E8856B">
<File Id="MSGLib" Name="Independentsoft.Msg.dll" Source="P:\Visual Studio Projekte\Bibliotheken\MSG .NET\Bin\22_11_19\Independentsoft.Msg.dll" KeyPath="yes"/>
</Component> </Component>
<Component Id="DDLibs" Guid="BA2979E3-3778-48B8-B0D8-4B77825B9293"> <Component Id="DDLibs" Guid="BA2979E3-3778-48B8-B0D8-4B77825B9293">
<File Id="DLLLicenseManager" Name="DLLLicenseManager.dll" Source="P:\Visual Studio Projekte\Bibliotheken\DLLLicenseManager.dll" KeyPath="yes"/>
<File Id="DDLibStandards" Name="DD_LIB_Standards.dll" Source="P:\Visual Studio Projekte\Bibliotheken\DD_LIB_Standards.dll"/>
<File Id="LookupGrid" Name="DigitalData.Controls.LookupGrid.dll" Source="DigitalData.Controls.LookupGrid.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="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="DDCommonGUIs" Name="DigitalData.GUIs.Common.dll" Source="DigitalData.GUIs.Common.dll"/>
@@ -137,40 +131,60 @@
<File Id="Limilabs.Mail" Name="Mail.dll" Source="Mail.dll" 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="NLog" Name="NLog.dll" Source="NLog.dll"/>
</Component> </Component>
<Component Id="RuntimeLibs" Guid="F7170744-3DB5-4275-ACCD-7F3B9BDE1D6E">
<Component Id="Oracle" Guid="CF76DB5D-3263-450F-96C6-F02F5447A0A1"> <File Id="Newtonsoft.Json" Name="Newtonsoft.Json.dll" Source="Newtonsoft.Json.dll" KeyPath="yes" />
<File Id="Oracle.ManagedDataAccess" Name="Oracle.ManagedDataAccess.dll" Source="P:\Visual Studio Projekte\Bibliotheken\Oracle.ManagedDataAccess.dll" KeyPath="yes"/> <File Id="System.Text.Json" Name="System.Text.Json.dll" Source="System.Text.Json.dll" />
</Component> <File Id="FirebirdSql.Data.FirebirdClient" Name="FirebirdSql.Data.FirebirdClient.dll" Source="FirebirdSql.Data.FirebirdClient.dll" />
<File Id="EntityFramework" Name="EntityFramework.dll" Source="EntityFramework.dll" />
<Component Id="PDFsharp" Guid="9cd1cfb7-3f84-4a8b-aa51-642b723fcd70"> <File Id="EntityFramework.SqlServer" Name="EntityFramework.SqlServer.dll" Source="EntityFramework.SqlServer.dll" />
<File Id="PdfSharpgdi" Name="PdfSharp-gdi.dll" Source="P:\Visual Studio Projekte\Bibliotheken\PdfSharp-gdi.dll" KeyPath="yes"/> <File Id="EntityFramework.Firebird" Name="EntityFramework.Firebird.dll" Source="EntityFramework.Firebird.dll" />
</Component> </Component>
<Component Id="GDPictureLibs" Guid="9ea5ab43-58ff-4813-9a8b-f854784f0275"> <Component Id="GDPictureLibs" Guid="9ea5ab43-58ff-4813-9a8b-f854784f0275">
<File Id="GdPicture.NET.14" Name="GdPicture.NET.14.dll" KeyPath="yes" /> <File Id="GdPicture.NET.14" Name="GdPicture.NET.14.dll" KeyPath="yes" />
<File Id="GdPicture.NET.14.filters" Name="GdPicture.NET.14.filters.dll" /> <File Id="GdPicture.NET.14.CAD" Name="GdPicture.NET.14.CAD.dll" />
<File Id="GdPicture.NET.14.filters64" Name="GdPicture.NET.14.filters.64.dll" /> <File Id="GdPicture.NET.14.CAD.DWG" Name="GdPicture.NET.14.CAD.DWG.dll" />
<File Id="GdPicture.NET.14.image" Name="GdPicture.NET.14.image.gdimgplug.dll" /> <File Id="GdPicture.NET.14.filters" Name="GdPicture.NET.14.filters.dll" />
<File Id="GdPicture.NET.14.image64" Name="GdPicture.NET.14.image.gdimgplug.64.dll" /> <File Id="GdPicture.NET.14.filters64" Name="GdPicture.NET.14.filters.64.dll" />
<File Id="GdPicture.NET.14.Imaging.Rendering.Skia" Name="GdPicture.NET.14.Imaging.Rendering.Skia.dll" /> <File Id="GdPicture.NET.14.image" Name="GdPicture.NET.14.image.gdimgplug.dll" />
<File Id="GdPicture.NET.14.Rendering.Skia.64" Name="GdPicture.NET.14.Imaging.Rendering.Skia.64.dll" /> <File Id="GdPicture.NET.14.image64" Name="GdPicture.NET.14.image.gdimgplug.64.dll" />
<File Id="GdPicture.NET.14.Imaging" Name="GdPicture.NET.14.Imaging.dll" /> <File Id="GdPicture.NET.14.Imaging.Formats" Name="GdPicture.NET.14.Imaging.Formats.dll" />
<File Id="GdPicture.NET.14.Common" Name="GdPicture.NET.14.Common.dll" />
<File Id="GdPicture.NET.14.Imaging.Rendering" Name="GdPicture.NET.14.Imaging.Rendering.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.Document" Name="GdPicture.NET.14.Document.dll" />
<File Id="GdPicture.NET.14.PDF" Name="GdPicture.NET.14.PDF.dll" /> <File Id="GdPicture.NET.14.PDF" Name="GdPicture.NET.14.PDF.dll" />
<File Id="GdPicture.NET.14.Imaging.Formats" Name="GdPicture.NET.14.Imaging.Formats.dll" />
<File Id="GdPicture.NET.14.RTF" Name="GdPicture.NET.14.RTF.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.OpenDocument" Name="GdPicture.NET.14.OpenDocument.dll" />
<File Id="GdPicture.NET.14.OpenXML" Name="GdPicture.NET.14.OpenXML.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.Email" Name="GdPicture.NET.14.Email.dll" />
<File Id="GdPicture.NET.14.HTML" Name="GdPicture.NET.14.HTML.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="GdPicture.NET.14.MSOfficeBinary" Name="GdPicture.NET.14.MSOfficeBinary.dll"/>
<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="BouncyCastle.Cryptography" Name="BouncyCastle.Cryptography.dll"/> <File Id="BouncyCastle.Cryptography" Name="BouncyCastle.Cryptography.dll"/>
<File Id="System.ValueTuple" Name="System.ValueTuple.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.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>
<Component Id="DevExpressLibs" Guid="CB40DAAE-348E-4BD3-B275-9A526EB8F191"> <Component Id="DevExpressLibs" Guid="CB40DAAE-348E-4BD3-B275-9A526EB8F191">
@@ -286,9 +300,7 @@
<ComponentRef Id="WindreamLibs" /> <ComponentRef Id="WindreamLibs" />
<ComponentRef Id="FormsUtilsLibs"/> <ComponentRef Id="FormsUtilsLibs"/>
<ComponentRef Id="DDLibs" /> <ComponentRef Id="DDLibs" />
<ComponentRef Id="Oracle" /> <ComponentRef Id="RuntimeLibs" />
<ComponentRef Id="PDFsharp" />
<ComponentRef Id="IndependentsoftLibs" />
<ComponentRef Id="DevExpressLibs" /> <ComponentRef Id="DevExpressLibs" />
<ComponentRef Id="GDPictureLibs" /> <ComponentRef Id="GDPictureLibs" />
<ComponentRef Id="Devexpress.Locales.de" /> <ComponentRef Id="Devexpress.Locales.de" />

View File

@@ -7,8 +7,6 @@ Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SetupVS19", "SetupVS19\Setu
EndProject EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "taskFLOW", "TaskFlow\taskFLOW.vbproj", "{6ACA1432-09A2-47EF-A704-C0AA73905756}" Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "taskFLOW", "TaskFlow\taskFLOW.vbproj", "{6ACA1432-09A2-47EF-A704-C0AA73905756}"
EndProject EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DocumentViewer", "..\..\..\2_DLL Projekte\Controls.DocumentViewer\DocumentViewer.vbproj", "{0958CDDF-4A16-41F6-8837-8335F71D599C}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
CD_ROM|Any CPU = CD_ROM|Any CPU CD_ROM|Any CPU = CD_ROM|Any CPU
@@ -63,26 +61,6 @@ Global
{6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|Any CPU.Build.0 = Release|x86 {6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|Any CPU.Build.0 = Release|x86
{6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|x86.ActiveCfg = Debug|x86 {6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|x86.ActiveCfg = Debug|x86
{6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|x86.Build.0 = Debug|x86 {6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|x86.Build.0 = Debug|x86
{0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|Any CPU.ActiveCfg = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|Any CPU.Build.0 = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|x86.ActiveCfg = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|x86.Build.0 = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|x86.ActiveCfg = Debug|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|x86.Build.0 = Debug|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|Any CPU.ActiveCfg = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|Any CPU.Build.0 = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|x86.ActiveCfg = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|x86.Build.0 = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|Any CPU.Build.0 = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|x86.ActiveCfg = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|x86.Build.0 = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|Any CPU.ActiveCfg = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|Any CPU.Build.0 = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|x86.ActiveCfg = Release|Any CPU
{0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|x86.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE

View File

@@ -11,6 +11,7 @@
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="taskFLOW.My.MySettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" /> <section name="taskFLOW.My.MySettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup> </sectionGroup>
<section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342" />
</configSections> </configSections>
<applicationSettings> <applicationSettings>
<taskFLOW.My.MySettings> <taskFLOW.My.MySettings>
@@ -102,8 +103,7 @@
</DevExpress.LookAndFeel.Design.AppSettings> </DevExpress.LookAndFeel.Design.AppSettings>
</applicationSettings> </applicationSettings>
<connectionStrings> <connectionStrings>
<add name="taskFLOW.My.MySettings.ConnectionString" connectionString="Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd;Encrypt=False" <add name="taskFLOW.My.MySettings.ConnectionString" connectionString="Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd;Encrypt=False" providerName="System.Data.SqlClient" />
providerName="System.Data.SqlClient" />
</connectionStrings> </connectionStrings>
<startup> <startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" /> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" />
@@ -194,6 +194,10 @@
<assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" /> <assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" /> <bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly> </dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Formats.Asn1" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
</assemblyBinding> </assemblyBinding>
</runtime> </runtime>
<entityFramework> <entityFramework>
@@ -246,4 +250,10 @@
</setting> </setting>
</taskFLOW.My.MySettings> </taskFLOW.My.MySettings>
</userSettings> </userSettings>
<system.data>
<DbProviderFactories>
<remove invariant="Oracle.ManagedDataAccess.Client" />
<add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342" />
</DbProviderFactories>
</system.data>
</configuration> </configuration>

View File

@@ -3,6 +3,7 @@ Imports System.Data.OracleClient
Imports System.IO Imports System.IO
Imports WINDREAMLib Imports WINDREAMLib
Imports DevExpress.Utils.CommonDialogs Imports DevExpress.Utils.CommonDialogs
Imports System.Runtime.InteropServices
Public Class ClassAllgemeineFunktionen Public Class ClassAllgemeineFunktionen
Public Shared Function GUI_LANGUAGE_INFO(pTITLE As String) Public Shared Function GUI_LANGUAGE_INFO(pTITLE As String)

View File

@@ -1,38 +0,0 @@
Imports PdfSharp.Pdf
Imports PdfSharp.Pdf.Annotations
Imports PdfSharp.Pdf.IO
Imports PdfSharp.Drawing
Public Class ClassAnnotation
Public Shared Function Annotate_PDF(title As String, content As String, page As Integer, fromGui As Boolean, Optional ycorrect As Integer = 0, Optional sizecorrect As Integer = 0)
If CURRENT_DOC_PATH.Length > 0 Then
Try
Dim doc As PdfDocument = PdfReader.Open(CURRENT_DOC_PATH, PdfDocumentOpenMode.Modify)
Dim firstPage As PdfPage = doc.Pages(page)
Dim gfx As XGraphics = XGraphics.FromPdfPage(firstPage)
Dim rect As XRect = gfx.Transformer.WorldToDefaultPage(New XRect(New XPoint(30, 60 + ycorrect), New XSize(60 + sizecorrect, 40 + sizecorrect)))
Dim annot As PdfTextAnnotation = New PdfTextAnnotation
annot.Title = title
'annot.Subject = txtsubject.Text
annot.Contents = content
annot.Rectangle = New PdfRectangle(rect)
firstPage.Annotations.Add(annot)
doc.Save(CURRENT_DOC_PATH)
Return True
Catch ex As Exception
If fromGui = True Then
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in Annotate pdf:")
End If
LOGGER.Error(ex)
LOGGER.Info("Unexpected error in Annotate pdf: " & ex.Message, False)
Return False
End Try
End If
End Function
End Class

View File

@@ -68,6 +68,18 @@ Public Class ClassControlCreator
''' </summary> ''' </summary>
Public Property GridTables As New Dictionary(Of Integer, Dictionary(Of String, RepositoryItem)) Public Property GridTables As New Dictionary(Of Integer, Dictionary(Of String, RepositoryItem))
Public Property GridColumns As New Dictionary(Of Integer, DataTable) Public Property GridColumns As New Dictionary(Of Integer, DataTable)
Private _globalLookupEventGuard As Boolean = False
Public Property GlobalLookupEventGuard As Boolean
Get
Return _globalLookupEventGuard
End Get
Set(value As Boolean)
_globalLookupEventGuard = value
Logger.Debug($"GlobalLookupEventGuard -> gesetzt auf [{value}]")
End Set
End Property
''' <summary> ''' <summary>
''' Standard Eigenschaften für alle Controls ''' Standard Eigenschaften für alle Controls
@@ -533,12 +545,11 @@ Public Class ClassControlCreator
End Function End Function
Public Function CreateExistingGridControl(row As DataRow, DT_MY_COLUMNS As DataTable, designMode As Boolean, pcurrencySymbol As String) As GridControl 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) Dim oGridControlCreator = New ControlCreator.GridControl(LogConfig, GridTables, pcurrencySymbol)
Dim oControl As GridControl = CreateBaseControl(New GridControl(), row, designMode) Dim oControl As GridControl = CreateBaseControl(New GridControl(), row, designMode)
Dim oControlId = DirectCast(oControl.Tag, ControlMetadata).Guid Dim oControlId = DirectCast(oControl.Tag, ControlMetadata).Guid
Dim oView As GridView Dim oView As GridView
Dim oControlName = oControl.Name Dim oControlName = oControl.Name
oControl.ForceInitialize() oControl.ForceInitialize()
oView = oControl.MainView oView = oControl.MainView
@@ -635,9 +646,13 @@ Public Class ClassControlCreator
End Try End Try
End If End If
oGridControlCreator.ConfigureViewColumns(DT_MY_COLUMNS, oView, oControl, pcurrencySymbol) ' *** KORRIGIERT: ConfigureViewColumns OHNE currencySymbol-Parameter ***
oGridControlCreator.ConfigureViewColumns(DT_MY_COLUMNS, oView, oControl)
' *** NEU: ConfigureViewColumnsCurrency() für editierbare Währungsspalten ***
oGridControlCreator.ConfigureViewColumnsCurrency(DT_MY_COLUMNS, oView, oControl)
oGridControlCreator.ConfigureViewEvents(DT_MY_COLUMNS, oView, oControl, oControlId) oGridControlCreator.ConfigureViewEvents(DT_MY_COLUMNS, oView, oControl, oControlId)
' 08.11.2021: Fix editor being empty on first open
oView.FocusInvalidRow() oView.FocusInvalidRow()
Return oControl Return oControl
@@ -848,44 +863,239 @@ Public Class ClassControlCreator
End Function End Function
Public Sub GridTables_HandleControlValueChange(pControlPanel As XtraScrollableControl, pColumnsWithSqlAndControlPlaceholders As DataTable) Public Sub GridTables_HandleControlValueChange(pControlPanel As XtraScrollableControl, pColumnsWithSqlAndControlPlaceholders As DataTable)
If Not IsNothing(pColumnsWithSqlAndControlPlaceholders) AndAlso pColumnsWithSqlAndControlPlaceholders.Rows.Count > 0 Then If pColumnsWithSqlAndControlPlaceholders Is Nothing OrElse pColumnsWithSqlAndControlPlaceholders.Rows.Count = 0 Then
For Each oRow As DataRow In pColumnsWithSqlAndControlPlaceholders.Rows Logger.Debug("No depending controls with SQL statements defined, skipping handling control value change.")
Return
End If
' ============================================================================
' Schritt 1 - Sichere ALLE Lookup-Werte VOR SQL-Reload
' ============================================================================
Dim lookupBackups As New Dictionary(Of String, Object)
For Each oControl As Control In pControlPanel.Controls
If TypeOf oControl Is LookupControl3 Then
Try Try
Dim oSqlStatement = oRow.ItemEx("SQL_COMMAND", String.Empty) Dim lookup = DirectCast(oControl, LookupControl3)
Dim oConnectionId = oRow.ItemEx("CONNECTION_ID", -1) ' Speichere den aktuellen EditValue (kann einzelner Wert oder Liste sein)
Dim oControlId = oRow.Item("CONTROL_ID") If lookup.EditValue IsNot Nothing Then
Dim oColumnName = oRow.Item("SPALTENNAME") Dim controlName As String = lookup.Name
Dim oAdvancedLookup = oRow.Item("ADVANCED_LOOKUP") lookupBackups(controlName) = lookup.EditValue
Logger.Debug($"GridTables_HandleControlValueChange -> Backup für Lookup [{controlName}]: [{lookup.EditValue}]")
If oSqlStatement <> String.Empty And oConnectionId > -1 Then
oSqlStatement = clsPatterns.ReplaceAllValues(oSqlStatement, pControlPanel, True)
GridTables_CacheDatatableForColumn(oControlId, oColumnName, oSqlStatement, oConnectionId, oAdvancedLookup)
' === Block to force setting the editor for GridColumns
Logger.Debug("Force-setting Editor for all Gridcells..")
For Each oControl As Control In pControlPanel.Controls
Try
Dim oMeta = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata)
If oMeta.Guid = oControlId AndAlso TypeOf oControl Is GridControl Then
Dim oGrid As GridControl = DirectCast(oControl, GridControl)
DirectCast(oGrid.FocusedView, GridView).FocusInvalidRow()
Logger.Debug("Force-setting Editor for Grid [{0}]", oGrid.Name)
Exit For
End If
Catch ex As Exception
Logger.Error(ex)
End Try
Next
' === End
End If End If
Catch ex As Exception Catch ex As Exception
Logger.Error(ex) Logger.Error($"GridTables_HandleControlValueChange -> Fehler beim Backup von Lookup: {ex.Message}")
Logger.Info("Unexpected Error in Display SQL result for grid column: " & oRow.Item("CONTROL_ID") & " - ERROR: " & ex.Message)
End Try End Try
End If
Next
' ============================================================================
' Schritt 2 - Verarbeite Grid-Columns mit SQL-Abhängigkeiten
' ============================================================================
For Each oRow As DataRow In pColumnsWithSqlAndControlPlaceholders.Rows
Try
Dim oSqlStatement = oRow.ItemEx("SQL_COMMAND", String.Empty)
Dim oConnectionId = oRow.ItemEx("CONNECTION_ID", -1)
Dim oControlId = oRow.Item("CONTROL_ID")
Dim oColumnName = oRow.Item("SPALTENNAME")
Dim oAdvancedLookup = oRow.Item("ADVANCED_LOOKUP")
If oSqlStatement <> String.Empty AndAlso oConnectionId > -1 Then
oSqlStatement = clsPatterns.ReplaceAllValues(oSqlStatement, pControlPanel, True)
GridTables_CacheDatatableForColumn(oControlId, oColumnName, oSqlStatement, oConnectionId, oAdvancedLookup)
' Force-setting Editor for GridColumns
Logger.Debug("Force-setting Editor for all Gridcells..")
For Each oControl As Control In pControlPanel.Controls
Try
If oControl.Tag IsNot Nothing AndAlso TypeOf oControl.Tag Is ControlMetadata Then
Dim oMeta = DirectCast(oControl.Tag, ControlMetadata)
If oMeta.Guid = oControlId AndAlso TypeOf oControl Is GridControl Then
Dim oGrid As GridControl = DirectCast(oControl, GridControl)
If oGrid.FocusedView IsNot Nothing AndAlso TypeOf oGrid.FocusedView Is GridView Then
DirectCast(oGrid.FocusedView, GridView).FocusInvalidRow()
Logger.Debug($"Force-setting Editor for Grid [{oGrid.Name}]")
End If
Exit For
End If
End If
Catch ex As Exception
Logger.Error($"GridTables_HandleControlValueChange -> Fehler beim Force-setting Editor: {ex.Message}")
End Try
Next
End If
Catch ex As Exception
Logger.Error(ex)
Logger.Info($"Unexpected Error in Display SQL result for grid column: {oRow.Item("CONTROL_ID")} - ERROR: {ex.Message}")
End Try
Next
' ============================================================================
' Schritt 3 - Prüfe und restauriere Lookup-Werte mit SQL-Abhängigkeiten
' ============================================================================
If lookupBackups.Count > 0 Then
Logger.Debug($"GridTables_HandleControlValueChange -> Prüfe {lookupBackups.Count} Lookups auf Wiederherstellung...")
For Each oControl As Control In pControlPanel.Controls
If TypeOf oControl Is LookupControl3 Then
Try
Dim lookup = DirectCast(oControl, LookupControl3)
Dim controlName As String = lookup.Name
' Wenn wir einen Backup für dieses Lookup haben
If lookupBackups.ContainsKey(controlName) Then
Dim oldValue = lookupBackups(controlName)
' Prüfe ob Lookup ein DataSource hat (könnte durch SQL neu geladen worden sein)
If lookup.Properties.DataSource IsNot Nothing AndAlso TypeOf lookup.Properties.DataSource Is DataTable Then
Dim currentDataSource = DirectCast(lookup.Properties.DataSource, DataTable)
' Wenn DataSource Rows hat, versuche Werte wiederherzustellen
If currentDataSource.Rows.Count > 0 Then
RestoreLookupValues(lookup, oldValue, currentDataSource, controlName)
End If
End If
End If
Catch ex As Exception
Logger.Error($"GridTables_HandleControlValueChange -> Fehler beim Prüfen von Lookup: {ex.Message}")
Logger.Error(ex)
End Try
End If
Next Next
End If End If
End Sub End Sub
Private Sub RestoreLookupValues(lookup As LookupControl3, oldValue As Object,
newDataSource As DataTable, controlName As String)
If lookup Is Nothing OrElse oldValue Is Nothing OrElse newDataSource Is Nothing Then
Logger.Warn($"RestoreLookupValues -> [{controlName}] Ungültige Parameter")
Return
End If
Try
' Bestimme ValueColumn
Dim valueColumn As String = String.Empty
If String.IsNullOrEmpty(lookup.Properties.ValueMember) AndAlso newDataSource.Columns.Count > 0 Then
valueColumn = newDataSource.Columns(0).ColumnName
ElseIf Not String.IsNullOrEmpty(lookup.Properties.ValueMember) Then
valueColumn = lookup.Properties.ValueMember
Else
Logger.Warn($"RestoreLookupValues -> [{controlName}] Keine ValueColumn verfügbar")
Return
End If
' Build HashSet für effiziente Suche
Dim availableValues As New HashSet(Of String)(StringComparer.OrdinalIgnoreCase)
For Each row As DataRow In newDataSource.Rows
If Not IsDBNull(row(valueColumn)) Then
availableValues.Add(row(valueColumn).ToString())
End If
Next
' Prüfe ob der alte Wert noch in der neuen DataSource existiert
Dim validValue As Object = Nothing
' Behandle verschiedene Datentypen (String, List, Array, etc.)
If TypeOf oldValue Is String Then
Dim valueStr As String = oldValue.ToString()
If availableValues.Contains(valueStr) Then
validValue = oldValue
Logger.Debug($"RestoreLookupValues -> [{controlName}] Wert [{valueStr}] ✓ gefunden")
Else
Logger.Warn($"RestoreLookupValues -> [{controlName}] Wert [{valueStr}] ✗ nicht mehr vorhanden")
End If
ElseIf TypeOf oldValue Is IEnumerable Then
' Behandle Listen/Arrays
Dim validValues As New List(Of Object)
For Each item As Object In DirectCast(oldValue, IEnumerable)
If item IsNot Nothing Then
Dim itemStr As String = item.ToString()
If availableValues.Contains(itemStr) Then
validValues.Add(item)
Logger.Debug($"RestoreLookupValues -> [{controlName}] Wert [{itemStr}] ✓ gefunden")
Else
Logger.Warn($"RestoreLookupValues -> [{controlName}] Wert [{itemStr}] ✗ nicht mehr vorhanden")
End If
End If
Next
If validValues.Count > 0 Then
validValue = validValues
End If
Else
' Fallback für andere Typen
Dim valueStr As String = oldValue.ToString()
If availableValues.Contains(valueStr) Then
validValue = oldValue
Logger.Debug($"RestoreLookupValues -> [{controlName}] Wert [{valueStr}] ✓ gefunden")
Else
Logger.Warn($"RestoreLookupValues -> [{controlName}] Wert [{valueStr}] ✗ nicht mehr vorhanden")
End If
End If
' Gültige Werte wiederherstellen
If validValue IsNot Nothing Then
' Event-Guard temporär aktivieren um Endlosschleifen zu vermeiden
Dim oldGuard As Boolean = GlobalLookupEventGuard
GlobalLookupEventGuard = True
Try
' Prüfe ob bereits korrekt gesetzt
Dim currentValue = lookup.EditValue
If currentValue IsNot Nothing AndAlso currentValue.Equals(validValue) Then
Logger.Debug($"RestoreLookupValues -> [{controlName}] Wert bereits korrekt gesetzt")
Return
End If
' Setze den Wert neu
lookup.EditValue = Nothing
Application.DoEvents()
lookup.EditValue = validValue
lookup.Refresh()
Application.DoEvents()
' Validierung
Dim newValue = lookup.EditValue
If newValue IsNot Nothing AndAlso newValue.Equals(validValue) Then
Logger.Debug($"RestoreLookupValues -> [{controlName}] ✓ erfolgreich wiederhergestellt: [{validValue}]")
Else
Logger.Error($"RestoreLookupValues -> [{controlName}] ✗ Fehler beim Wiederherstellen! Erwartet: [{validValue}], Ist: [{If(newValue, "NULL")}]")
' Retry mit BeginUpdate/EndUpdate
Logger.Debug($"RestoreLookupValues -> [{controlName}] Versuche alternative Methode mit BeginUpdate...")
lookup.Properties.BeginUpdate()
Try
lookup.EditValue = Nothing
Application.DoEvents()
lookup.EditValue = validValue
Finally
lookup.Properties.EndUpdate()
End Try
lookup.Refresh()
Application.DoEvents()
Dim retryValue = lookup.EditValue
If retryValue IsNot Nothing AndAlso retryValue.Equals(validValue) Then
Logger.Debug($"RestoreLookupValues -> [{controlName}] ✓ Alternative Methode erfolgreich")
Else
Logger.Error($"RestoreLookupValues -> [{controlName}] ✗ Auch alternative Methode fehlgeschlagen!")
End If
End If
Finally
' Event-Guard wiederherstellen
GlobalLookupEventGuard = oldGuard
End Try
Else
Logger.Info($"RestoreLookupValues -> [{controlName}] Keine gültigen Werte zum Wiederherstellen")
End If
Catch ex As Exception
Logger.Error($"RestoreLookupValues -> Fehler bei [{controlName}]: {ex.Message}")
Logger.Error(ex)
End Try
End Sub
End Class End Class

View File

@@ -28,6 +28,99 @@ Public Class ClassFormat
End Select End Select
End Function End Function
''' <summary>
''' Normalisiert einen numerischen String für die invariante Kultur-Konvertierung.
''' Entfernt Tausendertrennzeichen und ersetzt Dezimaltrennzeichen durch Punkt.
''' </summary>
Private Shared Function NormalizeNumericString(pValue As String) As String
If String.IsNullOrWhiteSpace(pValue) Then
Return pValue
End If
Dim normalized As String = pValue.Trim()
LOGGER.Debug($"[NormalizeNumericString] Input: [{pValue}]")
' Entferne Währungssymbole und Leerzeichen
normalized = System.Text.RegularExpressions.Regex.Replace(normalized, "[€$£¥\s]", "")
Dim hasDot As Boolean = normalized.Contains(".")
Dim hasComma As Boolean = normalized.Contains(",")
LOGGER.Debug($"[NormalizeNumericString] After cleanup: [{normalized}], HasDot={hasDot}, HasComma={hasComma}")
If hasDot AndAlso hasComma Then
' Beide vorhanden: Das letzte ist der Dezimaltrenner
Dim lastDotPos As Integer = normalized.LastIndexOf(".")
Dim lastCommaPos As Integer = normalized.LastIndexOf(",")
LOGGER.Debug($"[NormalizeNumericString] Both separators found: LastDotPos={lastDotPos}, LastCommaPos={lastCommaPos}")
If lastDotPos > lastCommaPos Then
normalized = normalized.Replace(",", "")
Else
normalized = normalized.Replace(".", "").Replace(",", ".")
End If
ElseIf hasComma Then
Dim commaCount As Integer = normalized.Count(Function(c) c = ","c)
LOGGER.Debug($"[NormalizeNumericString] Only comma found: CommaCount={commaCount}")
If commaCount = 1 Then
Dim lastCommaPos As Integer = normalized.LastIndexOf(",")
Dim digitsAfterComma As Integer = normalized.Length - lastCommaPos - 1
LOGGER.Debug($"[NormalizeNumericString] Single comma: DigitsAfterComma={digitsAfterComma}")
If digitsAfterComma <= 3 Then
normalized = normalized.Replace(",", ".")
Else
normalized = normalized.Replace(",", "")
End If
Else
normalized = normalized.Replace(",", "")
End If
ElseIf hasDot Then
Dim dotCount As Integer = normalized.Count(Function(c) c = "."c)
LOGGER.Debug($"[NormalizeNumericString] Only dot found: DotCount={dotCount}")
If dotCount = 1 Then
Dim lastDotPos As Integer = normalized.LastIndexOf(".")
Dim digitsAfterDot As Integer = normalized.Length - lastDotPos - 1
LOGGER.Debug($"[NormalizeNumericString] Single dot: DigitsAfterDot={digitsAfterDot}")
' ✅ KRITISCHE ÄNDERUNG: Prüfe auch Stellen VOR dem Punkt
Dim digitsBeforeDot As Integer = lastDotPos
' Heuristik: Wenn <= 3 Stellen nach Punkt UND >= 1 Stelle davor → Dezimaltrenner
' Wenn > 3 Stellen davor UND <= 3 Stellen nach Punkt → unklar, vermutlich Dezimal
' Wenn > 3 Stellen nach Punkt → definitiv KEIN Dezimaltrenner
If digitsAfterDot > 3 Then
LOGGER.Warn($"⚠️ [NormalizeNumericString] Dot with {digitsAfterDot} digits after → treating as THOUSAND separator!")
normalized = normalized.Replace(".", "")
ElseIf digitsAfterDot >= 1 AndAlso digitsAfterDot <= 3 Then
' Wahrscheinlich Dezimaltrenner (z.B. 5464.17 oder 120.5)
LOGGER.Debug($"[NormalizeNumericString] Dot treated as decimal separator ({digitsBeforeDot} digits before, {digitsAfterDot} after)")
Else
' digitsAfterDot = 0 → Punkt am Ende, vermutlich Fehler
LOGGER.Warn($"⚠️ [NormalizeNumericString] Dot at end of string → removing")
normalized = normalized.Replace(".", "")
End If
Else
' Mehrere Punkte → Tausendertrenner
LOGGER.Debug($"[NormalizeNumericString] Multiple dots → removing all")
normalized = normalized.Replace(".", "")
End If
Else
LOGGER.Debug($"[NormalizeNumericString] No separators found → integer or already normalized")
End If
LOGGER.Debug($"[NormalizeNumericString] Output: [{normalized}]")
Return normalized
End Function
''' <summary> ''' <summary>
''' Converts a string according to the type information, using the invariant culture ''' Converts a string according to the type information, using the invariant culture
@@ -41,25 +134,40 @@ Public Class ClassFormat
Select Case pType Select Case pType
Case ClassControlCreator.CONTROL_TYPE_DOUBLE Case ClassControlCreator.CONTROL_TYPE_DOUBLE
If Double.TryParse(pValue, NumberStyles.Float, CultureInfo.InvariantCulture, oConvertedValue) Then
Return oConvertedValue
End If
Case ClassControlCreator.CONTROL_TYPE_CURRENCY
Try Try
LOGGER.Debug($"GetConvertedValue: Converting {pValue.ToString} to Currency ") ' ✅ IMMER normalisieren auch für DB-Werte!
If Double.TryParse(pValue, NumberStyles.Currency, CultureInfo.InvariantCulture, oConvertedValue) Then Dim normalizedValue As String = NormalizeNumericString(pValue?.ToString())
If Double.TryParse(normalizedValue, NumberStyles.Float, CultureInfo.InvariantCulture, oConvertedValue) Then
Return oConvertedValue Return oConvertedValue
End If End If
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
End Try End Try
Case ClassControlCreator.CONTROL_TYPE_CURRENCY
Try
' ✅ KRITISCH: Normalisierung VOR Konvertierung
Dim normalizedValue As String = NormalizeNumericString(pValue?.ToString())
LOGGER.Debug($"GetConvertedValue CURRENCY: Original=[{pValue}], Normalized=[{normalizedValue}]")
If Double.TryParse(normalizedValue, NumberStyles.Float, CultureInfo.InvariantCulture, oConvertedValue) Then
Return oConvertedValue
End If
Catch ex As Exception
LOGGER.Error($"Currency conversion failed for [{pValue}]: {ex.Message}")
LOGGER.Error(ex)
End Try
Case ClassControlCreator.CONTROL_TYPE_INTEGER Case ClassControlCreator.CONTROL_TYPE_INTEGER
If Integer.TryParse(pValue, NumberStyles.Integer, CultureInfo.InvariantCulture, oConvertedValue) Then Try
Return oConvertedValue Dim normalizedValue As String = NormalizeNumericString(pValue?.ToString())
End If If Integer.TryParse(normalizedValue, NumberStyles.Integer, CultureInfo.InvariantCulture, oConvertedValue) Then
Return oConvertedValue
End If
Catch ex As Exception
LOGGER.Error(ex)
End Try
Case Else Case Else
LOGGER.Debug($"GetConvertedValue - Case ELSE - pType is {pType}") LOGGER.Debug($"GetConvertedValue - Case ELSE - pType is {pType}")
Try Try
@@ -68,7 +176,6 @@ Public Class ClassFormat
LOGGER.Warn($"Error in GetConvertedValue: pType is {pType} - converting value to String") LOGGER.Warn($"Error in GetConvertedValue: pType is {pType} - converting value to String")
oConvertedValue = "" oConvertedValue = ""
End Try End Try
End Select End Select
Return oConvertedValue Return oConvertedValue
@@ -76,26 +183,32 @@ Public Class ClassFormat
''' <summary> ''' <summary>
''' Converts values to their respective data type and then back to string ''' Converts values to their respective data type and then back to string
''' according to the current culture ''' using INVARIANT culture for consistency across systems.
''' </summary> ''' </summary>
''' <param name="pValue"></param> ''' <param name="pValue"></param>
''' <returns></returns> ''' <returns></returns>
Public Shared Function GetStringValue(pValue As Object) As String Public Shared Function GetStringValue(pValue As Object) As String
' ✅ FIX: Immer InvariantCulture verwenden für DB-Speicherung
Select Case pValue.GetType Select Case pValue.GetType
Case GetType(Single) Case GetType(Single)
Return DirectCast(pValue, Single).ToString(CultureInfo.CurrentCulture) ' ✅ NEU: InvariantCulture statt CurrentCulture
Return DirectCast(pValue, Single).ToString(CultureInfo.InvariantCulture)
Case GetType(Double) Case GetType(Double)
Return DirectCast(pValue, Double).ToString(CultureInfo.CurrentCulture) ' ✅ NEU: InvariantCulture statt CurrentCulture
Return DirectCast(pValue, Double).ToString(CultureInfo.InvariantCulture)
Case GetType(Decimal) Case GetType(Decimal)
Return DirectCast(pValue, Decimal).ToString(CultureInfo.CurrentCulture) ' ✅ NEU: InvariantCulture statt CurrentCulture
Return DirectCast(pValue, Decimal).ToString(CultureInfo.InvariantCulture)
Case GetType(Date) Case GetType(Date)
Return DirectCast(pValue, Date).ToString(CultureInfo.CurrentCulture) ' Datum: ISO 8601 Format für Culture-Unabhängigkeit
Return DirectCast(pValue, Date).ToString("yyyy-MM-dd", CultureInfo.InvariantCulture)
Case GetType(DateTime) Case GetType(DateTime)
Return DirectCast(pValue, DateTime).ToString(CultureInfo.CurrentCulture) ' DateTime: ISO 8601 Format
Return DirectCast(pValue, DateTime).ToString("yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture)
Case Else Case Else
Return pValue.ToString Return pValue.ToString

View File

@@ -1,5 +1,75 @@
Public Class ClassIDBData Public Class ClassIDBData
Public DTVWIDB_BE_ATTRIBUTE As DataTable Public DTVWIDB_BE_ATTRIBUTE As DataTable
Public IDBSystemIndices As List(Of String)
''' <summary>
''' Wenn True, werden SQL-Statements nicht sofort ausgeführt,
''' sondern in <see cref="_sqlBatch"/> gesammelt.
''' </summary>
Public Property BatchMode As Boolean = False
Private _sqlBatch As New List(Of String)
''' <summary>
''' Startet den Batch-Sammelmodus.
''' </summary>
Public Sub BeginBatch()
_sqlBatch.Clear()
BatchMode = True
End Sub
''' <summary>
''' Führt alle gesammelten SQL-Statements als einen einzigen String
''' an ExecuteNonQueryIDB weiter. Jeder Block wird in BEGIN...END
''' gekapselt, damit DECLARE-Variablen nicht kollidieren.
''' </summary>
''' <returns>True wenn erfolgreich</returns>
Public Function CommitBatch() As Boolean
BatchMode = False
If _sqlBatch.Count = 0 Then Return True
Try
Dim oStatements = _sqlBatch.
Where(Function(s) Not String.IsNullOrWhiteSpace(s)).
ToList()
' @NEW_OBJ_MD_ID pro Statement eindeutig umbenennen → kein Namenskonflikt im Batch
Dim oNumberedStatements As New List(Of String)
Dim oIndex As Integer = 0
For Each oStatement As String In oStatements
Dim oNumbered = oStatement.Replace("@NEW_OBJ_MD_ID", $"@NEW_OBJ_MD_ID_{oIndex}")
oNumberedStatements.Add(oNumbered)
oIndex += 1
Next
Dim oBatchSQL = String.Join(vbNewLine, oNumberedStatements)
LOGGER.Debug($"⚡ CommitBatch - Executing {oStatements.Count} statements as one batch:{vbNewLine}{oBatchSQL}")
Dim oResult = DatabaseFallback.ExecuteNonQueryIDB(oBatchSQL)
_sqlBatch.Clear()
Return oResult
Catch ex As Exception
LOGGER.Error(ex)
_sqlBatch.Clear()
Return False
End Try
End Function
''' <summary>
''' Verwirft alle gesammelten Statements ohne Ausführung.
''' </summary>
Public Sub RollbackBatch()
_sqlBatch.Clear()
BatchMode = False
End Sub
''' <summary>
''' Führt ein SQL-Statement aus sofort oder gesammelt je nach BatchMode.
''' </summary>
Private Function ExecuteOrQueue(oSQL As String) As Boolean
If BatchMode Then
_sqlBatch.Add(oSQL)
LOGGER.Debug($"BatchMode - Queued statement: {oSQL}")
Return True
Else
Return DatabaseFallback.ExecuteNonQueryIDB(oSQL)
End If
End Function
''' <summary> ''' <summary>
''' Gets all indices by BusinessEntity. ''' Gets all indices by BusinessEntity.
''' </summary> ''' </summary>
@@ -7,15 +77,16 @@
''' <returns>Array with all Indices</returns> ''' <returns>Array with all Indices</returns>
''' <remarks></remarks> ''' <remarks></remarks>
''' '''
Public Function Init() Public Function Init() As Boolean
Dim oSQL = $"SELECT DISTINCT ATTR_TITLE, TYP_ID, TYP_ID as [TYPE_ID] FROM VWIDB_BE_ATTRIBUTE WHERE SYS_ATTRIBUTE = 0 ORDER BY ATTR_TITLE" Dim oSQL = $"SELECT DISTINCT ATTR_TITLE, TYP_ID, TYP_ID as [TYPE_ID] FROM VWIDB_BE_ATTRIBUTE WHERE SYS_ATTRIBUTE = 0 ORDER BY ATTR_TITLE"
DTVWIDB_BE_ATTRIBUTE = DatabaseFallback.GetDatatableIDB(oSQL) DTVWIDB_BE_ATTRIBUTE = DatabaseFallback.GetDatatableIDB(oSQL)
If IsNothing(DTVWIDB_BE_ATTRIBUTE) Then If IsNothing(DTVWIDB_BE_ATTRIBUTE) Then
oSQL = $"SELECT DISTINCT ATTR_TITLE, TYP_ID, TYP_ID as [TYPE_ID] FROM VWIDB_BE_ATTRIBUTE ORDER BY ATTR_TITLE " oSQL = $"SELECT DISTINCT ATTR_TITLE, TYP_ID, TYP_ID as [TYPE_ID] FROM VWIDB_BE_ATTRIBUTE ORDER BY ATTR_TITLE "
DTVWIDB_BE_ATTRIBUTE = DatabaseFallback.GetDatatableIDB(oSQL) DTVWIDB_BE_ATTRIBUTE = DatabaseFallback.GetDatatableIDB(oSQL)
End If End If
Return True
End Function End Function
Public IDBSystemIndices As List(Of String)
Public Function GetIndicesByBE(ByVal BusinessEntity As String) As String() Public Function GetIndicesByBE(ByVal BusinessEntity As String) As String()
Try Try
Dim aNames(4) As String Dim aNames(4) As String
@@ -84,52 +155,64 @@
End Function End Function
Public Function GetVariableValue(oAttributeName As String, Optional oIDBTyp As Integer = 0, Optional FromIDB As Boolean = False) As Object Public Function GetVariableValue(oAttributeName As String, Optional oIDBTyp As Integer = 0, Optional FromIDB As Boolean = False) As Object
Try Try
Dim oSingleAttribute As Boolean = True ' Bestimme, ob es sich um ein Single-Value-Attribut handelt (nicht Typ 8 oder 9)
Select Case oIDBTyp Dim oIsSingleAttribute As Boolean = (oIDBTyp <> 8 AndAlso oIDBTyp <> 9)
Case 8
oSingleAttribute = False LOGGER.Debug($"IDBData - GetVariableValue - Attribute: [{oAttributeName}] - IsSingleAttribute: [{oIsSingleAttribute}] - FromIDB: [{FromIDB}]")
Case 9
oSingleAttribute = False ' Schnellpfad: Direkt aus gecachter DataTable holen
End Select If oIsSingleAttribute AndAlso IDB_DT_DOC_DATA.Rows.Count = 1 AndAlso Not FromIDB Then
Dim oAttributeValue
LOGGER.Debug($"IDBData - GetVariableValue - oSingleAttribute [{oSingleAttribute.ToString}] - FromIDB [{FromIDB.ToString}]")
If oSingleAttribute = True And IDB_DT_DOC_DATA.Rows.Count = 1 And FromIDB = False Then
Try Try
If oAttributeName = "IDBCreatedWhen" Then Dim oMappedName As String = MapSystemAttributeName(oAttributeName)
oAttributeName = "ADDED_WHEN" Dim oValue As Object = IDB_DT_DOC_DATA.Rows(0).Item(oMappedName)
ElseIf oAttributeName = "IDBCreatedWho" Then LOGGER.Debug($"IDBData - GetVariableValue - Retrieved from cache: Attribute=[{oAttributeName}] MappedName=[{oMappedName}] Value=[{oValue}]")
oAttributeName = "ADDED_WHO" Return oValue
ElseIf oAttributeName = "IDBChangedWhen" Then
oAttributeName = "CHANGED_WHEN"
ElseIf oAttributeName = "IDBChangedWho" Then
oAttributeName = "CHANGED_WHO"
End If
LOGGER.Debug($"IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1")
oAttributeValue = IDB_DT_DOC_DATA.Rows(0).Item(oAttributeName)
Catch ex As Exception Catch ex As Exception
LOGGER.Debug($"Error getting Attribute from IDB_DT_DOC_DATA: {ex.Message}") LOGGER.Debug($"Error getting Attribute from IDB_DT_DOC_DATA: {ex.Message}")
' Fallthrough zum Datenbank-Fallback
End Try End Try
End If
End If ' Fallback: Wert aus Datenbank über Funktion holen
If Not IsNothing(oAttributeValue) Then LOGGER.Debug($"Retrieving value for attribute [{oAttributeName}] via FNIDB_PM_GET_VARIABLE_VALUE")
LOGGER.Debug($"IDBData - GetVariableValue - Returning value: [{oAttributeValue}]")
Return oAttributeValue Dim oSQL As String = $"SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({CURRENT_DOC_ID},'{oAttributeName}','{USER_LANGUAGE}',CONVERT(BIT,'{IDB_USES_WMFILESTORE}'))"
LOGGER.Debug($"SQL: {oSQL}")
Dim oResultTable As DataTable = DatabaseFallback.GetDatatableIDB(oSQL)
If oResultTable IsNot Nothing AndAlso oResultTable.Rows.Count = 1 Then
Dim oValue As Object = oResultTable.Rows(0).Item(0)
LOGGER.Debug($"IDBData - GetVariableValue - Retrieved from DB: [{oValue}]")
Return oValue
Else Else
LOGGER.Debug($"oAttributeValue for Attribute [{oAttributeName}] is so far nothing..Now trying FNIDB_PM_GET_VARIABLE_VALUE ") LOGGER.Info($"IDBData - GetVariableValue - No value found in DB for attribute [{oAttributeName}] - SQL [{oSQL}]")
End If End If
Dim oFNSQL = $"SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({CURRENT_DOC_ID},'{oAttributeName}','{USER_LANGUAGE}',CONVERT(BIT,'{IDB_USES_WMFILESTORE}'))"
LOGGER.Debug($"GetVariableValue: {oFNSQL}") Return oResultTable
oAttributeValue = DatabaseFallback.GetDatatableIDB(oFNSQL)
Dim odt As DataTable = oAttributeValue
If odt.Rows.Count = 1 Then
oAttributeValue = odt.Rows(0).Item(0)
End If
Return oAttributeValue
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
Return Nothing Return Nothing
End Try End Try
End Function
''' <summary>
''' Mappt System-Attributnamen auf interne Spaltennamen.
''' </summary>
Private Function MapSystemAttributeName(attributeName As String) As String
Select Case attributeName
Case "IDBCreatedWhen"
Return "ADDED_WHEN"
Case "IDBCreatedWho"
Return "ADDED_WHO"
Case "IDBChangedWhen"
Return "CHANGED_WHEN"
Case "IDBChangedWho"
Return "CHANGED_WHO"
Case Else
Return attributeName
End Select
End Function End Function
Public Function Delete_Term_Object_From_Metadata(oAttributeName As String, oTerm2Delete As String) As Object Public Function Delete_Term_Object_From_Metadata(oAttributeName As String, oTerm2Delete As String) As Object
Try Try
@@ -138,10 +221,11 @@
If IDB_USES_WMFILESTORE Then If IDB_USES_WMFILESTORE Then
oID_IS_FOREIGN = 1 oID_IS_FOREIGN = 1
End If End If
oTerm2Delete = oTerm2Delete.Replace("'", "''")
Dim oDELSQL = $"EXEC PRIDB_DELETE_TERM_OBJECT_METADATA {CURRENT_DOC_ID},'{oAttributeName}','{oTerm2Delete}','{USER_USERNAME}','{USER_LANGUAGE}',{oID_IS_FOREIGN}" Dim oDELSQL = $"EXEC PRIDB_DELETE_TERM_OBJECT_METADATA {CURRENT_DOC_ID},'{oAttributeName}','{oTerm2Delete}','{USER_USERNAME}','{USER_LANGUAGE}',{oID_IS_FOREIGN};"
DatabaseFallback.ExecuteNonQueryIDB(oDELSQL) LOGGER.Debug($"Delete_Term_Object_From_Metadata: {oDELSQL}")
'DatabaseFallback.ExecuteNonQueryIDB(oDELSQL)
Return ExecuteOrQueue(oDELSQL)
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
Return Nothing Return Nothing
@@ -150,9 +234,10 @@
End Function End Function
Public Function Delete_AttributeData(pIDB_OBJID As Int64, pAttributeName As String) As Object Public Function Delete_AttributeData(pIDB_OBJID As Int64, pAttributeName As String) As Object
Try Try
Dim oDELSQL = $"EXEC PRIDB_DELETE_ATTRIBUTE_DATA {pIDB_OBJID},'{pAttributeName}','{USER_USERNAME}'" Dim oDELSQL = $"EXEC PRIDB_DELETE_ATTRIBUTE_DATA {pIDB_OBJID},'{pAttributeName}','{USER_USERNAME}';"
DatabaseFallback.ExecuteNonQueryIDB(oDELSQL) LOGGER.Debug($"Delete_Attribute_Data: {oDELSQL}")
' DatabaseFallback.ExecuteNonQueryIDB(oDELSQL)
Return ExecuteOrQueue(oDELSQL)
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
Return Nothing Return Nothing
@@ -162,18 +247,23 @@
Public Function SetVariableValue(oAttributeName As String, oNewValue As Object, Optional CheckDeleted As Boolean = False, Optional oIDBTyp As Integer = 0) Public Function SetVariableValue(oAttributeName As String, oNewValue As Object, Optional CheckDeleted As Boolean = False, Optional oIDBTyp As Integer = 0)
Try Try
Dim omsg = $"IDBData - SetVariableValue - Attribute: [{oAttributeName}] - NewValue: [{oNewValue}] - CheckDeleted: [{CheckDeleted.ToString}] - oIDBTyp: [{oIDBTyp}]"
LOGGER.Debug(omsg)
Dim omytype = oNewValue.GetType.ToString Dim omytype = oNewValue.GetType.ToString
If omytype = "System.Data.DataTable" Then If omytype = "System.Data.DataTable" Then
Dim oDTMyNewValues As DataTable = oNewValue Dim oDTMyNewValues As DataTable = oNewValue
Dim oOldAttributeResult Dim oAttributeResultFromDB
Dim oTypeOldResult Dim oTypeOldResult
' Für DataTable (Mehrfachauswahl/Vektor) IMMER auf gelöschte Werte prüfen,
' unabhängig vom übergebenen CheckDeleted-Parameter.
Dim oEffectiveCheckDeleted As Boolean = True
If CheckDeleted = True Then If oEffectiveCheckDeleted = True Then
oOldAttributeResult = GetVariableValue(oAttributeName, oIDBTyp) oAttributeResultFromDB = GetVariableValue(oAttributeName, oIDBTyp)
oTypeOldResult = oOldAttributeResult.GetType.ToString oTypeOldResult = oAttributeResultFromDB.GetType.ToString
If oTypeOldResult = "System.Data.DataTable" Then If TypeOf oAttributeResultFromDB Is DataTable Then
Dim myOldValues As DataTable = oOldAttributeResult Dim myOldValues As DataTable = oAttributeResultFromDB
If myOldValues.Rows.Count > 1 Then If myOldValues.Rows.Count >= 1 Then
'now Checking whether the old row still remains in Vector? If not it will be deleted as it cannot be replaced in multivalues 'now Checking whether the old row still remains in Vector? If not it will be deleted as it cannot be replaced in multivalues
For Each oOldValueRow As DataRow In myOldValues.Rows For Each oOldValueRow As DataRow In myOldValues.Rows
@@ -199,27 +289,26 @@
'### Old Value is a single value ### '### Old Value is a single value ###
If oDTMyNewValues.Rows.Count > 1 Then If oDTMyNewValues.Rows.Count > 1 Then
'### there is more than one new value ### '### there is more than one new value ###
Dim oExists As Boolean Dim oExists As Boolean = False
For Each oNewValueRow As DataRow In oDTMyNewValues.Rows For Each oNewValueRow As DataRow In oDTMyNewValues.Rows
oExists = False LOGGER.Debug($"Checking oldValue[{oAttributeResultFromDB}] vs NewValue [{oNewValueRow.Item(1)}]")
Dim oInfo1 = $"Checking oldValue[{oOldAttributeResult}] vs NewValue [{oNewValueRow.Item(1)}]" If oNewValueRow.Item(1).ToString.ToUpper = oAttributeResultFromDB.ToString.ToUpper Then
If oNewValueRow.Item(1).ToString.ToUpper = oOldAttributeResult.ToString.ToUpper Then
oExists = True oExists = True
Exit For ' ← sobald gefunden, abbrechen
End If End If
Next Next
If oExists = False Then If oExists = False Then
Dim oInfo2 = $"Value [{oOldAttributeResult}] no longer existing in Vector-Attribute [{oAttributeName}] - will be deleted!" LOGGER.Debug($"Value [{oAttributeResultFromDB}] no longer existing in Attribute [{oAttributeName}] - will be deleted!")
LOGGER.Debug(oInfo2)
'SetVariableValue(CURRENT_PROFILE_LOG_INDEX, oInfo2) 'SetVariableValue(CURRENT_PROFILE_LOG_INDEX, oInfo2)
Delete_Term_Object_From_Metadata(oAttributeName, oOldAttributeResult) Delete_Term_Object_From_Metadata(oAttributeName, oAttributeResultFromDB)
End If End If
Else Else
'### there is only ONE new value ### '### there is only ONE new value ###
If oDTMyNewValues.Rows(0).Item(1) <> oOldAttributeResult Then If oDTMyNewValues.Rows(0).Item(1) <> oAttributeResultFromDB Then
Dim oInfo = $"Value [{oOldAttributeResult}] of Attribute [{oAttributeName}] obviously was updated during runtime - will be deleted!" Dim oInfo = $"Value [{oAttributeResultFromDB}] of Attribute [{oAttributeName}] obviously was updated during runtime - will be deleted!"
LOGGER.Debug(oInfo) LOGGER.Debug(oInfo)
SetVariableValue(CURRENT_PROFILE_LOG_INDEX, oInfo) SetVariableValue(CURRENT_PROFILE_LOG_INDEX, oInfo)
Delete_Term_Object_From_Metadata(oAttributeName, oOldAttributeResult) Delete_Term_Object_From_Metadata(oAttributeName, oAttributeResultFromDB)
Else Else
LOGGER.Debug($"Attributvalue of [{oAttributeName}] did not change!") LOGGER.Debug($"Attributvalue of [{oAttributeName}] did not change!")
End If End If
@@ -231,22 +320,25 @@
End If End If
For Each oNewValueRow As DataRow In oDTMyNewValues.Rows For Each oNewValueRow As DataRow In oDTMyNewValues.Rows
Dim oSuccess As Boolean = False 'Dim oSuccess As Boolean = False
Dim oVALUE = oNewValueRow.Item(1).ToString Dim oVALUE = oNewValueRow.Item(1).ToString
oVALUE = oVALUE.Replace("'", "''") oVALUE = oVALUE.Replace("'", "''")
Dim oPRSQL = $"DECLARE @NEW_OBJ_MD_ID BIGINT " & vbNewLine & $"EXEC PRIDB_NEW_OBJ_DATA {CURRENT_DOC_ID},'{oAttributeName}','{USER_USERNAME}','{oVALUE}','{USER_LANGUAGE}',0,@OMD_ID = @NEW_OBJ_MD_ID OUTPUT" Dim oPRSQL = $"DECLARE @NEW_OBJ_MD_ID BIGINT " & vbNewLine & $"EXEC PRIDB_NEW_OBJ_DATA {CURRENT_DOC_ID},'{oAttributeName}','{USER_USERNAME}','{oVALUE}','{USER_LANGUAGE}',0,@OMD_ID = @NEW_OBJ_MD_ID OUTPUT;"
LOGGER.Debug(oPRSQL) LOGGER.Debug(oPRSQL)
oSuccess = DatabaseFallback.ExecuteNonQueryIDB(oPRSQL) 'oSuccess = DatabaseFallback.ExecuteNonQueryIDB(oPRSQL)
If oSuccess = False Then If Not ExecuteOrQueue(oPRSQL) Then Return False
Return False 'If oSuccess = False Then
End If ' Return False
'End If
Next Next
Return True Return True
Else Else
'oNewValue = oNewValue.Replace("'", "' + NCHAR(39) + '") 'oNewValue = oNewValue.Replace("'", "' + NCHAR(39) + '")
Dim oFNSQL = $"DECLARE @NEW_OBJ_MD_ID BIGINT " & vbNewLine & $"EXEC PRIDB_NEW_OBJ_DATA {CURRENT_DOC_ID},'{oAttributeName}','{USER_USERNAME}','{oNewValue}','{USER_LANGUAGE}',0,@OMD_ID = @NEW_OBJ_MD_ID OUTPUT" oNewValue = oNewValue.Replace("'", "''")
LOGGER.Debug(oFNSQL) Dim oPRIDB_NEW_OBJ_DATA = $"DECLARE @NEW_OBJ_MD_ID BIGINT " & vbNewLine & $"EXEC PRIDB_NEW_OBJ_DATA {CURRENT_DOC_ID},'{oAttributeName}','{USER_USERNAME}','{oNewValue}','{USER_LANGUAGE}',0,@OMD_ID = @NEW_OBJ_MD_ID OUTPUT;"
Return DatabaseFallback.ExecuteNonQueryIDB(oFNSQL) LOGGER.Debug(oPRIDB_NEW_OBJ_DATA)
' Return DatabaseFallback.ExecuteNonQueryIDB(oPRIDB_NEW_OBJ_DATA)
Return ExecuteOrQueue(oPRIDB_NEW_OBJ_DATA)
End If End If
Catch ex As Exception Catch ex As Exception

View File

@@ -397,7 +397,7 @@ Public Class ClassInit
USER_DATE_FORMAT = DT_CHECKUSER_MODULE.Rows(0).Item("USER_DATE_FORMAT") USER_DATE_FORMAT = DT_CHECKUSER_MODULE.Rows(0).Item("USER_DATE_FORMAT")
ClassParamRefresh.Refresh_Params(DT_CHECKUSER_MODULE) ClassParamRefresh.Refresh_Params(DT_CHECKUSER_MODULE, "Load")
FINALINDICES = New ClassFinalIndex() FINALINDICES = New ClassFinalIndex()
@@ -468,7 +468,7 @@ Public Class ClassInit
' DataASorDB = New ClassDataASorDB ' DataASorDB = New ClassDataASorDB
'End If 'End If
Dim oStopWatch As New RefreshHelper.SW("InitBasics") Dim oStopWatch As New RefreshHelper.SW("InitBasics")
Dim oSql = String.Format("select * from TBPM_KONFIGURATION WHERE GUID = 1") Dim oSql = String.Format("select * from TBPM_KONFIGURATION WITH (NOLOCK) WHERE GUID = 1")
oStep = "TBPM_KONFIGURATION" oStep = "TBPM_KONFIGURATION"
BASEDATA_DT_CONFIG = DatabaseFallback.GetDatatable("TBPM_KONFIGURATION", New GetDatatableOptions(oSql, DatabaseType.ECM) With { BASEDATA_DT_CONFIG = DatabaseFallback.GetDatatable("TBPM_KONFIGURATION", New GetDatatableOptions(oSql, DatabaseType.ECM) With {
@@ -483,6 +483,14 @@ Public Class ClassInit
'BASEDATA_DT_TBDD_CONNECTION = DataASorDB.GetDatatable("DD_ECM", oSql, "TBDD_CONNECTION", "") 'BASEDATA_DT_TBDD_CONNECTION = DataASorDB.GetDatatable("DD_ECM", oSql, "TBDD_CONNECTION", "")
BASEDATA_DT_TBDD_CONNECTION = DatabaseFallback.GetDatatable("TBDD_CONNECTION", New GetDatatableOptions(oSql, DatabaseType.ECM)) BASEDATA_DT_TBDD_CONNECTION = DatabaseFallback.GetDatatable("TBDD_CONNECTION", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStep = "TBDD_CATALOG"
oSql = "select CAT_TITLE,CAT_STRING from TBDD_CATALOG"
BASEDATA_DT_TBDD_CATALOG = DatabaseFallback.GetDatatable("TBDD_CATALOG", New GetDatatableOptions(oSql, DatabaseType.ECM))
For Each oROW As DataRow In BASEDATA_DT_TBDD_CATALOG.Rows
Next
oStep = "TBDD_3RD_PARTY_MODULES" oStep = "TBDD_3RD_PARTY_MODULES"
oSql = "Select * FROM TBDD_3RD_PARTY_MODULES WHERE ACTIVE = 1" oSql = "Select * FROM TBDD_3RD_PARTY_MODULES WHERE ACTIVE = 1"
Dim oTBDD_3RD_PARTY_MODULES As DataTable Dim oTBDD_3RD_PARTY_MODULES As DataTable
@@ -498,23 +506,23 @@ Public Class ClassInit
LOGGER.Warn($"Keine GDPICTURE-Lizenz gefunden. Version Konfiguration: {My.Settings.GDPICTURE_VERSION} - Prüfe TBDD_3RD_PARTY_MODULES") LOGGER.Warn($"Keine GDPICTURE-Lizenz gefunden. Version Konfiguration: {My.Settings.GDPICTURE_VERSION} - Prüfe TBDD_3RD_PARTY_MODULES")
End If End If
oStep = "TBDD_SQL_COMMANDS" oStep = "TBDD_SQL_COMMANDS"
oSql = "Select * FROM TBDD_SQL_COMMANDS" oSql = "Select * FROM TBDD_SQL_COMMANDS WITH (NOLOCK)"
BASEDATA_DT_TBDD_SQL_COMMANDS = DatabaseFallback.GetDatatable("TBDD_SQL_COMMANDS", New GetDatatableOptions(oSql, DatabaseType.ECM)) BASEDATA_DT_TBDD_SQL_COMMANDS = DatabaseFallback.GetDatatable("TBDD_SQL_COMMANDS", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStep = "TBDD_GUI_LANGUAGE_PHRASE" oStep = "TBDD_GUI_LANGUAGE_PHRASE"
oSql = $"SELECT * FROM TBDD_GUI_LANGUAGE_PHRASE WHERE MODULE IN ('PM','All Modules')" oSql = $"SELECT * FROM TBDD_GUI_LANGUAGE_PHRASE WITH (NOLOCK) WHERE MODULE IN ('PM','All Modules')"
'BASEDATA_DT_GUI_LANGUAGE_PHRASES = DataASorDB.GetDatatable("DD_ECM", oSql, "TBDD_GUI_LANGUAGE_PHRASE", "") 'BASEDATA_DT_GUI_LANGUAGE_PHRASES = DataASorDB.GetDatatable("DD_ECM", oSql, "TBDD_GUI_LANGUAGE_PHRASE", "")
BASEDATA_DT_GUI_LANGUAGE_PHRASES = DatabaseFallback.GetDatatable("TBDD_GUI_LANGUAGE_PHRASE", New GetDatatableOptions(oSql, DatabaseType.ECM)) BASEDATA_DT_GUI_LANGUAGE_PHRASES = DatabaseFallback.GetDatatable("TBDD_GUI_LANGUAGE_PHRASE", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStep = "TBPM_PROFILE_SEARCH" oStep = "TBPM_PROFILE_SEARCH"
oSql = "select * from TBPM_PROFILE_SEARCH where TYPE = 'DOC' AND ACTIVE = 1 ORDER BY PROFILE_ID,TAB_INDEX" oSql = "select * from TBPM_PROFILE_SEARCH WITH (NOLOCK) where TYPE = 'DOC' AND ACTIVE = 1 ORDER BY PROFILE_ID,TAB_INDEX"
BASEDATA_DT_PROFILES_SEARCHES_DOC = DatabaseFallback.GetDatatable("TBPM_PROFILE_SEARCH", New GetDatatableOptions(oSql, DatabaseType.ECM) With { BASEDATA_DT_PROFILES_SEARCHES_DOC = DatabaseFallback.GetDatatable("TBPM_PROFILE_SEARCH", New GetDatatableOptions(oSql, DatabaseType.ECM) With {
.SortByColumn = "PROFILE_ID,TAB_INDEX" .SortByColumn = "PROFILE_ID,TAB_INDEX"
}) })
DT_FILTERED_PROFILE_SEARCHES_DOC = BASEDATA_DT_PROFILES_SEARCHES_DOC.Clone() DT_FILTERED_PROFILE_SEARCHES_DOC = BASEDATA_DT_PROFILES_SEARCHES_DOC.Clone()
oStep = "TBPM_MAIN_VIEW_GROUPS" oStep = "TBPM_MAIN_VIEW_GROUPS"
oSql = "SELECT * FROM TBPM_MAIN_VIEW_GROUPS WHERE ACTIVE = 1" oSql = "SELECT * FROM TBPM_MAIN_VIEW_GROUPS WITH (NOLOCK) WHERE ACTIVE = 1"
BASEDATA_DTGRID_GROUPS = DatabaseFallback.GetDatatable("TBPM_MAIN_VIEW_GROUPS", New GetDatatableOptions(oSql, DatabaseType.ECM)) BASEDATA_DTGRID_GROUPS = DatabaseFallback.GetDatatable("TBPM_MAIN_VIEW_GROUPS", New GetDatatableOptions(oSql, DatabaseType.ECM))
@@ -524,11 +532,11 @@ Public Class ClassInit
BASEDATA_DT_CHARTS = DatabaseFallback.GetDatatable("TBPM_CHART", New GetDatatableOptions(oSql, DatabaseType.ECM)) BASEDATA_DT_CHARTS = DatabaseFallback.GetDatatable("TBPM_CHART", New GetDatatableOptions(oSql, DatabaseType.ECM))
oStep = "TBDD_GUI_LANGUAGE" oStep = "TBDD_GUI_LANGUAGE"
oSql = "SELECT LANG_CODE FROM TBDD_GUI_LANGUAGE WHERE ACTIVE = 1 ORDER BY LANG_CODE" oSql = "SELECT LANG_CODE FROM TBDD_GUI_LANGUAGE WITH (NOLOCK) WHERE ACTIVE = 1 ORDER BY LANG_CODE"
BASEDATA_DT_LANGUAGE = DatabaseFallback.GetDatatable("TBDD_GUI_LANGUAGE", New GetDatatableOptions(oSql, DatabaseType.ECM)) BASEDATA_DT_LANGUAGE = DatabaseFallback.GetDatatable("TBDD_GUI_LANGUAGE", New GetDatatableOptions(oSql, DatabaseType.ECM))
oSql = "SELECT * FROM TBDD_COLUMNS_FORMAT WHERE MODULE = 'taskFLOW' AND GRIDVIEW = 'GridViewWorkflows'" oSql = "SELECT * FROM TBDD_COLUMNS_FORMAT WITH (NOLOCK) WHERE MODULE = 'taskFLOW' AND GRIDVIEW = 'GridViewWorkflows'"
BASEDATA_TBDD_COLUMNS_FORMAT = DatabaseFallback.GetDatatable("TBDD_COLUMNS_FORMAT", New GetDatatableOptions(oSql, DatabaseType.ECM)) BASEDATA_TBDD_COLUMNS_FORMAT = DatabaseFallback.GetDatatable("TBDD_COLUMNS_FORMAT", New GetDatatableOptions(oSql, DatabaseType.ECM))
@@ -556,7 +564,7 @@ Public Class ClassInit
End If End If
oSql = "SELECT KEY_NAME, VALUE_TEXT1 oSql = "SELECT KEY_NAME, VALUE_TEXT1
FROM TBDD_USER_KEY_VALUE_PAIR FROM TBDD_USER_KEY_VALUE_PAIR WITH (NOLOCK)
WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "'" WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "'"
Dim oDT_USER_KEY_VALUE_PAIR As DataTable = DatabaseFallback.GetDatatable(New GetDatatableOptions(oSql, DatabaseType.ECM)) Dim oDT_USER_KEY_VALUE_PAIR As DataTable = DatabaseFallback.GetDatatable(New GetDatatableOptions(oSql, DatabaseType.ECM))
@@ -608,7 +616,7 @@ Public Class ClassInit
<STAThread()> <STAThread()>
Private Function Settings_LoadBasicConfig() Private Function Settings_LoadBasicConfig()
Try Try
Dim oSql As String = "select * from tbdd_Modules where SHORT_NAME = 'PM'" Dim oSql As String = "select * from tbdd_Modules WITH (NOLOCK) where SHORT_NAME = 'PM'"
Dim oDTtbdd_Modules As DataTable Dim oDTtbdd_Modules As DataTable
'oDTtbdd_Modules = DataASorDB.GetDatatable("DD_ECM", oSql, "tbdd_Modules", $" SHORT_NAME = 'PM'") 'oDTtbdd_Modules = DataASorDB.GetDatatable("DD_ECM", oSql, "tbdd_Modules", $" SHORT_NAME = 'PM'")
oDTtbdd_Modules = DatabaseFallback.GetDatatable("TBDD_MODULES", New GetDatatableOptions(oSql, DatabaseType.ECM) With { oDTtbdd_Modules = DatabaseFallback.GetDatatable("TBDD_MODULES", New GetDatatableOptions(oSql, DatabaseType.ECM) With {

View File

@@ -35,7 +35,7 @@ Public Class ClassPMWindream
#End Region #End Region
#Region "+++++ Variablen +++++" #Region "+++++ Variablen +++++"
Private oController As New WMOSearchController 'Private oController As New WMOSearchController
#End Region #End Region
#Region "+++++ Allgemeine Methoden und Funktionen +++++" #Region "+++++ Allgemeine Methoden und Funktionen +++++"

View File

@@ -1,7 +1,7 @@
Imports DigitalData.Modules.Database Imports DigitalData.Modules.Database
Public Class ClassParamRefresh Public Class ClassParamRefresh
Public Shared Sub Refresh_Params(DT_CHECKUSER As DataTable) Public Shared Sub Refresh_Params(DT_CHECKUSER As DataTable, pMode As String)
LOGGER.Debug("Refresh_Params starting ...") LOGGER.Debug("Refresh_Params starting ...")
Dim oStopwatch As New RefreshHelper.SW("Refresh_Params") Dim oStopwatch As New RefreshHelper.SW("Refresh_Params")
FORCE_LAYOUT_OVERVIEW = False FORCE_LAYOUT_OVERVIEW = False
@@ -60,227 +60,242 @@ Public Class ClassParamRefresh
' Use For Each loop over words and display them. ' Use For Each loop over words and display them.
Dim oMode As String Dim oMode As String
For Each oMode In oSplitWorkMode For Each oMode In oSplitWorkMode
LOGGER.Debug($"oWorkingMode Parameter: {oMode}") ProcessWorkingModeParameter(oMode, pMode)
If oMode = "PM.FORCE_LAYOUT_OVERVIEW" Then 'LOGGER.Debug($"oWorkingMode Parameter: {oMode}")
FORCE_LAYOUT_OVERVIEW = True 'If oMode = "PM.FORCE_LAYOUT_OVERVIEW" Then
LOGGER.Debug($"FORCE_LAYOUT_OVERVIEW [{FORCE_LAYOUT_OVERVIEW}]") ' FORCE_LAYOUT_OVERVIEW = True
ElseIf oMode = "PM.NO_MASS_VALIDATOR" Then ' LOGGER.Debug($"FORCE_LAYOUT_OVERVIEW [{FORCE_LAYOUT_OVERVIEW}]")
SHOW_MASS_VALIDATOR = False 'ElseIf oMode = "PM.NO_MASS_VALIDATOR" Then
LOGGER.Info($"SHOW_MASS_VALIDATOR [{SHOW_MASS_VALIDATOR}]") ' SHOW_MASS_VALIDATOR = False
ElseIf oMode = "PM.NO_CHARTS" Then ' LOGGER.Info($"SHOW_MASS_VALIDATOR [{SHOW_MASS_VALIDATOR}]")
SHOW_CHARTS = False 'ElseIf oMode = "PM.NO_CHARTS" Then
LOGGER.Debug($"SHOW_CHARTS [{SHOW_CHARTS}]") ' SHOW_CHARTS = False
ElseIf oMode = "PM.DEBUG_LOG" Then ' LOGGER.Debug($"SHOW_CHARTS [{SHOW_CHARTS}]")
DEBUG = True 'ElseIf oMode = "PM.DEBUG_LOG" Then
LOGCONFIG.Debug = True ' DEBUG = True
ElseIf oMode = "PM.LOG_HOTSPOTS" Then ' LOGCONFIG.Debug = True
LOG_HOTSPOTS = True 'ElseIf oMode = "PM.LOG_HOTSPOTS" Then
ElseIf oMode.StartsWith("OPERATION_MODE_FS") Then ' LOG_HOTSPOTS = True
OPERATION_MODE_FS = oMode.Replace("OPERATION_MODE_FS=", "") 'ElseIf oMode.StartsWith("OPERATION_MODE_FS") Then
If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then ' OPERATION_MODE_FS = oMode.Replace("OPERATION_MODE_FS=", "")
IDB_USES_WMFILESTORE = True ' If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then
End If ' IDB_USES_WMFILESTORE = True
LOGGER.Info("OPERATION_MODE_FS: " + OPERATION_MODE_FS) ' End If
ElseIf oMode = "PM.IDBWITHWMFS" Then ' LOGGER.Info("OPERATION_MODE_FS: " + OPERATION_MODE_FS)
IDB_USES_WMFILESTORE = True 'ElseIf oMode = "PM.IDBWITHWMFS" Then
ElseIf oMode = "PM.NO_BASICCONF" Then ' IDB_USES_WMFILESTORE = True
BASIC_CONF_VISIBLE = False 'ElseIf oMode = "PM.NO_BASICCONF" Then
LOGGER.Info($"BASIC_CONF_VISIBLE [{BASIC_CONF_VISIBLE}]") ' BASIC_CONF_VISIBLE = False
ElseIf oMode = "PM.SYS_LOCKED_MAINTENANCE" Then ' LOGGER.Info($"BASIC_CONF_VISIBLE [{BASIC_CONF_VISIBLE}]")
SYS_LOCKED_MAINTENANCE = True 'ElseIf oMode = "PM.SYS_LOCKED_MAINTENANCE" Then
ElseIf oMode.StartsWith("PM.IDB_CONID!") Then ' SYS_LOCKED_MAINTENANCE = True
If CONNECTION_STRING_IDB <> "" And dbIDBInitialized = True Then 'ElseIf oMode.StartsWith("PM.IDB_CONID!") Then
IDB_ACTIVE = True ' If CONNECTION_STRING_IDB <> "" And dbIDBInitialized = True Then
Continue For ' IDB_ACTIVE = True
Else ' Continue For
Dim Database_IDB As MSSQLServer = Nothing ' Else
Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "") ' Dim Database_IDB As MSSQLServer = Nothing
' Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "")
' Dim oConString = DatabaseFallback.GetConnectionString(CON_ID)
' CONNECTION_STRING_IDB = oConString
' Database_IDB = New MSSQLServer(LOGCONFIG, CONNECTION_STRING_IDB)
' If Database_IDB.DBInitialized = True Then
' IDB_ACTIVE = True
' LOGGER.Info($"IDB is active - IDB-Connection [{CON_ID}]!")
' DatabaseFallback.InitializeIDB(Database_IDB)
' Else
' IDB_ACTIVE = False
' End If
' End If
'ElseIf oMode = "PM.EXCEL_OVERVIEW" Then
' EXCEL_OVERVIEW = True
' LOGGER.Info($"EXCEL_OVERVIEW [{EXCEL_OVERVIEW}]")
'ElseIf oMode = "PM.MONITORING" Then
' MONITORING_ACTIVE = True
' LOGGER.Debug($"MONITORING_ACTIVE [{MONITORING_ACTIVE}]")
'ElseIf oMode = "PM.GHOSTMODE" Then
' GHOSTMODE_ACTIVE = True
' LOGGER.Info($"GHOSTMODE_ACTIVE [{GHOSTMODE_ACTIVE}]")
'ElseIf oMode.StartsWith("PM.COLORSCHEME") Then
' Dim oColorScheme = oMode.Replace("PM.COLORSCHEME=", "")
' RIBBON_COLOR_SCHEME = oColorScheme.ToUpper
' LOGGER.Debug($"RIBBON_COLOR_SCHEME [{RIBBON_COLOR_SCHEME}]")
'ElseIf oMode.StartsWith("PM.NO_DETAIL_PROFILES") Then
' NO_DETAIL_PROFILES = True
' LOGGER.Debug($"NO_DETAIL_PROFILES [{NO_DETAIL_PROFILES}]")
'ElseIf oMode = "PM.NO_POPUP" Then
' POPUP_REMINDER_ACTIVE = False
' LOGGER.Debug($"POPUP_REMINDER_ACTIVE [{POPUP_REMINDER_ACTIVE}]")
'ElseIf oMode.StartsWith("PM.POPUP_TIMELAPS_OVERRIDE") Then
' Dim oTimeLapse = oMode.Replace("PM.POPUP_TIMELAPS_OVERRIDE=", "")
' LOGGER.Info($"CENTRAL POPUP_TIMELAPS_OVERRIDE [{oTimeLapse}]")
' Try
' CONFIG.Config.ReminderTimer = oTimeLapse
' Catch ex As Exception
' End Try
Dim oConString = DatabaseFallback.GetConnectionString(CON_ID) 'ElseIf oMode.StartsWith("PM.CONV_IDENTIFICATION") Then
' Dim oIdent = oMode.Replace("PM.CONV_IDENTIFICATION=", "")
' CONV_IDENTIFICATION = oIdent
'ElseIf oMode.StartsWith("PM.INACTIVITY_DURATION") Then
' Dim oInactivityDuration = oMode.Replace("PM.INACTIVITY_DURATION=", "")
' Try
' INACTIVITY_DURATION = CInt(oInactivityDuration)
' LOGGER.Debug($"InactivityDuration [{INACTIVITY_DURATION}]")
' Catch ex As Exception
' LOGGER.Warn($"INACTIVITY_DURATION = 0 - {ex.Message}")
' INACTIVITY_DURATION = 0
' End Try
'ElseIf oMode.StartsWith("PM.COL_LAST_EDITED") Then
' Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_EDITED=", "")
' Try
' LAST_EDITED_COLUMN = oLEDITEDCOL
' LOGGER.Debug($"LAST_EDITED_COLUMN: {oLEDITEDCOL}")
' Catch ex As Exception
' LAST_EDITED_COLUMN = ""
CONNECTION_STRING_IDB = oConString ' End Try
Database_IDB = New MSSQLServer(LOGCONFIG, CONNECTION_STRING_IDB) 'ElseIf oMode.StartsWith("PM.COL_LAST_ADDED") Then
If Database_IDB.DBInitialized = True Then ' Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_ADDED=", "")
IDB_ACTIVE = True ' Try
LOGGER.Info($"IDB is active - IDB-Connection [{CON_ID}]!") ' LAST_ADDED_COLUMN = oLEDITEDCOL
DatabaseFallback.InitializeIDB(Database_IDB) ' LOGGER.Debug($"LAST_ADDED_COLUMN: {oLEDITEDCOL}")
Else ' Catch ex As Exception
IDB_ACTIVE = False ' LAST_ADDED_COLUMN = ""
End If
End If
ElseIf oMode = "PM.EXCEL_OVERVIEW" Then
EXCEL_OVERVIEW = True
LOGGER.Info($"EXCEL_OVERVIEW [{EXCEL_OVERVIEW}]")
ElseIf oMode = "PM.MONITORING" Then
MONITORING_ACTIVE = True
LOGGER.Debug($"MONITORING_ACTIVE [{MONITORING_ACTIVE}]")
ElseIf oMode = "PM.GHOSTMODE" Then
GHOSTMODE_ACTIVE = True
LOGGER.Info($"GHOSTMODE_ACTIVE [{GHOSTMODE_ACTIVE}]")
ElseIf oMode.StartsWith("PM.COLORSCHEME") Then
Dim oColorScheme = oMode.Replace("PM.COLORSCHEME=", "")
RIBBON_COLOR_SCHEME = oColorScheme.ToUpper
LOGGER.Debug($"RIBBON_COLOR_SCHEME [{RIBBON_COLOR_SCHEME}]")
ElseIf oMode.StartsWith("PM.NO_DETAIL_PROFILES") Then
NO_DETAIL_PROFILES = True
LOGGER.Debug($"NO_DETAIL_PROFILES [{NO_DETAIL_PROFILES}]")
ElseIf oMode = "PM.NO_POPUP" Then
POPUP_REMINDER_ACTIVE = False
LOGGER.Debug($"POPUP_REMINDER_ACTIVE [{POPUP_REMINDER_ACTIVE}]")
ElseIf oMode.StartsWith("PM.POPUP_TIMELAPS_OVERRIDE") Then
Dim oTimeLapse = oMode.Replace("PM.POPUP_TIMELAPS_OVERRIDE=", "")
LOGGER.Info($"CENTRAL POPUP_TIMELAPS_OVERRIDE [{oTimeLapse}]")
Try
CONFIG.Config.ReminderTimer = oTimeLapse
Catch ex As Exception
End Try
ElseIf oMode.StartsWith("PM.CONV_IDENTIFICATION") Then ' End Try
Dim oIdent = oMode.Replace("PM.CONV_IDENTIFICATION=", "") 'ElseIf oMode.StartsWith("PM.MON_COL_CHANGED_WHEN") Then
CONV_IDENTIFICATION = oIdent ' Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_CHANGED_WHEN=", "")
ElseIf oMode.StartsWith("PM.INACTIVITY_DURATION") Then ' Try
Dim oInactivityDuration = oMode.Replace("PM.INACTIVITY_DURATION=", "") ' MON_EDITED_COLUMN = oLEDITEDCOL
Try ' LOGGER.Debug($"MON_EDITED_COLUMN: {oLEDITEDCOL}")
INACTIVITY_DURATION = CInt(oInactivityDuration) ' Catch ex As Exception
LOGGER.Debug($"InactivityDuration [{INACTIVITY_DURATION}]")
Catch ex As Exception
LOGGER.Warn($"INACTIVITY_DURATION = 0 - {ex.Message}")
INACTIVITY_DURATION = 0
End Try
ElseIf oMode.StartsWith("PM.COL_LAST_EDITED") Then
Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_EDITED=", "")
Try
LAST_EDITED_COLUMN = oLEDITEDCOL
LOGGER.Debug($"LAST_EDITED_COLUMN: {oLEDITEDCOL}")
Catch ex As Exception
LAST_EDITED_COLUMN = ""
End Try ' End Try
ElseIf oMode.StartsWith("PM.COL_LAST_ADDED") Then 'ElseIf oMode.StartsWith("PM.MON_COL_ADDED_WHEN") Then
Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_ADDED=", "") ' Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_ADDED_WHEN=", "")
Try ' Try
LAST_ADDED_COLUMN = oLEDITEDCOL ' MON_ADDED_COLUMN = oLEDITEDCOL
LOGGER.Debug($"LAST_ADDED_COLUMN: {oLEDITEDCOL}") ' LOGGER.Debug($"MON_COL_ADDED_WHEN: {oLEDITEDCOL}")
Catch ex As Exception ' Catch ex As Exception
LAST_ADDED_COLUMN = ""
End Try ' End Try
ElseIf oMode.StartsWith("PM.MON_COL_CHANGED_WHEN") Then 'ElseIf oMode.StartsWith("PM.USE_APPSERVER") Then
Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_CHANGED_WHEN=", "") ' Dim oUSE_APPSERVER = oMode.Replace("PM.USE_APPSERVER=", "")
Try ' Try
MON_EDITED_COLUMN = oLEDITEDCOL ' USE_APPSERVER = CBool(oUSE_APPSERVER)
LOGGER.Debug($"MON_EDITED_COLUMN: {oLEDITEDCOL}") ' Catch ex As Exception
Catch ex As Exception ' USE_APPSERVER = False
' End Try
'ElseIf oMode.StartsWith("PM.COPYWM2TEMP") Then
' Dim oCOPYWM2TEMP = oMode.Replace("PM.COPYWM2TEMP=", "")
' Try
' COPY_WMFILE_2TEMP = CBool(oCOPYWM2TEMP)
' Catch ex As Exception
' COPY_WMFILE_2TEMP = False
' End Try
'ElseIf oMode.StartsWith("PM.MAP_SHARE_DRIVE") Then
' Dim oMAP_SHARE_DRIVE = oMode.Replace("PM.MAP_SHARE_DRIVE=", "")
' Try
' MAP_SHARE_DRIVE = oMAP_SHARE_DRIVE
' Catch ex As Exception
' oMAP_SHARE_DRIVE = String.Empty
' End Try
'ElseIf oMode.StartsWith("PM.MAP_BLACKLIST") Then
' Dim oMAP_BLACKLIST = oMode.Replace("PM.MAP_BLACKLIST=", "")
' Try
' MAP_BLACKLIST = oMAP_BLACKLIST
' Catch ex As Exception
' MAP_BLACKLIST = String.Empty
' End Try
'ElseIf oMode.StartsWith("PM.SEARCH1") Then
' Dim oSearch1 = oMode.Replace("PM.SEARCH1=", "")
' Try
' SEARCH1 = oSearch1
' Catch ex As Exception
' SEARCH1 = ""
' End Try
'ElseIf oMode.StartsWith("PM.SEARCH2") Then
' Dim oSearch2 = oMode.Replace("PM.SEARCH2=", "")
' Try
' SEARCH2 = oSearch2
' Catch ex As Exception
' SEARCH2 = ""
' End Try
'ElseIf oMode.StartsWith("PM.TRAFFICLIGHT_ICON") Then
' Dim oParam = oMode.Replace("PM.TRAFFICLIGHT_ICON=", "")
' Try
' TL_ICON = CBool(oParam)
' Catch ex As Exception
' TL_ICON = False
' End Try
'ElseIf oMode.StartsWith("PM.TITLE_NOTIFICATIONS") Then
' Dim oParam = oMode.Replace("PM.TITLE_NOTIFICATIONS=", "")
' Try
' TITLE_NOTIFICATIONS = oParam
' Catch ex As Exception
' TITLE_NOTIFICATIONS = ""
' End Try
'ElseIf oMode.StartsWith("TF.InheritanceMsgAmount") And pMode = "Load" Then
' Dim oParam = oMode.Replace("TF.InheritanceMsgAmount=", "")
' Try
' InheritanceMsgAmount = oParam
' Catch ex As Exception
' End Try
'ElseIf oMode.StartsWith("TF.InheritanceCalcReset") And pMode = "Load" Then
' Dim oParam = oMode.Replace("TF.InheritanceCalcReset=", "")
' Try
' If CBool(oParam) = True Then
' LOGGER.Info("Inheritance_Counts werden auf 0 zurückgesetzt bzw gelöscht")
' Dim oDELETESQL = "DELETE FROM TBDD_USER_KEY_VALUE_PAIR
' WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "' AND KEY_NAME LIKE 'INHERITANCE_CONFIRM_%'"
' DatabaseECM.ExecuteNonQuery(oDELETESQL)
End Try ' UserInheritance_ConfirmationByColumn = Nothing
ElseIf oMode.StartsWith("PM.MON_COL_ADDED_WHEN") Then ' CONFIG.Save()
Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_ADDED_WHEN=", "") ' End If
Try ' Catch ex As Exception
MON_ADDED_COLUMN = oLEDITEDCOL
LOGGER.Debug($"MON_COL_ADDED_WHEN: {oLEDITEDCOL}")
Catch ex As Exception
' End Try
'ElseIf oMode.StartsWith("PM.START_CW") Then
' Dim oAfterReplace = oMode.Replace("PM.START_CW=", "")
' Try
' START_CW = True
' LOGGER.Debug("PM.START_CW = True")
' Dim oSplit As String() = oAfterReplace.Split("~")
' START_CW_CAPTION = oSplit(0)
' Try
' START_CW_LOC_VARIANT = oSplit(1)
' Catch ex As Exception
' START_CW_LOC_VARIANT = "-1"
' LOGGER.Warn($"Could not read START_CW_LOCVARIANT : {ex.Message}")
' End Try
End Try ' Catch ex As Exception
ElseIf oMode.StartsWith("PM.USE_APPSERVER") Then ' LOGGER.Warn($"Could not read START_CW Param: {ex.Message}")
Dim oUSE_APPSERVER = oMode.Replace("PM.USE_APPSERVER=", "") ' START_CW = False
Try ' End Try
USE_APPSERVER = CBool(oUSE_APPSERVER) 'ElseIf oMode.StartsWith("PM.RibbonPageCustTitle") Then
Catch ex As Exception ' Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustTitle=", "")
USE_APPSERVER = False ' RibbonPageCustTitle = oAfterReplace
'ElseIf oMode.StartsWith("PM.RibbonPageCustItm1") Then
End Try ' Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustItm1=", "")
ElseIf oMode.StartsWith("PM.SEARCH1") Then ' RibbonPageCustItm1 = oAfterReplace
Dim oSearch1 = oMode.Replace("PM.SEARCH1=", "") 'ElseIf oMode.StartsWith("PM.ButtonExport2FolderCaption") Then
Try ' Dim oAfterReplace = oMode.Replace("PM.ButtonExport2FolderCaption=", "")
SEARCH1 = oSearch1 ' ButtonExport2Folder_Caption = oAfterReplace
Catch ex As Exception 'ElseIf oMode.StartsWith("PM.ButtonExport2Folder_Mode") Then
SEARCH1 = "" ' Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_Mode=", "")
' ButtonExport2Folder_Mode = oAfterReplace
End Try 'ElseIf oMode.StartsWith("PM.ButtonExport2Folder_RootFolder") Then
ElseIf oMode.StartsWith("PM.SEARCH2") Then ' Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_RootFolder=", "")
Dim oSearch2 = oMode.Replace("PM.SEARCH2=", "") ' ButtonExport2Folder_RootFolder = oAfterReplace
Try 'ElseIf oMode = "MAINFORM_ALLOW_LOGFILES" Then
SEARCH2 = oSearch2 ' MAINFORM_CREATE_LOG_FILES = True
Catch ex As Exception 'Else
SEARCH2 = "" ' LOGGER.Info($"Wrong oMode: {oMode}")
'End If
End Try
ElseIf oMode.StartsWith("PM.TRAFFICLIGHT_ICON") Then
Dim oParam = oMode.Replace("PM.TRAFFICLIGHT_ICON=", "")
Try
TL_ICON = CBool(oParam)
Catch ex As Exception
TL_ICON = False
End Try
ElseIf oMode.StartsWith("PM.TITLE_NOTIFICATIONS") Then
Dim oParam = oMode.Replace("PM.TITLE_NOTIFICATIONS=", "")
Try
TITLE_NOTIFICATIONS = oParam
Catch ex As Exception
TITLE_NOTIFICATIONS = ""
End Try
ElseIf oMode.StartsWith("TF.InheritanceMsgAmount") Then
Dim oParam = oMode.Replace("TF.InheritanceMsgAmount=", "")
Try
InheritanceMsgAmount = oParam
Catch ex As Exception
End Try
ElseIf oMode.StartsWith("TF.InheritanceCalcReset") Then
Dim oParam = oMode.Replace("TF.InheritanceCalcReset=", "")
Try
If CBool(oParam) = True Then
LOGGER.Info("Inheritance_Counts werden auf 0 zurückgesetzt bzw gelöscht")
Dim oDELETESQL = "DELETE FROM TBDD_USER_KEY_VALUE_PAIR
WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "' AND KEY_NAME LIKE 'INHERITANCE_CONFIRM_%'"
DatabaseECM.ExecuteNonQuery(oDELETESQL)
UserInheritance_ConfirmationByColumn = Nothing
CONFIG.Save()
End If
Catch ex As Exception
End Try
ElseIf oMode.StartsWith("PM.START_CW") Then
Dim oAfterReplace = oMode.Replace("PM.START_CW=", "")
Try
START_CW = True
LOGGER.Debug("PM.START_CW = True")
Dim oSplit As String() = oAfterReplace.Split("~")
START_CW_CAPTION = oSplit(0)
Try
START_CW_LOC_VARIANT = oSplit(1)
Catch ex As Exception
START_CW_LOC_VARIANT = "-1"
LOGGER.Warn($"Could not read START_CW_LOCVARIANT : {ex.Message}")
End Try
Catch ex As Exception
LOGGER.Warn($"Could not read START_CW Param: {ex.Message}")
START_CW = False
End Try
ElseIf oMode.StartsWith("PM.RibbonPageCustTitle") Then
Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustTitle=", "")
RibbonPageCustTitle = oAfterReplace
ElseIf oMode.StartsWith("PM.RibbonPageCustItm1") Then
Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustItm1=", "")
RibbonPageCustItm1 = oAfterReplace
ElseIf oMode.StartsWith("PM.ButtonExport2FolderCaption") Then
Dim oAfterReplace = oMode.Replace("PM.ButtonExport2FolderCaption=", "")
ButtonExport2Folder_Caption = oAfterReplace
ElseIf oMode.StartsWith("PM.ButtonExport2Folder_Mode") Then
Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_Mode=", "")
ButtonExport2Folder_Mode = oAfterReplace
ElseIf oMode.StartsWith("PM.ButtonExport2Folder_RootFolder") Then
Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_RootFolder=", "")
ButtonExport2Folder_RootFolder = oAfterReplace
ElseIf oMode = "MAINFORM_ALLOW_LOGFILES" Then
MAINFORM_CREATE_LOG_FILES = True
Else
LOGGER.Info($"Wrong oMode: {oMode}")
End If
Next Next
'If IDB_ACTIVE Then 'If IDB_ACTIVE Then
' If CONNECTION_STRING_APP_SERVER <> String.Empty Then ' If CONNECTION_STRING_APP_SERVER <> String.Empty Then
@@ -298,4 +313,267 @@ Public Class ClassParamRefresh
End If End If
oStopwatch.Done() oStopwatch.Done()
End Sub End Sub
Private Shared Sub ProcessWorkingModeParameter(oMode As String, pMode As String)
LOGGER.Debug($"Processing Working Mode Parameter: {oMode}")
Select Case True
Case oMode = "PM.FORCE_LAYOUT_OVERVIEW"
SetBooleanParameter(FORCE_LAYOUT_OVERVIEW, True, "FORCE_LAYOUT_OVERVIEW")
Case oMode = "PM.NO_MASS_VALIDATOR"
SetBooleanParameter(SHOW_MASS_VALIDATOR, False, "SHOW_MASS_VALIDATOR", LogLevel.Info)
Case oMode = "PM.NO_CHARTS"
SetBooleanParameter(SHOW_CHARTS, False, "SHOW_CHARTS")
Case oMode = "PM.DEBUG_LOG"
DEBUG = True
LOGCONFIG.Debug = True
LOGGER.Debug($"DEBUG_LOG = True")
Case oMode = "PM.LOG_HOTSPOTS"
SetBooleanParameter(LOG_HOTSPOTS, True, "LOG_HOTSPOTS")
Case oMode.StartsWith("OPERATION_MODE_FS")
OPERATION_MODE_FS = ExtractParameterValue(oMode, "OPERATION_MODE_FS")
If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then
IDB_USES_WMFILESTORE = True
End If
LOGGER.Info($"OPERATION_MODE_FS = {OPERATION_MODE_FS}")
Case oMode = "PM.IDBWITHWMFS"
SetBooleanParameter(IDB_USES_WMFILESTORE, True, "IDB_USES_WMFILESTORE", LogLevel.Info)
Case oMode = "PM.NO_BASICCONF"
SetBooleanParameter(BASIC_CONF_VISIBLE, False, "BASIC_CONF_VISIBLE", LogLevel.Info)
Case oMode = "PM.SYS_LOCKED_MAINTENANCE"
SetBooleanParameter(SYS_LOCKED_MAINTENANCE, True, "SYS_LOCKED_MAINTENANCE")
Case oMode.StartsWith("PM.IDB_CONID!")
ProcessIDBConnection(oMode)
Case oMode = "PM.EXCEL_OVERVIEW"
SetBooleanParameter(EXCEL_OVERVIEW, True, "EXCEL_OVERVIEW", LogLevel.Info)
Case oMode = "PM.MONITORING"
SetBooleanParameter(MONITORING_ACTIVE, True, "MONITORING_ACTIVE")
Case oMode = "PM.GHOSTMODE"
SetBooleanParameter(GHOSTMODE_ACTIVE, True, "GHOSTMODE_ACTIVE", LogLevel.Info)
Case oMode.StartsWith("PM.COLORSCHEME")
RIBBON_COLOR_SCHEME = ExtractParameterValue(oMode, "PM.COLORSCHEME").ToUpper
LOGGER.Debug($"RIBBON_COLOR_SCHEME = {RIBBON_COLOR_SCHEME}")
Case oMode.StartsWith("PM.NO_DETAIL_PROFILES")
SetBooleanParameter(NO_DETAIL_PROFILES, True, "NO_DETAIL_PROFILES")
Case oMode = "PM.NO_POPUP"
SetBooleanParameter(POPUP_REMINDER_ACTIVE, False, "POPUP_REMINDER_ACTIVE")
Case oMode.StartsWith("PM.POPUP_TIMELAPS_OVERRIDE")
ProcessPopupTimeLapse(oMode)
Case oMode.StartsWith("PM.CONV_IDENTIFICATION")
CONV_IDENTIFICATION = ExtractParameterValue(oMode, "PM.CONV_IDENTIFICATION")
LOGGER.Debug($"CONV_IDENTIFICATION = {CONV_IDENTIFICATION}")
Case oMode.StartsWith("PM.INACTIVITY_DURATION")
ProcessIntegerParameter(oMode, "PM.INACTIVITY_DURATION", INACTIVITY_DURATION, "InactivityDuration")
Case oMode.StartsWith("PM.COL_LAST_EDITED")
LAST_EDITED_COLUMN = ExtractParameterValue(oMode, "PM.COL_LAST_EDITED")
LOGGER.Debug($"LAST_EDITED_COLUMN = {LAST_EDITED_COLUMN}")
Case oMode.StartsWith("PM.COL_LAST_ADDED")
LAST_ADDED_COLUMN = ExtractParameterValue(oMode, "PM.COL_LAST_ADDED")
LOGGER.Debug($"LAST_ADDED_COLUMN = {LAST_ADDED_COLUMN}")
Case oMode.StartsWith("PM.MON_COL_CHANGED_WHEN")
MON_EDITED_COLUMN = ExtractParameterValue(oMode, "PM.MON_COL_CHANGED_WHEN")
LOGGER.Debug($"MON_EDITED_COLUMN = {MON_EDITED_COLUMN}")
Case oMode.StartsWith("PM.MON_COL_ADDED_WHEN")
MON_ADDED_COLUMN = ExtractParameterValue(oMode, "PM.MON_COL_ADDED_WHEN")
LOGGER.Debug($"MON_ADDED_COLUMN = {MON_ADDED_COLUMN}")
Case oMode.StartsWith("PM.USE_APPSERVER")
ProcessBooleanParameter(oMode, "PM.USE_APPSERVER", USE_APPSERVER, "USE_APPSERVER")
Case oMode.StartsWith("PM.COPYWM2TEMP")
ProcessBooleanParameter(oMode, "PM.COPYWM2TEMP", COPY_WMFILE_2TEMP, "COPY_WMFILE_2TEMP")
Case oMode.StartsWith("PM.MAP_SHARE_DRIVE")
MAP_SHARE_DRIVE = ExtractParameterValue(oMode, "PM.MAP_SHARE_DRIVE")
LOGGER.Debug($"MAP_SHARE_DRIVE = {MAP_SHARE_DRIVE}")
Case oMode.StartsWith("PM.MAP_BLACKLIST")
MAP_BLACKLIST = ExtractParameterValue(oMode, "PM.MAP_BLACKLIST")
LOGGER.Debug($"MAP_BLACKLIST = {MAP_BLACKLIST}")
Case oMode.StartsWith("PM.SEARCH1")
SEARCH1 = ExtractParameterValue(oMode, "PM.SEARCH1")
LOGGER.Debug($"SEARCH1 = {SEARCH1}")
Case oMode.StartsWith("PM.SEARCH2")
SEARCH2 = ExtractParameterValue(oMode, "PM.SEARCH2")
LOGGER.Debug($"SEARCH2 = {SEARCH2}")
Case oMode.StartsWith("PM.TRAFFICLIGHT_ICON")
ProcessBooleanParameter(oMode, "PM.TRAFFICLIGHT_ICON", TL_ICON, "TL_ICON")
Case oMode.StartsWith("PM.TITLE_NOTIFICATIONS")
TITLE_NOTIFICATIONS = ExtractParameterValue(oMode, "PM.TITLE_NOTIFICATIONS")
LOGGER.Debug($"TITLE_NOTIFICATIONS = {TITLE_NOTIFICATIONS}")
Case oMode.StartsWith("TF.InheritanceMsgAmount") AndAlso pMode = "Load"
InheritanceMsgAmount = ExtractParameterValue(oMode, "TF.InheritanceMsgAmount")
LOGGER.Debug($"InheritanceMsgAmount = {InheritanceMsgAmount}")
Case oMode.StartsWith("TF.InheritanceCalcReset") AndAlso pMode = "Load"
ProcessInheritanceReset(oMode)
Case oMode.StartsWith("PM.START_CW")
ProcessStartCW(oMode)
Case oMode.StartsWith("PM.RibbonPageCustTitle")
RibbonPageCustTitle = ExtractParameterValue(oMode, "PM.RibbonPageCustTitle")
LOGGER.Debug($"RibbonPageCustTitle = {RibbonPageCustTitle}")
Case oMode.StartsWith("PM.RibbonPageCustItm1")
RibbonPageCustItm1 = ExtractParameterValue(oMode, "PM.RibbonPageCustItm1")
LOGGER.Debug($"RibbonPageCustItm1 = {RibbonPageCustItm1}")
Case oMode.StartsWith("PM.ButtonExport2FolderCaption")
ButtonExport2Folder_Caption = ExtractParameterValue(oMode, "PM.ButtonExport2FolderCaption")
LOGGER.Debug($"ButtonExport2FolderCaption = {ButtonExport2Folder_Caption}")
Case oMode.StartsWith("PM.ButtonExport2Folder_Mode")
ButtonExport2Folder_Mode = ExtractParameterValue(oMode, "PM.ButtonExport2Folder_Mode")
LOGGER.Debug($"ButtonExport2Folder_Mode = {ButtonExport2Folder_Mode}")
Case oMode.StartsWith("PM.ButtonExport2Folder_RootFolder")
ButtonExport2Folder_RootFolder = ExtractParameterValue(oMode, "PM.ButtonExport2Folder_RootFolder")
LOGGER.Debug($"ButtonExport2Folder_RootFolder = {ButtonExport2Folder_RootFolder}")
Case oMode = "MAINFORM_ALLOW_LOGFILES"
SetBooleanParameter(MAINFORM_CREATE_LOG_FILES, True, "MAINFORM_CREATE_LOG_FILES")
Case Else
LOGGER.Info($"Unknown Working Mode Parameter: {oMode}")
End Select
End Sub
Private Shared Function ExtractParameterValue(parameterString As String, prefix As String) As String
Return parameterString.Replace($"{prefix}=", "")
End Function
Private Shared Sub SetBooleanParameter(ByRef target As Boolean, value As Boolean, paramName As String, Optional logLevel As LogLevel = LogLevel.Debug)
target = value
LogParameterValue(paramName, value.ToString(), logLevel)
End Sub
Private Shared Sub ProcessBooleanParameter(oMode As String, prefix As String, ByRef target As Boolean, paramName As String)
Dim value = ExtractParameterValue(oMode, prefix)
Try
target = CBool(value)
LOGGER.Debug($"{paramName} = {target}")
Catch ex As Exception
target = False
LOGGER.Warn($"Failed to parse {paramName}: {ex.Message}")
End Try
End Sub
Private Shared Sub ProcessIntegerParameter(oMode As String, prefix As String, ByRef target As Integer, paramName As String)
Dim value = ExtractParameterValue(oMode, prefix)
Try
target = CInt(value)
LOGGER.Debug($"{paramName} = {target}")
Catch ex As Exception
LOGGER.Warn($"Failed to parse {paramName}: {ex.Message}. Setting to 0")
target = 0
End Try
End Sub
Private Shared Sub ProcessIDBConnection(oMode As String)
Dim Database_IDB As MSSQLServer = Nothing
Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "")
Dim oConString = DatabaseFallback.GetConnectionString(CON_ID)
CONNECTION_STRING_IDB = oConString
Database_IDB = New MSSQLServer(LOGCONFIG, CONNECTION_STRING_IDB)
If Database_IDB.DBInitialized = True Then
IDB_ACTIVE = True
LOGGER.Info($"IDB is active - IDB-Connection [{CON_ID}]")
DatabaseFallback.InitializeIDB(Database_IDB)
Else
IDB_ACTIVE = False
LOGGER.Warn($"Failed to initialize IDB with Connection [{CON_ID}]")
End If
If CONNECTION_STRING_IDB <> "" AndAlso Database_IDB.DBInitialized = True Then
IDB_ACTIVE = True
LOGGER.Debug("IDB already initialized and active")
Return
End If
End Sub
Private Shared Sub ProcessPopupTimeLapse(oMode As String)
Dim oTimeLapse = ExtractParameterValue(oMode, "PM.POPUP_TIMELAPS_OVERRIDE")
LOGGER.Info($"POPUP_TIMELAPS_OVERRIDE = {oTimeLapse}")
Try
CONFIG.Config.ReminderTimer = oTimeLapse
Catch ex As Exception
LOGGER.Warn($"Failed to set ReminderTimer: {ex.Message}")
End Try
End Sub
Private Shared Sub ProcessInheritanceReset(oMode As String)
Dim oParam = ExtractParameterValue(oMode, "TF.InheritanceCalcReset")
Try
If CBool(oParam) = True Then
LOGGER.Info("Inheritance_Counts werden auf 0 zurückgesetzt bzw gelöscht")
Dim oDELETESQL = "DELETE FROM TBDD_USER_KEY_VALUE_PAIR
WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "' AND KEY_NAME LIKE 'INHERITANCE_CONFIRM_%'"
DatabaseECM.ExecuteNonQuery(oDELETESQL)
UserInheritance_ConfirmationByColumn = Nothing
CONFIG.Save()
End If
Catch ex As Exception
LOGGER.Warn($"Failed to process InheritanceCalcReset: {ex.Message}")
End Try
End Sub
Private Shared Sub ProcessStartCW(oMode As String)
Dim oAfterReplace = ExtractParameterValue(oMode, "PM.START_CW")
Try
START_CW = True
LOGGER.Debug("PM.START_CW = True")
Dim oSplit As String() = oAfterReplace.Split("~")
START_CW_CAPTION = oSplit(0)
Try
START_CW_LOC_VARIANT = oSplit(1)
LOGGER.Debug($"START_CW_LOC_VARIANT = {START_CW_LOC_VARIANT}")
Catch ex As Exception
START_CW_LOC_VARIANT = "-1"
LOGGER.Warn($"Could not read START_CW_LOC_VARIANT: {ex.Message}")
End Try
Catch ex As Exception
LOGGER.Warn($"Could not read START_CW Param: {ex.Message}")
START_CW = False
End Try
End Sub
Private Shared Sub LogParameterValue(paramName As String, value As String, logLevel As LogLevel)
Select Case logLevel
Case LogLevel.Info
LOGGER.Info($"{paramName} = {value}")
Case Else
LOGGER.Debug($"{paramName} = {value}")
End Select
End Sub
Private Enum LogLevel
Debug
Info
End Enum
End Class End Class

View File

@@ -124,7 +124,7 @@ Public Class ClassWindream_allgemein
Public Function Start_WMCC_andCo() Public Function Start_WMCC_andCo()
Try Try
' 04.10.18: Überprüft, ob der Benutzer Mitglied der SERVER_USER Gruppe ist ' 04.10.18: Überprüft, ob der Benutzer Mitglied der SERVER_USER Gruppe ist
Dim sql = "SELECT T.GUID FROM TBDD_GROUPS_USER T INNER JOIN TBDD_GROUPS T1 on T1.GUID = T.GROUP_ID WHERE T1.NAME = 'SERVER_USER' AND T.USER_ID = " & USER_ID Dim sql = "SELECT T.GUID FROM TBDD_GROUPS_USER T WITH (NOLOCK) INNER JOIN TBDD_GROUPS T1 WITH (NOLOCK) on T1.GUID = T.GROUP_ID WHERE T1.NAME = 'SERVER_USER' AND T.USER_ID = " & USER_ID
Dim userExistsInServerUserGroup = DatabaseFallback.GetScalarValueECM(sql) ', CONNECTION_STRING_ECM, "StartWMCC-userExistsInServerUserGroup") Dim userExistsInServerUserGroup = DatabaseFallback.GetScalarValueECM(sql) ', CONNECTION_STRING_ECM, "StartWMCC-userExistsInServerUserGroup")
If WMSESSION_STARTSTOP_STARTUP = True Then If WMSESSION_STARTSTOP_STARTUP = True Then
@@ -322,30 +322,30 @@ LOGGER.Error(ex)
''' <param name="objekttypName">Name des Objekttyps</param> ''' <param name="objekttypName">Name des Objekttyps</param>
''' <returns>Objekttyp als WMObject</returns> ''' <returns>Objekttyp als WMObject</returns>
''' <remarks></remarks> ''' <remarks></remarks>
Public Function GetObjecttypeByName(ByVal objekttypName As String) As WMObject 'Public Function GetObjecttypeByName(ByVal objekttypName As String) As WMObject
Try ' Try
If IsNothing(Me.oSession) Then ' If IsNothing(Me.oSession) Then
LOGGER.Warn("⚠️ GetObjecttypeByName: WMSession is nothing") ' LOGGER.Warn("⚠️ GetObjecttypeByName: WMSession is nothing")
Return Nothing ' Return Nothing
End If ' End If
' alle Objekttypen auslesen ' ' alle Objekttypen auslesen
Dim oObjectTypes As WMObjects = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument) ' Dim oObjectTypes As WMObjects = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
' alle Objekttypen durchlaufen und nach dem mit dem angegebenen Namen suchen ' ' alle Objekttypen durchlaufen und nach dem mit dem angegebenen Namen suchen
For Each oObjectType As WMObject In oObjectTypes ' For Each oObjectType As WMObject In oObjectTypes
If oObjectType.aName = objekttypName Then ' If oObjectType.aName = objekttypName Then
Return oObjectType ' Return oObjectType
End If ' End If
Next ' Next
Return Nothing ' Return Nothing
Catch ex As Exception ' Catch ex As Exception
LOGGER.Error(ex) ' LOGGER.Error(ex)
MsgBox("Es konnte ein Objekttyp nicht erstellt werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Exclamation, "Objekttyp konnte nicht erstellt werden") ' MsgBox("Es konnte ein Objekttyp nicht erstellt werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Exclamation, "Objekttyp konnte nicht erstellt werden")
Return Nothing ' Return Nothing
End Try ' End Try
End Function 'End Function
''' <summary> ''' <summary>
''' Überprüft ob der angegebene Index im Objekttyp existiert ''' Überprüft ob der angegebene Index im Objekttyp existiert

File diff suppressed because it is too large Load Diff

View File

@@ -5273,7 +5273,7 @@ Partial Public Class DD_DMSLiteDataSet
Me.columnTABLE_ORDER_COLUMN.DefaultValue = CType("",String) Me.columnTABLE_ORDER_COLUMN.DefaultValue = CType("",String)
Me.columnTABLE_ORDER_COLUMN.MaxLength = 250 Me.columnTABLE_ORDER_COLUMN.MaxLength = 250
Me.columnSAVE_CHANGE_ON_ENABLED.AllowDBNull = false Me.columnSAVE_CHANGE_ON_ENABLED.AllowDBNull = false
Me.columnFORMAT_STRING.AllowDBNull = false Me.columnFORMAT_STRING.DefaultValue = CType("",String)
Me.columnTEXT_ALIGNMENT.AllowDBNull = false Me.columnTEXT_ALIGNMENT.AllowDBNull = false
Me.columnTEXT_ALIGNMENT.DefaultValue = CType("Near",String) Me.columnTEXT_ALIGNMENT.DefaultValue = CType("Near",String)
Me.columnTEXT_ALIGNMENT.MaxLength = 20 Me.columnTEXT_ALIGNMENT.MaxLength = 20
@@ -5464,6 +5464,10 @@ Partial Public Class DD_DMSLiteDataSet
Private columnINHERIT_VALUE As Global.System.Data.DataColumn Private columnINHERIT_VALUE As Global.System.Data.DataColumn
Private columnFORMULA_EXPRESSION As Global.System.Data.DataColumn
Private columnFORMULA_SQL As Global.System.Data.DataColumn
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _ <Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _ Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public Sub New() Public Sub New()
@@ -5699,6 +5703,22 @@ Partial Public Class DD_DMSLiteDataSet
End Get End Get
End Property End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public ReadOnly Property FORMULA_EXPRESSIONColumn() As Global.System.Data.DataColumn
Get
Return Me.columnFORMULA_EXPRESSION
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public ReadOnly Property FORMULA_SQLColumn() As Global.System.Data.DataColumn
Get
Return Me.columnFORMULA_SQL
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _ <Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0"), _ Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0"), _
Global.System.ComponentModel.Browsable(false)> _ Global.System.ComponentModel.Browsable(false)> _
@@ -5760,9 +5780,11 @@ Partial Public Class DD_DMSLiteDataSet
ByVal SUMMARY_FUNCTION As String, _ ByVal SUMMARY_FUNCTION As String, _
ByVal TYPE_COLUMN As String, _ ByVal TYPE_COLUMN As String, _
ByVal LU_CAPTION As String, _ ByVal LU_CAPTION As String, _
ByVal INHERIT_VALUE As Boolean) As TBPM_CONTROL_TABLERow ByVal INHERIT_VALUE As Boolean, _
ByVal FORMULA_EXPRESSION As String, _
ByVal FORMULA_SQL As String) As TBPM_CONTROL_TABLERow
Dim rowTBPM_CONTROL_TABLERow As TBPM_CONTROL_TABLERow = CType(Me.NewRow,TBPM_CONTROL_TABLERow) Dim rowTBPM_CONTROL_TABLERow As TBPM_CONTROL_TABLERow = CType(Me.NewRow,TBPM_CONTROL_TABLERow)
Dim columnValuesArray() As Object = New Object() {Nothing, Nothing, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE} Dim columnValuesArray() As Object = New Object() {Nothing, Nothing, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE, FORMULA_EXPRESSION, FORMULA_SQL}
If (Not (parentTBPM_PROFILE_CONTROLSRowByFK_TBPM_CONTROL_TABLE_CONTROL1) Is Nothing) Then If (Not (parentTBPM_PROFILE_CONTROLSRowByFK_TBPM_CONTROL_TABLE_CONTROL1) Is Nothing) Then
columnValuesArray(1) = parentTBPM_PROFILE_CONTROLSRowByFK_TBPM_CONTROL_TABLE_CONTROL1(0) columnValuesArray(1) = parentTBPM_PROFILE_CONTROLSRowByFK_TBPM_CONTROL_TABLE_CONTROL1(0)
End If End If
@@ -5819,6 +5841,8 @@ Partial Public Class DD_DMSLiteDataSet
Me.columnTYPE_COLUMN = MyBase.Columns("TYPE_COLUMN") Me.columnTYPE_COLUMN = MyBase.Columns("TYPE_COLUMN")
Me.columnLU_CAPTION = MyBase.Columns("LU_CAPTION") Me.columnLU_CAPTION = MyBase.Columns("LU_CAPTION")
Me.columnINHERIT_VALUE = MyBase.Columns("INHERIT_VALUE") Me.columnINHERIT_VALUE = MyBase.Columns("INHERIT_VALUE")
Me.columnFORMULA_EXPRESSION = MyBase.Columns("FORMULA_EXPRESSION")
Me.columnFORMULA_SQL = MyBase.Columns("FORMULA_SQL")
End Sub End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _ <Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
@@ -5874,6 +5898,10 @@ Partial Public Class DD_DMSLiteDataSet
MyBase.Columns.Add(Me.columnLU_CAPTION) MyBase.Columns.Add(Me.columnLU_CAPTION)
Me.columnINHERIT_VALUE = New Global.System.Data.DataColumn("INHERIT_VALUE", GetType(Boolean), Nothing, Global.System.Data.MappingType.Element) Me.columnINHERIT_VALUE = New Global.System.Data.DataColumn("INHERIT_VALUE", GetType(Boolean), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnINHERIT_VALUE) MyBase.Columns.Add(Me.columnINHERIT_VALUE)
Me.columnFORMULA_EXPRESSION = New Global.System.Data.DataColumn("FORMULA_EXPRESSION", GetType(String), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnFORMULA_EXPRESSION)
Me.columnFORMULA_SQL = New Global.System.Data.DataColumn("FORMULA_SQL", GetType(String), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnFORMULA_SQL)
Me.Constraints.Add(New Global.System.Data.UniqueConstraint("Constraint1", New Global.System.Data.DataColumn() {Me.columnGUID}, true)) Me.Constraints.Add(New Global.System.Data.UniqueConstraint("Constraint1", New Global.System.Data.DataColumn() {Me.columnGUID}, true))
Me.columnGUID.AutoIncrement = true Me.columnGUID.AutoIncrement = true
Me.columnGUID.AllowDBNull = false Me.columnGUID.AllowDBNull = false
@@ -5916,6 +5944,12 @@ Partial Public Class DD_DMSLiteDataSet
Me.columnLU_CAPTION.MaxLength = 150 Me.columnLU_CAPTION.MaxLength = 150
Me.columnINHERIT_VALUE.AllowDBNull = false Me.columnINHERIT_VALUE.AllowDBNull = false
Me.columnINHERIT_VALUE.DefaultValue = CType(false,Boolean) Me.columnINHERIT_VALUE.DefaultValue = CType(false,Boolean)
Me.columnFORMULA_EXPRESSION.AllowDBNull = false
Me.columnFORMULA_EXPRESSION.DefaultValue = CType("",String)
Me.columnFORMULA_EXPRESSION.MaxLength = 1000
Me.columnFORMULA_SQL.AllowDBNull = false
Me.columnFORMULA_SQL.DefaultValue = CType("",String)
Me.columnFORMULA_SQL.MaxLength = 3000
End Sub End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _ <Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
@@ -12579,7 +12613,11 @@ Partial Public Class DD_DMSLiteDataSet
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _ Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public Property FORMAT_STRING() As String Public Property FORMAT_STRING() As String
Get Get
Return CType(Me(Me.tableTBPM_PROFILE_CONTROLS.FORMAT_STRINGColumn),String) Try
Return CType(Me(Me.tableTBPM_PROFILE_CONTROLS.FORMAT_STRINGColumn),String)
Catch e As Global.System.InvalidCastException
Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte FORMAT_STRING in Tabelle TBPM_PROFILE_CONTROLS ist DBNull.", e)
End Try
End Get End Get
Set Set
Me(Me.tableTBPM_PROFILE_CONTROLS.FORMAT_STRINGColumn) = value Me(Me.tableTBPM_PROFILE_CONTROLS.FORMAT_STRINGColumn) = value
@@ -12851,6 +12889,18 @@ Partial Public Class DD_DMSLiteDataSet
Me(Me.tableTBPM_PROFILE_CONTROLS.SQL_ENABLE_ON_LOAD_CONIDColumn) = Global.System.Convert.DBNull Me(Me.tableTBPM_PROFILE_CONTROLS.SQL_ENABLE_ON_LOAD_CONIDColumn) = Global.System.Convert.DBNull
End Sub End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public Function IsFORMAT_STRINGNull() As Boolean
Return Me.IsNull(Me.tableTBPM_PROFILE_CONTROLS.FORMAT_STRINGColumn)
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public Sub SetFORMAT_STRINGNull()
Me(Me.tableTBPM_PROFILE_CONTROLS.FORMAT_STRINGColumn) = Global.System.Convert.DBNull
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _ <Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _ Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public Function IsBACKCOLOR_IFNull() As Boolean Public Function IsBACKCOLOR_IFNull() As Boolean
@@ -13184,6 +13234,28 @@ Partial Public Class DD_DMSLiteDataSet
End Set End Set
End Property End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public Property FORMULA_EXPRESSION() As String
Get
Return CType(Me(Me.tableTBPM_CONTROL_TABLE.FORMULA_EXPRESSIONColumn),String)
End Get
Set
Me(Me.tableTBPM_CONTROL_TABLE.FORMULA_EXPRESSIONColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public Property FORMULA_SQL() As String
Get
Return CType(Me(Me.tableTBPM_CONTROL_TABLE.FORMULA_SQLColumn),String)
End Get
Set
Me(Me.tableTBPM_CONTROL_TABLE.FORMULA_SQLColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _ <Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _ Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
Public Property TBPM_PROFILE_CONTROLSRow() As TBPM_PROFILE_CONTROLSRow Public Property TBPM_PROFILE_CONTROLSRow() As TBPM_PROFILE_CONTROLSRow
@@ -20855,7 +20927,7 @@ Namespace DD_DMSLiteDataSetTableAdapters
End If End If
Me.Adapter.InsertCommand.Parameters(34).Value = CType(SAVE_CHANGE_ON_ENABLED,Boolean) Me.Adapter.InsertCommand.Parameters(34).Value = CType(SAVE_CHANGE_ON_ENABLED,Boolean)
If (FORMAT_STRING Is Nothing) Then If (FORMAT_STRING Is Nothing) Then
Throw New Global.System.ArgumentNullException("FORMAT_STRING") Me.Adapter.InsertCommand.Parameters(35).Value = Global.System.DBNull.Value
Else Else
Me.Adapter.InsertCommand.Parameters(35).Value = CType(FORMAT_STRING,String) Me.Adapter.InsertCommand.Parameters(35).Value = CType(FORMAT_STRING,String)
End If End If
@@ -21033,7 +21105,7 @@ Namespace DD_DMSLiteDataSetTableAdapters
End If End If
Me.Adapter.UpdateCommand.Parameters(31).Value = CType(SAVE_CHANGE_ON_ENABLED,Boolean) Me.Adapter.UpdateCommand.Parameters(31).Value = CType(SAVE_CHANGE_ON_ENABLED,Boolean)
If (FORMAT_STRING Is Nothing) Then If (FORMAT_STRING Is Nothing) Then
Throw New Global.System.ArgumentNullException("FORMAT_STRING") Me.Adapter.UpdateCommand.Parameters(32).Value = Global.System.DBNull.Value
Else Else
Me.Adapter.UpdateCommand.Parameters(32).Value = CType(FORMAT_STRING,String) Me.Adapter.UpdateCommand.Parameters(32).Value = CType(FORMAT_STRING,String)
End If End If
@@ -21491,6 +21563,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
tableMapping.ColumnMappings.Add("TYPE_COLUMN", "TYPE_COLUMN") tableMapping.ColumnMappings.Add("TYPE_COLUMN", "TYPE_COLUMN")
tableMapping.ColumnMappings.Add("LU_CAPTION", "LU_CAPTION") tableMapping.ColumnMappings.Add("LU_CAPTION", "LU_CAPTION")
tableMapping.ColumnMappings.Add("INHERIT_VALUE", "INHERIT_VALUE") tableMapping.ColumnMappings.Add("INHERIT_VALUE", "INHERIT_VALUE")
tableMapping.ColumnMappings.Add("FORMULA_EXPRESSION", "FORMULA_EXPRESSION")
tableMapping.ColumnMappings.Add("FORMULA_SQL", "FORMULA_SQL")
Me._adapter.TableMappings.Add(tableMapping) Me._adapter.TableMappings.Add(tableMapping)
Me._adapter.DeleteCommand = New Global.System.Data.SqlClient.SqlCommand() Me._adapter.DeleteCommand = New Global.System.Data.SqlClient.SqlCommand()
Me._adapter.DeleteCommand.Connection = Me.Connection Me._adapter.DeleteCommand.Connection = Me.Connection
@@ -21527,12 +21601,13 @@ Namespace DD_DMSLiteDataSetTableAdapters
"ESSAGE_EN, REGEX_MESSAGE_DE = @REGEX_MESSAGE_DE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" SEQU"& _ "ESSAGE_EN, REGEX_MESSAGE_DE = @REGEX_MESSAGE_DE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" SEQU"& _
"ENCE = @SEQUENCE, DEFAULT_VALUE = @DEFAULT_VALUE, ADVANCED_LOOKUP = @ADVANCED_LO"& _ "ENCE = @SEQUENCE, DEFAULT_VALUE = @DEFAULT_VALUE, ADVANCED_LOOKUP = @ADVANCED_LO"& _
"OKUP, SAVE_CHANGE_ON_ENABLED = @SAVE_CHANGE_ON_ENABLED, INHERIT_VALUE = @INHERIT"& _ "OKUP, SAVE_CHANGE_ON_ENABLED = @SAVE_CHANGE_ON_ENABLED, INHERIT_VALUE = @INHERIT"& _
"_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" LU_CAPTION = @LU_CAPTION"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GUID "& _ "_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" LU_CAPTION = @LU_CAPTION, FORMULA_EXPRESSION "& _
"= @Original_GUID); "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SP"& _ "= @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA_SQL"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GUID = @Origina"& _
"ALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOA"& _ "l_GUID); "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBRE"& _
"D_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGE"& _ "ITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VA"& _
"X_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP FROM TB"& _ "LUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAG"& _
"PM_CONTROL_TABLE WHERE (GUID = @GUID)" "E_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP FROM TBPM_CONTR"& _
"OL_TABLE WHERE (GUID = @GUID)"
Me._adapter.UpdateCommand.CommandType = Global.System.Data.CommandType.Text Me._adapter.UpdateCommand.CommandType = Global.System.Data.CommandType.Text
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CONTROL_ID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "CONTROL_ID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CONTROL_ID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "CONTROL_ID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SPALTENNAME", Global.System.Data.SqlDbType.VarChar, 100, Global.System.Data.ParameterDirection.Input, 0, 0, "SPALTENNAME", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SPALTENNAME", Global.System.Data.SqlDbType.VarChar, 100, Global.System.Data.ParameterDirection.Input, 0, 0, "SPALTENNAME", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
@@ -21557,6 +21632,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SAVE_CHANGE_ON_ENABLED", Global.System.Data.SqlDbType.[Variant], 1024, Global.System.Data.ParameterDirection.Input, 0, 0, "SAVE_CHANGE_ON_ENABLED", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SAVE_CHANGE_ON_ENABLED", Global.System.Data.SqlDbType.[Variant], 1024, Global.System.Data.ParameterDirection.Input, 0, 0, "SAVE_CHANGE_ON_ENABLED", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@INHERIT_VALUE", Global.System.Data.SqlDbType.Bit, 1, Global.System.Data.ParameterDirection.Input, 0, 0, "INHERIT_VALUE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@INHERIT_VALUE", Global.System.Data.SqlDbType.Bit, 1, Global.System.Data.ParameterDirection.Input, 0, 0, "INHERIT_VALUE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@LU_CAPTION", Global.System.Data.SqlDbType.VarChar, 150, Global.System.Data.ParameterDirection.Input, 0, 0, "LU_CAPTION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@LU_CAPTION", Global.System.Data.SqlDbType.VarChar, 150, Global.System.Data.ParameterDirection.Input, 0, 0, "LU_CAPTION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@FORMULA_EXPRESSION", Global.System.Data.SqlDbType.NVarChar, 1000, Global.System.Data.ParameterDirection.Input, 0, 0, "FORMULA_EXPRESSION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@FORMULA_SQL", Global.System.Data.SqlDbType.NVarChar, 3000, Global.System.Data.ParameterDirection.Input, 0, 0, "FORMULA_SQL", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", ""))
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", ""))
End Sub End Sub
@@ -21578,8 +21655,9 @@ Namespace DD_DMSLiteDataSetTableAdapters
"ATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED"& _ "ATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED"& _
"_WHO, ADDED_WHEN, CHANGED_WHO, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" CHANGED_WHEN, REGEX_MA"& _ "_WHO, ADDED_WHEN, CHANGED_WHO, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" CHANGED_WHEN, REGEX_MA"& _
"TCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKU"& _ "TCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKU"& _
"P, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBP"& _ "P, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" "& _
"M_CONTROL_TABLE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (CONTROL_ID = @CONTROL_ID)" " FORMULA_EXPRESSION, FORMULA_SQL"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBPM_CONTROL_TABLE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHE"& _
"RE (CONTROL_ID = @CONTROL_ID)"
Me._commandCollection(0).CommandType = Global.System.Data.CommandType.Text Me._commandCollection(0).CommandType = Global.System.Data.CommandType.Text
Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CONTROL_ID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "CONTROL_ID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CONTROL_ID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "CONTROL_ID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._commandCollection(1) = New Global.System.Data.SqlClient.SqlCommand() Me._commandCollection(1) = New Global.System.Data.SqlClient.SqlCommand()
@@ -21592,7 +21670,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
"E = @DEFAULT_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" SEQUENCE = @SEQUENCE, ADVANCED_LO"& _ "E = @DEFAULT_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" SEQUENCE = @SEQUENCE, ADVANCED_LO"& _
"OKUP = @ADVANCED_LOOKUP, SUMMARY_FUNCTION = @SUMMARY_FUNCTION, TYPE_COLUMN = @TY"& _ "OKUP = @ADVANCED_LOOKUP, SUMMARY_FUNCTION = @SUMMARY_FUNCTION, TYPE_COLUMN = @TY"& _
"PE_COLUMN, LU_CAPTION = @LU_CAPTION, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" INHERIT_VALUE = "& _ "PE_COLUMN, LU_CAPTION = @LU_CAPTION, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" INHERIT_VALUE = "& _
"@INHERIT_VALUE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GUID = @Original_GUID)" "@INHERIT_VALUE, FORMULA_EXPRESSION = @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA"& _
"_SQL"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GUID = @Original_GUID)"
Me._commandCollection(1).CommandType = Global.System.Data.CommandType.Text Me._commandCollection(1).CommandType = Global.System.Data.CommandType.Text
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SPALTENNAME", Global.System.Data.SqlDbType.VarChar, 100, Global.System.Data.ParameterDirection.Input, 0, 0, "SPALTENNAME", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SPALTENNAME", Global.System.Data.SqlDbType.VarChar, 100, Global.System.Data.ParameterDirection.Input, 0, 0, "SPALTENNAME", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SPALTEN_HEADER", Global.System.Data.SqlDbType.VarChar, 100, Global.System.Data.ParameterDirection.Input, 0, 0, "SPALTEN_HEADER", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SPALTEN_HEADER", Global.System.Data.SqlDbType.VarChar, 100, Global.System.Data.ParameterDirection.Input, 0, 0, "SPALTEN_HEADER", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
@@ -21611,6 +21690,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@TYPE_COLUMN", Global.System.Data.SqlDbType.VarChar, 20, Global.System.Data.ParameterDirection.Input, 0, 0, "TYPE_COLUMN", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@TYPE_COLUMN", Global.System.Data.SqlDbType.VarChar, 20, Global.System.Data.ParameterDirection.Input, 0, 0, "TYPE_COLUMN", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@LU_CAPTION", Global.System.Data.SqlDbType.VarChar, 150, Global.System.Data.ParameterDirection.Input, 0, 0, "LU_CAPTION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@LU_CAPTION", Global.System.Data.SqlDbType.VarChar, 150, Global.System.Data.ParameterDirection.Input, 0, 0, "LU_CAPTION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@INHERIT_VALUE", Global.System.Data.SqlDbType.Bit, 1, Global.System.Data.ParameterDirection.Input, 0, 0, "INHERIT_VALUE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@INHERIT_VALUE", Global.System.Data.SqlDbType.Bit, 1, Global.System.Data.ParameterDirection.Input, 0, 0, "INHERIT_VALUE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@FORMULA_EXPRESSION", Global.System.Data.SqlDbType.NVarChar, 1000, Global.System.Data.ParameterDirection.Input, 0, 0, "FORMULA_EXPRESSION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@FORMULA_SQL", Global.System.Data.SqlDbType.NVarChar, 3000, Global.System.Data.ParameterDirection.Input, 0, 0, "FORMULA_SQL", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", "")) Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", ""))
Me._commandCollection(2) = New Global.System.Data.SqlClient.SqlCommand() Me._commandCollection(2) = New Global.System.Data.SqlClient.SqlCommand()
Me._commandCollection(2).Connection = Me.Connection Me._commandCollection(2).Connection = Me.Connection
@@ -21623,8 +21704,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
"CHOICE_LIST, CONNECTION_ID, CONTROL_ID, DEFAULT_VALUE, GUID, LOAD_IDX_VALUE, REA"& _ "CHOICE_LIST, CONNECTION_ID, CONTROL_ID, DEFAULT_VALUE, GUID, LOAD_IDX_VALUE, REA"& _
"D_ONLY, REGEX_MATCH, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" REGEX_MESSAGE_DE, REGEX_MESSAGE_"& _ "D_ONLY, REGEX_MATCH, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" REGEX_MESSAGE_DE, REGEX_MESSAGE_"& _
"EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATIO"& _ "EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATIO"& _
"N, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBPM_CONTROL_TABLE"& _ "N, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" "& _
"" " FORMULA_EXPRESSION"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBPM_CONTROL_TABLE"
Me._commandCollection(3).CommandType = Global.System.Data.CommandType.Text Me._commandCollection(3).CommandType = Global.System.Data.CommandType.Text
Me._commandCollection(4) = New Global.System.Data.SqlClient.SqlCommand() Me._commandCollection(4) = New Global.System.Data.SqlClient.SqlCommand()
Me._commandCollection(4).Connection = Me.Connection Me._commandCollection(4).Connection = Me.Connection
@@ -21632,8 +21713,9 @@ Namespace DD_DMSLiteDataSetTableAdapters
"CHOICE_LIST, CONNECTION_ID, CONTROL_ID, DEFAULT_VALUE, GUID, LOAD_IDX_VALUE, REA"& _ "CHOICE_LIST, CONNECTION_ID, CONTROL_ID, DEFAULT_VALUE, GUID, LOAD_IDX_VALUE, REA"& _
"D_ONLY, REGEX_MATCH, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" REGEX_MESSAGE_DE, REGEX_MESSAGE_"& _ "D_ONLY, REGEX_MATCH, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" REGEX_MESSAGE_DE, REGEX_MESSAGE_"& _
"EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATIO"& _ "EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATIO"& _
"N, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBP"& _ "N, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" "& _
"M_CONTROL_TABLE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GUID = @GUID)" " FORMULA_EXPRESSION, FORMULA_SQL"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBPM_CONTROL_TABLE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHE"& _
"RE (GUID = @GUID)"
Me._commandCollection(4).CommandType = Global.System.Data.CommandType.Text Me._commandCollection(4).CommandType = Global.System.Data.CommandType.Text
Me._commandCollection(4).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) Me._commandCollection(4).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
Me._commandCollection(5) = New Global.System.Data.SqlClient.SqlCommand() Me._commandCollection(5) = New Global.System.Data.SqlClient.SqlCommand()
@@ -21841,6 +21923,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
ByVal SAVE_CHANGE_ON_ENABLED As Object, _ ByVal SAVE_CHANGE_ON_ENABLED As Object, _
ByVal INHERIT_VALUE As Boolean, _ ByVal INHERIT_VALUE As Boolean, _
ByVal LU_CAPTION As String, _ ByVal LU_CAPTION As String, _
ByVal FORMULA_EXPRESSION As String, _
ByVal FORMULA_SQL As String, _
ByVal Original_GUID As Integer, _ ByVal Original_GUID As Integer, _
ByVal GUID As Integer) As Integer ByVal GUID As Integer) As Integer
Me.Adapter.UpdateCommand.Parameters(0).Value = CType(CONTROL_ID,Integer) Me.Adapter.UpdateCommand.Parameters(0).Value = CType(CONTROL_ID,Integer)
@@ -21922,8 +22006,18 @@ Namespace DD_DMSLiteDataSetTableAdapters
Else Else
Me.Adapter.UpdateCommand.Parameters(22).Value = CType(LU_CAPTION,String) Me.Adapter.UpdateCommand.Parameters(22).Value = CType(LU_CAPTION,String)
End If End If
Me.Adapter.UpdateCommand.Parameters(23).Value = CType(Original_GUID,Integer) If (FORMULA_EXPRESSION Is Nothing) Then
Me.Adapter.UpdateCommand.Parameters(24).Value = CType(GUID,Integer) Throw New Global.System.ArgumentNullException("FORMULA_EXPRESSION")
Else
Me.Adapter.UpdateCommand.Parameters(23).Value = CType(FORMULA_EXPRESSION,String)
End If
If (FORMULA_SQL Is Nothing) Then
Throw New Global.System.ArgumentNullException("FORMULA_SQL")
Else
Me.Adapter.UpdateCommand.Parameters(24).Value = CType(FORMULA_SQL,String)
End If
Me.Adapter.UpdateCommand.Parameters(25).Value = CType(Original_GUID,Integer)
Me.Adapter.UpdateCommand.Parameters(26).Value = CType(GUID,Integer)
Dim previousConnectionState As Global.System.Data.ConnectionState = Me.Adapter.UpdateCommand.Connection.State Dim previousConnectionState As Global.System.Data.ConnectionState = Me.Adapter.UpdateCommand.Connection.State
If ((Me.Adapter.UpdateCommand.Connection.State And Global.System.Data.ConnectionState.Open) _ If ((Me.Adapter.UpdateCommand.Connection.State And Global.System.Data.ConnectionState.Open) _
<> Global.System.Data.ConnectionState.Open) Then <> Global.System.Data.ConnectionState.Open) Then
@@ -21960,6 +22054,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
ByVal TYPE_COLUMN As String, _ ByVal TYPE_COLUMN As String, _
ByVal LU_CAPTION As String, _ ByVal LU_CAPTION As String, _
ByVal INHERIT_VALUE As Boolean, _ ByVal INHERIT_VALUE As Boolean, _
ByVal FORMULA_EXPRESSION As String, _
ByVal FORMULA_SQL As String, _
ByVal Original_GUID As Integer) As Object ByVal Original_GUID As Integer) As Object
Dim command As Global.System.Data.SqlClient.SqlCommand = Me.CommandCollection(1) Dim command As Global.System.Data.SqlClient.SqlCommand = Me.CommandCollection(1)
If (SPALTENNAME Is Nothing) Then If (SPALTENNAME Is Nothing) Then
@@ -22019,7 +22115,17 @@ Namespace DD_DMSLiteDataSetTableAdapters
command.Parameters(15).Value = CType(LU_CAPTION,String) command.Parameters(15).Value = CType(LU_CAPTION,String)
End If End If
command.Parameters(16).Value = CType(INHERIT_VALUE,Boolean) command.Parameters(16).Value = CType(INHERIT_VALUE,Boolean)
command.Parameters(17).Value = CType(Original_GUID,Integer) If (FORMULA_EXPRESSION Is Nothing) Then
Throw New Global.System.ArgumentNullException("FORMULA_EXPRESSION")
Else
command.Parameters(17).Value = CType(FORMULA_EXPRESSION,String)
End If
If (FORMULA_SQL Is Nothing) Then
Throw New Global.System.ArgumentNullException("FORMULA_SQL")
Else
command.Parameters(18).Value = CType(FORMULA_SQL,String)
End If
command.Parameters(19).Value = CType(Original_GUID,Integer)
Dim previousConnectionState As Global.System.Data.ConnectionState = command.Connection.State Dim previousConnectionState As Global.System.Data.ConnectionState = command.Connection.State
If ((command.Connection.State And Global.System.Data.ConnectionState.Open) _ If ((command.Connection.State And Global.System.Data.ConnectionState.Open) _
<> Global.System.Data.ConnectionState.Open) Then <> Global.System.Data.ConnectionState.Open) Then

View File

@@ -1011,7 +1011,7 @@ SELECT GUID, PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, ADD
<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="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="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="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="false" 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="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="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> </Parameters>
</DbCommand> </DbCommand>
@@ -1074,7 +1074,7 @@ SELECT GUID, PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, ADD
<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="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="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="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="false" 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="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="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="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" /> <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" />
@@ -1299,26 +1299,27 @@ WHERE (GUID = @Original_GUID)</CommandText>
</DbCommand> </DbCommand>
</DeleteCommand> </DeleteCommand>
<InsertCommand> <InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="true"> <DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>INSERT INTO TBPM_CONTROL_TABLE <CommandText>INSERT INTO TBPM_CONTROL_TABLE
(CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, ADDED_WHO, TYPE_COLUMN, INHERIT_VALUE) (CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, ADDED_WHO, TYPE_COLUMN, INHERIT_VALUE)
VALUES (@CONTROL_ID,@SPALTENNAME,@SPALTEN_HEADER,@SPALTENBREITE,@ADDED_WHO,@TYPE_COLUMN,@INHERIT_VALUE); VALUES (@CONTROL_ID,@SPALTENNAME,@SPALTEN_HEADER,@SPALTENBREITE,@ADDED_WHO,@TYPE_COLUMN,@INHERIT_VALUE);
SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP FROM TBPM_CONTROL_TABLE WHERE (GUID = SCOPE_IDENTITY())</CommandText> SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP FROM TBPM_CONTROL_TABLE WHERE (GUID = SCOPE_IDENTITY())</CommandText>
<Parameters> <Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="CONTROL_ID" ColumnName="CONTROL_ID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@CONTROL_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="CONTROL_ID" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="CONTROL_ID" ColumnName="CONTROL_ID" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@CONTROL_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="CONTROL_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="SPALTENNAME" ColumnName="SPALTENNAME" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@SPALTENNAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="SPALTENNAME" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="SPALTENNAME" ColumnName="SPALTENNAME" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@SPALTENNAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="SPALTENNAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="SPALTEN_HEADER" ColumnName="SPALTEN_HEADER" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@SPALTEN_HEADER" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="SPALTEN_HEADER" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="SPALTEN_HEADER" ColumnName="SPALTEN_HEADER" DataSourceName="" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@SPALTEN_HEADER" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="SPALTEN_HEADER" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="SPALTENBREITE" ColumnName="SPALTENBREITE" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@SPALTENBREITE" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="SPALTENBREITE" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="SPALTENBREITE" ColumnName="SPALTENBREITE" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@SPALTENBREITE" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="SPALTENBREITE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ADDED_WHO" ColumnName="ADDED_WHO" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" 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_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="TYPE_COLUMN" ColumnName="TYPE_COLUMN" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(20)" DbType="AnsiString" Direction="Input" ParameterName="@TYPE_COLUMN" Precision="0" ProviderType="VarChar" Scale="0" Size="20" SourceColumn="TYPE_COLUMN" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="TYPE_COLUMN" ColumnName="TYPE_COLUMN" DataSourceName="" DataTypeServer="varchar(20)" DbType="AnsiString" Direction="Input" ParameterName="@TYPE_COLUMN" Precision="0" ProviderType="VarChar" Scale="0" Size="20" SourceColumn="TYPE_COLUMN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="INHERIT_VALUE" ColumnName="INHERIT_VALUE" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@INHERIT_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="INHERIT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="INHERIT_VALUE" ColumnName="INHERIT_VALUE" DataSourceName="" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@INHERIT_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="INHERIT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters> </Parameters>
</DbCommand> </DbCommand>
</InsertCommand> </InsertCommand>
<SelectCommand> <SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="false"> <DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, <CommandText>SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO,
CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE,
FORMULA_EXPRESSION, FORMULA_SQL
FROM TBPM_CONTROL_TABLE FROM TBPM_CONTROL_TABLE
WHERE (CONTROL_ID = @CONTROL_ID)</CommandText> WHERE (CONTROL_ID = @CONTROL_ID)</CommandText>
<Parameters> <Parameters>
@@ -1333,8 +1334,8 @@ SET CONTROL_ID = @CONTROL_ID, SPALTENNAME = @SPALTENNAME, SPALTEN
CONNECTION_ID = @CONNECTION_ID, SQL_COMMAND = @SQL_COMMAND, READ_ONLY = @READ_ONLY, LOAD_IDX_VALUE = @LOAD_IDX_VALUE, ADDED_WHO = @ADDED_WHO, ADDED_WHEN = @ADDED_WHEN, CONNECTION_ID = @CONNECTION_ID, SQL_COMMAND = @SQL_COMMAND, READ_ONLY = @READ_ONLY, LOAD_IDX_VALUE = @LOAD_IDX_VALUE, ADDED_WHO = @ADDED_WHO, ADDED_WHEN = @ADDED_WHEN,
CHANGED_WHO = @CHANGED_WHO, CHANGED_WHEN = @CHANGED_WHEN, REGEX_MATCH = @REGEX_MATCH, REGEX_MESSAGE_EN = @REGEX_MESSAGE_EN, REGEX_MESSAGE_DE = @REGEX_MESSAGE_DE, CHANGED_WHO = @CHANGED_WHO, CHANGED_WHEN = @CHANGED_WHEN, REGEX_MATCH = @REGEX_MATCH, REGEX_MESSAGE_EN = @REGEX_MESSAGE_EN, REGEX_MESSAGE_DE = @REGEX_MESSAGE_DE,
SEQUENCE = @SEQUENCE, DEFAULT_VALUE = @DEFAULT_VALUE, ADVANCED_LOOKUP = @ADVANCED_LOOKUP, SAVE_CHANGE_ON_ENABLED = @SAVE_CHANGE_ON_ENABLED, INHERIT_VALUE = @INHERIT_VALUE, SEQUENCE = @SEQUENCE, DEFAULT_VALUE = @DEFAULT_VALUE, ADVANCED_LOOKUP = @ADVANCED_LOOKUP, SAVE_CHANGE_ON_ENABLED = @SAVE_CHANGE_ON_ENABLED, INHERIT_VALUE = @INHERIT_VALUE,
LU_CAPTION = @LU_CAPTION LU_CAPTION = @LU_CAPTION, FORMULA_EXPRESSION = @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA_SQL
WHERE (GUID = @Original_GUID); WHERE (GUID = @Original_GUID);
SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP FROM TBPM_CONTROL_TABLE WHERE (GUID = @GUID)</CommandText> SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP FROM TBPM_CONTROL_TABLE WHERE (GUID = @GUID)</CommandText>
<Parameters> <Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="CONTROL_ID" ColumnName="CONTROL_ID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@CONTROL_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="CONTROL_ID" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="CONTROL_ID" ColumnName="CONTROL_ID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@CONTROL_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="CONTROL_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -1360,6 +1361,8 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
<Parameter AllowDbNull="false" AutogeneratedName="SAVE_CHANGE_ON_ENABLED" ColumnName="SAVE_CHANGE_ON_ENABLED" DataSourceName="" DataTypeServer="unknown" DbType="Object" Direction="Input" ParameterName="@SAVE_CHANGE_ON_ENABLED" Precision="0" Scale="0" Size="1024" SourceColumn="SAVE_CHANGE_ON_ENABLED" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="SAVE_CHANGE_ON_ENABLED" ColumnName="SAVE_CHANGE_ON_ENABLED" DataSourceName="" DataTypeServer="unknown" DbType="Object" Direction="Input" ParameterName="@SAVE_CHANGE_ON_ENABLED" Precision="0" Scale="0" Size="1024" SourceColumn="SAVE_CHANGE_ON_ENABLED" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="INHERIT_VALUE" ColumnName="INHERIT_VALUE" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@INHERIT_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="INHERIT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="INHERIT_VALUE" ColumnName="INHERIT_VALUE" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@INHERIT_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="INHERIT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="LU_CAPTION" ColumnName="LU_CAPTION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(150)" DbType="AnsiString" Direction="Input" ParameterName="@LU_CAPTION" Precision="0" ProviderType="VarChar" Scale="0" Size="150" SourceColumn="LU_CAPTION" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="LU_CAPTION" ColumnName="LU_CAPTION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(150)" DbType="AnsiString" Direction="Input" ParameterName="@LU_CAPTION" Precision="0" ProviderType="VarChar" Scale="0" Size="150" SourceColumn="LU_CAPTION" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="FORMULA_EXPRESSION" ColumnName="FORMULA_EXPRESSION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="nvarchar(1000)" DbType="String" Direction="Input" ParameterName="@FORMULA_EXPRESSION" Precision="0" ProviderType="NVarChar" Scale="0" Size="1000" SourceColumn="FORMULA_EXPRESSION" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="FORMULA_SQL" ColumnName="FORMULA_SQL" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="nvarchar(3000)" DbType="String" Direction="Input" ParameterName="@FORMULA_SQL" Precision="0" ProviderType="NVarChar" Scale="0" Size="3000" SourceColumn="FORMULA_SQL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" 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="Original_GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" 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_CONTROL_TABLE" 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="GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters> </Parameters>
@@ -1393,6 +1396,8 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
<Mapping SourceColumn="TYPE_COLUMN" DataSetColumn="TYPE_COLUMN" /> <Mapping SourceColumn="TYPE_COLUMN" DataSetColumn="TYPE_COLUMN" />
<Mapping SourceColumn="LU_CAPTION" DataSetColumn="LU_CAPTION" /> <Mapping SourceColumn="LU_CAPTION" DataSetColumn="LU_CAPTION" />
<Mapping SourceColumn="INHERIT_VALUE" DataSetColumn="INHERIT_VALUE" /> <Mapping SourceColumn="INHERIT_VALUE" DataSetColumn="INHERIT_VALUE" />
<Mapping SourceColumn="FORMULA_EXPRESSION" DataSetColumn="FORMULA_EXPRESSION" />
<Mapping SourceColumn="FORMULA_SQL" DataSetColumn="FORMULA_SQL" />
</Mappings> </Mappings>
<Sources> <Sources>
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM_TEST.dbo.TBPM_CONTROL_TABLE" DbObjectType="Table" GenerateShortCommands="true" GeneratorSourceName="cmdUpdate" Modifier="Public" Name="cmdUpdate" QueryType="Scalar" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy" UserSourceName="cmdUpdate"> <DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM_TEST.dbo.TBPM_CONTROL_TABLE" DbObjectType="Table" GenerateShortCommands="true" GeneratorSourceName="cmdUpdate" Modifier="Public" Name="cmdUpdate" QueryType="Scalar" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy" UserSourceName="cmdUpdate">
@@ -1402,7 +1407,7 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
SET SPALTENNAME = @SPALTENNAME, SPALTEN_HEADER = @SPALTEN_HEADER, SPALTENBREITE = @SPALTENBREITE, VALIDATION = @VALIDATION, READ_ONLY = @READ_ONLY, LOAD_IDX_VALUE = @LOAD_IDX_VALUE, SET SPALTENNAME = @SPALTENNAME, SPALTEN_HEADER = @SPALTEN_HEADER, SPALTENBREITE = @SPALTENBREITE, VALIDATION = @VALIDATION, READ_ONLY = @READ_ONLY, LOAD_IDX_VALUE = @LOAD_IDX_VALUE,
CHANGED_WHO = @CHANGED_WHO, REGEX_MATCH = @REGEX_MATCH, REGEX_MESSAGE_EN = @REGEX_MESSAGE_EN, REGEX_MESSAGE_DE = @REGEX_MESSAGE_DE, DEFAULT_VALUE = @DEFAULT_VALUE, CHANGED_WHO = @CHANGED_WHO, REGEX_MATCH = @REGEX_MATCH, REGEX_MESSAGE_EN = @REGEX_MESSAGE_EN, REGEX_MESSAGE_DE = @REGEX_MESSAGE_DE, DEFAULT_VALUE = @DEFAULT_VALUE,
SEQUENCE = @SEQUENCE, ADVANCED_LOOKUP = @ADVANCED_LOOKUP, SUMMARY_FUNCTION = @SUMMARY_FUNCTION, TYPE_COLUMN = @TYPE_COLUMN, LU_CAPTION = @LU_CAPTION, SEQUENCE = @SEQUENCE, ADVANCED_LOOKUP = @ADVANCED_LOOKUP, SUMMARY_FUNCTION = @SUMMARY_FUNCTION, TYPE_COLUMN = @TYPE_COLUMN, LU_CAPTION = @LU_CAPTION,
INHERIT_VALUE = @INHERIT_VALUE INHERIT_VALUE = @INHERIT_VALUE, FORMULA_EXPRESSION = @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA_SQL
WHERE (GUID = @Original_GUID)</CommandText> WHERE (GUID = @Original_GUID)</CommandText>
<Parameters> <Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="SPALTENNAME" ColumnName="SPALTENNAME" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@SPALTENNAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="SPALTENNAME" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="SPALTENNAME" ColumnName="SPALTENNAME" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@SPALTENNAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="SPALTENNAME" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -1422,6 +1427,8 @@ WHERE (GUID = @Original_GUID)</CommandText>
<Parameter AllowDbNull="false" AutogeneratedName="TYPE_COLUMN" ColumnName="TYPE_COLUMN" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(20)" DbType="AnsiString" Direction="Input" ParameterName="@TYPE_COLUMN" Precision="0" ProviderType="VarChar" Scale="0" Size="20" SourceColumn="TYPE_COLUMN" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="TYPE_COLUMN" ColumnName="TYPE_COLUMN" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(20)" DbType="AnsiString" Direction="Input" ParameterName="@TYPE_COLUMN" Precision="0" ProviderType="VarChar" Scale="0" Size="20" SourceColumn="TYPE_COLUMN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="LU_CAPTION" ColumnName="LU_CAPTION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(150)" DbType="AnsiString" Direction="Input" ParameterName="@LU_CAPTION" Precision="0" ProviderType="VarChar" Scale="0" Size="150" SourceColumn="LU_CAPTION" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="LU_CAPTION" ColumnName="LU_CAPTION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(150)" DbType="AnsiString" Direction="Input" ParameterName="@LU_CAPTION" Precision="0" ProviderType="VarChar" Scale="0" Size="150" SourceColumn="LU_CAPTION" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="INHERIT_VALUE" ColumnName="INHERIT_VALUE" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@INHERIT_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="INHERIT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="false" AutogeneratedName="INHERIT_VALUE" ColumnName="INHERIT_VALUE" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@INHERIT_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="INHERIT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="FORMULA_EXPRESSION" ColumnName="FORMULA_EXPRESSION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="nvarchar(1000)" DbType="String" Direction="Input" ParameterName="@FORMULA_EXPRESSION" Precision="0" ProviderType="NVarChar" Scale="0" Size="1000" SourceColumn="FORMULA_EXPRESSION" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="FORMULA_SQL" ColumnName="FORMULA_SQL" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="nvarchar(3000)" DbType="String" Direction="Input" ParameterName="@FORMULA_SQL" Precision="0" ProviderType="NVarChar" Scale="0" Size="3000" SourceColumn="FORMULA_SQL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" 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="Original_GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters> </Parameters>
</DbCommand> </DbCommand>
@@ -1442,7 +1449,8 @@ WHERE (CONTROL_ID = @CONTROL_ID)</CommandText>
<SelectCommand> <SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true"> <DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT ADDED_WHEN, ADDED_WHO, ADVANCED_LOOKUP, CHANGED_WHEN, CHANGED_WHO, CHOICE_LIST, CONNECTION_ID, CONTROL_ID, DEFAULT_VALUE, GUID, LOAD_IDX_VALUE, READ_ONLY, REGEX_MATCH, <CommandText>SELECT ADDED_WHEN, ADDED_WHO, ADVANCED_LOOKUP, CHANGED_WHEN, CHANGED_WHO, CHOICE_LIST, CONNECTION_ID, CONTROL_ID, DEFAULT_VALUE, GUID, LOAD_IDX_VALUE, READ_ONLY, REGEX_MATCH,
REGEX_MESSAGE_DE, REGEX_MESSAGE_EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATION, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION REGEX_MESSAGE_DE, REGEX_MESSAGE_EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATION, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE,
FORMULA_EXPRESSION
FROM TBPM_CONTROL_TABLE</CommandText> FROM TBPM_CONTROL_TABLE</CommandText>
<Parameters /> <Parameters />
</DbCommand> </DbCommand>
@@ -1452,7 +1460,8 @@ FROM TBPM_CONTROL_TABLE</CommandText>
<SelectCommand> <SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true"> <DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT ADDED_WHEN, ADDED_WHO, ADVANCED_LOOKUP, CHANGED_WHEN, CHANGED_WHO, CHOICE_LIST, CONNECTION_ID, CONTROL_ID, DEFAULT_VALUE, GUID, LOAD_IDX_VALUE, READ_ONLY, REGEX_MATCH, <CommandText>SELECT ADDED_WHEN, ADDED_WHO, ADVANCED_LOOKUP, CHANGED_WHEN, CHANGED_WHO, CHOICE_LIST, CONNECTION_ID, CONTROL_ID, DEFAULT_VALUE, GUID, LOAD_IDX_VALUE, READ_ONLY, REGEX_MATCH,
REGEX_MESSAGE_DE, REGEX_MESSAGE_EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATION, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE REGEX_MESSAGE_DE, REGEX_MESSAGE_EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATION, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE,
FORMULA_EXPRESSION, FORMULA_SQL
FROM TBPM_CONTROL_TABLE FROM TBPM_CONTROL_TABLE
WHERE (GUID = @GUID)</CommandText> WHERE (GUID = @GUID)</CommandText>
<Parameters> <Parameters>
@@ -2694,7 +2703,7 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
</xs:simpleType> </xs:simpleType>
</xs:element> </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="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" /> <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="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: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> <xs:simpleType>
@@ -2806,6 +2815,20 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
</xs:simpleType> </xs:simpleType>
</xs:element> </xs:element>
<xs:element name="INHERIT_VALUE" msprop:Generator_ColumnPropNameInTable="INHERIT_VALUEColumn" msprop:Generator_ColumnPropNameInRow="INHERIT_VALUE" msprop:Generator_UserColumnName="INHERIT_VALUE" msprop:Generator_ColumnVarNameInTable="columnINHERIT_VALUE" type="xs:boolean" default="false" /> <xs:element name="INHERIT_VALUE" msprop:Generator_ColumnPropNameInTable="INHERIT_VALUEColumn" msprop:Generator_ColumnPropNameInRow="INHERIT_VALUE" msprop:Generator_UserColumnName="INHERIT_VALUE" msprop:Generator_ColumnVarNameInTable="columnINHERIT_VALUE" type="xs:boolean" default="false" />
<xs:element name="FORMULA_EXPRESSION" msprop:Generator_ColumnPropNameInTable="FORMULA_EXPRESSIONColumn" msprop:Generator_ColumnPropNameInRow="FORMULA_EXPRESSION" msprop:Generator_UserColumnName="FORMULA_EXPRESSION" msprop:Generator_ColumnVarNameInTable="columnFORMULA_EXPRESSION" default="">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="1000" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FORMULA_SQL" msprop:Generator_ColumnPropNameInRow="FORMULA_SQL" msprop:Generator_ColumnPropNameInTable="FORMULA_SQLColumn" msprop:Generator_ColumnVarNameInTable="columnFORMULA_SQL" msprop:Generator_UserColumnName="FORMULA_SQL" default="">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3000" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>

View File

@@ -4,7 +4,7 @@
Changes to this file may cause incorrect behavior and will be lost if Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated. the code is regenerated.
</autogenerated>--> </autogenerated>-->
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="83" ViewPortY="51" 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="90" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes> <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_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:TBPM_KONFIGURATION" ZOrder="2" X="-17" Y="232" Height="262" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="97" />
@@ -15,8 +15,8 @@
<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: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: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: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_PROFILE_CONTROLS" ZOrder="12" X="947" Y="400" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="24" OldDataTableHeight="0" SplitterPosition="254" /> <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="1299" Y="326" 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: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: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: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: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" />
@@ -33,11 +33,11 @@
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1247</X> <X>1247</X>
<Y>542</Y> <Y>611</Y>
</Point> </Point>
<Point> <Point>
<X>1299</X> <X>1297</X>
<Y>542</Y> <Y>611</Y>
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
@@ -49,11 +49,11 @@
</Point> </Point>
<Point> <Point>
<X>141</X> <X>141</X>
<Y>343</Y> <Y>408</Y>
</Point> </Point>
<Point> <Point>
<X>1299</X> <X>1297</X>
<Y>343</Y> <Y>408</Y>
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
@@ -65,7 +65,7 @@
</Point> </Point>
<Point> <Point>
<X>965</X> <X>965</X>
<Y>400</Y> <Y>404</Y>
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>

View File

@@ -0,0 +1,73 @@
ADO.NET DataColumn.Expression Kompakte Übersicht
Spalten werden über den Spaltennamen referenziert, z. B. [MENGE].
GRUNDOPERATOREN
- Arithmetik: + - * /
Beispiel: [A] * [B]
- Vergleich: = <> > >= < <=
Beispiel: [MENGE] > 0
- Logik: AND OR NOT
Beispiel: [A] > 0 AND [B] < 10
- Klammern: (...)
Beispiel: ([A] + [B]) * 2
STRING-VERKETTUNG
- Verkettung: +
Beispiel: [VORNAME] + ' - ' + [NACHNAME]
- Typkonvertierung: Convert
Beispiel: Convert([NUMMER], 'System.String')
BEDINGUNGEN
- IIF(Bedingung, True, False)
Beispiel: IIF([A] = 'Harry', 'Blume', 'Tier')
HÄUFIGE FUNKTIONEN
- Len([TEXT])
- Trim([TEXT])
- Substring([TEXT], 0, 3)
- IsNull([WERT], 0)
- Convert([WERT], 'System.Double')
BEISPIELE (FORMULA_EXPRESSION)
- Multiplikation: [MENGE] * [PREIS]
- Addieren: [A] + [B]
- Division: [A] / [B]
- Text zusammensetzen: [SAKNR] + ' - ' + [KST]
- Bedingung: IIF([STATUS] = 'X', 'OK', 'NOK')ADO.NET DataColumn.Expression Kompakte Übersicht
Spalten werden über den Spaltennamen referenziert, z. B. [MENGE].
GRUNDOPERATOREN
- Arithmetik: + - * /
Beispiel: [A] * [B]
- Vergleich: = <> > >= < <=
Beispiel: [MENGE] > 0
- Logik: AND OR NOT
Beispiel: [A] > 0 AND [B] < 10
- Klammern: (...)
Beispiel: ([A] + [B]) * 2
STRING-VERKETTUNG
- Verkettung: +
Beispiel: [VORNAME] + ' - ' + [NACHNAME]
- Typkonvertierung: Convert
Beispiel: Convert([NUMMER], 'System.String')
BEDINGUNGEN
- IIF(Bedingung, True, False)
Beispiel: IIF([A] = 'Harry', 'Blume', 'Tier')
HÄUFIGE FUNKTIONEN
- Len([TEXT])
- Trim([TEXT])
- Substring([TEXT], 0, 3)
- IsNull([WERT], 0)
- Convert([WERT], 'System.Double')
BEISPIELE (FORMULA_EXPRESSION)
- Multiplikation: [MENGE] * [PREIS]
- Addieren: [A] + [B]
- Division: [A] / [B]
- Text zusammensetzen: [SAKNR] + ' - ' + [KST]
- Bedingung: IIF([STATUS] = 'X', 'OK', 'NOK')

View File

@@ -1,7 +1,7 @@
Imports System.ComponentModel Imports System.ComponentModel
Imports System.Drawing.Design Imports System.Drawing.Design
Imports System.Globalization Imports System.Globalization
Imports FormsUtils Imports FormsUtils 'FormsUtils.dll als Fremdbibliothek für die Properties
Module ModuleFinalIndexProperties Module ModuleFinalIndexProperties
<TypeConverter(GetType(PropertiesDeluxeTypeConverter))> <TypeConverter(GetType(PropertiesDeluxeTypeConverter))>

View File

@@ -4,6 +4,9 @@
Public Property CONNECTION_STRING_ECM As String = "" Public Property CONNECTION_STRING_ECM As String = ""
Public Property CONNECTION_STRING_IDB As String = "" Public Property CONNECTION_STRING_IDB As String = ""
Public Property IDB_ACTIVE As Boolean = False Public Property IDB_ACTIVE As Boolean = False
Public Property COPY_WMFILE_2TEMP As Boolean = False
Public Property MAP_SHARE_DRIVE As String = String.Empty
Public Property MAP_BLACKLIST As String = String.Empty
Public Property EDMIAppServerActive As Boolean = False Public Property EDMIAppServerActive As Boolean = False
Public Property OPERATION_MODE_FS As String = "PURE_WM" Public Property OPERATION_MODE_FS As String = "PURE_WM"

View File

@@ -19,6 +19,7 @@ Module ModuleRuntimeVariables
' Diese Werte müssen später zur Laufzeit geladen werden ' Diese Werte müssen später zur Laufzeit geladen werden
Public Property ActiveWorkflowType As Integer Public Property ActiveWorkflowType As Integer
Public Property BASEDATA_DT_TBDD_CONNECTION As DataTable Public Property BASEDATA_DT_TBDD_CONNECTION As DataTable
Public Property BASEDATA_DT_TBDD_CATALOG As DataTable
Public Property BASEDATA_DT_TBDD_SQL_COMMANDS As DataTable Public Property BASEDATA_DT_TBDD_SQL_COMMANDS As DataTable
Public Property BASEDATA_DT_CONFIG As DataTable Public Property BASEDATA_DT_CONFIG As DataTable
Public Property BASEDATA_DTGRID_GROUPS As DataTable Public Property BASEDATA_DTGRID_GROUPS As DataTable
@@ -29,8 +30,8 @@ Module ModuleRuntimeVariables
Public Property BASEDATA_DT_PROFILES_SEARCHES_DOC As DataTable Public Property BASEDATA_DT_PROFILES_SEARCHES_DOC As DataTable
Public Property DT_FILTERED_PROFILE_SEARCHES_DOC As DataTable Public Property DT_FILTERED_PROFILE_SEARCHES_DOC As DataTable
Public Property BASEDATA_DT_PROFILES_SEARCHES_SQL As DataTable Public Property BASEDATA_DT_PROFILES_SEARCHES_DATA As DataTable
Public Property BASEDATA_DT_PROFILE_SEARCHES_SQL As DataTable Public Property DT_FILTERED_PROFILE_SEARCHES_DATA As DataTable
Public Property BASEDATA_DT_VW_PROFILE_USER As DataTable Public Property BASEDATA_DT_VW_PROFILE_USER As DataTable
Public Property BASEDATA_TBDD_COLUMNS_FORMAT As DataTable Public Property BASEDATA_TBDD_COLUMNS_FORMAT As DataTable
@@ -82,6 +83,10 @@ Module ModuleRuntimeVariables
Public Property USER_USERNAME_ORG As String = "" Public Property USER_USERNAME_ORG As String = ""
Public Property USER_GHOST_MODE_ACTIVE As Boolean = False Public Property USER_GHOST_MODE_ACTIVE As Boolean = False
Public Property USER_GHOST_MODE_USRNAME As String = "" Public Property USER_GHOST_MODE_USRNAME As String = ""
''' <summary>
''' Temporärer Ordner für Dokumentkopien (wenn COPY_WMFILE_2TEMP = True)
''' </summary>
Public TEMP_DOCUMENT_FOLDER As String = String.Empty
Public Class UserInheritanceConfirmation Public Class UserInheritanceConfirmation
Public Property ColumnName As String = "" Public Property ColumnName As String = ""
Public Property Count As Integer Public Property Count As Integer
@@ -159,9 +164,7 @@ Module ModuleRuntimeVariables
Public Property DTCONTROLS_WITH_SQL As DataTable Public Property DTCONTROLS_WITH_SQL As DataTable
Public Property DTTBPM_PROFILE_FINAL_INDEXING As DataTable Public Property DTTBPM_PROFILE_FINAL_INDEXING As DataTable
Public Property CURRENT_CONTROL_ID As Integer Public Property CURRENT_CONTROL_ID As Integer
Public Property errormessage As String Public Property errormessage As String
Public Property WINDREAM As ClassPMWindream Public Property WINDREAM As ClassPMWindream
Public Property WINDREAM_MOD As Windream Public Property WINDREAM_MOD As Windream
Public Property WINDREAM_ALLG As ClassWindream_allgemein Public Property WINDREAM_ALLG As ClassWindream_allgemein

View File

@@ -13,7 +13,7 @@ Imports System.Runtime.InteropServices
<Assembly: AssemblyDescription("")> <Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("Digital Data")> <Assembly: AssemblyCompany("Digital Data")>
<Assembly: AssemblyProduct("taskFLOW")> <Assembly: AssemblyProduct("taskFLOW")>
<Assembly: AssemblyCopyright("Copyright © Digital Data 2025")> <Assembly: AssemblyCopyright("Digital Data 2026")>
<Assembly: AssemblyTrademark("")> <Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)> <Assembly: ComVisible(False)>
@@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben: ' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.7.9.0")> <Assembly: AssemblyVersion("2.9.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")> <Assembly: AssemblyFileVersion("1.0.0.0")>
<Assembly: NeutralResourcesLanguage("")> <Assembly: NeutralResourcesLanguage("")>

View File

@@ -0,0 +1,138 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:simpleType name="parameterDirection">
<xs:restriction base="xs:string">
<xs:enumeration value="Output"/>
<xs:enumeration value="InputOutput"/>
<xs:enumeration value="ReturnValue"/>
<xs:enumeration value="Implicit"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="customBoolean">
<xs:restriction base="xs:string">
<xs:enumeration value="true"/>
<xs:enumeration value="false"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ONSParameters">
<xs:restriction base="xs:string">
<xs:enumeration value="nodeList"/>
<!--<xs:enumeration value="walletFile"/>
<xs:enumeration value="walletPassword"/>-->
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ONSModeValues">
<xs:restriction base="xs:string">
<xs:enumeration value="local"/>
<xs:enumeration value="remote"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="datatype">
<xs:restriction base="xs:string">
<xs:enumeration value="System.Binary"/>
<xs:enumeration value="System.Boolean"/>
<xs:enumeration value="System.Byte"/>
<xs:enumeration value="System.Byte[]"/>
<xs:enumeration value="System.Char"/>
<xs:enumeration value="System.DateTime"/>
<xs:enumeration value="System.DateTimeOffset"/>
<xs:enumeration value="System.Decimal"/>
<xs:enumeration value="System.Double"/>
<xs:enumeration value="System.Guid"/>
<xs:enumeration value="System.Int16"/>
<xs:enumeration value="System.Int32"/>
<xs:enumeration value="System.Int64"/>
<xs:enumeration value="System.SByte"/>
<xs:enumeration value="System.Single"/>
<xs:enumeration value="System.String"/>
<xs:enumeration value="System.TimeSpan"/>
<xs:enumeration value="System.UInt16"/>
<xs:enumeration value="System.UInt32"/>
<xs:enumeration value="System.UInt64"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="providerType">
<xs:restriction base="xs:string">
<xs:enumeration value="BFile"/>
<xs:enumeration value="BinaryFloat"/>
<xs:enumeration value="BinaryDouble"/>
<xs:enumeration value="Blob"/>
<xs:enumeration value="Byte"/>
<xs:enumeration value="Char"/>
<xs:enumeration value="Clob"/>
<xs:enumeration value="Date"/>
<xs:enumeration value="Decimal"/>
<xs:enumeration value="Double"/>
<xs:enumeration value="Int16"/>
<xs:enumeration value="Int32"/>
<xs:enumeration value="Int64"/>
<xs:enumeration value="IntervalDS"/>
<xs:enumeration value="IntervalYM"/>
<xs:enumeration value="Long"/>
<xs:enumeration value="LongRaw"/>
<xs:enumeration value="NChar"/>
<xs:enumeration value="NClob"/>
<xs:enumeration value="NVarchar2"/>
<xs:enumeration value="Object"/>
<xs:enumeration value="Raw"/>
<xs:enumeration value="Single"/>
<xs:enumeration value="TimeStamp"/>
<xs:enumeration value="TimeStampLTZ"/>
<xs:enumeration value="TimeStampTZ"/>
<xs:enumeration value="Varchar2"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="nativeDataType">
<xs:restriction base="xs:string">
<xs:enumeration value="BFile"/>
<xs:enumeration value="Binary_Float"/>
<xs:enumeration value="Binary_Double"/>
<xs:enumeration value="Blob"/>
<xs:enumeration value="Char"/>
<xs:enumeration value="Clob"/>
<xs:enumeration value="Date"/>
<xs:enumeration value="Number"/>
<xs:enumeration value="Interval Day To Second"/>
<xs:enumeration value="Interval Year To Month"/>
<xs:enumeration value="Long"/>
<xs:enumeration value="Long Raw"/>
<xs:enumeration value="NChar"/>
<xs:enumeration value="NClob"/>
<xs:enumeration value="NVarchar2"/>
<xs:enumeration value="Raw"/>
<xs:enumeration value="Rowid"/>
<xs:enumeration value="Timestamp"/>
<xs:enumeration value="Timestamp With Local Time Zone"/>
<xs:enumeration value="Timestamp With Time Zone"/>
<xs:enumeration value="URowid"/>
<xs:enumeration value="UserDefinedType"/>
<xs:enumeration value="Varchar2"/>
<xs:enumeration value="XmlType"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="providerDBType">
<xs:restriction base="xs:string">
<xs:enumeration value="AnsiString"/>
<xs:enumeration value="AnsiStringFixedLength"/>
<xs:enumeration value="Binary"/>
<xs:enumeration value="Byte"/>
<xs:enumeration value="Date"/>
<xs:enumeration value="DateTime"/>
<xs:enumeration value="DateTimeOffset"/>
<xs:enumeration value="Decimal"/>
<xs:enumeration value="Double"/>
<xs:enumeration value="Int16"/>
<xs:enumeration value="Int32"/>
<xs:enumeration value="Int64"/>
<xs:enumeration value="Object"/>
<xs:enumeration value="Single"/>
<xs:enumeration value="String"/>
<xs:enumeration value="StringFixedLength"/>
<xs:enumeration value="Time"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@@ -0,0 +1,221 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="Oracle.DataAccess.Common.Configuration.Section.xsd"/>
<xs:element name="oracle.manageddataaccess.client" >
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="version" type="odpmversiontype" minOccurs="0" />
</xs:choice>
</xs:complexType>
</xs:element>
<xs:complexType name="odpmversiontype">
<xs:complexContent>
<xs:extension base="odpmparameters">
<xs:attribute name="number" type="xs:string" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="odpmparameters">
<xs:all>
<xs:element minOccurs="0" name="settings">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="setting">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="value" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="udtMappings">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="udtMapping">
<xs:complexType>
<xs:attribute name="typeName" type="xs:string" use="required" />
<xs:attribute name="factoryName" type="xs:string" use="required" />
<xs:attribute name="dataSource" type="xs:string" use="required" />
<xs:attribute name="schemaName" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="LDAPsettings">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="LDAPsetting">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="value" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="distributedTransaction">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="setting">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="value" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="dataSources">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="dataSource">
<xs:complexType>
<xs:attribute name="alias" type="xs:string" use="required" />
<xs:attribute name="descriptor" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="connectionPools">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="connectionPool">
<xs:complexType>
<xs:attribute name="connectionString" type="xs:string" use="required" />
<xs:attribute name="poolName" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="edmMappings">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="edmMapping">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="add">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="precision" type="xs:int" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="dataType" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="edmNumberMapping">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="add">
<xs:complexType>
<xs:attribute name="NETType" type="xs:string" use="required" />
<xs:attribute name="MinPrecision" type="xs:int" use="required" />
<xs:attribute name="MaxPrecision" type="xs:int" use="required" />
<xs:attribute name="DBType" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="implicitRefCursor">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="storedProcedure">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="1" name="refCursor">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="1" minOccurs="1" name="bindInfo">
<xs:complexType>
<xs:attribute name="mode" type="parameterDirection" use="required" />
</xs:complexType>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="metadata">
<xs:complexType>
<xs:attribute name="columnOrdinal" type="xs:int" use="required" />
<xs:attribute name="columnName" type="xs:string" use="required" />
<xs:attribute name="baseColumnName" type="xs:string" use="optional" />
<xs:attribute name="baseSchemaName" type="xs:string" use="optional" />
<xs:attribute name="baseTableName" type="xs:string" use="optional" />
<xs:attribute name="providerType" type="providerType" use="optional" />
<xs:attribute name="columnSize" type="xs:int" use="optional" />
<xs:attribute name="numericPrecision" type="xs:int" use="optional" />
<xs:attribute name="numericScale" type="xs:int" use="optional" />
<xs:attribute name="isUnique" type="customBoolean" use="optional" />
<xs:attribute name="isKey" type="customBoolean" use="optional" />
<xs:attribute name="isRowID" type="customBoolean" use="optional" />
<xs:attribute name="dataType" type="datatype" use="optional" />
<xs:attribute name="allowDBNull" type="customBoolean" use="optional" />
<xs:attribute name="isAliased" type="customBoolean" use="optional" />
<xs:attribute name="isByteSemantic" type="customBoolean" use="optional" />
<xs:attribute name="isExpression" type="customBoolean" use="optional" />
<xs:attribute name="isHidden" type="customBoolean" use="optional" />
<xs:attribute name="isReadOnly" type="customBoolean" use="optional" />
<xs:attribute name="isLong" type="customBoolean" use="optional" />
<xs:attribute name="udtTypeName" type="xs:string" use="optional" />
<xs:attribute name="nativeDataType" type="nativeDataType" use="optional" />
<xs:attribute name="providerDBType" type="providerDBType" use="optional" />
<xs:attribute name="objectName" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="optional" />
<xs:attribute name="position" type="xs:int" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="schema" type="xs:string" use="optional" />
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="onsConfig">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="settings">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="2" minOccurs="0" name="setting">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="value" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="ons">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="3" minOccurs="1" name="add">
<xs:complexType>
<xs:attribute name="name" type="ONSParameters" use="required" />
<xs:attribute name="value" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="database" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="configFile" type="xs:string" use="optional" />
<xs:attribute name="mode" type="ONSModeValues" use="required" />
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:schema>

View File

@@ -151,9 +151,9 @@
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
</Reference> </Reference>
<Reference Include="DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" /> <Reference Include="DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DigitalData.Controls.DocumentViewer, Version=2.2.0.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Controls.DocumentViewer, Version=2.6.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\Controls.DocumentViewer\obj\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Controls.LookupGrid"> <Reference Include="DigitalData.Controls.LookupGrid">
<HintPath>..\..\..\..\2_DLL Projekte\DDMonorepo\Controls.LookupGrid\bin\Debug\DigitalData.Controls.LookupGrid.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDMonorepo\Controls.LookupGrid\bin\Debug\DigitalData.Controls.LookupGrid.dll</HintPath>
@@ -173,23 +173,18 @@
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.3.6.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Database">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.EDMI.API"> <Reference Include="DigitalData.Modules.EDMI.API">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Digital Data\DD_Modules\DigitalData.Modules.EDMI.API.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Encryption, Version=1.3.1.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Encryption, Version=1.3.1.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Encryption\bin\Debug\DigitalData.Modules.Encryption.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Encryption\bin\Debug\DigitalData.Modules.Encryption.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Interfaces, Version=2.3.7.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Interfaces">
<SpecificVersion>False</SpecificVersion> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Digital Data\DD_Modules\DigitalData.Modules.Interfaces.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.License">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Digital Data\DD_Modules\11_2025\DigitalData.Modules.License.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.6.5.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Logging, Version=2.6.5.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
@@ -202,15 +197,14 @@
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Windream, Version=1.9.6.2, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Windream">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Windream\bin\Debug\DigitalData.Modules.Windream.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Windream\bin\Debug\DigitalData.Modules.Windream.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.ZooFlow"> <Reference Include="DigitalData.Modules.ZooFlow">
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\ZooFlow\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\ZooFlow\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath>
</Reference> </Reference>
<Reference Include="DLLLicenseManager"> <Reference Include="DLLLicenseManager">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\DLLLicenseManager.dll</HintPath> <HintPath>M:\Bibliotheken\Digital Data\DD_Modules\DLLLicenseManager.dll</HintPath>
</Reference> </Reference>
<Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL"> <Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
<HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath> <HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath>
@@ -231,117 +225,109 @@
<HintPath>..\packages\FirebirdSql.Data.FirebirdClient.7.5.0\lib\net452\FirebirdSql.Data.FirebirdClient.dll</HintPath> <HintPath>..\packages\FirebirdSql.Data.FirebirdClient.7.5.0\lib\net452\FirebirdSql.Data.FirebirdClient.dll</HintPath>
</Reference> </Reference>
<Reference Include="FormsUtils"> <Reference Include="FormsUtils">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\FormsUtils.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\FormsUtils.dll</HintPath>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.CAD.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Common, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Common.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Document, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Document.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Email, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Email.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.HTML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.HTML.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Imaging, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Markdown, Version=14.3.23.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Markdown.dll</HintPath>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.PDF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.PDF.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.RTF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.RTF.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.SVG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.SVG.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\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> <EmbedInteropTypes>True</EmbedInteropTypes>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="Google.Protobuf, Version=3.33.2.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604, processorArchitecture=MSIL"> <Reference Include="Google.Protobuf, Version=3.33.2.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604, processorArchitecture=MSIL">
<HintPath>..\packages\Google.Protobuf.3.33.2\lib\net45\Google.Protobuf.dll</HintPath> <HintPath>..\packages\Google.Protobuf.3.33.2\lib\net45\Google.Protobuf.dll</HintPath>
</Reference> </Reference>
<Reference Include="Interop.WINDREAMLib"> <Reference Include="Interop.WINDREAMLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WINDREAMLib.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\windream\Interop.WINDREAMLib.dll</HintPath>
<EmbedInteropTypes>False</EmbedInteropTypes> <EmbedInteropTypes>False</EmbedInteropTypes>
</Reference> </Reference>
<Reference Include="Interop.WMOBRWSLib"> <Reference Include="Interop.WMOBRWSLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOBRWSLib.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\windream\Interop.WMOBRWSLib.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes> <EmbedInteropTypes>True</EmbedInteropTypes>
</Reference> </Reference>
<Reference Include="Interop.WMOSRCHLib"> <Reference Include="Interop.WMOSRCHLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOSRCHLib.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\windream\Interop.WMOSRCHLib.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes> <EmbedInteropTypes>True</EmbedInteropTypes>
</Reference> </Reference>
<Reference Include="Interop.WMOTOOLLib"> <Reference Include="Interop.WMOTOOLLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOTOOLLib.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\windream\Interop.WMOTOOLLib.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes> <EmbedInteropTypes>True</EmbedInteropTypes>
</Reference> </Reference>
<Reference Include="Mail"> <Reference Include="Mail">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Limilabs\Mail.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\Limilabs\Mail.dll</HintPath>
</Reference> </Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> <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> <HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.9.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
@@ -356,15 +342,6 @@
<Reference Include="Microsoft.IdentityModel.Abstractions, Version=6.22.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <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> <HintPath>..\packages\Microsoft.IdentityModel.Abstractions.6.22.0\lib\net461\Microsoft.IdentityModel.Abstractions.dll</HintPath>
</Reference> </Reference>
<Reference Include="NativeSDK.Exceptions, Version=14.3.23.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\NativeSDK.Exceptions.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings, Version=14.3.23.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\NativeSDK.Settings.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings.Edition, Version=14.3.23.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\NativeSDK.Settings.Edition.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> <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> <HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference> </Reference>
@@ -377,11 +354,8 @@
<Reference Include="OpenMcdf, Version=2.4.1.0, Culture=neutral, PublicKeyToken=fdbb1629d7c00800, processorArchitecture=MSIL"> <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> <HintPath>..\packages\OpenMcdf.2.4.1\lib\net40\OpenMcdf.dll</HintPath>
</Reference> </Reference>
<Reference Include="Oracle.ManagedDataAccess"> <Reference Include="Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Oracle.ManagedDataAccess.dll</HintPath> <HintPath>..\packages\Oracle.ManagedDataAccess.21.15.0\lib\net462\Oracle.ManagedDataAccess.dll</HintPath>
</Reference>
<Reference Include="PdfSharp-gdi">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\PdfSharp-gdi.dll</HintPath>
</Reference> </Reference>
<Reference Include="protobuf-net, Version=3.0.0.0, Culture=neutral, PublicKeyToken=257b51d87d2e4d67, processorArchitecture=MSIL"> <Reference Include="protobuf-net, Version=3.0.0.0, Culture=neutral, PublicKeyToken=257b51d87d2e4d67, processorArchitecture=MSIL">
<HintPath>..\packages\protobuf-net.3.2.46\lib\net462\protobuf-net.dll</HintPath> <HintPath>..\packages\protobuf-net.3.2.46\lib\net462\protobuf-net.dll</HintPath>
@@ -392,9 +366,6 @@
<Reference Include="RtfPipe, Version=2.0.7677.4303, Culture=neutral, PublicKeyToken=5f6ab4ce530296d2, processorArchitecture=MSIL"> <Reference Include="RtfPipe, Version=2.0.7677.4303, Culture=neutral, PublicKeyToken=5f6ab4ce530296d2, processorArchitecture=MSIL">
<HintPath>..\packages\RtfPipe.2.0.7677.4303\lib\net45\RtfPipe.dll</HintPath> <HintPath>..\packages\RtfPipe.2.0.7677.4303\lib\net45\RtfPipe.dll</HintPath>
</Reference> </Reference>
<Reference Include="S22.Imap, Version=3.6.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\S22.Imap.3.6.0.0\lib\net40\S22.Imap.dll</HintPath>
</Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> <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> <HintPath>..\packages\System.Buffers.4.6.0\lib\net462\System.Buffers.dll</HintPath>
@@ -488,7 +459,6 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Include="ApplicationEvents.vb" /> <Compile Include="ApplicationEvents.vb" />
<Compile Include="ClassAnnotation.vb" />
<Compile Include="ClassConfig.vb" /> <Compile Include="ClassConfig.vb" />
<Compile Include="ClassConstants.vb" /> <Compile Include="ClassConstants.vb" />
<Compile Include="ClassControlCreator.vb" /> <Compile Include="ClassControlCreator.vb" />
@@ -624,6 +594,12 @@
<Compile Include="frmError.vb"> <Compile Include="frmError.vb">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
<Compile Include="frmExpression_Designer.Designer.vb">
<DependentUpon>frmExpression_Designer.vb</DependentUpon>
</Compile>
<Compile Include="frmExpression_Designer.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmFileInfo.Designer.vb"> <Compile Include="frmFileInfo.Designer.vb">
<DependentUpon>frmFileInfo.vb</DependentUpon> <DependentUpon>frmFileInfo.vb</DependentUpon>
</Compile> </Compile>
@@ -868,6 +844,9 @@
<DependentUpon>frmError.vb</DependentUpon> <DependentUpon>frmError.vb</DependentUpon>
<SubType>Designer</SubType> <SubType>Designer</SubType>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="frmExpression_Designer.resx">
<DependentUpon>frmExpression_Designer.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmFileInfo.resx"> <EmbeddedResource Include="frmFileInfo.resx">
<DependentUpon>frmFileInfo.vb</DependentUpon> <DependentUpon>frmFileInfo.vb</DependentUpon>
<SubType>Designer</SubType> <SubType>Designer</SubType>
@@ -1090,6 +1069,12 @@
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="Oracle.DataAccess.Common.Configuration.Section.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Oracle.ManagedDataAccess.Client.Configuration.Section.xsd">
<SubType>Designer</SubType>
</None>
<None Include="packages.config" /> <None Include="packages.config" />
<None Include="Resources\syncreon.png" /> <None Include="Resources\syncreon.png" />
</ItemGroup> </ItemGroup>
@@ -1271,7 +1256,9 @@
<None Include="Resources\PM_mit_slogan.JPG" /> <None Include="Resources\PM_mit_slogan.JPG" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Content Include="logtaskflow.txt" />
<None Include="Changelog.md" /> <None Include="Changelog.md" />
<Content Include="DataColumnExpression.txt" />
<Content Include="DD_Icons_ICO_PMANAGER_48px.ico" /> <Content Include="DD_Icons_ICO_PMANAGER_48px.ico" />
<Content Include="DD_taskFLOW_ICON.ico" /> <Content Include="DD_taskFLOW_ICON.ico" />
<Content Include="MailLicense.xml"> <Content Include="MailLicense.xml">
@@ -1379,10 +1366,10 @@
</PropertyGroup> </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.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\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.3.23\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.3.23\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> </Target>
<Import Project="..\packages\EntityFramework.6.4.4\build\EntityFramework.targets" Condition="Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" /> <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.3.23\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.3.23\build\net462\GdPicture.runtimes.windows.targets')" /> <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. <!-- 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. Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild"> <Target Name="BeforeBuild">

View File

@@ -1,10 +1,11 @@
Imports System.Text.RegularExpressions Imports System.Text.RegularExpressions
Imports WINDREAMLib Imports DevExpress.Xpo.Helpers.AssociatedCollectionCriteriaHelper
Imports DigitalData.Controls.LookupGrid
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Views.Grid
Imports DevExpress.XtraGrid.Columns
Imports DevExpress.XtraEditors Imports DevExpress.XtraEditors
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Columns
Imports DevExpress.XtraGrid.Views.Grid
Imports DigitalData.Controls.LookupGrid
Imports WINDREAMLib
''' <summary> ''' <summary>
''' Defines common Functions for Checking for and replacing placeholders. ''' Defines common Functions for Checking for and replacing placeholders.
''' This Class also includes a child class `Pattern` for passing around Patterns. ''' This Class also includes a child class `Pattern` for passing around Patterns.
@@ -75,7 +76,8 @@ Public Class clsPatterns
''' Aktualisiert den Wert eines Controls im Cache ''' Aktualisiert den Wert eines Controls im Cache
''' </summary> ''' </summary>
Public Shared Sub UpdateControlInCache(controlName As String, newValue As Object) Public Shared Sub UpdateControlInCache(controlName As String, newValue As Object)
SyncLock _ControlLookupCache ' Thread-Safety ' FIX: SyncLock auf Nothing ist illegal → GetType(clsPatterns) als stabilen Lock-Anker nutzen
SyncLock GetType(clsPatterns)
If _ControlLookupCache Is Nothing OrElse Not _ControlLookupCache.ContainsKey(controlName) Then If _ControlLookupCache Is Nothing OrElse Not _ControlLookupCache.ContainsKey(controlName) Then
LOGGER.Warn($"Control [{controlName}] not found in cache for update") LOGGER.Warn($"Control [{controlName}] not found in cache for update")
Return Return
@@ -98,8 +100,13 @@ Public Class clsPatterns
lookup.Properties.SelectedValues = New List(Of String) From {newValue.ToString()} lookup.Properties.SelectedValues = New List(Of String) From {newValue.ToString()}
End If End If
Case GetType(Windows.Forms.ComboBox) ' ========== FIX START: Beide ComboBox-Typen unterstützen ==========
DirectCast(ctrl, ComboBox).Text = newValue?.ToString() Case GetType(System.Windows.Forms.ComboBox)
DirectCast(ctrl, System.Windows.Forms.ComboBox).Text = newValue?.ToString()
Case GetType(DevExpress.XtraEditors.ComboBoxEdit)
DirectCast(ctrl, DevExpress.XtraEditors.ComboBoxEdit).Text = newValue?.ToString()
' ========== FIX END ==========
Case GetType(CheckBox) Case GetType(CheckBox)
If TypeOf newValue Is Boolean Then If TypeOf newValue Is Boolean Then
@@ -130,12 +137,14 @@ Public Class clsPatterns
Public Shared Sub UpdateMultipleControlsInCache(updates As Dictionary(Of String, Object)) Public Shared Sub UpdateMultipleControlsInCache(updates As Dictionary(Of String, Object))
If updates Is Nothing OrElse updates.Count = 0 Then Return If updates Is Nothing OrElse updates.Count = 0 Then Return
SyncLock _ControlLookupCache ' FIX: Gleicher Lock-Anker wie UpdateControlInCache → kein Deadlock
For Each kvp In updates ' Die eigentliche Aktualisierung läuft sequenziell über UpdateControlInCache,
UpdateControlInCache(kvp.Key, kvp.Value) ' da SyncLock in VB.NET re-entrant auf demselben Thread ist.
Next For Each kvp In updates
LOGGER.Debug($"Batch cache update completed for {updates.Count} controls") UpdateControlInCache(kvp.Key, kvp.Value)
End SyncLock Next
LOGGER.Debug($"Batch cache update completed for {updates.Count} controls")
End Sub End Sub
''' <summary> ''' <summary>
''' Wraps a pattern-type and -value in the common format: {#type#value} ''' Wraps a pattern-type and -value in the common format: {#type#value}
@@ -145,34 +154,39 @@ Public Class clsPatterns
End Function End Function
Public Shared Function ReplaceAllValues(input As String, panel As DevExpress.XtraEditors.XtraScrollableControl, is_SQL As Boolean) As String Public Shared Function ReplaceAllValues(input As String, panel As DevExpress.XtraEditors.XtraScrollableControl, is_SQL As Boolean) As String
Dim oResult = input
Try Try
Dim result = input
If Not HasAnyPatterns(result) Then If Not HasAnyPatterns(oResult) Then
Return result Return oResult
End If End If
LOGGER.Debug($"input BEFORE replacing: [{result}]") LOGGER.Debug($"input BEFORE replacing: [{oResult}]")
result = ReplaceInternalValues(result) oResult = ReplaceInternalValues(oResult)
If Not IsNothing(CURRENT_WMFILE) Then If Not IsNothing(CURRENT_WMFILE) Then
result = ReplaceWindreamIndicies(result, CURRENT_WMFILE, is_SQL) oResult = ReplaceWindreamIndicies(oResult, CURRENT_WMFILE, is_SQL)
End If End If
If IDB_ACTIVE = True Then If IDB_ACTIVE = True Then
result = ReplaceIDBAttributes(result, is_SQL) oResult = ReplaceIDBAttributes(oResult, is_SQL)
End If End If
'vorher hinter result = ReplaceInternalValues(result) 'vorher hinter result = ReplaceInternalValues(result)
result = ReplaceControlValues(result, panel, is_SQL) oResult = ReplaceControlValues(oResult, panel, is_SQL)
If Not IsNothing(result) Then If Not IsNothing(oResult) Then
result = ReplaceUserValues(result) oResult = ReplaceUserValues(oResult)
LOGGER.Debug($"input AFTER replacing: [{result}]") LOGGER.Debug($"input AFTER replacing: [{oResult}]")
End If End If
Return result Return oResult
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
LOGGER.Info("Error in ReplaceAllValues:" & ex.Message) LOGGER.Error($"❌ CRITICAL ERROR in ReplaceAllValues!")
LOGGER.Error($" Input: [{input}]")
LOGGER.Error($" Last successful result: [{oResult}]")
LOGGER.Error($" Exception Type: [{ex.GetType().Name}]")
LOGGER.Error($" Message: [{ex.Message}]")
LOGGER.Error($" StackTrace: [{ex.StackTrace}]")
Return input Return input
End Try End Try
End Function End Function
@@ -259,14 +273,23 @@ Public Class clsPatterns
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
LOGGER.Info("Error in ReplaceUserValues:" & ex.Message) LOGGER.Info("Error in ReplaceUserValues:" & ex.Message)
Return input ' FIX: Originalwert zurückgeben statt implizit Nothing
End Try End Try
End Function End Function
Private Shared Sub RecursiveAddToCache(ctrl As Control, cache As Dictionary(Of String, Control)) Private Shared Sub RecursiveAddToCache(rootCtrl As Control, cache As Dictionary(Of String, Control))
cache(ctrl.Name) = ctrl Dim stack As New Stack(Of Control)()
For Each child As Control In ctrl.Controls stack.Push(rootCtrl)
RecursiveAddToCache(child, cache)
Next While stack.Count > 0
Dim ctrl As Control = stack.Pop()
If Not String.IsNullOrEmpty(ctrl.Name) Then
cache(ctrl.Name) = ctrl
End If
For Each child As Control In ctrl.Controls
stack.Push(child)
Next
End While
End Sub End Sub
Public Shared Function ReplaceControlValues(pInput As String, oPanel As DevExpress.XtraEditors.XtraScrollableControl, oIsSQL As Boolean) As String Public Shared Function ReplaceControlValues(pInput As String, oPanel As DevExpress.XtraEditors.XtraScrollableControl, oIsSQL As Boolean) As String
Dim oResult = pInput Dim oResult = pInput
@@ -280,8 +303,9 @@ Public Class clsPatterns
LOGGER.Debug($"Control cache initialized with {_ControlLookupCache.Count} controls") LOGGER.Debug($"Control cache initialized with {_ControlLookupCache.Count} controls")
End If End If
End SyncLock End SyncLock
Try
Try
LOGGER.Debug($"Starting ReplaceControlValues with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
Dim oTryCounter = 0 Dim oTryCounter = 0
While ContainsPattern(oResult, PATTERN_CTRL) While ContainsPattern(oResult, PATTERN_CTRL)
@@ -349,12 +373,28 @@ Public Class clsPatterns
Case GetType(LookupControl3) Case GetType(LookupControl3)
Dim oLookupControl3 As LookupControl3 = oControl Dim oLookupControl3 As LookupControl3 = oControl
If oLookupControl3.Properties.SelectedValues.Count > 1 Then
LOGGER.Debug($"LookupControl3 mit mehr als 1 Value")
Dim oIndex As Integer = 0
For Each oString As String In oLookupControl3.Properties.SelectedValues
If oIndex = 0 Then
' ========== FIX START: NULL-Check ==========
Dim selectedValues As List(Of String) = Nothing
Try
selectedValues = oLookupControl3.Properties.SelectedValues
Catch ex As Exception
LOGGER.Warn($"⚠️ LookupControl [{oControlName}] SelectedValues not accessible: {ex.Message}")
selectedValues = Nothing
End Try
If selectedValues Is Nothing Then
LOGGER.Warn($"⚠️ LookupControl [{oControlName}] SelectedValues is Nothing! Using ERROR_REPLACE_VALUE")
oReplaceValue = ERROR_REPLACE_VALUE
ElseIf selectedValues.Count = 0 Then
LOGGER.Warn($"⚠️ LookupControl [{oControlName}] SelectedValues is empty! Using ERROR_REPLACE_VALUE")
oReplaceValue = ERROR_REPLACE_VALUE
' ========== FIX END ==========
ElseIf selectedValues.Count > 1 Then
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
oReplaceValue = oString oReplaceValue = oString
Else Else
oReplaceValue += "', '" + oString oReplaceValue += "', '" + oString
@@ -362,13 +402,12 @@ Public Class clsPatterns
oIndex += 1 oIndex += 1
Next Next
oIsSQL = False oIsSQL = False
ElseIf oLookupControl3.Properties.SelectedValues.Count = 1 Then Else ' Count = 1
LOGGER.Debug($"LookupControl3 mit genau einem Value") LOGGER.Debug($"LookupControl3 [{oControlName}] mit genau einem Value")
oReplaceValue = oLookupControl3.Properties.SelectedValues(0) oReplaceValue = selectedValues(0)
Else
' LOGGER.Warn($"SelectedValues of LookUpControl scheint empty oder leer zu sein! Ersetzen mit ErrorReplaceValue!")
oReplaceValue = ERROR_REPLACE_VALUE
End If End If
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) Case GetType(Windows.Forms.ComboBox)
@@ -376,7 +415,7 @@ Public Class clsPatterns
Case GetType(CheckBox) Case GetType(CheckBox)
Dim oCheckBox As CheckBox = oControl Dim oCheckBox As CheckBox = oControl
oReplaceValue = oCheckBox.Checked oReplaceValue = If(oCheckBox.Checked, "1", "0") ' Explizite String-Konvertierung
Case GetType(GridControl) Case GetType(GridControl)
Dim oGrid As GridControl = oControl Dim oGrid As GridControl = oControl
@@ -401,10 +440,18 @@ Public Class clsPatterns
Case Else Case Else
oReplaceValue = ERROR_REPLACE_VALUE oReplaceValue = ERROR_REPLACE_VALUE
End Select End Select
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
End If
If Not TypeOf oReplaceValue Is String Then
LOGGER.Warn($"⚠️ oReplaceValue is not a String for control [{oControlName}]! Type: [{oReplaceValue.GetType().Name}]. Converting to String.")
oReplaceValue = oReplaceValue.ToString()
End If
If oIsSQL = True Then If oIsSQL = True Then
'LOGGER.Debug($"IS_SQL = True - oReplaceValue = {oReplaceValue}") oReplaceValue = SafeSqlEscape(oReplaceValue)
'LOGGER.Debug($"oReplaceValue = {oReplaceValue}")
oReplaceValue = oReplaceValue.Replace("'", "''")
End If End If
oResult = ReplacePattern(oResult, PATTERN_CTRL, oReplaceValue) oResult = ReplacePattern(oResult, PATTERN_CTRL, oReplaceValue)
Else Else
@@ -420,19 +467,52 @@ Public Class clsPatterns
Return oResult Return oResult
End Try End Try
End Function End Function
Private Shared Function SafeSqlEscape(value As Object) As String
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")
Return ERROR_REPLACE_VALUE
End If
Dim strValue As String
Try
strValue = value.ToString()
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Warn($"[SafeSqlEscape] ToString() failed: {ex.Message} → returning ERROR_REPLACE_VALUE")
Return ERROR_REPLACE_VALUE
End Try
If String.IsNullOrEmpty(strValue) Then
LOGGER.Warn("[SafeSqlEscape] String is empty → returning ERROR_REPLACE_VALUE")
Return ERROR_REPLACE_VALUE
End If
Dim escaped = strValue.Replace("'", "''")
LOGGER.Debug($"[SafeSqlEscape] Output: [{escaped}]")
Return escaped
End Function
Public Shared Function ReplaceWindreamIndicies(pInput As String, pDocument As WMObject, pIsSQL As Boolean) As String Public Shared Function ReplaceWindreamIndicies(pInput As String, pDocument As WMObject, pIsSQL As Boolean) As String
Try Try
Dim oResult = pInput Dim oResult = pInput
Dim oTryCounter As Integer = 0 Dim oTryCounter As Integer = 0
LOGGER.Debug($"Starting ReplaceWindreamIndicies with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
While ContainsPattern(oResult, PATTERN_WMI) While ContainsPattern(oResult, PATTERN_WMI)
Dim oWMValue As String
Dim oIndexName As String = GetNextPattern(oResult, PATTERN_WMI).Value Dim oIndexName As String = GetNextPattern(oResult, PATTERN_WMI).Value
Dim oWMValue As String = pDocument.GetVariableValue(oIndexName)
If IsNothing(oWMValue) And oTryCounter = MAX_TRY_COUNT Then If oIndexName = "@@DISPLAY_ONLY" Then
Throw New Exception("Max tries in ReplaceWindreamIndicies exceeded.") oWMValue = String.Empty
Else
oWMValue = pDocument.GetVariableValue(oIndexName)
End If
' FIX 1: >= statt = → Counter springt in 10er-Schritten, trifft niemals genau 5
If IsNothing(oWMValue) AndAlso oTryCounter >= MAX_TRY_COUNT Then
LOGGER.Warn($"[ReplaceWindreamIndicies] Max tries for [{oIndexName}] exceeded → replacing with empty string")
oResult = ReplacePattern(oResult, PATTERN_WMI, String.Empty)
Continue While
End If End If
If oWMValue IsNot Nothing Then If oWMValue IsNot Nothing Then
@@ -442,6 +522,11 @@ Public Class clsPatterns
LOGGER.Debug($"oReplaceValue = {oWMValue}") LOGGER.Debug($"oReplaceValue = {oWMValue}")
End If End If
oResult = ReplacePattern(oResult, PATTERN_WMI, oWMValue) oResult = ReplacePattern(oResult, PATTERN_WMI, oWMValue)
Else
' FIX 2: Else-Branch — Nothing-Wert ersetzt den Placeholder mit leerem String
' verhindert Endless Loop wenn Windream-Index keinen Wert hat
LOGGER.Warn($"[ReplaceWindreamIndicies] WMI value for [{oIndexName}] is Nothing → replacing with empty string (counter: {oTryCounter})")
oResult = ReplacePattern(oResult, PATTERN_WMI, String.Empty)
End If End If
' Increase counter by 10 to avoid DDOSing the Windream Service ' Increase counter by 10 to avoid DDOSing the Windream Service
@@ -458,6 +543,7 @@ Public Class clsPatterns
Try Try
Dim result = input Dim result = input
Dim oTryCounter As Integer = 0 Dim oTryCounter As Integer = 0
LOGGER.Debug($"Starting ReplaceIDBAttributes with input: [{result}] for document ID: {CURRENT_DOC_ID}")
While ContainsPattern(result, PATTERN_IDBA) While ContainsPattern(result, PATTERN_IDBA)
Dim indexName As String = GetNextPattern(result, PATTERN_IDBA).Value Dim indexName As String = GetNextPattern(result, PATTERN_IDBA).Value
@@ -509,6 +595,7 @@ Public Class clsPatterns
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
LOGGER.Info("Error in ReplaceIDBAttributes:" & ex.Message) LOGGER.Info("Error in ReplaceIDBAttributes:" & ex.Message)
Return input ' FIX: Originalwert zurückgeben statt implizit Nothing
End Try End Try
End Function End Function

View File

@@ -845,11 +845,9 @@ Public Class frmAdministration
Private Sub PM_VEKTOR_INDEXComboBox_MouseHover(sender As Object, e As EventArgs) Handles PM_VEKTOR_INDEXComboBox.MouseHover Private Sub PM_VEKTOR_INDEXComboBox_MouseHover(sender As Object, e As EventArgs) Handles PM_VEKTOR_INDEXComboBox.MouseHover
ToolTip1.Show("Bitte wählen Sie hier den Vektor-Index den Sie für die Kennzeichnung der PM-Indizes verwenden wollen:", PM_VEKTOR_INDEXComboBox) ToolTip1.Show("Bitte wählen Sie hier den Vektor-Index den Sie für die Kennzeichnung der PM-Indizes verwenden wollen:", PM_VEKTOR_INDEXComboBox)
End Sub End Sub
Private Sub cmbLOGIndex_MouseHover(sender As Object, e As EventArgs) Handles cmbLOGIndex.MouseHover Private Sub cmbLOGIndex_MouseHover(sender As Object, e As EventArgs) Handles cmbLOGIndex.MouseHover
ToolTip1.Show("Bitte wählen Sie hier den Vektor-Index den Sie für das Loggen der Wertänderungen nutzen wollen:", cmbLOGIndex) ToolTip1.Show("Bitte wählen Sie hier den Vektor-Index den Sie für das Loggen der Wertänderungen nutzen wollen:", cmbLOGIndex)
End Sub End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
If CInt(PROFILGUIDTextBox.Text) > 0 Then If CInt(PROFILGUIDTextBox.Text) > 0 Then
profile_guid = PROFILGUIDTextBox.Text profile_guid = PROFILGUIDTextBox.Text
@@ -867,7 +865,6 @@ Public Class frmAdministration
MsgBox("No profile could be passed to designer:", MsgBoxStyle.Exclamation) MsgBox("No profile could be passed to designer:", MsgBoxStyle.Exclamation)
End If End If
End Sub End Sub
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemRefreshProfileData.ItemClick Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemRefreshProfileData.ItemClick
If BarButtonItem26.Tag = "Lock" Then If BarButtonItem26.Tag = "Lock" Then
EditMode_Profile("") EditMode_Profile("")

View File

@@ -7,7 +7,7 @@ Public Class frmAnnotations
Try Try
Me.Cursor = Cursors.WaitCursor Me.Cursor = Cursors.WaitCursor
ClassAnnotation.Annotate_PDF(txttitle.Text, txtcontent.Text, txtSeitenzahl.Text, True) ' ClassAnnotation.Annotate_PDF(txttitle.Text, txtcontent.Text, txtSeitenzahl.Text, True)
Me.Cursor = Cursors.Default Me.Cursor = Cursors.Default
Me.Close() Me.Close()
Catch ex As Exception Catch ex As Exception

View File

@@ -37,6 +37,10 @@ Partial Class frmColumn_Detail
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl() Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl()
Me.SimpleButton4 = New DevExpress.XtraEditors.SimpleButton()
Me.FORMULA_SQLTextBox = New System.Windows.Forms.TextBox()
Me.SimpleButton3 = New DevExpress.XtraEditors.SimpleButton()
Me.FORMULA_EXPRESSIONTextBox = New System.Windows.Forms.TextBox()
Me.LU_CAPTIONTextBox = New System.Windows.Forms.TextBox() Me.LU_CAPTIONTextBox = New System.Windows.Forms.TextBox()
Me.GUIDTextBox = New DevExpress.XtraEditors.TextEdit() Me.GUIDTextBox = New DevExpress.XtraEditors.TextEdit()
Me.SPALTENNAMETextBox = New DevExpress.XtraEditors.TextEdit() Me.SPALTENNAMETextBox = New DevExpress.XtraEditors.TextEdit()
@@ -78,12 +82,17 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem16 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem16 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem14 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem14 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem17 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem17 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem25 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem20 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem20 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem22 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem22 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem18 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem18 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem19 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem19 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem23 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem23 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem21 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem21 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem24 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem26 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem27 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem15 = New DevExpress.XtraLayout.LayoutControlItem()
CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -127,12 +136,17 @@ Partial Class frmColumn_Detail
CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem14, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem14, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem17, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem17, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem25, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem20, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem20, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem22, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem22, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem18, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem18, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem19, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem19, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem23, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem23, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem21, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem21, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem24, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem26, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem27, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem15, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout() Me.SuspendLayout()
' '
'TBPM_CONTROL_TABLEBindingSource 'TBPM_CONTROL_TABLEBindingSource
@@ -229,6 +243,10 @@ Partial Class frmColumn_Detail
' '
'LayoutControl1 'LayoutControl1
' '
Me.LayoutControl1.Controls.Add(Me.SimpleButton4)
Me.LayoutControl1.Controls.Add(Me.FORMULA_SQLTextBox)
Me.LayoutControl1.Controls.Add(Me.SimpleButton3)
Me.LayoutControl1.Controls.Add(Me.FORMULA_EXPRESSIONTextBox)
Me.LayoutControl1.Controls.Add(Me.LU_CAPTIONTextBox) Me.LayoutControl1.Controls.Add(Me.LU_CAPTIONTextBox)
Me.LayoutControl1.Controls.Add(Me.GUIDTextBox) Me.LayoutControl1.Controls.Add(Me.GUIDTextBox)
Me.LayoutControl1.Controls.Add(Me.SPALTENNAMETextBox) Me.LayoutControl1.Controls.Add(Me.SPALTENNAMETextBox)
@@ -256,6 +274,32 @@ Partial Class frmColumn_Detail
Me.LayoutControl1.Name = "LayoutControl1" Me.LayoutControl1.Name = "LayoutControl1"
Me.LayoutControl1.Root = Me.Root Me.LayoutControl1.Root = Me.Root
' '
'SimpleButton4
'
resources.ApplyResources(Me.SimpleButton4, "SimpleButton4")
Me.SimpleButton4.Name = "SimpleButton4"
Me.SimpleButton4.StyleController = Me.LayoutControl1
'
'FORMULA_SQLTextBox
'
Me.FORMULA_SQLTextBox.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "FORMULA_SQL", True))
resources.ApplyResources(Me.FORMULA_SQLTextBox, "FORMULA_SQLTextBox")
Me.FORMULA_SQLTextBox.Name = "FORMULA_SQLTextBox"
Me.FORMULA_SQLTextBox.ReadOnly = True
'
'SimpleButton3
'
resources.ApplyResources(Me.SimpleButton3, "SimpleButton3")
Me.SimpleButton3.Name = "SimpleButton3"
Me.SimpleButton3.StyleController = Me.LayoutControl1
'
'FORMULA_EXPRESSIONTextBox
'
Me.FORMULA_EXPRESSIONTextBox.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "FORMULA_EXPRESSION", True))
resources.ApplyResources(Me.FORMULA_EXPRESSIONTextBox, "FORMULA_EXPRESSIONTextBox")
Me.FORMULA_EXPRESSIONTextBox.Name = "FORMULA_EXPRESSIONTextBox"
Me.FORMULA_EXPRESSIONTextBox.ReadOnly = True
'
'LU_CAPTIONTextBox 'LU_CAPTIONTextBox
' '
Me.LU_CAPTIONTextBox.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "LU_CAPTION", True)) Me.LU_CAPTIONTextBox.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "LU_CAPTION", True))
@@ -456,9 +500,9 @@ Partial Class frmColumn_Detail
' '
Me.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[True] Me.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[True]
Me.Root.GroupBordersVisible = False Me.Root.GroupBordersVisible = False
Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem1, Me.LayoutControlItem2, Me.LayoutControlItem3, Me.LayoutControlItem4, Me.LayoutControlItem5, Me.LayoutControlItem6, Me.LayoutControlItem8, Me.LayoutControlItem7, Me.LayoutControlItem9, Me.LayoutControlItem10, Me.LayoutControlItem12, Me.LayoutControlItem11, Me.LayoutControlItem13, Me.LayoutControlGroup1, Me.LayoutControlItem18, Me.LayoutControlItem19, Me.LayoutControlItem23, Me.LayoutControlItem21}) Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem1, Me.LayoutControlItem2, Me.LayoutControlItem3, Me.LayoutControlItem4, Me.LayoutControlItem5, Me.LayoutControlItem6, Me.LayoutControlItem8, Me.LayoutControlItem7, Me.LayoutControlItem9, Me.LayoutControlItem10, Me.LayoutControlItem12, Me.LayoutControlItem11, Me.LayoutControlItem13, Me.LayoutControlGroup1, Me.LayoutControlItem18, Me.LayoutControlItem19, Me.LayoutControlItem23, Me.LayoutControlItem21, Me.LayoutControlItem24, Me.LayoutControlItem26, Me.LayoutControlItem27, Me.LayoutControlItem15})
Me.Root.Name = "Root" Me.Root.Name = "Root"
Me.Root.Size = New System.Drawing.Size(573, 668) Me.Root.Size = New System.Drawing.Size(630, 853)
Me.Root.TextVisible = False Me.Root.TextVisible = False
' '
'LayoutControlItem1 'LayoutControlItem1
@@ -467,7 +511,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem1.Location = New System.Drawing.Point(0, 0) Me.LayoutControlItem1.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem1.Name = "LayoutControlItem1" Me.LayoutControlItem1.Name = "LayoutControlItem1"
Me.LayoutControlItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem1.Size = New System.Drawing.Size(553, 40) Me.LayoutControlItem1.Size = New System.Drawing.Size(610, 40)
resources.ApplyResources(Me.LayoutControlItem1, "LayoutControlItem1") resources.ApplyResources(Me.LayoutControlItem1, "LayoutControlItem1")
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem1.TextSize = New System.Drawing.Size(110, 13)
' '
@@ -477,7 +521,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem2.Location = New System.Drawing.Point(0, 40) Me.LayoutControlItem2.Location = New System.Drawing.Point(0, 40)
Me.LayoutControlItem2.Name = "LayoutControlItem2" Me.LayoutControlItem2.Name = "LayoutControlItem2"
Me.LayoutControlItem2.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem2.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem2.Size = New System.Drawing.Size(553, 40) Me.LayoutControlItem2.Size = New System.Drawing.Size(610, 40)
resources.ApplyResources(Me.LayoutControlItem2, "LayoutControlItem2") resources.ApplyResources(Me.LayoutControlItem2, "LayoutControlItem2")
Me.LayoutControlItem2.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem2.TextSize = New System.Drawing.Size(110, 13)
' '
@@ -487,7 +531,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 80) Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 80)
Me.LayoutControlItem3.Name = "LayoutControlItem3" Me.LayoutControlItem3.Name = "LayoutControlItem3"
Me.LayoutControlItem3.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem3.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem3.Size = New System.Drawing.Size(553, 40) Me.LayoutControlItem3.Size = New System.Drawing.Size(610, 40)
resources.ApplyResources(Me.LayoutControlItem3, "LayoutControlItem3") resources.ApplyResources(Me.LayoutControlItem3, "LayoutControlItem3")
Me.LayoutControlItem3.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem3.TextSize = New System.Drawing.Size(110, 13)
' '
@@ -497,7 +541,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 120) Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 120)
Me.LayoutControlItem4.Name = "LayoutControlItem4" Me.LayoutControlItem4.Name = "LayoutControlItem4"
Me.LayoutControlItem4.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem4.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem4.Size = New System.Drawing.Size(276, 40) Me.LayoutControlItem4.Size = New System.Drawing.Size(304, 40)
resources.ApplyResources(Me.LayoutControlItem4, "LayoutControlItem4") resources.ApplyResources(Me.LayoutControlItem4, "LayoutControlItem4")
Me.LayoutControlItem4.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem4.TextSize = New System.Drawing.Size(110, 13)
' '
@@ -507,16 +551,16 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 200) Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 200)
Me.LayoutControlItem5.Name = "LayoutControlItem5" Me.LayoutControlItem5.Name = "LayoutControlItem5"
Me.LayoutControlItem5.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem5.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem5.Size = New System.Drawing.Size(471, 46) Me.LayoutControlItem5.Size = New System.Drawing.Size(520, 46)
resources.ApplyResources(Me.LayoutControlItem5, "LayoutControlItem5") resources.ApplyResources(Me.LayoutControlItem5, "LayoutControlItem5")
Me.LayoutControlItem5.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem5.TextSize = New System.Drawing.Size(110, 13)
' '
'LayoutControlItem6 'LayoutControlItem6
' '
Me.LayoutControlItem6.Control = Me.SimpleButton1 Me.LayoutControlItem6.Control = Me.SimpleButton1
Me.LayoutControlItem6.Location = New System.Drawing.Point(471, 200) Me.LayoutControlItem6.Location = New System.Drawing.Point(520, 200)
Me.LayoutControlItem6.Name = "LayoutControlItem6" Me.LayoutControlItem6.Name = "LayoutControlItem6"
Me.LayoutControlItem6.Size = New System.Drawing.Size(82, 46) Me.LayoutControlItem6.Size = New System.Drawing.Size(90, 46)
Me.LayoutControlItem6.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem6.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem6.TextVisible = False Me.LayoutControlItem6.TextVisible = False
' '
@@ -526,7 +570,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem8.Location = New System.Drawing.Point(0, 326) Me.LayoutControlItem8.Location = New System.Drawing.Point(0, 326)
Me.LayoutControlItem8.Name = "LayoutControlItem8" Me.LayoutControlItem8.Name = "LayoutControlItem8"
Me.LayoutControlItem8.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem8.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem8.Size = New System.Drawing.Size(471, 46) Me.LayoutControlItem8.Size = New System.Drawing.Size(520, 46)
resources.ApplyResources(Me.LayoutControlItem8, "LayoutControlItem8") resources.ApplyResources(Me.LayoutControlItem8, "LayoutControlItem8")
Me.LayoutControlItem8.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem8.TextSize = New System.Drawing.Size(110, 13)
' '
@@ -536,65 +580,65 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem7.Location = New System.Drawing.Point(0, 246) Me.LayoutControlItem7.Location = New System.Drawing.Point(0, 246)
Me.LayoutControlItem7.Name = "LayoutControlItem7" Me.LayoutControlItem7.Name = "LayoutControlItem7"
Me.LayoutControlItem7.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem7.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem7.Size = New System.Drawing.Size(553, 40) Me.LayoutControlItem7.Size = New System.Drawing.Size(610, 40)
resources.ApplyResources(Me.LayoutControlItem7, "LayoutControlItem7") resources.ApplyResources(Me.LayoutControlItem7, "LayoutControlItem7")
Me.LayoutControlItem7.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem7.TextSize = New System.Drawing.Size(110, 13)
' '
'LayoutControlItem9 'LayoutControlItem9
' '
Me.LayoutControlItem9.Control = Me.SimpleButton2 Me.LayoutControlItem9.Control = Me.SimpleButton2
Me.LayoutControlItem9.Location = New System.Drawing.Point(471, 326) Me.LayoutControlItem9.Location = New System.Drawing.Point(520, 326)
Me.LayoutControlItem9.Name = "LayoutControlItem9" Me.LayoutControlItem9.Name = "LayoutControlItem9"
Me.LayoutControlItem9.Size = New System.Drawing.Size(82, 46) Me.LayoutControlItem9.Size = New System.Drawing.Size(90, 46)
Me.LayoutControlItem9.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem9.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem9.TextVisible = False Me.LayoutControlItem9.TextVisible = False
' '
'LayoutControlItem10 'LayoutControlItem10
' '
Me.LayoutControlItem10.Control = Me.TextEdit7 Me.LayoutControlItem10.Control = Me.TextEdit7
Me.LayoutControlItem10.Location = New System.Drawing.Point(0, 412) Me.LayoutControlItem10.Location = New System.Drawing.Point(0, 504)
Me.LayoutControlItem10.Name = "LayoutControlItem10" Me.LayoutControlItem10.Name = "LayoutControlItem10"
Me.LayoutControlItem10.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem10.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem10.Size = New System.Drawing.Size(276, 40) Me.LayoutControlItem10.Size = New System.Drawing.Size(304, 40)
resources.ApplyResources(Me.LayoutControlItem10, "LayoutControlItem10") resources.ApplyResources(Me.LayoutControlItem10, "LayoutControlItem10")
Me.LayoutControlItem10.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem10.TextSize = New System.Drawing.Size(110, 13)
' '
'LayoutControlItem12 'LayoutControlItem12
' '
Me.LayoutControlItem12.Control = Me.CHANGED_WHOTextBox Me.LayoutControlItem12.Control = Me.CHANGED_WHOTextBox
Me.LayoutControlItem12.Location = New System.Drawing.Point(0, 452) Me.LayoutControlItem12.Location = New System.Drawing.Point(0, 544)
Me.LayoutControlItem12.Name = "LayoutControlItem12" Me.LayoutControlItem12.Name = "LayoutControlItem12"
Me.LayoutControlItem12.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem12.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem12.Size = New System.Drawing.Size(276, 40) Me.LayoutControlItem12.Size = New System.Drawing.Size(304, 40)
resources.ApplyResources(Me.LayoutControlItem12, "LayoutControlItem12") resources.ApplyResources(Me.LayoutControlItem12, "LayoutControlItem12")
Me.LayoutControlItem12.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem12.TextSize = New System.Drawing.Size(110, 13)
' '
'LayoutControlItem11 'LayoutControlItem11
' '
Me.LayoutControlItem11.Control = Me.TextEdit8 Me.LayoutControlItem11.Control = Me.TextEdit8
Me.LayoutControlItem11.Location = New System.Drawing.Point(276, 412) Me.LayoutControlItem11.Location = New System.Drawing.Point(304, 504)
Me.LayoutControlItem11.Name = "LayoutControlItem11" Me.LayoutControlItem11.Name = "LayoutControlItem11"
Me.LayoutControlItem11.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem11.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem11.Size = New System.Drawing.Size(277, 40) Me.LayoutControlItem11.Size = New System.Drawing.Size(306, 40)
resources.ApplyResources(Me.LayoutControlItem11, "LayoutControlItem11") resources.ApplyResources(Me.LayoutControlItem11, "LayoutControlItem11")
Me.LayoutControlItem11.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem11.TextSize = New System.Drawing.Size(110, 13)
' '
'LayoutControlItem13 'LayoutControlItem13
' '
Me.LayoutControlItem13.Control = Me.TextEdit10 Me.LayoutControlItem13.Control = Me.TextEdit10
Me.LayoutControlItem13.Location = New System.Drawing.Point(276, 452) Me.LayoutControlItem13.Location = New System.Drawing.Point(304, 544)
Me.LayoutControlItem13.Name = "LayoutControlItem13" Me.LayoutControlItem13.Name = "LayoutControlItem13"
Me.LayoutControlItem13.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem13.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem13.Size = New System.Drawing.Size(277, 40) Me.LayoutControlItem13.Size = New System.Drawing.Size(306, 40)
resources.ApplyResources(Me.LayoutControlItem13, "LayoutControlItem13") resources.ApplyResources(Me.LayoutControlItem13, "LayoutControlItem13")
Me.LayoutControlItem13.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem13.TextSize = New System.Drawing.Size(110, 13)
' '
'LayoutControlGroup1 'LayoutControlGroup1
' '
Me.LayoutControlGroup1.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem16, Me.LayoutControlItem14, Me.LayoutControlItem17, Me.LayoutControlItem20, Me.LayoutControlItem22}) Me.LayoutControlGroup1.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem16, Me.LayoutControlItem14, Me.LayoutControlItem17, Me.LayoutControlItem25, Me.LayoutControlItem20, Me.LayoutControlItem22})
Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 492) Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 584)
Me.LayoutControlGroup1.Name = "LayoutControlGroup1" Me.LayoutControlGroup1.Name = "LayoutControlGroup1"
Me.LayoutControlGroup1.Size = New System.Drawing.Size(553, 156) Me.LayoutControlGroup1.Size = New System.Drawing.Size(610, 249)
resources.ApplyResources(Me.LayoutControlGroup1, "LayoutControlGroup1") resources.ApplyResources(Me.LayoutControlGroup1, "LayoutControlGroup1")
' '
'LayoutControlItem16 'LayoutControlItem16
@@ -602,7 +646,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem16.Control = Me.VALIDATIONCheckbox Me.LayoutControlItem16.Control = Me.VALIDATIONCheckbox
Me.LayoutControlItem16.Location = New System.Drawing.Point(0, 0) Me.LayoutControlItem16.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem16.Name = "LayoutControlItem16" Me.LayoutControlItem16.Name = "LayoutControlItem16"
Me.LayoutControlItem16.Size = New System.Drawing.Size(264, 24) Me.LayoutControlItem16.Size = New System.Drawing.Size(292, 24)
Me.LayoutControlItem16.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem16.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem16.TextVisible = False Me.LayoutControlItem16.TextVisible = False
' '
@@ -611,7 +655,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem14.Control = Me.READ_ONLYCheckBox Me.LayoutControlItem14.Control = Me.READ_ONLYCheckBox
Me.LayoutControlItem14.Location = New System.Drawing.Point(0, 24) Me.LayoutControlItem14.Location = New System.Drawing.Point(0, 24)
Me.LayoutControlItem14.Name = "LayoutControlItem14" Me.LayoutControlItem14.Name = "LayoutControlItem14"
Me.LayoutControlItem14.Size = New System.Drawing.Size(529, 22) Me.LayoutControlItem14.Size = New System.Drawing.Size(586, 22)
Me.LayoutControlItem14.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem14.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem14.TextVisible = False Me.LayoutControlItem14.TextVisible = False
' '
@@ -620,16 +664,25 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem17.Control = Me.ADVANCED_LOOKUPCheckbox Me.LayoutControlItem17.Control = Me.ADVANCED_LOOKUPCheckbox
Me.LayoutControlItem17.Location = New System.Drawing.Point(0, 46) Me.LayoutControlItem17.Location = New System.Drawing.Point(0, 46)
Me.LayoutControlItem17.Name = "LayoutControlItem17" Me.LayoutControlItem17.Name = "LayoutControlItem17"
Me.LayoutControlItem17.Size = New System.Drawing.Size(529, 22) Me.LayoutControlItem17.Size = New System.Drawing.Size(586, 22)
Me.LayoutControlItem17.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem17.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem17.TextVisible = False Me.LayoutControlItem17.TextVisible = False
' '
'LayoutControlItem25
'
Me.LayoutControlItem25.Control = Me.LOAD_IDX_VALUECheckBox
Me.LayoutControlItem25.Location = New System.Drawing.Point(0, 68)
Me.LayoutControlItem25.Name = "LayoutControlItem25"
Me.LayoutControlItem25.Size = New System.Drawing.Size(586, 22)
Me.LayoutControlItem25.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem25.TextVisible = False
'
'LayoutControlItem20 'LayoutControlItem20
' '
Me.LayoutControlItem20.Control = Me.SUMMARY_FUNCTIONCombobox Me.LayoutControlItem20.Control = Me.SUMMARY_FUNCTIONCombobox
Me.LayoutControlItem20.Location = New System.Drawing.Point(264, 0) Me.LayoutControlItem20.Location = New System.Drawing.Point(292, 0)
Me.LayoutControlItem20.Name = "LayoutControlItem20" Me.LayoutControlItem20.Name = "LayoutControlItem20"
Me.LayoutControlItem20.Size = New System.Drawing.Size(265, 24) Me.LayoutControlItem20.Size = New System.Drawing.Size(294, 24)
resources.ApplyResources(Me.LayoutControlItem20, "LayoutControlItem20") resources.ApplyResources(Me.LayoutControlItem20, "LayoutControlItem20")
Me.LayoutControlItem20.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem20.TextSize = New System.Drawing.Size(110, 13)
' '
@@ -637,9 +690,9 @@ Partial Class frmColumn_Detail
' '
Me.LayoutControlItem22.Control = Me.CheckEditInheritValue Me.LayoutControlItem22.Control = Me.CheckEditInheritValue
Me.LayoutControlItem22.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "INHERIT_VALUE", True)) Me.LayoutControlItem22.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "INHERIT_VALUE", True))
Me.LayoutControlItem22.Location = New System.Drawing.Point(0, 68) Me.LayoutControlItem22.Location = New System.Drawing.Point(0, 90)
Me.LayoutControlItem22.Name = "LayoutControlItem22" Me.LayoutControlItem22.Name = "LayoutControlItem22"
Me.LayoutControlItem22.Size = New System.Drawing.Size(529, 43) Me.LayoutControlItem22.Size = New System.Drawing.Size(586, 114)
Me.LayoutControlItem22.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem22.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem22.TextVisible = False Me.LayoutControlItem22.TextVisible = False
' '
@@ -649,17 +702,17 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem18.Location = New System.Drawing.Point(0, 372) Me.LayoutControlItem18.Location = New System.Drawing.Point(0, 372)
Me.LayoutControlItem18.Name = "LayoutControlItem18" Me.LayoutControlItem18.Name = "LayoutControlItem18"
Me.LayoutControlItem18.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem18.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem18.Size = New System.Drawing.Size(553, 40) Me.LayoutControlItem18.Size = New System.Drawing.Size(610, 40)
resources.ApplyResources(Me.LayoutControlItem18, "LayoutControlItem18") resources.ApplyResources(Me.LayoutControlItem18, "LayoutControlItem18")
Me.LayoutControlItem18.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem18.TextSize = New System.Drawing.Size(110, 13)
' '
'LayoutControlItem19 'LayoutControlItem19
' '
Me.LayoutControlItem19.Control = Me.SEQUENCETextBox Me.LayoutControlItem19.Control = Me.SEQUENCETextBox
Me.LayoutControlItem19.Location = New System.Drawing.Point(276, 120) Me.LayoutControlItem19.Location = New System.Drawing.Point(304, 120)
Me.LayoutControlItem19.Name = "LayoutControlItem19" Me.LayoutControlItem19.Name = "LayoutControlItem19"
Me.LayoutControlItem19.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem19.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem19.Size = New System.Drawing.Size(277, 40) Me.LayoutControlItem19.Size = New System.Drawing.Size(306, 40)
resources.ApplyResources(Me.LayoutControlItem19, "LayoutControlItem19") resources.ApplyResources(Me.LayoutControlItem19, "LayoutControlItem19")
Me.LayoutControlItem19.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem19.TextSize = New System.Drawing.Size(110, 13)
' '
@@ -670,7 +723,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem23.Location = New System.Drawing.Point(0, 286) Me.LayoutControlItem23.Location = New System.Drawing.Point(0, 286)
Me.LayoutControlItem23.Name = "LayoutControlItem23" Me.LayoutControlItem23.Name = "LayoutControlItem23"
Me.LayoutControlItem23.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem23.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem23.Size = New System.Drawing.Size(553, 40) Me.LayoutControlItem23.Size = New System.Drawing.Size(610, 40)
Me.LayoutControlItem23.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem23.TextSize = New System.Drawing.Size(110, 13)
' '
'LayoutControlItem21 'LayoutControlItem21
@@ -679,10 +732,48 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem21.Location = New System.Drawing.Point(0, 160) Me.LayoutControlItem21.Location = New System.Drawing.Point(0, 160)
Me.LayoutControlItem21.Name = "LayoutControlItem21" Me.LayoutControlItem21.Name = "LayoutControlItem21"
Me.LayoutControlItem21.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) Me.LayoutControlItem21.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem21.Size = New System.Drawing.Size(553, 40) Me.LayoutControlItem21.Size = New System.Drawing.Size(610, 40)
resources.ApplyResources(Me.LayoutControlItem21, "LayoutControlItem21") resources.ApplyResources(Me.LayoutControlItem21, "LayoutControlItem21")
Me.LayoutControlItem21.TextSize = New System.Drawing.Size(110, 13) Me.LayoutControlItem21.TextSize = New System.Drawing.Size(110, 13)
' '
'LayoutControlItem24
'
Me.LayoutControlItem24.Control = Me.FORMULA_EXPRESSIONTextBox
Me.LayoutControlItem24.Location = New System.Drawing.Point(0, 412)
Me.LayoutControlItem24.Name = "LayoutControlItem24"
Me.LayoutControlItem24.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem24.Size = New System.Drawing.Size(520, 46)
resources.ApplyResources(Me.LayoutControlItem24, "LayoutControlItem24")
Me.LayoutControlItem24.TextSize = New System.Drawing.Size(110, 13)
'
'LayoutControlItem26
'
Me.LayoutControlItem26.Control = Me.SimpleButton3
Me.LayoutControlItem26.Location = New System.Drawing.Point(520, 412)
Me.LayoutControlItem26.Name = "LayoutControlItem26"
Me.LayoutControlItem26.Size = New System.Drawing.Size(90, 46)
Me.LayoutControlItem26.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem26.TextVisible = False
'
'LayoutControlItem27
'
Me.LayoutControlItem27.Control = Me.FORMULA_SQLTextBox
Me.LayoutControlItem27.Location = New System.Drawing.Point(0, 458)
Me.LayoutControlItem27.Name = "LayoutControlItem27"
Me.LayoutControlItem27.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem27.Size = New System.Drawing.Size(520, 46)
resources.ApplyResources(Me.LayoutControlItem27, "LayoutControlItem27")
Me.LayoutControlItem27.TextSize = New System.Drawing.Size(110, 13)
'
'LayoutControlItem15
'
Me.LayoutControlItem15.Control = Me.SimpleButton4
Me.LayoutControlItem15.Location = New System.Drawing.Point(520, 458)
Me.LayoutControlItem15.Name = "LayoutControlItem15"
Me.LayoutControlItem15.Size = New System.Drawing.Size(90, 46)
Me.LayoutControlItem15.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem15.TextVisible = False
'
'frmColumn_Detail 'frmColumn_Detail
' '
Me.Appearance.Options.UseFont = True Me.Appearance.Options.UseFont = True
@@ -740,12 +831,17 @@ Partial Class frmColumn_Detail
CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem14, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem14, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem17, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem17, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem25, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem20, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem20, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem22, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem22, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem18, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem18, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem19, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem19, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem23, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem23, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem21, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem21, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem24, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem26, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem27, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem15, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False) Me.ResumeLayout(False)
Me.PerformLayout Me.PerformLayout
@@ -810,4 +906,13 @@ End Sub
Friend WithEvents TYPE_COLUMNComboBox2 As DevExpress.XtraEditors.LookUpEdit Friend WithEvents TYPE_COLUMNComboBox2 As DevExpress.XtraEditors.LookUpEdit
Friend WithEvents CheckEditInheritValue As DevExpress.XtraEditors.CheckEdit Friend WithEvents CheckEditInheritValue As DevExpress.XtraEditors.CheckEdit
Friend WithEvents LayoutControlItem22 As DevExpress.XtraLayout.LayoutControlItem Friend WithEvents LayoutControlItem22 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents FORMULA_EXPRESSIONTextBox As TextBox
Friend WithEvents LayoutControlItem24 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents LayoutControlItem25 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents SimpleButton3 As DevExpress.XtraEditors.SimpleButton
Friend WithEvents LayoutControlItem26 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents SimpleButton4 As DevExpress.XtraEditors.SimpleButton
Friend WithEvents FORMULA_SQLTextBox As TextBox
Friend WithEvents LayoutControlItem27 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents LayoutControlItem15 As DevExpress.XtraLayout.LayoutControlItem
End Class End Class

View File

@@ -123,6 +123,9 @@
<metadata name="DD_DMSLiteDataSet.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="DD_DMSLiteDataSet.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value> <value>17, 17</value>
</metadata> </metadata>
<metadata name="DD_DMSLiteDataSet.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="TBPM_CONTROL_TABLETableAdapter.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="TBPM_CONTROL_TABLETableAdapter.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>440, 17</value> <value>440, 17</value>
</metadata> </metadata>
@@ -142,20 +145,17 @@
<data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing"> <data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="RibbonPageGroup1.Text" xml:space="preserve">
<value>RibbonPageGroup1</value>
</data>
<data name="RibbonPage1.Text" xml:space="preserve"> <data name="RibbonPage1.Text" xml:space="preserve">
<value>RibbonPage1</value> <value>RibbonPage1</value>
</data> </data>
<data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing"> <data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>573, 67</value> <value>630, 67</value>
</data> </data>
<data name="RibbonStatusBar1.Location" type="System.Drawing.Point, System.Drawing"> <data name="RibbonStatusBar1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 735</value> <value>0, 920</value>
</data> </data>
<data name="RibbonStatusBar1.Size" type="System.Drawing.Size, System.Drawing"> <data name="RibbonStatusBar1.Size" type="System.Drawing.Size, System.Drawing">
<value>573, 22</value> <value>630, 22</value>
</data> </data>
<data name="&gt;&gt;RibbonStatusBar1.Name" xml:space="preserve"> <data name="&gt;&gt;RibbonStatusBar1.Name" xml:space="preserve">
<value>RibbonStatusBar1</value> <value>RibbonStatusBar1</value>
@@ -181,16 +181,116 @@
<data name="&gt;&gt;RibbonControl1.ZOrder" xml:space="preserve"> <data name="&gt;&gt;RibbonControl1.ZOrder" xml:space="preserve">
<value>2</value> <value>2</value>
</data> </data>
<data name="RibbonPageGroup1.Text" xml:space="preserve">
<value>RibbonPageGroup1</value>
</data>
<data name="RibbonPage2.Text" xml:space="preserve"> <data name="RibbonPage2.Text" xml:space="preserve">
<value>RibbonPage2</value> <value>RibbonPage2</value>
</data> </data>
<data name="SimpleButton4.Location" type="System.Drawing.Point, System.Drawing">
<value>532, 470</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="SimpleButton4.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>10, 10, 10, 10</value>
</data>
<data name="SimpleButton4.Size" type="System.Drawing.Size, System.Drawing">
<value>86, 42</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="SimpleButton4.TabIndex" type="System.Int32, mscorlib">
<value>33</value>
</data>
<data name="SimpleButton4.Text" xml:space="preserve">
<value>...</value>
</data>
<data name="&gt;&gt;SimpleButton4.Name" xml:space="preserve">
<value>SimpleButton4</value>
</data>
<data name="&gt;&gt;SimpleButton4.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SimpleButton4.Parent" xml:space="preserve">
<value>LayoutControl1</value>
</data>
<data name="&gt;&gt;SimpleButton4.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="FORMULA_SQLTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 478</value>
</data>
<data name="FORMULA_SQLTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>378, 20</value>
</data>
<data name="FORMULA_SQLTextBox.TabIndex" type="System.Int32, mscorlib">
<value>32</value>
</data>
<data name="&gt;&gt;FORMULA_SQLTextBox.Name" xml:space="preserve">
<value>FORMULA_SQLTextBox</value>
</data>
<data name="&gt;&gt;FORMULA_SQLTextBox.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;FORMULA_SQLTextBox.Parent" xml:space="preserve">
<value>LayoutControl1</value>
</data>
<data name="&gt;&gt;FORMULA_SQLTextBox.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="SimpleButton3.Location" type="System.Drawing.Point, System.Drawing">
<value>532, 424</value>
</data>
<data name="SimpleButton3.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>10, 10, 10, 10</value>
</data>
<data name="SimpleButton3.Size" type="System.Drawing.Size, System.Drawing">
<value>86, 42</value>
</data>
<data name="SimpleButton3.TabIndex" type="System.Int32, mscorlib">
<value>31</value>
</data>
<data name="SimpleButton3.Text" xml:space="preserve">
<value>...</value>
</data>
<data name="&gt;&gt;SimpleButton3.Name" xml:space="preserve">
<value>SimpleButton3</value>
</data>
<data name="&gt;&gt;SimpleButton3.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SimpleButton3.Parent" xml:space="preserve">
<value>LayoutControl1</value>
</data>
<data name="&gt;&gt;SimpleButton3.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="FORMULA_EXPRESSIONTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 432</value>
</data>
<data name="FORMULA_EXPRESSIONTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>378, 20</value>
</data>
<data name="FORMULA_EXPRESSIONTextBox.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
</data>
<data name="&gt;&gt;FORMULA_EXPRESSIONTextBox.Name" xml:space="preserve">
<value>FORMULA_EXPRESSIONTextBox</value>
</data>
<data name="&gt;&gt;FORMULA_EXPRESSIONTextBox.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;FORMULA_EXPRESSIONTextBox.Parent" xml:space="preserve">
<value>LayoutControl1</value>
</data>
<data name="&gt;&gt;FORMULA_EXPRESSIONTextBox.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="LU_CAPTIONTextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="LU_CAPTIONTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 306</value> <value>142, 306</value>
</data> </data>
<data name="LU_CAPTIONTextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="LU_CAPTIONTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>411, 20</value> <value>468, 20</value>
</data> </data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="LU_CAPTIONTextBox.TabIndex" type="System.Int32, mscorlib"> <data name="LU_CAPTIONTextBox.TabIndex" type="System.Int32, mscorlib">
<value>26</value> <value>26</value>
</data> </data>
@@ -204,13 +304,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;LU_CAPTIONTextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;LU_CAPTIONTextBox.ZOrder" xml:space="preserve">
<value>4</value> <value>8</value>
</data> </data>
<data name="GUIDTextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="GUIDTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 20</value> <value>142, 20</value>
</data> </data>
<data name="GUIDTextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="GUIDTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>411, 20</value> <value>468, 20</value>
</data> </data>
<data name="GUIDTextBox.TabIndex" type="System.Int32, mscorlib"> <data name="GUIDTextBox.TabIndex" type="System.Int32, mscorlib">
<value>4</value> <value>4</value>
@@ -225,13 +325,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;GUIDTextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;GUIDTextBox.ZOrder" xml:space="preserve">
<value>5</value> <value>9</value>
</data> </data>
<data name="SPALTENNAMETextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="SPALTENNAMETextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 60</value> <value>142, 60</value>
</data> </data>
<data name="SPALTENNAMETextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="SPALTENNAMETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>411, 20</value> <value>468, 20</value>
</data> </data>
<data name="SPALTENNAMETextBox.TabIndex" type="System.Int32, mscorlib"> <data name="SPALTENNAMETextBox.TabIndex" type="System.Int32, mscorlib">
<value>5</value> <value>5</value>
@@ -246,13 +346,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;SPALTENNAMETextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SPALTENNAMETextBox.ZOrder" xml:space="preserve">
<value>6</value> <value>10</value>
</data> </data>
<data name="SPALTEN_HEADERTextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="SPALTEN_HEADERTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 100</value> <value>142, 100</value>
</data> </data>
<data name="SPALTEN_HEADERTextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="SPALTEN_HEADERTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>411, 20</value> <value>468, 20</value>
</data> </data>
<data name="SPALTEN_HEADERTextBox.TabIndex" type="System.Int32, mscorlib"> <data name="SPALTEN_HEADERTextBox.TabIndex" type="System.Int32, mscorlib">
<value>6</value> <value>6</value>
@@ -267,7 +367,7 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;SPALTEN_HEADERTextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SPALTEN_HEADERTextBox.ZOrder" xml:space="preserve">
<value>7</value> <value>11</value>
</data> </data>
<data name="SPALTENBREITETextBox.EditValue" type="System.Decimal, mscorlib"> <data name="SPALTENBREITETextBox.EditValue" type="System.Decimal, mscorlib">
<value>0</value> <value>0</value>
@@ -280,7 +380,7 @@
<value>Combo</value> <value>Combo</value>
</data> </data>
<data name="SPALTENBREITETextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="SPALTENBREITETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>134, 20</value> <value>162, 20</value>
</data> </data>
<data name="SPALTENBREITETextBox.TabIndex" type="System.Int32, mscorlib"> <data name="SPALTENBREITETextBox.TabIndex" type="System.Int32, mscorlib">
<value>7</value> <value>7</value>
@@ -295,13 +395,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;SPALTENBREITETextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SPALTENBREITETextBox.ZOrder" xml:space="preserve">
<value>8</value> <value>12</value>
</data> </data>
<data name="REGEX_MATCHTextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="REGEX_MATCHTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 220</value> <value>142, 220</value>
</data> </data>
<data name="REGEX_MATCHTextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="REGEX_MATCHTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>329, 20</value> <value>378, 20</value>
</data> </data>
<data name="REGEX_MATCHTextBox.TabIndex" type="System.Int32, mscorlib"> <data name="REGEX_MATCHTextBox.TabIndex" type="System.Int32, mscorlib">
<value>8</value> <value>8</value>
@@ -316,12 +416,11 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;REGEX_MATCHTextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;REGEX_MATCHTextBox.ZOrder" xml:space="preserve">
<value>9</value> <value>13</value>
</data> </data>
<data name="SimpleButton1.Location" type="System.Drawing.Point, System.Drawing"> <data name="SimpleButton1.Location" type="System.Drawing.Point, System.Drawing">
<value>483, 212</value> <value>532, 212</value>
</data> </data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="SimpleButton1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms"> <data name="SimpleButton1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>10, 10, 10, 10</value> <value>10, 10, 10, 10</value>
</data> </data>
@@ -329,7 +428,7 @@
<value>10, 10, 10, 10</value> <value>10, 10, 10, 10</value>
</data> </data>
<data name="SimpleButton1.Size" type="System.Drawing.Size, System.Drawing"> <data name="SimpleButton1.Size" type="System.Drawing.Size, System.Drawing">
<value>78, 42</value> <value>86, 42</value>
</data> </data>
<data name="SimpleButton1.TabIndex" type="System.Int32, mscorlib"> <data name="SimpleButton1.TabIndex" type="System.Int32, mscorlib">
<value>9</value> <value>9</value>
@@ -347,13 +446,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;SimpleButton1.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SimpleButton1.ZOrder" xml:space="preserve">
<value>10</value> <value>14</value>
</data> </data>
<data name="REGEX_MESSAGE_DETextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="REGEX_MESSAGE_DETextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 266</value> <value>142, 266</value>
</data> </data>
<data name="REGEX_MESSAGE_DETextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="REGEX_MESSAGE_DETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>411, 20</value> <value>468, 20</value>
</data> </data>
<data name="REGEX_MESSAGE_DETextBox.TabIndex" type="System.Int32, mscorlib"> <data name="REGEX_MESSAGE_DETextBox.TabIndex" type="System.Int32, mscorlib">
<value>10</value> <value>10</value>
@@ -368,13 +467,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;REGEX_MESSAGE_DETextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;REGEX_MESSAGE_DETextBox.ZOrder" xml:space="preserve">
<value>11</value> <value>15</value>
</data> </data>
<data name="SQL_COMMANDTextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="SQL_COMMANDTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 346</value> <value>142, 346</value>
</data> </data>
<data name="SQL_COMMANDTextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="SQL_COMMANDTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>329, 20</value> <value>378, 20</value>
</data> </data>
<data name="SQL_COMMANDTextBox.TabIndex" type="System.Int32, mscorlib"> <data name="SQL_COMMANDTextBox.TabIndex" type="System.Int32, mscorlib">
<value>11</value> <value>11</value>
@@ -389,16 +488,16 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;SQL_COMMANDTextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SQL_COMMANDTextBox.ZOrder" xml:space="preserve">
<value>12</value> <value>16</value>
</data> </data>
<data name="SimpleButton2.Location" type="System.Drawing.Point, System.Drawing"> <data name="SimpleButton2.Location" type="System.Drawing.Point, System.Drawing">
<value>483, 338</value> <value>532, 338</value>
</data> </data>
<data name="SimpleButton2.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms"> <data name="SimpleButton2.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>10, 10, 10, 10</value> <value>10, 10, 10, 10</value>
</data> </data>
<data name="SimpleButton2.Size" type="System.Drawing.Size, System.Drawing"> <data name="SimpleButton2.Size" type="System.Drawing.Size, System.Drawing">
<value>78, 42</value> <value>86, 42</value>
</data> </data>
<data name="SimpleButton2.TabIndex" type="System.Int32, mscorlib"> <data name="SimpleButton2.TabIndex" type="System.Int32, mscorlib">
<value>12</value> <value>12</value>
@@ -416,13 +515,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;SimpleButton2.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SimpleButton2.ZOrder" xml:space="preserve">
<value>13</value> <value>17</value>
</data> </data>
<data name="TextEdit7.Location" type="System.Drawing.Point, System.Drawing"> <data name="TextEdit7.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 432</value> <value>142, 524</value>
</data> </data>
<data name="TextEdit7.Size" type="System.Drawing.Size, System.Drawing"> <data name="TextEdit7.Size" type="System.Drawing.Size, System.Drawing">
<value>134, 20</value> <value>162, 20</value>
</data> </data>
<data name="TextEdit7.TabIndex" type="System.Int32, mscorlib"> <data name="TextEdit7.TabIndex" type="System.Int32, mscorlib">
<value>13</value> <value>13</value>
@@ -437,13 +536,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;TextEdit7.ZOrder" xml:space="preserve"> <data name="&gt;&gt;TextEdit7.ZOrder" xml:space="preserve">
<value>14</value> <value>18</value>
</data> </data>
<data name="TextEdit8.Location" type="System.Drawing.Point, System.Drawing"> <data name="TextEdit8.Location" type="System.Drawing.Point, System.Drawing">
<value>418, 432</value> <value>446, 524</value>
</data> </data>
<data name="TextEdit8.Size" type="System.Drawing.Size, System.Drawing"> <data name="TextEdit8.Size" type="System.Drawing.Size, System.Drawing">
<value>135, 20</value> <value>164, 20</value>
</data> </data>
<data name="TextEdit8.TabIndex" type="System.Int32, mscorlib"> <data name="TextEdit8.TabIndex" type="System.Int32, mscorlib">
<value>14</value> <value>14</value>
@@ -458,13 +557,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;TextEdit8.ZOrder" xml:space="preserve"> <data name="&gt;&gt;TextEdit8.ZOrder" xml:space="preserve">
<value>15</value> <value>19</value>
</data> </data>
<data name="CHANGED_WHOTextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="CHANGED_WHOTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 472</value> <value>142, 564</value>
</data> </data>
<data name="CHANGED_WHOTextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="CHANGED_WHOTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>134, 20</value> <value>162, 20</value>
</data> </data>
<data name="CHANGED_WHOTextBox.TabIndex" type="System.Int32, mscorlib"> <data name="CHANGED_WHOTextBox.TabIndex" type="System.Int32, mscorlib">
<value>15</value> <value>15</value>
@@ -479,13 +578,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;CHANGED_WHOTextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;CHANGED_WHOTextBox.ZOrder" xml:space="preserve">
<value>16</value> <value>20</value>
</data> </data>
<data name="TextEdit10.Location" type="System.Drawing.Point, System.Drawing"> <data name="TextEdit10.Location" type="System.Drawing.Point, System.Drawing">
<value>418, 472</value> <value>446, 564</value>
</data> </data>
<data name="TextEdit10.Size" type="System.Drawing.Size, System.Drawing"> <data name="TextEdit10.Size" type="System.Drawing.Size, System.Drawing">
<value>135, 20</value> <value>164, 20</value>
</data> </data>
<data name="TextEdit10.TabIndex" type="System.Int32, mscorlib"> <data name="TextEdit10.TabIndex" type="System.Int32, mscorlib">
<value>16</value> <value>16</value>
@@ -500,16 +599,16 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;TextEdit10.ZOrder" xml:space="preserve"> <data name="&gt;&gt;TextEdit10.ZOrder" xml:space="preserve">
<value>17</value> <value>21</value>
</data> </data>
<data name="READ_ONLYCheckBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="READ_ONLYCheckBox.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 561</value> <value>24, 653</value>
</data> </data>
<data name="READ_ONLYCheckBox.Properties.Caption" xml:space="preserve"> <data name="READ_ONLYCheckBox.Properties.Caption" xml:space="preserve">
<value>Read Only</value> <value>Read Only</value>
</data> </data>
<data name="READ_ONLYCheckBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="READ_ONLYCheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>525, 18</value> <value>582, 18</value>
</data> </data>
<data name="READ_ONLYCheckBox.TabIndex" type="System.Int32, mscorlib"> <data name="READ_ONLYCheckBox.TabIndex" type="System.Int32, mscorlib">
<value>17</value> <value>17</value>
@@ -524,16 +623,16 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;READ_ONLYCheckBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;READ_ONLYCheckBox.ZOrder" xml:space="preserve">
<value>18</value> <value>22</value>
</data> </data>
<data name="LOAD_IDX_VALUECheckBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="LOAD_IDX_VALUECheckBox.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 583</value> <value>24, 697</value>
</data> </data>
<data name="LOAD_IDX_VALUECheckBox.Properties.Caption" xml:space="preserve"> <data name="LOAD_IDX_VALUECheckBox.Properties.Caption" xml:space="preserve">
<value>Lade Indexdaten</value> <value>Lade Indexdaten</value>
</data> </data>
<data name="LOAD_IDX_VALUECheckBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="LOAD_IDX_VALUECheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>525, 18</value> <value>582, 18</value>
</data> </data>
<data name="LOAD_IDX_VALUECheckBox.TabIndex" type="System.Int32, mscorlib"> <data name="LOAD_IDX_VALUECheckBox.TabIndex" type="System.Int32, mscorlib">
<value>18</value> <value>18</value>
@@ -548,16 +647,16 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;LOAD_IDX_VALUECheckBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;LOAD_IDX_VALUECheckBox.ZOrder" xml:space="preserve">
<value>19</value> <value>23</value>
</data> </data>
<data name="VALIDATIONCheckbox.Location" type="System.Drawing.Point, System.Drawing"> <data name="VALIDATIONCheckbox.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 537</value> <value>24, 629</value>
</data> </data>
<data name="VALIDATIONCheckbox.Properties.Caption" xml:space="preserve"> <data name="VALIDATIONCheckbox.Properties.Caption" xml:space="preserve">
<value>Muss ausgefüllt werden</value> <value>Muss ausgefüllt werden</value>
</data> </data>
<data name="VALIDATIONCheckbox.Size" type="System.Drawing.Size, System.Drawing"> <data name="VALIDATIONCheckbox.Size" type="System.Drawing.Size, System.Drawing">
<value>260, 18</value> <value>288, 18</value>
</data> </data>
<data name="VALIDATIONCheckbox.TabIndex" type="System.Int32, mscorlib"> <data name="VALIDATIONCheckbox.TabIndex" type="System.Int32, mscorlib">
<value>19</value> <value>19</value>
@@ -572,16 +671,16 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;VALIDATIONCheckbox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;VALIDATIONCheckbox.ZOrder" xml:space="preserve">
<value>20</value> <value>24</value>
</data> </data>
<data name="ADVANCED_LOOKUPCheckbox.Location" type="System.Drawing.Point, System.Drawing"> <data name="ADVANCED_LOOKUPCheckbox.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 583</value> <value>24, 675</value>
</data> </data>
<data name="ADVANCED_LOOKUPCheckbox.Properties.Caption" xml:space="preserve"> <data name="ADVANCED_LOOKUPCheckbox.Properties.Caption" xml:space="preserve">
<value>Erweitertes Auswahl Control (für lange Listen)</value> <value>Erweitertes Auswahl Control (für lange Listen)</value>
</data> </data>
<data name="ADVANCED_LOOKUPCheckbox.Size" type="System.Drawing.Size, System.Drawing"> <data name="ADVANCED_LOOKUPCheckbox.Size" type="System.Drawing.Size, System.Drawing">
<value>525, 18</value> <value>582, 18</value>
</data> </data>
<data name="ADVANCED_LOOKUPCheckbox.TabIndex" type="System.Int32, mscorlib"> <data name="ADVANCED_LOOKUPCheckbox.TabIndex" type="System.Int32, mscorlib">
<value>20</value> <value>20</value>
@@ -596,13 +695,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;ADVANCED_LOOKUPCheckbox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;ADVANCED_LOOKUPCheckbox.ZOrder" xml:space="preserve">
<value>21</value> <value>25</value>
</data> </data>
<data name="DEFAULTVALUETextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="DEFAULTVALUETextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 392</value> <value>142, 392</value>
</data> </data>
<data name="DEFAULTVALUETextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="DEFAULTVALUETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>411, 20</value> <value>468, 20</value>
</data> </data>
<data name="DEFAULTVALUETextBox.TabIndex" type="System.Int32, mscorlib"> <data name="DEFAULTVALUETextBox.TabIndex" type="System.Int32, mscorlib">
<value>21</value> <value>21</value>
@@ -617,19 +716,19 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;DEFAULTVALUETextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;DEFAULTVALUETextBox.ZOrder" xml:space="preserve">
<value>22</value> <value>26</value>
</data> </data>
<data name="SEQUENCETextBox.EditValue" type="System.Decimal, mscorlib"> <data name="SEQUENCETextBox.EditValue" type="System.Decimal, mscorlib">
<value>0</value> <value>0</value>
</data> </data>
<data name="SEQUENCETextBox.Location" type="System.Drawing.Point, System.Drawing"> <data name="SEQUENCETextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>418, 140</value> <value>446, 140</value>
</data> </data>
<data name="SEQUENCETextBox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2"> <data name="SEQUENCETextBox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value> <value>Combo</value>
</data> </data>
<data name="SEQUENCETextBox.Size" type="System.Drawing.Size, System.Drawing"> <data name="SEQUENCETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>135, 20</value> <value>164, 20</value>
</data> </data>
<data name="SEQUENCETextBox.TabIndex" type="System.Int32, mscorlib"> <data name="SEQUENCETextBox.TabIndex" type="System.Int32, mscorlib">
<value>22</value> <value>22</value>
@@ -644,10 +743,10 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;SEQUENCETextBox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SEQUENCETextBox.ZOrder" xml:space="preserve">
<value>23</value> <value>27</value>
</data> </data>
<data name="SUMMARY_FUNCTIONCombobox.Location" type="System.Drawing.Point, System.Drawing"> <data name="SUMMARY_FUNCTIONCombobox.Location" type="System.Drawing.Point, System.Drawing">
<value>410, 537</value> <value>438, 629</value>
</data> </data>
<data name="SUMMARY_FUNCTIONCombobox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2"> <data name="SUMMARY_FUNCTIONCombobox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value> <value>Combo</value>
@@ -656,7 +755,7 @@
<value /> <value />
</data> </data>
<data name="SUMMARY_FUNCTIONCombobox.Size" type="System.Drawing.Size, System.Drawing"> <data name="SUMMARY_FUNCTIONCombobox.Size" type="System.Drawing.Size, System.Drawing">
<value>139, 20</value> <value>168, 20</value>
</data> </data>
<data name="SUMMARY_FUNCTIONCombobox.TabIndex" type="System.Int32, mscorlib"> <data name="SUMMARY_FUNCTIONCombobox.TabIndex" type="System.Int32, mscorlib">
<value>23</value> <value>23</value>
@@ -671,7 +770,7 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;SUMMARY_FUNCTIONCombobox.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SUMMARY_FUNCTIONCombobox.ZOrder" xml:space="preserve">
<value>24</value> <value>28</value>
</data> </data>
<data name="TYPE_COLUMNComboBox2.Location" type="System.Drawing.Point, System.Drawing"> <data name="TYPE_COLUMNComboBox2.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 180</value> <value>142, 180</value>
@@ -683,7 +782,7 @@
<value /> <value />
</data> </data>
<data name="TYPE_COLUMNComboBox2.Size" type="System.Drawing.Size, System.Drawing"> <data name="TYPE_COLUMNComboBox2.Size" type="System.Drawing.Size, System.Drawing">
<value>411, 20</value> <value>468, 20</value>
</data> </data>
<data name="TYPE_COLUMNComboBox2.TabIndex" type="System.Int32, mscorlib"> <data name="TYPE_COLUMNComboBox2.TabIndex" type="System.Int32, mscorlib">
<value>27</value> <value>27</value>
@@ -698,16 +797,16 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;TYPE_COLUMNComboBox2.ZOrder" xml:space="preserve"> <data name="&gt;&gt;TYPE_COLUMNComboBox2.ZOrder" xml:space="preserve">
<value>25</value> <value>29</value>
</data> </data>
<data name="CheckEditInheritValue.Location" type="System.Drawing.Point, System.Drawing"> <data name="CheckEditInheritValue.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 605</value> <value>24, 719</value>
</data> </data>
<data name="CheckEditInheritValue.Properties.Caption" xml:space="preserve"> <data name="CheckEditInheritValue.Properties.Caption" xml:space="preserve">
<value>Inherit Value (Vererbt den Wert der aktuellen Zelle auf alle nachfolgenden)</value> <value>Inherit Value (Vererbt den Wert der aktuellen Zelle auf alle nachfolgenden)</value>
</data> </data>
<data name="CheckEditInheritValue.Size" type="System.Drawing.Size, System.Drawing"> <data name="CheckEditInheritValue.Size" type="System.Drawing.Size, System.Drawing">
<value>525, 18</value> <value>582, 18</value>
</data> </data>
<data name="CheckEditInheritValue.TabIndex" type="System.Int32, mscorlib"> <data name="CheckEditInheritValue.TabIndex" type="System.Int32, mscorlib">
<value>28</value> <value>28</value>
@@ -722,7 +821,7 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;CheckEditInheritValue.ZOrder" xml:space="preserve"> <data name="&gt;&gt;CheckEditInheritValue.ZOrder" xml:space="preserve">
<value>26</value> <value>30</value>
</data> </data>
<data name="LayoutControl1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="LayoutControl1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
@@ -784,8 +883,14 @@
<data name="LayoutControlItem21.Text" xml:space="preserve"> <data name="LayoutControlItem21.Text" xml:space="preserve">
<value>Formatierung:</value> <value>Formatierung:</value>
</data> </data>
<data name="LayoutControlItem24.Text" xml:space="preserve">
<value>Formel:</value>
</data>
<data name="LayoutControlItem27.Text" xml:space="preserve">
<value>Formel SQL:</value>
</data>
<data name="LayoutControl1.Size" type="System.Drawing.Size, System.Drawing"> <data name="LayoutControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>573, 668</value> <value>630, 853</value>
</data> </data>
<data name="LayoutControl1.TabIndex" type="System.Int32, mscorlib"> <data name="LayoutControl1.TabIndex" type="System.Int32, mscorlib">
<value>33</value> <value>33</value>
@@ -812,7 +917,7 @@
<value>6, 13</value> <value>6, 13</value>
</data> </data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing"> <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>573, 757</value> <value>630, 942</value>
</data> </data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing"> <data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value> <value>Segoe UI, 8.25pt</value>
@@ -988,6 +1093,12 @@
<data name="&gt;&gt;LayoutControlItem17.Type" xml:space="preserve"> <data name="&gt;&gt;LayoutControlItem17.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;LayoutControlItem25.Name" xml:space="preserve">
<value>LayoutControlItem25</value>
</data>
<data name="&gt;&gt;LayoutControlItem25.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;LayoutControlItem20.Name" xml:space="preserve"> <data name="&gt;&gt;LayoutControlItem20.Name" xml:space="preserve">
<value>LayoutControlItem20</value> <value>LayoutControlItem20</value>
</data> </data>
@@ -1024,6 +1135,30 @@
<data name="&gt;&gt;LayoutControlItem21.Type" xml:space="preserve"> <data name="&gt;&gt;LayoutControlItem21.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;LayoutControlItem24.Name" xml:space="preserve">
<value>LayoutControlItem24</value>
</data>
<data name="&gt;&gt;LayoutControlItem24.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;LayoutControlItem26.Name" xml:space="preserve">
<value>LayoutControlItem26</value>
</data>
<data name="&gt;&gt;LayoutControlItem26.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;LayoutControlItem27.Name" xml:space="preserve">
<value>LayoutControlItem27</value>
</data>
<data name="&gt;&gt;LayoutControlItem27.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;LayoutControlItem15.Name" xml:space="preserve">
<value>LayoutControlItem15</value>
</data>
<data name="&gt;&gt;LayoutControlItem15.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve"> <data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmColumn_Detail</value> <value>frmColumn_Detail</value>
</data> </data>

View File

@@ -99,6 +99,8 @@ Public Class frmColumn_Detail
TYPE_COLUMNComboBox2.EditValue, TYPE_COLUMNComboBox2.EditValue,
LU_CAPTIONTextBox.Text, LU_CAPTIONTextBox.Text,
CheckEditInheritValue.Checked, CheckEditInheritValue.Checked,
FORMULA_EXPRESSIONTextBox.Text,
FORMULA_SQLTextBox.Text,
GUIDTextBox.Text GUIDTextBox.Text
) )
tslblAenderungen.Visibility = DevExpress.XtraBars.BarItemVisibility.Always tslblAenderungen.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
@@ -205,4 +207,70 @@ Public Class frmColumn_Detail
Private Sub RibbonControl1_Click(sender As Object, e As EventArgs) Handles RibbonControl1.Click Private Sub RibbonControl1_Click(sender As Object, e As EventArgs) Handles RibbonControl1.Click
End Sub End Sub
Private Sub SimpleButton3_Click(sender As Object, e As EventArgs) Handles SimpleButton3.Click
' Alle verfügbaren Spalten für dieses Control laden
Dim availableColumns As DataTable = GetAvailableColumnsForControl()
' Expression Designer öffnen
Using designer As New frmExpression_Designer(availableColumns, FORMULA_EXPRESSIONTextBox.Text)
If designer.ShowDialog() = DialogResult.OK Then
FORMULA_EXPRESSIONTextBox.Text = designer.Expression
End If
End Using
End Sub
Private Function GetAvailableColumnsForControl() As DataTable
' Spalten aus der aktuellen Control-Definition laden
Dim oSQL = "SELECT * FROM TBPM_CONTROL_TABLE WHERE CONTROL_ID = " & CURRENT_CONTROL_ID & " ORDER BY SEQUENCE"
Dim dt As DataTable = DatabaseFallback.GetDatatableECM(oSQL)
Return dt
End Function
Private Sub SimpleButton4_Click(sender As Object, e As EventArgs) Handles SimpleButton4.Click
Dim oldSQL = FORMULA_SQLTextBox.Text
CURRENT_DESIGN_TYPE = "SQL_SOURCE_TABLE_COLUMN"
CURRENT_INDEX_ID = GUIDTextBox.Text
Dim oForm2 As New frmSQLEditor(LOGCONFIG, DatabaseECM) With {
.SQLCommand = FORMULA_SQLTextBox.Text,
.SQLConnection = 0
}
oForm2.ShowDialog()
If oForm2.DialogResult = DialogResult.OK Then
If oldSQL <> oForm2.SQLCommand Then
Dim oUpdate As String = $"Update TBPM_CONTROL_TABLE SET CHANGED_WHO = '{USER_USERNAME}', FORMULA_SQL = '{oForm2.SQLCommand.Replace("'", "''")}'
, CONNECTION_ID = {oForm2.SQLConnection} WHERE GUID = {GUIDTextBox.Text}"
If DatabaseFallback.ExecuteNonQueryECM(oUpdate) = True Then
tslblAenderungen.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
tslblAenderungen.Caption = "Changes saved - " & Now
FORMULA_SQLTextBox.Text = oForm2.SQLCommand
Else
MsgBox("Fehler beim Speichern des SQL Befehls. Bitte überprüfen Sie Ihre Eingabe und versuchen Sie es erneut.", MsgBoxStyle.Critical, "Fehler")
End If
End If
End If
End Sub
Private Sub FORMULA_EXPRESSIONTextBox_TextChanged(sender As Object, e As EventArgs) Handles FORMULA_EXPRESSIONTextBox.TextChanged, FORMULA_SQLTextBox.TextChanged
Dim oHasFormulaExpression As Boolean = FORMULA_EXPRESSIONTextBox.Text.Trim() <> String.Empty
Dim oHasFormulaSql As Boolean = FORMULA_SQLTextBox.Text.Trim() <> String.Empty
' Entweder/Oder-Validierung: Beide gleichzeitig ist nicht erlaubt
If oHasFormulaExpression AndAlso oHasFormulaSql Then
MsgBox("Es darf nur FORMULA_EXPRESSION oder FORMULA_SQL gesetzt sein, nicht beides." & vbCrLf &
"Bitte leeren Sie eines der beiden Felder.",
MsgBoxStyle.Exclamation, "Ungültige Konfiguration")
End If
' Wenn eine Formel gesetzt ist → ReadOnly aktivieren und sperren
If oHasFormulaExpression OrElse oHasFormulaSql Then
READ_ONLYCheckBox.Checked = True
'READ_ONLYCheckBox.Enabled = False
Else
READ_ONLYCheckBox.Checked = False
'READ_ONLYCheckBox.Enabled = True
End If
End Sub
End Class End Class

View File

@@ -2,8 +2,21 @@
Public Class frmError Public Class frmError
Public ValidatorError As String = "" Public ValidatorError As String = ""
Private _isClosing As Boolean = False
Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click
Me.Close() ' ========== FIX 1: Event-Handler SOFORT deregistrieren ==========
RemoveHandler OK_Button.Click, AddressOf OK_Button_Click
' ========== DIAGNOSE: StackTrace ausgeben ==========
Dim st As New StackTrace(True)
LOGGER.Debug($"[frmError] OK_Button_Click aufgerufen von:")
For Each frame As StackFrame In st.GetFrames()
LOGGER.Debug($" {frame.GetMethod()?.DeclaringType?.Name}.{frame.GetMethod()?.Name} (Zeile {frame.GetFileLineNumber()})")
Next
' ========== ENDE DIAGNOSE ==========
CloseDialog()
End Sub End Sub
Private Sub frmError_Load(sender As Object, e As System.EventArgs) Handles Me.Load Private Sub frmError_Load(sender As Object, e As System.EventArgs) Handles Me.Load
@@ -27,7 +40,45 @@ Public Class frmError
End If End If
End Sub End Sub
Private Sub frmError_Shown(sender As Object, e As System.EventArgs) Handles Me.Shown Private Sub CloseDialog()
Me.Label1.Focus() ' ========== FIX 2: Guard mit Dispose-Check ==========
If _isClosing OrElse Me.IsDisposed Then
LOGGER.Debug($"[frmError] CloseDialog blockiert (isClosing={_isClosing}, IsDisposed={Me.IsDisposed})")
Exit Sub
End If
_isClosing = True
LOGGER.Debug($"[frmError] CloseDialog: Flag gesetzt, starte verzögerten Close")
' ========== FIX 3: VERZÖGERTER Close via BeginInvoke ==========
' KRITISCH: Close wird NACH Abschluss des aktuellen Event-Handlers ausgeführt
Me.BeginInvoke(New Action(Sub()
If Not Me.IsDisposed Then
Me.DialogResult = DialogResult.OK
Me.Close()
LOGGER.Debug($"[frmError] Dialog geschlossen via BeginInvoke")
End If
End Sub))
' ========== ENDE FIX 3 ==========
End Sub End Sub
Private Sub frmError_Shown(sender As Object, e As EventArgs) Handles Me.Shown
Me.Label1.Focus()
LOGGER.Debug($"[frmError] Dialog angezeigt - Enabled: {Me.Enabled}")
End Sub
Private Sub frmError_Activated(sender As Object, e As EventArgs) Handles Me.Activated
LOGGER.Debug($"[frmError] Dialog aktiviert")
End Sub
' ========== FIX 4: FormClosing-Handler hinzufügen ==========
Private Sub frmError_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
If _isClosing Then
LOGGER.Debug($"[frmError] FormClosing: Close bereits aktiv, erlauben")
Return
End If
' Falls Close von außen (z.B. [X]-Button) ausgelöst wurde
_isClosing = True
LOGGER.Debug($"[frmError] FormClosing: Flag gesetzt via FormClosing")
End Sub
' ========== ENDE FIX 4 ==========
End Class End Class

View File

@@ -0,0 +1,465 @@
Imports DevExpress.XtraEditors
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()>
Partial Class frmExpression_Designer
Inherits DevExpress.XtraEditors.XtraForm
'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()
Me.layoutControl1 = New DevExpress.XtraLayout.LayoutControl()
Me.btnClear = New DevExpress.XtraEditors.SimpleButton()
Me.btnCancel = New DevExpress.XtraEditors.SimpleButton()
Me.btnOK = New DevExpress.XtraEditors.SimpleButton()
Me.lblColumnCount = New System.Windows.Forms.Label()
Me.lblValidation = New System.Windows.Forms.Label()
Me.btnValidate = New DevExpress.XtraEditors.SimpleButton()
Me.panelOperators = New System.Windows.Forms.Panel()
Me.lstFunctions = New System.Windows.Forms.ListBox()
Me.lstColumns = New System.Windows.Forms.ListBox()
Me.txtExpression = New DevExpress.XtraEditors.MemoEdit()
Me.Root = New DevExpress.XtraLayout.LayoutControlGroup()
Me.layoutControlItem1 = New DevExpress.XtraLayout.LayoutControlItem()
Me.layoutControlItem2 = New DevExpress.XtraLayout.LayoutControlItem()
Me.layoutControlItem3 = New DevExpress.XtraLayout.LayoutControlItem()
Me.layoutControlItem4 = New DevExpress.XtraLayout.LayoutControlItem()
Me.layoutControlItem5 = New DevExpress.XtraLayout.LayoutControlItem()
Me.layoutControlItem6 = New DevExpress.XtraLayout.LayoutControlItem()
Me.layoutControlItem7 = New DevExpress.XtraLayout.LayoutControlItem()
Me.emptySpaceItem1 = New DevExpress.XtraLayout.EmptySpaceItem()
Me.layoutControlItem8 = New DevExpress.XtraLayout.LayoutControlItem()
Me.layoutControlItem9 = New DevExpress.XtraLayout.LayoutControlItem()
Me.layoutControlItem10 = New DevExpress.XtraLayout.LayoutControlItem()
Me.btnAdd = New DevExpress.XtraEditors.SimpleButton()
Me.btnSubtract = New DevExpress.XtraEditors.SimpleButton()
Me.btnMultiply = New DevExpress.XtraEditors.SimpleButton()
Me.btnDivide = New DevExpress.XtraEditors.SimpleButton()
Me.btnEquals = New DevExpress.XtraEditors.SimpleButton()
Me.btnNotEquals = New DevExpress.XtraEditors.SimpleButton()
Me.btnGreater = New DevExpress.XtraEditors.SimpleButton()
Me.btnLess = New DevExpress.XtraEditors.SimpleButton()
Me.btnAnd = New DevExpress.XtraEditors.SimpleButton()
Me.btnOr = New DevExpress.XtraEditors.SimpleButton()
Me.btnNot = New DevExpress.XtraEditors.SimpleButton()
Me.btnOpenBracket = New DevExpress.XtraEditors.SimpleButton()
Me.btnCloseBracket = New DevExpress.XtraEditors.SimpleButton()
CType(Me.layoutControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.layoutControl1.SuspendLayout()
CType(Me.txtExpression.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.Root, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem3, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem4, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem5, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem6, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem7, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.emptySpaceItem1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem8, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem9, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.layoutControlItem10, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'layoutControl1
'
Me.layoutControl1.Controls.Add(Me.btnClear)
Me.layoutControl1.Controls.Add(Me.btnCancel)
Me.layoutControl1.Controls.Add(Me.btnOK)
Me.layoutControl1.Controls.Add(Me.lblColumnCount)
Me.layoutControl1.Controls.Add(Me.lblValidation)
Me.layoutControl1.Controls.Add(Me.btnValidate)
Me.layoutControl1.Controls.Add(Me.panelOperators)
Me.layoutControl1.Controls.Add(Me.lstFunctions)
Me.layoutControl1.Controls.Add(Me.lstColumns)
Me.layoutControl1.Controls.Add(Me.txtExpression)
Me.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill
Me.layoutControl1.Location = New System.Drawing.Point(0, 0)
Me.layoutControl1.Name = "layoutControl1"
Me.layoutControl1.Root = Me.Root
Me.layoutControl1.Size = New System.Drawing.Size(900, 600)
Me.layoutControl1.TabIndex = 0
Me.layoutControl1.Text = "LayoutControl1"
'
'btnClear
'
Me.btnClear.Location = New System.Drawing.Point(809, 558)
Me.btnClear.Name = "btnClear"
Me.btnClear.Size = New System.Drawing.Size(79, 30)
Me.btnClear.StyleController = Me.layoutControl1
Me.btnClear.TabIndex = 13
Me.btnClear.Text = "Löschen"
'
'btnCancel
'
Me.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel
Me.btnCancel.Location = New System.Drawing.Point(724, 558)
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(81, 30)
Me.btnCancel.StyleController = Me.layoutControl1
Me.btnCancel.TabIndex = 12
Me.btnCancel.Text = "Abbrechen"
'
'btnOK
'
Me.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK
Me.btnOK.Location = New System.Drawing.Point(644, 558)
Me.btnOK.Name = "btnOK"
Me.btnOK.Size = New System.Drawing.Size(76, 30)
Me.btnOK.StyleController = Me.layoutControl1
Me.btnOK.TabIndex = 11
Me.btnOK.Text = "OK"
'
'lblColumnCount
'
Me.lblColumnCount.Location = New System.Drawing.Point(12, 472)
Me.lblColumnCount.Name = "lblColumnCount"
Me.lblColumnCount.Size = New System.Drawing.Size(876, 20)
Me.lblColumnCount.TabIndex = 10
Me.lblColumnCount.Text = "Referenzierte Spalten: 0"
'
'lblValidation
'
Me.lblValidation.Location = New System.Drawing.Point(116, 438)
Me.lblValidation.Name = "lblValidation"
Me.lblValidation.Size = New System.Drawing.Size(772, 30)
Me.lblValidation.TabIndex = 9
'
'btnValidate
'
Me.btnValidate.Location = New System.Drawing.Point(12, 438)
Me.btnValidate.Name = "btnValidate"
Me.btnValidate.Size = New System.Drawing.Size(100, 30)
Me.btnValidate.StyleController = Me.layoutControl1
Me.btnValidate.TabIndex = 8
Me.btnValidate.Text = "Validieren"
'
'panelOperators
'
Me.panelOperators.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
Me.panelOperators.Location = New System.Drawing.Point(602, 161)
Me.panelOperators.Name = "panelOperators"
Me.panelOperators.Size = New System.Drawing.Size(286, 273)
Me.panelOperators.TabIndex = 7
'
'lstFunctions
'
Me.lstFunctions.FormattingEnabled = True
Me.lstFunctions.Location = New System.Drawing.Point(307, 161)
Me.lstFunctions.Name = "lstFunctions"
Me.lstFunctions.Size = New System.Drawing.Size(291, 273)
Me.lstFunctions.TabIndex = 6
'
'lstColumns
'
Me.lstColumns.FormattingEnabled = True
Me.lstColumns.Location = New System.Drawing.Point(12, 161)
Me.lstColumns.Name = "lstColumns"
Me.lstColumns.Size = New System.Drawing.Size(291, 273)
Me.lstColumns.TabIndex = 5
'
'txtExpression
'
Me.txtExpression.Location = New System.Drawing.Point(12, 28)
Me.txtExpression.Name = "txtExpression"
Me.txtExpression.Properties.ScrollBars = System.Windows.Forms.ScrollBars.Both
Me.txtExpression.Properties.WordWrap = False
Me.txtExpression.Size = New System.Drawing.Size(876, 113)
Me.txtExpression.StyleController = Me.layoutControl1
Me.txtExpression.TabIndex = 4
'
'Root
'
Me.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[True]
Me.Root.GroupBordersVisible = False
Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.layoutControlItem1, Me.layoutControlItem2, Me.layoutControlItem3, Me.layoutControlItem4, Me.layoutControlItem5, Me.layoutControlItem6, Me.layoutControlItem7, Me.emptySpaceItem1, Me.layoutControlItem8, Me.layoutControlItem9, Me.layoutControlItem10})
Me.Root.Name = "Root"
Me.Root.Size = New System.Drawing.Size(900, 600)
Me.Root.TextVisible = False
'
'layoutControlItem1
'
Me.layoutControlItem1.Control = Me.txtExpression
Me.layoutControlItem1.Location = New System.Drawing.Point(0, 0)
Me.layoutControlItem1.Name = "layoutControlItem1"
Me.layoutControlItem1.Size = New System.Drawing.Size(880, 133)
Me.layoutControlItem1.Text = "Expression:"
Me.layoutControlItem1.TextLocation = DevExpress.Utils.Locations.Top
Me.layoutControlItem1.TextSize = New System.Drawing.Size(61, 13)
'
'layoutControlItem2
'
Me.layoutControlItem2.Control = Me.lstColumns
Me.layoutControlItem2.Location = New System.Drawing.Point(0, 133)
Me.layoutControlItem2.Name = "layoutControlItem2"
Me.layoutControlItem2.Size = New System.Drawing.Size(295, 293)
Me.layoutControlItem2.Text = "Verfügbare Spalten:"
Me.layoutControlItem2.TextLocation = DevExpress.Utils.Locations.Top
Me.layoutControlItem2.TextSize = New System.Drawing.Size(61, 13)
'
'layoutControlItem3
'
Me.layoutControlItem3.Control = Me.lstFunctions
Me.layoutControlItem3.Location = New System.Drawing.Point(295, 133)
Me.layoutControlItem3.Name = "layoutControlItem3"
Me.layoutControlItem3.Size = New System.Drawing.Size(295, 293)
Me.layoutControlItem3.Text = "Funktionen:"
Me.layoutControlItem3.TextLocation = DevExpress.Utils.Locations.Top
Me.layoutControlItem3.TextSize = New System.Drawing.Size(61, 13)
'
'layoutControlItem4
'
Me.layoutControlItem4.Control = Me.panelOperators
Me.layoutControlItem4.Location = New System.Drawing.Point(590, 133)
Me.layoutControlItem4.Name = "layoutControlItem4"
Me.layoutControlItem4.Size = New System.Drawing.Size(290, 293)
Me.layoutControlItem4.Text = "Operatoren:"
Me.layoutControlItem4.TextLocation = DevExpress.Utils.Locations.Top
Me.layoutControlItem4.TextSize = New System.Drawing.Size(61, 13)
'
'layoutControlItem5
'
Me.layoutControlItem5.Control = Me.btnValidate
Me.layoutControlItem5.Location = New System.Drawing.Point(0, 426)
Me.layoutControlItem5.MaxSize = New System.Drawing.Size(104, 34)
Me.layoutControlItem5.MinSize = New System.Drawing.Size(104, 34)
Me.layoutControlItem5.Name = "layoutControlItem5"
Me.layoutControlItem5.Size = New System.Drawing.Size(104, 34)
Me.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom
Me.layoutControlItem5.TextSize = New System.Drawing.Size(0, 0)
Me.layoutControlItem5.TextVisible = False
'
'layoutControlItem6
'
Me.layoutControlItem6.Control = Me.lblValidation
Me.layoutControlItem6.Location = New System.Drawing.Point(104, 426)
Me.layoutControlItem6.Name = "layoutControlItem6"
Me.layoutControlItem6.Size = New System.Drawing.Size(776, 34)
Me.layoutControlItem6.TextSize = New System.Drawing.Size(0, 0)
Me.layoutControlItem6.TextVisible = False
'
'layoutControlItem7
'
Me.layoutControlItem7.Control = Me.lblColumnCount
Me.layoutControlItem7.Location = New System.Drawing.Point(0, 460)
Me.layoutControlItem7.Name = "layoutControlItem7"
Me.layoutControlItem7.Size = New System.Drawing.Size(880, 24)
Me.layoutControlItem7.TextSize = New System.Drawing.Size(0, 0)
Me.layoutControlItem7.TextVisible = False
'
'emptySpaceItem1
'
Me.emptySpaceItem1.AllowHotTrack = False
Me.emptySpaceItem1.Location = New System.Drawing.Point(0, 484)
Me.emptySpaceItem1.Name = "emptySpaceItem1"
Me.emptySpaceItem1.Size = New System.Drawing.Size(632, 62)
Me.emptySpaceItem1.TextSize = New System.Drawing.Size(0, 0)
'
'layoutControlItem8
'
Me.layoutControlItem8.Control = Me.btnOK
Me.layoutControlItem8.Location = New System.Drawing.Point(632, 546)
Me.layoutControlItem8.MaxSize = New System.Drawing.Size(80, 34)
Me.layoutControlItem8.MinSize = New System.Drawing.Size(80, 34)
Me.layoutControlItem8.Name = "layoutControlItem8"
Me.layoutControlItem8.Size = New System.Drawing.Size(80, 34)
Me.layoutControlItem8.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom
Me.layoutControlItem8.TextSize = New System.Drawing.Size(0, 0)
Me.layoutControlItem8.TextVisible = False
'
'layoutControlItem9
'
Me.layoutControlItem9.Control = Me.btnCancel
Me.layoutControlItem9.Location = New System.Drawing.Point(712, 546)
Me.layoutControlItem9.MaxSize = New System.Drawing.Size(85, 34)
Me.layoutControlItem9.MinSize = New System.Drawing.Size(85, 34)
Me.layoutControlItem9.Name = "layoutControlItem9"
Me.layoutControlItem9.Size = New System.Drawing.Size(85, 34)
Me.layoutControlItem9.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom
Me.layoutControlItem9.TextSize = New System.Drawing.Size(0, 0)
Me.layoutControlItem9.TextVisible = False
'
'layoutControlItem10
'
Me.layoutControlItem10.Control = Me.btnClear
Me.layoutControlItem10.Location = New System.Drawing.Point(797, 546)
Me.layoutControlItem10.MaxSize = New System.Drawing.Size(83, 34)
Me.layoutControlItem10.MinSize = New System.Drawing.Size(83, 34)
Me.layoutControlItem10.Name = "layoutControlItem10"
Me.layoutControlItem10.Size = New System.Drawing.Size(83, 34)
Me.layoutControlItem10.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom
Me.layoutControlItem10.TextSize = New System.Drawing.Size(0, 0)
Me.layoutControlItem10.TextVisible = False
'
'btnAdd
'
Me.btnAdd.Name = "btnAdd"
Me.btnAdd.Size = New System.Drawing.Size(50, 30)
Me.btnAdd.TabIndex = 0
Me.btnAdd.Text = "+"
'
'btnSubtract
'
Me.btnSubtract.Name = "btnSubtract"
Me.btnSubtract.Size = New System.Drawing.Size(50, 30)
Me.btnSubtract.TabIndex = 1
Me.btnSubtract.Text = "-"
'
'btnMultiply
'
Me.btnMultiply.Name = "btnMultiply"
Me.btnMultiply.Size = New System.Drawing.Size(50, 30)
Me.btnMultiply.TabIndex = 2
Me.btnMultiply.Text = "*"
'
'btnDivide
'
Me.btnDivide.Name = "btnDivide"
Me.btnDivide.Size = New System.Drawing.Size(50, 30)
Me.btnDivide.TabIndex = 3
Me.btnDivide.Text = "/"
'
'btnEquals
'
Me.btnEquals.Name = "btnEquals"
Me.btnEquals.Size = New System.Drawing.Size(50, 30)
Me.btnEquals.TabIndex = 4
Me.btnEquals.Text = "="
'
'btnNotEquals
'
Me.btnNotEquals.Name = "btnNotEquals"
Me.btnNotEquals.Size = New System.Drawing.Size(50, 30)
Me.btnNotEquals.TabIndex = 5
Me.btnNotEquals.Text = "<>"
'
'btnGreater
'
Me.btnGreater.Name = "btnGreater"
Me.btnGreater.Size = New System.Drawing.Size(50, 30)
Me.btnGreater.TabIndex = 6
Me.btnGreater.Text = ">"
'
'btnLess
'
Me.btnLess.Name = "btnLess"
Me.btnLess.Size = New System.Drawing.Size(50, 30)
Me.btnLess.TabIndex = 7
Me.btnLess.Text = "<"
'
'btnAnd
'
Me.btnAnd.Name = "btnAnd"
Me.btnAnd.Size = New System.Drawing.Size(50, 30)
Me.btnAnd.TabIndex = 8
Me.btnAnd.Text = "AND"
'
'btnOr
'
Me.btnOr.Name = "btnOr"
Me.btnOr.Size = New System.Drawing.Size(50, 30)
Me.btnOr.TabIndex = 9
Me.btnOr.Text = "OR"
'
'btnNot
'
Me.btnNot.Name = "btnNot"
Me.btnNot.Size = New System.Drawing.Size(50, 30)
Me.btnNot.TabIndex = 10
Me.btnNot.Text = "NOT"
'
'btnOpenBracket
'
Me.btnOpenBracket.Name = "btnOpenBracket"
Me.btnOpenBracket.Size = New System.Drawing.Size(50, 30)
Me.btnOpenBracket.TabIndex = 11
Me.btnOpenBracket.Text = "("
'
'btnCloseBracket
'
Me.btnCloseBracket.Name = "btnCloseBracket"
Me.btnCloseBracket.Size = New System.Drawing.Size(50, 30)
Me.btnCloseBracket.TabIndex = 12
Me.btnCloseBracket.Text = ")"
'
'frmExpression_Designer
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(900, 600)
Me.Controls.Add(Me.layoutControl1)
Me.Name = "frmExpression_Designer"
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent
Me.Text = "Expression Designer"
CType(Me.layoutControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.layoutControl1.ResumeLayout(False)
CType(Me.txtExpression.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.Root, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem2, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem3, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem4, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem5, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem6, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem7, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.emptySpaceItem1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem8, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem9, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.layoutControlItem10, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
Friend WithEvents layoutControl1 As DevExpress.XtraLayout.LayoutControl
Friend WithEvents btnClear As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnCancel As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnOK As DevExpress.XtraEditors.SimpleButton
Friend WithEvents lblColumnCount As Label
Friend WithEvents lblValidation As Label
Friend WithEvents btnValidate As DevExpress.XtraEditors.SimpleButton
Friend WithEvents panelOperators As Panel
Friend WithEvents lstFunctions As ListBox
Friend WithEvents lstColumns As ListBox
Friend WithEvents txtExpression As DevExpress.XtraEditors.MemoEdit
Friend WithEvents Root As DevExpress.XtraLayout.LayoutControlGroup
Friend WithEvents layoutControlItem1 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents layoutControlItem2 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents layoutControlItem3 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents layoutControlItem4 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents layoutControlItem5 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents layoutControlItem6 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents layoutControlItem7 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents emptySpaceItem1 As DevExpress.XtraLayout.EmptySpaceItem
Friend WithEvents layoutControlItem8 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents layoutControlItem9 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents layoutControlItem10 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents btnAdd As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnSubtract As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnMultiply As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnDivide As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnEquals As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnNotEquals As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnGreater As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnLess As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnAnd As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnOr As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnNot As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnOpenBracket As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnCloseBracket As DevExpress.XtraEditors.SimpleButton
End Class

View File

@@ -0,0 +1,120 @@
<?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>
</root>

View File

@@ -0,0 +1,284 @@
Imports System.Text.RegularExpressions
Imports DevExpress.XtraEditors
Public Class frmExpression_Designer
Private _availableColumns As DataTable
Private _currentExpression As String = ""
Public Property Expression As String
Get
Return _currentExpression
End Get
Set(value As String)
_currentExpression = value
txtExpression.Text = value
End Set
End Property
Public Sub New(pAvailableColumns As DataTable, pCurrentExpression As String)
InitializeComponent()
_availableColumns = pAvailableColumns
_currentExpression = pCurrentExpression
End Sub
Private Sub ConfigureOperatorButtons()
Dim yPos As Integer = 10
' Arithmetische Operatoren
AddOperatorButton(btnAdd, "+", 10, yPos, "Addition")
AddOperatorButton(btnSubtract, "-", 70, yPos, "Subtraktion")
AddOperatorButton(btnMultiply, "*", 130, yPos, "Multiplikation")
AddOperatorButton(btnDivide, "/", 190, yPos, "Division")
yPos += 40
' Vergleichsoperatoren
AddOperatorButton(btnEquals, "=", 10, yPos, "Gleich")
AddOperatorButton(btnNotEquals, "<>", 70, yPos, "Ungleich")
AddOperatorButton(btnGreater, ">", 130, yPos, "Größer")
AddOperatorButton(btnLess, "<", 190, yPos, "Kleiner")
yPos += 40
' Logische Operatoren
AddOperatorButton(btnAnd, "AND", 10, yPos, "Und")
AddOperatorButton(btnOr, "OR", 70, yPos, "Oder")
AddOperatorButton(btnNot, "NOT", 130, yPos, "Nicht")
yPos += 40
' Klammern
AddOperatorButton(btnOpenBracket, "(", 10, yPos, "Öffnende Klammer")
AddOperatorButton(btnCloseBracket, ")", 70, yPos, "Schließende Klammer")
End Sub
Private Sub AddOperatorButton(btn As SimpleButton, text As String, x As Integer, y As Integer, tooltip As String)
btn.Text = text
btn.Location = New Point(x, y)
btn.Size = New Size(50, 30)
btn.ToolTip = tooltip
Me.panelOperators.Controls.Add(btn)
End Sub
Private Sub frmExpressionDesigner_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' ZUERST Operatoren-Buttons erstellen
ConfigureOperatorButtons()
' Spalten laden
LoadAvailableColumns()
' Funktionen laden
LoadFunctions()
' Operatoren laden
LoadOperators()
' Aktuelle Expression anzeigen
txtExpression.Text = _currentExpression
' Syntax-Highlighting aktivieren (optional)
UpdateSyntaxHighlighting()
' Event-Handler für Text-Änderungen hinzufügen
AddHandler txtExpression.EditValueChanged, AddressOf txtExpression_EditValueChanged
End Sub
Private Sub txtExpression_EditValueChanged(sender As Object, e As EventArgs)
' Validierungsmeldung zurücksetzen
lblValidation.Text = String.Empty
lblValidation.ForeColor = Color.Black
' Syntax-Highlighting aktualisieren
UpdateSyntaxHighlighting()
' Aktuellen Wert speichern
_currentExpression = txtExpression.Text
End Sub
Private Sub LoadAvailableColumns()
lstColumns.Items.Clear()
For Each row As DataRow In _availableColumns.Rows
Dim columnName As String = row.Item("SPALTENNAME").ToString()
Dim columnType As String = row.Item("TYPE_COLUMN").ToString()
Dim displayText As String = $"{columnName} ({columnType})"
lstColumns.Items.Add(New ListBoxItem With {
.DisplayText = displayText,
.ColumnName = columnName,
.DataType = columnType
})
Next
End Sub
Private Sub LoadFunctions()
lstFunctions.Items.Clear()
' Mathematische Funktionen
lstFunctions.Items.Add(New FunctionItem("IIF", "IIF([Bedingung], Wahr, Falsch)", "Bedingte Verzweigung"))
lstFunctions.Items.Add(New FunctionItem("IsNull", "IsNull([Spalte], Ersatzwert)", "Null-Behandlung"))
lstFunctions.Items.Add(New FunctionItem("Convert", "Convert([Spalte], 'System.Double')", "Typkonvertierung"))
' String-Funktionen
lstFunctions.Items.Add(New FunctionItem("Len", "Len([Text])", "Länge eines Textes"))
lstFunctions.Items.Add(New FunctionItem("Trim", "Trim([Text])", "Leerzeichen entfernen"))
lstFunctions.Items.Add(New FunctionItem("Substring", "Substring([Text], Start, Länge)", "Teilstring extrahieren"))
End Sub
Private Sub LoadOperators()
' Arithmetische Operatoren
btnAdd.Tag = " + "
btnSubtract.Tag = " - "
btnMultiply.Tag = " * "
btnDivide.Tag = " / "
' Vergleichsoperatoren
btnEquals.Tag = " = "
btnNotEquals.Tag = " <> "
btnGreater.Tag = " > "
btnLess.Tag = " < "
' Logische Operatoren
btnAnd.Tag = " AND "
btnOr.Tag = " OR "
btnNot.Tag = " NOT "
' Klammern
btnOpenBracket.Tag = "("
btnCloseBracket.Tag = ")"
End Sub
Private Sub lstColumns_DoubleClick(sender As Object, e As EventArgs) Handles lstColumns.DoubleClick
If lstColumns.SelectedItem IsNot Nothing Then
Dim item As ListBoxItem = CType(lstColumns.SelectedItem, ListBoxItem)
InsertText($"[{item.ColumnName}]")
End If
End Sub
Private Sub lstFunctions_DoubleClick(sender As Object, e As EventArgs) Handles lstFunctions.DoubleClick
If lstFunctions.SelectedItem IsNot Nothing Then
Dim item As FunctionItem = CType(lstFunctions.SelectedItem, FunctionItem)
InsertText(item.Template)
End If
End Sub
Private Sub Operator_Click(sender As Object, e As EventArgs) Handles btnAdd.Click, btnSubtract.Click, btnMultiply.Click, btnDivide.Click,
btnEquals.Click, btnNotEquals.Click, btnGreater.Click, btnLess.Click,
btnAnd.Click, btnOr.Click, btnNot.Click,
btnOpenBracket.Click, btnCloseBracket.Click
Dim btn As SimpleButton = CType(sender, SimpleButton)
InsertText(btn.Tag.ToString())
End Sub
Private Sub InsertText(text As String)
Dim selectionStart As Integer = txtExpression.SelectionStart
txtExpression.Text = txtExpression.Text.Insert(selectionStart, text)
txtExpression.SelectionStart = selectionStart + text.Length
txtExpression.Focus()
_currentExpression = txtExpression.Text
' UpdateSyntaxHighlighting() wird jetzt im Event-Handler aufgerufen
End Sub
Private Sub btnValidate_Click(sender As Object, e As EventArgs) Handles btnValidate.Click
ValidateExpression()
End Sub
Private Sub ValidateExpression()
Try
' Testdatatable erstellen
Dim testTable As New DataTable()
' Spalten hinzufügen
For Each row As DataRow In _availableColumns.Rows
Dim colName As String = row.Item("SPALTENNAME").ToString()
Dim colType As String = row.Item("TYPE_COLUMN").ToString()
Dim dataType As Type = GetType(String)
Select Case colType
Case "INTEGER"
dataType = GetType(Integer)
Case "DOUBLE", "CURRENCY"
dataType = GetType(Double)
Case "BOOLEAN"
dataType = GetType(Boolean)
End Select
testTable.Columns.Add(colName, dataType)
Next
' Test-Spalte mit Expression erstellen
Dim testColumn As New DataColumn("TEST_EXPRESSION") With {
.Expression = txtExpression.Text
}
testTable.Columns.Add(testColumn)
' Erfolg!
lblValidation.Text = "✓ Expression ist gültig!"
lblValidation.ForeColor = Color.Green
Catch ex As Exception
lblValidation.Text = $"⚠️ Fehler: {ex.Message}"
lblValidation.ForeColor = Color.Red
End Try
End Sub
Private Sub UpdateSyntaxHighlighting()
' Optional: Einfaches Syntax-Highlighting
' Spalten-Referenzen markieren
Dim pattern As String = "\[([^\]]+)\]"
Dim matches = Regex.Matches(txtExpression.Text, pattern)
' Anzahl der referenzierten Spalten anzeigen
lblColumnCount.Text = $"Referenzierte Spalten: {matches.Count}"
End Sub
Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click
' Finale Validierung
ValidateExpression()
If lblValidation.ForeColor = Color.Green Then
_currentExpression = txtExpression.Text
Me.DialogResult = DialogResult.OK
Me.Close()
Else
MessageBox.Show("Bitte korrigieren Sie die Expression zuerst!", "Validierung fehlgeschlagen", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End If
End Sub
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
Me.DialogResult = DialogResult.Cancel
Me.Close()
End Sub
Private Sub btnClear_Click(sender As Object, e As EventArgs) Handles btnClear.Click
txtExpression.EditValue = String.Empty
_currentExpression = ""
End Sub
' Hilfeklassen
Private Class ListBoxItem
Public Property DisplayText As String
Public Property ColumnName As String
Public Property DataType As String
Public Overrides Function ToString() As String
Return DisplayText
End Function
End Class
Private Class FunctionItem
Public Property Name As String
Public Property Template As String
Public Property Description As String
Public Sub New(name As String, template As String, description As String)
Me.Name = name
Me.Template = template
Me.Description = description
End Sub
Public Overrides Function ToString() As String
Return $"{Name} - {Description}"
End Function
End Class
End Class

View File

@@ -25,6 +25,8 @@ Partial Class frmFormDesigner
Me.components = New System.ComponentModel.Container() Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmFormDesigner)) Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmFormDesigner))
Me.SplitContainerDesigner = New System.Windows.Forms.SplitContainer() Me.SplitContainerDesigner = New System.Windows.Forms.SplitContainer()
Me.TBPM_CONTROL_TABLEBindingSource = New System.Windows.Forms.BindingSource(Me.components)
Me.DD_DMSLiteDataSet = New taskFLOW.DD_DMSLiteDataSet()
Me.pnldesigner = New DigitalData.Controls.SnapPanel.ClassSnapPanel() Me.pnldesigner = New DigitalData.Controls.SnapPanel.ClassSnapPanel()
Me.Panel1 = New System.Windows.Forms.Panel() Me.Panel1 = New System.Windows.Forms.Panel()
Me.pgControlsNew = New DevExpress.XtraVerticalGrid.PropertyGridControl() Me.pgControlsNew = New DevExpress.XtraVerticalGrid.PropertyGridControl()
@@ -59,7 +61,6 @@ Partial Class frmFormDesigner
Me.RibPGCtrlheight = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibPGCtrlheight = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.TBPM_PROFILE_CONTROLSBindingSource = New System.Windows.Forms.BindingSource(Me.components) Me.TBPM_PROFILE_CONTROLSBindingSource = New System.Windows.Forms.BindingSource(Me.components)
Me.DD_DMSLiteDataSet = New taskFLOW.DD_DMSLiteDataSet()
Me.TBDD_CONNECTIONBindingSource = New System.Windows.Forms.BindingSource(Me.components) Me.TBDD_CONNECTIONBindingSource = New System.Windows.Forms.BindingSource(Me.components)
Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components) Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components)
Me.GridControlContextMenu = New System.Windows.Forms.ContextMenuStrip(Me.components) Me.GridControlContextMenu = New System.Windows.Forms.ContextMenuStrip(Me.components)
@@ -69,7 +70,6 @@ Partial Class frmFormDesigner
Me.TBDD_CONNECTIONTableAdapter = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TBDD_CONNECTIONTableAdapter() Me.TBDD_CONNECTIONTableAdapter = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TBDD_CONNECTIONTableAdapter()
Me.TBWH_CHECK_PROFILE_CONTROLSBindingSource = New System.Windows.Forms.BindingSource(Me.components) Me.TBWH_CHECK_PROFILE_CONTROLSBindingSource = New System.Windows.Forms.BindingSource(Me.components)
Me.TBWH_CHECK_PROFILE_CONTROLSTableAdapter = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TBWH_CHECK_PROFILE_CONTROLSTableAdapter() Me.TBWH_CHECK_PROFILE_CONTROLSTableAdapter = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TBWH_CHECK_PROFILE_CONTROLSTableAdapter()
Me.TBPM_CONTROL_TABLEBindingSource = New System.Windows.Forms.BindingSource(Me.components)
Me.TBPM_CONTROL_TABLETableAdapter = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TBPM_CONTROL_TABLETableAdapter() Me.TBPM_CONTROL_TABLETableAdapter = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TBPM_CONTROL_TABLETableAdapter()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RPGControlFunction = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RPGControlFunction = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
@@ -79,15 +79,15 @@ Partial Class frmFormDesigner
Me.SplitContainerDesigner.Panel1.SuspendLayout() Me.SplitContainerDesigner.Panel1.SuspendLayout()
Me.SplitContainerDesigner.Panel2.SuspendLayout() Me.SplitContainerDesigner.Panel2.SuspendLayout()
Me.SplitContainerDesigner.SuspendLayout() Me.SplitContainerDesigner.SuspendLayout()
CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
Me.Panel1.SuspendLayout() Me.Panel1.SuspendLayout()
CType(Me.pgControlsNew, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.pgControlsNew, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TBPM_PROFILE_CONTROLSBindingSource, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.TBPM_PROFILE_CONTROLSBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TBDD_CONNECTIONBindingSource, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.TBDD_CONNECTIONBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
Me.GridControlContextMenu.SuspendLayout() Me.GridControlContextMenu.SuspendLayout()
CType(Me.TBWH_CHECK_PROFILE_CONTROLSBindingSource, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.TBWH_CHECK_PROFILE_CONTROLSBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout() Me.SuspendLayout()
' '
'SplitContainerDesigner 'SplitContainerDesigner
@@ -97,12 +97,23 @@ Partial Class frmFormDesigner
' '
'SplitContainerDesigner.Panel1 'SplitContainerDesigner.Panel1
' '
resources.ApplyResources(Me.SplitContainerDesigner.Panel1, "SplitContainerDesigner.Panel1")
Me.SplitContainerDesigner.Panel1.Controls.Add(Me.pnldesigner) Me.SplitContainerDesigner.Panel1.Controls.Add(Me.pnldesigner)
' '
'SplitContainerDesigner.Panel2 'SplitContainerDesigner.Panel2
' '
Me.SplitContainerDesigner.Panel2.Controls.Add(Me.Panel1) Me.SplitContainerDesigner.Panel2.Controls.Add(Me.Panel1)
' '
'TBPM_CONTROL_TABLEBindingSource
'
Me.TBPM_CONTROL_TABLEBindingSource.DataMember = "TBPM_CONTROL_TABLE"
Me.TBPM_CONTROL_TABLEBindingSource.DataSource = Me.DD_DMSLiteDataSet
'
'DD_DMSLiteDataSet
'
Me.DD_DMSLiteDataSet.DataSetName = "DD_DMSLiteDataSet"
Me.DD_DMSLiteDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema
'
'pnldesigner 'pnldesigner
' '
resources.ApplyResources(Me.pnldesigner, "pnldesigner") resources.ApplyResources(Me.pnldesigner, "pnldesigner")
@@ -359,11 +370,6 @@ Partial Class frmFormDesigner
Me.TBPM_PROFILE_CONTROLSBindingSource.DataMember = "TBPM_PROFILE_CONTROLS" Me.TBPM_PROFILE_CONTROLSBindingSource.DataMember = "TBPM_PROFILE_CONTROLS"
Me.TBPM_PROFILE_CONTROLSBindingSource.DataSource = Me.DD_DMSLiteDataSet Me.TBPM_PROFILE_CONTROLSBindingSource.DataSource = Me.DD_DMSLiteDataSet
' '
'DD_DMSLiteDataSet
'
Me.DD_DMSLiteDataSet.DataSetName = "DD_DMSLiteDataSet"
Me.DD_DMSLiteDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema
'
'TBDD_CONNECTIONBindingSource 'TBDD_CONNECTIONBindingSource
' '
Me.TBDD_CONNECTIONBindingSource.DataMember = "TBDD_CONNECTION" Me.TBDD_CONNECTIONBindingSource.DataMember = "TBDD_CONNECTION"
@@ -414,11 +420,6 @@ Partial Class frmFormDesigner
' '
Me.TBWH_CHECK_PROFILE_CONTROLSTableAdapter.ClearBeforeFill = True Me.TBWH_CHECK_PROFILE_CONTROLSTableAdapter.ClearBeforeFill = True
' '
'TBPM_CONTROL_TABLEBindingSource
'
Me.TBPM_CONTROL_TABLEBindingSource.DataMember = "TBPM_CONTROL_TABLE"
Me.TBPM_CONTROL_TABLEBindingSource.DataSource = Me.DD_DMSLiteDataSet
'
'TBPM_CONTROL_TABLETableAdapter 'TBPM_CONTROL_TABLETableAdapter
' '
Me.TBPM_CONTROL_TABLETableAdapter.ClearBeforeFill = True Me.TBPM_CONTROL_TABLETableAdapter.ClearBeforeFill = True
@@ -463,15 +464,15 @@ Partial Class frmFormDesigner
Me.SplitContainerDesigner.Panel2.ResumeLayout(False) Me.SplitContainerDesigner.Panel2.ResumeLayout(False)
CType(Me.SplitContainerDesigner, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.SplitContainerDesigner, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerDesigner.ResumeLayout(False) Me.SplitContainerDesigner.ResumeLayout(False)
CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).EndInit()
Me.Panel1.ResumeLayout(False) Me.Panel1.ResumeLayout(False)
CType(Me.pgControlsNew, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.pgControlsNew, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TBPM_PROFILE_CONTROLSBindingSource, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.TBPM_PROFILE_CONTROLSBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TBDD_CONNECTIONBindingSource, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.TBDD_CONNECTIONBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
Me.GridControlContextMenu.ResumeLayout(False) Me.GridControlContextMenu.ResumeLayout(False)
CType(Me.TBWH_CHECK_PROFILE_CONTROLSBindingSource, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.TBWH_CHECK_PROFILE_CONTROLSBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False) Me.ResumeLayout(False)
Me.PerformLayout() Me.PerformLayout()

View File

@@ -126,6 +126,9 @@
<value>0, 132</value> <value>0, 132</value>
</data> </data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="SplitContainerDesigner.Panel1.AutoScroll" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="pnldesigner.AutoScroll" type="System.Boolean, mscorlib"> <data name="pnldesigner.AutoScroll" type="System.Boolean, mscorlib">
<value>True</value> <value>True</value>
</data> </data>
@@ -562,12 +565,15 @@
<data name="&gt;&gt;SplitContainerDesigner.ZOrder" xml:space="preserve"> <data name="&gt;&gt;SplitContainerDesigner.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<metadata name="TBPM_PROFILE_CONTROLSBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="TBPM_CONTROL_TABLEBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>368, 17</value> <value>17, 95</value>
</metadata> </metadata>
<metadata name="DD_DMSLiteDataSet.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="DD_DMSLiteDataSet.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>206, 17</value> <value>206, 17</value>
</metadata> </metadata>
<metadata name="TBPM_PROFILE_CONTROLSBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>368, 17</value>
</metadata>
<metadata name="TBDD_CONNECTIONBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="TBDD_CONNECTIONBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 56</value> <value>17, 56</value>
</metadata> </metadata>
@@ -607,9 +613,6 @@
<metadata name="TBWH_CHECK_PROFILE_CONTROLSTableAdapter.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="TBWH_CHECK_PROFILE_CONTROLSTableAdapter.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>823, 56</value> <value>823, 56</value>
</metadata> </metadata>
<metadata name="TBPM_CONTROL_TABLEBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 95</value>
</metadata>
<metadata name="TBPM_CONTROL_TABLETableAdapter.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="TBPM_CONTROL_TABLETableAdapter.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>278, 95</value> <value>278, 95</value>
</metadata> </metadata>
@@ -1068,6 +1071,18 @@
<data name="$this.Text" xml:space="preserve"> <data name="$this.Text" xml:space="preserve">
<value>Formular Designer</value> <value>Formular Designer</value>
</data> </data>
<data name="&gt;&gt;TBPM_CONTROL_TABLEBindingSource.Name" xml:space="preserve">
<value>TBPM_CONTROL_TABLEBindingSource</value>
</data>
<data name="&gt;&gt;TBPM_CONTROL_TABLEBindingSource.Type" xml:space="preserve">
<value>System.Windows.Forms.BindingSource, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;DD_DMSLiteDataSet.Name" xml:space="preserve">
<value>DD_DMSLiteDataSet</value>
</data>
<data name="&gt;&gt;DD_DMSLiteDataSet.Type" xml:space="preserve">
<value>taskFLOW.DD_DMSLiteDataSet, DD_DMSLiteDataSet.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;bbtnItemFinishSQL.Name" xml:space="preserve"> <data name="&gt;&gt;bbtnItemFinishSQL.Name" xml:space="preserve">
<value>bbtnItemFinishSQL</value> <value>bbtnItemFinishSQL</value>
</data> </data>
@@ -1242,12 +1257,6 @@
<data name="&gt;&gt;TBPM_PROFILE_CONTROLSBindingSource.Type" xml:space="preserve"> <data name="&gt;&gt;TBPM_PROFILE_CONTROLSBindingSource.Type" xml:space="preserve">
<value>System.Windows.Forms.BindingSource, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.BindingSource, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;DD_DMSLiteDataSet.Name" xml:space="preserve">
<value>DD_DMSLiteDataSet</value>
</data>
<data name="&gt;&gt;DD_DMSLiteDataSet.Type" xml:space="preserve">
<value>taskFLOW.DD_DMSLiteDataSet, DD_DMSLiteDataSet.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;TBDD_CONNECTIONBindingSource.Name" xml:space="preserve"> <data name="&gt;&gt;TBDD_CONNECTIONBindingSource.Name" xml:space="preserve">
<value>TBDD_CONNECTIONBindingSource</value> <value>TBDD_CONNECTIONBindingSource</value>
</data> </data>
@@ -1296,12 +1305,6 @@
<data name="&gt;&gt;TBWH_CHECK_PROFILE_CONTROLSTableAdapter.Type" xml:space="preserve"> <data name="&gt;&gt;TBWH_CHECK_PROFILE_CONTROLSTableAdapter.Type" xml:space="preserve">
<value>taskFLOW.DD_DMSLiteDataSetTableAdapters.TBWH_CHECK_PROFILE_CONTROLSTableAdapter, DD_DMSLiteDataSet.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value> <value>taskFLOW.DD_DMSLiteDataSetTableAdapters.TBWH_CHECK_PROFILE_CONTROLSTableAdapter, DD_DMSLiteDataSet.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;TBPM_CONTROL_TABLEBindingSource.Name" xml:space="preserve">
<value>TBPM_CONTROL_TABLEBindingSource</value>
</data>
<data name="&gt;&gt;TBPM_CONTROL_TABLEBindingSource.Type" xml:space="preserve">
<value>System.Windows.Forms.BindingSource, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TBPM_CONTROL_TABLETableAdapter.Name" xml:space="preserve"> <data name="&gt;&gt;TBPM_CONTROL_TABLETableAdapter.Name" xml:space="preserve">
<value>TBPM_CONTROL_TABLETableAdapter</value> <value>TBPM_CONTROL_TABLETableAdapter</value>
</data> </data>

View File

@@ -291,20 +291,25 @@ Public Class frmFormDesigner
SetMovementHandlers(dgv) SetMovementHandlers(dgv)
Case "TABLE" Case "TABLE"
Try
Dim oSQL = $"Select IIF(LANG.CAPTION Is NULL,T.SPALTEN_HEADER,LANG.CAPTION) SPALTEN_HEADER_LANG, T.* FROM TBPM_CONTROL_TABLE T Dim oSQL = $"Select IIF(LANG.CAPTION Is NULL,T.SPALTEN_HEADER,LANG.CAPTION) SPALTEN_HEADER_LANG, T.* FROM TBPM_CONTROL_TABLE T
INNER JOIN TBPM_PROFILE_CONTROLS T1 ON T.CONTROL_ID = T1.GUID LEFT JOIN (SELECT * FROM TBPM_CONTOL_TABLE_LANG WHERE LANG_CODE = '{USER_LANGUAGE}') LANG ON T.GUID = LANG.COL_ID INNER JOIN TBPM_PROFILE_CONTROLS T1 ON T.CONTROL_ID = T1.GUID LEFT JOIN (SELECT * FROM TBPM_CONTOL_TABLE_LANG WHERE LANG_CODE = '{USER_LANGUAGE}') LANG ON T.GUID = LANG.COL_ID
WHERE T1.CONTROL_ACTIVE = 1 AND T.CONTROL_ID = T1.GUID AND T.CONTROL_ID = {guid} ORDER BY T.SEQUENCE" WHERE T1.CONTROL_ACTIVE = 1 AND T.CONTROL_ID = T1.GUID AND T.CONTROL_ID = {guid} ORDER BY T.SEQUENCE"
Dim oDTColumnsPerDevExGrid As DataTable = DatabaseFallback.GetDatatableECM(oSQL) ', "FDesignLaodControls") Dim oDTColumnsPerDevExGrid As DataTable = DatabaseFallback.GetDatatableECM(oSQL) ', "FDesignLaodControls")
Dim table = ControlCreator.CreateExistingGridControl(row, oDTColumnsPerDevExGrid, True, "EUR") Dim table = ControlCreator.CreateExistingGridControl(row, oDTColumnsPerDevExGrid, True, "EUR")
AddHandler table.MouseClick, AddressOf gridControl_MouseClick AddHandler table.MouseClick, AddressOf gridControl_MouseClick
' AddHandler table.ColumnHeaderMouseClick, AddressOf table_ColumnHeaderMouseClick ' AddHandler table.ColumnHeaderMouseClick, AddressOf table_ColumnHeaderMouseClick
pnldesigner.Controls.Add(table)
SetMovementHandlers(table)
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error while loading Table Control with Id " & guid & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Achtung:")
End Try
pnldesigner.Controls.Add(table)
SetMovementHandlers(table)
Case "LOOKUP" Case "LOOKUP"
Dim lookup = ControlCreator.CreateExistingLookupControl(row, True) Dim lookup = ControlCreator.CreateExistingLookupControl(row, True)

View File

@@ -1,11 +1,11 @@
Public Class frmGhostMode Public Class frmGhostMode
Private Sub frmGhostMode_Load(sender As Object, e As EventArgs) Handles Me.Load Private Sub frmGhostMode_Load(sender As Object, e As EventArgs) Handles Me.Load
Dim oSQL = "SELECT [SQL_COMMAND] FROM TBDD_SQL_COMMANDS where TITLE = 'GHOST_SELECT'" Dim oSQL = "SELECT [SQL_COMMAND] FROM TBDD_SQL_COMMANDS WITH (NOLOCK) where TITLE = 'GHOST_SELECT'"
Dim DT_USER = DatabaseFallback.GetDatatableECM(oSQL) Dim DT_USER = DatabaseFallback.GetDatatableECM(oSQL)
' '
If IsNothing(DT_USER) Then If IsNothing(DT_USER) Then
LOGGER.Info("GHOST Select 1 was nothing, now trying 2nd..") LOGGER.Info("GHOST Select 1 was nothing, now trying 2nd..")
oSQL = "SELECT CONFIG_VALUE FROM TBIDB_BASE WHERE CONFIG_NAME = 'GHOST_SELECT'" oSQL = "SELECT CONFIG_VALUE FROM TBIDB_BASE WITH (NOLOCK) WHERE CONFIG_NAME = 'GHOST_SELECT'"
If Not IsNothing(oSQL) Then If Not IsNothing(oSQL) Then
oSQL = DatabaseFallback.GetScalarValueIDB(oSQL) oSQL = DatabaseFallback.GetScalarValueIDB(oSQL)
DT_USER = DatabaseFallback.GetDatatableIDB(oSQL) DT_USER = DatabaseFallback.GetDatatableIDB(oSQL)

View File

@@ -125,7 +125,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw
CAAAAk1TRnQBSQFMAgEBAgEAAbABCwGwAQsBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo CAAAAk1TRnQBSQFMAgEBAgEAAQgBDAEIAQwBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@@ -1506,13 +1506,13 @@
<value>Aktionen</value> <value>Aktionen</value>
</data> </data>
<data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing"> <data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>1178, 158</value> <value>1473, 158</value>
</data> </data>
<data name="RibbonStatusBar1.Location" type="System.Drawing.Point, System.Drawing"> <data name="RibbonStatusBar1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 666</value> <value>0, 838</value>
</data> </data>
<data name="RibbonStatusBar1.Size" type="System.Drawing.Size, System.Drawing"> <data name="RibbonStatusBar1.Size" type="System.Drawing.Size, System.Drawing">
<value>1178, 22</value> <value>1473, 22</value>
</data> </data>
<data name="&gt;&gt;RibbonStatusBar1.Name" xml:space="preserve"> <data name="&gt;&gt;RibbonStatusBar1.Name" xml:space="preserve">
<value>RibbonStatusBar1</value> <value>RibbonStatusBar1</value>
@@ -1539,7 +1539,7 @@
<value>4</value> <value>4</value>
</data> </data>
<data name="GridControlWorkflows.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlWorkflows.Size" type="System.Drawing.Size, System.Drawing">
<value>945, 484</value> <value>1240, 656</value>
</data> </data>
<data name="GridControlWorkflows.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlWorkflows.TabIndex" type="System.Int32, mscorlib">
<value>10</value> <value>10</value>
@@ -1575,7 +1575,7 @@
<value>233, 0</value> <value>233, 0</value>
</data> </data>
<data name="Panel2.Size" type="System.Drawing.Size, System.Drawing"> <data name="Panel2.Size" type="System.Drawing.Size, System.Drawing">
<value>945, 24</value> <value>1240, 24</value>
</data> </data>
<data name="Panel2.TabIndex" type="System.Int32, mscorlib"> <data name="Panel2.TabIndex" type="System.Int32, mscorlib">
<value>9</value> <value>9</value>
@@ -1782,7 +1782,7 @@
<value>233</value> <value>233</value>
</data> </data>
<data name="NavBarControl1.Size" type="System.Drawing.Size, System.Drawing"> <data name="NavBarControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>233, 508</value> <value>233, 680</value>
</data> </data>
<data name="NavBarControl1.TabIndex" type="System.Int32, mscorlib"> <data name="NavBarControl1.TabIndex" type="System.Int32, mscorlib">
<value>5</value> <value>5</value>
@@ -1812,7 +1812,7 @@
<value>0, 158</value> <value>0, 158</value>
</data> </data>
<data name="Panel1.Size" type="System.Drawing.Size, System.Drawing"> <data name="Panel1.Size" type="System.Drawing.Size, System.Drawing">
<value>1178, 508</value> <value>1473, 680</value>
</data> </data>
<data name="Panel1.TabIndex" type="System.Int32, mscorlib"> <data name="Panel1.TabIndex" type="System.Int32, mscorlib">
<value>4</value> <value>4</value>
@@ -2042,10 +2042,10 @@
<value>Bottom</value> <value>Bottom</value>
</data> </data>
<data name="barDockControlBottom.Location" type="System.Drawing.Point, System.Drawing"> <data name="barDockControlBottom.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 688</value> <value>0, 860</value>
</data> </data>
<data name="barDockControlBottom.Size" type="System.Drawing.Size, System.Drawing"> <data name="barDockControlBottom.Size" type="System.Drawing.Size, System.Drawing">
<value>1178, 0</value> <value>1473, 0</value>
</data> </data>
<data name="&gt;&gt;barDockControlBottom.Name" xml:space="preserve"> <data name="&gt;&gt;barDockControlBottom.Name" xml:space="preserve">
<value>barDockControlBottom</value> <value>barDockControlBottom</value>
@@ -2066,7 +2066,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="barDockControlLeft.Size" type="System.Drawing.Size, System.Drawing"> <data name="barDockControlLeft.Size" type="System.Drawing.Size, System.Drawing">
<value>0, 688</value> <value>0, 860</value>
</data> </data>
<data name="&gt;&gt;barDockControlLeft.Name" xml:space="preserve"> <data name="&gt;&gt;barDockControlLeft.Name" xml:space="preserve">
<value>barDockControlLeft</value> <value>barDockControlLeft</value>
@@ -2084,10 +2084,10 @@
<value>Right</value> <value>Right</value>
</data> </data>
<data name="barDockControlRight.Location" type="System.Drawing.Point, System.Drawing"> <data name="barDockControlRight.Location" type="System.Drawing.Point, System.Drawing">
<value>1178, 0</value> <value>1473, 0</value>
</data> </data>
<data name="barDockControlRight.Size" type="System.Drawing.Size, System.Drawing"> <data name="barDockControlRight.Size" type="System.Drawing.Size, System.Drawing">
<value>0, 688</value> <value>0, 860</value>
</data> </data>
<data name="&gt;&gt;barDockControlRight.Name" xml:space="preserve"> <data name="&gt;&gt;barDockControlRight.Name" xml:space="preserve">
<value>barDockControlRight</value> <value>barDockControlRight</value>
@@ -2105,13 +2105,13 @@
<value>True</value> <value>True</value>
</metadata> </metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>147</value> <value>123</value>
</metadata> </metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing"> <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>9, 19</value> <value>9, 19</value>
</data> </data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing"> <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1178, 688</value> <value>1473, 860</value>
</data> </data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing"> <data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 12pt</value> <value>Tahoma, 12pt</value>
@@ -3574,7 +3574,7 @@
<value>Graphisches Dokument</value> <value>Graphisches Dokument</value>
</data> </data>
<data name="barDockControlTop.Size" type="System.Drawing.Size, System.Drawing"> <data name="barDockControlTop.Size" type="System.Drawing.Size, System.Drawing">
<value>1178, 0</value> <value>1473, 0</value>
</data> </data>
<data name="&gt;&gt;barDockControlTop.Name" xml:space="preserve"> <data name="&gt;&gt;barDockControlTop.Name" xml:space="preserve">
<value>barDockControlTop</value> <value>barDockControlTop</value>

File diff suppressed because it is too large Load Diff

View File

@@ -2,7 +2,7 @@
Imports Oracle.ManagedDataAccess.Client Imports Oracle.ManagedDataAccess.Client
Imports System.ComponentModel Imports System.ComponentModel
Imports DigitalData.Controls.LookupGrid Imports DigitalData.Controls.LookupGrid
Imports DigitalData.Modules.Language.Utils 'Imports DigitalData.Modules.Language.Utils
Imports System.IO Imports System.IO
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
Imports DigitalData.Modules.EDMI.API.Constants Imports DigitalData.Modules.EDMI.API.Constants
@@ -33,7 +33,6 @@ Public Class frmMassValidator
Dim viewer_string As String Dim viewer_string As String
Dim pdfxchange As Boolean = False Dim pdfxchange As Boolean = False
Dim sumatra As Boolean = False Dim sumatra As Boolean = False
Dim WMObject As WMObject
Private Sub frmMassValidator_Load(sender As Object, e As EventArgs) Handles Me.Load Private Sub frmMassValidator_Load(sender As Object, e As EventArgs) Handles Me.Load
FORM_Shown = False FORM_Shown = False
Try Try
@@ -1261,35 +1260,35 @@ Public Class frmMassValidator
Dim ins = String.Format("INSERT INTO TBPM_FILES_WORK_HISTORY (PROFIL_ID, DOC_ID,WORKED_BY,WORKED_WHERE,STATUS_COMMENT) VALUES ({0},{1},'{2}','{3}','{4}')", CURRENT_ProfilGUID, CURRENT_DOC_ID, USER_USERNAME, Environment.MachineName, WORK_HISTORY_ENTRY) Dim ins = String.Format("INSERT INTO TBPM_FILES_WORK_HISTORY (PROFIL_ID, DOC_ID,WORKED_BY,WORKED_WHERE,STATUS_COMMENT) VALUES ({0},{1},'{2}','{3}','{4}')", CURRENT_ProfilGUID, CURRENT_DOC_ID, USER_USERNAME, Environment.MachineName, WORK_HISTORY_ENTRY)
DatabaseFallback.ExecuteNonQueryECM(ins) DatabaseFallback.ExecuteNonQueryECM(ins)
'####### ANNOTIEREN WENN KONFIGURIERT ####### ''####### ANNOTIEREN WENN KONFIGURIERT #######
If docrow.Item("FULL_PATH").ToString.ToLower.EndsWith(".pdf") Then 'If docrow.Item("FULL_PATH").ToString.ToLower.EndsWith(".pdf") Then
If Not IsNothing(WORK_HISTORY_ENTRY) Then ' If Not IsNothing(WORK_HISTORY_ENTRY) Then
If CBool(CURRENT_DT_PROFILE.Rows(0).Item("ANNOTATE_WORK_HISTORY_ENTRY")) = True Then ' If CBool(CURRENT_DT_PROFILE.Rows(0).Item("ANNOTATE_WORK_HISTORY_ENTRY")) = True Then
Dim Sql = String.Format("SELECT * FROM TBPM_FILES_WORK_HISTORY WHERE GUID = (SELECT MAX(GUID) FROM TBPM_FILES_WORK_HISTORY WHERE PROFIL_ID = {0} AND DOC_ID = {1})", CURRENT_ProfilGUID, CURRENT_DOC_ID) ' Dim Sql = String.Format("SELECT * FROM TBPM_FILES_WORK_HISTORY WHERE GUID = (SELECT MAX(GUID) FROM TBPM_FILES_WORK_HISTORY WHERE PROFIL_ID = {0} AND DOC_ID = {1})", CURRENT_ProfilGUID, CURRENT_DOC_ID)
Dim DT_ENTRY As DataTable = DatabaseFallback.GetDatatableECM(Sql) ', "MV_Finish1") ' Dim DT_ENTRY As DataTable = DatabaseFallback.GetDatatableECM(Sql) ', "MV_Finish1")
If Not IsNothing(DT_ENTRY) Then ' If Not IsNothing(DT_ENTRY) Then
If DT_ENTRY.Rows.Count = 1 Then ' If DT_ENTRY.Rows.Count = 1 Then
Dim AnnotationString = DT_ENTRY.Rows(0).Item("WORKED_WHEN") & " " & DT_ENTRY.Rows(0).Item("WORKED_BY") & ": " & DT_ENTRY.Rows(0).Item("STATUS_COMMENT") ' Dim AnnotationString = DT_ENTRY.Rows(0).Item("WORKED_WHEN") & " " & DT_ENTRY.Rows(0).Item("WORKED_BY") & ": " & DT_ENTRY.Rows(0).Item("STATUS_COMMENT")
ClassAnnotation.Annotate_PDF("Workflow-State:", AnnotationString, 0, False) ' ClassAnnotation.Annotate_PDF("Workflow-State:", AnnotationString, 0, False)
End If ' End If
End If ' End If
End If ' End If
Dim value = CURRENT_DT_PROFILE.Rows(0).Item("ANNOTATE_ALL_WORK_HISTORY_ENTRIES") ' Dim value = CURRENT_DT_PROFILE.Rows(0).Item("ANNOTATE_ALL_WORK_HISTORY_ENTRIES")
If CBool(value) = True Then ' If CBool(value) = True Then
Dim Sql = String.Format("SELECT * FROM TBPM_FILES_WORK_HISTORY WHERE DOC_ID = {1} ORDER BY GUID", CURRENT_ProfilGUID, CURRENT_DOC_ID) ' Dim Sql = String.Format("SELECT * FROM TBPM_FILES_WORK_HISTORY WHERE DOC_ID = {1} ORDER BY GUID", CURRENT_ProfilGUID, CURRENT_DOC_ID)
Dim DT_ENTRIES As DataTable = DatabaseFallback.GetDatatableECM(Sql) ', "MV_Finish2") ' Dim DT_ENTRIES As DataTable = DatabaseFallback.GetDatatableECM(Sql) ', "MV_Finish2")
If Not IsNothing(DT_ENTRIES) Then ' If Not IsNothing(DT_ENTRIES) Then
If DT_ENTRIES.Rows.Count > 0 Then ' If DT_ENTRIES.Rows.Count > 0 Then
Dim AnnotationString As String = "" ' Dim AnnotationString As String = ""
For Each rw As DataRow In DT_ENTRIES.Rows ' For Each rw As DataRow In DT_ENTRIES.Rows
AnnotationString = AnnotationString & rw.Item("WORKED_WHEN") & " " & rw.Item("WORKED_BY") & ": " & rw.Item("STATUS_COMMENT") & vbNewLine ' AnnotationString = AnnotationString & rw.Item("WORKED_WHEN") & " " & rw.Item("WORKED_BY") & ": " & rw.Item("STATUS_COMMENT") & vbNewLine
Next ' Next
ClassAnnotation.Annotate_PDF("Workflow History:", AnnotationString, 0, 10, 40) ' ClassAnnotation.Annotate_PDF("Workflow History:", AnnotationString, 0, 10, 40)
End If ' End If
End If ' End If
End If ' End If
End If ' End If
End If 'End If
'####### WENN MOVE2FOLDER KONFIGURIERT IST####### '####### WENN MOVE2FOLDER KONFIGURIERT IST#######
If MOVE2Folder <> "" Then If MOVE2Folder <> "" Then

View File

@@ -762,7 +762,6 @@ Partial Class frmValidator
Me.rbnPgGroupAttmt.ItemLinks.Add(Me.Attmnt_bbtnitm_LoadonClick) Me.rbnPgGroupAttmt.ItemLinks.Add(Me.Attmnt_bbtnitm_LoadonClick)
Me.rbnPgGroupAttmt.Name = "rbnPgGroupAttmt" Me.rbnPgGroupAttmt.Name = "rbnPgGroupAttmt"
resources.ApplyResources(Me.rbnPgGroupAttmt, "rbnPgGroupAttmt") resources.ApplyResources(Me.rbnPgGroupAttmt, "rbnPgGroupAttmt")
Me.rbnPgGroupAttmt.Visible = False
' '
'RibbonPageGroupCustom 'RibbonPageGroupCustom
' '

View File

@@ -616,7 +616,7 @@
<value>DocumentViewer1</value> <value>DocumentViewer1</value>
</data> </data>
<data name="&gt;&gt;DocumentViewer1.Type" xml:space="preserve"> <data name="&gt;&gt;DocumentViewer1.Type" xml:space="preserve">
<value>DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=2.6.0.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>
<data name="&gt;&gt;DocumentViewer1.Parent" xml:space="preserve"> <data name="&gt;&gt;DocumentViewer1.Parent" xml:space="preserve">
<value>SplitContainer1.Panel2</value> <value>SplitContainer1.Panel2</value>

File diff suppressed because it is too large Load Diff

View File

@@ -138,7 +138,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlDocSearch1.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlDocSearch1.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value> <value>279, 446</value>
</data> </data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="GridControlDocSearch1.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlDocSearch1.TabIndex" type="System.Int32, mscorlib">
@@ -187,7 +187,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlDocSearch2.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlDocSearch2.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value> <value>279, 446</value>
</data> </data>
<data name="GridControlDocSearch2.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlDocSearch2.TabIndex" type="System.Int32, mscorlib">
<value>1</value> <value>1</value>
@@ -229,7 +229,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlDocSearch3.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlDocSearch3.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value> <value>279, 446</value>
</data> </data>
<data name="GridControlDocSearch3.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlDocSearch3.TabIndex" type="System.Int32, mscorlib">
<value>1</value> <value>1</value>
@@ -271,7 +271,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlDocSearch4.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlDocSearch4.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value> <value>279, 446</value>
</data> </data>
<data name="GridControlDocSearch4.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlDocSearch4.TabIndex" type="System.Int32, mscorlib">
<value>1</value> <value>1</value>
@@ -313,7 +313,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlDocSearch5.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlDocSearch5.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value> <value>279, 446</value>
</data> </data>
<data name="GridControlDocSearch5.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlDocSearch5.TabIndex" type="System.Int32, mscorlib">
<value>1</value> <value>1</value>
@@ -454,7 +454,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlSearch1.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlSearch1.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 560</value> <value>275, 448</value>
</data> </data>
<data name="GridControlSearch1.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlSearch1.TabIndex" type="System.Int32, mscorlib">
<value>1</value> <value>1</value>
@@ -502,7 +502,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlSearch2.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlSearch2.Size" type="System.Drawing.Size, System.Drawing">
<value>511, 560</value> <value>275, 448</value>
</data> </data>
<data name="GridControlSearch2.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlSearch2.TabIndex" type="System.Int32, mscorlib">
<value>2</value> <value>2</value>
@@ -520,7 +520,7 @@
<value>0</value> <value>0</value>
</data> </data>
<data name="XtraTabPageSearch2.Size" type="System.Drawing.Size, System.Drawing"> <data name="XtraTabPageSearch2.Size" type="System.Drawing.Size, System.Drawing">
<value>511, 560</value> <value>344, 560</value>
</data> </data>
<data name="XtraTabPageSearch2.Text" xml:space="preserve"> <data name="XtraTabPageSearch2.Text" xml:space="preserve">
<value>Search2</value> <value>Search2</value>
@@ -544,7 +544,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlSearch3.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlSearch3.Size" type="System.Drawing.Size, System.Drawing">
<value>511, 560</value> <value>275, 448</value>
</data> </data>
<data name="GridControlSearch3.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlSearch3.TabIndex" type="System.Int32, mscorlib">
<value>2</value> <value>2</value>
@@ -562,7 +562,7 @@
<value>0</value> <value>0</value>
</data> </data>
<data name="XtraTabPageSearch3.Size" type="System.Drawing.Size, System.Drawing"> <data name="XtraTabPageSearch3.Size" type="System.Drawing.Size, System.Drawing">
<value>511, 560</value> <value>344, 560</value>
</data> </data>
<data name="XtraTabPageSearch3.Text" xml:space="preserve"> <data name="XtraTabPageSearch3.Text" xml:space="preserve">
<value>XtraTabPage1</value> <value>XtraTabPage1</value>
@@ -586,7 +586,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlSearch4.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlSearch4.Size" type="System.Drawing.Size, System.Drawing">
<value>511, 560</value> <value>275, 448</value>
</data> </data>
<data name="GridControlSearch4.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlSearch4.TabIndex" type="System.Int32, mscorlib">
<value>2</value> <value>2</value>
@@ -604,7 +604,7 @@
<value>0</value> <value>0</value>
</data> </data>
<data name="XtraTabPageSearch4.Size" type="System.Drawing.Size, System.Drawing"> <data name="XtraTabPageSearch4.Size" type="System.Drawing.Size, System.Drawing">
<value>511, 560</value> <value>344, 560</value>
</data> </data>
<data name="XtraTabPageSearch4.Text" xml:space="preserve"> <data name="XtraTabPageSearch4.Text" xml:space="preserve">
<value>XtraTabPage2</value> <value>XtraTabPage2</value>
@@ -628,7 +628,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="GridControlSearch5.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControlSearch5.Size" type="System.Drawing.Size, System.Drawing">
<value>511, 560</value> <value>275, 448</value>
</data> </data>
<data name="GridControlSearch5.TabIndex" type="System.Int32, mscorlib"> <data name="GridControlSearch5.TabIndex" type="System.Int32, mscorlib">
<value>2</value> <value>2</value>
@@ -646,7 +646,7 @@
<value>0</value> <value>0</value>
</data> </data>
<data name="XtraTabPageSearch5.Size" type="System.Drawing.Size, System.Drawing"> <data name="XtraTabPageSearch5.Size" type="System.Drawing.Size, System.Drawing">
<value>511, 560</value> <value>344, 560</value>
</data> </data>
<data name="XtraTabPageSearch5.Text" xml:space="preserve"> <data name="XtraTabPageSearch5.Text" xml:space="preserve">
<value>XtraTabPage3</value> <value>XtraTabPage3</value>

View File

@@ -1,4 +1,5 @@
Imports System.ComponentModel Imports System.ComponentModel
Imports System.Data.SqlClient
Imports System.IO Imports System.IO
Imports System.Runtime.InteropServices Imports System.Runtime.InteropServices
Imports DevExpress.Utils Imports DevExpress.Utils
@@ -7,12 +8,13 @@ Imports DevExpress.XtraGrid.Columns
Imports DevExpress.XtraGrid.Views.Base Imports DevExpress.XtraGrid.Views.Base
Imports DevExpress.XtraGrid.Views.Grid Imports DevExpress.XtraGrid.Views.Grid
Imports DevExpress.XtraTab Imports DevExpress.XtraTab
Imports DigitalData.GUIs.Common
Imports DigitalData.GUIs.Common.DocumentResultList Imports DigitalData.GUIs.Common.DocumentResultList
Imports DigitalData.Modules.Base
Imports DigitalData.Modules.EDMI.API.Constants Imports DigitalData.Modules.EDMI.API.Constants
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
Imports DigitalData.Modules.ZooFlow.Constants
Imports DigitalData.Modules.ZooFlow Imports DigitalData.Modules.ZooFlow
Imports DigitalData.GUIs.Common Imports DigitalData.Modules.ZooFlow.Constants
Public Class frmValidatorSearch Public Class frmValidatorSearch
<DllImport("Shell32", CharSet:=CharSet.Auto, SetLastError:=True)> <DllImport("Shell32", CharSet:=CharSet.Auto, SetLastError:=True)>
@@ -43,7 +45,7 @@ Public Class frmValidatorSearch
#End Region #End Region
Public formLoaded As Boolean = False Public formLoaded As Boolean = False
Public _DTDocSearches As DataTable Public _DTDocSearches As DataTable
Public _DTSQLSearches As DataTable Public _DTDATASearches As DataTable
Private _frmValidator As frmValidator 'You need a reference to Form1 Private _frmValidator As frmValidator 'You need a reference to Form1
Private Shared BW_DocPath As String Private Shared BW_DocPath As String
Private Shared BW_DocID As Integer Private Shared BW_DocID As Integer
@@ -51,6 +53,8 @@ Public Class frmValidatorSearch
Private Documentloader As Loader Private Documentloader As Loader
Private Property OperationMode As OperationMode Private Property OperationMode As OperationMode
Private ReadOnly Environment As Environment Private ReadOnly Environment As Environment
Private _documentPathHandler As DocumentPathHandler
Private _suppressTabEvents As Boolean = False
Public Sub New(pfrmValidator As frmValidator, pEnvironment As Environment) Public Sub New(pfrmValidator As frmValidator, pEnvironment As Environment)
@@ -79,52 +83,354 @@ Public Class frmValidatorSearch
End Function End Function
Public Sub TabPreload(TabCountSQL As Integer, TabCountDoc As Integer, DTSQL As DataTable, DTDOC As DataTable) Public Sub TabPreload(TabCountSQL As Integer, TabCountDoc As Integer, DTSQL As DataTable, DTDOC As DataTable)
Try Try
SplitContainerSearches.Panel1Collapsed = IIf(DTSQL.Rows.Count > 0, False, True) LOGGER.Debug("=== TabPreload START ===")
SplitContainerSearches.Panel2Collapsed = IIf(DTDOC.Rows.Count > 0, False, True) LOGGER.Debug($"Parameters: TabCountSQL={TabCountSQL}, TabCountDoc={TabCountDoc}, DTSQL.Rows={If(DTSQL?.Rows.Count, 0)}, DTDOC.Rows={If(DTDOC?.Rows.Count, 0)}")
If Me.InvokeRequired() Then
Me.Invoke(Sub() TabPreload(TabCountSQL, TabCountDoc, DTSQL, DTDOC))
Else
'#### SQL Tabs Design Laden
If DTSQL.Rows.Count > 0 Then
LOGGER.Debug(String.Format("[{0} SQL-Definitions]", DTSQL.Rows.Count))
For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
If XtraTabControlSQL.TabPages(p).TabIndex >= TabCountSQL Then
XtraTabControlSQL.TabPages(p).PageVisible = False
End If
Next
For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
If XtraTabControlSQL.TabPages(p).TabIndex >= TabCountSQL Then
Exit For
End If
XtraTabControlSQL.TabPages(p).Text = DTSQL.Rows(p).Item("TAB_TITLE")
Next
End If
If DTDOC.Rows.Count > 0 Then
LOGGER.Debug(String.Format("[{0} Doc-Definitions]", DTDOC.Rows.Count))
'#### Doc Tabs Design Laden
For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
If XtraTabControlDocs.TabPages(p).TabIndex >= TabCountDoc Then
XtraTabControlDocs.TabPages(p).PageVisible = False
End If
Next
For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
If XtraTabControlDocs.TabPages(p).TabIndex >= TabCountDoc Then
Exit For
End If
XtraTabControlDocs.TabPages(p).Text = DTDOC.Rows(p).Item("TAB_TITLE")
Next
End If
' Validierung der Parameter
If DTSQL Is Nothing Then
LOGGER.Warn("⚠️ DTSQL ist Nothing")
DTSQL = New DataTable()
End If
If DTDOC Is Nothing Then
LOGGER.Warn("⚠️ DTDOC ist Nothing")
DTDOC = New DataTable()
End If End If
Catch ex As Exception
LOGGER.Error(ex)
End Try
' Thread-Synchronisation
If Me.InvokeRequired() Then
LOGGER.Debug("InvokeRequired=True, rufe auf UI-Thread auf")
Me.Invoke(Sub() TabPreload(TabCountSQL, TabCountDoc, DTSQL, DTDOC))
Return
End If
LOGGER.Debug("Ausführung auf UI-Thread")
' ============================================================
' WICHTIG: Variablen VOR Try-Block deklarieren
' ============================================================
Dim hasSQLData As Boolean = False
Dim hasDocData As Boolean = False
Dim actualSQLTabCount As Integer = 0
Dim actualDocTabCount As Integer = 0
' ============================================================
' KRITISCH: Events DEAKTIVIEREN während der Rekonfiguration
' ============================================================
_suppressTabEvents = True
LOGGER.Debug("🚫 Tab-Events deaktiviert")
Try
' KRITISCH: DataTables SOFORT zuweisen
_DTDATASearches = DTSQL
_DTDocSearches = DTDOC
LOGGER.Debug($"✓ _DTDATASearches und _DTDocSearches zugewiesen: SQL={_DTDATASearches.Rows.Count}, Doc={_DTDocSearches.Rows.Count}")
' TabCount-Validierung
actualSQLTabCount = Math.Min(TabCountSQL, DTSQL.Rows.Count)
actualDocTabCount = Math.Min(TabCountDoc, DTDOC.Rows.Count)
If actualSQLTabCount <> TabCountSQL Then
LOGGER.Warn($"⚠️ TabCountSQL korrigiert: {TabCountSQL} → {actualSQLTabCount}")
End If
If actualDocTabCount <> TabCountDoc Then
LOGGER.Warn($"⚠️ TabCountDoc korrigiert: {TabCountDoc} → {actualDocTabCount}")
End If
' Panel-Sichtbarkeit
hasSQLData = DTSQL.Rows.Count > 0 AndAlso actualSQLTabCount > 0
hasDocData = DTDOC.Rows.Count > 0 AndAlso actualDocTabCount > 0
SplitContainerSearches.Panel1Collapsed = Not hasSQLData
SplitContainerSearches.Panel2Collapsed = Not hasDocData
LOGGER.Debug($"Panel1Collapsed (SQL)={SplitContainerSearches.Panel1Collapsed}, Panel2Collapsed (Doc)={SplitContainerSearches.Panel2Collapsed}")
' ============================================================
' KRITISCH: DocumentViewer nur bei Doc-Searches sichtbar
' ============================================================
If hasDocData Then
If Not DocumentViewer1.Visible Then
DocumentViewer1.Visible = True
LOGGER.Debug("✓ DocumentViewer1 sichtbar gemacht (Doc-Searches vorhanden)")
End If
Else
If DocumentViewer1.Visible Then
DocumentViewer1.Visible = False
LOGGER.Debug("✓ DocumentViewer1 ausgeblendet (keine Doc-Searches)")
End If
End If
' #### SQL Tabs konfigurieren
If hasSQLData Then
LOGGER.Debug($"Konfiguriere SQL-Tabs: {DTSQL.Rows.Count} Definitionen")
' ALLE Tabs unsichtbar machen
For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
XtraTabControlSQL.TabPages(p).PageVisible = False
Next
LOGGER.Debug($"Alle {XtraTabControlSQL.TabPages.Count} SQL-Tabs auf PageVisible=False gesetzt")
' Nur benötigte Tabs sichtbar machen
Dim processedTabs As Integer = 0
For p As Integer = 0 To Math.Min(actualSQLTabCount - 1, XtraTabControlSQL.TabPages.Count - 1)
If p < DTSQL.Rows.Count Then
Try
Dim tabTitle As String = If(DTSQL.Rows(p).Item("TAB_TITLE")?.ToString(), $"Tab {p + 1}")
XtraTabControlSQL.TabPages(p).Text = tabTitle
XtraTabControlSQL.TabPages(p).PageVisible = True
processedTabs += 1
LOGGER.Debug($"SQL-Tab {p}: Text='{tabTitle}', PageVisible=True")
Catch ex As Exception
LOGGER.Error($"❌ Fehler beim Konfigurieren von SQL-Tab {p}", ex)
End Try
End If
Next
LOGGER.Info($"✓ {processedTabs} SQL-Tabs konfiguriert")
Else
LOGGER.Debug("Keine SQL-Daten, alle Tabs ausblenden")
For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
XtraTabControlSQL.TabPages(p).PageVisible = False
Next
End If
' #### Doc Tabs konfigurieren
If hasDocData Then
LOGGER.Debug($"Konfiguriere Doc-Tabs: {DTDOC.Rows.Count} Definitionen")
' ALLE Tabs unsichtbar machen
For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
XtraTabControlDocs.TabPages(p).PageVisible = False
Next
LOGGER.Debug($"Alle {XtraTabControlDocs.TabPages.Count} Doc-Tabs auf PageVisible=False gesetzt")
' Nur benötigte Tabs sichtbar machen
Dim processedTabs As Integer = 0
For p As Integer = 0 To Math.Min(actualDocTabCount - 1, XtraTabControlDocs.TabPages.Count - 1)
If p < DTDOC.Rows.Count Then
Try
Dim tabTitle As String = If(DTDOC.Rows(p).Item("TAB_TITLE")?.ToString(), $"Tab {p + 1}")
XtraTabControlDocs.TabPages(p).Text = tabTitle
XtraTabControlDocs.TabPages(p).PageVisible = True
processedTabs += 1
LOGGER.Debug($"Doc-Tab {p}: Text='{tabTitle}', PageVisible=True")
Catch ex As Exception
LOGGER.Error($"❌ Fehler beim Konfigurieren von Doc-Tab {p}", ex)
End Try
End If
Next
LOGGER.Info($"✓ {processedTabs} Doc-Tabs konfiguriert")
Else
LOGGER.Debug("Keine Doc-Daten, alle Tabs ausblenden")
For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
XtraTabControlDocs.TabPages(p).PageVisible = False
Next
End If
Finally
' ============================================================
' KRITISCH: Events REAKTIVIEREN nach Rekonfiguration
' ============================================================
_suppressTabEvents = False
LOGGER.Debug("✓ Tab-Events reaktiviert")
End Try
' JETZT manuell den ersten sichtbaren Tab aktivieren
' ERSETZE im unteren Teil von TabPreload den SQL-Block:
If hasSQLData AndAlso XtraTabControlSQL.TabPages.Count > 0 Then
Dim firstVisibleSqlIndex As Integer = -1
For i As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
If XtraTabControlSQL.TabPages(i).PageVisible Then
firstVisibleSqlIndex = i
Exit For
End If
Next
If firstVisibleSqlIndex >= 0 AndAlso _DTDATASearches IsNot Nothing AndAlso firstVisibleSqlIndex < _DTDATASearches.Rows.Count Then
LOGGER.Debug($"Setze SQL SelectedTabPageIndex manuell auf {firstVisibleSqlIndex}")
Dim prevSuppress As Boolean = _suppressTabEvents
_suppressTabEvents = True
XtraTabControlSQL.SelectedTabPageIndex = firstVisibleSqlIndex
_suppressTabEvents = prevSuppress
Try
Dim selectedRow As DataRow = _DTDATASearches.Rows(firstVisibleSqlIndex)
Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID")))
Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString()
Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {firstVisibleSqlIndex}")
If Not String.IsNullOrEmpty(oCommand) Then
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
LOGGER.Debug($"SQL-Tab {firstVisibleSqlIndex}: erzwungener Initial-Refresh")
RefreshTabSQL(oConID, oCommand, firstVisibleSqlIndex, oTabCaption)
End If
Catch ex As Exception
LOGGER.Error("❌ Fehler beim SQL-Initial-Refresh in TabPreload", ex)
End Try
End If
End If
' ERSETZE im unteren Teil von TabPreload den Doc-Block:
If hasDocData AndAlso XtraTabControlDocs.TabPages.Count > 0 Then
Dim firstVisibleDocIndex As Integer = -1
For i As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
If XtraTabControlDocs.TabPages(i).PageVisible Then
firstVisibleDocIndex = i
Exit For
End If
Next
If firstVisibleDocIndex >= 0 AndAlso _DTDocSearches IsNot Nothing AndAlso firstVisibleDocIndex < _DTDocSearches.Rows.Count Then
LOGGER.Debug($"Setze Doc SelectedTabPageIndex manuell auf {firstVisibleDocIndex}")
Dim prevSuppress As Boolean = _suppressTabEvents
_suppressTabEvents = True
XtraTabControlDocs.SelectedTabPageIndex = firstVisibleDocIndex
_suppressTabEvents = prevSuppress
Try
Dim selectedRow As DataRow = _DTDocSearches.Rows(firstVisibleDocIndex)
Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID")))
Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString()
Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {firstVisibleDocIndex}")
If Not String.IsNullOrEmpty(oCommand) Then
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
LOGGER.Debug($"Doc-Tab {firstVisibleDocIndex}: erzwungener Initial-Refresh")
RefreshTabDoc(oConID, oCommand, firstVisibleDocIndex, oTabCaption)
End If
Catch ex As Exception
LOGGER.Error("❌ Fehler beim Doc-Initial-Refresh in TabPreload", ex)
End Try
End If
End If
LOGGER.Debug("=== TabPreload END ===")
Catch ex As Exception
LOGGER.Error("❌ Fehler in TabPreload", ex)
LOGGER.Error($"Stack Trace: {ex.StackTrace}")
_suppressTabEvents = False ' Sicherstellung
Try
SplitContainerSearches.Panel1Collapsed = True
SplitContainerSearches.Panel2Collapsed = True
DocumentViewer1.Visible = False
Catch collapseEx As Exception
LOGGER.Error("❌ Fehler beim Kollabieren der Panels", collapseEx)
End Try
End Try
End Sub
Private Sub XtraTabControlSQL_SelectedPageChanged(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlSQL.SelectedPageChanged
Try
' KRITISCH: Event unterdrücken während TabPreload läuft
If _suppressTabEvents Then
LOGGER.Debug($"🚫 XtraTabControlSQL_SelectedPageChanged unterdrückt (SelectedTabPageIndex={XtraTabControlSQL.SelectedTabPageIndex})")
Exit Sub
End If
LOGGER.Debug($"=== XtraTabControlSQL_SelectedPageChanged START - SelectedTabPageIndex={XtraTabControlSQL.SelectedTabPageIndex} ===")
If _DTDATASearches Is Nothing Then
LOGGER.Warn("⚠️ _DTDATASearches ist Nothing - Exit Sub")
Exit Sub
End If
If XtraTabControlSQL.SelectedTabPageIndex >= 0 AndAlso
Not XtraTabControlSQL.TabPages(XtraTabControlSQL.SelectedTabPageIndex).PageVisible Then
LOGGER.Debug("SQL-Tab ist nicht sichtbar - Exit Sub")
Exit Sub
End If
If XtraTabControlSQL.SelectedTabPageIndex >= _DTDATASearches.Rows.Count Then
LOGGER.Error($"❌ SelectedTabPageIndex ({XtraTabControlSQL.SelectedTabPageIndex}) >= _DTDATASearches.Rows.Count ({_DTDATASearches.Rows.Count}) - Exit Sub")
Exit Sub
End If
Dim selectedRow As DataRow = _DTDATASearches.Rows(XtraTabControlSQL.SelectedTabPageIndex)
Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID")))
Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString()
Dim oTabIndex As Integer = XtraTabControlSQL.SelectedTabPageIndex
Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {oTabIndex}")
LOGGER.Debug($"Tab-Info: '{oTabCaption}', ConID={oConID}, TabIndex={oTabIndex}")
If String.IsNullOrEmpty(oCommand) Then
LOGGER.Warn($"⚠️ SQL_COMMAND ist leer für Tab '{oTabCaption}' - Exit Sub")
Exit Sub
End If
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
LOGGER.Debug($"SQL ersetzt, Länge={oCommand.Length} Zeichen")
' ============================================================
' KRITISCH: RefreshTabSQL aufrufen!
' ============================================================
LOGGER.Debug($"Rufe RefreshTabSQL auf für Tab '{oTabCaption}'")
RefreshTabSQL(oConID, oCommand, oTabIndex, oTabCaption)
LOGGER.Debug("=== XtraTabControlSQL_SelectedPageChanged END ===")
Catch ex As Exception
LOGGER.Error("❌ Fehler in XtraTabControlSQL_SelectedPageChanged", ex)
LOGGER.Error($"Details: SelectedTabPageIndex={XtraTabControlSQL.SelectedTabPageIndex}, _DTDATASearches.Rows.Count={If(_DTDATASearches?.Rows.Count, 0)}")
End Try
End Sub
Private Sub XtraTabControlDocs_SelectedPageChanged_1(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlDocs.SelectedPageChanged
Try
' KRITISCH: Event unterdrücken während TabPreload läuft
If _suppressTabEvents Then
LOGGER.Debug($"🚫 XtraTabControlDocs_SelectedPageChanged unterdrückt (SelectedTabPageIndex={XtraTabControlDocs.SelectedTabPageIndex})")
Exit Sub
End If
LOGGER.Debug($"=== XtraTabControlDocs_SelectedPageChanged START - SelectedTabPageIndex={XtraTabControlDocs.SelectedTabPageIndex} ===")
If _DTDocSearches Is Nothing Then
LOGGER.Warn("⚠️ _DTDocSearches ist Nothing - Exit Sub")
Exit Sub
End If
If XtraTabControlDocs.SelectedTabPageIndex < 0 Then
LOGGER.Debug("SelectedTabPageIndex < 0 - Exit Sub")
Exit Sub
End If
If XtraTabControlDocs.SelectedTabPageIndex >= _DTDocSearches.Rows.Count Then
LOGGER.Error($"❌ SelectedTabPageIndex ({XtraTabControlDocs.SelectedTabPageIndex}) >= _DTDocSearches.Rows.Count ({_DTDocSearches.Rows.Count}) - Exit Sub")
Exit Sub
End If
Dim selectedRow As DataRow = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex)
Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID")))
Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString()
Dim oTabIndex As Integer = XtraTabControlDocs.SelectedTabPageIndex
Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {oTabIndex}")
LOGGER.Debug($"Tab-Info: '{oTabCaption}', ConID={oConID}, TabIndex={oTabIndex}")
If String.IsNullOrEmpty(oCommand) Then
LOGGER.Warn($"⚠️ SQL_COMMAND ist leer für Tab '{oTabCaption}' - Exit Sub")
Exit Sub
End If
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
LOGGER.Debug($"SQL ersetzt, Länge={oCommand.Length} Zeichen")
' ============================================================
' KRITISCH: RefreshTabDoc aufrufen!
' ============================================================
LOGGER.Debug($"Rufe RefreshTabDoc auf für Tab '{oTabCaption}'")
RefreshTabDoc(oConID, oCommand, oTabIndex, oTabCaption)
LOGGER.Debug("=== XtraTabControlDocs_SelectedPageChanged END ===")
Catch ex As Exception
LOGGER.Error("❌ Fehler in XtraTabControlDocs_SelectedPageChanged", ex)
LOGGER.Error($"Details: SelectedTabPageIndex={XtraTabControlDocs.SelectedTabPageIndex}, _DTDocSearches.Rows.Count={If(_DTDocSearches?.Rows.Count, 0)}")
End Try
End Sub End Sub
Public Sub RefreshTabSQL(ConID As Integer, SQLCommand As String, TabIndex As Integer, TabCaption As String) Public Sub RefreshTabSQL(ConID As Integer, SQLCommand As String, TabIndex As Integer, TabCaption As String)
If Me.InvokeRequired() Then If Me.InvokeRequired() Then
@@ -237,28 +543,31 @@ Public Class frmValidatorSearch
myGridview = GridViewDocSearch5 myGridview = GridViewDocSearch5
End Select End Select
myGridControl.ContextMenuStrip = ContextMenuStripWMFile myGridControl.ContextMenuStrip = ContextMenuStripWMFile
'Dim oDatatable As DataTable = ClassDatabase.Return_Datatable_ConId(SQLCommand, ConID)
Dim oDatatable As DataTable = DatabaseFallback.GetDatatable(New GetDatatableOptions(SQLCommand, DatabaseType.ECM) With { Dim oDatatable As DataTable = DatabaseFallback.GetDatatable(New GetDatatableOptions(SQLCommand, DatabaseType.ECM) With {
.ConnectionId = ConID .ConnectionId = ConID
}) })
If Not IsNothing(oDatatable) Then If Not IsNothing(oDatatable) Then
XtraTabControlDocs.TabPages(TabIndex).Text = $"{TabCaption} ({oDatatable.Rows.Count})" XtraTabControlDocs.TabPages(TabIndex).Text = $"{TabCaption} ({oDatatable.Rows.Count})"
clsWMDocGrid.DTDocuments = oDatatable
'Select Case TabIndex
' Case 0
' GridControlDocSearch1.DataSource = oDatatable
' Case 1
' GridControlDocSearch2.DataSource = oDatatable
' Case 2
' GridControlDocSearch3.DataSource = oDatatable
' Case 3
' GridControlDocSearch4.DataSource = oDatatable
' Case 4
' GridControlDocSearch5.DataSource = oDatatable
'End Select ' FIX: Nicht jedes Doc-Tab liefert echte Dokumentspalten
Dim hasDocId As Boolean = oDatatable.Columns.Contains("DocID")
Dim hasFullFilename As Boolean = oDatatable.Columns.Contains("FULL_FILENAME")
If Not hasDocId OrElse Not hasFullFilename Then
LOGGER.Warn($"⚠️ Refresh_Load_GridDoc: Tab [{TabCaption}] liefert kein Dokument-Schema (DocID/FULL_FILENAME fehlt). Fallback auf Standard-Grid.")
myGridControl.DataSource = oDatatable
myGridview.BestFitColumns(True)
clsWMDocGrid.DTDocuments = Nothing
ToolStripDropDownButtonFile.Visible = False
tslblState.Text = $"Tab [{TabCaption}] refreshed (fallback grid) - {Now}"
Exit Sub
End If
clsWMDocGrid.DTDocuments = oDatatable
Create_GridControl(myGridview, oDatatable) Create_GridControl(myGridview, oDatatable)
Dim oxmlPath As String = "" Dim oxmlPath As String = ""
oxmlPath = Get_DocGrid_Layout_Filename(XtraTabControlDocs.SelectedTabPageIndex) oxmlPath = Get_DocGrid_Layout_Filename(XtraTabControlDocs.SelectedTabPageIndex)
@@ -463,33 +772,65 @@ Public Class frmValidatorSearch
If My.Settings.frmValSearchSplitterDistance > 20 Then If My.Settings.frmValSearchSplitterDistance > 20 Then
SplitContainerSearches.SplitterDistance = My.Settings.frmValSearchSplitterDistance SplitContainerSearches.SplitterDistance = My.Settings.frmValSearchSplitterDistance
End If End If
' DocumentPathHandler initialisieren
_documentPathHandler = New DocumentPathHandler(LOGCONFIG)
ToolStripDropDownButtonFile.Visible = False ToolStripDropDownButtonFile.Visible = False
End Sub End Sub
Private Sub EnsureFormIsVisible()
Try
' Aktuellen Bildschirm basierend auf der Formularposition ermitteln
Dim currentScreen As Screen = Screen.FromPoint(Me.Location)
Dim workingArea As Rectangle = currentScreen.WorkingArea
' Prüfen ob das Formular vollständig außerhalb des sichtbaren Bereichs liegt
Dim formBounds As New Rectangle(Me.Location, Me.Size)
' Wenn das Formular nicht mit dem Arbeitsbereich überschneidet
If Not workingArea.IntersectsWith(formBounds) Then
CenterFormOnScreen()
Exit Sub
End If
' Optional: Prüfen ob das Formular zu weit außerhalb liegt (z.B. nur 20% sichtbar)
Dim visibleArea As Rectangle = Rectangle.Intersect(workingArea, formBounds)
Dim visiblePercentage As Double = (visibleArea.Width * visibleArea.Height) / (formBounds.Width * formBounds.Height)
If visiblePercentage < 0.2 Then ' Weniger als 20% sichtbar
CenterFormOnScreen()
End If
Catch ex As Exception
LOGGER.Error(ex)
' Bei Fehler sicherheitshalber zentrieren
CenterFormOnScreen()
End Try
End Sub
Private Sub CenterFormOnScreen()
Try
' Formular auf dem primären Bildschirm zentrieren
Me.StartPosition = FormStartPosition.CenterScreen
' Alternative: Auf aktuellem Bildschirm zentrieren
Dim currentScreen As Screen = Screen.PrimaryScreen
Dim x As Integer = currentScreen.WorkingArea.Left + (currentScreen.WorkingArea.Width - Me.Width) \ 2
Dim y As Integer = currentScreen.WorkingArea.Top + (currentScreen.WorkingArea.Height - Me.Height) \ 2
Me.Location = New Point(x, y)
LOGGER.Info("Formular wurde zentriert, da es außerhalb des sichtbaren Bereichs lag")
Catch ex As Exception
LOGGER.Error(ex)
End Try
End Sub
Private Sub frmValidatorSearch_Shown(sender As Object, e As EventArgs) Handles Me.Shown Private Sub frmValidatorSearch_Shown(sender As Object, e As EventArgs) Handles Me.Shown
' Prüfen ob das Formular im sichtbaren Bereich liegt
EnsureFormIsVisible()
formLoaded = True formLoaded = True
End Sub End Sub
Private Sub XtraTabControlSQL_SelectedPageChanged(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlSQL.SelectedPageChanged
If IsNothing(_DTSQLSearches) Then Exit Sub
Dim oConID = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("CONN_ID")
Dim oCommand = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("SQL_COMMAND")
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
Dim oTabIndex = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("TAB_INDEX")
Dim oTabCaption = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("TAB_TITLE")
RefreshTabSQL(oConID, oCommand, oTabIndex, oTabCaption)
End Sub
Private Sub XtraTabControlDocs_SelectedPageChanged_1(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlDocs.SelectedPageChanged
If IsNothing(_DTDocSearches) Then Exit Sub
Dim oConID = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("CONN_ID")
Dim oCommand = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("SQL_COMMAND")
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
Dim oTabIndex = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("TAB_INDEX")
Dim oTabCaption = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("TAB_TITLE")
RefreshTabDoc(oConID, oCommand, oTabIndex, oTabCaption)
End Sub
Private Sub EigenschaftenDateiToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EigenschaftenDateiToolStripMenuItem.Click Private Sub EigenschaftenDateiToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EigenschaftenDateiToolStripMenuItem.Click
Show_File_Properties() Show_File_Properties()
@@ -518,86 +859,126 @@ Public Class frmValidatorSearch
Next Next
End Sub End Sub
Sub Refresh_DocID(myGrid As GridView) Sub Refresh_DocID(myGrid As GridView)
Try If myGrid Is Nothing Then
LOGGER.Warn("⚠️ Refresh_DocID: myGrid is Nothing - Exit Sub")
Return
End If
Try
myGrid.ShowLoadingPanel() myGrid.ShowLoadingPanel()
clsWMDocGrid.ActiveDocGrid = myGrid clsWMDocGrid.ActiveDocGrid = myGrid
clsWMDocGrid.ActiveDocGrid.EndSelection() clsWMDocGrid.ActiveDocGrid.EndSelection()
clsWMDocGrid.GetDocItems() clsWMDocGrid.GetDocItems()
If ToolStripDropDownButtonFile.Visible = False Then If ToolStripDropDownButtonFile.Visible = False Then
ToolStripDropDownButtonFile.Visible = True ToolStripDropDownButtonFile.Visible = True
End If End If
If clsWMDocGrid.SELECTED_DOC_ID <> 0 Then
If LastDocID = clsWMDocGrid.SELECTED_DOC_ID Then
myGrid.HideLoadingPanel()
Exit Sub
End If
Dim msg = "DocID: " & clsWMDocGrid.SELECTED_DOC_ID.ToString
tslblDocID.Text = msg
ToolStripDropDownButtonFile.Enabled = True
Dim oDocument As DocumentResultList.Document = Nothing
' Load DocumentInfo
oDocument = Documentloader.Load(clsWMDocGrid.SELECTED_DOC_ID, clsWMDocGrid.SELECTED_DOC_PATH)
If Not IsNothing(DocumentViewer1) Then If clsWMDocGrid.SELECTED_DOC_ID = 0 Then
Dim oFileName = $"{clsWMDocGrid.SELECTED_DOC_ID}.{oDocument.Extension}"
If Not IsNothing(oDocument.Contents) Then
DocumentViewer1.LoadFile_FromPath(clsWMDocGrid.SELECTED_DOC_PATH) ',oFileName, New MemoryStream(oDocument.Contents))
LastDocID = clsWMDocGrid.SELECTED_DOC_ID
DocumentViewer1.RightViewOnly(USER_RIGHT_VIEW_ONLY)
If USER_RIGHT_VIEW_ONLY = True Then
ToolStripDropDownButtonFile.Visible = False
Else
ToolStripDropDownButtonFile.Visible = True
End If
Else
statlbl.Text = "odocument.content is nothing, Check Your log"
End If
End If
Else
tslblDocID.Text = "DocRow not selected" tslblDocID.Text = "DocRow not selected"
ToolStripDropDownButtonFile.Enabled = False ToolStripDropDownButtonFile.Enabled = False
Return
End If End If
If LastDocID = clsWMDocGrid.SELECTED_DOC_ID Then
Return
End If
tslblDocID.Text = "DocID: " & clsWMDocGrid.SELECTED_DOC_ID.ToString
ToolStripDropDownButtonFile.Enabled = True
LOGGER.Debug($"✓ DocID aktualisiert: {clsWMDocGrid.SELECTED_DOC_ID}")
If IsNothing(Documentloader) Then
If OperationMode = Nothing Then
OperationMode = GetOperationMode()
End If
Documentloader = New Loader(LOGCONFIG, OperationMode, Environment.Service.Client, Environment.User)
End If
If _documentPathHandler Is Nothing Then
_documentPathHandler = New DocumentPathHandler(LOGCONFIG)
End If
Dim oDocument As DocumentResultList.Document = Documentloader.Load(clsWMDocGrid.SELECTED_DOC_ID, clsWMDocGrid.SELECTED_DOC_PATH)
If IsNothing(oDocument) Then
LOGGER.Warn($"⚠️ Refresh_DocID: Documentloader.Load lieferte Nothing (DocID={clsWMDocGrid.SELECTED_DOC_ID})")
statlbl.Text = "Dokument konnte nicht geladen werden."
Return
Else
LOGGER.Debug($"✓ Documentloader.Load erfolgreich für DocID={clsWMDocGrid.SELECTED_DOC_ID}, Pfad: {clsWMDocGrid.SELECTED_DOC_PATH}")
End If
If Not IsNothing(DocumentViewer1) AndAlso Not IsNothing(oDocument.Contents) Then
Dim options As New DocumentPathHandler.DocumentPathOptions With {
.EnableMapping = COPY_WMFILE_2TEMP AndAlso Not String.IsNullOrWhiteSpace(WMSUFFIX),
.WMSuffix = WMSUFFIX,
.SpecificDrive = If(Len(MAP_SHARE_DRIVE) = 1, MAP_SHARE_DRIVE, ""),
.DriveBlacklist = MAP_BLACKLIST,
.CopyToTemp = COPY_WMFILE_2TEMP,
.TempFolder = TEMP_DOCUMENT_FOLDER,
.UnmapAfterCopy = True
}
Dim result = _documentPathHandler.ProcessDocumentPath(clsWMDocGrid.SELECTED_DOC_PATH, options)
If result.Success Then
DocumentViewer1.LoadFile_FromPath(result.FinalPath)
LastDocID = clsWMDocGrid.SELECTED_DOC_ID
DocumentViewer1.RightViewOnly(USER_RIGHT_VIEW_ONLY)
LOGGER.Debug($"✓ [ValidatorSearch] Dokument geladen: [{Path.GetFileName(result.FinalPath)}]")
Else
LOGGER.Error($"❌ [ValidatorSearch] {result.ErrorMessage}")
statlbl.Text = $"Fehler: {result.ErrorMessage}"
End If
Else
statlbl.Text = "Dokumentinhalt ist leer."
End If
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
Finally
Try
myGrid.HideLoadingPanel()
Catch
End Try
End Try End Try
myGrid.HideLoadingPanel()
End Sub End Sub
Private Sub GridViewDocSearch1_FocusedRowChanged(sender As Object, e As Views.Base.FocusedRowChangedEventArgs) Handles GridViewDocSearch1.FocusedRowChanged Private Sub GridViewDocSearch_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch1.FocusedRowChanged,
Refresh_DocID(GridViewDocSearch1) GridViewDocSearch2.FocusedRowChanged,
GridViewDocSearch3.FocusedRowChanged,
GridViewDocSearch4.FocusedRowChanged,
GridViewDocSearch5.FocusedRowChanged
If Not Me.Visible Then
Return
End If
Dim activeGrid As GridView = TryCast(sender, GridView)
If activeGrid Is Nothing Then
Return
End If
LOGGER.Debug($"FocusedRowChanged ausgelöst: [{activeGrid.Name}]")
Refresh_DocID(activeGrid)
End Sub End Sub
Private Sub GridViewDocSearch2_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch2.FocusedRowChanged Private Sub GridViewDocSearch_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch1.FocusedColumnChanged,
Refresh_DocID(GridViewDocSearch2) GridViewDocSearch2.FocusedColumnChanged,
End Sub GridViewDocSearch3.FocusedColumnChanged,
Private Sub GridViewDocSearch3_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch3.FocusedRowChanged GridViewDocSearch4.FocusedColumnChanged,
Refresh_DocID(GridViewDocSearch3) GridViewDocSearch5.FocusedColumnChanged
End Sub
Private Sub GridViewDocSearch4_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch4.FocusedRowChanged
Refresh_DocID(GridViewDocSearch4)
End Sub
Private Sub GridViewDocSearch5_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch5.FocusedRowChanged
Refresh_DocID(GridViewDocSearch5)
End Sub
Private Sub GridViewDocSearch1_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch1.FocusedColumnChanged If Not Me.Visible Then
Refresh_DocID(GridViewDocSearch1) Return
End Sub End If
Private Sub GridViewDocSearch2_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch2.FocusedColumnChanged Dim activeGrid As GridView = TryCast(sender, GridView)
Refresh_DocID(GridViewDocSearch2) If activeGrid Is Nothing Then
End Sub Return
Private Sub GridViewDocSearch3_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch3.FocusedColumnChanged End If
Refresh_DocID(GridViewDocSearch3)
End Sub LOGGER.Debug($"FocusedColumnChanged ausgelöst: [{activeGrid.Name}]")
Private Sub GridViewDocSearch4_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch4.FocusedColumnChanged Refresh_DocID(activeGrid)
Refresh_DocID(GridViewDocSearch4)
End Sub
Private Sub GridViewDocSearch5_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch5.FocusedColumnChanged
Refresh_DocID(GridViewDocSearch5)
End Sub End Sub
Private Sub DateiÖffnenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DateiÖffnenToolStripMenuItem.Click Private Sub DateiÖffnenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DateiÖffnenToolStripMenuItem.Click
@@ -693,14 +1074,16 @@ Public Class frmValidatorSearch
End Sub End Sub
Private Sub ToolStripButtonRefreshSearches_Click(sender As Object, e As EventArgs) Handles ToolStripButtonRefreshSearches.Click Private Sub ToolStripButtonRefreshSearches_Click(sender As Object, e As EventArgs) Handles ToolStripButtonRefreshSearches.Click
If BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count > 0 Then If DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count > 0 Then
LOGGER.Debug($"There are [{BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count}] SQLSearches configured!") LOGGER.Debug($"There are [{DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count}] DATASearches configured!")
_DTSQLSearches = BASEDATA_DT_PROFILE_SEARCHES_SQL _DTDATASearches = DT_FILTERED_PROFILE_SEARCHES_DATA
Dim oConID = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("CONN_ID") Dim oConID = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("CONN_ID")
Dim oCommand = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("SQL_COMMAND") Dim oCommand = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("SQL_COMMAND")
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
XtraTabControlSQL.SelectedTabPageIndex = 0 XtraTabControlSQL.SelectedTabPageIndex = 0
Refresh_Load_GridSQL(oConID, oCommand, 0, BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("TAB_TITLE")) Refresh_Load_GridSQL(oConID, oCommand, 0, DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("TAB_TITLE"))
Else
LOGGER.Debug("No DATASearches configured for this profile!")
End If End If
If DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count > 0 Then If DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count > 0 Then
LOGGER.Debug($"There are [{DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count}] DocSearches configured!") LOGGER.Debug($"There are [{DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count}] DocSearches configured!")
@@ -710,6 +1093,8 @@ Public Class frmValidatorSearch
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
XtraTabControlDocs.SelectedTabPageIndex = 0 XtraTabControlDocs.SelectedTabPageIndex = 0
RefreshTabDoc(oConID, oCommand, 0, DT_FILTERED_PROFILE_SEARCHES_DOC.Rows(0).Item("TAB_TITLE")) RefreshTabDoc(oConID, oCommand, 0, DT_FILTERED_PROFILE_SEARCHES_DOC.Rows(0).Item("TAB_TITLE"))
Else
LOGGER.Debug("No DocSearches configured for this profile!")
End If End If
End Sub End Sub
@@ -754,48 +1139,57 @@ Public Class frmValidatorSearch
End Sub End Sub
Sub ReLoad_Active_SQLTab() Sub ReLoad_Active_SQLTab()
Dim oTabIndex = XtraTabControlSQL.SelectedTabPageIndex Dim oTabIndex = XtraTabControlSQL.SelectedTabPageIndex
Dim oConID = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(oTabIndex).Item("CONN_ID") Dim oConID = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(oTabIndex).Item("CONN_ID")
Dim oCommand = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(oTabIndex).Item("SQL_COMMAND") Dim oCommand = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(oTabIndex).Item("SQL_COMMAND")
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True) oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
RefreshTabSQL(oConID, oCommand, oTabIndex, BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(oTabIndex).Item("TAB_TITLE")) RefreshTabSQL(oConID, oCommand, oTabIndex, DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(oTabIndex).Item("TAB_TITLE"))
End Sub End Sub
Private Sub GridControlDocSearch1_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch1.DoubleClick Private Sub GridControlDocSearch1_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch1.DoubleClick
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch1) Refresh_DocID(GridViewDocSearch1)
FileShow() FileShow()
End Sub End Sub
Private Sub GridControlDocSearch2_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch2.DoubleClick Private Sub GridControlDocSearch2_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch2.DoubleClick
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch2) Refresh_DocID(GridViewDocSearch2)
FileShow() FileShow()
End Sub End Sub
Private Sub GridControlDocSearch3_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch3.DoubleClick Private Sub GridControlDocSearch3_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch3.DoubleClick
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch3) Refresh_DocID(GridViewDocSearch3)
FileShow() FileShow()
End Sub End Sub
Private Sub GridControlDocSearch4_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch4.DoubleClick Private Sub GridControlDocSearch4_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch4.DoubleClick
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch4) Refresh_DocID(GridViewDocSearch4)
FileShow() FileShow()
End Sub End Sub
Private Sub GridControlDocSearch5_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch5.DoubleClick Private Sub GridControlDocSearch5_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch5.DoubleClick
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch5) Refresh_DocID(GridViewDocSearch5)
FileShow() FileShow()
End Sub End Sub
Private Sub GridControlDocSearch1_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch1.Click Private Sub GridControlDocSearch1_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch1.Click
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch1) Refresh_DocID(GridViewDocSearch1)
End Sub End Sub
Private Sub GridControlDocSearch2_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch2.Click Private Sub GridControlDocSearch2_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch2.Click
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch2) Refresh_DocID(GridViewDocSearch2)
End Sub End Sub
Private Sub GridControlDocSearch3_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch3.Click Private Sub GridControlDocSearch3_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch3.Click
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch3) Refresh_DocID(GridViewDocSearch3)
End Sub End Sub
Private Sub GridControlDocSearch4_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch4.Click Private Sub GridControlDocSearch4_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch4.Click
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch4) Refresh_DocID(GridViewDocSearch4)
End Sub End Sub
Private Sub GridControlDocSearch5_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch5.Click Private Sub GridControlDocSearch5_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch5.Click
If Not Me.Visible Then Return
Refresh_DocID(GridViewDocSearch5) Refresh_DocID(GridViewDocSearch5)
End Sub End Sub

View File

View File

@@ -5,8 +5,8 @@
<package id="DocumentFormat.OpenXml.Framework" version="3.2.0" targetFramework="net462" /> <package id="DocumentFormat.OpenXml.Framework" version="3.2.0" targetFramework="net462" />
<package id="EntityFramework" version="6.4.4" targetFramework="net462" /> <package id="EntityFramework" version="6.4.4" targetFramework="net462" />
<package id="EntityFramework.Firebird" version="6.4.0" targetFramework="net462" /> <package id="EntityFramework.Firebird" version="6.4.0" targetFramework="net462" />
<package id="GdPicture" version="14.3.23" targetFramework="net462" /> <package id="GdPicture" version="14.3.3" targetFramework="net462" />
<package id="GdPicture.runtimes.windows" version="14.3.23" 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="Google.Protobuf" version="3.33.2" targetFramework="net462" />
<package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net462" /> <package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net462" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="9.0.0" targetFramework="net462" /> <package id="Microsoft.Bcl.AsyncInterfaces" version="9.0.0" targetFramework="net462" />
@@ -19,6 +19,7 @@
<package id="Newtonsoft.Json.Bson" version="1.0.2" targetFramework="net462" /> <package id="Newtonsoft.Json.Bson" version="1.0.2" targetFramework="net462" />
<package id="NLog" version="5.0.5" targetFramework="net461" /> <package id="NLog" version="5.0.5" targetFramework="net461" />
<package id="OpenMcdf" version="2.4.1" 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" version="3.2.46" targetFramework="net462" />
<package id="protobuf-net.Core" 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="RtfPipe" version="2.0.7677.4303" targetFramework="net462" />

View File

@@ -151,9 +151,9 @@
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
</Reference> </Reference>
<Reference Include="DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" /> <Reference Include="DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DigitalData.Controls.DocumentViewer, Version=2.2.0.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Controls.DocumentViewer, Version=2.6.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\Controls.DocumentViewer\obj\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Controls.LookupGrid"> <Reference Include="DigitalData.Controls.LookupGrid">
<HintPath>..\..\..\..\2_DLL Projekte\DDMonorepo\Controls.LookupGrid\bin\Debug\DigitalData.Controls.LookupGrid.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDMonorepo\Controls.LookupGrid\bin\Debug\DigitalData.Controls.LookupGrid.dll</HintPath>
@@ -173,23 +173,18 @@
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.3.6.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Database">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.EDMI.API"> <Reference Include="DigitalData.Modules.EDMI.API">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Digital Data\DD_Modules\DigitalData.Modules.EDMI.API.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Encryption, Version=1.3.1.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Encryption, Version=1.3.1.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Encryption\bin\Debug\DigitalData.Modules.Encryption.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Encryption\bin\Debug\DigitalData.Modules.Encryption.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Interfaces, Version=2.3.7.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Interfaces">
<SpecificVersion>False</SpecificVersion> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Digital Data\DD_Modules\DigitalData.Modules.Interfaces.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.License">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Digital Data\DD_Modules\11_2025\DigitalData.Modules.License.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.6.5.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Logging, Version=2.6.5.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
@@ -202,15 +197,14 @@
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Windream, Version=1.9.6.2, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Windream">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Windream\bin\Debug\DigitalData.Modules.Windream.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\Windream\bin\Debug\DigitalData.Modules.Windream.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.ZooFlow"> <Reference Include="DigitalData.Modules.ZooFlow">
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\ZooFlow\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath> <HintPath>..\..\..\..\2_DLL Projekte\DDModules\ZooFlow\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath>
</Reference> </Reference>
<Reference Include="DLLLicenseManager"> <Reference Include="DLLLicenseManager">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\DLLLicenseManager.dll</HintPath> <HintPath>M:\Bibliotheken\Digital Data\DD_Modules\DLLLicenseManager.dll</HintPath>
</Reference> </Reference>
<Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL"> <Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
<HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath> <HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath>
@@ -231,117 +225,109 @@
<HintPath>..\packages\FirebirdSql.Data.FirebirdClient.7.5.0\lib\net452\FirebirdSql.Data.FirebirdClient.dll</HintPath> <HintPath>..\packages\FirebirdSql.Data.FirebirdClient.7.5.0\lib\net452\FirebirdSql.Data.FirebirdClient.dll</HintPath>
</Reference> </Reference>
<Reference Include="FormsUtils"> <Reference Include="FormsUtils">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\FormsUtils.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\FormsUtils.dll</HintPath>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.CAD.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Common, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Common.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Document, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Document.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Email, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Email.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.HTML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.HTML.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Imaging, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="GdPicture.NET.14.Markdown, Version=14.3.23.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.Markdown.dll</HintPath>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.PDF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.PDF.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.RTF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.RTF.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.SVG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.SVG.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
<Private>True</Private> <Private>True</Private>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\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> <EmbedInteropTypes>True</EmbedInteropTypes>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="Google.Protobuf, Version=3.33.2.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604, processorArchitecture=MSIL"> <Reference Include="Google.Protobuf, Version=3.33.2.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604, processorArchitecture=MSIL">
<HintPath>..\packages\Google.Protobuf.3.33.2\lib\net45\Google.Protobuf.dll</HintPath> <HintPath>..\packages\Google.Protobuf.3.33.2\lib\net45\Google.Protobuf.dll</HintPath>
</Reference> </Reference>
<Reference Include="Interop.WINDREAMLib"> <Reference Include="Interop.WINDREAMLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WINDREAMLib.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\windream\Interop.WINDREAMLib.dll</HintPath>
<EmbedInteropTypes>False</EmbedInteropTypes> <EmbedInteropTypes>False</EmbedInteropTypes>
</Reference> </Reference>
<Reference Include="Interop.WMOBRWSLib"> <Reference Include="Interop.WMOBRWSLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOBRWSLib.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\windream\Interop.WMOBRWSLib.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes> <EmbedInteropTypes>True</EmbedInteropTypes>
</Reference> </Reference>
<Reference Include="Interop.WMOSRCHLib"> <Reference Include="Interop.WMOSRCHLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOSRCHLib.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\windream\Interop.WMOSRCHLib.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes> <EmbedInteropTypes>True</EmbedInteropTypes>
</Reference> </Reference>
<Reference Include="Interop.WMOTOOLLib"> <Reference Include="Interop.WMOTOOLLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOTOOLLib.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\windream\Interop.WMOTOOLLib.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes> <EmbedInteropTypes>True</EmbedInteropTypes>
</Reference> </Reference>
<Reference Include="Mail"> <Reference Include="Mail">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Limilabs\Mail.dll</HintPath> <HintPath>M:\Bibliotheken\3rdParty\Limilabs\Mail.dll</HintPath>
</Reference> </Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> <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> <HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.9.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
@@ -356,15 +342,6 @@
<Reference Include="Microsoft.IdentityModel.Abstractions, Version=6.22.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <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> <HintPath>..\packages\Microsoft.IdentityModel.Abstractions.6.22.0\lib\net461\Microsoft.IdentityModel.Abstractions.dll</HintPath>
</Reference> </Reference>
<Reference Include="NativeSDK.Exceptions, Version=14.3.23.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\NativeSDK.Exceptions.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings, Version=14.3.23.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\NativeSDK.Settings.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings.Edition, Version=14.3.23.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\NativeSDK.Settings.Edition.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> <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> <HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference> </Reference>
@@ -377,11 +354,8 @@
<Reference Include="OpenMcdf, Version=2.4.1.0, Culture=neutral, PublicKeyToken=fdbb1629d7c00800, processorArchitecture=MSIL"> <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> <HintPath>..\packages\OpenMcdf.2.4.1\lib\net40\OpenMcdf.dll</HintPath>
</Reference> </Reference>
<Reference Include="Oracle.ManagedDataAccess"> <Reference Include="Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Oracle.ManagedDataAccess.dll</HintPath> <HintPath>..\packages\Oracle.ManagedDataAccess.21.15.0\lib\net462\Oracle.ManagedDataAccess.dll</HintPath>
</Reference>
<Reference Include="PdfSharp-gdi">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\PdfSharp-gdi.dll</HintPath>
</Reference> </Reference>
<Reference Include="protobuf-net, Version=3.0.0.0, Culture=neutral, PublicKeyToken=257b51d87d2e4d67, processorArchitecture=MSIL"> <Reference Include="protobuf-net, Version=3.0.0.0, Culture=neutral, PublicKeyToken=257b51d87d2e4d67, processorArchitecture=MSIL">
<HintPath>..\packages\protobuf-net.3.2.46\lib\net462\protobuf-net.dll</HintPath> <HintPath>..\packages\protobuf-net.3.2.46\lib\net462\protobuf-net.dll</HintPath>
@@ -392,9 +366,6 @@
<Reference Include="RtfPipe, Version=2.0.7677.4303, Culture=neutral, PublicKeyToken=5f6ab4ce530296d2, processorArchitecture=MSIL"> <Reference Include="RtfPipe, Version=2.0.7677.4303, Culture=neutral, PublicKeyToken=5f6ab4ce530296d2, processorArchitecture=MSIL">
<HintPath>..\packages\RtfPipe.2.0.7677.4303\lib\net45\RtfPipe.dll</HintPath> <HintPath>..\packages\RtfPipe.2.0.7677.4303\lib\net45\RtfPipe.dll</HintPath>
</Reference> </Reference>
<Reference Include="S22.Imap, Version=3.6.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\S22.Imap.3.6.0.0\lib\net40\S22.Imap.dll</HintPath>
</Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> <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> <HintPath>..\packages\System.Buffers.4.6.0\lib\net462\System.Buffers.dll</HintPath>
@@ -488,7 +459,6 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Include="ApplicationEvents.vb" /> <Compile Include="ApplicationEvents.vb" />
<Compile Include="ClassAnnotation.vb" />
<Compile Include="ClassConfig.vb" /> <Compile Include="ClassConfig.vb" />
<Compile Include="ClassConstants.vb" /> <Compile Include="ClassConstants.vb" />
<Compile Include="ClassControlCreator.vb" /> <Compile Include="ClassControlCreator.vb" />
@@ -624,6 +594,12 @@
<Compile Include="frmError.vb"> <Compile Include="frmError.vb">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
<Compile Include="frmExpression_Designer.Designer.vb">
<DependentUpon>frmExpression_Designer.vb</DependentUpon>
</Compile>
<Compile Include="frmExpression_Designer.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmFileInfo.Designer.vb"> <Compile Include="frmFileInfo.Designer.vb">
<DependentUpon>frmFileInfo.vb</DependentUpon> <DependentUpon>frmFileInfo.vb</DependentUpon>
</Compile> </Compile>
@@ -868,6 +844,9 @@
<DependentUpon>frmError.vb</DependentUpon> <DependentUpon>frmError.vb</DependentUpon>
<SubType>Designer</SubType> <SubType>Designer</SubType>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="frmExpression_Designer.resx">
<DependentUpon>frmExpression_Designer.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmFileInfo.resx"> <EmbeddedResource Include="frmFileInfo.resx">
<DependentUpon>frmFileInfo.vb</DependentUpon> <DependentUpon>frmFileInfo.vb</DependentUpon>
<SubType>Designer</SubType> <SubType>Designer</SubType>
@@ -1090,6 +1069,12 @@
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="Oracle.DataAccess.Common.Configuration.Section.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Oracle.ManagedDataAccess.Client.Configuration.Section.xsd">
<SubType>Designer</SubType>
</None>
<None Include="packages.config" /> <None Include="packages.config" />
<None Include="Resources\syncreon.png" /> <None Include="Resources\syncreon.png" />
</ItemGroup> </ItemGroup>
@@ -1271,7 +1256,9 @@
<None Include="Resources\PM_mit_slogan.JPG" /> <None Include="Resources\PM_mit_slogan.JPG" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Content Include="logtaskflow.txt" />
<None Include="Changelog.md" /> <None Include="Changelog.md" />
<Content Include="DataColumnExpression.txt" />
<Content Include="DD_Icons_ICO_PMANAGER_48px.ico" /> <Content Include="DD_Icons_ICO_PMANAGER_48px.ico" />
<Content Include="DD_taskFLOW_ICON.ico" /> <Content Include="DD_taskFLOW_ICON.ico" />
<Content Include="MailLicense.xml"> <Content Include="MailLicense.xml">
@@ -1379,10 +1366,10 @@
</PropertyGroup> </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.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\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.3.23\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.3.23\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> </Target>
<Import Project="..\packages\EntityFramework.6.4.4\build\EntityFramework.targets" Condition="Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" /> <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.3.23\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.3.23\build\net462\GdPicture.runtimes.windows.targets')" /> <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. <!-- 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. Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild"> <Target Name="BeforeBuild">