Compare commits
23 Commits
743ef3fe22
...
Cockpit_Tr
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
04d9aac24f | ||
|
|
d74beddb35 | ||
|
|
a3fb1cbafc | ||
|
|
960acb0ce1 | ||
|
|
b95e580f06 | ||
|
|
df3f8167fe | ||
|
|
376dc3390f | ||
|
|
a2a96c0f8d | ||
|
|
771fca60f0 | ||
|
|
a84dafef0b | ||
|
|
4cb3bd9eb1 | ||
|
|
43ad71f520 | ||
|
|
724a37ad47 | ||
|
|
f5ca487158 | ||
|
|
73e69b3eef | ||
|
|
cb51396952 | ||
|
|
c464f24681 | ||
|
|
969e07eb17 | ||
|
|
7629d54fe1 | ||
|
|
41e46f9dbb | ||
|
|
a192267d96 | ||
|
|
a0d3a487d8 | ||
|
|
54744a0531 |
@@ -99,23 +99,17 @@
|
||||
</Component>-->
|
||||
|
||||
<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="WMOTOOLLib" Name="Interop.WMOTOOLLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOTOOLLib.dll"/>
|
||||
<File Id="WMOSRCHLib" Name="Interop.WMOSRCHLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOSRCHLib.dll"/>
|
||||
<File Id="WMOBRWSLib" Name="Interop.WMOBRWSLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOBRWSLib.dll"/>
|
||||
<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="M:\Bibliotheken\3rdParty\windream\Interop.WMOTOOLLib.dll"/>
|
||||
<File Id="WMOSRCHLib" Name="Interop.WMOSRCHLib.dll" Source="M:\Bibliotheken\3rdParty\windream\Interop.WMOSRCHLib.dll"/>
|
||||
<File Id="WMOBRWSLib" Name="Interop.WMOBRWSLib.dll" Source="M:\Bibliotheken\3rdParty\windream\Interop.WMOBRWSLib.dll"/>
|
||||
</Component>
|
||||
|
||||
<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" />
|
||||
</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"/>
|
||||
<File Id="FormsUtilsLib" Name="FormsUtils.dll" Source="M:\Bibliotheken\3rdParty\FormsUtils.dll" KeyPath="yes" />
|
||||
</Component>
|
||||
|
||||
<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="DDSnapPanel" Name="DigitalData.Controls.SnapPanel.dll" Source="DigitalData.Controls.SnapPanel.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="NLog" Name="NLog.dll" Source="NLog.dll"/>
|
||||
</Component>
|
||||
|
||||
<Component Id="Oracle" Guid="CF76DB5D-3263-450F-96C6-F02F5447A0A1">
|
||||
<File Id="Oracle.ManagedDataAccess" Name="Oracle.ManagedDataAccess.dll" Source="P:\Visual Studio Projekte\Bibliotheken\Oracle.ManagedDataAccess.dll" KeyPath="yes"/>
|
||||
</Component>
|
||||
|
||||
<Component Id="PDFsharp" Guid="9cd1cfb7-3f84-4a8b-aa51-642b723fcd70">
|
||||
<File Id="PdfSharpgdi" Name="PdfSharp-gdi.dll" Source="P:\Visual Studio Projekte\Bibliotheken\PdfSharp-gdi.dll" KeyPath="yes"/>
|
||||
</Component>
|
||||
<Component Id="RuntimeLibs" Guid="F7170744-3DB5-4275-ACCD-7F3B9BDE1D6E">
|
||||
<File Id="Newtonsoft.Json" Name="Newtonsoft.Json.dll" Source="Newtonsoft.Json.dll" KeyPath="yes" />
|
||||
<File Id="System.Text.Json" Name="System.Text.Json.dll" Source="System.Text.Json.dll" />
|
||||
<File Id="FirebirdSql.Data.FirebirdClient" Name="FirebirdSql.Data.FirebirdClient.dll" Source="FirebirdSql.Data.FirebirdClient.dll" />
|
||||
<File Id="EntityFramework" Name="EntityFramework.dll" Source="EntityFramework.dll" />
|
||||
<File Id="EntityFramework.SqlServer" Name="EntityFramework.SqlServer.dll" Source="EntityFramework.SqlServer.dll" />
|
||||
<File Id="EntityFramework.Firebird" Name="EntityFramework.Firebird.dll" Source="EntityFramework.Firebird.dll" />
|
||||
</Component>
|
||||
|
||||
<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.filters" Name="GdPicture.NET.14.filters.dll" />
|
||||
<File Id="GdPicture.NET.14.filters64" Name="GdPicture.NET.14.filters.64.dll" />
|
||||
<File Id="GdPicture.NET.14.image" Name="GdPicture.NET.14.image.gdimgplug.dll" />
|
||||
<File Id="GdPicture.NET.14.image64" Name="GdPicture.NET.14.image.gdimgplug.64.dll" />
|
||||
<File Id="GdPicture.NET.14.Imaging.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.Common" Name="GdPicture.NET.14.Common.dll" />
|
||||
<File Id="GdPicture.NET.14" Name="GdPicture.NET.14.dll" KeyPath="yes" />
|
||||
<File Id="GdPicture.NET.14.CAD" Name="GdPicture.NET.14.CAD.dll" />
|
||||
<File Id="GdPicture.NET.14.CAD.DWG" Name="GdPicture.NET.14.CAD.DWG.dll" />
|
||||
<File Id="GdPicture.NET.14.filters" Name="GdPicture.NET.14.filters.dll" />
|
||||
<File Id="GdPicture.NET.14.filters64" Name="GdPicture.NET.14.filters.64.dll" />
|
||||
<File Id="GdPicture.NET.14.image" Name="GdPicture.NET.14.image.gdimgplug.dll" />
|
||||
<File Id="GdPicture.NET.14.image64" Name="GdPicture.NET.14.image.gdimgplug.64.dll" />
|
||||
<File Id="GdPicture.NET.14.Imaging.Formats" Name="GdPicture.NET.14.Imaging.Formats.dll" />
|
||||
<File Id="GdPicture.NET.14.Imaging.Rendering" Name="GdPicture.NET.14.Imaging.Rendering.dll" />
|
||||
<File Id="GdPicture.NET.14.Imaging.Rendering.Skia" Name="GdPicture.NET.14.Imaging.Rendering.Skia.dll" />
|
||||
<File Id="GdPicture.NET.14.Rendering.Skia.64" Name="GdPicture.NET.14.Imaging.Rendering.Skia.64.dll" />
|
||||
<File Id="GdPicture.NET.14.Imaging" Name="GdPicture.NET.14.Imaging.dll" />
|
||||
<File Id="GdPicture.NET.14.Imaging.ML.64" Name="GdPicture.NET.14.Imaging.ML.64.dll" />
|
||||
<File Id="GdPicture.NET.14.Imaging.ML" Name="GdPicture.NET.14.Imaging.ML.dll" />
|
||||
<File Id="GdPicture.NET.14.Imaging.Formats.Conversion" Name="GdPicture.NET.14.Imaging.Formats.Conversion.dll" />
|
||||
<File Id="GdPicture.NET.14.Common" Name="GdPicture.NET.14.Common.dll" />
|
||||
<File Id="GdPicture.NET.14.Document" Name="GdPicture.NET.14.Document.dll" />
|
||||
<File Id="GdPicture.NET.14.PDF" Name="GdPicture.NET.14.PDF.dll" />
|
||||
<File Id="GdPicture.NET.14.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.SVG" Name="GdPicture.NET.14.SVG.dll" />
|
||||
<File Id="GdPicture.NET.14.OpenDocument" Name="GdPicture.NET.14.OpenDocument.dll" />
|
||||
<File Id="GdPicture.NET.14.OpenXML" Name="GdPicture.NET.14.OpenXML.dll" />
|
||||
<File Id="GdPicture.NET.14.Email" Name="GdPicture.NET.14.Email.dll" />
|
||||
<File Id="GdPicture.NET.14.HTML" Name="GdPicture.NET.14.HTML.dll" />
|
||||
<File Id="GdPicture.NET.14.MSOfficeBinary" Name="GdPicture.NET.14.MSOfficeBinary.dll"/>
|
||||
<File Id="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="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.Memory" Name="System.Memory.dll" />
|
||||
<File Id="System.Numerics.Vectors" Name="System.Numerics.Vectors.dll" />
|
||||
<File Id="System.Runtime.CompilerServices.Unsafe" Name="System.Runtime.CompilerServices.Unsafe.dll" />
|
||||
<File Id="System.Security.Cryptography.Pkcs" Name="System.Security.Cryptography.Pkcs.dll" />
|
||||
<File Id="System.Text.Encodings.Web" Name="System.Text.Encodings.Web.dll" />
|
||||
<File Id="System.Threading.Tasks.Extensions" Name="System.Threading.Tasks.Extensions.dll" />
|
||||
<File Id="System.ValueTuple" Name="System.ValueTuple.dll" />
|
||||
</Component>
|
||||
|
||||
<Component Id="DevExpressLibs" Guid="CB40DAAE-348E-4BD3-B275-9A526EB8F191">
|
||||
@@ -286,9 +300,7 @@
|
||||
<ComponentRef Id="WindreamLibs" />
|
||||
<ComponentRef Id="FormsUtilsLibs"/>
|
||||
<ComponentRef Id="DDLibs" />
|
||||
<ComponentRef Id="Oracle" />
|
||||
<ComponentRef Id="PDFsharp" />
|
||||
<ComponentRef Id="IndependentsoftLibs" />
|
||||
<ComponentRef Id="RuntimeLibs" />
|
||||
<ComponentRef Id="DevExpressLibs" />
|
||||
<ComponentRef Id="GDPictureLibs" />
|
||||
<ComponentRef Id="Devexpress.Locales.de" />
|
||||
|
||||
@@ -7,8 +7,6 @@ Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SetupVS19", "SetupVS19\Setu
|
||||
EndProject
|
||||
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "taskFLOW", "TaskFlow\taskFLOW.vbproj", "{6ACA1432-09A2-47EF-A704-C0AA73905756}"
|
||||
EndProject
|
||||
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DocumentViewer", "..\..\..\2_DLL Projekte\Controls.DocumentViewer\DocumentViewer.vbproj", "{0958CDDF-4A16-41F6-8837-8335F71D599C}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
CD_ROM|Any CPU = CD_ROM|Any CPU
|
||||
@@ -63,26 +61,6 @@ Global
|
||||
{6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|Any CPU.Build.0 = Release|x86
|
||||
{6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|x86.ActiveCfg = Debug|x86
|
||||
{6ACA1432-09A2-47EF-A704-C0AA73905756}.SingleImage|x86.Build.0 = Debug|x86
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|Any CPU.Build.0 = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|x86.ActiveCfg = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.CD_ROM|x86.Build.0 = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|Any CPU.Build.0 = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|x86.ActiveCfg = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.DVD-5|x86.Build.0 = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.Release|x86.Build.0 = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|Any CPU.Build.0 = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|x86.ActiveCfg = Release|Any CPU
|
||||
{0958CDDF-4A16-41F6-8837-8335F71D599C}.SingleImage|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
<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" />
|
||||
</sectionGroup>
|
||||
<section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342" />
|
||||
</configSections>
|
||||
<applicationSettings>
|
||||
<taskFLOW.My.MySettings>
|
||||
@@ -102,8 +103,7 @@
|
||||
</DevExpress.LookAndFeel.Design.AppSettings>
|
||||
</applicationSettings>
|
||||
<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"
|
||||
providerName="System.Data.SqlClient" />
|
||||
<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" />
|
||||
</connectionStrings>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" />
|
||||
@@ -194,6 +194,10 @@
|
||||
<assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
|
||||
</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>
|
||||
</runtime>
|
||||
<entityFramework>
|
||||
@@ -246,4 +250,10 @@
|
||||
</setting>
|
||||
</taskFLOW.My.MySettings>
|
||||
</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>
|
||||
@@ -3,6 +3,7 @@ Imports System.Data.OracleClient
|
||||
Imports System.IO
|
||||
Imports WINDREAMLib
|
||||
Imports DevExpress.Utils.CommonDialogs
|
||||
Imports System.Runtime.InteropServices
|
||||
|
||||
Public Class ClassAllgemeineFunktionen
|
||||
Public Shared Function GUI_LANGUAGE_INFO(pTITLE As String)
|
||||
|
||||
@@ -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
|
||||
@@ -32,6 +32,8 @@ Public Class ClassConfig
|
||||
Public Property ReminderTimer As Integer = 5
|
||||
Public Property OverviewRefresh_Intervall As Integer = 2
|
||||
|
||||
Public Property MainTreeList_Width As Integer = 250
|
||||
|
||||
Public Property MonitorSplitter1_Distance As Integer = 510
|
||||
Public Property MonitorSplitter2_Distance As Integer = 270
|
||||
Public Property MonitorSplitter3_Distance As Integer = 400
|
||||
@@ -43,8 +45,12 @@ Public Class ClassConfig
|
||||
Public Property NOTES_ONCLICK As Boolean = True
|
||||
Public Property GridFontSizeDelta As Integer = 0
|
||||
Public Property ProfileConfig As New ProfileUserConfig
|
||||
Public Property InvDashboardSplitterPositions As New List(Of InvDashboardSplitterPosition)
|
||||
|
||||
|
||||
Public Class InvDashboardSplitterPosition
|
||||
Public Property CockpitChartId As Integer
|
||||
Public Property SplitterPosition As Integer
|
||||
End Class
|
||||
|
||||
Public Class ProfileUserConfig
|
||||
Public Property ProfileID As Integer
|
||||
|
||||
@@ -68,6 +68,18 @@ Public Class ClassControlCreator
|
||||
''' </summary>
|
||||
Public Property GridTables As New Dictionary(Of Integer, Dictionary(Of String, RepositoryItem))
|
||||
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>
|
||||
''' Standard Eigenschaften für alle Controls
|
||||
@@ -533,12 +545,11 @@ Public Class ClassControlCreator
|
||||
End Function
|
||||
|
||||
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 oControlId = DirectCast(oControl.Tag, ControlMetadata).Guid
|
||||
Dim oView As GridView
|
||||
Dim oControlName = oControl.Name
|
||||
|
||||
oControl.ForceInitialize()
|
||||
|
||||
oView = oControl.MainView
|
||||
@@ -635,9 +646,13 @@ Public Class ClassControlCreator
|
||||
End Try
|
||||
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)
|
||||
' 08.11.2021: Fix editor being empty on first open
|
||||
oView.FocusInvalidRow()
|
||||
|
||||
Return oControl
|
||||
@@ -848,44 +863,239 @@ Public Class ClassControlCreator
|
||||
End Function
|
||||
|
||||
Public Sub GridTables_HandleControlValueChange(pControlPanel As XtraScrollableControl, pColumnsWithSqlAndControlPlaceholders As DataTable)
|
||||
If Not IsNothing(pColumnsWithSqlAndControlPlaceholders) AndAlso pColumnsWithSqlAndControlPlaceholders.Rows.Count > 0 Then
|
||||
For Each oRow As DataRow In pColumnsWithSqlAndControlPlaceholders.Rows
|
||||
If pColumnsWithSqlAndControlPlaceholders Is Nothing OrElse pColumnsWithSqlAndControlPlaceholders.Rows.Count = 0 Then
|
||||
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
|
||||
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 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
|
||||
|
||||
Dim lookup = DirectCast(oControl, LookupControl3)
|
||||
' Speichere den aktuellen EditValue (kann einzelner Wert oder Liste sein)
|
||||
If lookup.EditValue IsNot Nothing Then
|
||||
Dim controlName As String = lookup.Name
|
||||
lookupBackups(controlName) = lookup.EditValue
|
||||
Logger.Debug($"GridTables_HandleControlValueChange -> Backup für Lookup [{controlName}]: [{lookup.EditValue}]")
|
||||
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)
|
||||
Logger.Error($"GridTables_HandleControlValueChange -> Fehler beim Backup von Lookup: {ex.Message}")
|
||||
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
|
||||
End If
|
||||
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
|
||||
|
||||
@@ -28,6 +28,99 @@ Public Class ClassFormat
|
||||
|
||||
End Select
|
||||
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>
|
||||
''' Converts a string according to the type information, using the invariant culture
|
||||
@@ -41,25 +134,40 @@ Public Class ClassFormat
|
||||
|
||||
Select Case pType
|
||||
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
|
||||
LOGGER.Debug($"GetConvertedValue: Converting {pValue.ToString} to Currency ")
|
||||
If Double.TryParse(pValue, NumberStyles.Currency, CultureInfo.InvariantCulture, oConvertedValue) Then
|
||||
' ✅ IMMER normalisieren – auch für DB-Werte!
|
||||
Dim normalizedValue As String = NormalizeNumericString(pValue?.ToString())
|
||||
If Double.TryParse(normalizedValue, NumberStyles.Float, CultureInfo.InvariantCulture, oConvertedValue) Then
|
||||
Return oConvertedValue
|
||||
End If
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
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
|
||||
If Integer.TryParse(pValue, NumberStyles.Integer, CultureInfo.InvariantCulture, oConvertedValue) Then
|
||||
Return oConvertedValue
|
||||
End If
|
||||
Try
|
||||
Dim normalizedValue As String = NormalizeNumericString(pValue?.ToString())
|
||||
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
|
||||
LOGGER.Debug($"GetConvertedValue - Case ELSE - pType is {pType}")
|
||||
Try
|
||||
@@ -68,7 +176,6 @@ Public Class ClassFormat
|
||||
LOGGER.Warn($"Error in GetConvertedValue: pType is {pType} - converting value to String")
|
||||
oConvertedValue = ""
|
||||
End Try
|
||||
|
||||
End Select
|
||||
|
||||
Return oConvertedValue
|
||||
@@ -76,26 +183,32 @@ Public Class ClassFormat
|
||||
|
||||
''' <summary>
|
||||
''' 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>
|
||||
''' <param name="pValue"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function GetStringValue(pValue As Object) As String
|
||||
' ✅ FIX: Immer InvariantCulture verwenden für DB-Speicherung
|
||||
Select Case pValue.GetType
|
||||
Case GetType(Single)
|
||||
Return DirectCast(pValue, Single).ToString(CultureInfo.CurrentCulture)
|
||||
' ✅ NEU: InvariantCulture statt CurrentCulture
|
||||
Return DirectCast(pValue, Single).ToString(CultureInfo.InvariantCulture)
|
||||
|
||||
Case GetType(Double)
|
||||
Return DirectCast(pValue, Double).ToString(CultureInfo.CurrentCulture)
|
||||
' ✅ NEU: InvariantCulture statt CurrentCulture
|
||||
Return DirectCast(pValue, Double).ToString(CultureInfo.InvariantCulture)
|
||||
|
||||
Case GetType(Decimal)
|
||||
Return DirectCast(pValue, Decimal).ToString(CultureInfo.CurrentCulture)
|
||||
' ✅ NEU: InvariantCulture statt CurrentCulture
|
||||
Return DirectCast(pValue, Decimal).ToString(CultureInfo.InvariantCulture)
|
||||
|
||||
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)
|
||||
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
|
||||
Return pValue.ToString
|
||||
|
||||
@@ -1,5 +1,75 @@
|
||||
Public Class ClassIDBData
|
||||
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>
|
||||
''' Gets all indices by BusinessEntity.
|
||||
''' </summary>
|
||||
@@ -7,15 +77,16 @@
|
||||
''' <returns>Array with all Indices</returns>
|
||||
''' <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"
|
||||
DTVWIDB_BE_ATTRIBUTE = DatabaseFallback.GetDatatableIDB(oSQL)
|
||||
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 "
|
||||
DTVWIDB_BE_ATTRIBUTE = DatabaseFallback.GetDatatableIDB(oSQL)
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
Public IDBSystemIndices As List(Of String)
|
||||
|
||||
Public Function GetIndicesByBE(ByVal BusinessEntity As String) As String()
|
||||
Try
|
||||
Dim aNames(4) As String
|
||||
@@ -84,52 +155,64 @@
|
||||
End Function
|
||||
Public Function GetVariableValue(oAttributeName As String, Optional oIDBTyp As Integer = 0, Optional FromIDB As Boolean = False) As Object
|
||||
Try
|
||||
Dim oSingleAttribute As Boolean = True
|
||||
Select Case oIDBTyp
|
||||
Case 8
|
||||
oSingleAttribute = False
|
||||
Case 9
|
||||
oSingleAttribute = False
|
||||
End Select
|
||||
Dim oAttributeValue
|
||||
LOGGER.Debug($"IDBData - GetVariableValue - oSingleAttribute [{oSingleAttribute.ToString}] - FromIDB [{FromIDB.ToString}]")
|
||||
If oSingleAttribute = True And IDB_DT_DOC_DATA.Rows.Count = 1 And FromIDB = False Then
|
||||
' Bestimme, ob es sich um ein Single-Value-Attribut handelt (nicht Typ 8 oder 9)
|
||||
Dim oIsSingleAttribute As Boolean = (oIDBTyp <> 8 AndAlso oIDBTyp <> 9)
|
||||
|
||||
LOGGER.Debug($"IDBData - GetVariableValue - Attribute: [{oAttributeName}] - IsSingleAttribute: [{oIsSingleAttribute}] - FromIDB: [{FromIDB}]")
|
||||
|
||||
' Schnellpfad: Direkt aus gecachter DataTable holen
|
||||
If oIsSingleAttribute AndAlso IDB_DT_DOC_DATA.Rows.Count = 1 AndAlso Not FromIDB Then
|
||||
Try
|
||||
If oAttributeName = "IDBCreatedWhen" Then
|
||||
oAttributeName = "ADDED_WHEN"
|
||||
ElseIf oAttributeName = "IDBCreatedWho" Then
|
||||
oAttributeName = "ADDED_WHO"
|
||||
ElseIf oAttributeName = "IDBChangedWhen" Then
|
||||
oAttributeName = "CHANGED_WHEN"
|
||||
ElseIf oAttributeName = "IDBChangedWho" Then
|
||||
oAttributeName = "CHANGED_WHO"
|
||||
End If
|
||||
LOGGER.Debug($"IDBData - GetVariableValue - IDB_DT_DOC_DATA.Rows.Count = 1")
|
||||
oAttributeValue = IDB_DT_DOC_DATA.Rows(0).Item(oAttributeName)
|
||||
Dim oMappedName As String = MapSystemAttributeName(oAttributeName)
|
||||
Dim oValue As Object = IDB_DT_DOC_DATA.Rows(0).Item(oMappedName)
|
||||
LOGGER.Debug($"IDBData - GetVariableValue - Retrieved from cache: Attribute=[{oAttributeName}] MappedName=[{oMappedName}] Value=[{oValue}]")
|
||||
Return oValue
|
||||
Catch ex As Exception
|
||||
LOGGER.Debug($"Error getting Attribute from IDB_DT_DOC_DATA: {ex.Message}")
|
||||
' Fallthrough zum Datenbank-Fallback
|
||||
End Try
|
||||
End If
|
||||
|
||||
End If
|
||||
If Not IsNothing(oAttributeValue) Then
|
||||
LOGGER.Debug($"IDBData - GetVariableValue - Returning value: [{oAttributeValue}]")
|
||||
Return oAttributeValue
|
||||
' Fallback: Wert aus Datenbank über Funktion holen
|
||||
LOGGER.Debug($"Retrieving value for attribute [{oAttributeName}] via FNIDB_PM_GET_VARIABLE_VALUE")
|
||||
|
||||
Dim oSQL As String = $"SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({CURRENT_DOC_ID},'{oAttributeName}','{USER_LANGUAGE}',CONVERT(BIT,'{IDB_USES_WMFILESTORE}'))"
|
||||
LOGGER.Debug($"SQL: {oSQL}")
|
||||
|
||||
Dim oResultTable As DataTable = DatabaseFallback.GetDatatableIDB(oSQL)
|
||||
|
||||
If oResultTable IsNot Nothing AndAlso oResultTable.Rows.Count = 1 Then
|
||||
Dim oValue As Object = oResultTable.Rows(0).Item(0)
|
||||
LOGGER.Debug($"IDBData - GetVariableValue - Retrieved from DB: [{oValue}]")
|
||||
Return oValue
|
||||
Else
|
||||
LOGGER.Debug($"oAttributeValue for Attribute [{oAttributeName}] is so far nothing..Now trying FNIDB_PM_GET_VARIABLE_VALUE ")
|
||||
LOGGER.Info($"IDBData - GetVariableValue - No value found in DB for attribute [{oAttributeName}] - SQL [{oSQL}]")
|
||||
End If
|
||||
Dim oFNSQL = $"SELECT * FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({CURRENT_DOC_ID},'{oAttributeName}','{USER_LANGUAGE}',CONVERT(BIT,'{IDB_USES_WMFILESTORE}'))"
|
||||
LOGGER.Debug($"GetVariableValue: {oFNSQL}")
|
||||
oAttributeValue = DatabaseFallback.GetDatatableIDB(oFNSQL)
|
||||
Dim odt As DataTable = oAttributeValue
|
||||
If odt.Rows.Count = 1 Then
|
||||
oAttributeValue = odt.Rows(0).Item(0)
|
||||
End If
|
||||
Return oAttributeValue
|
||||
|
||||
Return oResultTable
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
Return Nothing
|
||||
End Try
|
||||
End Function
|
||||
|
||||
''' <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
|
||||
Public Function Delete_Term_Object_From_Metadata(oAttributeName As String, oTerm2Delete As String) As Object
|
||||
Try
|
||||
@@ -138,10 +221,11 @@
|
||||
If IDB_USES_WMFILESTORE Then
|
||||
oID_IS_FOREIGN = 1
|
||||
End If
|
||||
|
||||
Dim oDELSQL = $"EXEC PRIDB_DELETE_TERM_OBJECT_METADATA {CURRENT_DOC_ID},'{oAttributeName}','{oTerm2Delete}','{USER_USERNAME}','{USER_LANGUAGE}',{oID_IS_FOREIGN}"
|
||||
DatabaseFallback.ExecuteNonQueryIDB(oDELSQL)
|
||||
|
||||
oTerm2Delete = oTerm2Delete.Replace("'", "''")
|
||||
Dim oDELSQL = $"EXEC PRIDB_DELETE_TERM_OBJECT_METADATA {CURRENT_DOC_ID},'{oAttributeName}','{oTerm2Delete}','{USER_USERNAME}','{USER_LANGUAGE}',{oID_IS_FOREIGN};"
|
||||
LOGGER.Debug($"Delete_Term_Object_From_Metadata: {oDELSQL}")
|
||||
'DatabaseFallback.ExecuteNonQueryIDB(oDELSQL)
|
||||
Return ExecuteOrQueue(oDELSQL)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
Return Nothing
|
||||
@@ -150,9 +234,10 @@
|
||||
End Function
|
||||
Public Function Delete_AttributeData(pIDB_OBJID As Int64, pAttributeName As String) As Object
|
||||
Try
|
||||
Dim oDELSQL = $"EXEC PRIDB_DELETE_ATTRIBUTE_DATA {pIDB_OBJID},'{pAttributeName}','{USER_USERNAME}'"
|
||||
DatabaseFallback.ExecuteNonQueryIDB(oDELSQL)
|
||||
|
||||
Dim oDELSQL = $"EXEC PRIDB_DELETE_ATTRIBUTE_DATA {pIDB_OBJID},'{pAttributeName}','{USER_USERNAME}';"
|
||||
LOGGER.Debug($"Delete_Attribute_Data: {oDELSQL}")
|
||||
' DatabaseFallback.ExecuteNonQueryIDB(oDELSQL)
|
||||
Return ExecuteOrQueue(oDELSQL)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
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)
|
||||
Try
|
||||
Dim omsg = $"IDBData - SetVariableValue - Attribute: [{oAttributeName}] - NewValue: [{oNewValue}] - CheckDeleted: [{CheckDeleted.ToString}] - oIDBTyp: [{oIDBTyp}]"
|
||||
LOGGER.Debug(omsg)
|
||||
Dim omytype = oNewValue.GetType.ToString
|
||||
If omytype = "System.Data.DataTable" Then
|
||||
Dim oDTMyNewValues As DataTable = oNewValue
|
||||
Dim oOldAttributeResult
|
||||
Dim oAttributeResultFromDB
|
||||
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
|
||||
oOldAttributeResult = GetVariableValue(oAttributeName, oIDBTyp)
|
||||
oTypeOldResult = oOldAttributeResult.GetType.ToString
|
||||
If oTypeOldResult = "System.Data.DataTable" Then
|
||||
Dim myOldValues As DataTable = oOldAttributeResult
|
||||
If myOldValues.Rows.Count > 1 Then
|
||||
If oEffectiveCheckDeleted = True Then
|
||||
oAttributeResultFromDB = GetVariableValue(oAttributeName, oIDBTyp)
|
||||
oTypeOldResult = oAttributeResultFromDB.GetType.ToString
|
||||
If TypeOf oAttributeResultFromDB Is DataTable Then
|
||||
Dim myOldValues As DataTable = oAttributeResultFromDB
|
||||
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
|
||||
For Each oOldValueRow As DataRow In myOldValues.Rows
|
||||
@@ -199,27 +289,26 @@
|
||||
'### Old Value is a single value ###
|
||||
If oDTMyNewValues.Rows.Count > 1 Then
|
||||
'### there is more than one new value ###
|
||||
Dim oExists As Boolean
|
||||
Dim oExists As Boolean = False
|
||||
For Each oNewValueRow As DataRow In oDTMyNewValues.Rows
|
||||
oExists = False
|
||||
Dim oInfo1 = $"Checking oldValue[{oOldAttributeResult}] vs NewValue [{oNewValueRow.Item(1)}]"
|
||||
If oNewValueRow.Item(1).ToString.ToUpper = oOldAttributeResult.ToString.ToUpper Then
|
||||
LOGGER.Debug($"Checking oldValue[{oAttributeResultFromDB}] vs NewValue [{oNewValueRow.Item(1)}]")
|
||||
If oNewValueRow.Item(1).ToString.ToUpper = oAttributeResultFromDB.ToString.ToUpper Then
|
||||
oExists = True
|
||||
Exit For ' ← sobald gefunden, abbrechen
|
||||
End If
|
||||
Next
|
||||
If oExists = False Then
|
||||
Dim oInfo2 = $"Value [{oOldAttributeResult}] no longer existing in Vector-Attribute [{oAttributeName}] - will be deleted!"
|
||||
LOGGER.Debug(oInfo2)
|
||||
LOGGER.Debug($"Value [{oAttributeResultFromDB}] no longer existing in Attribute [{oAttributeName}] - will be deleted!")
|
||||
'SetVariableValue(CURRENT_PROFILE_LOG_INDEX, oInfo2)
|
||||
Delete_Term_Object_From_Metadata(oAttributeName, oOldAttributeResult)
|
||||
Delete_Term_Object_From_Metadata(oAttributeName, oAttributeResultFromDB)
|
||||
End If
|
||||
Else
|
||||
'### there is only ONE new value ###
|
||||
If oDTMyNewValues.Rows(0).Item(1) <> oOldAttributeResult Then
|
||||
Dim oInfo = $"Value [{oOldAttributeResult}] of Attribute [{oAttributeName}] obviously was updated during runtime - will be deleted!"
|
||||
If oDTMyNewValues.Rows(0).Item(1) <> oAttributeResultFromDB Then
|
||||
Dim oInfo = $"Value [{oAttributeResultFromDB}] of Attribute [{oAttributeName}] obviously was updated during runtime - will be deleted!"
|
||||
LOGGER.Debug(oInfo)
|
||||
SetVariableValue(CURRENT_PROFILE_LOG_INDEX, oInfo)
|
||||
Delete_Term_Object_From_Metadata(oAttributeName, oOldAttributeResult)
|
||||
Delete_Term_Object_From_Metadata(oAttributeName, oAttributeResultFromDB)
|
||||
Else
|
||||
LOGGER.Debug($"Attributvalue of [{oAttributeName}] did not change!")
|
||||
End If
|
||||
@@ -231,22 +320,25 @@
|
||||
End If
|
||||
|
||||
For Each oNewValueRow As DataRow In oDTMyNewValues.Rows
|
||||
Dim oSuccess As Boolean = False
|
||||
'Dim oSuccess As Boolean = False
|
||||
Dim oVALUE = oNewValueRow.Item(1).ToString
|
||||
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)
|
||||
oSuccess = DatabaseFallback.ExecuteNonQueryIDB(oPRSQL)
|
||||
If oSuccess = False Then
|
||||
Return False
|
||||
End If
|
||||
'oSuccess = DatabaseFallback.ExecuteNonQueryIDB(oPRSQL)
|
||||
If Not ExecuteOrQueue(oPRSQL) Then Return False
|
||||
'If oSuccess = False Then
|
||||
' Return False
|
||||
'End If
|
||||
Next
|
||||
Return True
|
||||
Else
|
||||
'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"
|
||||
LOGGER.Debug(oFNSQL)
|
||||
Return DatabaseFallback.ExecuteNonQueryIDB(oFNSQL)
|
||||
oNewValue = oNewValue.Replace("'", "''")
|
||||
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;"
|
||||
LOGGER.Debug(oPRIDB_NEW_OBJ_DATA)
|
||||
' Return DatabaseFallback.ExecuteNonQueryIDB(oPRIDB_NEW_OBJ_DATA)
|
||||
Return ExecuteOrQueue(oPRIDB_NEW_OBJ_DATA)
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
|
||||
@@ -483,6 +483,14 @@ Public Class ClassInit
|
||||
'BASEDATA_DT_TBDD_CONNECTION = DataASorDB.GetDatatable("DD_ECM", oSql, "TBDD_CONNECTION", "")
|
||||
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"
|
||||
oSql = "Select * FROM TBDD_3RD_PARTY_MODULES WHERE ACTIVE = 1"
|
||||
Dim oTBDD_3RD_PARTY_MODULES As DataTable
|
||||
@@ -520,7 +528,7 @@ Public Class ClassInit
|
||||
|
||||
|
||||
oStep = "TBPM_CHART"
|
||||
oSql = "SELECT * FROM TBPM_CHART"
|
||||
oSql = "SELECT * FROM TBPM_CHART WITH (NOLOCK)"
|
||||
|
||||
BASEDATA_DT_CHARTS = DatabaseFallback.GetDatatable("TBPM_CHART", New GetDatatableOptions(oSql, DatabaseType.ECM))
|
||||
oStep = "TBDD_GUI_LANGUAGE"
|
||||
|
||||
@@ -35,7 +35,7 @@ Public Class ClassPMWindream
|
||||
#End Region
|
||||
|
||||
#Region "+++++ Variablen +++++"
|
||||
Private oController As New WMOSearchController
|
||||
'Private oController As New WMOSearchController
|
||||
#End Region
|
||||
|
||||
#Region "+++++ Allgemeine Methoden und Funktionen +++++"
|
||||
|
||||
@@ -60,227 +60,242 @@ Public Class ClassParamRefresh
|
||||
' Use For Each loop over words and display them.
|
||||
Dim oMode As String
|
||||
For Each oMode In oSplitWorkMode
|
||||
LOGGER.Debug($"oWorkingMode Parameter: {oMode}")
|
||||
If oMode = "PM.FORCE_LAYOUT_OVERVIEW" Then
|
||||
FORCE_LAYOUT_OVERVIEW = True
|
||||
LOGGER.Debug($"FORCE_LAYOUT_OVERVIEW [{FORCE_LAYOUT_OVERVIEW}]")
|
||||
ElseIf oMode = "PM.NO_MASS_VALIDATOR" Then
|
||||
SHOW_MASS_VALIDATOR = False
|
||||
LOGGER.Info($"SHOW_MASS_VALIDATOR [{SHOW_MASS_VALIDATOR}]")
|
||||
ElseIf oMode = "PM.NO_CHARTS" Then
|
||||
SHOW_CHARTS = False
|
||||
LOGGER.Debug($"SHOW_CHARTS [{SHOW_CHARTS}]")
|
||||
ElseIf oMode = "PM.DEBUG_LOG" Then
|
||||
DEBUG = True
|
||||
LOGCONFIG.Debug = True
|
||||
ElseIf oMode = "PM.LOG_HOTSPOTS" Then
|
||||
LOG_HOTSPOTS = True
|
||||
ElseIf oMode.StartsWith("OPERATION_MODE_FS") Then
|
||||
OPERATION_MODE_FS = oMode.Replace("OPERATION_MODE_FS=", "")
|
||||
If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then
|
||||
IDB_USES_WMFILESTORE = True
|
||||
End If
|
||||
LOGGER.Info("OPERATION_MODE_FS: " + OPERATION_MODE_FS)
|
||||
ElseIf oMode = "PM.IDBWITHWMFS" Then
|
||||
IDB_USES_WMFILESTORE = True
|
||||
ElseIf oMode = "PM.NO_BASICCONF" Then
|
||||
BASIC_CONF_VISIBLE = False
|
||||
LOGGER.Info($"BASIC_CONF_VISIBLE [{BASIC_CONF_VISIBLE}]")
|
||||
ElseIf oMode = "PM.SYS_LOCKED_MAINTENANCE" Then
|
||||
SYS_LOCKED_MAINTENANCE = True
|
||||
ElseIf oMode.StartsWith("PM.IDB_CONID!") Then
|
||||
If CONNECTION_STRING_IDB <> "" And dbIDBInitialized = True Then
|
||||
IDB_ACTIVE = True
|
||||
Continue For
|
||||
Else
|
||||
Dim Database_IDB As MSSQLServer = Nothing
|
||||
Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "")
|
||||
ProcessWorkingModeParameter(oMode, pMode)
|
||||
'LOGGER.Debug($"oWorkingMode Parameter: {oMode}")
|
||||
'If oMode = "PM.FORCE_LAYOUT_OVERVIEW" Then
|
||||
' FORCE_LAYOUT_OVERVIEW = True
|
||||
' LOGGER.Debug($"FORCE_LAYOUT_OVERVIEW [{FORCE_LAYOUT_OVERVIEW}]")
|
||||
'ElseIf oMode = "PM.NO_MASS_VALIDATOR" Then
|
||||
' SHOW_MASS_VALIDATOR = False
|
||||
' LOGGER.Info($"SHOW_MASS_VALIDATOR [{SHOW_MASS_VALIDATOR}]")
|
||||
'ElseIf oMode = "PM.NO_CHARTS" Then
|
||||
' SHOW_CHARTS = False
|
||||
' LOGGER.Debug($"SHOW_CHARTS [{SHOW_CHARTS}]")
|
||||
'ElseIf oMode = "PM.DEBUG_LOG" Then
|
||||
' DEBUG = True
|
||||
' LOGCONFIG.Debug = True
|
||||
'ElseIf oMode = "PM.LOG_HOTSPOTS" Then
|
||||
' LOG_HOTSPOTS = True
|
||||
'ElseIf oMode.StartsWith("OPERATION_MODE_FS") Then
|
||||
' OPERATION_MODE_FS = oMode.Replace("OPERATION_MODE_FS=", "")
|
||||
' If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then
|
||||
' IDB_USES_WMFILESTORE = True
|
||||
' End If
|
||||
' LOGGER.Info("OPERATION_MODE_FS: " + OPERATION_MODE_FS)
|
||||
'ElseIf oMode = "PM.IDBWITHWMFS" Then
|
||||
' IDB_USES_WMFILESTORE = True
|
||||
'ElseIf oMode = "PM.NO_BASICCONF" Then
|
||||
' BASIC_CONF_VISIBLE = False
|
||||
' LOGGER.Info($"BASIC_CONF_VISIBLE [{BASIC_CONF_VISIBLE}]")
|
||||
'ElseIf oMode = "PM.SYS_LOCKED_MAINTENANCE" Then
|
||||
' SYS_LOCKED_MAINTENANCE = True
|
||||
'ElseIf oMode.StartsWith("PM.IDB_CONID!") Then
|
||||
' If CONNECTION_STRING_IDB <> "" And dbIDBInitialized = True Then
|
||||
' IDB_ACTIVE = True
|
||||
' Continue For
|
||||
' Else
|
||||
' Dim Database_IDB As MSSQLServer = Nothing
|
||||
' Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "")
|
||||
' Dim oConString = DatabaseFallback.GetConnectionString(CON_ID)
|
||||
' CONNECTION_STRING_IDB = oConString
|
||||
' Database_IDB = New MSSQLServer(LOGCONFIG, CONNECTION_STRING_IDB)
|
||||
' If Database_IDB.DBInitialized = True Then
|
||||
' IDB_ACTIVE = True
|
||||
' LOGGER.Info($"IDB is active - IDB-Connection [{CON_ID}]!")
|
||||
' DatabaseFallback.InitializeIDB(Database_IDB)
|
||||
' Else
|
||||
' IDB_ACTIVE = False
|
||||
' End If
|
||||
' End If
|
||||
'ElseIf oMode = "PM.EXCEL_OVERVIEW" Then
|
||||
' EXCEL_OVERVIEW = True
|
||||
' LOGGER.Info($"EXCEL_OVERVIEW [{EXCEL_OVERVIEW}]")
|
||||
'ElseIf oMode = "PM.MONITORING" Then
|
||||
' MONITORING_ACTIVE = True
|
||||
' LOGGER.Debug($"MONITORING_ACTIVE [{MONITORING_ACTIVE}]")
|
||||
'ElseIf oMode = "PM.GHOSTMODE" Then
|
||||
' GHOSTMODE_ACTIVE = True
|
||||
' LOGGER.Info($"GHOSTMODE_ACTIVE [{GHOSTMODE_ACTIVE}]")
|
||||
'ElseIf oMode.StartsWith("PM.COLORSCHEME") Then
|
||||
' Dim oColorScheme = oMode.Replace("PM.COLORSCHEME=", "")
|
||||
' RIBBON_COLOR_SCHEME = oColorScheme.ToUpper
|
||||
' LOGGER.Debug($"RIBBON_COLOR_SCHEME [{RIBBON_COLOR_SCHEME}]")
|
||||
'ElseIf oMode.StartsWith("PM.NO_DETAIL_PROFILES") Then
|
||||
' NO_DETAIL_PROFILES = True
|
||||
' LOGGER.Debug($"NO_DETAIL_PROFILES [{NO_DETAIL_PROFILES}]")
|
||||
'ElseIf oMode = "PM.NO_POPUP" Then
|
||||
' POPUP_REMINDER_ACTIVE = False
|
||||
' LOGGER.Debug($"POPUP_REMINDER_ACTIVE [{POPUP_REMINDER_ACTIVE}]")
|
||||
'ElseIf oMode.StartsWith("PM.POPUP_TIMELAPS_OVERRIDE") Then
|
||||
' Dim oTimeLapse = oMode.Replace("PM.POPUP_TIMELAPS_OVERRIDE=", "")
|
||||
' LOGGER.Info($"CENTRAL POPUP_TIMELAPS_OVERRIDE [{oTimeLapse}]")
|
||||
' Try
|
||||
' CONFIG.Config.ReminderTimer = oTimeLapse
|
||||
' Catch ex As Exception
|
||||
' End Try
|
||||
|
||||
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
|
||||
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
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.COL_LAST_ADDED") Then
|
||||
' Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_ADDED=", "")
|
||||
' Try
|
||||
' LAST_ADDED_COLUMN = oLEDITEDCOL
|
||||
' LOGGER.Debug($"LAST_ADDED_COLUMN: {oLEDITEDCOL}")
|
||||
' Catch ex As Exception
|
||||
' LAST_ADDED_COLUMN = ""
|
||||
|
||||
ElseIf oMode.StartsWith("PM.CONV_IDENTIFICATION") Then
|
||||
Dim oIdent = oMode.Replace("PM.CONV_IDENTIFICATION=", "")
|
||||
CONV_IDENTIFICATION = oIdent
|
||||
ElseIf oMode.StartsWith("PM.INACTIVITY_DURATION") Then
|
||||
Dim oInactivityDuration = oMode.Replace("PM.INACTIVITY_DURATION=", "")
|
||||
Try
|
||||
INACTIVITY_DURATION = CInt(oInactivityDuration)
|
||||
LOGGER.Debug($"InactivityDuration [{INACTIVITY_DURATION}]")
|
||||
Catch ex As Exception
|
||||
LOGGER.Warn($"INACTIVITY_DURATION = 0 - {ex.Message}")
|
||||
INACTIVITY_DURATION = 0
|
||||
End Try
|
||||
ElseIf oMode.StartsWith("PM.COL_LAST_EDITED") Then
|
||||
Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_EDITED=", "")
|
||||
Try
|
||||
LAST_EDITED_COLUMN = oLEDITEDCOL
|
||||
LOGGER.Debug($"LAST_EDITED_COLUMN: {oLEDITEDCOL}")
|
||||
Catch ex As Exception
|
||||
LAST_EDITED_COLUMN = ""
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.MON_COL_CHANGED_WHEN") Then
|
||||
' Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_CHANGED_WHEN=", "")
|
||||
' Try
|
||||
' MON_EDITED_COLUMN = oLEDITEDCOL
|
||||
' LOGGER.Debug($"MON_EDITED_COLUMN: {oLEDITEDCOL}")
|
||||
' Catch ex As Exception
|
||||
|
||||
End Try
|
||||
ElseIf oMode.StartsWith("PM.COL_LAST_ADDED") Then
|
||||
Dim oLEDITEDCOL = oMode.Replace("PM.COL_LAST_ADDED=", "")
|
||||
Try
|
||||
LAST_ADDED_COLUMN = oLEDITEDCOL
|
||||
LOGGER.Debug($"LAST_ADDED_COLUMN: {oLEDITEDCOL}")
|
||||
Catch ex As Exception
|
||||
LAST_ADDED_COLUMN = ""
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.MON_COL_ADDED_WHEN") Then
|
||||
' Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_ADDED_WHEN=", "")
|
||||
' Try
|
||||
' MON_ADDED_COLUMN = oLEDITEDCOL
|
||||
' LOGGER.Debug($"MON_COL_ADDED_WHEN: {oLEDITEDCOL}")
|
||||
' Catch ex As Exception
|
||||
|
||||
End Try
|
||||
ElseIf oMode.StartsWith("PM.MON_COL_CHANGED_WHEN") Then
|
||||
Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_CHANGED_WHEN=", "")
|
||||
Try
|
||||
MON_EDITED_COLUMN = oLEDITEDCOL
|
||||
LOGGER.Debug($"MON_EDITED_COLUMN: {oLEDITEDCOL}")
|
||||
Catch ex As Exception
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.USE_APPSERVER") Then
|
||||
' Dim oUSE_APPSERVER = oMode.Replace("PM.USE_APPSERVER=", "")
|
||||
' Try
|
||||
' USE_APPSERVER = CBool(oUSE_APPSERVER)
|
||||
' Catch ex As Exception
|
||||
' USE_APPSERVER = False
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.COPYWM2TEMP") Then
|
||||
' Dim oCOPYWM2TEMP = oMode.Replace("PM.COPYWM2TEMP=", "")
|
||||
' Try
|
||||
' COPY_WMFILE_2TEMP = CBool(oCOPYWM2TEMP)
|
||||
' Catch ex As Exception
|
||||
' COPY_WMFILE_2TEMP = False
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.MAP_SHARE_DRIVE") Then
|
||||
' Dim oMAP_SHARE_DRIVE = oMode.Replace("PM.MAP_SHARE_DRIVE=", "")
|
||||
' Try
|
||||
' MAP_SHARE_DRIVE = oMAP_SHARE_DRIVE
|
||||
' Catch ex As Exception
|
||||
' oMAP_SHARE_DRIVE = String.Empty
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.MAP_BLACKLIST") Then
|
||||
' Dim oMAP_BLACKLIST = oMode.Replace("PM.MAP_BLACKLIST=", "")
|
||||
' Try
|
||||
' MAP_BLACKLIST = oMAP_BLACKLIST
|
||||
' Catch ex As Exception
|
||||
' MAP_BLACKLIST = String.Empty
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.SEARCH1") Then
|
||||
' Dim oSearch1 = oMode.Replace("PM.SEARCH1=", "")
|
||||
' Try
|
||||
' SEARCH1 = oSearch1
|
||||
' Catch ex As Exception
|
||||
' SEARCH1 = ""
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.SEARCH2") Then
|
||||
' Dim oSearch2 = oMode.Replace("PM.SEARCH2=", "")
|
||||
' Try
|
||||
' SEARCH2 = oSearch2
|
||||
' Catch ex As Exception
|
||||
' SEARCH2 = ""
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.TRAFFICLIGHT_ICON") Then
|
||||
' Dim oParam = oMode.Replace("PM.TRAFFICLIGHT_ICON=", "")
|
||||
' Try
|
||||
' TL_ICON = CBool(oParam)
|
||||
' Catch ex As Exception
|
||||
' TL_ICON = False
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.TITLE_NOTIFICATIONS") Then
|
||||
' Dim oParam = oMode.Replace("PM.TITLE_NOTIFICATIONS=", "")
|
||||
' Try
|
||||
' TITLE_NOTIFICATIONS = oParam
|
||||
' Catch ex As Exception
|
||||
' TITLE_NOTIFICATIONS = ""
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("TF.InheritanceMsgAmount") And pMode = "Load" Then
|
||||
' Dim oParam = oMode.Replace("TF.InheritanceMsgAmount=", "")
|
||||
' Try
|
||||
' InheritanceMsgAmount = oParam
|
||||
' Catch ex As Exception
|
||||
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("TF.InheritanceCalcReset") And pMode = "Load" Then
|
||||
' Dim oParam = oMode.Replace("TF.InheritanceCalcReset=", "")
|
||||
' Try
|
||||
' If CBool(oParam) = True Then
|
||||
' LOGGER.Info("Inheritance_Counts werden auf 0 zurückgesetzt bzw gelöscht")
|
||||
' Dim oDELETESQL = "DELETE FROM TBDD_USER_KEY_VALUE_PAIR
|
||||
' WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "' AND KEY_NAME LIKE 'INHERITANCE_CONFIRM_%'"
|
||||
' DatabaseECM.ExecuteNonQuery(oDELETESQL)
|
||||
|
||||
End Try
|
||||
ElseIf oMode.StartsWith("PM.MON_COL_ADDED_WHEN") Then
|
||||
Dim oLEDITEDCOL = oMode.Replace("PM.MON_COL_ADDED_WHEN=", "")
|
||||
Try
|
||||
MON_ADDED_COLUMN = oLEDITEDCOL
|
||||
LOGGER.Debug($"MON_COL_ADDED_WHEN: {oLEDITEDCOL}")
|
||||
Catch ex As Exception
|
||||
' UserInheritance_ConfirmationByColumn = Nothing
|
||||
' CONFIG.Save()
|
||||
' End If
|
||||
' Catch ex As Exception
|
||||
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.START_CW") Then
|
||||
' Dim oAfterReplace = oMode.Replace("PM.START_CW=", "")
|
||||
' Try
|
||||
' START_CW = True
|
||||
' LOGGER.Debug("PM.START_CW = True")
|
||||
' Dim oSplit As String() = oAfterReplace.Split("~")
|
||||
' START_CW_CAPTION = oSplit(0)
|
||||
' Try
|
||||
' START_CW_LOC_VARIANT = oSplit(1)
|
||||
' Catch ex As Exception
|
||||
' START_CW_LOC_VARIANT = "-1"
|
||||
' LOGGER.Warn($"Could not read START_CW_LOCVARIANT : {ex.Message}")
|
||||
' End Try
|
||||
|
||||
End Try
|
||||
ElseIf oMode.StartsWith("PM.USE_APPSERVER") Then
|
||||
Dim oUSE_APPSERVER = oMode.Replace("PM.USE_APPSERVER=", "")
|
||||
Try
|
||||
USE_APPSERVER = CBool(oUSE_APPSERVER)
|
||||
Catch ex As Exception
|
||||
USE_APPSERVER = False
|
||||
|
||||
End Try
|
||||
ElseIf oMode.StartsWith("PM.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)
|
||||
|
||||
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
|
||||
' Catch ex As Exception
|
||||
' LOGGER.Warn($"Could not read START_CW Param: {ex.Message}")
|
||||
' START_CW = False
|
||||
' End Try
|
||||
'ElseIf oMode.StartsWith("PM.RibbonPageCustTitle") Then
|
||||
' Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustTitle=", "")
|
||||
' RibbonPageCustTitle = oAfterReplace
|
||||
'ElseIf oMode.StartsWith("PM.RibbonPageCustItm1") Then
|
||||
' Dim oAfterReplace = oMode.Replace("PM.RibbonPageCustItm1=", "")
|
||||
' RibbonPageCustItm1 = oAfterReplace
|
||||
'ElseIf oMode.StartsWith("PM.ButtonExport2FolderCaption") Then
|
||||
' Dim oAfterReplace = oMode.Replace("PM.ButtonExport2FolderCaption=", "")
|
||||
' ButtonExport2Folder_Caption = oAfterReplace
|
||||
'ElseIf oMode.StartsWith("PM.ButtonExport2Folder_Mode") Then
|
||||
' Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_Mode=", "")
|
||||
' ButtonExport2Folder_Mode = oAfterReplace
|
||||
'ElseIf oMode.StartsWith("PM.ButtonExport2Folder_RootFolder") Then
|
||||
' Dim oAfterReplace = oMode.Replace("PM.ButtonExport2Folder_RootFolder=", "")
|
||||
' ButtonExport2Folder_RootFolder = oAfterReplace
|
||||
'ElseIf oMode = "MAINFORM_ALLOW_LOGFILES" Then
|
||||
' MAINFORM_CREATE_LOG_FILES = True
|
||||
'Else
|
||||
' LOGGER.Info($"Wrong oMode: {oMode}")
|
||||
'End If
|
||||
Next
|
||||
'If IDB_ACTIVE Then
|
||||
' If CONNECTION_STRING_APP_SERVER <> String.Empty Then
|
||||
@@ -298,4 +313,267 @@ Public Class ClassParamRefresh
|
||||
End If
|
||||
oStopwatch.Done()
|
||||
End Sub
|
||||
Private Shared Sub ProcessWorkingModeParameter(oMode As String, pMode As String)
|
||||
LOGGER.Debug($"Processing Working Mode Parameter: {oMode}")
|
||||
|
||||
Select Case True
|
||||
Case oMode = "PM.FORCE_LAYOUT_OVERVIEW"
|
||||
SetBooleanParameter(FORCE_LAYOUT_OVERVIEW, True, "FORCE_LAYOUT_OVERVIEW")
|
||||
|
||||
Case oMode = "PM.NO_MASS_VALIDATOR"
|
||||
SetBooleanParameter(SHOW_MASS_VALIDATOR, False, "SHOW_MASS_VALIDATOR", LogLevel.Info)
|
||||
|
||||
Case oMode = "PM.NO_CHARTS"
|
||||
SetBooleanParameter(SHOW_CHARTS, False, "SHOW_CHARTS")
|
||||
|
||||
Case oMode = "PM.DEBUG_LOG"
|
||||
DEBUG = True
|
||||
LOGCONFIG.Debug = True
|
||||
LOGGER.Debug($"DEBUG_LOG = True")
|
||||
|
||||
Case oMode = "PM.LOG_HOTSPOTS"
|
||||
SetBooleanParameter(LOG_HOTSPOTS, True, "LOG_HOTSPOTS")
|
||||
|
||||
Case oMode.StartsWith("OPERATION_MODE_FS")
|
||||
OPERATION_MODE_FS = ExtractParameterValue(oMode, "OPERATION_MODE_FS")
|
||||
If OPERATION_MODE_FS = ClassConstants.OpModeFS_IDBWM Then
|
||||
IDB_USES_WMFILESTORE = True
|
||||
End If
|
||||
LOGGER.Info($"OPERATION_MODE_FS = {OPERATION_MODE_FS}")
|
||||
|
||||
Case oMode = "PM.IDBWITHWMFS"
|
||||
SetBooleanParameter(IDB_USES_WMFILESTORE, True, "IDB_USES_WMFILESTORE", LogLevel.Info)
|
||||
|
||||
Case oMode = "PM.NO_BASICCONF"
|
||||
SetBooleanParameter(BASIC_CONF_VISIBLE, False, "BASIC_CONF_VISIBLE", LogLevel.Info)
|
||||
|
||||
Case oMode = "PM.SYS_LOCKED_MAINTENANCE"
|
||||
SetBooleanParameter(SYS_LOCKED_MAINTENANCE, True, "SYS_LOCKED_MAINTENANCE")
|
||||
|
||||
Case oMode.StartsWith("PM.IDB_CONID!")
|
||||
ProcessIDBConnection(oMode)
|
||||
|
||||
Case oMode = "PM.EXCEL_OVERVIEW"
|
||||
SetBooleanParameter(EXCEL_OVERVIEW, True, "EXCEL_OVERVIEW", LogLevel.Info)
|
||||
|
||||
Case oMode = "PM.MONITORING"
|
||||
SetBooleanParameter(MONITORING_ACTIVE, True, "MONITORING_ACTIVE")
|
||||
|
||||
Case oMode = "PM.GHOSTMODE"
|
||||
SetBooleanParameter(GHOSTMODE_ACTIVE, True, "GHOSTMODE_ACTIVE", LogLevel.Info)
|
||||
|
||||
Case oMode.StartsWith("PM.COLORSCHEME")
|
||||
RIBBON_COLOR_SCHEME = ExtractParameterValue(oMode, "PM.COLORSCHEME").ToUpper
|
||||
LOGGER.Debug($"RIBBON_COLOR_SCHEME = {RIBBON_COLOR_SCHEME}")
|
||||
|
||||
Case oMode.StartsWith("PM.NO_DETAIL_PROFILES")
|
||||
SetBooleanParameter(NO_DETAIL_PROFILES, True, "NO_DETAIL_PROFILES")
|
||||
|
||||
Case oMode = "PM.NO_POPUP"
|
||||
SetBooleanParameter(POPUP_REMINDER_ACTIVE, False, "POPUP_REMINDER_ACTIVE")
|
||||
|
||||
Case oMode.StartsWith("PM.POPUP_TIMELAPS_OVERRIDE")
|
||||
ProcessPopupTimeLapse(oMode)
|
||||
|
||||
Case oMode.StartsWith("PM.CONV_IDENTIFICATION")
|
||||
CONV_IDENTIFICATION = ExtractParameterValue(oMode, "PM.CONV_IDENTIFICATION")
|
||||
LOGGER.Debug($"CONV_IDENTIFICATION = {CONV_IDENTIFICATION}")
|
||||
|
||||
Case oMode.StartsWith("PM.INACTIVITY_DURATION")
|
||||
ProcessIntegerParameter(oMode, "PM.INACTIVITY_DURATION", INACTIVITY_DURATION, "InactivityDuration")
|
||||
|
||||
Case oMode.StartsWith("PM.COL_LAST_EDITED")
|
||||
LAST_EDITED_COLUMN = ExtractParameterValue(oMode, "PM.COL_LAST_EDITED")
|
||||
LOGGER.Debug($"LAST_EDITED_COLUMN = {LAST_EDITED_COLUMN}")
|
||||
|
||||
Case oMode.StartsWith("PM.COL_LAST_ADDED")
|
||||
LAST_ADDED_COLUMN = ExtractParameterValue(oMode, "PM.COL_LAST_ADDED")
|
||||
LOGGER.Debug($"LAST_ADDED_COLUMN = {LAST_ADDED_COLUMN}")
|
||||
|
||||
Case oMode.StartsWith("PM.MON_COL_CHANGED_WHEN")
|
||||
MON_EDITED_COLUMN = ExtractParameterValue(oMode, "PM.MON_COL_CHANGED_WHEN")
|
||||
LOGGER.Debug($"MON_EDITED_COLUMN = {MON_EDITED_COLUMN}")
|
||||
|
||||
Case oMode.StartsWith("PM.MON_COL_ADDED_WHEN")
|
||||
MON_ADDED_COLUMN = ExtractParameterValue(oMode, "PM.MON_COL_ADDED_WHEN")
|
||||
LOGGER.Debug($"MON_ADDED_COLUMN = {MON_ADDED_COLUMN}")
|
||||
|
||||
Case oMode.StartsWith("PM.USE_APPSERVER")
|
||||
ProcessBooleanParameter(oMode, "PM.USE_APPSERVER", USE_APPSERVER, "USE_APPSERVER")
|
||||
|
||||
Case oMode.StartsWith("PM.COPYWM2TEMP")
|
||||
ProcessBooleanParameter(oMode, "PM.COPYWM2TEMP", COPY_WMFILE_2TEMP, "COPY_WMFILE_2TEMP")
|
||||
|
||||
Case oMode.StartsWith("PM.MAP_SHARE_DRIVE")
|
||||
MAP_SHARE_DRIVE = ExtractParameterValue(oMode, "PM.MAP_SHARE_DRIVE")
|
||||
LOGGER.Debug($"MAP_SHARE_DRIVE = {MAP_SHARE_DRIVE}")
|
||||
|
||||
Case oMode.StartsWith("PM.MAP_BLACKLIST")
|
||||
MAP_BLACKLIST = ExtractParameterValue(oMode, "PM.MAP_BLACKLIST")
|
||||
LOGGER.Debug($"MAP_BLACKLIST = {MAP_BLACKLIST}")
|
||||
|
||||
Case oMode.StartsWith("PM.SEARCH1")
|
||||
SEARCH1 = ExtractParameterValue(oMode, "PM.SEARCH1")
|
||||
LOGGER.Debug($"SEARCH1 = {SEARCH1}")
|
||||
|
||||
Case oMode.StartsWith("PM.SEARCH2")
|
||||
SEARCH2 = ExtractParameterValue(oMode, "PM.SEARCH2")
|
||||
LOGGER.Debug($"SEARCH2 = {SEARCH2}")
|
||||
|
||||
Case oMode.StartsWith("PM.TRAFFICLIGHT_ICON")
|
||||
ProcessBooleanParameter(oMode, "PM.TRAFFICLIGHT_ICON", TL_ICON, "TL_ICON")
|
||||
|
||||
Case oMode.StartsWith("PM.TITLE_NOTIFICATIONS")
|
||||
TITLE_NOTIFICATIONS = ExtractParameterValue(oMode, "PM.TITLE_NOTIFICATIONS")
|
||||
LOGGER.Debug($"TITLE_NOTIFICATIONS = {TITLE_NOTIFICATIONS}")
|
||||
|
||||
Case oMode.StartsWith("TF.InheritanceMsgAmount") AndAlso pMode = "Load"
|
||||
InheritanceMsgAmount = ExtractParameterValue(oMode, "TF.InheritanceMsgAmount")
|
||||
LOGGER.Debug($"InheritanceMsgAmount = {InheritanceMsgAmount}")
|
||||
|
||||
Case oMode.StartsWith("TF.InheritanceCalcReset") AndAlso pMode = "Load"
|
||||
ProcessInheritanceReset(oMode)
|
||||
|
||||
Case oMode.StartsWith("PM.START_CW")
|
||||
ProcessStartCW(oMode)
|
||||
|
||||
Case oMode.StartsWith("PM.RibbonPageCustTitle")
|
||||
RibbonPageCustTitle = ExtractParameterValue(oMode, "PM.RibbonPageCustTitle")
|
||||
LOGGER.Debug($"RibbonPageCustTitle = {RibbonPageCustTitle}")
|
||||
|
||||
Case oMode.StartsWith("PM.RibbonPageCustItm1")
|
||||
RibbonPageCustItm1 = ExtractParameterValue(oMode, "PM.RibbonPageCustItm1")
|
||||
LOGGER.Debug($"RibbonPageCustItm1 = {RibbonPageCustItm1}")
|
||||
|
||||
Case oMode.StartsWith("PM.ButtonExport2FolderCaption")
|
||||
ButtonExport2Folder_Caption = ExtractParameterValue(oMode, "PM.ButtonExport2FolderCaption")
|
||||
LOGGER.Debug($"ButtonExport2FolderCaption = {ButtonExport2Folder_Caption}")
|
||||
|
||||
Case oMode.StartsWith("PM.ButtonExport2Folder_Mode")
|
||||
ButtonExport2Folder_Mode = ExtractParameterValue(oMode, "PM.ButtonExport2Folder_Mode")
|
||||
LOGGER.Debug($"ButtonExport2Folder_Mode = {ButtonExport2Folder_Mode}")
|
||||
|
||||
Case oMode.StartsWith("PM.ButtonExport2Folder_RootFolder")
|
||||
ButtonExport2Folder_RootFolder = ExtractParameterValue(oMode, "PM.ButtonExport2Folder_RootFolder")
|
||||
LOGGER.Debug($"ButtonExport2Folder_RootFolder = {ButtonExport2Folder_RootFolder}")
|
||||
|
||||
Case oMode = "MAINFORM_ALLOW_LOGFILES"
|
||||
SetBooleanParameter(MAINFORM_CREATE_LOG_FILES, True, "MAINFORM_CREATE_LOG_FILES")
|
||||
|
||||
Case Else
|
||||
LOGGER.Info($"Unknown Working Mode Parameter: {oMode}")
|
||||
End Select
|
||||
End Sub
|
||||
Private Shared Function ExtractParameterValue(parameterString As String, prefix As String) As String
|
||||
Return parameterString.Replace($"{prefix}=", "")
|
||||
End Function
|
||||
|
||||
Private Shared Sub SetBooleanParameter(ByRef target As Boolean, value As Boolean, paramName As String, Optional logLevel As LogLevel = LogLevel.Debug)
|
||||
target = value
|
||||
LogParameterValue(paramName, value.ToString(), logLevel)
|
||||
End Sub
|
||||
|
||||
Private Shared Sub ProcessBooleanParameter(oMode As String, prefix As String, ByRef target As Boolean, paramName As String)
|
||||
Dim value = ExtractParameterValue(oMode, prefix)
|
||||
Try
|
||||
target = CBool(value)
|
||||
LOGGER.Debug($"{paramName} = {target}")
|
||||
Catch ex As Exception
|
||||
target = False
|
||||
LOGGER.Warn($"Failed to parse {paramName}: {ex.Message}")
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Shared Sub ProcessIntegerParameter(oMode As String, prefix As String, ByRef target As Integer, paramName As String)
|
||||
Dim value = ExtractParameterValue(oMode, prefix)
|
||||
Try
|
||||
target = CInt(value)
|
||||
LOGGER.Debug($"{paramName} = {target}")
|
||||
Catch ex As Exception
|
||||
LOGGER.Warn($"Failed to parse {paramName}: {ex.Message}. Setting to 0")
|
||||
target = 0
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Shared Sub ProcessIDBConnection(oMode As String)
|
||||
Dim Database_IDB As MSSQLServer = Nothing
|
||||
Dim CON_ID = oMode.Replace("PM.IDB_CONID!", "")
|
||||
Dim oConString = DatabaseFallback.GetConnectionString(CON_ID)
|
||||
CONNECTION_STRING_IDB = oConString
|
||||
Database_IDB = New MSSQLServer(LOGCONFIG, CONNECTION_STRING_IDB)
|
||||
|
||||
If Database_IDB.DBInitialized = True Then
|
||||
IDB_ACTIVE = True
|
||||
LOGGER.Info($"IDB is active - IDB-Connection [{CON_ID}]")
|
||||
DatabaseFallback.InitializeIDB(Database_IDB)
|
||||
Else
|
||||
IDB_ACTIVE = False
|
||||
LOGGER.Warn($"Failed to initialize IDB with Connection [{CON_ID}]")
|
||||
End If
|
||||
If CONNECTION_STRING_IDB <> "" AndAlso Database_IDB.DBInitialized = True Then
|
||||
IDB_ACTIVE = True
|
||||
LOGGER.Debug("IDB already initialized and active")
|
||||
Return
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Shared Sub ProcessPopupTimeLapse(oMode As String)
|
||||
Dim oTimeLapse = ExtractParameterValue(oMode, "PM.POPUP_TIMELAPS_OVERRIDE")
|
||||
LOGGER.Info($"POPUP_TIMELAPS_OVERRIDE = {oTimeLapse}")
|
||||
Try
|
||||
CONFIG.Config.ReminderTimer = oTimeLapse
|
||||
Catch ex As Exception
|
||||
LOGGER.Warn($"Failed to set ReminderTimer: {ex.Message}")
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Shared Sub ProcessInheritanceReset(oMode As String)
|
||||
Dim oParam = ExtractParameterValue(oMode, "TF.InheritanceCalcReset")
|
||||
Try
|
||||
If CBool(oParam) = True Then
|
||||
LOGGER.Info("Inheritance_Counts werden auf 0 zurückgesetzt bzw gelöscht")
|
||||
Dim oDELETESQL = "DELETE FROM TBDD_USER_KEY_VALUE_PAIR
|
||||
WHERE FK_USER_ID = " & USER_ID & " And [FK_MODULE_ID] = '" & USER_MODULE_ID & "' AND KEY_NAME LIKE 'INHERITANCE_CONFIRM_%'"
|
||||
DatabaseECM.ExecuteNonQuery(oDELETESQL)
|
||||
UserInheritance_ConfirmationByColumn = Nothing
|
||||
CONFIG.Save()
|
||||
End If
|
||||
Catch ex As Exception
|
||||
LOGGER.Warn($"Failed to process InheritanceCalcReset: {ex.Message}")
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Shared Sub ProcessStartCW(oMode As String)
|
||||
Dim oAfterReplace = ExtractParameterValue(oMode, "PM.START_CW")
|
||||
Try
|
||||
START_CW = True
|
||||
LOGGER.Debug("PM.START_CW = True")
|
||||
Dim oSplit As String() = oAfterReplace.Split("~")
|
||||
START_CW_CAPTION = oSplit(0)
|
||||
Try
|
||||
START_CW_LOC_VARIANT = oSplit(1)
|
||||
LOGGER.Debug($"START_CW_LOC_VARIANT = {START_CW_LOC_VARIANT}")
|
||||
Catch ex As Exception
|
||||
START_CW_LOC_VARIANT = "-1"
|
||||
LOGGER.Warn($"Could not read START_CW_LOC_VARIANT: {ex.Message}")
|
||||
End Try
|
||||
Catch ex As Exception
|
||||
LOGGER.Warn($"Could not read START_CW Param: {ex.Message}")
|
||||
START_CW = False
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Shared Sub LogParameterValue(paramName As String, value As String, logLevel As LogLevel)
|
||||
Select Case logLevel
|
||||
Case LogLevel.Info
|
||||
LOGGER.Info($"{paramName} = {value}")
|
||||
Case Else
|
||||
LOGGER.Debug($"{paramName} = {value}")
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Private Enum LogLevel
|
||||
Debug
|
||||
Info
|
||||
End Enum
|
||||
End Class
|
||||
|
||||
@@ -200,7 +200,10 @@ Public Class RefreshHelper
|
||||
Private Sub LoadVisibleIndex()
|
||||
Try
|
||||
_View.MakeRowVisible(_View.FocusedRowHandle, True)
|
||||
_View.TopRowIndex = _View.GetVisibleIndex(_View.FocusedRowHandle) - _VisibleRowIndex
|
||||
If _View.FocusedRowHandle <> -1 Then
|
||||
_View.TopRowIndex = _View.GetVisibleIndex(_View.FocusedRowHandle) - _VisibleRowIndex
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
|
||||
@@ -124,7 +124,7 @@ Public Class ClassWindream_allgemein
|
||||
Public Function Start_WMCC_andCo()
|
||||
Try
|
||||
' 04.10.18: Überprüft, ob der Benutzer Mitglied der SERVER_USER Gruppe ist
|
||||
Dim sql = "SELECT T.GUID FROM TBDD_GROUPS_USER T INNER JOIN TBDD_GROUPS T1 on T1.GUID = T.GROUP_ID WHERE T1.NAME = 'SERVER_USER' AND T.USER_ID = " & USER_ID
|
||||
Dim sql = "SELECT T.GUID FROM TBDD_GROUPS_USER T WITH (NOLOCK) INNER JOIN TBDD_GROUPS T1 WITH (NOLOCK) on T1.GUID = T.GROUP_ID WHERE T1.NAME = 'SERVER_USER' AND T.USER_ID = " & USER_ID
|
||||
Dim userExistsInServerUserGroup = DatabaseFallback.GetScalarValueECM(sql) ', CONNECTION_STRING_ECM, "StartWMCC-userExistsInServerUserGroup")
|
||||
|
||||
If WMSESSION_STARTSTOP_STARTUP = True Then
|
||||
@@ -322,30 +322,30 @@ LOGGER.Error(ex)
|
||||
''' <param name="objekttypName">Name des Objekttyps</param>
|
||||
''' <returns>Objekttyp als WMObject</returns>
|
||||
''' <remarks></remarks>
|
||||
Public Function GetObjecttypeByName(ByVal objekttypName As String) As WMObject
|
||||
Try
|
||||
If IsNothing(Me.oSession) Then
|
||||
LOGGER.Warn("⚠️ GetObjecttypeByName: WMSession is nothing")
|
||||
Return Nothing
|
||||
End If
|
||||
' alle Objekttypen auslesen
|
||||
Dim oObjectTypes As WMObjects = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
|
||||
'Public Function GetObjecttypeByName(ByVal objekttypName As String) As WMObject
|
||||
' Try
|
||||
' If IsNothing(Me.oSession) Then
|
||||
' LOGGER.Warn("⚠️ GetObjecttypeByName: WMSession is nothing")
|
||||
' Return Nothing
|
||||
' End If
|
||||
' ' alle Objekttypen auslesen
|
||||
' Dim oObjectTypes As WMObjects = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
|
||||
|
||||
' alle Objekttypen durchlaufen und nach dem mit dem angegebenen Namen suchen
|
||||
For Each oObjectType As WMObject In oObjectTypes
|
||||
If oObjectType.aName = objekttypName Then
|
||||
Return oObjectType
|
||||
End If
|
||||
Next
|
||||
' ' alle Objekttypen durchlaufen und nach dem mit dem angegebenen Namen suchen
|
||||
' For Each oObjectType As WMObject In oObjectTypes
|
||||
' If oObjectType.aName = objekttypName Then
|
||||
' Return oObjectType
|
||||
' End If
|
||||
' Next
|
||||
|
||||
Return Nothing
|
||||
' Return Nothing
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
MsgBox("Es konnte ein Objekttyp nicht erstellt werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Exclamation, "Objekttyp konnte nicht erstellt werden")
|
||||
Return Nothing
|
||||
End Try
|
||||
End Function
|
||||
' Catch ex As Exception
|
||||
' LOGGER.Error(ex)
|
||||
' MsgBox("Es konnte ein Objekttyp nicht erstellt werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Exclamation, "Objekttyp konnte nicht erstellt werden")
|
||||
' Return Nothing
|
||||
' End Try
|
||||
'End Function
|
||||
|
||||
''' <summary>
|
||||
''' Überprüft ob der angegebene Index im Objekttyp existiert
|
||||
|
||||
@@ -25,13 +25,93 @@ Namespace ControlCreator
|
||||
|
||||
Private newRowModified As Boolean
|
||||
Private isApplyingInheritedValue As Boolean
|
||||
Private _FormulaColumnNames As New HashSet(Of String)(StringComparer.OrdinalIgnoreCase)
|
||||
Private _FormulaSqlColumns As New Dictionary(Of String, FormulaSqlDefinition)(StringComparer.OrdinalIgnoreCase)
|
||||
|
||||
Public Sub New(pLogConfig As LogConfig, pGridTables As Dictionary(Of Integer, Dictionary(Of String, RepositoryItem)))
|
||||
Private _isRefreshingFormula As Boolean = False ' *** NEU: Flag für Formel-Refresh ***
|
||||
Private _currencySymbol As String = "€"
|
||||
''' <summary>
|
||||
''' SHARED Dictionary: Speichert das aktuelle Währungssymbol PRO GridView (via Name).
|
||||
''' Dies ist notwendig, weil UpdateCurrencyFormat auf einer NEUEN GridControl-Instanz
|
||||
''' aufgerufen wird, der CustomColumnDisplayText-Handler aber auf der URSPRÜNGLICHEN
|
||||
''' Instanz registriert wurde. Durch das Shared Dictionary können alle Instanzen
|
||||
''' auf das aktuelle Symbol zugreifen.
|
||||
''' </summary>
|
||||
Private Shared _CurrencySymbolByGridName As New Dictionary(Of String, String)(StringComparer.OrdinalIgnoreCase)
|
||||
|
||||
''' <summary>
|
||||
''' Definiert eine SQL-basierte Formelspalte mit allen nötigen Metadaten.
|
||||
''' </summary>
|
||||
Private Class FormulaSqlDefinition
|
||||
Public Property SqlTemplate As String
|
||||
Public Property ReferencedColumns As List(Of String)
|
||||
End Class
|
||||
''' <summary>
|
||||
''' Extrahiert alle {#TBCOL#ColumnName}-Platzhalter aus einem SQL-Template.
|
||||
''' </summary>
|
||||
Private Function GetReferencedSqlColumnNames(sqlTemplate As String) As List(Of String)
|
||||
Dim columnNames As New List(Of String)
|
||||
Dim pattern As String = "\{#TBCOL#([^}]+)\}"
|
||||
Dim matches = Regex.Matches(sqlTemplate, pattern)
|
||||
|
||||
For Each match As Match In matches
|
||||
Dim colName = match.Groups(1).Value
|
||||
If Not columnNames.Contains(colName, StringComparer.OrdinalIgnoreCase) Then
|
||||
columnNames.Add(colName)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return columnNames
|
||||
End Function
|
||||
''' <summary>
|
||||
''' Ersetzt alle {#TBCOL#ColumnName}-Platzhalter durch die aktuellen Zeilenwerte.
|
||||
''' Gibt den ausführbaren SQL-String zurück.
|
||||
''' </summary>
|
||||
Private Function ResolveSqlTemplate(sqlTemplate As String, pView As GridView, rowHandle As Integer) As String
|
||||
Dim resolvedSql As String = sqlTemplate
|
||||
Dim pattern As String = "\{#TBCOL#([^}]+)\}"
|
||||
Dim matches = Regex.Matches(sqlTemplate, pattern)
|
||||
|
||||
For Each match As Match In matches
|
||||
Dim colName = match.Groups(1).Value
|
||||
Dim cellValue = pView.GetRowCellValue(rowHandle, colName)
|
||||
Dim safeValue As String
|
||||
|
||||
If cellValue Is Nothing OrElse IsDBNull(cellValue) Then
|
||||
safeValue = "NULL"
|
||||
ElseIf TypeOf cellValue Is String Then
|
||||
' SQL-Injection-Schutz: Einfache Anführungszeichen escapen
|
||||
safeValue = "'" & cellValue.ToString().Replace("'", "''") & "'"
|
||||
ElseIf TypeOf cellValue Is Boolean Then
|
||||
safeValue = If(CBool(cellValue), "1", "0")
|
||||
Else
|
||||
' Numerische Werte: Invariant-Format (Punkt als Dezimaltrenner)
|
||||
safeValue = Convert.ToString(cellValue, CultureInfo.InvariantCulture)
|
||||
End If
|
||||
|
||||
resolvedSql = resolvedSql.Replace(match.Value, safeValue)
|
||||
_Logger.Debug("Resolved SQL placeholder [{0}] with value [{1}] → {2}", match.Value, cellValue, safeValue)
|
||||
Next
|
||||
_Logger.Debug("Final resolved SQL: {0}", resolvedSql)
|
||||
Return resolvedSql
|
||||
End Function
|
||||
Public Sub New(pLogConfig As LogConfig, pGridTables As Dictionary(Of Integer, Dictionary(Of String, RepositoryItem)), pCurrencySymbol As String)
|
||||
_LogConfig = pLogConfig
|
||||
_Logger = pLogConfig.GetLogger()
|
||||
_GridTables = pGridTables
|
||||
_currencySymbol = pCurrencySymbol
|
||||
End Sub
|
||||
''' <summary>
|
||||
''' Setzt den Shared Currency-Cache zurück. Muss beim Laden eines neuen Dokuments
|
||||
''' aufgerufen werden, bevor UpdateCurrencyFormat die neuen Werte schreibt.
|
||||
''' Verhindert, dass ein veraltetes Währungssymbol aus einem vorherigen Dokument
|
||||
''' durch den CustomColumnDisplayText-Handler verwendet wird.
|
||||
''' </summary>
|
||||
Public Shared Sub ResetCurrencySymbolCache()
|
||||
SyncLock _CurrencySymbolByGridName
|
||||
_CurrencySymbolByGridName.Clear()
|
||||
End SyncLock
|
||||
End Sub
|
||||
|
||||
Public Function CreateGridColumns(pColumnTable As DataTable) As DataTable
|
||||
Dim oDataTable As New DataTable
|
||||
Dim columnsWithExpressions As New List(Of Tuple(Of DataColumn, String))
|
||||
@@ -60,9 +140,19 @@ Namespace ControlCreator
|
||||
End Select
|
||||
|
||||
Dim oFormulaExpression = ObjectEx.NotNull(oRow.Item("FORMULA_EXPRESSION"), String.Empty)
|
||||
Dim oFormulaSql = ObjectEx.NotNull(oRow.Item("FORMULA_SQL"), String.Empty)
|
||||
|
||||
' *** VALIDIERUNG: Beides gleichzeitig ist nicht erlaubt ***
|
||||
If oFormulaExpression <> String.Empty AndAlso oFormulaSql <> String.Empty Then
|
||||
_Logger.Warn("⚠️ [CreateGridColumns] Column [{0}] has BOTH FORMULA_EXPRESSION and FORMULA_SQL – FORMULA_SQL will be ignored.", oColumn.ColumnName)
|
||||
' FORMULA_EXPRESSION hat Vorrang → nur Expression wird als DataTable.Expression gesetzt
|
||||
End If
|
||||
|
||||
If oFormulaExpression <> String.Empty Then
|
||||
' Expression merken, aber erst später setzen
|
||||
' FORMULA_EXPRESSION: Expression merken, aber erst später setzen (DataTable.Expression)
|
||||
columnsWithExpressions.Add(New Tuple(Of DataColumn, String)(oColumn, oFormulaExpression))
|
||||
' HINWEIS: FORMULA_SQL-Spalten bekommen KEINE DataTable.Expression,
|
||||
' da deren Werte programmatisch via SetRowCellValue gesetzt werden.
|
||||
End If
|
||||
|
||||
Try
|
||||
@@ -199,16 +289,136 @@ Namespace ControlCreator
|
||||
Return oEditor
|
||||
End If
|
||||
End Function
|
||||
''' <summary>
|
||||
''' Setzt das Währungssymbol für ein bestimmtes Grid im Shared Cache.
|
||||
''' Muss bei JEDEM Dokumentwechsel aufgerufen werden (auch bei EUR),
|
||||
''' damit der CustomColumnDisplayText-Handler sofort den korrekten Wert hat.
|
||||
''' </summary>
|
||||
Public Shared Sub SetCurrencySymbolForGrid(gridName As String, currencySymbol As String)
|
||||
SyncLock _CurrencySymbolByGridName
|
||||
_CurrencySymbolByGridName(gridName) = currencySymbol
|
||||
End SyncLock
|
||||
End Sub
|
||||
' Hilfsroutine: passt NUR das Summary-Item an (ohne FormatInfo)
|
||||
Private Sub ApplyCurrencySummaryFormat(oCol As GridColumn, currencySymbol As String)
|
||||
Private Sub ApplyCurrencySummaryFormat(oCol As GridColumn)
|
||||
oCol.SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Sum
|
||||
' Variante A: Standard-Währungsformat aus aktueller Kultur
|
||||
' oCol.SummaryItem.DisplayFormat = "SUM: {0:C2}"
|
||||
_Logger.Debug("Applying currency summary format for column [{0}] with symbol [{1}]", oCol.FieldName, _currencySymbol)
|
||||
|
||||
' Variante B: Kulturunabhängig, Symbol explizit anhängen
|
||||
oCol.SummaryItem.DisplayFormat = $"SUM: {{0:N2}} {currencySymbol}"
|
||||
oCol.SummaryItem.DisplayFormat = $"{{0:N2}} {_currencySymbol}"
|
||||
End Sub
|
||||
Public Sub ConfigureViewColumns(pColumnTable As DataTable, pGridView As GridView, pGrid As DevExpress.XtraGrid.GridControl, pcurrencySymbol As String)
|
||||
''' <summary>
|
||||
''' Aktualisiert die Währungsformatierung für alle CURRENCY-Spalten mit neuem Währungssymbol.
|
||||
''' Betrifft DisplayFormat, ColumnEdit (für editierbare Spalten) und Summary-Footer.
|
||||
''' </summary>
|
||||
''' <summary>
|
||||
'''
|
||||
Public Sub UpdateCurrencyFormat(pColumnTable As DataTable, pGridView As GridView, pGrid As DevExpress.XtraGrid.GridControl, pNewCurrencySymbol As String)
|
||||
Try
|
||||
_Logger.Info("[UpdateCurrencyFormat] *** START *** [{0}] → [{1}] für [{2}]", _currencySymbol, pNewCurrencySymbol, pGrid.Name)
|
||||
|
||||
' *** KERN-FIX: Speichere Symbol im SHARED Dictionary ***
|
||||
Dim gridName As String = pGrid.Name
|
||||
SyncLock _CurrencySymbolByGridName
|
||||
If _CurrencySymbolByGridName.ContainsKey(gridName) Then
|
||||
_CurrencySymbolByGridName(gridName) = pNewCurrencySymbol
|
||||
Else
|
||||
_CurrencySymbolByGridName.Add(gridName, pNewCurrencySymbol)
|
||||
End If
|
||||
End SyncLock
|
||||
_Logger.Debug("[UpdateCurrencyFormat] Shared Dictionary updated: [{0}] = [{1}]", gridName, pNewCurrencySymbol)
|
||||
|
||||
_currencySymbol = pNewCurrencySymbol
|
||||
|
||||
Dim oCultureInfo As CultureInfo = New CultureInfo("de-DE")
|
||||
oCultureInfo.NumberFormat.CurrencySymbol = _currencySymbol
|
||||
|
||||
Dim riTextEdit As New RepositoryItemTextEdit()
|
||||
riTextEdit.MaskSettings.Configure(Of MaskSettings.Numeric)(
|
||||
Sub(settings)
|
||||
settings.MaskExpression = "c"
|
||||
settings.Culture = oCultureInfo
|
||||
End Sub)
|
||||
riTextEdit.UseMaskAsDisplayFormat = False
|
||||
riTextEdit.DisplayFormat.FormatType = FormatType.Custom
|
||||
riTextEdit.DisplayFormat.FormatString = $"#,##0.00 {_currencySymbol}"
|
||||
_Logger.Debug("[UpdateCurrencyFormat] riTextEdit: DisplayFormat=[{0}]",
|
||||
riTextEdit.DisplayFormat.FormatString)
|
||||
|
||||
pGridView.BeginUpdate()
|
||||
Try
|
||||
' Schritt 1: Altes RepositoryItem entfernen (ohne vorher ColumnEdit=Nothing)
|
||||
Dim oldItems = pGrid.RepositoryItems.OfType(Of RepositoryItemTextEdit)().
|
||||
Where(Function(item) item.MaskSettings.MaskExpression = "c").ToList()
|
||||
For Each oldItem In oldItems
|
||||
_Logger.Debug("[UpdateCurrencyFormat] Removing old riTextEdit: DisplayFormat=[{0}]",
|
||||
oldItem.DisplayFormat.FormatString)
|
||||
pGrid.RepositoryItems.Remove(oldItem)
|
||||
Next
|
||||
|
||||
' Schritt 2: CURRENCY-Spalten konfigurieren
|
||||
For Each oCol As GridColumn In pGridView.Columns
|
||||
Dim oColumnData As DataRow = pColumnTable.
|
||||
Select($"SPALTENNAME = '{oCol.FieldName}'").
|
||||
FirstOrDefault()
|
||||
If oColumnData Is Nothing Then Continue For
|
||||
|
||||
If ObjectEx.NotNull(oColumnData.Item("TYPE_COLUMN"), String.Empty).ToString() <> "CURRENCY" Then Continue For
|
||||
|
||||
Dim oIsFormulaExpression As Boolean =
|
||||
ObjectEx.NotNull(oColumnData.Item("FORMULA_EXPRESSION"), String.Empty) <> String.Empty
|
||||
Dim oIsFormulaSql As Boolean =
|
||||
ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty) <> String.Empty
|
||||
|
||||
' Entweder/Oder: Beide gleichzeitig → Expression gewinnt, SQL ignoriert
|
||||
If oIsFormulaExpression AndAlso oIsFormulaSql Then
|
||||
_Logger.Warn("[UpdateCurrencyFormat] Column [{0}] has BOTH FORMULA_EXPRESSION and FORMULA_SQL – treating as EXPRESSION only.", oCol.FieldName)
|
||||
oIsFormulaSql = False
|
||||
End If
|
||||
|
||||
' Spalte ist eine Formel-Spalte (Expression ODER SQL) → ReadOnly, kein ColumnEdit
|
||||
Dim oIsAnyFormula As Boolean = oIsFormulaExpression OrElse oIsFormulaSql
|
||||
|
||||
' DisplayFormat immer aktualisieren
|
||||
oCol.DisplayFormat.FormatType = FormatType.Custom
|
||||
oCol.DisplayFormat.FormatString = $"#,##0.00 {_currencySymbol}"
|
||||
|
||||
If Not oIsAnyFormula AndAlso oCol.OptionsColumn.AllowEdit Then
|
||||
' Nur editierbare Nicht-Formel-Spalten bekommen ein ColumnEdit
|
||||
oCol.ColumnEdit = riTextEdit
|
||||
_Logger.Debug("[UpdateCurrencyFormat] ColumnEdit=[{0}] für [{1}]",
|
||||
DirectCast(oCol.ColumnEdit, RepositoryItemTextEdit).DisplayFormat.FormatString,
|
||||
oCol.FieldName)
|
||||
Else
|
||||
_Logger.Debug("[UpdateCurrencyFormat] [{0}]: ReadOnly/Formula – nur DisplayFormat aktualisiert (IsExpression=[{1}], IsSql=[{2}])",
|
||||
oCol.FieldName, oIsFormulaExpression, oIsFormulaSql)
|
||||
End If
|
||||
|
||||
If ObjectEx.NotNull(oColumnData.Item("SUMMARY_FUNCTION"), String.Empty) =
|
||||
Constants.AGGREGATE_TOTAL_CURRENCY Then
|
||||
oCol.SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Sum
|
||||
oCol.SummaryItem.DisplayFormat = $"{{0:N2}} {_currencySymbol}"
|
||||
End If
|
||||
Next
|
||||
Finally
|
||||
pGridView.EndUpdate()
|
||||
End Try
|
||||
|
||||
pGridView.LayoutChanged()
|
||||
For i As Integer = 0 To pGridView.DataRowCount - 1
|
||||
pGridView.InvalidateRow(i)
|
||||
Next
|
||||
pGridView.UpdateTotalSummary()
|
||||
|
||||
_Logger.Info("[UpdateCurrencyFormat] *** END *** _currencySymbol=[{0}]", _currencySymbol)
|
||||
|
||||
Catch ex As Exception
|
||||
_Logger.Error("[UpdateCurrencyFormat] Fehler: {0}", ex.Message)
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Public Sub ConfigureViewColumns(pColumnTable As DataTable, pGridView As GridView, pGrid As DevExpress.XtraGrid.GridControl)
|
||||
Dim oShouldDisplayFooter As Boolean = False
|
||||
For Each oCol As GridColumn In pGridView.Columns
|
||||
Dim oColumnData As DataRow = pColumnTable.
|
||||
@@ -237,7 +447,10 @@ Namespace ControlCreator
|
||||
If oFormulaExpression <> String.Empty Then
|
||||
oIsReadOnly = True
|
||||
End If
|
||||
|
||||
Dim oSQLExpression = ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty)
|
||||
If oSQLExpression <> String.Empty Then
|
||||
oIsReadOnly = True
|
||||
End If
|
||||
|
||||
oCol.OptionsColumn.AllowEdit = Not oIsReadOnly
|
||||
|
||||
@@ -253,8 +466,14 @@ Namespace ControlCreator
|
||||
oCol.DisplayFormat.FormatString = "N2"
|
||||
|
||||
Case "CURRENCY"
|
||||
oCol.DisplayFormat.FormatType = FormatType.Custom
|
||||
oCol.DisplayFormat.FormatString = "C2"
|
||||
' *** DisplayFormat wird NICHT hier gesetzt ***
|
||||
' ConfigureViewColumnsCurrency übernimmt die CURRENCY-Formatierung
|
||||
' mit dem korrekten _currencySymbol. Dieses Standardformat würde
|
||||
' später von UpdateCurrencyFormat überschrieben werden müssen –
|
||||
' für Formel-Spalten (kein ColumnEdit) greift aber nur DisplayFormat,
|
||||
' weshalb ein falscher Initialwert hier persistent bleibt.
|
||||
_Logger.Debug("CURRENCY column [{0}]: DisplayFormat wird von ConfigureViewColumnsCurrency gesetzt", oCol.FieldName)
|
||||
|
||||
End Select
|
||||
|
||||
Dim oSummaryFunction As String = oColumnData.Item("SUMMARY_FUNCTION")
|
||||
@@ -262,16 +481,17 @@ Namespace ControlCreator
|
||||
Select Case oSummaryFunction
|
||||
Case Constants.AGGREGATE_TOTAL_INTEGER
|
||||
oCol.SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Sum
|
||||
oCol.SummaryItem.DisplayFormat = "SUM: {0:N0}"
|
||||
oCol.SummaryItem.DisplayFormat = "{0:N0}"
|
||||
oShouldDisplayFooter = True
|
||||
|
||||
Case Constants.AGGREGATE_TOTAL_FLOAT
|
||||
oCol.SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Sum
|
||||
oCol.SummaryItem.DisplayFormat = "SUM: {0:N2}"
|
||||
oCol.SummaryItem.DisplayFormat = "{0:N2}"
|
||||
oShouldDisplayFooter = True
|
||||
|
||||
Case Constants.AGGREGATE_TOTAL_CURRENCY
|
||||
ApplyCurrencySummaryFormat(oCol, pcurrencySymbol)
|
||||
_Logger.Debug(Of String)("Applying currency summary format for column [{0}]", oCol.FieldName)
|
||||
ApplyCurrencySummaryFormat(oCol)
|
||||
oShouldDisplayFooter = True
|
||||
|
||||
Case Constants.AGGREGATE_TOTAL_AVG
|
||||
@@ -306,37 +526,179 @@ Namespace ControlCreator
|
||||
End With
|
||||
End If
|
||||
End Sub
|
||||
Public Sub ConfigureViewColumnsCurrency(pColumnTable As DataTable, pGridView As GridView, pGrid As DevExpress.XtraGrid.GridControl, pCurrency As String)
|
||||
|
||||
Public Sub ConfigureViewColumnsCurrency(pColumnTable As DataTable, pGridView As GridView, pGrid As DevExpress.XtraGrid.GridControl)
|
||||
Dim oCultureInfo As CultureInfo = New CultureInfo("de-DE")
|
||||
oCultureInfo.NumberFormat.CurrencySymbol = pCurrency
|
||||
oCultureInfo.NumberFormat.CurrencySymbol = _currencySymbol
|
||||
|
||||
Dim riTextEdit As RepositoryItemTextEdit = New RepositoryItemTextEdit()
|
||||
riTextEdit.MaskSettings.Configure(Of MaskSettings.Numeric)(Sub(settings)
|
||||
settings.MaskExpression = "c"
|
||||
settings.Culture = oCultureInfo
|
||||
End Sub)
|
||||
riTextEdit.UseMaskAsDisplayFormat = True 'Optional
|
||||
pGrid.RepositoryItems.Add(riTextEdit)
|
||||
riTextEdit.MaskSettings.Configure(Of MaskSettings.Numeric)(
|
||||
Sub(settings)
|
||||
settings.MaskExpression = "c"
|
||||
settings.Culture = oCultureInfo
|
||||
End Sub)
|
||||
riTextEdit.UseMaskAsDisplayFormat = False
|
||||
riTextEdit.DisplayFormat.FormatType = FormatType.Custom
|
||||
riTextEdit.DisplayFormat.FormatString = $"#,##0.00 {_currencySymbol}"
|
||||
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] riTextEdit erstellt: DisplayFormat=[{0}], HashCode=[{1}]",
|
||||
riTextEdit.DisplayFormat.FormatString, riTextEdit.GetHashCode())
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] pGrid.RepositoryItems.Count VOR Schleife=[{0}]",
|
||||
pGrid.RepositoryItems.Count)
|
||||
|
||||
For Each oCol As GridColumn In pGridView.Columns
|
||||
Dim oColumnData As DataRow = pColumnTable.
|
||||
Select($"SPALTENNAME = '{oCol.FieldName}'").
|
||||
FirstOrDefault()
|
||||
If oColumnData Is Nothing Then Continue For
|
||||
|
||||
If oColumnData Is Nothing Then
|
||||
Continue For
|
||||
Dim oColumnType As String = ObjectEx.NotNull(oColumnData.Item("TYPE_COLUMN"), String.Empty).ToString()
|
||||
If oColumnType <> "CURRENCY" Then Continue For
|
||||
|
||||
Dim oFormulaExpression = ObjectEx.NotNull(oColumnData.Item("FORMULA_EXPRESSION"), String.Empty)
|
||||
Dim oFormulaSql = ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty)
|
||||
|
||||
' Entweder/Oder: Beide gleichzeitig → Expression gewinnt, SQL ignoriert
|
||||
If oFormulaExpression <> String.Empty AndAlso oFormulaSql <> String.Empty Then
|
||||
_Logger.Warn("[ConfigureViewColumnsCurrency] Column [{0}] has BOTH FORMULA_EXPRESSION and FORMULA_SQL – treating as EXPRESSION only.", oCol.FieldName)
|
||||
oFormulaSql = String.Empty
|
||||
End If
|
||||
|
||||
Dim oColumnType As String = oColumnData.Item("TYPE_COLUMN")
|
||||
' Spalte ist eine Formel-Spalte (Expression ODER SQL) → nur DisplayFormat, kein ColumnEdit
|
||||
Dim oIsAnyFormula As Boolean = oFormulaExpression <> String.Empty OrElse oFormulaSql <> String.Empty
|
||||
|
||||
Select Case oColumnType
|
||||
Case "CURRENCY"
|
||||
oCol.DisplayFormat.FormatType = FormatType.Custom
|
||||
oCol.ColumnEdit = riTextEdit
|
||||
End Select
|
||||
If oIsAnyFormula Then
|
||||
' Formel-Spalten (Expression oder SQL): nur DisplayFormat setzen
|
||||
oCol.DisplayFormat.FormatType = FormatType.Custom
|
||||
oCol.DisplayFormat.FormatString = $"#,##0.00 {_currencySymbol}"
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] Formel-Spalte [{0}] (IsExpression=[{1}], IsSql=[{2}]): DisplayFormat=[{3}], RepositoryItems.Count=[{4}]",
|
||||
oCol.FieldName,
|
||||
oFormulaExpression <> String.Empty,
|
||||
oFormulaSql <> String.Empty,
|
||||
oCol.DisplayFormat.FormatString,
|
||||
pGrid.RepositoryItems.Count)
|
||||
|
||||
ElseIf oCol.OptionsColumn.AllowEdit Then
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] [{0}] VOR ColumnEdit: RepositoryItems.Count=[{1}]",
|
||||
oCol.FieldName, pGrid.RepositoryItems.Count)
|
||||
|
||||
oCol.ColumnEdit = riTextEdit
|
||||
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] [{0}] NACH ColumnEdit: RepositoryItems.Count=[{1}]",
|
||||
oCol.FieldName, pGrid.RepositoryItems.Count)
|
||||
|
||||
Dim assignedEdit = TryCast(oCol.ColumnEdit, RepositoryItemTextEdit)
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] [{0}]: IsSameObject=[{1}], ColumnEdit.DisplayFormat=[{2}], ColumnEdit.HashCode=[{3}]",
|
||||
oCol.FieldName,
|
||||
Object.ReferenceEquals(assignedEdit, riTextEdit),
|
||||
If(assignedEdit IsNot Nothing, assignedEdit.DisplayFormat.FormatString, "N/A"),
|
||||
If(assignedEdit IsNot Nothing, assignedEdit.GetHashCode(), -1))
|
||||
|
||||
For i As Integer = 0 To pGrid.RepositoryItems.Count - 1
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] RepositoryItems[{0}]: Type=[{1}], HashCode=[{2}]",
|
||||
i, pGrid.RepositoryItems(i).GetType().Name, pGrid.RepositoryItems(i).GetHashCode())
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
|
||||
Dim oTestFired As Boolean = False
|
||||
AddHandler pGridView.CustomColumnDisplayText,
|
||||
Sub(sender As Object, e As CustomColumnDisplayTextEventArgs)
|
||||
If e.Column Is Nothing OrElse e.Value Is Nothing OrElse IsDBNull(e.Value) Then
|
||||
Return
|
||||
End If
|
||||
|
||||
Dim oColumnData As DataRow = pColumnTable.
|
||||
Select($"SPALTENNAME = '{e.Column.FieldName}'").
|
||||
FirstOrDefault()
|
||||
|
||||
If oColumnData IsNot Nothing AndAlso
|
||||
oColumnData.Item("TYPE_COLUMN").ToString() = "CURRENCY" Then
|
||||
|
||||
Try
|
||||
Dim currentSymbol As String = _currencySymbol
|
||||
Dim gridName As String = pGrid.Name
|
||||
SyncLock _CurrencySymbolByGridName
|
||||
If _CurrencySymbolByGridName.ContainsKey(gridName) Then
|
||||
currentSymbol = _CurrencySymbolByGridName(gridName)
|
||||
End If
|
||||
End SyncLock
|
||||
|
||||
Dim oValue As Double
|
||||
If TypeOf e.Value Is Double OrElse TypeOf e.Value Is Decimal Then
|
||||
oValue = Convert.ToDouble(e.Value)
|
||||
ElseIf TypeOf e.Value Is String Then
|
||||
Dim oStringValue As String = e.Value.ToString().Trim()
|
||||
|
||||
Dim oDeCulture As CultureInfo = New CultureInfo("de-DE")
|
||||
If Double.TryParse(oStringValue, NumberStyles.Currency Or NumberStyles.Number, oDeCulture, oValue) Then
|
||||
ElseIf Double.TryParse(oStringValue, NumberStyles.Currency Or NumberStyles.Number, CultureInfo.InvariantCulture, oValue) Then
|
||||
Else
|
||||
oValue = Convert.ToDouble(oStringValue, CultureInfo.CurrentCulture)
|
||||
End If
|
||||
Else
|
||||
oValue = Convert.ToDouble(e.Value)
|
||||
End If
|
||||
|
||||
Dim oDeCultureInfo As CultureInfo = New CultureInfo("de-DE")
|
||||
e.DisplayText = oValue.ToString("N2", oDeCultureInfo) & " " & currentSymbol
|
||||
|
||||
_Logger.Debug("[CustomColumnDisplayText] CURRENCY [{0}]: DisplayText=[{1}], Symbol=[{2}] (from Shared Dict in ConfigureViewColumnsCurrency)",
|
||||
e.Column.FieldName, e.DisplayText, currentSymbol)
|
||||
|
||||
Catch ex As Exception
|
||||
_Logger.Warn("⚠️ Could not format currency value [{0}] for column [{1}]: {2}",
|
||||
e.Value, e.Column.FieldName, ex.Message)
|
||||
Dim fallbackSymbol As String = _currencySymbol
|
||||
SyncLock _CurrencySymbolByGridName
|
||||
If _CurrencySymbolByGridName.ContainsKey(pGrid.Name) Then
|
||||
fallbackSymbol = _CurrencySymbolByGridName(pGrid.Name)
|
||||
End If
|
||||
End SyncLock
|
||||
e.DisplayText = e.Value.ToString() & " " & fallbackSymbol
|
||||
End Try
|
||||
End If
|
||||
End Sub
|
||||
End Sub
|
||||
|
||||
Public Sub ConfigureViewEvents(pColumnTable As DataTable, pGridView As GridView, pControl As Windows.Forms.Control, pControlId As Integer)
|
||||
' *** Formel-Spalten einmalig cachen + Validierung: Entweder EXPRESSION oder SQL, nie beides ***
|
||||
_FormulaColumnNames.Clear()
|
||||
_FormulaSqlColumns.Clear()
|
||||
|
||||
For Each r As DataRow In pColumnTable.Rows
|
||||
Dim oColName = r.Item("SPALTENNAME").ToString()
|
||||
Dim oExpr = ObjectEx.NotNull(r.Item("FORMULA_EXPRESSION"), String.Empty).ToString()
|
||||
Dim oSql = ObjectEx.NotNull(r.Item("FORMULA_SQL"), String.Empty).ToString()
|
||||
|
||||
' *** VALIDIERUNG: Beides gleichzeitig ist nicht erlaubt ***
|
||||
If oExpr <> String.Empty AndAlso oSql <> String.Empty Then
|
||||
_Logger.Warn("⚠️ Column [{0}] has BOTH FORMULA_EXPRESSION and FORMULA_SQL – this is not allowed! FORMULA_SQL will be ignored.", oColName)
|
||||
MsgBox(String.Format(
|
||||
"Die Spalte '{0}' enthält sowohl eine FORMULA_EXPRESSION als auch eine FORMULA_SQL." & vbCrLf &
|
||||
"Es darf nur eine der beiden Formeln gesetzt sein." & vbCrLf &
|
||||
"FORMULA_SQL wird ignoriert. Bitte korrigieren Sie die Konfiguration im Tabellen-Designer.",
|
||||
oColName), MsgBoxStyle.Exclamation, "Ungültige Spalten-Konfiguration")
|
||||
' FORMULA_EXPRESSION hat Vorrang → SQL ignorieren
|
||||
oSql = String.Empty
|
||||
End If
|
||||
|
||||
If oExpr <> String.Empty Then
|
||||
_FormulaColumnNames.Add(oColName)
|
||||
_Logger.Debug("[ConfigureViewEvents] Column [{0}] registered as FORMULA_EXPRESSION column.", oColName)
|
||||
ElseIf oSql <> String.Empty Then
|
||||
Dim oConnectionId As Integer = r.ItemEx("CONNECTION_ID", 0)
|
||||
_FormulaSqlColumns(oColName) = New FormulaSqlDefinition() With {
|
||||
.SqlTemplate = oSql,
|
||||
.ReferencedColumns = GetReferencedSqlColumnNames(oSql)
|
||||
}
|
||||
' SQL-Spalten auch in _FormulaColumnNames aufnehmen → Editor-Blockade + ReadOnly
|
||||
_FormulaColumnNames.Add(oColName)
|
||||
_Logger.Debug("[ConfigureViewEvents] Column [{0}] registered as FORMULA_SQL column. ReferencedColumns=[{1}]",
|
||||
oColName, String.Join(", ", GetReferencedSqlColumnNames(oSql)))
|
||||
End If
|
||||
Next
|
||||
|
||||
AddHandler pGridView.InitNewRow, Sub(sender As Object, e As InitNewRowEventArgs)
|
||||
Try
|
||||
_Logger.Debug("Initialzing new row")
|
||||
@@ -362,23 +724,100 @@ Namespace ControlCreator
|
||||
newRowModified = False
|
||||
End Try
|
||||
End Sub
|
||||
' *** NEU: CustomColumnDisplayText für robuste CURRENCY-Formatierung ***
|
||||
AddHandler pGridView.CustomColumnDisplayText,
|
||||
Sub(sender As Object, e As CustomColumnDisplayTextEventArgs)
|
||||
If e.Column Is Nothing OrElse e.Value Is Nothing OrElse IsDBNull(e.Value) Then
|
||||
Return
|
||||
End If
|
||||
|
||||
' Prüfe ob Spalte vom Typ CURRENCY ist
|
||||
Dim oColumnData As DataRow = pColumnTable.
|
||||
Select($"SPALTENNAME = '{e.Column.FieldName}'").
|
||||
FirstOrDefault()
|
||||
|
||||
If oColumnData IsNot Nothing AndAlso
|
||||
oColumnData.Item("TYPE_COLUMN").ToString() = "CURRENCY" Then
|
||||
|
||||
Try
|
||||
' *** KERN-FIX: Hole Symbol aus SHARED Dictionary statt Instanz-Feld ***
|
||||
Dim currentSymbol As String = _currencySymbol ' Fallback
|
||||
Dim gridName As String = pControl.Name
|
||||
SyncLock _CurrencySymbolByGridName
|
||||
If _CurrencySymbolByGridName.ContainsKey(gridName) Then
|
||||
currentSymbol = _CurrencySymbolByGridName(gridName)
|
||||
End If
|
||||
End SyncLock
|
||||
|
||||
Dim oValue As Double
|
||||
' *** KRITISCH: Robustes Parsing unabhängig vom Dezimaltrenner ***
|
||||
If TypeOf e.Value Is Double OrElse TypeOf e.Value Is Decimal Then
|
||||
oValue = Convert.ToDouble(e.Value)
|
||||
ElseIf TypeOf e.Value Is String Then
|
||||
Dim oStringValue As String = e.Value.ToString().Trim()
|
||||
|
||||
' Versuche zuerst deutsches Format (1.234,56)
|
||||
Dim oDeCulture As CultureInfo = New CultureInfo("de-DE")
|
||||
If Double.TryParse(oStringValue, NumberStyles.Currency Or NumberStyles.Number, oDeCulture, oValue) Then
|
||||
' Erfolgreich mit deutschem Format geparst
|
||||
ElseIf Double.TryParse(oStringValue, NumberStyles.Currency Or NumberStyles.Number, CultureInfo.InvariantCulture, oValue) Then
|
||||
' Erfolgreich mit invariantem Format (Punkt als Dezimaltrenner)
|
||||
Else
|
||||
' Fallback: Systemkultur
|
||||
oValue = Convert.ToDouble(oStringValue, CultureInfo.CurrentCulture)
|
||||
End If
|
||||
Else
|
||||
oValue = Convert.ToDouble(e.Value)
|
||||
End If
|
||||
|
||||
' Formatierung IMMER mit deutscher Kultur (Komma als Dezimaltrenner)
|
||||
Dim oDeCultureInfo As CultureInfo = New CultureInfo("de-DE")
|
||||
e.DisplayText = oValue.ToString("N2", oDeCultureInfo) & " " & currentSymbol
|
||||
|
||||
_Logger.Debug("[CustomColumnDisplayText] CURRENCY [{0}]: DisplayText=[{1}], Symbol=[{2}] (from Shared Dict in ConfigureViewEvents)",
|
||||
e.Column.FieldName, e.DisplayText, currentSymbol)
|
||||
|
||||
Catch ex As Exception
|
||||
_Logger.Warn("⚠️ Could not format currency value [{0}] for column [{1}]: {2}",
|
||||
e.Value, e.Column.FieldName, ex.Message)
|
||||
' Fallback: Original-Wert + Symbol
|
||||
Dim fallbackSymbol As String = _currencySymbol
|
||||
SyncLock _CurrencySymbolByGridName
|
||||
If _CurrencySymbolByGridName.ContainsKey(pControl.Name) Then
|
||||
fallbackSymbol = _CurrencySymbolByGridName(pControl.Name)
|
||||
End If
|
||||
End SyncLock
|
||||
e.DisplayText = e.Value.ToString() & " " & fallbackSymbol
|
||||
End Try
|
||||
End If
|
||||
End Sub
|
||||
|
||||
AddHandler pGridView.CustomRowCellEdit, Sub(sender As Object, e As CustomRowCellEditEventArgs)
|
||||
Try
|
||||
For Each oRow As DataRow In pColumnTable.Rows
|
||||
Dim oColumnName = oRow.Item("SPALTENNAME")
|
||||
Dim oColumnName As String = oRow.Item("SPALTENNAME").ToString()
|
||||
If oColumnName <> e.Column.FieldName Then Continue For
|
||||
|
||||
Dim oEditorExists = GridTables_TestEditorExistsByControlAndColumn(pControlId, oColumnName)
|
||||
If oColumnName <> e.Column.FieldName Then
|
||||
Continue For
|
||||
End If
|
||||
|
||||
If oEditorExists Then
|
||||
' Combobox/Lookup-Editor aus GridTables: immer zuweisen
|
||||
Dim oEditor = _GridTables.Item(pControlId).Item(oColumnName)
|
||||
_Logger.Debug("Assigning Editor to Column [{0}]", oColumnName)
|
||||
e.RepositoryItem = oEditor
|
||||
Else
|
||||
_Logger.Debug("Editor for Column [{0}] does not exist", oColumnName)
|
||||
Dim oColumnType As String = ObjectEx.NotNull(oRow.Item("TYPE_COLUMN"), String.Empty).ToString()
|
||||
If oColumnType = "CURRENCY" Then
|
||||
If _FormulaColumnNames.Contains(oColumnName) Then
|
||||
_Logger.Debug("CURRENCY column [{0}] is formula/readonly – CustomColumnDisplayText handles display", oColumnName)
|
||||
Else
|
||||
_Logger.Debug("CURRENCY column [{0}] – NO e.RepositoryItem set. Display via CustomColumnDisplayText, Edit via GridColumn.ColumnEdit", oColumnName)
|
||||
End If
|
||||
Else
|
||||
_Logger.Debug("Editor for Column [{0}] does not exist", oColumnName)
|
||||
End If
|
||||
End If
|
||||
Exit For
|
||||
Next
|
||||
Catch ex As Exception
|
||||
_Logger.Warn("⚠️ Error in CustomRowCellEdit for [{0}]", e.CellValue)
|
||||
@@ -394,30 +833,328 @@ Namespace ControlCreator
|
||||
End Sub
|
||||
|
||||
AddHandler pGridView.PopupMenuShowing, AddressOf View_PopupMenuShowing
|
||||
|
||||
AddHandler pGridView.InvalidRowException, AddressOf View_InvalidRowException
|
||||
AddHandler pGridView.ValidatingEditor, AddressOf View_ValidatingEditor
|
||||
' AddHandler pGridView.CustomColumnDisplayText, AddressOf View_CustomColumnDisplayText
|
||||
AddHandler pGridView.ShownEditor,
|
||||
Sub(sender As Object, e As EventArgs)
|
||||
Dim view As GridView = TryCast(sender, GridView)
|
||||
If view.IsNewItemRow(view.FocusedRowHandle) Then
|
||||
_Logger.Debug("Attaching Modified Handler.")
|
||||
AddHandler view.ActiveEditor.Modified, Sub()
|
||||
_Logger.Debug("Row was modified.")
|
||||
newRowModified = True
|
||||
End Sub
|
||||
End If
|
||||
|
||||
' *** LIVE-REFRESH bei JEDER Eingabe (nur für FORMULA_EXPRESSION!) ***
|
||||
' FORMULA_SQL wird NICHT hier behandelt – SQL-Refresh erfolgt nur über CellValueChanged
|
||||
If view.FocusedColumn IsNot Nothing AndAlso view.ActiveEditor IsNot Nothing Then
|
||||
Dim oFocusedColumnName As String = view.FocusedColumn.FieldName
|
||||
|
||||
' Prüfen ob diese Spalte von FORMULA_EXPRESSION-Spalten referenziert wird
|
||||
Dim oFormulaColumnsToRefresh As New List(Of String)
|
||||
For Each oColumnData As DataRow In pColumnTable.Rows
|
||||
Dim oColName = oColumnData.Item("SPALTENNAME").ToString()
|
||||
Dim oExpr = ObjectEx.NotNull(oColumnData.Item("FORMULA_EXPRESSION"), String.Empty).ToString()
|
||||
|
||||
' Nur FORMULA_EXPRESSION – FORMULA_SQL wird über CellValueChanged behandelt
|
||||
If oExpr = String.Empty Then
|
||||
Continue For
|
||||
End If
|
||||
|
||||
' Spalte darf keine FORMULA_SQL haben (wurde oben validiert, Sicherheitsprüfung)
|
||||
Dim oSqlExpr = ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty).ToString()
|
||||
If oSqlExpr <> String.Empty Then
|
||||
_Logger.Debug("[FormulaRefresh] Column [{0}] has both FORMULA_EXPRESSION and FORMULA_SQL – skipping live refresh.", oColName)
|
||||
Continue For
|
||||
End If
|
||||
|
||||
Dim referencedColumns = GetReferencedColumnNames(oExpr)
|
||||
If referencedColumns.Any(Function(col) String.Equals(col, oFocusedColumnName, StringComparison.OrdinalIgnoreCase)) Then
|
||||
oFormulaColumnsToRefresh.Add(oColName)
|
||||
End If
|
||||
Next
|
||||
|
||||
If oFormulaColumnsToRefresh.Count > 0 Then
|
||||
_Logger.Debug("[FormulaRefresh] Attaching EditValueChanged handler for LIVE formula updates on column [{0}].", oFocusedColumnName)
|
||||
|
||||
' Handler für LIVE Aktualisierung während JEDER Eingabe
|
||||
AddHandler view.ActiveEditor.EditValueChanged,
|
||||
Sub(editorSender As Object, editorArgs As EventArgs)
|
||||
Try
|
||||
Dim oRowHandle As Integer = view.FocusedRowHandle
|
||||
If Not view.IsValidRowHandle(oRowHandle) Then Return
|
||||
|
||||
Dim oEditor As DevExpress.XtraEditors.BaseEdit = TryCast(editorSender, DevExpress.XtraEditors.BaseEdit)
|
||||
If oEditor Is Nothing Then Return
|
||||
|
||||
Dim isNewItemRow As Boolean = view.IsNewItemRow(oRowHandle)
|
||||
|
||||
Try
|
||||
Dim oValue As Object = oEditor.EditValue
|
||||
|
||||
If TypeOf oEditor Is DevExpress.XtraEditors.TextEdit Then
|
||||
Dim oTextEdit As DevExpress.XtraEditors.TextEdit = DirectCast(oEditor, DevExpress.XtraEditors.TextEdit)
|
||||
If oTextEdit.Properties.MaskSettings IsNot Nothing Then
|
||||
oValue = oEditor.EditValue
|
||||
End If
|
||||
End If
|
||||
|
||||
If isNewItemRow Then
|
||||
_Logger.Debug("[FormulaRefresh] EditValueChanged (NewItemRow) – setting value for [{0}] = [{1}].", oFocusedColumnName, oValue)
|
||||
|
||||
_isRefreshingFormula = True
|
||||
Try
|
||||
' Wert setzen
|
||||
view.SetRowCellValue(oRowHandle, oFocusedColumnName, If(oValue Is Nothing, DBNull.Value, oValue))
|
||||
|
||||
' *** KRITISCH: DoEvents() damit SetRowCellValue processed wird ***
|
||||
view.UpdateCurrentRow()
|
||||
|
||||
' Formel-Spalten SOFORT refreshen
|
||||
For Each oFormulaColumnName As String In oFormulaColumnsToRefresh
|
||||
Dim oGridColumn As GridColumn = view.Columns.ColumnByFieldName(oFormulaColumnName)
|
||||
If oGridColumn IsNot Nothing Then
|
||||
view.RefreshRowCell(oRowHandle, oGridColumn)
|
||||
_Logger.Debug("[FormulaRefresh] (NewItemRow) Refreshed [{0}], current value: [{1}]",
|
||||
oFormulaColumnName, view.GetRowCellValue(oRowHandle, oGridColumn))
|
||||
End If
|
||||
Next
|
||||
Finally
|
||||
_isRefreshingFormula = False
|
||||
End Try
|
||||
|
||||
Else
|
||||
' Bestehende Row
|
||||
Dim oDataRow As DataRow = view.GetDataRow(oRowHandle)
|
||||
If oDataRow IsNot Nothing Then
|
||||
_Logger.Debug("[FormulaRefresh] EditValueChanged – setting value for [{0}] in DataTable.", oFocusedColumnName)
|
||||
oDataRow.Item(oFocusedColumnName) = If(oValue Is Nothing, DBNull.Value, oValue)
|
||||
|
||||
For Each oFormulaColumnName As String In oFormulaColumnsToRefresh
|
||||
Dim oGridColumn As GridColumn = view.Columns.ColumnByFieldName(oFormulaColumnName)
|
||||
If oGridColumn IsNot Nothing Then
|
||||
view.RefreshRowCell(oRowHandle, oGridColumn)
|
||||
Dim currentValue = view.GetRowCellValue(oRowHandle, oGridColumn)
|
||||
_Logger.Debug("[FormulaRefresh] Current value for [{0}]: [{1}]", oFormulaColumnName, currentValue)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
|
||||
Catch parseEx As Exception
|
||||
_Logger.Debug("[FormulaRefresh] Parse error during EditValueChanged: {0}", parseEx.Message)
|
||||
End Try
|
||||
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
End Sub
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' These handlers are all used for the custom DefaultValue functionality, additionally some code in the 'InitNewRow' event.
|
||||
' https://supportcenter.devexpress.com/ticket/details/t1035580/how-to-default-a-value-in-a-column-when-add-new-row-in-data-grid
|
||||
AddHandler pGridView.ShowingEditor, AddressOf View_ShowingEditor
|
||||
AddHandler pGridView.ShownEditor, AddressOf View_ShownEditor
|
||||
AddHandler pGridView.ValidateRow, AddressOf View_ValidateRow
|
||||
AddHandler pControl.LostFocus, AddressOf Control_LostFocus
|
||||
|
||||
AddHandler pGridView.ShowingEditor,
|
||||
Sub(sender As Object, e As CancelEventArgs)
|
||||
Try
|
||||
Dim oView As GridView = TryCast(sender, GridView)
|
||||
If oView Is Nothing Then Return
|
||||
|
||||
_Logger.Debug("Showing editor.")
|
||||
|
||||
' Formel-Spalten dürfen keinen Editor öffnen (gilt für EXPRESSION UND SQL)
|
||||
If oView.FocusedColumn IsNot Nothing Then
|
||||
Dim oFieldName As String = oView.FocusedColumn.FieldName
|
||||
If _FormulaColumnNames.Contains(oFieldName) Then
|
||||
_Logger.Debug("Cancelling editor – column [{0}] is a formula column (Expression or SQL).", oFieldName)
|
||||
e.Cancel = True
|
||||
Return
|
||||
End If
|
||||
End If
|
||||
|
||||
If oView.IsNewItemRow(oView.FocusedRowHandle) AndAlso Not newRowModified Then
|
||||
_Logger.Debug("Adding new row.")
|
||||
oView.AddNewRow()
|
||||
End If
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
AddHandler pGridView.FocusedColumnChanged,
|
||||
Sub(sender As Object, e As FocusedColumnChangedEventArgs)
|
||||
Try
|
||||
Dim oView As GridView = TryCast(sender, GridView)
|
||||
If oView Is Nothing Then Return
|
||||
|
||||
Dim oRowHandle As Integer = oView.FocusedRowHandle
|
||||
If oView.IsNewItemRow(oRowHandle) Then Return
|
||||
If Not oView.IsValidRowHandle(oRowHandle) Then Return
|
||||
|
||||
If oView.FocusedColumn IsNot Nothing AndAlso
|
||||
_FormulaColumnNames.Contains(oView.FocusedColumn.FieldName) Then
|
||||
_Logger.Debug("[FormulaRefresh] FocusedColumnChanged – closing editor on formula column [{0}].", oView.FocusedColumn.FieldName)
|
||||
oView.CloseEditor()
|
||||
End If
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
AddHandler pGridView.CellValueChanged,
|
||||
Sub(sender As Object, e As CellValueChangedEventArgs)
|
||||
' *** HandleInheritedColumnValue MUSS zuerst aufgerufen werden ***
|
||||
Try
|
||||
HandleInheritedColumnValue(TryCast(sender, GridView), pColumnTable, e)
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
|
||||
' *** FORMULA_EXPRESSION-Refresh via CellValueChanged (FALLBACK) ***
|
||||
' (EditValueChanged macht das normalerweise schon LIVE)
|
||||
Try
|
||||
Dim oView As GridView = TryCast(sender, GridView)
|
||||
If oView Is Nothing OrElse e.Column Is Nothing Then Return
|
||||
|
||||
Dim oFormulaColumnsToRefresh As New List(Of String)
|
||||
|
||||
For Each oColumnData As DataRow In pColumnTable.Rows
|
||||
Dim oExpr = ObjectEx.NotNull(oColumnData.Item("FORMULA_EXPRESSION"), String.Empty).ToString()
|
||||
If oExpr = String.Empty Then Continue For
|
||||
|
||||
' Nur FORMULA_EXPRESSION – kein SQL
|
||||
Dim oSqlExpr = ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty).ToString()
|
||||
If oSqlExpr <> String.Empty Then Continue For
|
||||
|
||||
Dim referencedColumns = GetReferencedColumnNames(oExpr)
|
||||
If referencedColumns.Any(Function(col) String.Equals(col, e.Column.FieldName, StringComparison.OrdinalIgnoreCase)) Then
|
||||
oFormulaColumnsToRefresh.Add(oColumnData.Item("SPALTENNAME").ToString())
|
||||
End If
|
||||
Next
|
||||
|
||||
If oFormulaColumnsToRefresh.Count = 0 Then
|
||||
' Kein FORMULA_EXPRESSION-Refresh nötig – weiter zu FORMULA_SQL
|
||||
Else
|
||||
Dim oRowHandle As Integer = e.RowHandle
|
||||
_Logger.Debug("[FormulaRefresh] CellValueChanged FALLBACK – refreshing EXPRESSION columns for row [{0}] after column [{1}] changed.", oRowHandle, e.Column.FieldName)
|
||||
|
||||
oView.GridControl.BeginInvoke(New Action(
|
||||
Sub()
|
||||
Try
|
||||
If Not oView.IsValidRowHandle(oRowHandle) Then Return
|
||||
|
||||
For Each oFormulaColumnName As String In oFormulaColumnsToRefresh
|
||||
Dim oGridColumn As GridColumn = oView.Columns.ColumnByFieldName(oFormulaColumnName)
|
||||
If oGridColumn Is Nothing Then Continue For
|
||||
|
||||
oView.RefreshRowCell(oRowHandle, oGridColumn)
|
||||
_Logger.Debug("[FormulaRefresh] FALLBACK DisplayText for [{0}]: [{1}]",
|
||||
oFormulaColumnName, oView.GetRowCellDisplayText(oRowHandle, oGridColumn))
|
||||
Next
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
End Sub))
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
|
||||
' *** FORMULA_SQL-Refresh via CellValueChanged ***
|
||||
' SQL wird NUR hier ausgeführt (nicht in EditValueChanged) um DB-Roundtrips zu minimieren
|
||||
Try
|
||||
Dim oView As GridView = TryCast(sender, GridView)
|
||||
If oView Is Nothing OrElse e.Column Is Nothing Then Return
|
||||
|
||||
' Finde alle SQL-Formelspalten, die die geänderte Spalte referenzieren
|
||||
Dim oSqlColumnsToRefresh As New List(Of String)
|
||||
For Each kvp In _FormulaSqlColumns
|
||||
If kvp.Value.ReferencedColumns.Any(
|
||||
Function(col) String.Equals(col, e.Column.FieldName, StringComparison.OrdinalIgnoreCase)) Then
|
||||
oSqlColumnsToRefresh.Add(kvp.Key)
|
||||
End If
|
||||
Next
|
||||
|
||||
If oSqlColumnsToRefresh.Count = 0 Then Return
|
||||
|
||||
Dim oRowHandle As Integer = e.RowHandle
|
||||
_Logger.Debug("[FormulaSql] CellValueChanged – column [{0}] triggers SQL refresh for: [{1}]",
|
||||
e.Column.FieldName, String.Join(", ", oSqlColumnsToRefresh))
|
||||
|
||||
' BeginInvoke: UI nicht blockieren, GridView in stabilem Zustand
|
||||
oView.GridControl.BeginInvoke(New Action(
|
||||
Sub()
|
||||
Try
|
||||
If Not oView.IsValidRowHandle(oRowHandle) Then Return
|
||||
|
||||
For Each oSqlColumnName As String In oSqlColumnsToRefresh
|
||||
Dim oDefinition = _FormulaSqlColumns(oSqlColumnName)
|
||||
|
||||
' Prüfen ob ALLE referenzierten Spalten einen Wert haben
|
||||
Dim allValuesPresent As Boolean = True
|
||||
For Each refCol In oDefinition.ReferencedColumns
|
||||
Dim cellVal = oView.GetRowCellValue(oRowHandle, refCol)
|
||||
If cellVal Is Nothing OrElse IsDBNull(cellVal) Then
|
||||
_Logger.Debug("[FormulaSql] Column [{0}] has NULL value – skipping SQL for [{1}]", refCol, oSqlColumnName)
|
||||
allValuesPresent = False
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
|
||||
If Not allValuesPresent Then Continue For
|
||||
|
||||
' Pattern ersetzen und SQL ausführen
|
||||
Dim resolvedSql = ResolveSqlTemplate(oDefinition.SqlTemplate, oView, oRowHandle)
|
||||
_Logger.Debug("[FormulaSql] Executing SQL for [{0}]: [{1}]", oSqlColumnName, resolvedSql)
|
||||
|
||||
Try
|
||||
Dim oResultTable As DataTable = DatabaseFallback.GetDatatable(
|
||||
New GetDatatableOptions(resolvedSql, DatabaseType.ECM))
|
||||
|
||||
If oResultTable IsNot Nothing AndAlso oResultTable.Rows.Count > 0 Then
|
||||
Dim oResult = oResultTable.Rows(0).Item(0)
|
||||
_Logger.Debug("[FormulaSql] Result for [{0}]: [{1}]", oSqlColumnName, oResult)
|
||||
|
||||
_isRefreshingFormula = True
|
||||
Try
|
||||
oView.SetRowCellValue(oRowHandle, oSqlColumnName,
|
||||
If(oResult Is Nothing OrElse IsDBNull(oResult), DBNull.Value, oResult))
|
||||
oView.RefreshRowCell(oRowHandle, oView.Columns.ColumnByFieldName(oSqlColumnName))
|
||||
Finally
|
||||
_isRefreshingFormula = False
|
||||
End Try
|
||||
Else
|
||||
_Logger.Warn("[FormulaSql] No result returned for [{0}]", oSqlColumnName)
|
||||
End If
|
||||
|
||||
Catch sqlEx As Exception
|
||||
_Logger.Warn("⚠️ [FormulaSql] SQL execution failed for [{0}]: {1}", oSqlColumnName, sqlEx.Message)
|
||||
_Logger.Error(sqlEx)
|
||||
End Try
|
||||
Next
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
End Sub))
|
||||
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
End Sub
|
||||
End Sub
|
||||
Private Sub HandleInheritedColumnValue(pView As GridView, pColumnDefinition As DataTable, pArgs As CellValueChangedEventArgs)
|
||||
If pView Is Nothing OrElse pArgs Is Nothing OrElse pArgs.Column Is Nothing Then
|
||||
Return
|
||||
End If
|
||||
' *** NEU: Bei Formel-Refresh überspringen ***
|
||||
If _isRefreshingFormula Then
|
||||
_Logger.Debug("Skipping HandleInheritedColumnValue during formula refresh.")
|
||||
Return
|
||||
End If
|
||||
|
||||
If isApplyingInheritedValue OrElse pArgs.RowHandle = DevExpress.XtraGrid.GridControl.InvalidRowHandle Then
|
||||
Return
|
||||
@@ -579,16 +1316,7 @@ Namespace ControlCreator
|
||||
|
||||
Return entry
|
||||
End Function
|
||||
Private Sub View_CustomColumnDisplayText(ByVal eSender As Object, ByVal e As CustomColumnDisplayTextEventArgs)
|
||||
If IsNothing(e.Value) Then
|
||||
Exit Sub
|
||||
End If
|
||||
Dim view As GridView = eSender
|
||||
'Dim view As GridView = TryCast(GridView1, GridView)
|
||||
If e.Column.FieldName = "SpalteCurrency" Then
|
||||
' e.DisplayText = e.Value.ToString().Replace("€", "CHF")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub View_PopupMenuShowing(sender As Object, e As PopupMenuShowingEventArgs)
|
||||
Dim view As GridView = TryCast(sender, GridView)
|
||||
Dim oFocusedColumn As GridColumn = view.FocusedColumn
|
||||
@@ -642,28 +1370,12 @@ Namespace ControlCreator
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub View_ShowingEditor(sender As Object, e As CancelEventArgs)
|
||||
Dim view As GridView = TryCast(sender, GridView)
|
||||
_Logger.Debug("Showing editor.")
|
||||
If view.IsNewItemRow(view.FocusedRowHandle) AndAlso Not newRowModified Then
|
||||
_Logger.Debug("Adding new row.")
|
||||
view.AddNewRow()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub View_ShownEditor(sender As Object, e As EventArgs)
|
||||
Dim view As GridView = TryCast(sender, GridView)
|
||||
If view.IsNewItemRow(view.FocusedRowHandle) Then
|
||||
_Logger.Debug("Attaching Modified Handler.")
|
||||
AddHandler view.ActiveEditor.Modified, Sub()
|
||||
_Logger.Debug("Row was modified.")
|
||||
newRowModified = True
|
||||
End Sub
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub View_ValidateRow(sender As Object, e As ValidateRowEventArgs)
|
||||
Dim view As GridView = TryCast(sender, GridView)
|
||||
' RowHandle für RowUpdated merken, bevor er sich nach dem Commit ändert
|
||||
|
||||
If view.IsNewItemRow(e.RowHandle) AndAlso Not newRowModified Then
|
||||
_Logger.Debug("Deleting unused row")
|
||||
view.DeleteRow(e.RowHandle)
|
||||
|
||||
790
app/TaskFlow/DD_DMSLiteDataSet.Designer.vb
generated
790
app/TaskFlow/DD_DMSLiteDataSet.Designer.vb
generated
File diff suppressed because it is too large
Load Diff
@@ -29,6 +29,9 @@ Partial Public Class DD_DMSLiteDataSet
|
||||
End Class
|
||||
|
||||
Namespace DD_DMSLiteDataSetTableAdapters
|
||||
Partial Public Class VWPM_CHART_INVOICE_MONITORTableAdapter
|
||||
End Class
|
||||
|
||||
Partial Public Class TBPM_PROFILETableAdapter
|
||||
Private Sub TBPM_PROFILETableAdapter_Disposed(sender As Object, e As EventArgs) Handles Me.Disposed
|
||||
|
||||
@@ -41,3 +44,13 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
Partial Public Class TBPM_PROFILE_INDEXETableAdapter
|
||||
End Class
|
||||
End Namespace
|
||||
|
||||
Namespace DD_DMSLiteDataSetTableAdapters
|
||||
Partial Public Class VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter
|
||||
End Class
|
||||
End Namespace
|
||||
|
||||
Namespace DD_DMSLiteDataSetTableAdapters
|
||||
Partial Public Class VWPM_CHART_TOP5TableAdapter
|
||||
End Class
|
||||
End Namespace
|
||||
|
||||
@@ -56,32 +56,24 @@
|
||||
<TableUISetting Name="TBPM_CONTROL_TABLE">
|
||||
<ColumnUISettings>
|
||||
<ColumnUISetting Name="ADDED_WHO">
|
||||
<ControlSettings>
|
||||
<ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form">
|
||||
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</ControlSetting>
|
||||
</ControlSettings>
|
||||
</ControlSetting></ControlSettings>
|
||||
</ColumnUISetting>
|
||||
<ColumnUISetting Name="ADDED_WHEN">
|
||||
<ControlSettings>
|
||||
<ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form">
|
||||
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</ControlSetting>
|
||||
</ControlSettings>
|
||||
</ControlSetting></ControlSettings>
|
||||
</ColumnUISetting>
|
||||
<ColumnUISetting Name="CHANGED_WHEN">
|
||||
<ControlSettings>
|
||||
<ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form">
|
||||
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</ControlSetting>
|
||||
</ControlSettings>
|
||||
</ControlSetting></ControlSettings>
|
||||
</ColumnUISetting>
|
||||
<ColumnUISetting Name="TYPE_COLUMN">
|
||||
<ControlSettings>
|
||||
<ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form">
|
||||
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||
<BindableControlInfo Name="ComboBox" Type="System.Windows.Forms.ComboBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</ControlSetting>
|
||||
</ControlSettings>
|
||||
</ControlSetting></ControlSettings>
|
||||
</ColumnUISetting>
|
||||
</ColumnUISettings>
|
||||
</TableUISetting>
|
||||
|
||||
@@ -1319,7 +1319,7 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
|
||||
<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,
|
||||
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_EXPRESSION, FORMULA_SQL
|
||||
FROM TBPM_CONTROL_TABLE
|
||||
WHERE (CONTROL_ID = @CONTROL_ID)</CommandText>
|
||||
<Parameters>
|
||||
@@ -1334,7 +1334,7 @@ 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,
|
||||
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,
|
||||
LU_CAPTION = @LU_CAPTION, FORMULA_EXPRESSION = @FORMULA_EXPRESSION
|
||||
LU_CAPTION = @LU_CAPTION, FORMULA_EXPRESSION = @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA_SQL
|
||||
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>
|
||||
<Parameters>
|
||||
@@ -1362,6 +1362,7 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
|
||||
<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="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="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>
|
||||
@@ -1396,6 +1397,7 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
|
||||
<Mapping SourceColumn="LU_CAPTION" DataSetColumn="LU_CAPTION" />
|
||||
<Mapping SourceColumn="INHERIT_VALUE" DataSetColumn="INHERIT_VALUE" />
|
||||
<Mapping SourceColumn="FORMULA_EXPRESSION" DataSetColumn="FORMULA_EXPRESSION" />
|
||||
<Mapping SourceColumn="FORMULA_SQL" DataSetColumn="FORMULA_SQL" />
|
||||
</Mappings>
|
||||
<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">
|
||||
@@ -1405,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,
|
||||
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,
|
||||
INHERIT_VALUE = @INHERIT_VALUE, FORMULA_EXPRESSION = @FORMULA_EXPRESSION
|
||||
INHERIT_VALUE = @INHERIT_VALUE, FORMULA_EXPRESSION = @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA_SQL
|
||||
WHERE (GUID = @Original_GUID)</CommandText>
|
||||
<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" />
|
||||
@@ -1426,6 +1428,7 @@ WHERE (GUID = @Original_GUID)</CommandText>
|
||||
<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="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" />
|
||||
</Parameters>
|
||||
</DbCommand>
|
||||
@@ -1458,7 +1461,7 @@ FROM TBPM_CONTROL_TABLE</CommandText>
|
||||
<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,
|
||||
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_EXPRESSION, FORMULA_SQL
|
||||
FROM TBPM_CONTROL_TABLE
|
||||
WHERE (GUID = @GUID)</CommandText>
|
||||
<Parameters>
|
||||
@@ -1798,13 +1801,16 @@ FROM VWPM_CHART_INVOICE_MONITOR</CommandText>
|
||||
</TableAdapter>
|
||||
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter" GeneratorDataComponentClassName="VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter" Name="VWPM_CHART_INVOICE_MONITOR_SERIES" UserDataComponentName="VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter">
|
||||
<MainSource>
|
||||
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM_TEST.dbo.VWPM_CHART_INVOICE_MONITOR_SERIES" DbObjectType="View" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
|
||||
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM.dbo.VWPM_CHART_INVOICE_MONITOR_SERIES" DbObjectType="View" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="false" UserGetMethodName="GetData" UserSourceName="Fill">
|
||||
<SelectCommand>
|
||||
<DbCommand CommandType="Text" ModifiedByUser="true">
|
||||
<CommandText>SELECT Title, Anzahl, NettoSumme, SEQ
|
||||
FROM VWPM_CHART_INVOICE_MONITOR_SERIES
|
||||
WHERE (COCKPIT_CHART_ID = @COCKPIT_CHART_ID)
|
||||
ORDER BY SEQ</CommandText>
|
||||
<Parameters />
|
||||
<Parameters>
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="COCKPIT_CHART_ID" ColumnName="COCKPIT_CHART_ID" DataSourceName="DD_ECM.dbo.VWPM_CHART_INVOICE_MONITOR_SERIES" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@COCKPIT_CHART_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="COCKPIT_CHART_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
</Parameters>
|
||||
</DbCommand>
|
||||
</SelectCommand>
|
||||
</DbSource>
|
||||
@@ -1817,27 +1823,6 @@ ORDER BY SEQ</CommandText>
|
||||
</Mappings>
|
||||
<Sources />
|
||||
</TableAdapter>
|
||||
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="VWPM_CHART_TOP5TableAdapter" GeneratorDataComponentClassName="VWPM_CHART_TOP5TableAdapter" Name="VWPM_CHART_TOP5" UserDataComponentName="VWPM_CHART_TOP5TableAdapter">
|
||||
<MainSource>
|
||||
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM_TEST.dbo.VWPM_CHART_TOP5" DbObjectType="View" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
|
||||
<SelectCommand>
|
||||
<DbCommand CommandType="Text" ModifiedByUser="true">
|
||||
<CommandText>SELECT KRED_NAME, ANZ_BELEG, Netto, Skonto
|
||||
FROM VWPM_CHART_TOP5
|
||||
ORDER BY Netto DESC</CommandText>
|
||||
<Parameters />
|
||||
</DbCommand>
|
||||
</SelectCommand>
|
||||
</DbSource>
|
||||
</MainSource>
|
||||
<Mappings>
|
||||
<Mapping SourceColumn="KRED_NAME" DataSetColumn="KRED_NAME" />
|
||||
<Mapping SourceColumn="ANZ_BELEG" DataSetColumn="ANZ_BELEG" />
|
||||
<Mapping SourceColumn="Netto" DataSetColumn="Netto" />
|
||||
<Mapping SourceColumn="Skonto" DataSetColumn="Skonto" />
|
||||
</Mappings>
|
||||
<Sources />
|
||||
</TableAdapter>
|
||||
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TBPM_PROFILETableAdapter" GeneratorDataComponentClassName="TBPM_PROFILETableAdapter" Name="TBPM_PROFILE" UserDataComponentName="TBPM_PROFILETableAdapter">
|
||||
<MainSource>
|
||||
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM.dbo.TBPM_PROFILE" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
|
||||
@@ -2812,13 +2797,20 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
|
||||
</xs:simpleType>
|
||||
</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="FORMULA_EXPRESSION" msprop:Generator_ColumnPropNameInTable="FORMULA_EXPRESSIONColumn" msprop:Generator_ColumnPropNameInRow="FORMULA_EXPRESSION" msprop:Generator_UserColumnName="FORMULA_EXPRESSION" msprop:Generator_ColumnVarNameInTable="columnFORMULA_EXPRESSION">
|
||||
<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_ColumnPropNameInTable="FORMULA_SQLColumn" msprop:Generator_ColumnPropNameInRow="FORMULA_SQL" msprop:Generator_UserColumnName="FORMULA_SQL" msprop:Generator_ColumnVarNameInTable="columnFORMULA_SQL" default="">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="3000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
@@ -3186,22 +3178,6 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="VWPM_CHART_TOP5" msprop:Generator_RowEvHandlerName="VWPM_CHART_TOP5RowChangeEventHandler" msprop:Generator_RowDeletedName="VWPM_CHART_TOP5RowDeleted" msprop:Generator_RowDeletingName="VWPM_CHART_TOP5RowDeleting" msprop:Generator_RowEvArgName="VWPM_CHART_TOP5RowChangeEvent" msprop:Generator_TablePropName="VWPM_CHART_TOP5" msprop:Generator_RowChangedName="VWPM_CHART_TOP5RowChanged" msprop:Generator_UserTableName="VWPM_CHART_TOP5" msprop:Generator_RowChangingName="VWPM_CHART_TOP5RowChanging" msprop:Generator_RowClassName="VWPM_CHART_TOP5Row" msprop:Generator_TableClassName="VWPM_CHART_TOP5DataTable" msprop:Generator_TableVarName="tableVWPM_CHART_TOP5">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="KRED_NAME" msprop:Generator_ColumnPropNameInTable="KRED_NAMEColumn" msprop:Generator_ColumnPropNameInRow="KRED_NAME" msprop:Generator_UserColumnName="KRED_NAME" msprop:Generator_ColumnVarNameInTable="columnKRED_NAME">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="250" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="ANZ_BELEG" msprop:Generator_ColumnPropNameInTable="ANZ_BELEGColumn" msprop:Generator_ColumnPropNameInRow="ANZ_BELEG" msprop:Generator_UserColumnName="ANZ_BELEG" msprop:Generator_ColumnVarNameInTable="columnANZ_BELEG" type="xs:short" />
|
||||
<xs:element name="Netto" msprop:Generator_ColumnPropNameInTable="NettoColumn" msprop:Generator_ColumnPropNameInRow="Netto" msprop:Generator_UserColumnName="Netto" msprop:Generator_ColumnVarNameInTable="columnNetto" type="xs:decimal" minOccurs="0" />
|
||||
<xs:element name="Skonto" msprop:Generator_ColumnPropNameInTable="SkontoColumn" msprop:Generator_ColumnPropNameInRow="Skonto" msprop:Generator_UserColumnName="Skonto" msprop:Generator_ColumnVarNameInTable="columnSkonto" type="xs:decimal" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="TBPM_PROFILE" msprop:Generator_RowEvHandlerName="TBPM_PROFILERowChangeEventHandler" msprop:Generator_RowDeletedName="TBPM_PROFILERowDeleted" msprop:Generator_RowDeletingName="TBPM_PROFILERowDeleting" msprop:Generator_RowEvArgName="TBPM_PROFILERowChangeEvent" msprop:Generator_TablePropName="TBPM_PROFILE" msprop:Generator_RowChangedName="TBPM_PROFILERowChanged" msprop:Generator_UserTableName="TBPM_PROFILE" msprop:Generator_RowChangingName="TBPM_PROFILERowChanging" msprop:Generator_RowClassName="TBPM_PROFILERow" msprop:Generator_TableClassName="TBPM_PROFILEDataTable" msprop:Generator_TableVarName="tableTBPM_PROFILE">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
@@ -3405,9 +3381,9 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
|
||||
</xs:element>
|
||||
<xs:annotation>
|
||||
<xs:appinfo>
|
||||
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL1" msdata:parent="TBPM_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL1" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL1" msprop:Generator_ParentPropName="TBPM_PROFILE_CONTROLSRow" />
|
||||
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL" msdata:parent="TBWH_CHECK_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBWH_CHECK_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_ParentPropName="TBWH_CHECK_PROFILE_CONTROLSRow" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL" />
|
||||
<msdata:Relationship name="FK_TBPM_PROFILE_CONTROLS_PROFILE" msdata:parent="TBPM_PROFILE" msdata:child="TBPM_PROFILE_CONTROLS" msdata:parentkey="GUID" msdata:childkey="PROFIL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE" msprop:Generator_UserChildTable="TBPM_PROFILE_CONTROLS" msprop:Generator_RelationVarName="relationFK_TBPM_PROFILE_CONTROLS_PROFILE" msprop:Generator_ChildPropName="GetTBPM_PROFILE_CONTROLSRows" msprop:Generator_ParentPropName="TBPM_PROFILERow" msprop:Generator_UserRelationName="FK_TBPM_PROFILE_CONTROLS_PROFILE" />
|
||||
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL1" msdata:parent="TBPM_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL1" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_ParentPropName="TBPM_PROFILE_CONTROLSRow" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL1" />
|
||||
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL" msdata:parent="TBWH_CHECK_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBWH_CHECK_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL" msprop:Generator_ParentPropName="TBWH_CHECK_PROFILE_CONTROLSRow" />
|
||||
<msdata:Relationship name="FK_TBPM_PROFILE_CONTROLS_PROFILE" msdata:parent="TBPM_PROFILE" msdata:child="TBPM_PROFILE_CONTROLS" msdata:parentkey="GUID" msdata:childkey="PROFIL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE" msprop:Generator_UserChildTable="TBPM_PROFILE_CONTROLS" msprop:Generator_RelationVarName="relationFK_TBPM_PROFILE_CONTROLS_PROFILE" msprop:Generator_ChildPropName="GetTBPM_PROFILE_CONTROLSRows" msprop:Generator_UserRelationName="FK_TBPM_PROFILE_CONTROLS_PROFILE" msprop:Generator_ParentPropName="TBPM_PROFILERow" />
|
||||
</xs:appinfo>
|
||||
</xs:annotation>
|
||||
</xs:schema>
|
||||
@@ -4,32 +4,31 @@
|
||||
Changes to this file may cause incorrect behavior and will be lost if
|
||||
the code is regenerated.
|
||||
</autogenerated>-->
|
||||
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="472" ViewPortY="129" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
||||
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="472" ViewPortY="-96" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
||||
<Shapes>
|
||||
<Shape ID="DesignTable:TBPM_PROFILE_FINAL_INDEXING" ZOrder="14" X="1688" Y="-74" Height="324" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" />
|
||||
<Shape ID="DesignTable:TBPM_KONFIGURATION" ZOrder="2" X="-17" Y="232" Height="262" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="97" />
|
||||
<Shape ID="DesignTable:TBDD_USER" ZOrder="18" X="608" Y="444" Height="305" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||
<Shape ID="DesignTable:TBPM_TYPE" ZOrder="19" X="17" Y="113" Height="203" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
|
||||
<Shape ID="DesignTable:TBPM_ERROR_LOG" ZOrder="21" X="443" Y="-87" Height="111" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="21" />
|
||||
<Shape ID="DesignTable:TBDD_CONNECTION" ZOrder="4" X="408" Y="-78" Height="379" Width="178" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="273" />
|
||||
<Shape ID="DesignTable:TBPROFILE_USER" ZOrder="15" X="509" Y="-80" Height="267" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
|
||||
<Shape ID="DesignTable:TBPM_PROFILE_FILES" ZOrder="3" X="1391" Y="-70" Height="229" Width="268" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
|
||||
<Shape ID="DesignTable:TBWH_CHECK_PROFILE_CONTROLS" ZOrder="23" X="0" Y="-72" Height="168" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="78" />
|
||||
<Shape ID="DesignTable:TBPM_KONFIGURATION" ZOrder="4" X="-17" Y="232" Height="262" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="97" />
|
||||
<Shape ID="DesignTable:TBDD_USER" ZOrder="17" X="608" Y="444" Height="305" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||
<Shape ID="DesignTable:TBPM_TYPE" ZOrder="18" X="17" Y="113" Height="203" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
|
||||
<Shape ID="DesignTable:TBPM_ERROR_LOG" ZOrder="20" X="443" Y="-87" Height="111" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="21" />
|
||||
<Shape ID="DesignTable:TBDD_CONNECTION" ZOrder="6" X="408" Y="-78" Height="379" Width="178" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="273" />
|
||||
<Shape ID="DesignTable:TBPROFILE_USER" ZOrder="2" X="1041" Y="-53" Height="267" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
|
||||
<Shape ID="DesignTable:TBPM_PROFILE_FILES" ZOrder="5" X="1391" Y="-70" Height="229" Width="268" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
|
||||
<Shape ID="DesignTable:TBWH_CHECK_PROFILE_CONTROLS" ZOrder="22" X="0" Y="-72" Height="168" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="78" />
|
||||
<Shape ID="DesignTable:TBPM_PROFILE_CONTROLS" ZOrder="12" X="947" Y="404" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="24" OldDataTableHeight="0" SplitterPosition="254" />
|
||||
<Shape ID="DesignTable:TBPM_CONTROL_TABLE" ZOrder="1" X="1297" Y="391" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="24" OldDataTableHeight="0" SplitterPosition="254" />
|
||||
<Shape ID="DesignTable:TBDD_GROUPS" ZOrder="17" X="19" Y="320" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||
<Shape ID="DesignTable:TBPM_CONTROL_TABLE" ZOrder="3" X="1297" Y="391" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="24" OldDataTableHeight="0" SplitterPosition="254" />
|
||||
<Shape ID="DesignTable:TBDD_GROUPS" ZOrder="16" X="19" Y="320" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||
<Shape ID="DesignTable:TBPROFILE_GROUP" ZOrder="13" X="1054" Y="47" Height="286" Width="277" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
|
||||
<Shape ID="DesignTable:FNPM_GET_FREE_USER_FOR_PROFILE" ZOrder="16" X="807" Y="155" Height="229" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
|
||||
<Shape ID="DesignTable:TBDD_EMAIL_TEMPLATE" ZOrder="7" X="1645" Y="598" Height="267" Width="287" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
|
||||
<Shape ID="DesignTable:FNPM_GET_FREE_USER_FOR_PROFILE" ZOrder="15" X="807" Y="155" Height="229" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
|
||||
<Shape ID="DesignTable:TBDD_EMAIL_TEMPLATE" ZOrder="9" X="1645" Y="598" Height="267" Width="287" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
|
||||
<Shape ID="DesignTable:TBDD_GUI_LANGUAGE_PHRASE" ZOrder="11" X="1427" Y="251" Height="305" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
|
||||
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR" ZOrder="10" X="1828" Y="457" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR_SERIES" ZOrder="9" X="1903" Y="311" Height="153" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
|
||||
<Shape ID="DesignTable:VWPM_CHART_TOP5" ZOrder="8" X="1302" Y="15" Height="153" Width="267" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
|
||||
<Shape ID="DesignTable:TBPM_PROFILE" ZOrder="6" X="862" Y="-66" Height="305" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
|
||||
<Shape ID="DesignTable:TBWH_CONNECTION" ZOrder="24" X="625" Y="114" Height="276" Width="189" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="272" />
|
||||
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR" ZOrder="1" X="1828" Y="457" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||
<Shape ID="DesignTable:VWPM_CHART_INVOICE_MONITOR_SERIES" ZOrder="10" X="1908" Y="274" Height="153" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
|
||||
<Shape ID="DesignTable:TBPM_PROFILE" ZOrder="8" X="862" Y="-66" Height="305" Width="266" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
|
||||
<Shape ID="DesignTable:TBWH_CONNECTION" ZOrder="23" X="625" Y="114" Height="276" Width="189" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="272" />
|
||||
</Shapes>
|
||||
<Connectors>
|
||||
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL1" ZOrder="22" LineWidth="11">
|
||||
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL1" ZOrder="21" LineWidth="11">
|
||||
<RoutePoints>
|
||||
<Point>
|
||||
<X>1247</X>
|
||||
@@ -41,7 +40,7 @@
|
||||
</Point>
|
||||
</RoutePoints>
|
||||
</Connector>
|
||||
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL" ZOrder="20" LineWidth="11">
|
||||
<Connector ID="DesignRelation:FK_TBPM_CONTROL_TABLE_CONTROL" ZOrder="19" LineWidth="11">
|
||||
<RoutePoints>
|
||||
<Point>
|
||||
<X>141</X>
|
||||
@@ -57,7 +56,7 @@
|
||||
</Point>
|
||||
</RoutePoints>
|
||||
</Connector>
|
||||
<Connector ID="DesignRelation:FK_TBPM_PROFILE_CONTROLS_PROFILE" ZOrder="5" LineWidth="11">
|
||||
<Connector ID="DesignRelation:FK_TBPM_PROFILE_CONTROLS_PROFILE" ZOrder="7" LineWidth="11">
|
||||
<RoutePoints>
|
||||
<Point>
|
||||
<X>965</X>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Imports System.ComponentModel
|
||||
Imports System.Drawing.Design
|
||||
Imports System.Globalization
|
||||
Imports FormsUtils
|
||||
Imports FormsUtils 'FormsUtils.dll als Fremdbibliothek für die Properties
|
||||
|
||||
Module ModuleFinalIndexProperties
|
||||
<TypeConverter(GetType(PropertiesDeluxeTypeConverter))>
|
||||
|
||||
@@ -4,6 +4,9 @@
|
||||
Public Property CONNECTION_STRING_ECM As String = ""
|
||||
Public Property CONNECTION_STRING_IDB As String = ""
|
||||
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 OPERATION_MODE_FS As String = "PURE_WM"
|
||||
|
||||
@@ -19,6 +19,7 @@ Module ModuleRuntimeVariables
|
||||
' Diese Werte müssen später zur Laufzeit geladen werden
|
||||
Public Property ActiveWorkflowType As Integer
|
||||
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_CONFIG 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 DT_FILTERED_PROFILE_SEARCHES_DOC As DataTable
|
||||
|
||||
Public Property BASEDATA_DT_PROFILES_SEARCHES_SQL As DataTable
|
||||
Public Property BASEDATA_DT_PROFILE_SEARCHES_SQL As DataTable
|
||||
Public Property BASEDATA_DT_PROFILES_SEARCHES_DATA As DataTable
|
||||
Public Property DT_FILTERED_PROFILE_SEARCHES_DATA As DataTable
|
||||
Public Property BASEDATA_DT_VW_PROFILE_USER As DataTable
|
||||
|
||||
Public Property BASEDATA_TBDD_COLUMNS_FORMAT As DataTable
|
||||
@@ -82,6 +83,10 @@ Module ModuleRuntimeVariables
|
||||
Public Property USER_USERNAME_ORG As String = ""
|
||||
Public Property USER_GHOST_MODE_ACTIVE As Boolean = False
|
||||
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 Property ColumnName As String = ""
|
||||
Public Property Count As Integer
|
||||
@@ -145,23 +150,20 @@ Module ModuleRuntimeVariables
|
||||
|
||||
|
||||
Public Property CURRENT_DT_MASS_CHANGE_DOCS As DataTable
|
||||
|
||||
Public Property CURRENT_DT_FINAL_INDEXING As DataTable
|
||||
Public Property CURRENT_DT_PROFILES As DataTable
|
||||
Public Property CURRENT_DT_PROFILE_LANGUAGE As DataTable
|
||||
Public Property CURRENT_DT_PROFILE As DataTable
|
||||
Public Property CURRENT_CONTROL_NAME_LIST As New List(Of String)
|
||||
|
||||
|
||||
Public Property COCKPIT_MONITOR_ID As Integer = 0
|
||||
Public Property COCKPIT_CHART_ID As Integer
|
||||
Public Property DTVWCONTROLS_INDEX As DataTable
|
||||
Public Property DTVWCONTROL_INDEX As DataTable
|
||||
|
||||
Public Property DTCONTROLS_WITH_SQL As DataTable
|
||||
Public Property DTTBPM_PROFILE_FINAL_INDEXING As DataTable
|
||||
Public Property CURRENT_CONTROL_ID As Integer
|
||||
|
||||
Public Property errormessage As String
|
||||
|
||||
Public Property WINDREAM As ClassPMWindream
|
||||
Public Property WINDREAM_MOD As Windream
|
||||
Public Property WINDREAM_ALLG As ClassWindream_allgemein
|
||||
|
||||
@@ -13,7 +13,7 @@ Imports System.Runtime.InteropServices
|
||||
<Assembly: AssemblyDescription("")>
|
||||
<Assembly: AssemblyCompany("Digital Data")>
|
||||
<Assembly: AssemblyProduct("taskFLOW")>
|
||||
<Assembly: AssemblyCopyright("Copyright © Digital Data 2025")>
|
||||
<Assembly: AssemblyCopyright("Digital Data 2026")>
|
||||
<Assembly: AssemblyTrademark("")>
|
||||
|
||||
<Assembly: ComVisible(False)>
|
||||
@@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices
|
||||
' übernehmen, indem Sie "*" eingeben:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("2.8.2.0")>
|
||||
<Assembly: AssemblyVersion("3.0.0.0")>
|
||||
<Assembly: AssemblyFileVersion("1.0.0.0")>
|
||||
<Assembly: NeutralResourcesLanguage("")>
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v21.2.UI, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraVerticalGrid.PropertyGridControl, DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.LookUpEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraDataLayout.DataLayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraDataLayout.DataLayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraVerticalGrid.PropertyGridControl, DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraTreeList.TreeList, DevExpress.XtraTreeList.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v21.2.UI, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||
|
||||
138
app/TaskFlow/Oracle.DataAccess.Common.Configuration.Section.xsd
Normal file
138
app/TaskFlow/Oracle.DataAccess.Common.Configuration.Section.xsd
Normal 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>
|
||||
@@ -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>
|
||||
@@ -151,9 +151,9 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
</Reference>
|
||||
<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>
|
||||
<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 Include="DigitalData.Controls.LookupGrid">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDMonorepo\Controls.LookupGrid\bin\Debug\DigitalData.Controls.LookupGrid.dll</HintPath>
|
||||
@@ -173,23 +173,18 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.Database, Version=2.3.6.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<Reference Include="DigitalData.Modules.Database">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
|
||||
</Reference>
|
||||
<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 Include="DigitalData.Modules.Encryption, Version=1.3.1.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Encryption\bin\Debug\DigitalData.Modules.Encryption.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.Interfaces, Version=2.3.7.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<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 Include="DigitalData.Modules.Interfaces">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.Logging, Version=2.6.5.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
@@ -202,15 +197,14 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.Windream, Version=1.9.6.2, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<Reference Include="DigitalData.Modules.Windream">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Windream\bin\Debug\DigitalData.Modules.Windream.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.ZooFlow">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\ZooFlow\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DLLLicenseManager">
|
||||
<HintPath>P:\Visual Studio Projekte\Bibliotheken\DLLLicenseManager.dll</HintPath>
|
||||
<HintPath>M:\Bibliotheken\Digital Data\DD_Modules\DLLLicenseManager.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
@@ -231,117 +225,109 @@
|
||||
<HintPath>..\packages\FirebirdSql.Data.FirebirdClient.7.5.0\lib\net452\FirebirdSql.Data.FirebirdClient.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="FormsUtils">
|
||||
<HintPath>P:\Visual Studio Projekte\Bibliotheken\FormsUtils.dll</HintPath>
|
||||
<HintPath>M:\Bibliotheken\3rdParty\FormsUtils.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
<Private>True</Private>
|
||||
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
<Private>True</Private>
|
||||
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
<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>
|
||||
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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 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>
|
||||
@@ -356,15 +342,6 @@
|
||||
<Reference Include="Microsoft.IdentityModel.Abstractions, Version=6.22.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.IdentityModel.Abstractions.6.22.0\lib\net461\Microsoft.IdentityModel.Abstractions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NativeSDK.Exceptions, Version=14.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">
|
||||
<HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
@@ -377,11 +354,8 @@
|
||||
<Reference Include="OpenMcdf, Version=2.4.1.0, Culture=neutral, PublicKeyToken=fdbb1629d7c00800, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\OpenMcdf.2.4.1\lib\net40\OpenMcdf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Oracle.ManagedDataAccess">
|
||||
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Oracle.ManagedDataAccess.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PdfSharp-gdi">
|
||||
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\PdfSharp-gdi.dll</HintPath>
|
||||
<Reference Include="Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Oracle.ManagedDataAccess.21.15.0\lib\net462\Oracle.ManagedDataAccess.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
@@ -392,9 +366,6 @@
|
||||
<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>
|
||||
</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.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>
|
||||
@@ -488,7 +459,6 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="ApplicationEvents.vb" />
|
||||
<Compile Include="ClassAnnotation.vb" />
|
||||
<Compile Include="ClassConfig.vb" />
|
||||
<Compile Include="ClassConstants.vb" />
|
||||
<Compile Include="ClassControlCreator.vb" />
|
||||
@@ -1099,6 +1069,12 @@
|
||||
</None>
|
||||
</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="Resources\syncreon.png" />
|
||||
</ItemGroup>
|
||||
@@ -1280,6 +1256,7 @@
|
||||
<None Include="Resources\PM_mit_slogan.JPG" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="logtaskflow.txt" />
|
||||
<None Include="Changelog.md" />
|
||||
<Content Include="DataColumnExpression.txt" />
|
||||
<Content Include="DD_Icons_ICO_PMANAGER_48px.ico" />
|
||||
@@ -1389,10 +1366,10 @@
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.props'))" />
|
||||
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.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>
|
||||
<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.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
|
||||
@@ -92,7 +92,7 @@ Namespace My.Resources
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Sucht eine lokalisierte Zeichenfolge, die Aktuell keine Workflowdaten vorhanden! {0} ähnelt.
|
||||
''' Sucht eine lokalisierte Zeichenfolge, die Aktuell keine Workflowdaten vorhanden - {0} ähnelt.
|
||||
'''</summary>
|
||||
Friend Shared ReadOnly Property Aktuell_keine_Workflowdaten_vorhanden___0_() As String
|
||||
Get
|
||||
|
||||
@@ -120,36 +120,27 @@
|
||||
<data name="Achtung:" xml:space="preserve">
|
||||
<value>Attention:</value>
|
||||
</data>
|
||||
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
||||
<value>Currently no workflow data available - {0}</value>
|
||||
</data>
|
||||
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
||||
<value>Current license has expired or is invalid!</value>
|
||||
</data>
|
||||
<data name="Anzahl angemeldete Benutzer: {0}" xml:space="preserve">
|
||||
<value>Logged in users: {0}</value>
|
||||
</data>
|
||||
<data name="Anzahl Lizenzen: {0}" xml:space="preserve">
|
||||
<value>Number of licenses: {0}</value>
|
||||
</data>
|
||||
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
|
||||
<value>Please close the currently open workflow!</value>
|
||||
</data>
|
||||
<data name="Größer" xml:space="preserve">
|
||||
<value>Bigger</value>
|
||||
</data>
|
||||
<data name="Kleiner" xml:space="preserve">
|
||||
<value>Smaller</value>
|
||||
</data>
|
||||
<data name="Normal" xml:space="preserve">
|
||||
<value>Normal</value>
|
||||
</data>
|
||||
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
||||
<value>Currently no workflow data available! {0}</value>
|
||||
</data>
|
||||
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
||||
<value>Current license has expired or is invalid!</value>
|
||||
</data>
|
||||
<data name="Bitte konfigurieren Sie eine Datenbankverbindung!" xml:space="preserve">
|
||||
<value>Please configure a database connection!</value>
|
||||
</data>
|
||||
<data name="Bitte kontaktieren Sie Ihren Administrator!" xml:space="preserve">
|
||||
<value>Please contact your administrator!</value>
|
||||
</data>
|
||||
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
|
||||
<value>Please close the currently open workflow!</value>
|
||||
</data>
|
||||
<data name="Bitte wählen Sie ein Profil aus!" xml:space="preserve">
|
||||
<value>Please select a profile!</value>
|
||||
</data>
|
||||
@@ -177,9 +168,18 @@
|
||||
<data name="Ghost Modus ({0}) deaktivieren" xml:space="preserve">
|
||||
<value>Deactivate ({0}) Ghost Mode</value>
|
||||
</data>
|
||||
<data name="Größer" xml:space="preserve">
|
||||
<value>Bigger</value>
|
||||
</data>
|
||||
<data name="HINWEIS: Debug Modus ist eingeschaltet!" xml:space="preserve">
|
||||
<value>NOTE: Debug mode is switched on!</value>
|
||||
</data>
|
||||
<data name="IDB Aktiv" xml:space="preserve">
|
||||
<value>IDB Active</value>
|
||||
</data>
|
||||
<data name="Kleiner" xml:space="preserve">
|
||||
<value>Smaller</value>
|
||||
</data>
|
||||
<data name="Letzte Synchronisation: {0}" xml:space="preserve">
|
||||
<value>Last synchronization: {0}</value>
|
||||
</data>
|
||||
@@ -189,6 +189,9 @@
|
||||
<data name="Massenabschluss konnte nicht ausgeführt werden, weil windream nicht initialisiert werden konnte!" xml:space="preserve">
|
||||
<value>Mass completion could not be executed because windream could not be initialised!</value>
|
||||
</data>
|
||||
<data name="Normal" xml:space="preserve">
|
||||
<value>Normal</value>
|
||||
</data>
|
||||
<data name="Nächste Aktivitätsüberprüfung: {0} {1}" xml:space="preserve">
|
||||
<value>Next activity check: {0} {1}</value>
|
||||
</data>
|
||||
@@ -213,7 +216,4 @@
|
||||
<data name="{0} Vorgänge" xml:space="preserve">
|
||||
<value>{0} Processes</value>
|
||||
</data>
|
||||
<data name="IDB Aktiv" xml:space="preserve">
|
||||
<value>IDB Active</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -120,36 +120,27 @@
|
||||
<data name="Achtung:" xml:space="preserve">
|
||||
<value>Attention:</value>
|
||||
</data>
|
||||
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
||||
<value>Actuellement, aucune donnée de workflow n'est disponible - {0}</value>
|
||||
</data>
|
||||
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
||||
<value>La licence actuelle a expiré ou n'est plus valable !</value>
|
||||
</data>
|
||||
<data name="Anzahl angemeldete Benutzer: {0}" xml:space="preserve">
|
||||
<value>Nombre d'utilisateurs connectés: {0}</value>
|
||||
</data>
|
||||
<data name="Anzahl Lizenzen: {0}" xml:space="preserve">
|
||||
<value>Nombre de licences: {0}</value>
|
||||
</data>
|
||||
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
|
||||
<value>Veuillez fermer le workflow ouvert !</value>
|
||||
</data>
|
||||
<data name="Größer" xml:space="preserve">
|
||||
<value>Plus grand</value>
|
||||
</data>
|
||||
<data name="Kleiner" xml:space="preserve">
|
||||
<value>Petit</value>
|
||||
</data>
|
||||
<data name="Normal" xml:space="preserve">
|
||||
<value>Normal</value>
|
||||
</data>
|
||||
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
||||
<value>Actuellement, aucune donnée de workflow n'est disponible ! {0}</value>
|
||||
</data>
|
||||
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
||||
<value>La licence actuelle a expiré ou n'est plus valable !</value>
|
||||
</data>
|
||||
<data name="Bitte konfigurieren Sie eine Datenbankverbindung!" xml:space="preserve">
|
||||
<value>Veuillez configurer une connexion à la base de données !</value>
|
||||
</data>
|
||||
<data name="Bitte kontaktieren Sie Ihren Administrator!" xml:space="preserve">
|
||||
<value>Veuillez contacter votre administrateur !</value>
|
||||
</data>
|
||||
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
|
||||
<value>Veuillez fermer le workflow ouvert !</value>
|
||||
</data>
|
||||
<data name="Bitte wählen Sie ein Profil aus!" xml:space="preserve">
|
||||
<value>Veuillez sélectionner un profil !</value>
|
||||
</data>
|
||||
@@ -177,9 +168,18 @@
|
||||
<data name="Ghost Modus ({0}) deaktivieren" xml:space="preserve">
|
||||
<value>Désactiver ({0}) le Mode Fantôme</value>
|
||||
</data>
|
||||
<data name="Größer" xml:space="preserve">
|
||||
<value>Plus grand</value>
|
||||
</data>
|
||||
<data name="HINWEIS: Debug Modus ist eingeschaltet!" xml:space="preserve">
|
||||
<value>REMARQUE : le mode de débogage est activé !</value>
|
||||
</data>
|
||||
<data name="IDB Aktiv" xml:space="preserve">
|
||||
<value>IDB Aktif</value>
|
||||
</data>
|
||||
<data name="Kleiner" xml:space="preserve">
|
||||
<value>Petit</value>
|
||||
</data>
|
||||
<data name="Letzte Synchronisation: {0}" xml:space="preserve">
|
||||
<value>Dernière synchronisation : {0}</value>
|
||||
</data>
|
||||
@@ -189,6 +189,9 @@
|
||||
<data name="Massenabschluss konnte nicht ausgeführt werden, weil windream nicht initialisiert werden konnte!" xml:space="preserve">
|
||||
<value>La clôture en masse n'a pas pu être exécutée parce que windream n'a pas pu être initialisé !</value>
|
||||
</data>
|
||||
<data name="Normal" xml:space="preserve">
|
||||
<value>Normal</value>
|
||||
</data>
|
||||
<data name="Nächste Aktivitätsüberprüfung: {0} {1}" xml:space="preserve">
|
||||
<value>Prochaine vérification d'activité : {0} {1}</value>
|
||||
</data>
|
||||
@@ -213,7 +216,4 @@
|
||||
<data name="{0} Vorgänge" xml:space="preserve">
|
||||
<value>{0} Opérations</value>
|
||||
</data>
|
||||
<data name="IDB Aktiv" xml:space="preserve">
|
||||
<value>IDB Aktif</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -121,7 +121,7 @@
|
||||
<value>Achtung:</value>
|
||||
</data>
|
||||
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
||||
<value>Aktuell keine Workflowdaten vorhanden! {0}</value>
|
||||
<value>Aktuell keine Workflowdaten vorhanden - {0}</value>
|
||||
</data>
|
||||
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
||||
<value>Aktuelle Lizenz ist abgelaufen oder ungültig!</value>
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
Imports System.Text.RegularExpressions
|
||||
Imports WINDREAMLib
|
||||
Imports DigitalData.Controls.LookupGrid
|
||||
Imports DevExpress.XtraGrid
|
||||
Imports DevExpress.XtraGrid.Views.Grid
|
||||
Imports DevExpress.XtraGrid.Columns
|
||||
Imports DevExpress.Xpo.Helpers.AssociatedCollectionCriteriaHelper
|
||||
Imports DevExpress.XtraEditors
|
||||
Imports DevExpress.XtraGrid
|
||||
Imports DevExpress.XtraGrid.Columns
|
||||
Imports DevExpress.XtraGrid.Views.Grid
|
||||
Imports DigitalData.Controls.LookupGrid
|
||||
Imports WINDREAMLib
|
||||
''' <summary>
|
||||
''' Defines common Functions for Checking for and replacing placeholders.
|
||||
''' 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
|
||||
''' </summary>
|
||||
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
|
||||
LOGGER.Warn($"Control [{controlName}] not found in cache for update")
|
||||
Return
|
||||
@@ -98,8 +100,13 @@ Public Class clsPatterns
|
||||
lookup.Properties.SelectedValues = New List(Of String) From {newValue.ToString()}
|
||||
End If
|
||||
|
||||
Case GetType(Windows.Forms.ComboBox)
|
||||
DirectCast(ctrl, ComboBox).Text = newValue?.ToString()
|
||||
' ========== FIX START: Beide ComboBox-Typen unterstützen ==========
|
||||
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)
|
||||
If TypeOf newValue Is Boolean Then
|
||||
@@ -130,12 +137,14 @@ Public Class clsPatterns
|
||||
Public Shared Sub UpdateMultipleControlsInCache(updates As Dictionary(Of String, Object))
|
||||
If updates Is Nothing OrElse updates.Count = 0 Then Return
|
||||
|
||||
SyncLock _ControlLookupCache
|
||||
For Each kvp In updates
|
||||
UpdateControlInCache(kvp.Key, kvp.Value)
|
||||
Next
|
||||
LOGGER.Debug($"Batch cache update completed for {updates.Count} controls")
|
||||
End SyncLock
|
||||
' FIX: Gleicher Lock-Anker wie UpdateControlInCache → kein Deadlock
|
||||
' Die eigentliche Aktualisierung läuft sequenziell über UpdateControlInCache,
|
||||
' da SyncLock in VB.NET re-entrant auf demselben Thread ist.
|
||||
For Each kvp In updates
|
||||
UpdateControlInCache(kvp.Key, kvp.Value)
|
||||
Next
|
||||
|
||||
LOGGER.Debug($"Batch cache update completed for {updates.Count} controls")
|
||||
End Sub
|
||||
''' <summary>
|
||||
''' Wraps a pattern-type and -value in the common format: {#type#value}
|
||||
@@ -145,34 +154,39 @@ Public Class clsPatterns
|
||||
End Function
|
||||
|
||||
Public Shared Function ReplaceAllValues(input As String, panel As DevExpress.XtraEditors.XtraScrollableControl, is_SQL As Boolean) As String
|
||||
Dim oResult = input
|
||||
Try
|
||||
Dim result = input
|
||||
|
||||
If Not HasAnyPatterns(result) Then
|
||||
Return result
|
||||
If Not HasAnyPatterns(oResult) Then
|
||||
Return oResult
|
||||
End If
|
||||
|
||||
LOGGER.Debug($"input BEFORE replacing: [{result}]")
|
||||
result = ReplaceInternalValues(result)
|
||||
LOGGER.Debug($"input BEFORE replacing: [{oResult}]")
|
||||
oResult = ReplaceInternalValues(oResult)
|
||||
|
||||
If Not IsNothing(CURRENT_WMFILE) Then
|
||||
result = ReplaceWindreamIndicies(result, CURRENT_WMFILE, is_SQL)
|
||||
oResult = ReplaceWindreamIndicies(oResult, CURRENT_WMFILE, is_SQL)
|
||||
End If
|
||||
If IDB_ACTIVE = True Then
|
||||
result = ReplaceIDBAttributes(result, is_SQL)
|
||||
oResult = ReplaceIDBAttributes(oResult, is_SQL)
|
||||
End If
|
||||
'vorher hinter result = ReplaceInternalValues(result)
|
||||
result = ReplaceControlValues(result, panel, is_SQL)
|
||||
oResult = ReplaceControlValues(oResult, panel, is_SQL)
|
||||
|
||||
If Not IsNothing(result) Then
|
||||
result = ReplaceUserValues(result)
|
||||
LOGGER.Debug($"input AFTER replacing: [{result}]")
|
||||
If Not IsNothing(oResult) Then
|
||||
oResult = ReplaceUserValues(oResult)
|
||||
LOGGER.Debug($"input AFTER replacing: [{oResult}]")
|
||||
End If
|
||||
|
||||
Return result
|
||||
Return oResult
|
||||
Catch ex As Exception
|
||||
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
|
||||
End Try
|
||||
End Function
|
||||
@@ -259,14 +273,23 @@ Public Class clsPatterns
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error in ReplaceUserValues:" & ex.Message)
|
||||
Return input ' FIX: Originalwert zurückgeben statt implizit Nothing
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Private Shared Sub RecursiveAddToCache(ctrl As Control, cache As Dictionary(Of String, Control))
|
||||
cache(ctrl.Name) = ctrl
|
||||
For Each child As Control In ctrl.Controls
|
||||
RecursiveAddToCache(child, cache)
|
||||
Next
|
||||
Private Shared Sub RecursiveAddToCache(rootCtrl As Control, cache As Dictionary(Of String, Control))
|
||||
Dim stack As New Stack(Of Control)()
|
||||
stack.Push(rootCtrl)
|
||||
|
||||
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
|
||||
Public Shared Function ReplaceControlValues(pInput As String, oPanel As DevExpress.XtraEditors.XtraScrollableControl, oIsSQL As Boolean) As String
|
||||
Dim oResult = pInput
|
||||
@@ -280,8 +303,9 @@ Public Class clsPatterns
|
||||
LOGGER.Debug($"Control cache initialized with {_ControlLookupCache.Count} controls")
|
||||
End If
|
||||
End SyncLock
|
||||
Try
|
||||
|
||||
Try
|
||||
LOGGER.Debug($"Starting ReplaceControlValues with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
|
||||
Dim oTryCounter = 0
|
||||
|
||||
While ContainsPattern(oResult, PATTERN_CTRL)
|
||||
@@ -349,12 +373,28 @@ Public Class clsPatterns
|
||||
Case GetType(LookupControl3)
|
||||
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
|
||||
Else
|
||||
oReplaceValue += "', '" + oString
|
||||
@@ -362,13 +402,12 @@ Public Class clsPatterns
|
||||
oIndex += 1
|
||||
Next
|
||||
oIsSQL = False
|
||||
ElseIf oLookupControl3.Properties.SelectedValues.Count = 1 Then
|
||||
LOGGER.Debug($"LookupControl3 mit genau einem Value")
|
||||
oReplaceValue = oLookupControl3.Properties.SelectedValues(0)
|
||||
Else
|
||||
' LOGGER.Warn($"SelectedValues of LookUpControl scheint empty oder leer zu sein! Ersetzen mit ErrorReplaceValue!")
|
||||
oReplaceValue = ERROR_REPLACE_VALUE
|
||||
Else ' Count = 1
|
||||
LOGGER.Debug($"LookupControl3 [{oControlName}] mit genau einem Value")
|
||||
oReplaceValue = selectedValues(0)
|
||||
End If
|
||||
|
||||
LOGGER.Debug($"oReplaceValue nach Durchlaufen selectedValues: {oReplaceValue}")
|
||||
LOGGER.Debug($"oReplaceValue nach Durchlaufen selectedValues: {oReplaceValue}")
|
||||
|
||||
Case GetType(Windows.Forms.ComboBox)
|
||||
@@ -376,7 +415,7 @@ Public Class clsPatterns
|
||||
|
||||
Case GetType(CheckBox)
|
||||
Dim oCheckBox As CheckBox = oControl
|
||||
oReplaceValue = oCheckBox.Checked
|
||||
oReplaceValue = If(oCheckBox.Checked, "1", "0") ' Explizite String-Konvertierung
|
||||
|
||||
Case GetType(GridControl)
|
||||
Dim oGrid As GridControl = oControl
|
||||
@@ -401,10 +440,18 @@ Public Class clsPatterns
|
||||
Case Else
|
||||
oReplaceValue = ERROR_REPLACE_VALUE
|
||||
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
|
||||
'LOGGER.Debug($"IS_SQL = True - oReplaceValue = {oReplaceValue}")
|
||||
'LOGGER.Debug($"oReplaceValue = {oReplaceValue}")
|
||||
oReplaceValue = oReplaceValue.Replace("'", "''")
|
||||
oReplaceValue = SafeSqlEscape(oReplaceValue)
|
||||
End If
|
||||
oResult = ReplacePattern(oResult, PATTERN_CTRL, oReplaceValue)
|
||||
Else
|
||||
@@ -420,19 +467,52 @@ Public Class clsPatterns
|
||||
Return oResult
|
||||
End Try
|
||||
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
|
||||
Try
|
||||
Dim oResult = pInput
|
||||
Dim oTryCounter As Integer = 0
|
||||
|
||||
LOGGER.Debug($"Starting ReplaceWindreamIndicies with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
|
||||
While ContainsPattern(oResult, PATTERN_WMI)
|
||||
|
||||
Dim oWMValue As String
|
||||
Dim oIndexName As String = GetNextPattern(oResult, PATTERN_WMI).Value
|
||||
Dim oWMValue As String = pDocument.GetVariableValue(oIndexName)
|
||||
|
||||
If IsNothing(oWMValue) And oTryCounter = MAX_TRY_COUNT Then
|
||||
Throw New Exception("Max tries in ReplaceWindreamIndicies exceeded.")
|
||||
If oIndexName = "@@DISPLAY_ONLY" Then
|
||||
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
|
||||
|
||||
If oWMValue IsNot Nothing Then
|
||||
@@ -442,6 +522,11 @@ Public Class clsPatterns
|
||||
LOGGER.Debug($"oReplaceValue = {oWMValue}")
|
||||
End If
|
||||
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
|
||||
|
||||
' Increase counter by 10 to avoid DDOSing the Windream Service
|
||||
@@ -458,6 +543,7 @@ Public Class clsPatterns
|
||||
Try
|
||||
Dim result = input
|
||||
Dim oTryCounter As Integer = 0
|
||||
LOGGER.Debug($"Starting ReplaceIDBAttributes with input: [{result}] for document ID: {CURRENT_DOC_ID}")
|
||||
While ContainsPattern(result, PATTERN_IDBA)
|
||||
|
||||
Dim indexName As String = GetNextPattern(result, PATTERN_IDBA).Value
|
||||
@@ -509,6 +595,7 @@ Public Class clsPatterns
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error in ReplaceIDBAttributes:" & ex.Message)
|
||||
Return input ' FIX: Originalwert zurückgeben statt implizit Nothing
|
||||
End Try
|
||||
End Function
|
||||
|
||||
|
||||
@@ -845,11 +845,9 @@ Public Class frmAdministration
|
||||
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)
|
||||
End Sub
|
||||
|
||||
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)
|
||||
End Sub
|
||||
|
||||
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
|
||||
If CInt(PROFILGUIDTextBox.Text) > 0 Then
|
||||
profile_guid = PROFILGUIDTextBox.Text
|
||||
@@ -867,7 +865,6 @@ Public Class frmAdministration
|
||||
MsgBox("No profile could be passed to designer:", MsgBoxStyle.Exclamation)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemRefreshProfileData.ItemClick
|
||||
If BarButtonItem26.Tag = "Lock" Then
|
||||
EditMode_Profile("")
|
||||
|
||||
@@ -7,7 +7,7 @@ Public Class frmAnnotations
|
||||
|
||||
Try
|
||||
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.Close()
|
||||
Catch ex As Exception
|
||||
|
||||
123
app/TaskFlow/frmColumn_Detail.Designer.vb
generated
123
app/TaskFlow/frmColumn_Detail.Designer.vb
generated
@@ -37,6 +37,8 @@ Partial Class frmColumn_Detail
|
||||
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
|
||||
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
|
||||
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()
|
||||
@@ -89,6 +91,8 @@ Partial Class frmColumn_Detail
|
||||
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.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
@@ -141,6 +145,8 @@ Partial Class frmColumn_Detail
|
||||
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()
|
||||
'
|
||||
'TBPM_CONTROL_TABLEBindingSource
|
||||
@@ -237,6 +243,8 @@ Partial Class frmColumn_Detail
|
||||
'
|
||||
'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)
|
||||
@@ -266,6 +274,19 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControl1.Name = "LayoutControl1"
|
||||
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")
|
||||
@@ -277,6 +298,7 @@ Partial Class frmColumn_Detail
|
||||
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
|
||||
'
|
||||
@@ -478,9 +500,9 @@ Partial Class frmColumn_Detail
|
||||
'
|
||||
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.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.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.Size = New System.Drawing.Size(593, 816)
|
||||
Me.Root.Size = New System.Drawing.Size(630, 853)
|
||||
Me.Root.TextVisible = False
|
||||
'
|
||||
'LayoutControlItem1
|
||||
@@ -489,7 +511,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem1.Location = New System.Drawing.Point(0, 0)
|
||||
Me.LayoutControlItem1.Name = "LayoutControlItem1"
|
||||
Me.LayoutControlItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem1.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem1.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem1, "LayoutControlItem1")
|
||||
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -499,7 +521,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem2.Location = New System.Drawing.Point(0, 40)
|
||||
Me.LayoutControlItem2.Name = "LayoutControlItem2"
|
||||
Me.LayoutControlItem2.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem2.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem2.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem2, "LayoutControlItem2")
|
||||
Me.LayoutControlItem2.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -509,7 +531,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 80)
|
||||
Me.LayoutControlItem3.Name = "LayoutControlItem3"
|
||||
Me.LayoutControlItem3.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem3.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem3.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem3, "LayoutControlItem3")
|
||||
Me.LayoutControlItem3.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -519,7 +541,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 120)
|
||||
Me.LayoutControlItem4.Name = "LayoutControlItem4"
|
||||
Me.LayoutControlItem4.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem4.Size = New System.Drawing.Size(286, 40)
|
||||
Me.LayoutControlItem4.Size = New System.Drawing.Size(304, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem4, "LayoutControlItem4")
|
||||
Me.LayoutControlItem4.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -529,16 +551,16 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 200)
|
||||
Me.LayoutControlItem5.Name = "LayoutControlItem5"
|
||||
Me.LayoutControlItem5.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem5.Size = New System.Drawing.Size(488, 46)
|
||||
Me.LayoutControlItem5.Size = New System.Drawing.Size(520, 46)
|
||||
resources.ApplyResources(Me.LayoutControlItem5, "LayoutControlItem5")
|
||||
Me.LayoutControlItem5.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem6
|
||||
'
|
||||
Me.LayoutControlItem6.Control = Me.SimpleButton1
|
||||
Me.LayoutControlItem6.Location = New System.Drawing.Point(488, 200)
|
||||
Me.LayoutControlItem6.Location = New System.Drawing.Point(520, 200)
|
||||
Me.LayoutControlItem6.Name = "LayoutControlItem6"
|
||||
Me.LayoutControlItem6.Size = New System.Drawing.Size(85, 46)
|
||||
Me.LayoutControlItem6.Size = New System.Drawing.Size(90, 46)
|
||||
Me.LayoutControlItem6.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem6.TextVisible = False
|
||||
'
|
||||
@@ -548,7 +570,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem8.Location = New System.Drawing.Point(0, 326)
|
||||
Me.LayoutControlItem8.Name = "LayoutControlItem8"
|
||||
Me.LayoutControlItem8.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem8.Size = New System.Drawing.Size(488, 46)
|
||||
Me.LayoutControlItem8.Size = New System.Drawing.Size(520, 46)
|
||||
resources.ApplyResources(Me.LayoutControlItem8, "LayoutControlItem8")
|
||||
Me.LayoutControlItem8.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -558,65 +580,65 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem7.Location = New System.Drawing.Point(0, 246)
|
||||
Me.LayoutControlItem7.Name = "LayoutControlItem7"
|
||||
Me.LayoutControlItem7.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem7.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem7.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem7, "LayoutControlItem7")
|
||||
Me.LayoutControlItem7.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem9
|
||||
'
|
||||
Me.LayoutControlItem9.Control = Me.SimpleButton2
|
||||
Me.LayoutControlItem9.Location = New System.Drawing.Point(488, 326)
|
||||
Me.LayoutControlItem9.Location = New System.Drawing.Point(520, 326)
|
||||
Me.LayoutControlItem9.Name = "LayoutControlItem9"
|
||||
Me.LayoutControlItem9.Size = New System.Drawing.Size(85, 46)
|
||||
Me.LayoutControlItem9.Size = New System.Drawing.Size(90, 46)
|
||||
Me.LayoutControlItem9.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem9.TextVisible = False
|
||||
'
|
||||
'LayoutControlItem10
|
||||
'
|
||||
Me.LayoutControlItem10.Control = Me.TextEdit7
|
||||
Me.LayoutControlItem10.Location = New System.Drawing.Point(0, 458)
|
||||
Me.LayoutControlItem10.Location = New System.Drawing.Point(0, 504)
|
||||
Me.LayoutControlItem10.Name = "LayoutControlItem10"
|
||||
Me.LayoutControlItem10.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem10.Size = New System.Drawing.Size(286, 40)
|
||||
Me.LayoutControlItem10.Size = New System.Drawing.Size(304, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem10, "LayoutControlItem10")
|
||||
Me.LayoutControlItem10.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem12
|
||||
'
|
||||
Me.LayoutControlItem12.Control = Me.CHANGED_WHOTextBox
|
||||
Me.LayoutControlItem12.Location = New System.Drawing.Point(0, 498)
|
||||
Me.LayoutControlItem12.Location = New System.Drawing.Point(0, 544)
|
||||
Me.LayoutControlItem12.Name = "LayoutControlItem12"
|
||||
Me.LayoutControlItem12.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem12.Size = New System.Drawing.Size(286, 40)
|
||||
Me.LayoutControlItem12.Size = New System.Drawing.Size(304, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem12, "LayoutControlItem12")
|
||||
Me.LayoutControlItem12.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem11
|
||||
'
|
||||
Me.LayoutControlItem11.Control = Me.TextEdit8
|
||||
Me.LayoutControlItem11.Location = New System.Drawing.Point(286, 458)
|
||||
Me.LayoutControlItem11.Location = New System.Drawing.Point(304, 504)
|
||||
Me.LayoutControlItem11.Name = "LayoutControlItem11"
|
||||
Me.LayoutControlItem11.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem11.Size = New System.Drawing.Size(287, 40)
|
||||
Me.LayoutControlItem11.Size = New System.Drawing.Size(306, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem11, "LayoutControlItem11")
|
||||
Me.LayoutControlItem11.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem13
|
||||
'
|
||||
Me.LayoutControlItem13.Control = Me.TextEdit10
|
||||
Me.LayoutControlItem13.Location = New System.Drawing.Point(286, 498)
|
||||
Me.LayoutControlItem13.Location = New System.Drawing.Point(304, 544)
|
||||
Me.LayoutControlItem13.Name = "LayoutControlItem13"
|
||||
Me.LayoutControlItem13.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem13.Size = New System.Drawing.Size(287, 40)
|
||||
Me.LayoutControlItem13.Size = New System.Drawing.Size(306, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem13, "LayoutControlItem13")
|
||||
Me.LayoutControlItem13.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlGroup1
|
||||
'
|
||||
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, 538)
|
||||
Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 584)
|
||||
Me.LayoutControlGroup1.Name = "LayoutControlGroup1"
|
||||
Me.LayoutControlGroup1.Size = New System.Drawing.Size(573, 258)
|
||||
Me.LayoutControlGroup1.Size = New System.Drawing.Size(610, 249)
|
||||
resources.ApplyResources(Me.LayoutControlGroup1, "LayoutControlGroup1")
|
||||
'
|
||||
'LayoutControlItem16
|
||||
@@ -624,7 +646,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem16.Control = Me.VALIDATIONCheckbox
|
||||
Me.LayoutControlItem16.Location = New System.Drawing.Point(0, 0)
|
||||
Me.LayoutControlItem16.Name = "LayoutControlItem16"
|
||||
Me.LayoutControlItem16.Size = New System.Drawing.Size(274, 24)
|
||||
Me.LayoutControlItem16.Size = New System.Drawing.Size(292, 24)
|
||||
Me.LayoutControlItem16.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem16.TextVisible = False
|
||||
'
|
||||
@@ -633,7 +655,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem14.Control = Me.READ_ONLYCheckBox
|
||||
Me.LayoutControlItem14.Location = New System.Drawing.Point(0, 24)
|
||||
Me.LayoutControlItem14.Name = "LayoutControlItem14"
|
||||
Me.LayoutControlItem14.Size = New System.Drawing.Size(549, 22)
|
||||
Me.LayoutControlItem14.Size = New System.Drawing.Size(586, 22)
|
||||
Me.LayoutControlItem14.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem14.TextVisible = False
|
||||
'
|
||||
@@ -642,7 +664,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem17.Control = Me.ADVANCED_LOOKUPCheckbox
|
||||
Me.LayoutControlItem17.Location = New System.Drawing.Point(0, 46)
|
||||
Me.LayoutControlItem17.Name = "LayoutControlItem17"
|
||||
Me.LayoutControlItem17.Size = New System.Drawing.Size(549, 22)
|
||||
Me.LayoutControlItem17.Size = New System.Drawing.Size(586, 22)
|
||||
Me.LayoutControlItem17.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem17.TextVisible = False
|
||||
'
|
||||
@@ -651,16 +673,16 @@ Partial Class frmColumn_Detail
|
||||
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(549, 22)
|
||||
Me.LayoutControlItem25.Size = New System.Drawing.Size(586, 22)
|
||||
Me.LayoutControlItem25.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem25.TextVisible = False
|
||||
'
|
||||
'LayoutControlItem20
|
||||
'
|
||||
Me.LayoutControlItem20.Control = Me.SUMMARY_FUNCTIONCombobox
|
||||
Me.LayoutControlItem20.Location = New System.Drawing.Point(274, 0)
|
||||
Me.LayoutControlItem20.Location = New System.Drawing.Point(292, 0)
|
||||
Me.LayoutControlItem20.Name = "LayoutControlItem20"
|
||||
Me.LayoutControlItem20.Size = New System.Drawing.Size(275, 24)
|
||||
Me.LayoutControlItem20.Size = New System.Drawing.Size(294, 24)
|
||||
resources.ApplyResources(Me.LayoutControlItem20, "LayoutControlItem20")
|
||||
Me.LayoutControlItem20.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -670,7 +692,7 @@ Partial Class frmColumn_Detail
|
||||
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, 90)
|
||||
Me.LayoutControlItem22.Name = "LayoutControlItem22"
|
||||
Me.LayoutControlItem22.Size = New System.Drawing.Size(549, 123)
|
||||
Me.LayoutControlItem22.Size = New System.Drawing.Size(586, 114)
|
||||
Me.LayoutControlItem22.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem22.TextVisible = False
|
||||
'
|
||||
@@ -680,17 +702,17 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem18.Location = New System.Drawing.Point(0, 372)
|
||||
Me.LayoutControlItem18.Name = "LayoutControlItem18"
|
||||
Me.LayoutControlItem18.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem18.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem18.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem18, "LayoutControlItem18")
|
||||
Me.LayoutControlItem18.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem19
|
||||
'
|
||||
Me.LayoutControlItem19.Control = Me.SEQUENCETextBox
|
||||
Me.LayoutControlItem19.Location = New System.Drawing.Point(286, 120)
|
||||
Me.LayoutControlItem19.Location = New System.Drawing.Point(304, 120)
|
||||
Me.LayoutControlItem19.Name = "LayoutControlItem19"
|
||||
Me.LayoutControlItem19.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem19.Size = New System.Drawing.Size(287, 40)
|
||||
Me.LayoutControlItem19.Size = New System.Drawing.Size(306, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem19, "LayoutControlItem19")
|
||||
Me.LayoutControlItem19.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -701,7 +723,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem23.Location = New System.Drawing.Point(0, 286)
|
||||
Me.LayoutControlItem23.Name = "LayoutControlItem23"
|
||||
Me.LayoutControlItem23.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem23.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem23.Size = New System.Drawing.Size(610, 40)
|
||||
Me.LayoutControlItem23.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem21
|
||||
@@ -710,7 +732,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem21.Location = New System.Drawing.Point(0, 160)
|
||||
Me.LayoutControlItem21.Name = "LayoutControlItem21"
|
||||
Me.LayoutControlItem21.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem21.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem21.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem21, "LayoutControlItem21")
|
||||
Me.LayoutControlItem21.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -720,19 +742,38 @@ Partial Class frmColumn_Detail
|
||||
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(488, 46)
|
||||
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(488, 412)
|
||||
Me.LayoutControlItem26.Location = New System.Drawing.Point(520, 412)
|
||||
Me.LayoutControlItem26.Name = "LayoutControlItem26"
|
||||
Me.LayoutControlItem26.Size = New System.Drawing.Size(85, 46)
|
||||
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
|
||||
'
|
||||
Me.Appearance.Options.UseFont = True
|
||||
@@ -799,6 +840,8 @@ Partial Class frmColumn_Detail
|
||||
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.PerformLayout
|
||||
|
||||
@@ -868,4 +911,8 @@ End Sub
|
||||
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
|
||||
|
||||
@@ -123,6 +123,9 @@
|
||||
<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="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">
|
||||
<value>440, 17</value>
|
||||
</metadata>
|
||||
@@ -142,20 +145,17 @@
|
||||
<data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="RibbonPageGroup1.Text" xml:space="preserve">
|
||||
<value>RibbonPageGroup1</value>
|
||||
</data>
|
||||
<data name="RibbonPage1.Text" xml:space="preserve">
|
||||
<value>RibbonPage1</value>
|
||||
</data>
|
||||
<data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>593, 67</value>
|
||||
<value>630, 67</value>
|
||||
</data>
|
||||
<data name="RibbonStatusBar1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 883</value>
|
||||
<value>0, 920</value>
|
||||
</data>
|
||||
<data name="RibbonStatusBar1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>593, 22</value>
|
||||
<value>630, 22</value>
|
||||
</data>
|
||||
<data name=">>RibbonStatusBar1.Name" xml:space="preserve">
|
||||
<value>RibbonStatusBar1</value>
|
||||
@@ -181,20 +181,71 @@
|
||||
<data name=">>RibbonControl1.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="RibbonPageGroup1.Text" xml:space="preserve">
|
||||
<value>RibbonPageGroup1</value>
|
||||
</data>
|
||||
<data name="RibbonPage2.Text" xml:space="preserve">
|
||||
<value>RibbonPage2</value>
|
||||
</data>
|
||||
<data name="SimpleButton3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>500, 424</value>
|
||||
<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=">>SimpleButton4.Name" xml:space="preserve">
|
||||
<value>SimpleButton4</value>
|
||||
</data>
|
||||
<data name=">>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=">>SimpleButton4.Parent" xml:space="preserve">
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>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=">>FORMULA_SQLTextBox.Name" xml:space="preserve">
|
||||
<value>FORMULA_SQLTextBox</value>
|
||||
</data>
|
||||
<data name=">>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=">>FORMULA_SQLTextBox.Parent" xml:space="preserve">
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>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>81, 42</value>
|
||||
<value>86, 42</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="SimpleButton3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>31</value>
|
||||
</data>
|
||||
@@ -211,13 +262,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton3.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
<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>346, 20</value>
|
||||
<value>378, 20</value>
|
||||
</data>
|
||||
<data name="FORMULA_EXPRESSIONTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>29</value>
|
||||
@@ -232,13 +283,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>FORMULA_EXPRESSIONTextBox.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
<value>7</value>
|
||||
</data>
|
||||
<data name="LU_CAPTIONTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 306</value>
|
||||
</data>
|
||||
<data name="LU_CAPTIONTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="LU_CAPTIONTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>26</value>
|
||||
@@ -253,13 +304,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>LU_CAPTIONTextBox.ZOrder" xml:space="preserve">
|
||||
<value>6</value>
|
||||
<value>8</value>
|
||||
</data>
|
||||
<data name="GUIDTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 20</value>
|
||||
</data>
|
||||
<data name="GUIDTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="GUIDTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>4</value>
|
||||
@@ -274,13 +325,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>GUIDTextBox.ZOrder" xml:space="preserve">
|
||||
<value>7</value>
|
||||
<value>9</value>
|
||||
</data>
|
||||
<data name="SPALTENNAMETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 60</value>
|
||||
</data>
|
||||
<data name="SPALTENNAMETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="SPALTENNAMETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
@@ -295,13 +346,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SPALTENNAMETextBox.ZOrder" xml:space="preserve">
|
||||
<value>8</value>
|
||||
<value>10</value>
|
||||
</data>
|
||||
<data name="SPALTEN_HEADERTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 100</value>
|
||||
</data>
|
||||
<data name="SPALTEN_HEADERTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="SPALTEN_HEADERTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>6</value>
|
||||
@@ -316,7 +367,7 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SPALTEN_HEADERTextBox.ZOrder" xml:space="preserve">
|
||||
<value>9</value>
|
||||
<value>11</value>
|
||||
</data>
|
||||
<data name="SPALTENBREITETextBox.EditValue" type="System.Decimal, mscorlib">
|
||||
<value>0</value>
|
||||
@@ -329,7 +380,7 @@
|
||||
<value>Combo</value>
|
||||
</data>
|
||||
<data name="SPALTENBREITETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>144, 20</value>
|
||||
<value>162, 20</value>
|
||||
</data>
|
||||
<data name="SPALTENBREITETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>7</value>
|
||||
@@ -344,13 +395,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SPALTENBREITETextBox.ZOrder" xml:space="preserve">
|
||||
<value>10</value>
|
||||
<value>12</value>
|
||||
</data>
|
||||
<data name="REGEX_MATCHTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 220</value>
|
||||
</data>
|
||||
<data name="REGEX_MATCHTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>346, 20</value>
|
||||
<value>378, 20</value>
|
||||
</data>
|
||||
<data name="REGEX_MATCHTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>8</value>
|
||||
@@ -365,10 +416,10 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>REGEX_MATCHTextBox.ZOrder" xml:space="preserve">
|
||||
<value>11</value>
|
||||
<value>13</value>
|
||||
</data>
|
||||
<data name="SimpleButton1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>500, 212</value>
|
||||
<value>532, 212</value>
|
||||
</data>
|
||||
<data name="SimpleButton1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>10, 10, 10, 10</value>
|
||||
@@ -377,7 +428,7 @@
|
||||
<value>10, 10, 10, 10</value>
|
||||
</data>
|
||||
<data name="SimpleButton1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>81, 42</value>
|
||||
<value>86, 42</value>
|
||||
</data>
|
||||
<data name="SimpleButton1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>9</value>
|
||||
@@ -395,13 +446,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton1.ZOrder" xml:space="preserve">
|
||||
<value>12</value>
|
||||
<value>14</value>
|
||||
</data>
|
||||
<data name="REGEX_MESSAGE_DETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 266</value>
|
||||
</data>
|
||||
<data name="REGEX_MESSAGE_DETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="REGEX_MESSAGE_DETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>10</value>
|
||||
@@ -416,13 +467,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>REGEX_MESSAGE_DETextBox.ZOrder" xml:space="preserve">
|
||||
<value>13</value>
|
||||
<value>15</value>
|
||||
</data>
|
||||
<data name="SQL_COMMANDTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 346</value>
|
||||
</data>
|
||||
<data name="SQL_COMMANDTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>346, 20</value>
|
||||
<value>378, 20</value>
|
||||
</data>
|
||||
<data name="SQL_COMMANDTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>11</value>
|
||||
@@ -437,16 +488,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SQL_COMMANDTextBox.ZOrder" xml:space="preserve">
|
||||
<value>14</value>
|
||||
<value>16</value>
|
||||
</data>
|
||||
<data name="SimpleButton2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>500, 338</value>
|
||||
<value>532, 338</value>
|
||||
</data>
|
||||
<data name="SimpleButton2.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>10, 10, 10, 10</value>
|
||||
</data>
|
||||
<data name="SimpleButton2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>81, 42</value>
|
||||
<value>86, 42</value>
|
||||
</data>
|
||||
<data name="SimpleButton2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>12</value>
|
||||
@@ -464,13 +515,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton2.ZOrder" xml:space="preserve">
|
||||
<value>15</value>
|
||||
<value>17</value>
|
||||
</data>
|
||||
<data name="TextEdit7.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 478</value>
|
||||
<value>142, 524</value>
|
||||
</data>
|
||||
<data name="TextEdit7.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>144, 20</value>
|
||||
<value>162, 20</value>
|
||||
</data>
|
||||
<data name="TextEdit7.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>13</value>
|
||||
@@ -485,13 +536,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>TextEdit7.ZOrder" xml:space="preserve">
|
||||
<value>16</value>
|
||||
<value>18</value>
|
||||
</data>
|
||||
<data name="TextEdit8.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>428, 478</value>
|
||||
<value>446, 524</value>
|
||||
</data>
|
||||
<data name="TextEdit8.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>145, 20</value>
|
||||
<value>164, 20</value>
|
||||
</data>
|
||||
<data name="TextEdit8.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>14</value>
|
||||
@@ -506,13 +557,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>TextEdit8.ZOrder" xml:space="preserve">
|
||||
<value>17</value>
|
||||
<value>19</value>
|
||||
</data>
|
||||
<data name="CHANGED_WHOTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 518</value>
|
||||
<value>142, 564</value>
|
||||
</data>
|
||||
<data name="CHANGED_WHOTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>144, 20</value>
|
||||
<value>162, 20</value>
|
||||
</data>
|
||||
<data name="CHANGED_WHOTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>15</value>
|
||||
@@ -527,13 +578,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>CHANGED_WHOTextBox.ZOrder" xml:space="preserve">
|
||||
<value>18</value>
|
||||
<value>20</value>
|
||||
</data>
|
||||
<data name="TextEdit10.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>428, 518</value>
|
||||
<value>446, 564</value>
|
||||
</data>
|
||||
<data name="TextEdit10.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>145, 20</value>
|
||||
<value>164, 20</value>
|
||||
</data>
|
||||
<data name="TextEdit10.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>16</value>
|
||||
@@ -548,16 +599,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>TextEdit10.ZOrder" xml:space="preserve">
|
||||
<value>19</value>
|
||||
<value>21</value>
|
||||
</data>
|
||||
<data name="READ_ONLYCheckBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 607</value>
|
||||
<value>24, 653</value>
|
||||
</data>
|
||||
<data name="READ_ONLYCheckBox.Properties.Caption" xml:space="preserve">
|
||||
<value>Read Only</value>
|
||||
</data>
|
||||
<data name="READ_ONLYCheckBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>545, 18</value>
|
||||
<value>582, 18</value>
|
||||
</data>
|
||||
<data name="READ_ONLYCheckBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>17</value>
|
||||
@@ -572,16 +623,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>READ_ONLYCheckBox.ZOrder" xml:space="preserve">
|
||||
<value>20</value>
|
||||
<value>22</value>
|
||||
</data>
|
||||
<data name="LOAD_IDX_VALUECheckBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 651</value>
|
||||
<value>24, 697</value>
|
||||
</data>
|
||||
<data name="LOAD_IDX_VALUECheckBox.Properties.Caption" xml:space="preserve">
|
||||
<value>Lade Indexdaten</value>
|
||||
</data>
|
||||
<data name="LOAD_IDX_VALUECheckBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>545, 18</value>
|
||||
<value>582, 18</value>
|
||||
</data>
|
||||
<data name="LOAD_IDX_VALUECheckBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>18</value>
|
||||
@@ -596,16 +647,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>LOAD_IDX_VALUECheckBox.ZOrder" xml:space="preserve">
|
||||
<value>21</value>
|
||||
<value>23</value>
|
||||
</data>
|
||||
<data name="VALIDATIONCheckbox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 583</value>
|
||||
<value>24, 629</value>
|
||||
</data>
|
||||
<data name="VALIDATIONCheckbox.Properties.Caption" xml:space="preserve">
|
||||
<value>Muss ausgefüllt werden</value>
|
||||
</data>
|
||||
<data name="VALIDATIONCheckbox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>270, 18</value>
|
||||
<value>288, 18</value>
|
||||
</data>
|
||||
<data name="VALIDATIONCheckbox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>19</value>
|
||||
@@ -620,16 +671,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>VALIDATIONCheckbox.ZOrder" xml:space="preserve">
|
||||
<value>22</value>
|
||||
<value>24</value>
|
||||
</data>
|
||||
<data name="ADVANCED_LOOKUPCheckbox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 629</value>
|
||||
<value>24, 675</value>
|
||||
</data>
|
||||
<data name="ADVANCED_LOOKUPCheckbox.Properties.Caption" xml:space="preserve">
|
||||
<value>Erweitertes Auswahl Control (für lange Listen)</value>
|
||||
</data>
|
||||
<data name="ADVANCED_LOOKUPCheckbox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>545, 18</value>
|
||||
<value>582, 18</value>
|
||||
</data>
|
||||
<data name="ADVANCED_LOOKUPCheckbox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>20</value>
|
||||
@@ -644,13 +695,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>ADVANCED_LOOKUPCheckbox.ZOrder" xml:space="preserve">
|
||||
<value>23</value>
|
||||
<value>25</value>
|
||||
</data>
|
||||
<data name="DEFAULTVALUETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 392</value>
|
||||
</data>
|
||||
<data name="DEFAULTVALUETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="DEFAULTVALUETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>21</value>
|
||||
@@ -665,19 +716,19 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>DEFAULTVALUETextBox.ZOrder" xml:space="preserve">
|
||||
<value>24</value>
|
||||
<value>26</value>
|
||||
</data>
|
||||
<data name="SEQUENCETextBox.EditValue" type="System.Decimal, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="SEQUENCETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>428, 140</value>
|
||||
<value>446, 140</value>
|
||||
</data>
|
||||
<data name="SEQUENCETextBox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
|
||||
<value>Combo</value>
|
||||
</data>
|
||||
<data name="SEQUENCETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>145, 20</value>
|
||||
<value>164, 20</value>
|
||||
</data>
|
||||
<data name="SEQUENCETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>22</value>
|
||||
@@ -692,10 +743,10 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SEQUENCETextBox.ZOrder" xml:space="preserve">
|
||||
<value>25</value>
|
||||
<value>27</value>
|
||||
</data>
|
||||
<data name="SUMMARY_FUNCTIONCombobox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>420, 583</value>
|
||||
<value>438, 629</value>
|
||||
</data>
|
||||
<data name="SUMMARY_FUNCTIONCombobox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
|
||||
<value>Combo</value>
|
||||
@@ -704,7 +755,7 @@
|
||||
<value />
|
||||
</data>
|
||||
<data name="SUMMARY_FUNCTIONCombobox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>149, 20</value>
|
||||
<value>168, 20</value>
|
||||
</data>
|
||||
<data name="SUMMARY_FUNCTIONCombobox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>23</value>
|
||||
@@ -719,7 +770,7 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SUMMARY_FUNCTIONCombobox.ZOrder" xml:space="preserve">
|
||||
<value>26</value>
|
||||
<value>28</value>
|
||||
</data>
|
||||
<data name="TYPE_COLUMNComboBox2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 180</value>
|
||||
@@ -731,7 +782,7 @@
|
||||
<value />
|
||||
</data>
|
||||
<data name="TYPE_COLUMNComboBox2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="TYPE_COLUMNComboBox2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>27</value>
|
||||
@@ -746,16 +797,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>TYPE_COLUMNComboBox2.ZOrder" xml:space="preserve">
|
||||
<value>27</value>
|
||||
<value>29</value>
|
||||
</data>
|
||||
<data name="CheckEditInheritValue.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 673</value>
|
||||
<value>24, 719</value>
|
||||
</data>
|
||||
<data name="CheckEditInheritValue.Properties.Caption" xml:space="preserve">
|
||||
<value>Inherit Value (Vererbt den Wert der aktuellen Zelle auf alle nachfolgenden)</value>
|
||||
</data>
|
||||
<data name="CheckEditInheritValue.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>545, 18</value>
|
||||
<value>582, 18</value>
|
||||
</data>
|
||||
<data name="CheckEditInheritValue.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>28</value>
|
||||
@@ -770,7 +821,7 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>CheckEditInheritValue.ZOrder" xml:space="preserve">
|
||||
<value>28</value>
|
||||
<value>30</value>
|
||||
</data>
|
||||
<data name="LayoutControl1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
@@ -835,8 +886,11 @@
|
||||
<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">
|
||||
<value>593, 816</value>
|
||||
<value>630, 853</value>
|
||||
</data>
|
||||
<data name="LayoutControl1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>33</value>
|
||||
@@ -863,7 +917,7 @@
|
||||
<value>6, 13</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>593, 905</value>
|
||||
<value>630, 942</value>
|
||||
</data>
|
||||
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 8.25pt</value>
|
||||
@@ -1093,6 +1147,18 @@
|
||||
<data name=">>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=">>LayoutControlItem27.Name" xml:space="preserve">
|
||||
<value>LayoutControlItem27</value>
|
||||
</data>
|
||||
<data name=">>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=">>LayoutControlItem15.Name" xml:space="preserve">
|
||||
<value>LayoutControlItem15</value>
|
||||
</data>
|
||||
<data name=">>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=">>$this.Name" xml:space="preserve">
|
||||
<value>frmColumn_Detail</value>
|
||||
</data>
|
||||
|
||||
@@ -100,6 +100,7 @@ Public Class frmColumn_Detail
|
||||
LU_CAPTIONTextBox.Text,
|
||||
CheckEditInheritValue.Checked,
|
||||
FORMULA_EXPRESSIONTextBox.Text,
|
||||
FORMULA_SQLTextBox.Text,
|
||||
GUIDTextBox.Text
|
||||
)
|
||||
tslblAenderungen.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
|
||||
@@ -224,4 +225,52 @@ Public Class frmColumn_Detail
|
||||
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
|
||||
@@ -2,8 +2,21 @@
|
||||
|
||||
Public Class frmError
|
||||
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
|
||||
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
|
||||
|
||||
Private Sub frmError_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
||||
@@ -27,7 +40,45 @@ Public Class frmError
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub frmError_Shown(sender As Object, e As System.EventArgs) Handles Me.Shown
|
||||
Me.Label1.Focus()
|
||||
Private Sub CloseDialog()
|
||||
' ========== 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
|
||||
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
|
||||
|
||||
965
app/TaskFlow/frmInvDashboard.Designer.vb
generated
965
app/TaskFlow/frmInvDashboard.Designer.vb
generated
File diff suppressed because it is too large
Load Diff
@@ -195,60 +195,60 @@
|
||||
<data name="BarButtonItem4.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAB10RVh0VGl0
|
||||
bGUARXhwb3J0O1hscztFeHBvcnRUb1hscztMoJn+AAACZklEQVQ4T2WTWWsTYRSGszdtg1r/Rk3Tmv4S
|
||||
RWhUEAQFJVqLF7FNmqSpXdKqRazQDW/0pimBghKsuMRWaNJ7b70UsWaZJTOTmSSv5/tmGqY68CQzgfc5
|
||||
3zln4qDLSbgIN+Gx8Nrw/QP7zQnAwWCXK7tZKi5vHYGxtFVGdrOMJWJx44goYWG9jIW1Q8yvlZBZLe4z
|
||||
iV3gyW6U0aEnDn2YdDjtE9ommRffWMpvF3jn1g95SNVaUIiGaiIrBkdSWhAJvdVGamWfpfrsAh+zMoGs
|
||||
moGTEA/KLQgNA3WiabQRf/KFpfpPCVIrX/lxJUWH1NCpmtENMWqyjiqhNdv4cPDjP0HPFFlZnwIFJ3JX
|
||||
MDrfg9E5hg/hxz5cnGV4MTLjxXCaSHkQSroRSrjzTOCPLX7kgpps8HBTNxAmgarpCFO4oerd8PO9JOqi
|
||||
hpqoIphw8SP0TszuoUUTrko6CXzQaJCsskIzGcn4eFvDaQ+vXJc0DE27MUTh4JQliKYKXHBcb/LKLz/P
|
||||
8PDqpzRV9kBsNLvHXnmfRFVQEIy7SeDkgr47ibcwWh38rmu2yl7ILEiVRVkze7YqPy1M47iq4MKkKei/
|
||||
PbkLg1b0q6rxgSm0DdazRIIQVRasnp9RsFJTeXj5XRyDj0xB4GZsFzoJflZURN9ctgZm9swqd3uOu6gq
|
||||
w0lhBwZjDr6FwI2Hef6SiLRzgQZWp53z3Ys6KoKOP4JG89F4i/nCd1Z1wP4e+CN3XxevP9jB1fEdsO9r
|
||||
4zlE7ufoeRuRe3QfNRmLbuPSrVcHlDn1IrG/ci9xhjhLnLMYsHHegt0HCLcpgOMvLlVmbi0MtN8AAAAA
|
||||
SUVORK5CYII=
|
||||
bGUARXhwb3J0O1hscztFeHBvcnRUb1hscztMoJn+AAACeElEQVQ4T2WTW2sTQRiGJ8lme0Stf6NNDza/
|
||||
RBFMFQRBQYnW4kUPSZu0NT1rECv0hDd605RCQQlW1NZWaNN7b70UsTbZbPaUmd28MrObsNaFh10W3ueb
|
||||
d2eWEEIChJAgISRECJE8wj7kc/B3AQCEw6/g/Prx/uLGCTgLGwXMrxewsF7A3NoJ5taOMbtawOzKEWZW
|
||||
jjG1vH/AJX6BNL9WQA1wqdWpCZw6jsvUy2881ewXhDOrRyJkWjYMy4ZuumgGE1QMG6phg9oOUtkDnmr1
|
||||
C2Ru5QLNdAP1kAhqNso6g6IzVJmDxNIeT7X9I0hlv4rlVgyKik6hGqwR4pQ0iqJGYVUdfDz88Z+gaWxp
|
||||
T/QsGwxDueuIzjQhmuHI6H8q48o0J4y+yTB602H0piT0TITQkwxtc0Hz8NwnIShpTISrlKE/0wTTouif
|
||||
lqGbtBF+sTsBRbVQUk1EkkGxhJah6V3YTg3FCkV0RoZl2WKyYTL0TcmiVm9aEpOVioXu8RC6k0FExjxB
|
||||
PJUXglOlKia/+jIpwsuf0+iblKDq1caysx8mUCwbiCRCiIwFhKD1fvIdmF3Db8XyTQ5D48G0BFWz3M7e
|
||||
5Gf5cZwWDXSNuoK2e6M7YMzBr6IlPphhuJ0rehU9KQllr/Pz/DjOSqYIL75PoHPEFbTfGd4BZQ5+npmI
|
||||
v73mfTC3M5/c6JwIomuUE0DnCEHnMBG70H77ybY4JKrO959C0ai79yrFWZniT9nCqWKJitv573xqh/8c
|
||||
NMcevNm/9XgLA4Nb4PebgznEHuUwMLiJ2MMcYnGXG/FNXL37+vD8QeK/cgsh5AIh5CIh5JJHh4/LHvy5
|
||||
nf/6dcFfLlVmbk9WkuUAAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonItem4.ImageOptions.LargeImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonItem5.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
@@ -290,156 +290,153 @@
|
||||
<metadata name="TableAdapterManager.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>905, 17</value>
|
||||
</metadata>
|
||||
<metadata name="VWPM_CHART_TOP5BindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>1078, 17</value>
|
||||
</metadata>
|
||||
<data name="colKRED_NAME.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
kmkAAAAASUVORK5CYII=
|
||||
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
|
||||
</value>
|
||||
</data>
|
||||
<data name="colANZ_BELEG.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
</value>
|
||||
</data>
|
||||
<data name="colNetto.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
</value>
|
||||
</data>
|
||||
<data name="colSkonto.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAhdEVYdFRpdGxlAEV1cm87RG9sbGFyO01vbmV5O0N1
|
||||
cnJlbmN5OwBqwi4AAAJUSURBVFhHrZY9bttAEIVVGul8g8BNCpdqXAaBL5AiV7A7ncGdfYEUPoEAt7lB
|
||||
ECCNW1WBr5BKvfw+epcYrt8OGUUCPpLanT/t7jxqtV6ve1yKjdiKndgXeGaMOWyc7+pwOCzCOX8Ud+KP
|
||||
OMyADbb4TOK4ZI6Jk/gsfgiXLAMffMdYLpmjTf5LuARLwHcswiVz1OQs4TG/vIUYw3a4ZI5aAPvoAh4D
|
||||
sWwyB8k5ydmBexbfohPfw3wLsS6jfQbBaCcXCB6ck8bPG7uWjfNzEIyedkGeq5Ger8VLGf8rshWAbUyS
|
||||
QXCExQW5wUD3i2a85be4F1/FJ/FBnLWJepAAdZsEbY0csvspbsWVOFoxubwroEAlzN+Escp38UX8t2Jy
|
||||
ebcF8Zc6ZHMyxeTSO4RPISGHkMPHL+f5ZIrJJWvDtv8XKWaxtXOFUTExnBOiB3FRgi5SzAUFwKCYGC4J
|
||||
TKtx2rNC2aKhdSMa48Ncaz8oZi1gbmnp82yrYOgah6aQc+ezqQVA9jpGZHqHFaJqPpZ7naONewVsYwHQ
|
||||
ay8UrqeY8BIKuC53t+wtu5i8wna0AoO89gSr4vafd0Z9hzj2bfJI/FN6JuYKADpmchb0lTdnr4j9pOIM
|
||||
GWdbMKHYP4nz8uzkHHY2mUPG6SEU43IXe8arfvQK2NpkDhlnbTh2gUPzrIbz21gHh4wzxRz+pBgfPo/C
|
||||
+bwJUevUQ8ZweimOSTIwFqd/GcUkGRgXMsVcwvR17JI5qkOhp5hz4DMmB5vMEZ0KTjF7YIPtsOwRm8zR
|
||||
OgaiYv7jn9L16hWdfBk/Ic3q5wAAAABJRU5ErkJggg==
|
||||
cnJlbmN5OwBqwi4AAAJHSURBVFhHrZc9TgMxEIUpIzpugGgoUr6GEqFcgIIrhG7PQEcuQJETrJSWGyAk
|
||||
mrSpUK5AlX7Rc+zgPM+sl2Qjfcmynr+1Pc/LBYALhymABkALYANgF+E173GMNuoX6LpuEIUjgGsALwC+
|
||||
AXQVaENb+oxSwD2AdyNRDfrQ96wCGODTCD4U+h6K0EQe+bSf8uQKY4Tl0EQeqQCuowY7FcYqEnkwOXdy
|
||||
34ZbA3jKnfi3YZdgrKkm8mAwtpMGSSzUIRZwZdjmNOrjwWDsaQ1A1lnCGYBtvP9TmQHSaiIPBqewaAAy
|
||||
j8lvjLGcLwCvAB4B3AK4BDDRRB5MQHU7CqpGFgA+ADwDuDtHMc0CIqyE43Nj7A3AwxiKaS6BPq0ypmLy
|
||||
y9uEqywhNyE3H5+c16MpJr/62lD7f5BiRtvifsZBMWlYE6IFOyEGHaSYAwogQTHTWtQCs9W42/sK5RKF
|
||||
1pVZ44djah8UMxVQm1r2ed9SkdA1FlHO1Z40qQDSdxxTZLzNSnLVXMoSsI29Atq8gFSENRNUuKJdM7ZZ
|
||||
AbP4a027stECiPVKRnn1BCthrT/PjHSGWOw0eU7+UjoZUABhxxzthXhyekXsig3jUVmCI6L9isnjtSXn
|
||||
ZFMk8qhtwny6oz3vJ/3wCmiLRB6VNjx0gUWcDfUhTWHsUVHM8JJi+PCzNOzJXojUySNuzJpiBqJ9cV/Y
|
||||
S7Em8sha1NKJ/xbwdxhpIg8RK08xh3B8HGsiD9EITzFrlC8kmshDCkjLoYrp4b+SaSIPdcw469/4X518
|
||||
GT/5HgfSAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="VWPM_CHART_TOP5BindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>1078, 17</value>
|
||||
</metadata>
|
||||
<metadata name="VWPM_CHART_TOP5TableAdapter.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 56</value>
|
||||
</metadata>
|
||||
|
||||
@@ -4,7 +4,7 @@ Imports DevExpress.XtraCharts
|
||||
Imports DevExpress.XtraGrid.Views.Tile
|
||||
Imports DigitalData.GUIs.Common
|
||||
|
||||
Public Class frmInvDashboard
|
||||
Partial Public Class frmInvDashboard
|
||||
Private _selectedChart As ChartControl
|
||||
Private Sub frmInvDashboard_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
Try
|
||||
@@ -15,26 +15,104 @@ Public Class frmInvDashboard
|
||||
WithClipboardHandler()
|
||||
|
||||
Try
|
||||
VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter.Connection.ConnectionString = CONNECTION_STRING_ECM
|
||||
Me.VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter.Fill(Me.DD_DMSLiteDataSet.VWPM_CHART_INVOICE_MONITOR_SERIES)
|
||||
Catch ex As Exception
|
||||
MsgBox("Error loading form1 - " & ex.Message, MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
|
||||
End Try
|
||||
|
||||
VWPM_CHART_TOP5TableAdapter.Connection.ConnectionString = CONNECTION_STRING_ECM
|
||||
Me.VWPM_CHART_TOP5TableAdapter.Fill(Me.DD_DMSLiteDataSet.VWPM_CHART_TOP5)
|
||||
VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter.Connection.ConnectionString = CONNECTION_STRING_ECM
|
||||
Me.VWPM_CHART_INVOICE_MONITOR_SERIESTableAdapter.Fill(Me.DD_DMSLiteDataSet.VWPM_CHART_INVOICE_MONITOR_SERIES, COCKPIT_CHART_ID)
|
||||
Catch ex As Exception
|
||||
MsgBox("Error loading VWPM_CHART_INVOICE_MONITOR_SERIES - " & ex.Message, MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
|
||||
LOGGER.Error(ex)
|
||||
End Try
|
||||
Try
|
||||
Dim osql = $"SELECT KRED_NAME, ANZ_BELEG, Netto, Skonto FROM VWPM_CHART_TOP5 WHERE COCKPIT_CHART_ID = {COCKPIT_CHART_ID}"
|
||||
Dim dtTOP5 As DataTable = DatabaseFallback.GetDatatableECM(osql)
|
||||
If IsNothing(dtTOP5) OrElse dtTOP5.Rows.Count = 0 Then
|
||||
LOGGER.Warn("No data for VWPM_CHART_TOP5 - check SQL query or connection!")
|
||||
GridControlTopKreditoren.DataSource = Nothing
|
||||
GridControlTopKreditoren.Visible = False
|
||||
BarButtonItemTKredPdf.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
|
||||
BarButtonItemTKredExcel.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
|
||||
Else
|
||||
GridControlTopKreditoren.DataSource = dtTOP5
|
||||
GridControlTopKreditoren.Visible = True
|
||||
BarButtonItemTKredPdf.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
|
||||
BarButtonItemTKredExcel.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
|
||||
End If
|
||||
|
||||
'VWPM_CHART_TOP5TableAdapter.Connection.ConnectionString = CONNECTION_STRING_ECM
|
||||
'Me.VWPM_CHART_TOP5TableAdapter.Fill(Me.DD_DMSLiteDataSet.VWPM_CHART_TOP5, COCKPIT_CHART_ID)
|
||||
Catch ex As Exception
|
||||
MsgBox("Error loading VWPM_CHART_TOP5 - " & ex.Message, MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
|
||||
LOGGER.Error(ex)
|
||||
End Try
|
||||
ApplySplitterPosition()
|
||||
Layout_Dashboard()
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
MsgBox("Error loading form2 - " & ex.Message, MsgBoxStyle.Exclamation, ADDITIONAL_TITLE)
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub frmInvDashboard_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
|
||||
SaveSplitterPosition()
|
||||
End Sub
|
||||
Private Sub ApplySplitterPosition()
|
||||
Try
|
||||
If IsNothing(CONFIG) OrElse IsNothing(CONFIG.Config) Then
|
||||
Return
|
||||
End If
|
||||
|
||||
If IsNothing(CONFIG.Config.InvDashboardSplitterPositions) Then
|
||||
CONFIG.Config.InvDashboardSplitterPositions = New List(Of ClassConfig.InvDashboardSplitterPosition)
|
||||
Return
|
||||
End If
|
||||
|
||||
Dim entry = CONFIG.Config.InvDashboardSplitterPositions.
|
||||
FirstOrDefault(Function(x) x.CockpitChartId = COCKPIT_CHART_ID)
|
||||
|
||||
If entry IsNot Nothing Then
|
||||
SplitContainerControl1.SplitterPosition = entry.SplitterPosition
|
||||
End If
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub SaveSplitterPosition()
|
||||
Try
|
||||
If IsNothing(CONFIG) OrElse IsNothing(CONFIG.Config) Then
|
||||
Return
|
||||
End If
|
||||
|
||||
If IsNothing(CONFIG.Config.InvDashboardSplitterPositions) Then
|
||||
CONFIG.Config.InvDashboardSplitterPositions = New List(Of ClassConfig.InvDashboardSplitterPosition)
|
||||
End If
|
||||
|
||||
Dim entry = CONFIG.Config.InvDashboardSplitterPositions.
|
||||
FirstOrDefault(Function(x) x.CockpitChartId = COCKPIT_CHART_ID)
|
||||
|
||||
If entry Is Nothing Then
|
||||
CONFIG.Config.InvDashboardSplitterPositions.Add(New ClassConfig.InvDashboardSplitterPosition With {
|
||||
.CockpitChartId = COCKPIT_CHART_ID,
|
||||
.SplitterPosition = SplitContainerControl1.SplitterPosition
|
||||
})
|
||||
Else
|
||||
entry.SplitterPosition = SplitContainerControl1.SplitterPosition
|
||||
End If
|
||||
CONFIG.Save()
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
Sub Layout_Dashboard()
|
||||
Try
|
||||
Dim groupCount As Integer
|
||||
Dim charts As List(Of ChartControl)
|
||||
Dim oGroups As DataRowCollection = BASEDATA_DT_CHARTS.Rows
|
||||
Dim oGroups As DataRow() = BASEDATA_DT_CHARTS.Select($"COCKPIT_CHART_ID = {COCKPIT_CHART_ID}")
|
||||
groupCount = oGroups.Count
|
||||
|
||||
|
||||
Configure_Split_Containers(groupCount)
|
||||
charts = New List(Of ChartControl) From {ChartTopLeft, ChartTopRight, ChartBottomLeft, ChartBottomRight}
|
||||
If groupCount >= 1 Then
|
||||
@@ -53,7 +131,7 @@ Public Class frmInvDashboard
|
||||
If groupCount >= 1 Then
|
||||
LOGGER.Debug($"ChartCreating...Found more than one charts [{groupCount}]")
|
||||
For Each gRow As DataRow In oGroups
|
||||
Dim oGroupIndex As Integer = oGroups.IndexOf(gRow)
|
||||
Dim oGroupIndex As Integer = Array.IndexOf(oGroups, gRow)
|
||||
Dim oGroupID As String = gRow.Item("GROUP_ID")
|
||||
|
||||
Dim groupCharts = BASEDATA_DT_CHARTS.Select(String.Format("GROUP_ID = '{0}'", oGroupID))
|
||||
@@ -314,8 +392,8 @@ Public Class frmInvDashboard
|
||||
RibbonPageGroup1.Enabled = False
|
||||
RibbonPageGroup2.Enabled = True
|
||||
BarButtonItem3.Enabled = True
|
||||
BarButtonItem4.Enabled = False
|
||||
BarButtonItem5.Enabled = False
|
||||
BarButtonItemTKredExcel.Enabled = False
|
||||
BarButtonItemTKredPdf.Enabled = False
|
||||
End Sub
|
||||
|
||||
Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick
|
||||
@@ -325,25 +403,25 @@ Public Class frmInvDashboard
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem4.ItemClick
|
||||
Private Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemTKredExcel.ItemClick
|
||||
SaveFileDialog1.Filter = "Excel Files (*.xlsx*)|*.xlsx"
|
||||
If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
|
||||
GridView1.ExportToXlsx(SaveFileDialog1.FileName)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub BarButtonItem5_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem5.ItemClick
|
||||
Private Sub BarButtonItem5_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemTKredPdf.ItemClick
|
||||
SaveFileDialog1.Filter = "PDF Files (*.pdf*)|*.pdf"
|
||||
If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
|
||||
GridView1.ExportToPdf(SaveFileDialog1.FileName)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub GridControl2_Click(sender As Object, e As EventArgs) Handles GridControl2.Click
|
||||
Private Sub GridControl2_Click(sender As Object, e As EventArgs) Handles GridControlTopKreditoren.Click
|
||||
RibbonPageGroup1.Enabled = False
|
||||
RibbonPageGroup2.Enabled = True
|
||||
BarButtonItem3.Enabled = False
|
||||
BarButtonItem4.Enabled = True
|
||||
BarButtonItem5.Enabled = True
|
||||
BarButtonItemTKredExcel.Enabled = True
|
||||
BarButtonItemTKredPdf.Enabled = True
|
||||
End Sub
|
||||
End Class
|
||||
317
app/TaskFlow/frmMain.Designer.vb
generated
317
app/TaskFlow/frmMain.Designer.vb
generated
@@ -24,15 +24,9 @@ Partial Class frmMain
|
||||
Private Sub InitializeComponent()
|
||||
Me.components = New System.ComponentModel.Container()
|
||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmMain))
|
||||
Me.ImageListProfile = New System.Windows.Forms.ImageList(Me.components)
|
||||
Me.DD_DMSLiteDataSet = New taskFLOW.DD_DMSLiteDataSet()
|
||||
Me.TableAdapterManager = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager()
|
||||
Me.Panel1 = New System.Windows.Forms.Panel()
|
||||
Me.GridControlWorkflows = New DevExpress.XtraGrid.GridControl()
|
||||
Me.GridViewWorkflows = New DevExpress.XtraGrid.Views.Grid.GridView()
|
||||
Me.TreeList_Cockpit = New DevExpress.XtraTreeList.TreeList()
|
||||
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
|
||||
Me.bbtniRefresh = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.bbtniMonitor = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.bbiProfilverwaltung = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.bbiKonfiguration = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.bbtniGrundeinstellung = New DevExpress.XtraBars.BarButtonItem()
|
||||
@@ -48,7 +42,6 @@ Partial Class frmMain
|
||||
Me.bbtniMetadataFile = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.BarEditItem1 = New DevExpress.XtraBars.BarEditItem()
|
||||
Me.RepositoryItemProgressBar1 = New DevExpress.XtraEditors.Repository.RepositoryItemProgressBar()
|
||||
Me.bbtnitDashboardInv = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.bsiGeneralInfo = New DevExpress.XtraBars.BarStaticItem()
|
||||
Me.bbtnitmGhostMode = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.bsi_GhostMode = New DevExpress.XtraBars.BarStaticItem()
|
||||
@@ -84,9 +77,9 @@ Partial Class frmMain
|
||||
Me.BSIVERSION1 = New DevExpress.XtraBars.BarStaticItem()
|
||||
Me.barbtnitmsaveLogfiles = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.bsitmCount = New DevExpress.XtraBars.BarStaticItem()
|
||||
Me.BarButtonItemCock_refresh = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.RibbonPageStart = New DevExpress.XtraBars.Ribbon.RibbonPage()
|
||||
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||
Me.RibbonPageGroupBasicConf = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||
Me.RibbonPageGroup7 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||
@@ -99,14 +92,18 @@ Partial Class frmMain
|
||||
Me.RibbonPageGroup8 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||
Me.RepositoryItemTrackBar1 = New DevExpress.XtraEditors.Repository.RepositoryItemTrackBar()
|
||||
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
|
||||
Me.ImageCollection1 = New DevExpress.Utils.ImageCollection(Me.components)
|
||||
Me.GridControlWorkflows = New DevExpress.XtraGrid.GridControl()
|
||||
Me.GridViewWorkflows = New DevExpress.XtraGrid.Views.Grid.GridView()
|
||||
Me.Panel2 = New System.Windows.Forms.Panel()
|
||||
Me.lblCaptionMainGrid = New System.Windows.Forms.Label()
|
||||
Me.NavBarControl1 = New DevExpress.XtraNavBar.NavBarControl()
|
||||
Me.NavBarGroupProfiles = New DevExpress.XtraNavBar.NavBarGroup()
|
||||
Me.ImageListProfile = New System.Windows.Forms.ImageList(Me.components)
|
||||
Me.DD_DMSLiteDataSet = New taskFLOW.DD_DMSLiteDataSet()
|
||||
Me.TableAdapterManager = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager()
|
||||
Me.Panel1 = New System.Windows.Forms.Panel()
|
||||
Me.SplitterControl1 = New DevExpress.XtraEditors.SplitterControl()
|
||||
Me.cmsNavPane = New System.Windows.Forms.ContextMenuStrip(Me.components)
|
||||
Me.tsmiValidationProfil = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.NavBarGroupMore = New DevExpress.XtraNavBar.NavBarGroup()
|
||||
Me.NavBarItemOverview = New DevExpress.XtraNavBar.NavBarItem()
|
||||
Me.bindsourcegrid = New System.Windows.Forms.BindingSource(Me.components)
|
||||
Me.NotifyIcon1 = New System.Windows.Forms.NotifyIcon(Me.components)
|
||||
Me.ContextMenuNotifyIcon = New System.Windows.Forms.ContextMenuStrip(Me.components)
|
||||
@@ -194,16 +191,17 @@ Partial Class frmMain
|
||||
Me.TimerInactivity = New System.Windows.Forms.Timer(Me.components)
|
||||
Me.BarButtonItem5 = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.BarButtonItem9 = New DevExpress.XtraBars.BarButtonItem()
|
||||
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.Panel1.SuspendLayout()
|
||||
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.TreeList_Cockpit, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RepositoryItemProgressBar1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.cmbGridFontSize, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RepositoryItemTrackBar1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.ImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.Panel2.SuspendLayout()
|
||||
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.Panel1.SuspendLayout()
|
||||
Me.cmsNavPane.SuspendLayout()
|
||||
CType(Me.bindsourcegrid, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.ContextMenuNotifyIcon.SuspendLayout()
|
||||
@@ -214,88 +212,36 @@ Partial Class frmMain
|
||||
CType(Me.ApplicationMenu1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'ImageListProfile
|
||||
'TreeList_Cockpit
|
||||
'
|
||||
Me.ImageListProfile.ImageStream = CType(resources.GetObject("ImageListProfile.ImageStream"), System.Windows.Forms.ImageListStreamer)
|
||||
Me.ImageListProfile.TransparentColor = System.Drawing.Color.Transparent
|
||||
Me.ImageListProfile.Images.SetKeyName(0, "ico2558.ico")
|
||||
Me.ImageListProfile.Images.SetKeyName(1, "ico2591.ico")
|
||||
'
|
||||
'DD_DMSLiteDataSet
|
||||
'
|
||||
Me.DD_DMSLiteDataSet.DataSetName = "DD_DMSLiteDataSet"
|
||||
Me.DD_DMSLiteDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema
|
||||
'
|
||||
'TableAdapterManager
|
||||
'
|
||||
Me.TableAdapterManager.BackupDataSetBeforeUpdate = False
|
||||
Me.TableAdapterManager.Connection = Nothing
|
||||
Me.TableAdapterManager.TBDD_CONNECTIONTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBDD_EMAIL_TEMPLATETableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBDD_GUI_LANGUAGE_PHRASETableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBDD_USERTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_CONTROL_TABLETableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_ERROR_LOGTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_KONFIGURATIONTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_PROFILE_CONTROLSTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_PROFILE_FILESTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_PROFILE_FINAL_INDEXINGTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_PROFILETableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_TYPETableAdapter = Nothing
|
||||
Me.TableAdapterManager.UpdateOrder = taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete
|
||||
'
|
||||
'Panel1
|
||||
'
|
||||
Me.Panel1.BackColor = System.Drawing.Color.Transparent
|
||||
Me.Panel1.Controls.Add(Me.GridControlWorkflows)
|
||||
Me.Panel1.Controls.Add(Me.Panel2)
|
||||
Me.Panel1.Controls.Add(Me.NavBarControl1)
|
||||
resources.ApplyResources(Me.Panel1, "Panel1")
|
||||
Me.Panel1.Name = "Panel1"
|
||||
'
|
||||
'GridControlWorkflows
|
||||
'
|
||||
resources.ApplyResources(Me.GridControlWorkflows, "GridControlWorkflows")
|
||||
Me.GridControlWorkflows.MainView = Me.GridViewWorkflows
|
||||
Me.GridControlWorkflows.MenuManager = Me.RibbonControl1
|
||||
Me.GridControlWorkflows.Name = "GridControlWorkflows"
|
||||
Me.GridControlWorkflows.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewWorkflows})
|
||||
'
|
||||
'GridViewWorkflows
|
||||
'
|
||||
Me.GridViewWorkflows.Appearance.EvenRow.BackColor = System.Drawing.Color.Azure
|
||||
Me.GridViewWorkflows.Appearance.EvenRow.Options.UseBackColor = True
|
||||
Me.GridViewWorkflows.Appearance.FooterPanel.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.FooterPanel.Font"), System.Drawing.Font)
|
||||
Me.GridViewWorkflows.Appearance.FooterPanel.Options.UseFont = True
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.ViewCaption.Font"), System.Drawing.Font)
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.ForeColor = System.Drawing.Color.Black
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseFont = True
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseForeColor = True
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseTextOptions = True
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near
|
||||
Me.GridViewWorkflows.GridControl = Me.GridControlWorkflows
|
||||
Me.GridViewWorkflows.Name = "GridViewWorkflows"
|
||||
Me.GridViewWorkflows.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.GridViewWorkflows.OptionsBehavior.AllowDeleteRows = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.GridViewWorkflows.OptionsBehavior.AllowFixedGroups = DevExpress.Utils.DefaultBoolean.[True]
|
||||
Me.GridViewWorkflows.OptionsBehavior.AllowGroupExpandAnimation = DevExpress.Utils.DefaultBoolean.[True]
|
||||
Me.GridViewWorkflows.OptionsBehavior.Editable = False
|
||||
Me.GridViewWorkflows.OptionsClipboard.CopyColumnHeaders = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.GridViewWorkflows.OptionsSelection.MultiSelect = True
|
||||
Me.GridViewWorkflows.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CellSelect
|
||||
Me.GridViewWorkflows.OptionsView.ColumnAutoWidth = False
|
||||
Me.GridViewWorkflows.OptionsView.EnableAppearanceEvenRow = True
|
||||
Me.GridViewWorkflows.OptionsView.ShowAutoFilterRow = True
|
||||
Me.GridViewWorkflows.OptionsView.ShowErrorPanel = DevExpress.Utils.DefaultBoolean.[True]
|
||||
Me.GridViewWorkflows.OptionsView.ShowHorizontalLines = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.GridViewWorkflows.OptionsView.ShowVerticalLines = DevExpress.Utils.DefaultBoolean.[False]
|
||||
resources.ApplyResources(Me.TreeList_Cockpit, "TreeList_Cockpit")
|
||||
Me.TreeList_Cockpit.ImageIndexFieldName = "ICON_INDEX"
|
||||
Me.TreeList_Cockpit.KeyFieldName = "PK_CFG_COCKPIT_DEFINITION_ID"
|
||||
Me.TreeList_Cockpit.MenuManager = Me.RibbonControl1
|
||||
Me.TreeList_Cockpit.Name = "TreeList_Cockpit"
|
||||
Me.TreeList_Cockpit.OptionsBehavior.Editable = False
|
||||
Me.TreeList_Cockpit.OptionsBehavior.PopulateServiceColumns = True
|
||||
Me.TreeList_Cockpit.OptionsBehavior.ReadOnly = True
|
||||
Me.TreeList_Cockpit.OptionsLayout.AddNewColumns = False
|
||||
Me.TreeList_Cockpit.OptionsMenu.ShowExpandCollapseItems = False
|
||||
Me.TreeList_Cockpit.OptionsSelection.EnableAppearanceFocusedCell = False
|
||||
Me.TreeList_Cockpit.OptionsView.ShowColumns = False
|
||||
Me.TreeList_Cockpit.OptionsView.ShowFilterPanelMode = DevExpress.XtraTreeList.ShowFilterPanelMode.Never
|
||||
Me.TreeList_Cockpit.OptionsView.ShowFirstLines = False
|
||||
Me.TreeList_Cockpit.OptionsView.ShowHorzLines = False
|
||||
Me.TreeList_Cockpit.OptionsView.ShowIndentAsRowStyle = True
|
||||
Me.TreeList_Cockpit.OptionsView.ShowIndicator = False
|
||||
Me.TreeList_Cockpit.OptionsView.ShowVertLines = False
|
||||
Me.TreeList_Cockpit.OptionsView.TreeLineStyle = DevExpress.XtraTreeList.LineStyle.Dark
|
||||
Me.TreeList_Cockpit.ParentFieldName = "Parent_ID"
|
||||
Me.TreeList_Cockpit.SelectImageList = Me.ImageCollection1
|
||||
'
|
||||
'RibbonControl1
|
||||
'
|
||||
Me.RibbonControl1.ExpandCollapseItem.Id = 0
|
||||
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.bbtniRefresh, Me.bbtniMonitor, Me.bbiProfilverwaltung, Me.bbiKonfiguration, Me.bbtniGrundeinstellung, Me.bbtnitemInfo, Me.BarButtonItem1, Me.bsiUser, Me.bsiLicenses, Me.bsiUserLoggedIn, Me.bsiVersion, Me.bsilastsync, Me.bsiDebug, Me.bsiMessage, Me.bbtniMetadataFile, Me.BarEditItem1, Me.bbtnitDashboardInv, Me.bsiGeneralInfo, Me.bbtnitmGhostMode, Me.bsi_GhostMode, Me.BarButtonItemGhostMode, Me.SearchItem1, Me.SearchItem2, Me.BarStaticItemAppServer, Me.bbtniCW, Me.bsiInactivityCheck, Me.BarButtonItem2, Me.BarCheckItemAutofilter, Me.BarCheckItem2, Me.BarButtonItemResetLayout, Me.BarButtonItem4, Me.BarButtonItemExportExcel, Me.BarButtonItem6, Me.BarButtonItem7, Me.BarButtonItemWFSingle, Me.BarButtonItemWFGroup, Me.BarButtonItemFileLink, Me.BarButtonItemMassValidation, Me.BarCheckItemShowSearch, Me.barItemGridFontSize, Me.BarButtonItem8, Me.BbtnitmAHWF1, Me.BbtnitmAHWF2, Me.BbtnitmAHWF3, Me.BbtnitmAHWF4, Me.bbtnitmLanguage_Change, Me.BarButtonItem10, Me.BBtnItmNotfications, Me.BSIVERSION1, Me.barbtnitmsaveLogfiles, Me.bsitmCount})
|
||||
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.bbtniRefresh, Me.bbiProfilverwaltung, Me.bbiKonfiguration, Me.bbtniGrundeinstellung, Me.bbtnitemInfo, Me.BarButtonItem1, Me.bsiUser, Me.bsiLicenses, Me.bsiUserLoggedIn, Me.bsiVersion, Me.bsilastsync, Me.bsiDebug, Me.bsiMessage, Me.bbtniMetadataFile, Me.BarEditItem1, Me.bsiGeneralInfo, Me.bbtnitmGhostMode, Me.bsi_GhostMode, Me.BarButtonItemGhostMode, Me.SearchItem1, Me.SearchItem2, Me.BarStaticItemAppServer, Me.bbtniCW, Me.bsiInactivityCheck, Me.BarButtonItem2, Me.BarCheckItemAutofilter, Me.BarCheckItem2, Me.BarButtonItemResetLayout, Me.BarButtonItem4, Me.BarButtonItemExportExcel, Me.BarButtonItem6, Me.BarButtonItem7, Me.BarButtonItemWFSingle, Me.BarButtonItemWFGroup, Me.BarButtonItemFileLink, Me.BarButtonItemMassValidation, Me.BarCheckItemShowSearch, Me.barItemGridFontSize, Me.BarButtonItem8, Me.BbtnitmAHWF1, Me.BbtnitmAHWF2, Me.BbtnitmAHWF3, Me.BbtnitmAHWF4, Me.bbtnitmLanguage_Change, Me.BarButtonItem10, Me.BBtnItmNotfications, Me.BSIVERSION1, Me.barbtnitmsaveLogfiles, Me.bsitmCount, Me.BarButtonItemCock_refresh})
|
||||
resources.ApplyResources(Me.RibbonControl1, "RibbonControl1")
|
||||
Me.RibbonControl1.MaxItemId = 57
|
||||
Me.RibbonControl1.MaxItemId = 58
|
||||
Me.RibbonControl1.Name = "RibbonControl1"
|
||||
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPageStart, Me.RibbonPageTabelle, Me.RibbonPageAktionen})
|
||||
Me.RibbonControl1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemProgressBar1, Me.RepositoryItemTrackBar1, Me.cmbGridFontSize})
|
||||
@@ -313,14 +259,6 @@ Partial Class frmMain
|
||||
Me.bbtniRefresh.ImageOptions.LargeImage = CType(resources.GetObject("bbtniRefresh.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.bbtniRefresh.Name = "bbtniRefresh"
|
||||
'
|
||||
'bbtniMonitor
|
||||
'
|
||||
resources.ApplyResources(Me.bbtniMonitor, "bbtniMonitor")
|
||||
Me.bbtniMonitor.Id = 2
|
||||
Me.bbtniMonitor.ImageOptions.Image = CType(resources.GetObject("bbtniMonitor.ImageOptions.Image"), System.Drawing.Image)
|
||||
Me.bbtniMonitor.ImageOptions.LargeImage = CType(resources.GetObject("bbtniMonitor.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.bbtniMonitor.Name = "bbtniMonitor"
|
||||
'
|
||||
'bbiProfilverwaltung
|
||||
'
|
||||
resources.ApplyResources(Me.bbiProfilverwaltung, "bbiProfilverwaltung")
|
||||
@@ -436,13 +374,6 @@ Partial Class frmMain
|
||||
Me.RepositoryItemProgressBar1.Name = "RepositoryItemProgressBar1"
|
||||
Me.RepositoryItemProgressBar1.ShowTitle = True
|
||||
'
|
||||
'bbtnitDashboardInv
|
||||
'
|
||||
resources.ApplyResources(Me.bbtnitDashboardInv, "bbtnitDashboardInv")
|
||||
Me.bbtnitDashboardInv.Id = 17
|
||||
Me.bbtnitDashboardInv.ImageOptions.SvgImage = CType(resources.GetObject("bbtnitDashboardInv.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||
Me.bbtnitDashboardInv.Name = "bbtnitDashboardInv"
|
||||
'
|
||||
'bsiGeneralInfo
|
||||
'
|
||||
Me.bsiGeneralInfo.Id = 18
|
||||
@@ -732,29 +663,29 @@ Partial Class frmMain
|
||||
Me.bsitmCount.Name = "bsitmCount"
|
||||
Me.bsitmCount.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
|
||||
'
|
||||
'BarButtonItemCock_refresh
|
||||
'
|
||||
resources.ApplyResources(Me.BarButtonItemCock_refresh, "BarButtonItemCock_refresh")
|
||||
Me.BarButtonItemCock_refresh.Id = 57
|
||||
Me.BarButtonItemCock_refresh.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItemCock_refresh.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||
Me.BarButtonItemCock_refresh.Name = "BarButtonItemCock_refresh"
|
||||
'
|
||||
'RibbonPageStart
|
||||
'
|
||||
Me.RibbonPageStart.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3, Me.RibbonPageGroupBasicConf, Me.RibbonPageGroup7, Me.RibbonPageGroup4, Me.RibbonPageGroupAHW})
|
||||
Me.RibbonPageStart.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup3, Me.RibbonPageGroupBasicConf, Me.RibbonPageGroup7, Me.RibbonPageGroup4, Me.RibbonPageGroupAHW})
|
||||
Me.RibbonPageStart.Name = "RibbonPageStart"
|
||||
resources.ApplyResources(Me.RibbonPageStart, "RibbonPageStart")
|
||||
'
|
||||
'RibbonPageGroup1
|
||||
'
|
||||
Me.RibbonPageGroup1.AllowTextClipping = False
|
||||
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItemCock_refresh)
|
||||
Me.RibbonPageGroup1.ItemLinks.Add(Me.bbtniRefresh)
|
||||
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItemGhostMode)
|
||||
Me.RibbonPageGroup1.ItemLinks.Add(Me.BBtnItmNotfications)
|
||||
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
|
||||
resources.ApplyResources(Me.RibbonPageGroup1, "RibbonPageGroup1")
|
||||
'
|
||||
'RibbonPageGroup2
|
||||
'
|
||||
Me.RibbonPageGroup2.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
|
||||
Me.RibbonPageGroup2.ItemLinks.Add(Me.bbtnitDashboardInv)
|
||||
Me.RibbonPageGroup2.ItemLinks.Add(Me.bbtniMonitor)
|
||||
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
|
||||
resources.ApplyResources(Me.RibbonPageGroup2, "RibbonPageGroup2")
|
||||
'
|
||||
'RibbonPageGroup3
|
||||
'
|
||||
Me.RibbonPageGroup3.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
|
||||
@@ -863,6 +794,52 @@ Partial Class frmMain
|
||||
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
|
||||
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
|
||||
'
|
||||
'ImageCollection1
|
||||
'
|
||||
resources.ApplyResources(Me.ImageCollection1, "ImageCollection1")
|
||||
Me.ImageCollection1.ImageStream = CType(resources.GetObject("ImageCollection1.ImageStream"), DevExpress.Utils.ImageCollectionStreamer)
|
||||
Me.ImageCollection1.Images.SetKeyName(0, "splittablecells_32x32.png")
|
||||
Me.ImageCollection1.Images.SetKeyName(1, "bosaleitem_32x32.png")
|
||||
Me.ImageCollection1.Images.SetKeyName(2, "bar2_32x32.png")
|
||||
Me.ImageCollection1.Images.SetKeyName(3, "gaugestylefullcircular_32x32.png")
|
||||
'
|
||||
'GridControlWorkflows
|
||||
'
|
||||
resources.ApplyResources(Me.GridControlWorkflows, "GridControlWorkflows")
|
||||
Me.GridControlWorkflows.MainView = Me.GridViewWorkflows
|
||||
Me.GridControlWorkflows.MenuManager = Me.RibbonControl1
|
||||
Me.GridControlWorkflows.Name = "GridControlWorkflows"
|
||||
Me.GridControlWorkflows.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewWorkflows})
|
||||
'
|
||||
'GridViewWorkflows
|
||||
'
|
||||
Me.GridViewWorkflows.Appearance.EvenRow.BackColor = System.Drawing.Color.Azure
|
||||
Me.GridViewWorkflows.Appearance.EvenRow.Options.UseBackColor = True
|
||||
Me.GridViewWorkflows.Appearance.FooterPanel.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.FooterPanel.Font"), System.Drawing.Font)
|
||||
Me.GridViewWorkflows.Appearance.FooterPanel.Options.UseFont = True
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.ViewCaption.Font"), System.Drawing.Font)
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.ForeColor = System.Drawing.Color.Black
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseFont = True
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseForeColor = True
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseTextOptions = True
|
||||
Me.GridViewWorkflows.Appearance.ViewCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near
|
||||
Me.GridViewWorkflows.GridControl = Me.GridControlWorkflows
|
||||
Me.GridViewWorkflows.Name = "GridViewWorkflows"
|
||||
Me.GridViewWorkflows.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.GridViewWorkflows.OptionsBehavior.AllowDeleteRows = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.GridViewWorkflows.OptionsBehavior.AllowFixedGroups = DevExpress.Utils.DefaultBoolean.[True]
|
||||
Me.GridViewWorkflows.OptionsBehavior.AllowGroupExpandAnimation = DevExpress.Utils.DefaultBoolean.[True]
|
||||
Me.GridViewWorkflows.OptionsBehavior.Editable = False
|
||||
Me.GridViewWorkflows.OptionsClipboard.CopyColumnHeaders = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.GridViewWorkflows.OptionsSelection.MultiSelect = True
|
||||
Me.GridViewWorkflows.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CellSelect
|
||||
Me.GridViewWorkflows.OptionsView.ColumnAutoWidth = False
|
||||
Me.GridViewWorkflows.OptionsView.EnableAppearanceEvenRow = True
|
||||
Me.GridViewWorkflows.OptionsView.ShowAutoFilterRow = True
|
||||
Me.GridViewWorkflows.OptionsView.ShowErrorPanel = DevExpress.Utils.DefaultBoolean.[True]
|
||||
Me.GridViewWorkflows.OptionsView.ShowHorizontalLines = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.GridViewWorkflows.OptionsView.ShowVerticalLines = DevExpress.Utils.DefaultBoolean.[False]
|
||||
'
|
||||
'Panel2
|
||||
'
|
||||
Me.Panel2.Controls.Add(Me.lblCaptionMainGrid)
|
||||
@@ -874,26 +851,51 @@ Partial Class frmMain
|
||||
resources.ApplyResources(Me.lblCaptionMainGrid, "lblCaptionMainGrid")
|
||||
Me.lblCaptionMainGrid.Name = "lblCaptionMainGrid"
|
||||
'
|
||||
'NavBarControl1
|
||||
'ImageListProfile
|
||||
'
|
||||
Me.NavBarControl1.ActiveGroup = Me.NavBarGroupProfiles
|
||||
Me.NavBarControl1.ContextMenuStrip = Me.cmsNavPane
|
||||
resources.ApplyResources(Me.NavBarControl1, "NavBarControl1")
|
||||
Me.NavBarControl1.Groups.AddRange(New DevExpress.XtraNavBar.NavBarGroup() {Me.NavBarGroupMore, Me.NavBarGroupProfiles})
|
||||
Me.NavBarControl1.Items.AddRange(New DevExpress.XtraNavBar.NavBarItem() {Me.NavBarItemOverview})
|
||||
Me.NavBarControl1.Name = "NavBarControl1"
|
||||
Me.NavBarControl1.OptionsNavPane.ExpandedWidth = CType(resources.GetObject("resource.ExpandedWidth"), Integer)
|
||||
Me.NavBarControl1.PaintStyleKind = DevExpress.XtraNavBar.NavBarViewKind.NavigationPane
|
||||
Me.NavBarControl1.ShowIcons = DevExpress.Utils.DefaultBoolean.[True]
|
||||
Me.NavBarControl1.View = New DevExpress.XtraNavBar.ViewInfo.StandardSkinExplorerBarViewInfoRegistrator("Office 2019 White")
|
||||
Me.ImageListProfile.ImageStream = CType(resources.GetObject("ImageListProfile.ImageStream"), System.Windows.Forms.ImageListStreamer)
|
||||
Me.ImageListProfile.TransparentColor = System.Drawing.Color.Transparent
|
||||
Me.ImageListProfile.Images.SetKeyName(0, "ico2558.ico")
|
||||
Me.ImageListProfile.Images.SetKeyName(1, "ico2591.ico")
|
||||
'
|
||||
'NavBarGroupProfiles
|
||||
'DD_DMSLiteDataSet
|
||||
'
|
||||
resources.ApplyResources(Me.NavBarGroupProfiles, "NavBarGroupProfiles")
|
||||
Me.NavBarGroupProfiles.Expanded = True
|
||||
Me.NavBarGroupProfiles.GroupStyle = DevExpress.XtraNavBar.NavBarGroupStyle.LargeIconsText
|
||||
Me.NavBarGroupProfiles.ImageOptions.LargeImage = CType(resources.GetObject("NavBarGroupProfiles.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.NavBarGroupProfiles.Name = "NavBarGroupProfiles"
|
||||
Me.DD_DMSLiteDataSet.DataSetName = "DD_DMSLiteDataSet"
|
||||
Me.DD_DMSLiteDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema
|
||||
'
|
||||
'TableAdapterManager
|
||||
'
|
||||
Me.TableAdapterManager.BackupDataSetBeforeUpdate = False
|
||||
Me.TableAdapterManager.Connection = Nothing
|
||||
Me.TableAdapterManager.TBDD_CONNECTIONTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBDD_EMAIL_TEMPLATETableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBDD_GUI_LANGUAGE_PHRASETableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBDD_USERTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_CONTROL_TABLETableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_ERROR_LOGTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_KONFIGURATIONTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_PROFILE_CONTROLSTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_PROFILE_FILESTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_PROFILE_FINAL_INDEXINGTableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_PROFILETableAdapter = Nothing
|
||||
Me.TableAdapterManager.TBPM_TYPETableAdapter = Nothing
|
||||
Me.TableAdapterManager.UpdateOrder = taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete
|
||||
'
|
||||
'Panel1
|
||||
'
|
||||
Me.Panel1.BackColor = System.Drawing.Color.Transparent
|
||||
Me.Panel1.Controls.Add(Me.GridControlWorkflows)
|
||||
Me.Panel1.Controls.Add(Me.Panel2)
|
||||
Me.Panel1.Controls.Add(Me.SplitterControl1)
|
||||
Me.Panel1.Controls.Add(Me.TreeList_Cockpit)
|
||||
resources.ApplyResources(Me.Panel1, "Panel1")
|
||||
Me.Panel1.Name = "Panel1"
|
||||
'
|
||||
'SplitterControl1
|
||||
'
|
||||
resources.ApplyResources(Me.SplitterControl1, "SplitterControl1")
|
||||
Me.SplitterControl1.Name = "SplitterControl1"
|
||||
Me.SplitterControl1.TabStop = False
|
||||
'
|
||||
'cmsNavPane
|
||||
'
|
||||
@@ -908,25 +910,6 @@ Partial Class frmMain
|
||||
Me.tsmiValidationProfil.Name = "tsmiValidationProfil"
|
||||
resources.ApplyResources(Me.tsmiValidationProfil, "tsmiValidationProfil")
|
||||
'
|
||||
'NavBarGroupMore
|
||||
'
|
||||
resources.ApplyResources(Me.NavBarGroupMore, "NavBarGroupMore")
|
||||
Me.NavBarGroupMore.Expanded = True
|
||||
Me.NavBarGroupMore.GroupStyle = DevExpress.XtraNavBar.NavBarGroupStyle.LargeIconsText
|
||||
Me.NavBarGroupMore.ImageOptions.LargeImage = CType(resources.GetObject("NavBarGroupMore.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.NavBarGroupMore.ItemLinks.AddRange(New DevExpress.XtraNavBar.NavBarItemLink() {New DevExpress.XtraNavBar.NavBarItemLink(Me.NavBarItemOverview)})
|
||||
Me.NavBarGroupMore.Name = "NavBarGroupMore"
|
||||
'
|
||||
'NavBarItemOverview
|
||||
'
|
||||
Me.NavBarItemOverview.Appearance.Image = CType(resources.GetObject("NavBarItemOverview.Appearance.Image"), System.Drawing.Image)
|
||||
Me.NavBarItemOverview.Appearance.Options.UseImage = True
|
||||
resources.ApplyResources(Me.NavBarItemOverview, "NavBarItemOverview")
|
||||
Me.NavBarItemOverview.ImageOptions.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.NavBarItemOverview.ImageOptions.LargeImage = CType(resources.GetObject("NavBarItemOverview.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.NavBarItemOverview.Name = "NavBarItemOverview"
|
||||
Me.NavBarItemOverview.Tag = "OVERVIEW"
|
||||
'
|
||||
'NotifyIcon1
|
||||
'
|
||||
Me.NotifyIcon1.BalloonTipIcon = System.Windows.Forms.ToolTipIcon.Info
|
||||
@@ -1619,17 +1602,18 @@ Partial Class frmMain
|
||||
Me.Name = "frmMain"
|
||||
Me.Ribbon = Me.RibbonControl1
|
||||
Me.StatusBar = Me.RibbonStatusBar1
|
||||
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.Panel1.ResumeLayout(False)
|
||||
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.TreeList_Cockpit, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.RepositoryItemProgressBar1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.cmbGridFontSize, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.RepositoryItemTrackBar1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.ImageCollection1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.Panel2.ResumeLayout(False)
|
||||
Me.Panel2.PerformLayout()
|
||||
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.Panel1.ResumeLayout(False)
|
||||
Me.cmsNavPane.ResumeLayout(False)
|
||||
CType(Me.bindsourcegrid, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.ContextMenuNotifyIcon.ResumeLayout(False)
|
||||
@@ -1648,10 +1632,6 @@ Partial Class frmMain
|
||||
Friend WithEvents NotifyIcon1 As System.Windows.Forms.NotifyIcon
|
||||
Friend WithEvents TimerRefresh As System.Windows.Forms.Timer
|
||||
Friend WithEvents TimerReminder As System.Windows.Forms.Timer
|
||||
Friend WithEvents NavBarControl1 As DevExpress.XtraNavBar.NavBarControl
|
||||
Friend WithEvents NavBarGroupProfiles As DevExpress.XtraNavBar.NavBarGroup
|
||||
Friend WithEvents NavBarGroupMore As DevExpress.XtraNavBar.NavBarGroup
|
||||
Friend WithEvents NavBarItemOverview As DevExpress.XtraNavBar.NavBarItem
|
||||
Friend WithEvents cmsNavPane As ContextMenuStrip
|
||||
Friend WithEvents tsmiValidationProfil As ToolStripMenuItem
|
||||
Friend WithEvents bindsourcegrid As BindingSource
|
||||
@@ -1733,7 +1713,6 @@ Partial Class frmMain
|
||||
Friend WithEvents PrintPreviewBarCheckItem17 As DevExpress.XtraPrinting.Preview.PrintPreviewBarCheckItem
|
||||
Friend WithEvents PrintPreviewBarCheckItem18 As DevExpress.XtraPrinting.Preview.PrintPreviewBarCheckItem
|
||||
Friend WithEvents PrintPreviewBarCheckItem19 As DevExpress.XtraPrinting.Preview.PrintPreviewBarCheckItem
|
||||
Friend WithEvents Panel1 As Panel
|
||||
Friend WithEvents OutOfRangePMFixierenToolStripMenuItem As ToolStripMenuItem
|
||||
Friend WithEvents ToolStripSeparator1 As ToolStripSeparator
|
||||
Friend WithEvents XtraSaveFileDialog1 As DevExpress.XtraEditors.XtraSaveFileDialog
|
||||
@@ -1742,7 +1721,6 @@ Partial Class frmMain
|
||||
Friend WithEvents BarButtonItem9 As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents RibbonControl1 As DevExpress.XtraBars.Ribbon.RibbonControl
|
||||
Friend WithEvents bbtniRefresh As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents bbtniMonitor As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents bbiProfilverwaltung As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents bbiKonfiguration As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents bbtniGrundeinstellung As DevExpress.XtraBars.BarButtonItem
|
||||
@@ -1758,7 +1736,6 @@ Partial Class frmMain
|
||||
Friend WithEvents bbtniMetadataFile As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents BarEditItem1 As DevExpress.XtraBars.BarEditItem
|
||||
Friend WithEvents RepositoryItemProgressBar1 As DevExpress.XtraEditors.Repository.RepositoryItemProgressBar
|
||||
Friend WithEvents bbtnitDashboardInv As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents bsiGeneralInfo As DevExpress.XtraBars.BarStaticItem
|
||||
Friend WithEvents bbtnitmGhostMode As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents bsi_GhostMode As DevExpress.XtraBars.BarStaticItem
|
||||
@@ -1793,7 +1770,6 @@ Partial Class frmMain
|
||||
Friend WithEvents BBtnItmNotfications As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents RibbonPageStart As DevExpress.XtraBars.Ribbon.RibbonPage
|
||||
Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents RibbonPageGroupBasicConf As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents RibbonPageGroup7 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
@@ -1805,11 +1781,16 @@ Partial Class frmMain
|
||||
Friend WithEvents RibbonPageAktionen As DevExpress.XtraBars.Ribbon.RibbonPage
|
||||
Friend WithEvents RibbonPageGroup8 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents RepositoryItemTrackBar1 As DevExpress.XtraEditors.Repository.RepositoryItemTrackBar
|
||||
Friend WithEvents Panel2 As Panel
|
||||
Friend WithEvents lblCaptionMainGrid As Label
|
||||
Friend WithEvents GridControlWorkflows As DevExpress.XtraGrid.GridControl
|
||||
Friend WithEvents GridViewWorkflows As DevExpress.XtraGrid.Views.Grid.GridView
|
||||
Friend WithEvents BSIVERSION1 As DevExpress.XtraBars.BarStaticItem
|
||||
Friend WithEvents barbtnitmsaveLogfiles As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents bsitmCount As DevExpress.XtraBars.BarStaticItem
|
||||
Friend WithEvents TreeList_Cockpit As DevExpress.XtraTreeList.TreeList
|
||||
Friend WithEvents ImageCollection1 As DevExpress.Utils.ImageCollection
|
||||
Friend WithEvents Panel2 As Panel
|
||||
Friend WithEvents Panel1 As Panel
|
||||
Friend WithEvents SplitterControl1 As DevExpress.XtraEditors.SplitterControl
|
||||
Friend WithEvents BarButtonItemCock_refresh As DevExpress.XtraBars.BarButtonItem
|
||||
End Class
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -2,7 +2,7 @@
|
||||
Imports Oracle.ManagedDataAccess.Client
|
||||
Imports System.ComponentModel
|
||||
Imports DigitalData.Controls.LookupGrid
|
||||
Imports DigitalData.Modules.Language.Utils
|
||||
'Imports DigitalData.Modules.Language.Utils
|
||||
Imports System.IO
|
||||
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
|
||||
Imports DigitalData.Modules.EDMI.API.Constants
|
||||
@@ -33,7 +33,6 @@ Public Class frmMassValidator
|
||||
Dim viewer_string As String
|
||||
Dim pdfxchange 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
|
||||
FORM_Shown = False
|
||||
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)
|
||||
DatabaseFallback.ExecuteNonQueryECM(ins)
|
||||
|
||||
'####### ANNOTIEREN WENN KONFIGURIERT #######
|
||||
If docrow.Item("FULL_PATH").ToString.ToLower.EndsWith(".pdf") Then
|
||||
If Not IsNothing(WORK_HISTORY_ENTRY) 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 DT_ENTRY As DataTable = DatabaseFallback.GetDatatableECM(Sql) ', "MV_Finish1")
|
||||
If Not IsNothing(DT_ENTRY) 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")
|
||||
ClassAnnotation.Annotate_PDF("Workflow-State:", AnnotationString, 0, False)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Dim value = CURRENT_DT_PROFILE.Rows(0).Item("ANNOTATE_ALL_WORK_HISTORY_ENTRIES")
|
||||
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 DT_ENTRIES As DataTable = DatabaseFallback.GetDatatableECM(Sql) ', "MV_Finish2")
|
||||
If Not IsNothing(DT_ENTRIES) Then
|
||||
If DT_ENTRIES.Rows.Count > 0 Then
|
||||
Dim AnnotationString As String = ""
|
||||
For Each rw As DataRow In DT_ENTRIES.Rows
|
||||
AnnotationString = AnnotationString & rw.Item("WORKED_WHEN") & " " & rw.Item("WORKED_BY") & ": " & rw.Item("STATUS_COMMENT") & vbNewLine
|
||||
Next
|
||||
ClassAnnotation.Annotate_PDF("Workflow History:", AnnotationString, 0, 10, 40)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
''####### ANNOTIEREN WENN KONFIGURIERT #######
|
||||
'If docrow.Item("FULL_PATH").ToString.ToLower.EndsWith(".pdf") Then
|
||||
' If Not IsNothing(WORK_HISTORY_ENTRY) 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 DT_ENTRY As DataTable = DatabaseFallback.GetDatatableECM(Sql) ', "MV_Finish1")
|
||||
' If Not IsNothing(DT_ENTRY) 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")
|
||||
' ClassAnnotation.Annotate_PDF("Workflow-State:", AnnotationString, 0, False)
|
||||
' End If
|
||||
' End If
|
||||
' End If
|
||||
' Dim value = CURRENT_DT_PROFILE.Rows(0).Item("ANNOTATE_ALL_WORK_HISTORY_ENTRIES")
|
||||
' 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 DT_ENTRIES As DataTable = DatabaseFallback.GetDatatableECM(Sql) ', "MV_Finish2")
|
||||
' If Not IsNothing(DT_ENTRIES) Then
|
||||
' If DT_ENTRIES.Rows.Count > 0 Then
|
||||
' Dim AnnotationString As String = ""
|
||||
' For Each rw As DataRow In DT_ENTRIES.Rows
|
||||
' AnnotationString = AnnotationString & rw.Item("WORKED_WHEN") & " " & rw.Item("WORKED_BY") & ": " & rw.Item("STATUS_COMMENT") & vbNewLine
|
||||
' Next
|
||||
' ClassAnnotation.Annotate_PDF("Workflow History:", AnnotationString, 0, 10, 40)
|
||||
' End If
|
||||
' End If
|
||||
' End If
|
||||
' End If
|
||||
'End If
|
||||
|
||||
'####### WENN MOVE2FOLDER KONFIGURIERT IST#######
|
||||
If MOVE2Folder <> "" Then
|
||||
|
||||
@@ -211,20 +211,20 @@ Public Class frmMonitor
|
||||
|
||||
Select Case DT_MONITOR_KONFIG.Rows.Count
|
||||
Case 2
|
||||
LoadGrid1Layout()
|
||||
LoadGrid2Layout()
|
||||
LoadGridLayout(1)
|
||||
LoadGridLayout(2)
|
||||
SplitContainerControl1.SplitterPosition = CONFIG.Config.MonitorSplitter1_Distance
|
||||
Case 3
|
||||
LoadGrid1Layout()
|
||||
LoadGrid2Layout()
|
||||
LoadGrid3Layout()
|
||||
LoadGridLayout(1)
|
||||
LoadGridLayout(2)
|
||||
LoadGridLayout(3)
|
||||
SplitContainerControl1.SplitterPosition = CONFIG.Config.MonitorSplitter1_Distance
|
||||
SplitContainerControl2.SplitterPosition = CONFIG.Config.MonitorSplitter2_Distance
|
||||
Case 4
|
||||
LoadGrid1Layout()
|
||||
LoadGrid2Layout()
|
||||
LoadGrid3Layout()
|
||||
LoadGrid4Layout()
|
||||
LoadGridLayout(1)
|
||||
LoadGridLayout(2)
|
||||
LoadGridLayout(3)
|
||||
LoadGridLayout(4)
|
||||
SplitContainerControl1.SplitterPosition = CONFIG.Config.MonitorSplitter1_Distance
|
||||
SplitContainerControl2.SplitterPosition = CONFIG.Config.MonitorSplitter2_Distance
|
||||
SplitContainerControl3.SplitterPosition = CONFIG.Config.MonitorSplitter3_Distance
|
||||
@@ -243,212 +243,140 @@ Public Class frmMonitor
|
||||
Async Function Load_Grid_Data() As Threading.Tasks.Task
|
||||
Try
|
||||
FormShown = False
|
||||
Dim oSQL = "SELECT * FROM TBPM_MONITOR_KONFIG"
|
||||
Dim oSQL = $"SELECT * FROM TBPM_MONITOR_KONFIG (NOLOCK) WHERE COCKPIT_ID = {COCKPIT_MONITOR_ID}"
|
||||
DT_MONITOR_KONFIG = DatabaseFallback.GetDatatableECM(oSQL) ', "Monitor-Load_Grid_Data1")
|
||||
If Not IsNothing(DT_MONITOR_KONFIG) Then
|
||||
If DT_MONITOR_KONFIG.Rows.Count >= 1 Then
|
||||
oSQL = DT_MONITOR_KONFIG.Rows(0).Item("GRID_SQL")
|
||||
GridView1.Columns.Clear()
|
||||
Dim oDTGRID1 As DataTable = Await DatabaseFallback.GetDatatableECMAsync(oSQL) ', "Monitor-Load_Grid_Data2")
|
||||
GridControl1.DataSource = oDTGRID1
|
||||
|
||||
GRID1_TITLE = DT_MONITOR_KONFIG.Rows(0).Item("GRID_TITLE")
|
||||
GridView1.ViewCaption = GRID1_TITLE
|
||||
Format_Datetime_Columns(GridView1, "Grid 1")
|
||||
Try
|
||||
'GridView1.Columns.Item("FULL_FILE_PATH").Visible = False
|
||||
Catch ex As Exception
|
||||
LOGGER.Info($"Attention: No Column FULL_FILE_PATH in GridView1")
|
||||
End Try
|
||||
Select Case DT_MONITOR_KONFIG.Rows.Count
|
||||
Case 2
|
||||
SplitContainerControl2.Collapsed = True
|
||||
Case 3
|
||||
SplitContainerControl3.Collapsed = True
|
||||
Case Else
|
||||
SplitContainerControl2.Collapsed = False
|
||||
SplitContainerControl3.Collapsed = False
|
||||
End Select
|
||||
If DT_MONITOR_KONFIG.Rows.Count > 1 Then
|
||||
GRID2_TITLE = DT_MONITOR_KONFIG.Rows(1).Item("GRID_TITLE")
|
||||
GRID2_SQL = DT_MONITOR_KONFIG.Rows(1).Item("GRID_SQL")
|
||||
GridView2.ViewCaption = GRID2_TITLE
|
||||
Select Case DT_MONITOR_KONFIG.Rows.Count
|
||||
Case 3
|
||||
GRID3_TITLE = DT_MONITOR_KONFIG.Rows(2).Item("GRID_TITLE")
|
||||
GRID3_SQL = DT_MONITOR_KONFIG.Rows(2).Item("GRID_SQL")
|
||||
GridView3.ViewCaption = GRID3_TITLE
|
||||
Case 4
|
||||
GRID3_TITLE = DT_MONITOR_KONFIG.Rows(2).Item("GRID_TITLE")
|
||||
GRID3_SQL = DT_MONITOR_KONFIG.Rows(2).Item("GRID_SQL")
|
||||
GridView3.ViewCaption = GRID3_TITLE
|
||||
GRID4_TITLE = DT_MONITOR_KONFIG.Rows(3).Item("GRID_TITLE")
|
||||
GRID4_SQL = DT_MONITOR_KONFIG.Rows(3).Item("GRID_SQL")
|
||||
GridView4.ViewCaption = GRID4_TITLE
|
||||
End Select
|
||||
End If
|
||||
End If
|
||||
|
||||
If DT_MONITOR_KONFIG Is Nothing OrElse DT_MONITOR_KONFIG.Rows.Count = 0 Then
|
||||
MsgBox("No configuration found for this monitor cockpit. Please contact your administrator.", MsgBoxStyle.Critical, "No Configuration")
|
||||
Me.Close()
|
||||
End If
|
||||
|
||||
oSQL = DT_MONITOR_KONFIG.Rows(0).Item("GRID_SQL")
|
||||
GridView1.Columns.Clear()
|
||||
Dim oDTGRID1 As DataTable = Await DatabaseFallback.GetDatatableECMAsync(oSQL) ', "Monitor-Load_Grid_Data2")
|
||||
GridControl1.DataSource = oDTGRID1
|
||||
|
||||
GRID1_TITLE = DT_MONITOR_KONFIG.Rows(0).Item("GRID_TITLE")
|
||||
GridView1.ViewCaption = GRID1_TITLE
|
||||
Format_Datetime_Columns(GridView1, "Grid 1")
|
||||
Try
|
||||
'GridView1.Columns.Item("FULL_FILE_PATH").Visible = False
|
||||
Catch ex As Exception
|
||||
LOGGER.Info($"Attention: No Column FULL_FILE_PATH in GridView1")
|
||||
End Try
|
||||
Select Case DT_MONITOR_KONFIG.Rows.Count
|
||||
Case 2
|
||||
SplitContainerControl2.Collapsed = True
|
||||
Case 3
|
||||
SplitContainerControl3.Collapsed = True
|
||||
Case Else
|
||||
SplitContainerControl2.Collapsed = False
|
||||
SplitContainerControl3.Collapsed = False
|
||||
End Select
|
||||
If DT_MONITOR_KONFIG.Rows.Count > 1 Then
|
||||
GRID2_TITLE = DT_MONITOR_KONFIG.Rows(1).Item("GRID_TITLE")
|
||||
GRID2_SQL = DT_MONITOR_KONFIG.Rows(1).Item("GRID_SQL")
|
||||
GridView2.ViewCaption = GRID2_TITLE
|
||||
Select Case DT_MONITOR_KONFIG.Rows.Count
|
||||
Case 3
|
||||
GRID3_TITLE = DT_MONITOR_KONFIG.Rows(2).Item("GRID_TITLE")
|
||||
GRID3_SQL = DT_MONITOR_KONFIG.Rows(2).Item("GRID_SQL")
|
||||
GridView3.ViewCaption = GRID3_TITLE
|
||||
Case 4
|
||||
GRID3_TITLE = DT_MONITOR_KONFIG.Rows(2).Item("GRID_TITLE")
|
||||
GRID3_SQL = DT_MONITOR_KONFIG.Rows(2).Item("GRID_SQL")
|
||||
GridView3.ViewCaption = GRID3_TITLE
|
||||
GRID4_TITLE = DT_MONITOR_KONFIG.Rows(3).Item("GRID_TITLE")
|
||||
GRID4_SQL = DT_MONITOR_KONFIG.Rows(3).Item("GRID_SQL")
|
||||
GridView4.ViewCaption = GRID4_TITLE
|
||||
End Select
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in Load_Grid_Data:")
|
||||
Finally
|
||||
FormShown = True
|
||||
End Try
|
||||
End Function
|
||||
Sub LoadGrid1Layout()
|
||||
Private Function GetGridLayoutPath(pGridNumber As Integer) As String
|
||||
Dim oFilename As String = $"DevExpressGridViewMonitor_UserLayout_Grid{pGridNumber}_Cockpit{COCKPIT_MONITOR_ID}.xml"
|
||||
Return System.IO.Path.Combine(USER_CONFIG_DIRECTORY, oFilename)
|
||||
End Function
|
||||
|
||||
Private Sub SaveGridLayout(pGridNumber As Integer)
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid1.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
If File.Exists(xml) Then
|
||||
GridView1.RestoreLayoutFromXml(xml, OptionsLayoutBase.FullLayout)
|
||||
Dim oGridView As GridView = Nothing
|
||||
Select Case pGridNumber
|
||||
Case 1 : oGridView = GridView1
|
||||
Case 2 : oGridView = GridView2
|
||||
Case 3 : oGridView = GridView3
|
||||
Case 4 : oGridView = GridView4
|
||||
Case Else
|
||||
LOGGER.Warn($"SaveGridLayout: Invalid grid number [{pGridNumber}]")
|
||||
Exit Sub
|
||||
End Select
|
||||
|
||||
oGridView.SaveLayoutToXml(GetGridLayoutPath(pGridNumber), OptionsLayoutBase.FullLayout)
|
||||
LOGGER.Debug($"SaveGridLayout: Grid{pGridNumber} layout saved for Cockpit [{COCKPIT_MONITOR_ID}]")
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info($"Error while saving Grid{pGridNumber}Layout: {ex.Message}")
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub LoadGridLayout(pGridNumber As Integer)
|
||||
Try
|
||||
Dim oXml As String = GetGridLayoutPath(pGridNumber)
|
||||
If Not File.Exists(oXml) Then Exit Sub
|
||||
|
||||
Dim oGridView As GridView = Nothing
|
||||
Select Case pGridNumber
|
||||
Case 1 : oGridView = GridView1
|
||||
Case 2 : oGridView = GridView2
|
||||
Case 3 : oGridView = GridView3
|
||||
Case 4 : oGridView = GridView4
|
||||
Case Else
|
||||
LOGGER.Warn($"LoadGridLayout: Invalid grid number [{pGridNumber}]")
|
||||
Exit Sub
|
||||
End Select
|
||||
|
||||
oGridView.RestoreLayoutFromXml(oXml, OptionsLayoutBase.FullLayout)
|
||||
LOGGER.Debug($"LoadGridLayout: Grid{pGridNumber} layout restored for Cockpit [{COCKPIT_MONITOR_ID}]")
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info($"Error while restoring Grid{pGridNumber}Layout: {ex.Message}")
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub RemoveGridLayout(pGridNumber As Integer)
|
||||
Try
|
||||
Dim oXml As String = GetGridLayoutPath(pGridNumber)
|
||||
If File.Exists(oXml) Then
|
||||
IO.File.Delete(oXml)
|
||||
LOGGER.Debug($"RemoveGridLayout: Grid{pGridNumber} layout removed for Cockpit [{COCKPIT_MONITOR_ID}]")
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while restoring layout 1: " & ex.Message)
|
||||
LOGGER.Info($"Error while removing Grid{pGridNumber}Layout: {ex.Message}")
|
||||
End Try
|
||||
End Sub
|
||||
Sub LoadGrid2Layout()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid2.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
If File.Exists(xml) Then
|
||||
GridView2.RestoreLayoutFromXml(xml, OptionsLayoutBase.FullLayout)
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while restoring layout 2: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Sub LoadGrid3Layout()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid3.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
If File.Exists(xml) Then
|
||||
GridView3.RestoreLayoutFromXml(xml, OptionsLayoutBase.FullLayout)
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while restoring layout 3: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Sub LoadGrid4Layout()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid4.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
If File.Exists(xml) Then
|
||||
GridView4.RestoreLayoutFromXml(xml, OptionsLayoutBase.FullLayout)
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while restoring layout 4: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Sub SaveGrid1layout()
|
||||
Try
|
||||
Dim o = USER_CONFIG_DIRECTORY
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid1.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
GridView1.SaveLayoutToXml(xml, OptionsLayoutBase.FullLayout)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while saving Grid1Layout: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Sub RemoveLayout()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid1.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
IO.File.Delete(xml)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while saving RemoveLayout1: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Sub SaveGrid2layout()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid2.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
GridView2.SaveLayoutToXml(xml, OptionsLayoutBase.FullLayout)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while saving Grid2Layout: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Sub RemoveLayout2()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid2.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
IO.File.Delete(xml)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while saving RemoveLayout2: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Sub SaveGrid3layout()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid3.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
GridView3.SaveLayoutToXml(xml, OptionsLayoutBase.FullLayout)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while saving Grid3Layout: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Sub RemoveLayout3()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid3.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
IO.File.Delete(xml)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while saving RemoveLayout3: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Sub SaveGrid4layout()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid4.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
GridView4.SaveLayoutToXml(xml, OptionsLayoutBase.FullLayout)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while saving Grid4Layout: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Sub RemoveLayout4()
|
||||
Try
|
||||
Dim Filename As String = String.Format("DevExpressGridViewMonitor_UserLayout_Grid4.xml")
|
||||
Dim xml As String = System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||
IO.File.Delete(xml)
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error while saving RemoveLayout4: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Sub frmMonitor_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
|
||||
Select Case DT_MONITOR_KONFIG.Rows.Count
|
||||
Case 2
|
||||
SaveGrid1layout()
|
||||
SaveGrid2layout()
|
||||
SaveGridLayout(1)
|
||||
SaveGridLayout(2)
|
||||
Case 3
|
||||
SaveGrid1layout()
|
||||
SaveGrid2layout()
|
||||
SaveGrid3layout()
|
||||
SaveGridLayout(1)
|
||||
SaveGridLayout(2)
|
||||
SaveGridLayout(3)
|
||||
CONFIG.Config.MonitorSplitter1_Distance = SplitContainerControl1.SplitterPosition
|
||||
CONFIG.Config.MonitorSplitter2_Distance = SplitContainerControl2.SplitterPosition
|
||||
|
||||
Case 4
|
||||
SaveGrid1layout()
|
||||
SaveGrid2layout()
|
||||
SaveGrid3layout()
|
||||
SaveGrid4layout()
|
||||
SaveGridLayout(1)
|
||||
SaveGridLayout(2)
|
||||
SaveGridLayout(3)
|
||||
SaveGridLayout(4)
|
||||
CONFIG.Config.MonitorSplitter1_Distance = SplitContainerControl1.SplitterPosition
|
||||
CONFIG.Config.MonitorSplitter2_Distance = SplitContainerControl2.SplitterPosition
|
||||
CONFIG.Config.MonitorSplitter3_Distance = SplitContainerControl3.SplitterPosition
|
||||
@@ -549,17 +477,17 @@ Public Class frmMonitor
|
||||
Private Async Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem4.ItemClick
|
||||
Select Case DT_MONITOR_KONFIG.Rows.Count
|
||||
Case 2
|
||||
RemoveLayout()
|
||||
RemoveLayout2()
|
||||
RemoveGridLayout(1)
|
||||
RemoveGridLayout(2)
|
||||
Case 3
|
||||
RemoveLayout()
|
||||
RemoveLayout2()
|
||||
RemoveLayout3()
|
||||
RemoveGridLayout(1)
|
||||
RemoveGridLayout(2)
|
||||
RemoveGridLayout(3)
|
||||
Case 4
|
||||
RemoveLayout()
|
||||
RemoveLayout2()
|
||||
RemoveLayout3()
|
||||
RemoveLayout4()
|
||||
RemoveGridLayout(1)
|
||||
RemoveGridLayout(2)
|
||||
RemoveGridLayout(3)
|
||||
RemoveGridLayout(4)
|
||||
End Select
|
||||
|
||||
GridView1.ShowLoadingPanel()
|
||||
|
||||
1
app/TaskFlow/frmValidator.Designer.vb
generated
1
app/TaskFlow/frmValidator.Designer.vb
generated
@@ -762,7 +762,6 @@ Partial Class frmValidator
|
||||
Me.rbnPgGroupAttmt.ItemLinks.Add(Me.Attmnt_bbtnitm_LoadonClick)
|
||||
Me.rbnPgGroupAttmt.Name = "rbnPgGroupAttmt"
|
||||
resources.ApplyResources(Me.rbnPgGroupAttmt, "rbnPgGroupAttmt")
|
||||
Me.rbnPgGroupAttmt.Visible = False
|
||||
'
|
||||
'RibbonPageGroupCustom
|
||||
'
|
||||
|
||||
@@ -616,7 +616,7 @@
|
||||
<value>DocumentViewer1</value>
|
||||
</data>
|
||||
<data name=">>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 name=">>DocumentViewer1.Parent" xml:space="preserve">
|
||||
<value>SplitContainer1.Panel2</value>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -138,7 +138,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlDocSearch1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>349, 557</value>
|
||||
<value>279, 446</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="GridControlDocSearch1.TabIndex" type="System.Int32, mscorlib">
|
||||
@@ -187,7 +187,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlDocSearch2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>349, 557</value>
|
||||
<value>279, 446</value>
|
||||
</data>
|
||||
<data name="GridControlDocSearch2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
@@ -229,7 +229,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlDocSearch3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>349, 557</value>
|
||||
<value>279, 446</value>
|
||||
</data>
|
||||
<data name="GridControlDocSearch3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
@@ -271,7 +271,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlDocSearch4.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>349, 557</value>
|
||||
<value>279, 446</value>
|
||||
</data>
|
||||
<data name="GridControlDocSearch4.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
@@ -313,7 +313,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlDocSearch5.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>349, 557</value>
|
||||
<value>279, 446</value>
|
||||
</data>
|
||||
<data name="GridControlDocSearch5.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
@@ -454,7 +454,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlSearch1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>344, 560</value>
|
||||
<value>275, 448</value>
|
||||
</data>
|
||||
<data name="GridControlSearch1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
@@ -502,7 +502,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlSearch2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>511, 560</value>
|
||||
<value>275, 448</value>
|
||||
</data>
|
||||
<data name="GridControlSearch2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
@@ -520,7 +520,7 @@
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="XtraTabPageSearch2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>511, 560</value>
|
||||
<value>344, 560</value>
|
||||
</data>
|
||||
<data name="XtraTabPageSearch2.Text" xml:space="preserve">
|
||||
<value>Search2</value>
|
||||
@@ -544,7 +544,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlSearch3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>511, 560</value>
|
||||
<value>275, 448</value>
|
||||
</data>
|
||||
<data name="GridControlSearch3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
@@ -562,7 +562,7 @@
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="XtraTabPageSearch3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>511, 560</value>
|
||||
<value>344, 560</value>
|
||||
</data>
|
||||
<data name="XtraTabPageSearch3.Text" xml:space="preserve">
|
||||
<value>XtraTabPage1</value>
|
||||
@@ -586,7 +586,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlSearch4.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>511, 560</value>
|
||||
<value>275, 448</value>
|
||||
</data>
|
||||
<data name="GridControlSearch4.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
@@ -604,7 +604,7 @@
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="XtraTabPageSearch4.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>511, 560</value>
|
||||
<value>344, 560</value>
|
||||
</data>
|
||||
<data name="XtraTabPageSearch4.Text" xml:space="preserve">
|
||||
<value>XtraTabPage2</value>
|
||||
@@ -628,7 +628,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="GridControlSearch5.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>511, 560</value>
|
||||
<value>275, 448</value>
|
||||
</data>
|
||||
<data name="GridControlSearch5.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
@@ -646,7 +646,7 @@
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="XtraTabPageSearch5.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>511, 560</value>
|
||||
<value>344, 560</value>
|
||||
</data>
|
||||
<data name="XtraTabPageSearch5.Text" xml:space="preserve">
|
||||
<value>XtraTabPage3</value>
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
Imports System.ComponentModel
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.IO
|
||||
Imports System.Runtime.InteropServices
|
||||
Imports DevExpress.Utils
|
||||
@@ -7,12 +8,13 @@ Imports DevExpress.XtraGrid.Columns
|
||||
Imports DevExpress.XtraGrid.Views.Base
|
||||
Imports DevExpress.XtraGrid.Views.Grid
|
||||
Imports DevExpress.XtraTab
|
||||
Imports DigitalData.GUIs.Common
|
||||
Imports DigitalData.GUIs.Common.DocumentResultList
|
||||
Imports DigitalData.Modules.Base
|
||||
Imports DigitalData.Modules.EDMI.API.Constants
|
||||
Imports DigitalData.Modules.EDMI.API.DatabaseWithFallback
|
||||
Imports DigitalData.Modules.ZooFlow.Constants
|
||||
Imports DigitalData.Modules.ZooFlow
|
||||
Imports DigitalData.GUIs.Common
|
||||
Imports DigitalData.Modules.ZooFlow.Constants
|
||||
|
||||
Public Class frmValidatorSearch
|
||||
<DllImport("Shell32", CharSet:=CharSet.Auto, SetLastError:=True)>
|
||||
@@ -43,7 +45,7 @@ Public Class frmValidatorSearch
|
||||
#End Region
|
||||
Public formLoaded As Boolean = False
|
||||
Public _DTDocSearches As DataTable
|
||||
Public _DTSQLSearches As DataTable
|
||||
Public _DTDATASearches As DataTable
|
||||
Private _frmValidator As frmValidator 'You need a reference to Form1
|
||||
Private Shared BW_DocPath As String
|
||||
Private Shared BW_DocID As Integer
|
||||
@@ -51,6 +53,8 @@ Public Class frmValidatorSearch
|
||||
Private Documentloader As Loader
|
||||
Private Property OperationMode As OperationMode
|
||||
Private ReadOnly Environment As Environment
|
||||
Private _documentPathHandler As DocumentPathHandler
|
||||
Private _suppressTabEvents As Boolean = False
|
||||
|
||||
Public Sub New(pfrmValidator As frmValidator, pEnvironment As Environment)
|
||||
|
||||
@@ -79,52 +83,354 @@ Public Class frmValidatorSearch
|
||||
End Function
|
||||
Public Sub TabPreload(TabCountSQL As Integer, TabCountDoc As Integer, DTSQL As DataTable, DTDOC As DataTable)
|
||||
Try
|
||||
SplitContainerSearches.Panel1Collapsed = IIf(DTSQL.Rows.Count > 0, False, True)
|
||||
SplitContainerSearches.Panel2Collapsed = IIf(DTDOC.Rows.Count > 0, False, True)
|
||||
If Me.InvokeRequired() Then
|
||||
Me.Invoke(Sub() TabPreload(TabCountSQL, TabCountDoc, DTSQL, DTDOC))
|
||||
Else
|
||||
'#### SQL Tabs Design Laden
|
||||
|
||||
If DTSQL.Rows.Count > 0 Then
|
||||
LOGGER.Debug(String.Format("[{0} SQL-Definitions]", DTSQL.Rows.Count))
|
||||
For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
|
||||
If XtraTabControlSQL.TabPages(p).TabIndex >= TabCountSQL Then
|
||||
XtraTabControlSQL.TabPages(p).PageVisible = False
|
||||
End If
|
||||
Next
|
||||
For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
|
||||
If XtraTabControlSQL.TabPages(p).TabIndex >= TabCountSQL Then
|
||||
Exit For
|
||||
End If
|
||||
XtraTabControlSQL.TabPages(p).Text = DTSQL.Rows(p).Item("TAB_TITLE")
|
||||
|
||||
Next
|
||||
End If
|
||||
|
||||
If DTDOC.Rows.Count > 0 Then
|
||||
LOGGER.Debug(String.Format("[{0} Doc-Definitions]", DTDOC.Rows.Count))
|
||||
'#### Doc Tabs Design Laden
|
||||
For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
|
||||
If XtraTabControlDocs.TabPages(p).TabIndex >= TabCountDoc Then
|
||||
XtraTabControlDocs.TabPages(p).PageVisible = False
|
||||
End If
|
||||
Next
|
||||
For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
|
||||
If XtraTabControlDocs.TabPages(p).TabIndex >= TabCountDoc Then
|
||||
Exit For
|
||||
End If
|
||||
XtraTabControlDocs.TabPages(p).Text = DTDOC.Rows(p).Item("TAB_TITLE")
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
LOGGER.Debug("=== TabPreload START ===")
|
||||
LOGGER.Debug($"Parameters: TabCountSQL={TabCountSQL}, TabCountDoc={TabCountDoc}, DTSQL.Rows={If(DTSQL?.Rows.Count, 0)}, DTDOC.Rows={If(DTDOC?.Rows.Count, 0)}")
|
||||
|
||||
' Validierung der Parameter
|
||||
If DTSQL Is Nothing Then
|
||||
LOGGER.Warn("⚠️ DTSQL ist Nothing")
|
||||
DTSQL = New DataTable()
|
||||
End If
|
||||
If DTDOC Is Nothing Then
|
||||
LOGGER.Warn("⚠️ DTDOC ist Nothing")
|
||||
DTDOC = New DataTable()
|
||||
End If
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
End Try
|
||||
|
||||
' Thread-Synchronisation
|
||||
If Me.InvokeRequired() Then
|
||||
LOGGER.Debug("InvokeRequired=True, rufe auf UI-Thread auf")
|
||||
Me.Invoke(Sub() TabPreload(TabCountSQL, TabCountDoc, DTSQL, DTDOC))
|
||||
Return
|
||||
End If
|
||||
|
||||
LOGGER.Debug("Ausführung auf UI-Thread")
|
||||
|
||||
' ============================================================
|
||||
' WICHTIG: Variablen VOR Try-Block deklarieren
|
||||
' ============================================================
|
||||
Dim hasSQLData As Boolean = False
|
||||
Dim hasDocData As Boolean = False
|
||||
Dim actualSQLTabCount As Integer = 0
|
||||
Dim actualDocTabCount As Integer = 0
|
||||
|
||||
' ============================================================
|
||||
' KRITISCH: Events DEAKTIVIEREN während der Rekonfiguration
|
||||
' ============================================================
|
||||
_suppressTabEvents = True
|
||||
LOGGER.Debug("🚫 Tab-Events deaktiviert")
|
||||
|
||||
Try
|
||||
' KRITISCH: DataTables SOFORT zuweisen
|
||||
_DTDATASearches = DTSQL
|
||||
_DTDocSearches = DTDOC
|
||||
LOGGER.Debug($"✓ _DTDATASearches und _DTDocSearches zugewiesen: SQL={_DTDATASearches.Rows.Count}, Doc={_DTDocSearches.Rows.Count}")
|
||||
|
||||
' TabCount-Validierung
|
||||
actualSQLTabCount = Math.Min(TabCountSQL, DTSQL.Rows.Count)
|
||||
actualDocTabCount = Math.Min(TabCountDoc, DTDOC.Rows.Count)
|
||||
|
||||
If actualSQLTabCount <> TabCountSQL Then
|
||||
LOGGER.Warn($"⚠️ TabCountSQL korrigiert: {TabCountSQL} → {actualSQLTabCount}")
|
||||
End If
|
||||
If actualDocTabCount <> TabCountDoc Then
|
||||
LOGGER.Warn($"⚠️ TabCountDoc korrigiert: {TabCountDoc} → {actualDocTabCount}")
|
||||
End If
|
||||
|
||||
' Panel-Sichtbarkeit
|
||||
hasSQLData = DTSQL.Rows.Count > 0 AndAlso actualSQLTabCount > 0
|
||||
hasDocData = DTDOC.Rows.Count > 0 AndAlso actualDocTabCount > 0
|
||||
|
||||
SplitContainerSearches.Panel1Collapsed = Not hasSQLData
|
||||
SplitContainerSearches.Panel2Collapsed = Not hasDocData
|
||||
|
||||
LOGGER.Debug($"Panel1Collapsed (SQL)={SplitContainerSearches.Panel1Collapsed}, Panel2Collapsed (Doc)={SplitContainerSearches.Panel2Collapsed}")
|
||||
|
||||
' ============================================================
|
||||
' KRITISCH: DocumentViewer nur bei Doc-Searches sichtbar
|
||||
' ============================================================
|
||||
If hasDocData Then
|
||||
If Not DocumentViewer1.Visible Then
|
||||
DocumentViewer1.Visible = True
|
||||
LOGGER.Debug("✓ DocumentViewer1 sichtbar gemacht (Doc-Searches vorhanden)")
|
||||
End If
|
||||
Else
|
||||
If DocumentViewer1.Visible Then
|
||||
DocumentViewer1.Visible = False
|
||||
LOGGER.Debug("✓ DocumentViewer1 ausgeblendet (keine Doc-Searches)")
|
||||
End If
|
||||
End If
|
||||
|
||||
' #### SQL Tabs konfigurieren
|
||||
If hasSQLData Then
|
||||
LOGGER.Debug($"Konfiguriere SQL-Tabs: {DTSQL.Rows.Count} Definitionen")
|
||||
|
||||
' ALLE Tabs unsichtbar machen
|
||||
For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
|
||||
XtraTabControlSQL.TabPages(p).PageVisible = False
|
||||
Next
|
||||
LOGGER.Debug($"Alle {XtraTabControlSQL.TabPages.Count} SQL-Tabs auf PageVisible=False gesetzt")
|
||||
|
||||
' Nur benötigte Tabs sichtbar machen
|
||||
Dim processedTabs As Integer = 0
|
||||
For p As Integer = 0 To Math.Min(actualSQLTabCount - 1, XtraTabControlSQL.TabPages.Count - 1)
|
||||
If p < DTSQL.Rows.Count Then
|
||||
Try
|
||||
Dim tabTitle As String = If(DTSQL.Rows(p).Item("TAB_TITLE")?.ToString(), $"Tab {p + 1}")
|
||||
XtraTabControlSQL.TabPages(p).Text = tabTitle
|
||||
XtraTabControlSQL.TabPages(p).PageVisible = True
|
||||
processedTabs += 1
|
||||
LOGGER.Debug($"SQL-Tab {p}: Text='{tabTitle}', PageVisible=True")
|
||||
Catch ex As Exception
|
||||
LOGGER.Error($"❌ Fehler beim Konfigurieren von SQL-Tab {p}", ex)
|
||||
End Try
|
||||
End If
|
||||
Next
|
||||
|
||||
LOGGER.Info($"✓ {processedTabs} SQL-Tabs konfiguriert")
|
||||
Else
|
||||
LOGGER.Debug("Keine SQL-Daten, alle Tabs ausblenden")
|
||||
For p As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
|
||||
XtraTabControlSQL.TabPages(p).PageVisible = False
|
||||
Next
|
||||
End If
|
||||
|
||||
' #### Doc Tabs konfigurieren
|
||||
If hasDocData Then
|
||||
LOGGER.Debug($"Konfiguriere Doc-Tabs: {DTDOC.Rows.Count} Definitionen")
|
||||
|
||||
' ALLE Tabs unsichtbar machen
|
||||
For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
|
||||
XtraTabControlDocs.TabPages(p).PageVisible = False
|
||||
Next
|
||||
LOGGER.Debug($"Alle {XtraTabControlDocs.TabPages.Count} Doc-Tabs auf PageVisible=False gesetzt")
|
||||
|
||||
' Nur benötigte Tabs sichtbar machen
|
||||
Dim processedTabs As Integer = 0
|
||||
For p As Integer = 0 To Math.Min(actualDocTabCount - 1, XtraTabControlDocs.TabPages.Count - 1)
|
||||
If p < DTDOC.Rows.Count Then
|
||||
Try
|
||||
Dim tabTitle As String = If(DTDOC.Rows(p).Item("TAB_TITLE")?.ToString(), $"Tab {p + 1}")
|
||||
XtraTabControlDocs.TabPages(p).Text = tabTitle
|
||||
XtraTabControlDocs.TabPages(p).PageVisible = True
|
||||
processedTabs += 1
|
||||
LOGGER.Debug($"Doc-Tab {p}: Text='{tabTitle}', PageVisible=True")
|
||||
Catch ex As Exception
|
||||
LOGGER.Error($"❌ Fehler beim Konfigurieren von Doc-Tab {p}", ex)
|
||||
End Try
|
||||
End If
|
||||
Next
|
||||
|
||||
LOGGER.Info($"✓ {processedTabs} Doc-Tabs konfiguriert")
|
||||
Else
|
||||
LOGGER.Debug("Keine Doc-Daten, alle Tabs ausblenden")
|
||||
For p As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
|
||||
XtraTabControlDocs.TabPages(p).PageVisible = False
|
||||
Next
|
||||
End If
|
||||
|
||||
Finally
|
||||
' ============================================================
|
||||
' KRITISCH: Events REAKTIVIEREN nach Rekonfiguration
|
||||
' ============================================================
|
||||
_suppressTabEvents = False
|
||||
LOGGER.Debug("✓ Tab-Events reaktiviert")
|
||||
End Try
|
||||
|
||||
' JETZT manuell den ersten sichtbaren Tab aktivieren
|
||||
' ERSETZE im unteren Teil von TabPreload den SQL-Block:
|
||||
If hasSQLData AndAlso XtraTabControlSQL.TabPages.Count > 0 Then
|
||||
Dim firstVisibleSqlIndex As Integer = -1
|
||||
For i As Integer = 0 To XtraTabControlSQL.TabPages.Count - 1
|
||||
If XtraTabControlSQL.TabPages(i).PageVisible Then
|
||||
firstVisibleSqlIndex = i
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
|
||||
If firstVisibleSqlIndex >= 0 AndAlso _DTDATASearches IsNot Nothing AndAlso firstVisibleSqlIndex < _DTDATASearches.Rows.Count Then
|
||||
LOGGER.Debug($"Setze SQL SelectedTabPageIndex manuell auf {firstVisibleSqlIndex}")
|
||||
|
||||
Dim prevSuppress As Boolean = _suppressTabEvents
|
||||
_suppressTabEvents = True
|
||||
XtraTabControlSQL.SelectedTabPageIndex = firstVisibleSqlIndex
|
||||
_suppressTabEvents = prevSuppress
|
||||
|
||||
Try
|
||||
Dim selectedRow As DataRow = _DTDATASearches.Rows(firstVisibleSqlIndex)
|
||||
Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID")))
|
||||
Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString()
|
||||
Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {firstVisibleSqlIndex}")
|
||||
|
||||
If Not String.IsNullOrEmpty(oCommand) Then
|
||||
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
|
||||
LOGGER.Debug($"SQL-Tab {firstVisibleSqlIndex}: erzwungener Initial-Refresh")
|
||||
RefreshTabSQL(oConID, oCommand, firstVisibleSqlIndex, oTabCaption)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
LOGGER.Error("❌ Fehler beim SQL-Initial-Refresh in TabPreload", ex)
|
||||
End Try
|
||||
End If
|
||||
End If
|
||||
|
||||
' ERSETZE im unteren Teil von TabPreload den Doc-Block:
|
||||
If hasDocData AndAlso XtraTabControlDocs.TabPages.Count > 0 Then
|
||||
Dim firstVisibleDocIndex As Integer = -1
|
||||
For i As Integer = 0 To XtraTabControlDocs.TabPages.Count - 1
|
||||
If XtraTabControlDocs.TabPages(i).PageVisible Then
|
||||
firstVisibleDocIndex = i
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
|
||||
If firstVisibleDocIndex >= 0 AndAlso _DTDocSearches IsNot Nothing AndAlso firstVisibleDocIndex < _DTDocSearches.Rows.Count Then
|
||||
LOGGER.Debug($"Setze Doc SelectedTabPageIndex manuell auf {firstVisibleDocIndex}")
|
||||
|
||||
Dim prevSuppress As Boolean = _suppressTabEvents
|
||||
_suppressTabEvents = True
|
||||
XtraTabControlDocs.SelectedTabPageIndex = firstVisibleDocIndex
|
||||
_suppressTabEvents = prevSuppress
|
||||
|
||||
Try
|
||||
Dim selectedRow As DataRow = _DTDocSearches.Rows(firstVisibleDocIndex)
|
||||
Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID")))
|
||||
Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString()
|
||||
Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {firstVisibleDocIndex}")
|
||||
|
||||
If Not String.IsNullOrEmpty(oCommand) Then
|
||||
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
|
||||
LOGGER.Debug($"Doc-Tab {firstVisibleDocIndex}: erzwungener Initial-Refresh")
|
||||
RefreshTabDoc(oConID, oCommand, firstVisibleDocIndex, oTabCaption)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
LOGGER.Error("❌ Fehler beim Doc-Initial-Refresh in TabPreload", ex)
|
||||
End Try
|
||||
End If
|
||||
End If
|
||||
|
||||
LOGGER.Debug("=== TabPreload END ===")
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error("❌ Fehler in TabPreload", ex)
|
||||
LOGGER.Error($"Stack Trace: {ex.StackTrace}")
|
||||
_suppressTabEvents = False ' Sicherstellung
|
||||
|
||||
Try
|
||||
SplitContainerSearches.Panel1Collapsed = True
|
||||
SplitContainerSearches.Panel2Collapsed = True
|
||||
DocumentViewer1.Visible = False
|
||||
Catch collapseEx As Exception
|
||||
LOGGER.Error("❌ Fehler beim Kollabieren der Panels", collapseEx)
|
||||
End Try
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub XtraTabControlSQL_SelectedPageChanged(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlSQL.SelectedPageChanged
|
||||
Try
|
||||
' KRITISCH: Event unterdrücken während TabPreload läuft
|
||||
If _suppressTabEvents Then
|
||||
LOGGER.Debug($"🚫 XtraTabControlSQL_SelectedPageChanged unterdrückt (SelectedTabPageIndex={XtraTabControlSQL.SelectedTabPageIndex})")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
LOGGER.Debug($"=== XtraTabControlSQL_SelectedPageChanged START - SelectedTabPageIndex={XtraTabControlSQL.SelectedTabPageIndex} ===")
|
||||
|
||||
If _DTDATASearches Is Nothing Then
|
||||
LOGGER.Warn("⚠️ _DTDATASearches ist Nothing - Exit Sub")
|
||||
Exit Sub
|
||||
End If
|
||||
If XtraTabControlSQL.SelectedTabPageIndex >= 0 AndAlso
|
||||
Not XtraTabControlSQL.TabPages(XtraTabControlSQL.SelectedTabPageIndex).PageVisible Then
|
||||
LOGGER.Debug("SQL-Tab ist nicht sichtbar - Exit Sub")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If XtraTabControlSQL.SelectedTabPageIndex >= _DTDATASearches.Rows.Count Then
|
||||
LOGGER.Error($"❌ SelectedTabPageIndex ({XtraTabControlSQL.SelectedTabPageIndex}) >= _DTDATASearches.Rows.Count ({_DTDATASearches.Rows.Count}) - Exit Sub")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim selectedRow As DataRow = _DTDATASearches.Rows(XtraTabControlSQL.SelectedTabPageIndex)
|
||||
Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID")))
|
||||
Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString()
|
||||
Dim oTabIndex As Integer = XtraTabControlSQL.SelectedTabPageIndex
|
||||
Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {oTabIndex}")
|
||||
|
||||
LOGGER.Debug($"Tab-Info: '{oTabCaption}', ConID={oConID}, TabIndex={oTabIndex}")
|
||||
|
||||
If String.IsNullOrEmpty(oCommand) Then
|
||||
LOGGER.Warn($"⚠️ SQL_COMMAND ist leer für Tab '{oTabCaption}' - Exit Sub")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
|
||||
LOGGER.Debug($"SQL ersetzt, Länge={oCommand.Length} Zeichen")
|
||||
|
||||
' ============================================================
|
||||
' KRITISCH: RefreshTabSQL aufrufen!
|
||||
' ============================================================
|
||||
LOGGER.Debug($"Rufe RefreshTabSQL auf für Tab '{oTabCaption}'")
|
||||
RefreshTabSQL(oConID, oCommand, oTabIndex, oTabCaption)
|
||||
|
||||
LOGGER.Debug("=== XtraTabControlSQL_SelectedPageChanged END ===")
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error("❌ Fehler in XtraTabControlSQL_SelectedPageChanged", ex)
|
||||
LOGGER.Error($"Details: SelectedTabPageIndex={XtraTabControlSQL.SelectedTabPageIndex}, _DTDATASearches.Rows.Count={If(_DTDATASearches?.Rows.Count, 0)}")
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Sub XtraTabControlDocs_SelectedPageChanged_1(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlDocs.SelectedPageChanged
|
||||
Try
|
||||
' KRITISCH: Event unterdrücken während TabPreload läuft
|
||||
If _suppressTabEvents Then
|
||||
LOGGER.Debug($"🚫 XtraTabControlDocs_SelectedPageChanged unterdrückt (SelectedTabPageIndex={XtraTabControlDocs.SelectedTabPageIndex})")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
LOGGER.Debug($"=== XtraTabControlDocs_SelectedPageChanged START - SelectedTabPageIndex={XtraTabControlDocs.SelectedTabPageIndex} ===")
|
||||
|
||||
If _DTDocSearches Is Nothing Then
|
||||
LOGGER.Warn("⚠️ _DTDocSearches ist Nothing - Exit Sub")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If XtraTabControlDocs.SelectedTabPageIndex < 0 Then
|
||||
LOGGER.Debug("SelectedTabPageIndex < 0 - Exit Sub")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If XtraTabControlDocs.SelectedTabPageIndex >= _DTDocSearches.Rows.Count Then
|
||||
LOGGER.Error($"❌ SelectedTabPageIndex ({XtraTabControlDocs.SelectedTabPageIndex}) >= _DTDocSearches.Rows.Count ({_DTDocSearches.Rows.Count}) - Exit Sub")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim selectedRow As DataRow = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex)
|
||||
Dim oConID As Integer = If(IsDBNull(selectedRow.Item("CONN_ID")), 1, CInt(selectedRow.Item("CONN_ID")))
|
||||
Dim oCommand As String = selectedRow.Item("SQL_COMMAND")?.ToString()
|
||||
Dim oTabIndex As Integer = XtraTabControlDocs.SelectedTabPageIndex
|
||||
Dim oTabCaption As String = If(selectedRow.Item("TAB_TITLE")?.ToString(), $"Tab {oTabIndex}")
|
||||
|
||||
LOGGER.Debug($"Tab-Info: '{oTabCaption}', ConID={oConID}, TabIndex={oTabIndex}")
|
||||
|
||||
If String.IsNullOrEmpty(oCommand) Then
|
||||
LOGGER.Warn($"⚠️ SQL_COMMAND ist leer für Tab '{oTabCaption}' - Exit Sub")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
|
||||
LOGGER.Debug($"SQL ersetzt, Länge={oCommand.Length} Zeichen")
|
||||
|
||||
' ============================================================
|
||||
' KRITISCH: RefreshTabDoc aufrufen!
|
||||
' ============================================================
|
||||
LOGGER.Debug($"Rufe RefreshTabDoc auf für Tab '{oTabCaption}'")
|
||||
RefreshTabDoc(oConID, oCommand, oTabIndex, oTabCaption)
|
||||
|
||||
LOGGER.Debug("=== XtraTabControlDocs_SelectedPageChanged END ===")
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error("❌ Fehler in XtraTabControlDocs_SelectedPageChanged", ex)
|
||||
LOGGER.Error($"Details: SelectedTabPageIndex={XtraTabControlDocs.SelectedTabPageIndex}, _DTDocSearches.Rows.Count={If(_DTDocSearches?.Rows.Count, 0)}")
|
||||
End Try
|
||||
End Sub
|
||||
Public Sub RefreshTabSQL(ConID As Integer, SQLCommand As String, TabIndex As Integer, TabCaption As String)
|
||||
If Me.InvokeRequired() Then
|
||||
@@ -237,28 +543,31 @@ Public Class frmValidatorSearch
|
||||
myGridview = GridViewDocSearch5
|
||||
End Select
|
||||
myGridControl.ContextMenuStrip = ContextMenuStripWMFile
|
||||
'Dim oDatatable As DataTable = ClassDatabase.Return_Datatable_ConId(SQLCommand, ConID)
|
||||
|
||||
Dim oDatatable As DataTable = DatabaseFallback.GetDatatable(New GetDatatableOptions(SQLCommand, DatabaseType.ECM) With {
|
||||
.ConnectionId = ConID
|
||||
})
|
||||
.ConnectionId = ConID
|
||||
})
|
||||
|
||||
If Not IsNothing(oDatatable) Then
|
||||
XtraTabControlDocs.TabPages(TabIndex).Text = $"{TabCaption} ({oDatatable.Rows.Count})"
|
||||
clsWMDocGrid.DTDocuments = oDatatable
|
||||
'Select Case TabIndex
|
||||
' Case 0
|
||||
' GridControlDocSearch1.DataSource = oDatatable
|
||||
' Case 1
|
||||
' GridControlDocSearch2.DataSource = oDatatable
|
||||
' Case 2
|
||||
' GridControlDocSearch3.DataSource = oDatatable
|
||||
' Case 3
|
||||
' GridControlDocSearch4.DataSource = oDatatable
|
||||
' Case 4
|
||||
' GridControlDocSearch5.DataSource = oDatatable
|
||||
|
||||
'End Select
|
||||
' FIX: Nicht jedes Doc-Tab liefert echte Dokumentspalten
|
||||
Dim hasDocId As Boolean = oDatatable.Columns.Contains("DocID")
|
||||
Dim hasFullFilename As Boolean = oDatatable.Columns.Contains("FULL_FILENAME")
|
||||
|
||||
If Not hasDocId OrElse Not hasFullFilename Then
|
||||
LOGGER.Warn($"⚠️ Refresh_Load_GridDoc: Tab [{TabCaption}] liefert kein Dokument-Schema (DocID/FULL_FILENAME fehlt). Fallback auf Standard-Grid.")
|
||||
myGridControl.DataSource = oDatatable
|
||||
myGridview.BestFitColumns(True)
|
||||
clsWMDocGrid.DTDocuments = Nothing
|
||||
ToolStripDropDownButtonFile.Visible = False
|
||||
tslblState.Text = $"Tab [{TabCaption}] refreshed (fallback grid) - {Now}"
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
clsWMDocGrid.DTDocuments = oDatatable
|
||||
Create_GridControl(myGridview, oDatatable)
|
||||
|
||||
Dim oxmlPath As String = ""
|
||||
oxmlPath = Get_DocGrid_Layout_Filename(XtraTabControlDocs.SelectedTabPageIndex)
|
||||
|
||||
@@ -463,33 +772,65 @@ Public Class frmValidatorSearch
|
||||
If My.Settings.frmValSearchSplitterDistance > 20 Then
|
||||
SplitContainerSearches.SplitterDistance = My.Settings.frmValSearchSplitterDistance
|
||||
End If
|
||||
|
||||
' DocumentPathHandler initialisieren
|
||||
_documentPathHandler = New DocumentPathHandler(LOGCONFIG)
|
||||
|
||||
ToolStripDropDownButtonFile.Visible = False
|
||||
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
|
||||
' Prüfen ob das Formular im sichtbaren Bereich liegt
|
||||
EnsureFormIsVisible()
|
||||
formLoaded = True
|
||||
End Sub
|
||||
|
||||
Private Sub XtraTabControlSQL_SelectedPageChanged(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlSQL.SelectedPageChanged
|
||||
If IsNothing(_DTSQLSearches) Then Exit Sub
|
||||
Dim oConID = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("CONN_ID")
|
||||
Dim oCommand = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("SQL_COMMAND")
|
||||
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
|
||||
Dim oTabIndex = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("TAB_INDEX")
|
||||
Dim oTabCaption = _DTSQLSearches.Rows(XtraTabControlSQL.SelectedTabPageIndex).Item("TAB_TITLE")
|
||||
RefreshTabSQL(oConID, oCommand, oTabIndex, oTabCaption)
|
||||
End Sub
|
||||
Private Sub XtraTabControlDocs_SelectedPageChanged_1(sender As Object, e As TabPageChangedEventArgs) Handles XtraTabControlDocs.SelectedPageChanged
|
||||
If IsNothing(_DTDocSearches) Then Exit Sub
|
||||
Dim oConID = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("CONN_ID")
|
||||
Dim oCommand = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("SQL_COMMAND")
|
||||
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
|
||||
Dim oTabIndex = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("TAB_INDEX")
|
||||
Dim oTabCaption = _DTDocSearches.Rows(XtraTabControlDocs.SelectedTabPageIndex).Item("TAB_TITLE")
|
||||
RefreshTabDoc(oConID, oCommand, oTabIndex, oTabCaption)
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub EigenschaftenDateiToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EigenschaftenDateiToolStripMenuItem.Click
|
||||
Show_File_Properties()
|
||||
@@ -518,86 +859,126 @@ Public Class frmValidatorSearch
|
||||
Next
|
||||
End Sub
|
||||
Sub Refresh_DocID(myGrid As GridView)
|
||||
Try
|
||||
If myGrid Is Nothing Then
|
||||
LOGGER.Warn("⚠️ Refresh_DocID: myGrid is Nothing - Exit Sub")
|
||||
Return
|
||||
End If
|
||||
|
||||
Try
|
||||
myGrid.ShowLoadingPanel()
|
||||
clsWMDocGrid.ActiveDocGrid = myGrid
|
||||
clsWMDocGrid.ActiveDocGrid.EndSelection()
|
||||
clsWMDocGrid.GetDocItems()
|
||||
|
||||
If ToolStripDropDownButtonFile.Visible = False Then
|
||||
ToolStripDropDownButtonFile.Visible = True
|
||||
End If
|
||||
If clsWMDocGrid.SELECTED_DOC_ID <> 0 Then
|
||||
If LastDocID = clsWMDocGrid.SELECTED_DOC_ID Then
|
||||
myGrid.HideLoadingPanel()
|
||||
Exit Sub
|
||||
End If
|
||||
Dim msg = "DocID: " & clsWMDocGrid.SELECTED_DOC_ID.ToString
|
||||
tslblDocID.Text = msg
|
||||
ToolStripDropDownButtonFile.Enabled = True
|
||||
Dim oDocument As DocumentResultList.Document = Nothing
|
||||
' Load DocumentInfo
|
||||
oDocument = Documentloader.Load(clsWMDocGrid.SELECTED_DOC_ID, clsWMDocGrid.SELECTED_DOC_PATH)
|
||||
|
||||
If Not IsNothing(DocumentViewer1) Then
|
||||
Dim oFileName = $"{clsWMDocGrid.SELECTED_DOC_ID}.{oDocument.Extension}"
|
||||
If Not IsNothing(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
|
||||
If clsWMDocGrid.SELECTED_DOC_ID = 0 Then
|
||||
tslblDocID.Text = "DocRow not selected"
|
||||
ToolStripDropDownButtonFile.Enabled = False
|
||||
Return
|
||||
End If
|
||||
|
||||
If LastDocID = clsWMDocGrid.SELECTED_DOC_ID Then
|
||||
Return
|
||||
End If
|
||||
|
||||
tslblDocID.Text = "DocID: " & clsWMDocGrid.SELECTED_DOC_ID.ToString
|
||||
ToolStripDropDownButtonFile.Enabled = True
|
||||
LOGGER.Debug($"✓ DocID aktualisiert: {clsWMDocGrid.SELECTED_DOC_ID}")
|
||||
If IsNothing(Documentloader) Then
|
||||
If OperationMode = Nothing Then
|
||||
OperationMode = GetOperationMode()
|
||||
End If
|
||||
Documentloader = New Loader(LOGCONFIG, OperationMode, Environment.Service.Client, Environment.User)
|
||||
End If
|
||||
|
||||
If _documentPathHandler Is Nothing Then
|
||||
_documentPathHandler = New DocumentPathHandler(LOGCONFIG)
|
||||
End If
|
||||
|
||||
Dim oDocument As DocumentResultList.Document = Documentloader.Load(clsWMDocGrid.SELECTED_DOC_ID, clsWMDocGrid.SELECTED_DOC_PATH)
|
||||
|
||||
If IsNothing(oDocument) Then
|
||||
LOGGER.Warn($"⚠️ Refresh_DocID: Documentloader.Load lieferte Nothing (DocID={clsWMDocGrid.SELECTED_DOC_ID})")
|
||||
statlbl.Text = "Dokument konnte nicht geladen werden."
|
||||
Return
|
||||
Else
|
||||
LOGGER.Debug($"✓ Documentloader.Load erfolgreich für DocID={clsWMDocGrid.SELECTED_DOC_ID}, Pfad: {clsWMDocGrid.SELECTED_DOC_PATH}")
|
||||
End If
|
||||
|
||||
If Not IsNothing(DocumentViewer1) AndAlso Not IsNothing(oDocument.Contents) Then
|
||||
Dim options As New DocumentPathHandler.DocumentPathOptions With {
|
||||
.EnableMapping = COPY_WMFILE_2TEMP AndAlso Not String.IsNullOrWhiteSpace(WMSUFFIX),
|
||||
.WMSuffix = WMSUFFIX,
|
||||
.SpecificDrive = If(Len(MAP_SHARE_DRIVE) = 1, MAP_SHARE_DRIVE, ""),
|
||||
.DriveBlacklist = MAP_BLACKLIST,
|
||||
.CopyToTemp = COPY_WMFILE_2TEMP,
|
||||
.TempFolder = TEMP_DOCUMENT_FOLDER,
|
||||
.UnmapAfterCopy = True
|
||||
}
|
||||
|
||||
Dim result = _documentPathHandler.ProcessDocumentPath(clsWMDocGrid.SELECTED_DOC_PATH, options)
|
||||
|
||||
If result.Success Then
|
||||
DocumentViewer1.LoadFile_FromPath(result.FinalPath)
|
||||
LastDocID = clsWMDocGrid.SELECTED_DOC_ID
|
||||
DocumentViewer1.RightViewOnly(USER_RIGHT_VIEW_ONLY)
|
||||
LOGGER.Debug($"✓ [ValidatorSearch] Dokument geladen: [{Path.GetFileName(result.FinalPath)}]")
|
||||
Else
|
||||
LOGGER.Error($"❌ [ValidatorSearch] {result.ErrorMessage}")
|
||||
statlbl.Text = $"Fehler: {result.ErrorMessage}"
|
||||
End If
|
||||
Else
|
||||
statlbl.Text = "Dokumentinhalt ist leer."
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
Finally
|
||||
Try
|
||||
myGrid.HideLoadingPanel()
|
||||
Catch
|
||||
End Try
|
||||
End Try
|
||||
myGrid.HideLoadingPanel()
|
||||
End Sub
|
||||
Private Sub GridViewDocSearch1_FocusedRowChanged(sender As Object, e As Views.Base.FocusedRowChangedEventArgs) Handles GridViewDocSearch1.FocusedRowChanged
|
||||
Refresh_DocID(GridViewDocSearch1)
|
||||
Private Sub GridViewDocSearch_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch1.FocusedRowChanged,
|
||||
GridViewDocSearch2.FocusedRowChanged,
|
||||
GridViewDocSearch3.FocusedRowChanged,
|
||||
GridViewDocSearch4.FocusedRowChanged,
|
||||
GridViewDocSearch5.FocusedRowChanged
|
||||
|
||||
If Not Me.Visible Then
|
||||
Return
|
||||
End If
|
||||
|
||||
Dim activeGrid As GridView = TryCast(sender, GridView)
|
||||
If activeGrid Is Nothing Then
|
||||
Return
|
||||
End If
|
||||
|
||||
LOGGER.Debug($"FocusedRowChanged ausgelöst: [{activeGrid.Name}]")
|
||||
Refresh_DocID(activeGrid)
|
||||
End Sub
|
||||
|
||||
Private Sub GridViewDocSearch2_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch2.FocusedRowChanged
|
||||
Refresh_DocID(GridViewDocSearch2)
|
||||
End Sub
|
||||
Private Sub GridViewDocSearch3_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch3.FocusedRowChanged
|
||||
Refresh_DocID(GridViewDocSearch3)
|
||||
End Sub
|
||||
Private Sub GridViewDocSearch4_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch4.FocusedRowChanged
|
||||
Refresh_DocID(GridViewDocSearch4)
|
||||
End Sub
|
||||
Private Sub GridViewDocSearch5_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridViewDocSearch5.FocusedRowChanged
|
||||
Refresh_DocID(GridViewDocSearch5)
|
||||
End Sub
|
||||
Private Sub GridViewDocSearch_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch1.FocusedColumnChanged,
|
||||
GridViewDocSearch2.FocusedColumnChanged,
|
||||
GridViewDocSearch3.FocusedColumnChanged,
|
||||
GridViewDocSearch4.FocusedColumnChanged,
|
||||
GridViewDocSearch5.FocusedColumnChanged
|
||||
|
||||
Private Sub GridViewDocSearch1_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch1.FocusedColumnChanged
|
||||
Refresh_DocID(GridViewDocSearch1)
|
||||
End Sub
|
||||
If Not Me.Visible Then
|
||||
Return
|
||||
End If
|
||||
|
||||
Private Sub GridViewDocSearch2_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch2.FocusedColumnChanged
|
||||
Refresh_DocID(GridViewDocSearch2)
|
||||
End Sub
|
||||
Private Sub GridViewDocSearch3_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch3.FocusedColumnChanged
|
||||
Refresh_DocID(GridViewDocSearch3)
|
||||
End Sub
|
||||
Private Sub GridViewDocSearch4_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch4.FocusedColumnChanged
|
||||
Refresh_DocID(GridViewDocSearch4)
|
||||
End Sub
|
||||
Private Sub GridViewDocSearch5_FocusedColumnChanged(sender As Object, e As FocusedColumnChangedEventArgs) Handles GridViewDocSearch5.FocusedColumnChanged
|
||||
Refresh_DocID(GridViewDocSearch5)
|
||||
Dim activeGrid As GridView = TryCast(sender, GridView)
|
||||
If activeGrid Is Nothing Then
|
||||
Return
|
||||
End If
|
||||
|
||||
LOGGER.Debug($"FocusedColumnChanged ausgelöst: [{activeGrid.Name}]")
|
||||
Refresh_DocID(activeGrid)
|
||||
End Sub
|
||||
|
||||
Private Sub DateiÖffnenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DateiÖffnenToolStripMenuItem.Click
|
||||
@@ -693,14 +1074,16 @@ Public Class frmValidatorSearch
|
||||
|
||||
End Sub
|
||||
Private Sub ToolStripButtonRefreshSearches_Click(sender As Object, e As EventArgs) Handles ToolStripButtonRefreshSearches.Click
|
||||
If BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count > 0 Then
|
||||
LOGGER.Debug($"There are [{BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows.Count}] SQLSearches configured!")
|
||||
_DTSQLSearches = BASEDATA_DT_PROFILE_SEARCHES_SQL
|
||||
Dim oConID = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("CONN_ID")
|
||||
Dim oCommand = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("SQL_COMMAND")
|
||||
If DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count > 0 Then
|
||||
LOGGER.Debug($"There are [{DT_FILTERED_PROFILE_SEARCHES_DATA.Rows.Count}] DATASearches configured!")
|
||||
_DTDATASearches = DT_FILTERED_PROFILE_SEARCHES_DATA
|
||||
Dim oConID = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("CONN_ID")
|
||||
Dim oCommand = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("SQL_COMMAND")
|
||||
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
|
||||
XtraTabControlSQL.SelectedTabPageIndex = 0
|
||||
Refresh_Load_GridSQL(oConID, oCommand, 0, BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(0).Item("TAB_TITLE"))
|
||||
Refresh_Load_GridSQL(oConID, oCommand, 0, DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(0).Item("TAB_TITLE"))
|
||||
Else
|
||||
LOGGER.Debug("No DATASearches configured for this profile!")
|
||||
End If
|
||||
If DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count > 0 Then
|
||||
LOGGER.Debug($"There are [{DT_FILTERED_PROFILE_SEARCHES_DOC.Rows.Count}] DocSearches configured!")
|
||||
@@ -710,6 +1093,8 @@ Public Class frmValidatorSearch
|
||||
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
|
||||
XtraTabControlDocs.SelectedTabPageIndex = 0
|
||||
RefreshTabDoc(oConID, oCommand, 0, DT_FILTERED_PROFILE_SEARCHES_DOC.Rows(0).Item("TAB_TITLE"))
|
||||
Else
|
||||
LOGGER.Debug("No DocSearches configured for this profile!")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -754,48 +1139,57 @@ Public Class frmValidatorSearch
|
||||
End Sub
|
||||
Sub ReLoad_Active_SQLTab()
|
||||
Dim oTabIndex = XtraTabControlSQL.SelectedTabPageIndex
|
||||
Dim oConID = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(oTabIndex).Item("CONN_ID")
|
||||
Dim oCommand = BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(oTabIndex).Item("SQL_COMMAND")
|
||||
Dim oConID = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(oTabIndex).Item("CONN_ID")
|
||||
Dim oCommand = DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(oTabIndex).Item("SQL_COMMAND")
|
||||
oCommand = clsPatterns.ReplaceAllValues(oCommand, _frmValidator.PanelValidatorControl, True)
|
||||
RefreshTabSQL(oConID, oCommand, oTabIndex, BASEDATA_DT_PROFILE_SEARCHES_SQL.Rows(oTabIndex).Item("TAB_TITLE"))
|
||||
RefreshTabSQL(oConID, oCommand, oTabIndex, DT_FILTERED_PROFILE_SEARCHES_DATA.Rows(oTabIndex).Item("TAB_TITLE"))
|
||||
End Sub
|
||||
|
||||
Private Sub GridControlDocSearch1_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch1.DoubleClick
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch1)
|
||||
FileShow()
|
||||
End Sub
|
||||
Private Sub GridControlDocSearch2_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch2.DoubleClick
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch2)
|
||||
FileShow()
|
||||
End Sub
|
||||
Private Sub GridControlDocSearch3_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch3.DoubleClick
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch3)
|
||||
FileShow()
|
||||
End Sub
|
||||
Private Sub GridControlDocSearch4_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch4.DoubleClick
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch4)
|
||||
FileShow()
|
||||
End Sub
|
||||
Private Sub GridControlDocSearch5_DoubleClick(sender As Object, e As EventArgs) Handles GridControlDocSearch5.DoubleClick
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch5)
|
||||
FileShow()
|
||||
End Sub
|
||||
|
||||
Private Sub GridControlDocSearch1_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch1.Click
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch1)
|
||||
|
||||
End Sub
|
||||
Private Sub GridControlDocSearch2_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch2.Click
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch2)
|
||||
End Sub
|
||||
Private Sub GridControlDocSearch3_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch3.Click
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch3)
|
||||
End Sub
|
||||
Private Sub GridControlDocSearch4_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch4.Click
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch4)
|
||||
End Sub
|
||||
Private Sub GridControlDocSearch5_Click(sender As Object, e As EventArgs) Handles GridControlDocSearch5.Click
|
||||
|
||||
If Not Me.Visible Then Return
|
||||
Refresh_DocID(GridViewDocSearch5)
|
||||
End Sub
|
||||
|
||||
|
||||
150
app/TaskFlow/logtaskflow.txt
Normal file
150
app/TaskFlow/logtaskflow.txt
Normal file
@@ -0,0 +1,150 @@
|
||||
13:45:45.0872|frmValidator|INFO >> Load_Additional_Searches -> ✓ SQL-Search 'Inhalte ZUGFeRD-XML': 67 Ergebnisse gefunden
|
||||
13:45:45.0872|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T WITH (NOLOCK) INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = {#IDBA#ObjectID}]
|
||||
13:45:45.0872|taskFLOW|DEBUG >> ReplaceIDBAttributes -> Starting ReplaceIDBAttributes with input: [Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T WITH (NOLOCK) INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = {#IDBA#ObjectID}] for document ID: 4511694
|
||||
13:45:45.0872|taskFLOW|DEBUG >> ReplaceIDBAttributes -> IS_SQL = True - oReplaceValue = [{#IDBA#ObjectID}]
|
||||
13:45:45.0872|taskFLOW|DEBUG >> ReplaceIDBAttributes -> oIDBValue = 4511694
|
||||
13:45:45.0872|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T WITH (NOLOCK) INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = {#IDBA#ObjectID}
|
||||
13:45:45.0872|taskFLOW|DEBUG >> ReplaceControlValues -> Starting ReplaceControlValues with input: [Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T WITH (NOLOCK) INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = 4511694] for document ID: 4511694
|
||||
13:45:45.0872|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T WITH (NOLOCK) INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = 4511694]
|
||||
13:45:45.0872|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access.
|
||||
13:45:45.0872|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM]
|
||||
13:45:45.0872|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1]
|
||||
13:45:45.0872|MSSQLServer|DEBUG >> Get_ConnectionStringforID -> Getting ConnectionString for ConnectionId [1]
|
||||
13:45:45.0872|MSSQLServer|DEBUG >> GetConnection -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391;
|
||||
13:45:45.0872|MSSQLServer|DEBUG >> MaybeGetTransaction -> Transaction Mode: [WithTransaction]
|
||||
13:45:45.0872|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters []
|
||||
13:45:45.0872|MSSQLServer|DEBUG >> GetConnection -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX
|
||||
13:45:45.0872|MSSQLServer|DEBUG >> MaybeGetTransaction -> Transaction Mode: [WithTransaction]
|
||||
13:45:45.0872|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject -> GetDatatableWithConnectionObject: Running Query [Select T.DocID,T.FULL_FILENAME,T.Doctype from TBPM_CUST_ATTACHMENTS T WITH (NOLOCK) INNER JOIN idb.dbo.VWIDB_DOC_DATA T1 ON T.EmailMessageID = T1.EmailMessageID WHERE T1.IDB_OBJ_ID = 4511694] and Parameters []
|
||||
13:45:45.5262|frmValidator|DEBUG >> Load_Additional_Searches -> ℹ️ Doc-Search 'Attachments': Keine Ergebnisse gefunden
|
||||
13:45:45.5262|frmValidator|DEBUG >> Load_Additional_Searches -> Ergebnisprüfung abgeschlossen: AdditionalDataResultsExist=True, AdditionalDocResultsExist=False
|
||||
13:45:45.5262|frmValidator|DEBUG >> Load_Additional_Searches -> rbnPgGroupAttmt.Visible gesetzt auf: True | Stack:
|
||||
at taskFLOW.frmValidator.FillIndexValues(Boolean first, String SingleAttribute)
|
||||
13:45:45.5262|frmValidator|DEBUG >> Load_Additional_Searches -> --- NORMAL-MODUS aktiviert (nur vorbereiten, NICHT Show) ---
|
||||
13:45:45.5262|taskFLOW|DEBUG >> TabPreload -> === TabPreload START ===
|
||||
13:45:45.5262|taskFLOW|DEBUG >> TabPreload -> Parameters: TabCountSQL=1, TabCountDoc=0, DTSQL.Rows=1, DTDOC.Rows=0
|
||||
13:45:45.5262|taskFLOW|DEBUG >> TabPreload -> Ausführung auf UI-Thread
|
||||
13:45:45.5262|taskFLOW|DEBUG >> TabPreload -> 🚫 Tab-Events deaktiviert
|
||||
13:45:45.5262|taskFLOW|DEBUG >> TabPreload -> ✓ _DTDATASearches und _DTDocSearches zugewiesen: SQL=1, Doc=0
|
||||
13:45:45.5322|taskFLOW|DEBUG >> TabPreload -> Panel1Collapsed (SQL)=False, Panel2Collapsed (Doc)=True
|
||||
13:45:45.5322|taskFLOW|DEBUG >> TabPreload -> Konfiguriere SQL-Tabs: 1 Definitionen
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlSQL_SelectedPageChanged -> 🚫 XtraTabControlSQL_SelectedPageChanged unterdrückt (SelectedTabPageIndex=1)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlSQL_SelectedPageChanged -> 🚫 XtraTabControlSQL_SelectedPageChanged unterdrückt (SelectedTabPageIndex=2)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlSQL_SelectedPageChanged -> 🚫 XtraTabControlSQL_SelectedPageChanged unterdrückt (SelectedTabPageIndex=3)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlSQL_SelectedPageChanged -> 🚫 XtraTabControlSQL_SelectedPageChanged unterdrückt (SelectedTabPageIndex=4)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlSQL_SelectedPageChanged -> 🚫 XtraTabControlSQL_SelectedPageChanged unterdrückt (SelectedTabPageIndex=-1)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> TabPreload -> Alle 5 SQL-Tabs auf PageVisible=False gesetzt
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlSQL_SelectedPageChanged -> 🚫 XtraTabControlSQL_SelectedPageChanged unterdrückt (SelectedTabPageIndex=0)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> TabPreload -> SQL-Tab 0: Text='Inhalte ZUGFeRD-XML', PageVisible=True
|
||||
13:45:45.5322|taskFLOW|INFO >> TabPreload -> ✓ 1 SQL-Tabs konfiguriert
|
||||
13:45:45.5322|taskFLOW|DEBUG >> TabPreload -> Keine Doc-Daten, alle Tabs ausblenden
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlDocs_SelectedPageChanged_1 -> 🚫 XtraTabControlDocs_SelectedPageChanged unterdrückt (SelectedTabPageIndex=1)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlDocs_SelectedPageChanged_1 -> 🚫 XtraTabControlDocs_SelectedPageChanged unterdrückt (SelectedTabPageIndex=2)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlDocs_SelectedPageChanged_1 -> 🚫 XtraTabControlDocs_SelectedPageChanged unterdrückt (SelectedTabPageIndex=3)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlDocs_SelectedPageChanged_1 -> 🚫 XtraTabControlDocs_SelectedPageChanged unterdrückt (SelectedTabPageIndex=4)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> XtraTabControlDocs_SelectedPageChanged_1 -> 🚫 XtraTabControlDocs_SelectedPageChanged unterdrückt (SelectedTabPageIndex=-1)
|
||||
13:45:45.5322|taskFLOW|DEBUG >> TabPreload -> ✓ Tab-Events reaktiviert
|
||||
13:45:45.5322|taskFLOW|DEBUG >> TabPreload -> Setze SQL SelectedTabPageIndex manuell auf 0
|
||||
13:45:45.5322|taskFLOW|DEBUG >> ReplaceAllValues -> input BEFORE replacing: [SELECT
|
||||
SPEC_NAME [Definitions-Name],
|
||||
ITEM_DESCRIPTION [Beschreibung],
|
||||
CASE
|
||||
WHEN SPEC_NAME = 'INVOICE_POSITION_NOTE' THEN
|
||||
REPLACE(REPLACE(ITEM_VALUE, CHAR(13),' '),CHAR(10),' ')
|
||||
ELSE
|
||||
ITEM_VALUE
|
||||
END [Inhalt xml],
|
||||
GROUP_COUNTER [Gruppenzähler],
|
||||
IS_REQUIRED [Pflichtangabe],
|
||||
CREATEDWHEN [Erstellt]
|
||||
FROM dbo.TBEDMI_ITEM_VALUE WITH (NOLOCK)
|
||||
WHERE REFERENCE_GUID = (SELECT EmailMessageID FROM IDB.dbo.VWIDB_DOC_DATA WHERE IDB_OBJ_ID = {#IDBA#ObjectID})
|
||||
ORDER BY GROUP_COUNTER, SPEC_NAME]
|
||||
13:45:45.5322|taskFLOW|DEBUG >> ReplaceIDBAttributes -> Starting ReplaceIDBAttributes with input: [SELECT
|
||||
SPEC_NAME [Definitions-Name],
|
||||
ITEM_DESCRIPTION [Beschreibung],
|
||||
CASE
|
||||
WHEN SPEC_NAME = 'INVOICE_POSITION_NOTE' THEN
|
||||
REPLACE(REPLACE(ITEM_VALUE, CHAR(13),' '),CHAR(10),' ')
|
||||
ELSE
|
||||
ITEM_VALUE
|
||||
END [Inhalt xml],
|
||||
GROUP_COUNTER [Gruppenzähler],
|
||||
IS_REQUIRED [Pflichtangabe],
|
||||
CREATEDWHEN [Erstellt]
|
||||
FROM dbo.TBEDMI_ITEM_VALUE WITH (NOLOCK)
|
||||
WHERE REFERENCE_GUID = (SELECT EmailMessageID FROM IDB.dbo.VWIDB_DOC_DATA WHERE IDB_OBJ_ID = {#IDBA#ObjectID})
|
||||
ORDER BY GROUP_COUNTER, SPEC_NAME] for document ID: 4511694
|
||||
13:45:45.5322|taskFLOW|DEBUG >> ReplaceIDBAttributes -> IS_SQL = True - oReplaceValue = [{#IDBA#ObjectID}]
|
||||
13:45:45.5322|taskFLOW|DEBUG >> ReplaceIDBAttributes -> oIDBValue = 4511694
|
||||
13:45:45.5322|taskFLOW|DEBUG >> ReplaceIDBAttributes -> sql after ReplaceIDBAttributes: SELECT
|
||||
SPEC_NAME [Definitions-Name],
|
||||
ITEM_DESCRIPTION [Beschreibung],
|
||||
CASE
|
||||
WHEN SPEC_NAME = 'INVOICE_POSITION_NOTE' THEN
|
||||
REPLACE(REPLACE(ITEM_VALUE, CHAR(13),' '),CHAR(10),' ')
|
||||
ELSE
|
||||
ITEM_VALUE
|
||||
END [Inhalt xml],
|
||||
GROUP_COUNTER [Gruppenzähler],
|
||||
IS_REQUIRED [Pflichtangabe],
|
||||
CREATEDWHEN [Erstellt]
|
||||
FROM dbo.TBEDMI_ITEM_VALUE WITH (NOLOCK)
|
||||
WHERE REFERENCE_GUID = (SELECT EmailMessageID FROM IDB.dbo.VWIDB_DOC_DATA WHERE IDB_OBJ_ID = {#IDBA#ObjectID})
|
||||
ORDER BY GROUP_COUNTER, SPEC_NAME
|
||||
13:45:45.5322|taskFLOW|DEBUG >> ReplaceControlValues -> Starting ReplaceControlValues with input: [SELECT
|
||||
SPEC_NAME [Definitions-Name],
|
||||
ITEM_DESCRIPTION [Beschreibung],
|
||||
CASE
|
||||
WHEN SPEC_NAME = 'INVOICE_POSITION_NOTE' THEN
|
||||
REPLACE(REPLACE(ITEM_VALUE, CHAR(13),' '),CHAR(10),' ')
|
||||
ELSE
|
||||
ITEM_VALUE
|
||||
END [Inhalt xml],
|
||||
GROUP_COUNTER [Gruppenzähler],
|
||||
IS_REQUIRED [Pflichtangabe],
|
||||
CREATEDWHEN [Erstellt]
|
||||
FROM dbo.TBEDMI_ITEM_VALUE WITH (NOLOCK)
|
||||
WHERE REFERENCE_GUID = (SELECT EmailMessageID FROM IDB.dbo.VWIDB_DOC_DATA WHERE IDB_OBJ_ID = 4511694)
|
||||
ORDER BY GROUP_COUNTER, SPEC_NAME] for document ID: 4511694
|
||||
13:45:45.5322|taskFLOW|DEBUG >> ReplaceAllValues -> input AFTER replacing: [SELECT
|
||||
SPEC_NAME [Definitions-Name],
|
||||
ITEM_DESCRIPTION [Beschreibung],
|
||||
CASE
|
||||
WHEN SPEC_NAME = 'INVOICE_POSITION_NOTE' THEN
|
||||
REPLACE(REPLACE(ITEM_VALUE, CHAR(13),' '),CHAR(10),' ')
|
||||
ELSE
|
||||
ITEM_VALUE
|
||||
END [Inhalt xml],
|
||||
GROUP_COUNTER [Gruppenzähler],
|
||||
IS_REQUIRED [Pflichtangabe],
|
||||
CREATEDWHEN [Erstellt]
|
||||
FROM dbo.TBEDMI_ITEM_VALUE WITH (NOLOCK)
|
||||
WHERE REFERENCE_GUID = (SELECT EmailMessageID FROM IDB.dbo.VWIDB_DOC_DATA WHERE IDB_OBJ_ID = 4511694)
|
||||
ORDER BY GROUP_COUNTER, SPEC_NAME]
|
||||
13:45:45.5322|taskFLOW|DEBUG >> TabPreload -> SQL-Tab 0: erzwungener Initial-Refresh
|
||||
13:45:45.5322|DatabaseWithFallback|DEBUG >> GetDatatable -> ForceFallback is True, falling back to direct database access.
|
||||
13:45:45.5322|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Fetching data from database [ECM] with Connection Id [ECM]
|
||||
13:45:45.5322|DatabaseWithFallback|DEBUG >> GetDatatableFromDatabase -> Retrieving Connection String from Connection Id [1]
|
||||
13:45:45.5322|MSSQLServer|DEBUG >> Get_ConnectionStringforID -> Getting ConnectionString for ConnectionId [1]
|
||||
13:45:45.5322|MSSQLServer|DEBUG >> GetConnection -> The Following Connection is open: Server=W2K19SRV398;Database=DD_ECM;User Id=EDMAdmin;Password=XXXXX;Application Name=DD_EDMIAppService;Workstation ID=W2K19SRV391;
|
||||
13:45:45.5322|MSSQLServer|DEBUG >> MaybeGetTransaction -> Transaction Mode: [WithTransaction]
|
||||
13:45:45.5322|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject -> GetDatatableWithConnectionObject: Running Query [SELECT * FROM TBDD_CONNECTION WHERE GUID = 1] and Parameters []
|
||||
13:45:45.5322|MSSQLServer|DEBUG >> GetConnection -> The Following Connection is open: Data Source=w2k19srv398;Initial Catalog=DD_ECM;User ID=EDMAdmin;Password=XXXXX
|
||||
13:45:45.5322|MSSQLServer|DEBUG >> MaybeGetTransaction -> Transaction Mode: [WithTransaction]
|
||||
13:45:45.5322|MSSQLServer|DEBUG >> GetDatatableWithConnectionObject -> GetDatatableWithConnectionObject: Running Query [SELECT
|
||||
SPEC_NAME [Definitions-Name],
|
||||
ITEM_DESCRIPTION [Beschreibung],
|
||||
CASE
|
||||
WHEN SPEC_NAME = 'INVOICE_POSITION_NOTE' THEN
|
||||
REPLACE(REPLACE(ITEM_VALUE, CHAR(13),' '),CHAR(10),' ')
|
||||
ELSE
|
||||
ITEM_VALUE
|
||||
END [Inhalt xml],
|
||||
GROUP_COUNTER [Gruppenzähler],
|
||||
IS_REQUIRED [Pflichtangabe],
|
||||
CREATEDWHEN [Erstellt]
|
||||
FROM dbo.TBEDMI_ITEM_VALUE WITH (NOLOCK)
|
||||
WHERE REFERENCE_GUID = (SELECT EmailMessageID FROM IDB.dbo.VWIDB_DOC_DATA WHERE IDB_OBJ_ID = 4511694)
|
||||
ORDER BY GROUP_COUNTER, SPEC_NAME] and Parameters []
|
||||
13:45:45.5832|taskFLOW|DEBUG >> TabPreload -> === TabPreload END ===
|
||||
@@ -5,8 +5,8 @@
|
||||
<package id="DocumentFormat.OpenXml.Framework" version="3.2.0" targetFramework="net462" />
|
||||
<package id="EntityFramework" version="6.4.4" targetFramework="net462" />
|
||||
<package id="EntityFramework.Firebird" version="6.4.0" targetFramework="net462" />
|
||||
<package id="GdPicture" version="14.3.23" targetFramework="net462" />
|
||||
<package id="GdPicture.runtimes.windows" version="14.3.23" targetFramework="net462" />
|
||||
<package id="GdPicture" version="14.3.3" targetFramework="net462" />
|
||||
<package id="GdPicture.runtimes.windows" version="14.3.3" targetFramework="net462" />
|
||||
<package id="Google.Protobuf" version="3.33.2" targetFramework="net462" />
|
||||
<package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net462" />
|
||||
<package id="Microsoft.Bcl.AsyncInterfaces" version="9.0.0" targetFramework="net462" />
|
||||
@@ -19,6 +19,7 @@
|
||||
<package id="Newtonsoft.Json.Bson" version="1.0.2" targetFramework="net462" />
|
||||
<package id="NLog" version="5.0.5" targetFramework="net461" />
|
||||
<package id="OpenMcdf" version="2.4.1" targetFramework="net462" />
|
||||
<package id="Oracle.ManagedDataAccess" version="21.15.0" targetFramework="net462" />
|
||||
<package id="protobuf-net" version="3.2.46" targetFramework="net462" />
|
||||
<package id="protobuf-net.Core" version="3.2.46" targetFramework="net462" />
|
||||
<package id="RtfPipe" version="2.0.7677.4303" targetFramework="net462" />
|
||||
|
||||
@@ -151,9 +151,9 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
</Reference>
|
||||
<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>
|
||||
<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 Include="DigitalData.Controls.LookupGrid">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDMonorepo\Controls.LookupGrid\bin\Debug\DigitalData.Controls.LookupGrid.dll</HintPath>
|
||||
@@ -173,23 +173,18 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.Database, Version=2.3.6.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<Reference Include="DigitalData.Modules.Database">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
|
||||
</Reference>
|
||||
<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 Include="DigitalData.Modules.Encryption, Version=1.3.1.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Encryption\bin\Debug\DigitalData.Modules.Encryption.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.Interfaces, Version=2.3.7.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<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 Include="DigitalData.Modules.Interfaces">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.Logging, Version=2.6.5.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
@@ -202,15 +197,14 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.Windream, Version=1.9.6.2, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<Reference Include="DigitalData.Modules.Windream">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\Windream\bin\Debug\DigitalData.Modules.Windream.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DigitalData.Modules.ZooFlow">
|
||||
<HintPath>..\..\..\..\2_DLL Projekte\DDModules\ZooFlow\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DLLLicenseManager">
|
||||
<HintPath>P:\Visual Studio Projekte\Bibliotheken\DLLLicenseManager.dll</HintPath>
|
||||
<HintPath>M:\Bibliotheken\Digital Data\DD_Modules\DLLLicenseManager.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
@@ -231,117 +225,109 @@
|
||||
<HintPath>..\packages\FirebirdSql.Data.FirebirdClient.7.5.0\lib\net452\FirebirdSql.Data.FirebirdClient.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="FormsUtils">
|
||||
<HintPath>P:\Visual Studio Projekte\Bibliotheken\FormsUtils.dll</HintPath>
|
||||
<HintPath>M:\Bibliotheken\3rdParty\FormsUtils.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
<Private>True</Private>
|
||||
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
<Private>True</Private>
|
||||
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\GdPicture.14.3.23\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
<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>
|
||||
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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>
|
||||
</Reference>
|
||||
<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 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>
|
||||
@@ -356,15 +342,6 @@
|
||||
<Reference Include="Microsoft.IdentityModel.Abstractions, Version=6.22.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.IdentityModel.Abstractions.6.22.0\lib\net461\Microsoft.IdentityModel.Abstractions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NativeSDK.Exceptions, Version=14.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">
|
||||
<HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
@@ -377,11 +354,8 @@
|
||||
<Reference Include="OpenMcdf, Version=2.4.1.0, Culture=neutral, PublicKeyToken=fdbb1629d7c00800, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\OpenMcdf.2.4.1\lib\net40\OpenMcdf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Oracle.ManagedDataAccess">
|
||||
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Oracle.ManagedDataAccess.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PdfSharp-gdi">
|
||||
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\PdfSharp-gdi.dll</HintPath>
|
||||
<Reference Include="Oracle.ManagedDataAccess, Version=4.122.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Oracle.ManagedDataAccess.21.15.0\lib\net462\Oracle.ManagedDataAccess.dll</HintPath>
|
||||
</Reference>
|
||||
<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>
|
||||
@@ -392,9 +366,6 @@
|
||||
<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>
|
||||
</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.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>
|
||||
@@ -488,7 +459,6 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="ApplicationEvents.vb" />
|
||||
<Compile Include="ClassAnnotation.vb" />
|
||||
<Compile Include="ClassConfig.vb" />
|
||||
<Compile Include="ClassConstants.vb" />
|
||||
<Compile Include="ClassControlCreator.vb" />
|
||||
@@ -624,6 +594,12 @@
|
||||
<Compile Include="frmError.vb">
|
||||
<SubType>Form</SubType>
|
||||
</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">
|
||||
<DependentUpon>frmFileInfo.vb</DependentUpon>
|
||||
</Compile>
|
||||
@@ -868,6 +844,9 @@
|
||||
<DependentUpon>frmError.vb</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="frmExpression_Designer.resx">
|
||||
<DependentUpon>frmExpression_Designer.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="frmFileInfo.resx">
|
||||
<DependentUpon>frmFileInfo.vb</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -1090,6 +1069,12 @@
|
||||
</None>
|
||||
</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="Resources\syncreon.png" />
|
||||
</ItemGroup>
|
||||
@@ -1271,6 +1256,7 @@
|
||||
<None Include="Resources\PM_mit_slogan.JPG" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="logtaskflow.txt" />
|
||||
<None Include="Changelog.md" />
|
||||
<Content Include="DataColumnExpression.txt" />
|
||||
<Content Include="DD_Icons_ICO_PMANAGER_48px.ico" />
|
||||
@@ -1380,10 +1366,10 @@
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.props'))" />
|
||||
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.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>
|
||||
<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.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
|
||||
Reference in New Issue
Block a user