22 Commits

Author SHA1 Message Date
Developer01
45485400e1 Handling in DocumentResultLsit 2026-05-05 08:04:48 +02:00
Developer01
734e056248 Logging und Vorbereitung MAPPING wie in taskFLOW 2026-05-04 16:40:14 +02:00
Developer01
b586bf496b Merge branch 'master' of http://git.dd:3000/AppStd/Monorepo 2026-04-28 15:46:33 +02:00
Developer01
e497490e82 Verweise windream 2026-04-28 15:46:17 +02:00
OlgunR
ca567dc9bc Update project references and migrate to NuGet packages
Refactored project references to use new DDModules paths and updated third-party DLL locations. Migrated GUIs.Test.EDMIBenchmark to NuGet-based dependency management, adding packages.config and binding redirects for key assemblies. Replaced Office COM interop with direct assembly references. Integrated GdPicture via NuGet and removed redundant hardcoded references. These changes improve maintainability, portability, and project structure.
2026-04-28 15:26:14 +02:00
c8499322ae Merge 2026-04-28 14:56:13 +02:00
ccd1cedd28 Gui.Common: Version 2.7.2.0 2026-04-28 14:53:24 +02:00
b081dda981 GdPicture Version 14.3.3 / Nlog 5.05 2026-04-28 14:52:21 +02:00
Developer01
935c5ad5fd Merge Commit 2026-04-21 09:28:20 +02:00
Developer01
63343178b5 Subtype Usercontrol in vbproj 2026-04-21 09:27:22 +02:00
Developer01
5b9fbabf0d Verweise Oracle 2026-04-21 09:26:46 +02:00
b4eecbdb86 ZUGFERD 20007 - BT-Felder-Liste anzeigen, mehrsprachig 2026-04-02 11:46:20 +02:00
3f58acea7a ValidationException - Auswertung der Exception-Items - mehrsprachig 2026-03-25 14:41:58 +01:00
4cfc8cd46b Texte austauschen 2026-03-25 08:47:45 +01:00
dc56d783b3 ZUGFeRD REST Service: "Ablehnungscode" mehrsprachige Ausgabe 2026-03-23 13:36:43 +01:00
25e0eddfdb ZUGFeRDRESTService: HttpPost-Parameter anders abfragen. Es ist immer nur ein Parameter möglich 2026-03-17 11:29:03 +01:00
64ae4e9c76 ZUGFeRD REST Service: LanguageID in HTTPPost-Methode 2026-03-17 10:30:08 +01:00
6936d45209 GUIs.Common: Version 2.7.1.0 2026-03-06 11:18:04 +01:00
7173c89b77 GUIs.Common: Formatierbare Datumsspalten-Funktionen ergänzt 2026-03-06 11:17:06 +01:00
538e2fcde1 ValidationController: Korrekturen 2026-02-04 15:09:46 +01:00
d1dbe8096d ValidationController: BulkInsert, XML-Schema etc für die Datenbank mitnehmen. Korrekturen 2026-02-04 14:13:11 +01:00
24dbed32cc ZUGFeRdRESTService - Validation Controller: REFERENCES_Rejection-Messages auswerten und als WebMessage ausgeben 2026-02-02 14:40:55 +01:00
41 changed files with 1348 additions and 662 deletions

View File

@@ -66,15 +66,15 @@
<Reference Include="DevExpress.XtraTreeList.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DigitalData.Modules.Config, Version=1.1.4.1, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
<HintPath>..\..\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Interfaces, Version=1.7.1.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
<HintPath>..\..\DDModules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />

View File

@@ -61,11 +61,11 @@
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

@@ -61,11 +61,11 @@
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

@@ -61,11 +61,11 @@
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

@@ -64,6 +64,7 @@ Partial Class DocumentViewer
Me.lbFileNotLoaded = New DevExpress.XtraEditors.LabelControl()
Me.RichEditControl1 = New DevExpress.XtraRichEdit.RichEditControl()
Me.lblInfo = New System.Windows.Forms.Label()
Me.GdViewer = New GdPicture14.GdViewer()
CType(Me.BarManager1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit3, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -346,7 +347,7 @@ Partial Class DocumentViewer
'
'SpreadsheetControl1
'
Me.SpreadsheetControl1.Location = New System.Drawing.Point(83, 177)
Me.SpreadsheetControl1.Location = New System.Drawing.Point(59, 181)
Me.SpreadsheetControl1.MenuManager = Me.BarManager1
Me.SpreadsheetControl1.Name = "SpreadsheetControl1"
Me.SpreadsheetControl1.ReadOnly = True
@@ -377,13 +378,94 @@ Partial Class DocumentViewer
'
'RichEditControl1
'
Me.RichEditControl1.Location = New System.Drawing.Point(571, 238)
Me.RichEditControl1.Location = New System.Drawing.Point(385, 166)
Me.RichEditControl1.MenuManager = Me.BarManager1
Me.RichEditControl1.Name = "RichEditControl1"
Me.RichEditControl1.Size = New System.Drawing.Size(400, 200)
Me.RichEditControl1.TabIndex = 5
Me.RichEditControl1.Visible = False
'
'lblInfo
'
Me.lblInfo.Location = New System.Drawing.Point(0, 0)
Me.lblInfo.Name = "lblInfo"
Me.lblInfo.Size = New System.Drawing.Size(100, 23)
Me.lblInfo.TabIndex = 0
'
'GdViewer
'
Me.GdViewer.AllowDropFile = False
Me.GdViewer.AnimateGIF = True
Me.GdViewer.AnnotationDropShadow = True
Me.GdViewer.AnnotationEnableMultiSelect = True
Me.GdViewer.AnnotationResizeRotateHandlesColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(0, Byte), Integer), CType(CType(128, Byte), Integer))
Me.GdViewer.AnnotationResizeRotateHandlesScale = 1.0!
Me.GdViewer.AnnotationSelectionLineColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(0, Byte), Integer), CType(CType(0, Byte), Integer))
Me.GdViewer.AutoScrollMargin = New System.Drawing.Size(0, 0)
Me.GdViewer.AutoScrollMinSize = New System.Drawing.Size(0, 0)
Me.GdViewer.BackColor = System.Drawing.Color.Black
Me.GdViewer.BackgroundImage = Nothing
Me.GdViewer.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None
Me.GdViewer.ClipAnnotsToPageBounds = True
Me.GdViewer.ClipRegionsToPageBounds = True
Me.GdViewer.ContinuousViewMode = True
Me.GdViewer.DisplayQuality = GdPicture14.DisplayQuality.DisplayQualityAutomatic
Me.GdViewer.DisplayQualityAuto = True
Me.GdViewer.DocumentAlignment = GdPicture14.ViewerDocumentAlignment.DocumentAlignmentMiddleCenter
Me.GdViewer.DocumentPosition = GdPicture14.ViewerDocumentPosition.DocumentPositionMiddleCenter
Me.GdViewer.DrawPageBorders = True
Me.GdViewer.EnableDeferredPainting = True
Me.GdViewer.EnabledProgressBar = True
Me.GdViewer.EnableFuzzySearch = False
Me.GdViewer.EnableICM = False
Me.GdViewer.EnableMenu = True
Me.GdViewer.EnableMouseWheel = True
Me.GdViewer.EnableTextSelection = True
Me.GdViewer.ForceScrollBars = False
Me.GdViewer.ForceTemporaryMode = False
Me.GdViewer.ForeColor = System.Drawing.Color.Black
Me.GdViewer.Gamma = 1.0!
Me.GdViewer.HQAnnotationRendering = True
Me.GdViewer.IgnoreDocumentResolution = False
Me.GdViewer.KeepDocumentPosition = False
Me.GdViewer.Location = New System.Drawing.Point(290, 372)
Me.GdViewer.LockViewer = False
Me.GdViewer.MagnifierHeight = 90
Me.GdViewer.MagnifierWidth = 160
Me.GdViewer.MagnifierZoomX = 2.0!
Me.GdViewer.MagnifierZoomY = 2.0!
Me.GdViewer.MouseButtonForMouseMode = GdPicture14.MouseButton.MouseButtonLeft
Me.GdViewer.MouseMode = GdPicture14.ViewerMouseMode.MouseModePan
Me.GdViewer.MouseWheelMode = GdPicture14.ViewerMouseWheelMode.MouseWheelModeZoom
Me.GdViewer.Name = "GdViewer"
Me.GdViewer.PageBordersColor = System.Drawing.Color.Black
Me.GdViewer.PageBordersPenSize = 1
Me.GdViewer.PageDisplayMode = GdPicture14.PageDisplayMode.MultiplePagesView
Me.GdViewer.PdfDisplayFormField = True
Me.GdViewer.PdfEnableFileLinks = True
Me.GdViewer.PdfEnableLinks = True
Me.GdViewer.PdfIncreaseTextContrast = False
Me.GdViewer.PdfShowDialogForPassword = True
Me.GdViewer.PdfShowOpenFileDialogForDecryption = True
Me.GdViewer.PdfVerifyDigitalCertificates = False
Me.GdViewer.PreserveViewRotation = True
Me.GdViewer.RectBorderColor = System.Drawing.Color.Black
Me.GdViewer.RectBorderSize = 1
Me.GdViewer.RectIsEditable = True
Me.GdViewer.RegionsAreEditable = True
Me.GdViewer.RenderGdPictureAnnots = True
Me.GdViewer.ScrollBars = True
Me.GdViewer.ScrollLargeChange = CType(50, Short)
Me.GdViewer.ScrollSmallChange = CType(1, Short)
Me.GdViewer.SilentMode = True
Me.GdViewer.Size = New System.Drawing.Size(128, 128)
Me.GdViewer.TabIndex = 0
Me.GdViewer.ViewRotation = System.Drawing.RotateFlipType.RotateNoneFlipNone
Me.GdViewer.Zoom = 1.0R
Me.GdViewer.ZoomCenterAtMousePosition = False
Me.GdViewer.ZoomMode = GdPicture14.ViewerZoomMode.ZoomMode100
Me.GdViewer.ZoomStep = 25
'
'DocumentViewer
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)

View File

@@ -123,9 +123,6 @@
<metadata name="BarManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>285, 22</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>25</value>
</metadata>
<assembly alias="DevExpress.Data.v21.2" name="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="buttonPrint.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
@@ -222,6 +219,9 @@
OCw4TDE2LDI0eiIgY2xhc3M9IkdyZWVuIiAvPg0KICA8L2c+DQo8L3N2Zz4L
</value>
</data>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>25</value>
</metadata>
<data name="btnSearch.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40

View File

@@ -596,111 +596,9 @@ Public Class DocumentViewer
Return False
End Try
End Function
Private Function DoLoadFile(FilePath As String) As Boolean
Try
' Ensure the embedded GdViewer control exists before using it
If Not EnsureViewerReady() Then
_logger?.Warn("GdViewer control is not initialized yet. Delaying load.")
Return False
End If
lblInfo.Visible = False
Dim oFileInfo = New FileInfo(FilePath)
Dim oExtension As String = oFileInfo.Extension.ToUpper
lbFileNotLoaded.Visible = False
SpreadsheetControl1.Visible = False
RichEditControl1.Visible = False
SpreadsheetControl1.Dock = DockStyle.None
RichEditControl1.Dock = DockStyle.None
Dim Override_SSheet_Filesize As Boolean = False
If oExtension.ToLower = ".xlsx" Then
If oFileInfo.Length > 100000 Then
_logger.Info("Override Spreadsheet as xlsx is too big")
Override_SSheet_Filesize = True
End If
End If
If Override_SSheet_Filesize Then
Dim oFormat = GetSpreadsheetFormat(oExtension)
SpreadsheetControl1.LoadDocument(FilePath, oFormat)
Dim oRange = SpreadsheetControl1.ActiveWorksheet.GetUsedRange()
oRange.AutoFitColumns()
If ViewOverride = "Richtext" Then
RichEditControl1.LoadDocument(FilePath, GetDocumentFormat(oExtension))
RichEditControl1.Visible = True
GdViewer.Visible = False
RichEditControl1.Dock = DockStyle.Fill
_ViewOverride = "Richtext"
_ViewerMode = ViewerMode.Richtext
lblInfo.Visible = True
lblInfo.Text = "This docx-file contains a generic error and will be displayed in a reduced viewer. Please try to open the file in WORD"
Else
_ViewOverride = ""
Select Case oExtension.ToUpper
Case ".CSV"
Dim oFormat = GetSpreadsheetFormat(oExtension)
SpreadsheetControl1.LoadDocument(FilePath, oFormat)
Dim oRange = SpreadsheetControl1.ActiveWorksheet.GetUsedRange()
oRange.AutoFitColumns()
SpreadsheetControl1.Visible = True
GdViewer.Visible = False
SpreadsheetControl1.Dock = DockStyle.Fill
Case ".EML", ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
RichEditControl1.LoadDocument(FilePath, GetDocumentFormat(oExtension))
RichEditControl1.Visible = True
GdViewer.Visible = False
RichEditControl1.Dock = DockStyle.Fill
Case Else
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
GdViewer.ForceTemporaryMode = True
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
If Viewer_ForceTemporaryMode = True Then
GdViewer.ForceTemporaryMode = True
End If
GdViewer.AnnotationDropShadow = True
GdViewer.BackColor = Color.White
Dim oGDPState As GdPicture14.GdPictureStatus = GdViewer.DisplayFromFile(FilePath)
If oGDPState <> GdPictureStatus.OK Then
_logger.Warn($"GdPictureStatus is [{oGDPState}]")
If oExtension.ToUpper = ".DOCX" And oGDPState = GdPictureStatus.GenericError Then
DoLoadFile(FilePath, "Richtext")
Else
Dim oFileName = IO.Path.GetFileName(FilePath)
lbFileNotLoaded.Text = String.Format("Datei konnte nicht geladen werden:{0}{1}", vbCrLf, oFileName)
lbFileNotLoaded.Visible = True
End If
Else
If GdViewer.Visible = False Then
GdViewer.Visible = True
End If
End If
End Select
Return True
Catch ex As Exception
_logger.Error(ex)
Return False
End Try
End Function
' Ensures the embedded GdViewer control exists and is added to the visual tree
Private Function EnsureViewerReady() As Boolean
Try
' If the control field is Nothing (e.g., designer not yet created), try to lazy-create and add it
If GdViewer Is Nothing Then
Private Function EnsureViewerReady() As Boolean
Try
' If the control field is Nothing (e.g., designer not yet created), try to lazy-create and add it

View File

@@ -265,9 +265,7 @@
<Compile Include="DocumentViewer.Designer.vb">
<DependentUpon>DocumentViewer.vb</DependentUpon>
</Compile>
<Compile Include="DocumentViewer.vb">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="DocumentViewer.vb" />
<Compile Include="frmViewerSettings.Designer.vb">
<DependentUpon>frmViewerSettings.vb</DependentUpon>
</Compile>

View File

@@ -1,7 +1,6 @@
Imports System.ComponentModel
Imports System.Drawing.Design
Imports System.Windows.Forms.Design
Imports DigitalData.Modules.Language
Public Class RegexEditor
Inherits UITypeEditor
@@ -12,7 +11,7 @@ Public Class RegexEditor
Public Overrides Function EditValue(context As ITypeDescriptorContext, provider As IServiceProvider, value As Object) As Object
Dim oService As IWindowsFormsEditorService = TryCast(provider.GetService(GetType(IWindowsFormsEditorService)), IWindowsFormsEditorService)
Dim oRegexString As String = Utils.NotNull(value, String.Empty)
Dim oRegexString As String = If(value IsNot Nothing, value.ToString(), String.Empty)
If oService IsNot Nothing Then
Using oform As New frmRegexEditor(oRegexString)

View File

@@ -12,7 +12,7 @@
<AssemblyName>DigitalData.Controls.RegexEditor</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<TargetFrameworkProfile />
</PropertyGroup>
@@ -60,12 +60,8 @@
<Reference Include="DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="DigitalData.Modules.Language, Version=1.6.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Digital Data\DigitalData.Modules.Language.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="System" />

View File

@@ -50,10 +50,10 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="DigitalData.Modules.Database">
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

@@ -66,31 +66,31 @@
</Reference>
<Reference Include="DigitalData.Modules.Base, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
<HintPath>..\..\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.EDMI.API, Version=0.0.0.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath>
<HintPath>..\..\DDModules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Patterns, Version=1.1.0.1, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
<HintPath>..\..\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Windows, Version=1.4.4.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Windows\bin\Debug\DigitalData.Modules.Windows.dll</HintPath>
<HintPath>..\..\DDModules\Windows\bin\Debug\DigitalData.Modules.Windows.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.ZooFlow, Version=1.2.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Patterns\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath>
<HintPath>..\..\DDModules\ZooFlow\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

@@ -53,19 +53,19 @@ Public Class frmMatch
DATA_ONLY = 2
End Enum
Public Sub New(LogConfig As LogConfig, Environment As Environment, Params As ClipboardWatcherParams)
Public Sub New(pLogConfig As LogConfig, pEnvironment As Environment, pParams As ClipboardWatcherParams)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
_Environment = Environment
_Params = Params
_LogConfig = pLogConfig
_Logger = pLogConfig.GetLogger()
_Environment = pEnvironment
_Params = pParams
_ProfileSearch = New ProfileSearches(_LogConfig, _Environment, _Params.ClipboardContents)
_Logger.Debug("ClipboardContents: [{0}]", Params.ClipboardContents)
_Logger.Debug("OperationModeOverride: [{0}]", Params.OperationModeOverride.ToString)
_Logger.Debug("ClipboardContents: [{0}]", pParams.ClipboardContents)
_Logger.Debug("OperationModeOverride: [{0}]", pParams.OperationModeOverride.ToString)
_Language = ObjectEx.NotNull(_Environment.User.Language, State.UserState.LANG_EN_US)
Thread.CurrentThread.CurrentUICulture = New CultureInfo(_Language)

View File

@@ -71,7 +71,10 @@
</Reference>
<Reference Include="DevExpress.XtraTreeList.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DigitalData.Controls.DocumentViewer">
<HintPath>..\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath>
<HintPath>..\..\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Controls.LookupGrid">
<HintPath>..\Controls.LookupGrid\bin\Debug\DigitalData.Controls.LookupGrid.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Base">
<HintPath>..\..\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
@@ -84,7 +87,8 @@
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.EDMI.API">
<Reference Include="DigitalData.Modules.EDMI.API, Version=1.6.1.1, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\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">
@@ -132,68 +136,68 @@
<Reference Include="FirebirdSql.Data.FirebirdClient, Version=7.5.0.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c, processorArchitecture=MSIL">
<HintPath>..\packages\FirebirdSql.Data.FirebirdClient.7.5.0\lib\net452\FirebirdSql.Data.FirebirdClient.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.dll</HintPath>
<Reference Include="GdPicture.NET.14, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
@@ -209,12 +213,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.Settings, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\NativeSDK.Settings.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings.Edition, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\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>
@@ -537,12 +535,6 @@
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Controls.LookupGrid\LookupControl.vbproj">
<Project>{3DCD6D1A-C830-4241-B7E4-27430E7EA483}</Project>
<Name>LookupControl</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
<None Include="Resources\txt.png" />
@@ -827,8 +819,8 @@
</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.19\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.3.19\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.19\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.3.19\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')" />
</Project>

View File

@@ -68,6 +68,7 @@ Partial Class frmDocumentResultList
Me.btnSaveWorkspaceAs = New DevExpress.XtraBars.BarButtonItem()
Me.btnSaveAsMySearch = New DevExpress.XtraBars.BarButtonItem()
Me.lblCurrentWorkspace = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItem6 = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPageStart = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup_Navigation = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroupExport = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
@@ -221,9 +222,9 @@ Partial Class frmDocumentResultList
Me.RibbonControl.ColorScheme = DevExpress.XtraBars.Ribbon.RibbonControlColorScheme.Green
Me.RibbonControl.ExpandCollapseItem.Id = 0
Me.RibbonControl.Images = Me.SvgImageCollection1
Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, Me.SwitchMainContainerHorizontal, Me.SwitchDetailContainerHorizontal, Me.BarButtonItemExportGrid1, Me.BarStaticItem1, Me.labelResultCount, Me.BarButtonBack, Me.BarButtonResetGridLayout, Me.labelCriticalError, Me.labelWarning, Me.MenuItemFileOpen, Me.MenuItemPropertiesIDB, Me.MenuItemFolderOpen, Me.MenuItemFilepathCopy, Me.MenuItemFolderpathCopy, Me.MenuItemProperties, Me.MenuItemsOpenFileZooFlow, Me.MenuItemPropertiesZooFlow, Me.ButtonRefresh, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3, Me.BarButtonItem4, Me.BarButtonItem5, Me.MenuItemStartAdhocWorkflow, Me.MenuItemCheckInFile, Me.MenuItemCheckOutFile, Me.MenuItemVersionFile, Me.chkGridShowQuickfilter, Me.chkGridShowGrouping, Me.chkGridShowTitle, Me.MenuItemSaveProperties, Me.BarButtonItem11, Me.BarEditItemGridFontSize, Me.btnSaveWorkspace, Me.BarWorkspaceMenuItem1, Me.btnSaveWorkspaceAs, Me.btnSaveAsMySearch, Me.lblCurrentWorkspace})
Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, Me.SwitchMainContainerHorizontal, Me.SwitchDetailContainerHorizontal, Me.BarButtonItemExportGrid1, Me.BarStaticItem1, Me.labelResultCount, Me.BarButtonBack, Me.BarButtonResetGridLayout, Me.labelCriticalError, Me.labelWarning, Me.MenuItemFileOpen, Me.MenuItemPropertiesIDB, Me.MenuItemFolderOpen, Me.MenuItemFilepathCopy, Me.MenuItemFolderpathCopy, Me.MenuItemProperties, Me.MenuItemsOpenFileZooFlow, Me.MenuItemPropertiesZooFlow, Me.ButtonRefresh, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3, Me.BarButtonItem4, Me.BarButtonItem5, Me.MenuItemStartAdhocWorkflow, Me.MenuItemCheckInFile, Me.MenuItemCheckOutFile, Me.MenuItemVersionFile, Me.chkGridShowQuickfilter, Me.chkGridShowGrouping, Me.chkGridShowTitle, Me.MenuItemSaveProperties, Me.BarButtonItem11, Me.BarEditItemGridFontSize, Me.btnSaveWorkspace, Me.BarWorkspaceMenuItem1, Me.btnSaveWorkspaceAs, Me.btnSaveAsMySearch, Me.lblCurrentWorkspace, Me.BarButtonItem6})
resources.ApplyResources(Me.RibbonControl, "RibbonControl")
Me.RibbonControl.MaxItemId = 61
Me.RibbonControl.MaxItemId = 62
Me.RibbonControl.Name = "RibbonControl"
Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPageStart, Me.RibbonPage2})
Me.RibbonControl.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2, Me.RepositoryItemSearchControl1, Me.cmbGridFontSize})
@@ -530,6 +531,13 @@ Partial Class frmDocumentResultList
Me.lblCurrentWorkspace.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
Me.lblCurrentWorkspace.Tag = "Arbeitsbereich: {0}"
'
'BarButtonItem6
'
resources.ApplyResources(Me.BarButtonItem6, "BarButtonItem6")
Me.BarButtonItem6.Id = 61
Me.BarButtonItem6.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem6.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem6.Name = "BarButtonItem6"
'
'RibbonPageStart
'
Me.RibbonPageStart.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup_Navigation, Me.RibbonPageGroupExport, Me.RibbonPageRefresh, Me.RibbonPageGroupDocument, Me.RibbonPageGroupFilesystem, Me.RibbonPageGroupCheckInOut, Me.RibbonPageGroupWorkflow, Me.RibbonPageGroupAttribute, Me.RibbonPageGroupWorkspace, Me.RibbonPageGroupSavedSearch})
@@ -547,6 +555,7 @@ Partial Class frmDocumentResultList
'
Me.RibbonPageGroupExport.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
Me.RibbonPageGroupExport.ItemLinks.Add(Me.BarButtonItemExportGrid1)
Me.RibbonPageGroupExport.ItemLinks.Add(Me.BarButtonItem6)
Me.RibbonPageGroupExport.Name = "RibbonPageGroupExport"
resources.ApplyResources(Me.RibbonPageGroupExport, "RibbonPageGroupExport")
'
@@ -744,6 +753,7 @@ Partial Class frmDocumentResultList
resources.ApplyResources(Me.DocumentViewer1, "DocumentViewer1")
Me.DocumentViewer1.FileLoaded = False
Me.DocumentViewer1.Name = "DocumentViewer1"
Me.DocumentViewer1.Viewer_ForceTemporaryMode = False
'
'XtraSaveFileDialog
'
@@ -877,7 +887,7 @@ Partial Class frmDocumentResultList
Me.LayoutControlItem1.Name = "LayoutControlItem1"
Me.LayoutControlItem1.Size = New System.Drawing.Size(224, 24)
resources.ApplyResources(Me.LayoutControlItem1, "LayoutControlItem1")
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(126, 13)
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(124, 13)
'
'LayoutControlItem2
'
@@ -886,7 +896,7 @@ Partial Class frmDocumentResultList
Me.LayoutControlItem2.Name = "LayoutControlItem2"
Me.LayoutControlItem2.Size = New System.Drawing.Size(224, 24)
resources.ApplyResources(Me.LayoutControlItem2, "LayoutControlItem2")
Me.LayoutControlItem2.TextSize = New System.Drawing.Size(126, 13)
Me.LayoutControlItem2.TextSize = New System.Drawing.Size(124, 13)
'
'EmptySpaceItem1
'
@@ -917,9 +927,9 @@ Partial Class frmDocumentResultList
Me.AllowFormGlass = DevExpress.Utils.DefaultBoolean.[True]
resources.ApplyResources(Me, "$this")
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.Controls.Add(Me.DockPanelFileList)
Me.Controls.Add(Me.DockPanelPreview)
Me.Controls.Add(Me.panelContainerStatus)
Me.Controls.Add(Me.DockPanelFileList)
Me.Controls.Add(Me.RibbonStatusBar)
Me.Controls.Add(Me.RibbonControl)
Me.IconOptions.Icon = CType(resources.GetObject("frmDocumentResultList.IconOptions.Icon"), System.Drawing.Icon)
@@ -1070,4 +1080,5 @@ Partial Class frmDocumentResultList
Friend WithEvents btnSaveAsMySearch As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroupSavedSearch As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents lblCurrentWorkspace As DevExpress.XtraBars.BarStaticItem
Friend WithEvents BarButtonItem6 As DevExpress.XtraBars.BarButtonItem
End Class

View File

@@ -230,29 +230,28 @@
<data name="BarButtonBack.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAPdEVYdFRpdGxlAEJhY2s7UHJldj1cl8kAAAEJSURB
VDhPpZOhCgJBEIava7IICmIx+AZyRdM1X0EQfI8Ds3a70Re4ahKTb2BTsIhR0/p/x57MHmsQwwe788/8
tzO7l0yXRZ1MrMVBPDysiaEF+XbTFyuxF7kYi5aHNTE0csgNDAhsxUYMnHNJDDSfQ25pUhngitCIFVrI
8bnUlAb0xdGCL2vfFkfhxFPMjcZJqMnYMJy8VjwUZ0HxRYys7nOYyZoFEx4bYSLugmK0ji00eQz2wIJr
avngTLwExVGMAbfziBnQb7QYYgb1FlJxExQwxG6lWRT/tBAbYk+cBCZXkVrd53yG+O0am2InMKGthdGC
a4S/HhL8/ZQrE1w52s8/k+WH37lI3sUnQlO0bha7AAAAAElFTkSuQmCC
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAPdEVYdFRpdGxlAEJhY2s7UHJldj1cl8kAAAESSURB
VDhPpVMxSkNREPx9rNIEFMQmRW4gNkmVbq4gCN4jMHXSp7f0AtNahVS5QToFG0mp1ZcJm/D+5iloioH9
uzPzd/e914BqEqagFqBWoHYBx8651uGXHzeg5qBeQM1AjUH1A46dc80cczsGTjyBWoIatm3b1OBacMzd
mxwM7OpCL4syzAmuNXsDz+XWOn8GNQC1BtWC+gT1kDqxZuoPL2eWxCNQ2xC/grqtdOKdLBx4w+OiMAH1
EWLXLrM4eF7syoGPqR/Je1BfIa6iMPDp7GoGnvdE+JtBHuEO1HsIvMSr3H4eobbEa1CbMHmzacXguMSf
jvEC1HOYeKzHotY5RuOsi2ScfZUPJv9+TCX+9Jy/AcUnQlOuZReWAAAAAElFTkSuQmCC
</value>
</data>
<data name="BarButtonBack.ImageOptions.LargeImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAPdEVYdFRpdGxlAEJhY2s7UHJldj1cl8kAAAJwSURB
VFhHxZe/Sh1BFMZNJbeUKIhgZ5fOMp2teBsRkaRIlZA0AZ9AsRZrX8E3EO59A9H8gRAIBOxSpAkEIoaY
zfdb5pO54+ze8Rrd4ifuOd85c3b3zJm9U1VVdUr9p793XMKC2BIHYijOxUWA/7HhQ4M2l2OE0gKeiF3x
QVSFoCWG2FzOmnEFPBKvxakg6V8xEDtiTSyJXoD/seFDg5YYYslBrhtrtBUwL/aF7+hIrKMtAW2IcTy5
yDmyDloHxCA8FAR+FdtiOl6gBGJCLDnIRc6RItBZbHhUvvN3YiNOOgnkCLn8JK5fB36LDO/Ld37nxQ25
Qk5ys0a2ADrWDbcdJ0iRvy8ug9Z8EYs5PcjH60DHGvXuwG4nsG0Q0DyN71w+Gixd/LNYyOmN/PSEG5O1
arudDA72Ltunsdvl2xS/Rbz4JzGf06dIR/GswVp1wXYwvUg2iANi5Hsm/gSdIdFcTt+E9MwJYre4tpER
inEnFhvZX4h08TPxOKdvQzEMK+IPuLaROY5xLRYH30txFfzmRMyk2hIUx8Qkx5BrGzlMMC4l4jfCY3Vi
kpyMbeznXNvIiYaxFwnfijsvDs4Z8nJ2YL/guq2AVyJ99BPhnCFvtoCmV/BcpM13a5Kc2VfQ1oS5wTPR
DgDFZZtw3DZcFb+CxnDA/LdtWDKIVsTPoIuLmM3pm5A+O4hKR/FT8UPERbwXRdNQusZRDKWH0bL4HrTF
RcjfehjBbY5jtN+C1nwUjUXIN/Y4hk4/SKDzTzLo9KPUIPSTAJrnwT7LDY+K9+XGZPs82A+TGDqWbcPe
9R2NAy0xdbc3UVqAub8fp91RTf0DZ0rWioS6adsAAAAASUVORK5CYII=
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAPdEVYdFRpdGxlAEJhY2s7UHJldj1cl8kAAAJHSURB
VFhHxZe9ihVBEIXXSDYUFUQw28zM0MxU9iQismhgpGgi7BOsVLxs7Cv4BgW7byD+ggiCsJmBiSC4KOqV
79K1zJY9Mz1XZYJzuVNddepMd3V1z9pisVibE8sfmbfgosy3ZL4n8wOZH8r8qID/2BjDB98c/wdaBVyW
+WOZv5b5ohH4EkNs5msWcErmD2T+vJD+kvm+zHdkvinzDZmvF/AfG2P44EsMsXDAlfkHBVyQ+W7njZ7K
/EZevz7gW2IiHi44mwTg+KQEfpD5tsxP5yRjIKbEwgEXnCdE1AQwVfHmL2V+MxNPBRyFK2bieDkYD6cA
6xVv/tfJA0VEzAQ5qgKo2Ci47UySCCXzb6ny38v8UvbtxLAcUZjL3ZEFsG2i4HrXvBRYTv6OvZ99Uxw1
EYVJrhMCaBzsXbZPb7XL/JbMv6fkbymu7FtDEU8Oci0FxwDdC7L9HNQJvi3zHyk5ROez7xBKnyB2i+cw
0kIx7uSAMn63kvyFzM9m3zGUZkX8Hs9hpI9j3KwE3JP5z5T8mczPZN8WlI4JxwHPYeQwwbiRnB922urK
SJy0beyHXQGcaBjXO46P/kVykARwdmA/GhNwvzL1K6FFQN8S3KkU32QkzuoSDBVhrfGstAMKX7UIx7bh
dZl/TSI4YCaL6NuGLY3omsy/VEScy75D6GtEra34qsw/JxGvWrvhUCsGrYfRFZl/mipi7DACU45jfD8m
EW+GRLQcx2DWCwmY/UoGZr2UdkXMdi0PzPph0sVsn2YZ/+/jdE78BmdK1op4DTduAAAAAElFTkSuQmCC
</value>
</data>
<data name="BarButtonResetGridLayout.Caption" xml:space="preserve">
@@ -506,6 +505,48 @@
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1189, 671</value>
</data>
<data name="DockPanel2_Container.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 46</value>
</data>
<data name="DockPanel2_Container.Size" type="System.Drawing.Size, System.Drawing">
<value>583, 442</value>
</data>
<data name="DockPanel2_Container.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;DockPanel2_Container.Name" xml:space="preserve">
<value>DockPanel2_Container</value>
</data>
<data name="&gt;&gt;DockPanel2_Container.Type" xml:space="preserve">
<value>DevExpress.XtraBars.Docking.ControlContainer, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;DockPanel2_Container.Parent" xml:space="preserve">
<value>DockPanelFileList</value>
</data>
<data name="&gt;&gt;DockPanel2_Container.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="DockPanelFileList.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 158</value>
</data>
<data name="DockPanelFileList.Size" type="System.Drawing.Size, System.Drawing">
<value>590, 491</value>
</data>
<data name="DockPanelFileList.Text" xml:space="preserve">
<value>Ergebnisse</value>
</data>
<data name="&gt;&gt;DockPanelFileList.Name" xml:space="preserve">
<value>DockPanelFileList</value>
</data>
<data name="&gt;&gt;DockPanelFileList.Type" xml:space="preserve">
<value>DevExpress.XtraBars.Docking.DockPanel, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;DockPanelFileList.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;DockPanelFileList.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="DocumentViewer1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
@@ -522,7 +563,7 @@
<value>DocumentViewer1</value>
</data>
<data name="&gt;&gt;DocumentViewer1.Type" xml:space="preserve">
<value>DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=1.9.6.0, Culture=neutral, PublicKeyToken=null</value>
<value>DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=2.7.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;DocumentViewer1.Parent" xml:space="preserve">
<value>DockPanel1_Container</value>
@@ -570,7 +611,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;DockPanelPreview.ZOrder" xml:space="preserve">
<value>0</value>
<value>1</value>
</data>
<data name="CtrlObjectPropertyDialog.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
@@ -588,7 +629,7 @@
<value>CtrlObjectPropertyDialog</value>
</data>
<data name="&gt;&gt;CtrlObjectPropertyDialog.Type" xml:space="preserve">
<value>DigitalData.GUIs.Common.ctrlObjectPropertyDialog, DigitalData.GUIs.Common, Version=2.5.8.0, Culture=neutral, PublicKeyToken=null</value>
<value>DigitalData.GUIs.Common.ctrlObjectPropertyDialog, DigitalData.GUIs.Common, Version=2.7.2.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;CtrlObjectPropertyDialog.Parent" xml:space="preserve">
<value>DockPanel3_Container</value>
@@ -639,10 +680,10 @@
<value>0</value>
</data>
<data name="txtCheckedOutWho.Location" type="System.Drawing.Point, System.Drawing">
<value>162, 45</value>
<value>160, 45</value>
</data>
<data name="txtCheckedOutWho.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 20</value>
<value>84, 20</value>
</data>
<data name="txtCheckedOutWho.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
@@ -663,7 +704,7 @@
<value />
</data>
<data name="dateCheckedOutWhen.Location" type="System.Drawing.Point, System.Drawing">
<value>162, 69</value>
<value>160, 69</value>
</data>
<data name="dateCheckedOutWhen.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value>
@@ -672,7 +713,7 @@
<value>Combo</value>
</data>
<data name="dateCheckedOutWhen.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 20</value>
<value>84, 20</value>
</data>
<data name="dateCheckedOutWhen.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
@@ -786,48 +827,6 @@
<value>$this</value>
</data>
<data name="&gt;&gt;panelContainerStatus.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="DockPanel2_Container.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 46</value>
</data>
<data name="DockPanel2_Container.Size" type="System.Drawing.Size, System.Drawing">
<value>583, 442</value>
</data>
<data name="DockPanel2_Container.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;DockPanel2_Container.Name" xml:space="preserve">
<value>DockPanel2_Container</value>
</data>
<data name="&gt;&gt;DockPanel2_Container.Type" xml:space="preserve">
<value>DevExpress.XtraBars.Docking.ControlContainer, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;DockPanel2_Container.Parent" xml:space="preserve">
<value>DockPanelFileList</value>
</data>
<data name="&gt;&gt;DockPanel2_Container.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="DockPanelFileList.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 158</value>
</data>
<data name="DockPanelFileList.Size" type="System.Drawing.Size, System.Drawing">
<value>590, 491</value>
</data>
<data name="DockPanelFileList.Text" xml:space="preserve">
<value>Ergebnisse</value>
</data>
<data name="&gt;&gt;DockPanelFileList.Name" xml:space="preserve">
<value>DockPanelFileList</value>
</data>
<data name="&gt;&gt;DockPanelFileList.Type" xml:space="preserve">
<value>DevExpress.XtraBars.Docking.DockPanel, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;DockPanelFileList.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;DockPanelFileList.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="lblCurrentWorkspace.Caption" xml:space="preserve">
@@ -1192,6 +1191,12 @@
<data name="&gt;&gt;lblCurrentWorkspace.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarStaticItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;BarButtonItem6.Name" xml:space="preserve">
<value>BarButtonItem6</value>
</data>
<data name="&gt;&gt;BarButtonItem6.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;RibbonPageStart.Name" xml:space="preserve">
<value>RibbonPageStart</value>
</data>
@@ -1384,6 +1389,26 @@
<data name="btnSaveAsMySearch.Caption" xml:space="preserve">
<value>Als meine Suche speichern</value>
</data>
<data name="BarButtonItem6.Caption" xml:space="preserve">
<value>Export</value>
</data>
<data name="BarButtonItem6.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFMCAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
R3JlZW57ZmlsbDojMDM5QzIzO30KPC9zdHlsZT4NCiAgPGcgaWQ9IkV4cG9ydCI+DQogICAgPHBhdGgg
ZD0iTTEwLDEySDZWNmg0VjEyeiBNMjIsMTJ2NnY5YzAsMC42LTAuNCwxLTEsMUgxYy0wLjYsMC0xLTAu
NC0xLTFWN2MwLTAuNiwwLjQtMSwxLTFoM3Y4aDE0di0ySDIyeiBNMTgsMThINCAgIHY2aDE0VjE4eiIg
Y2xhc3M9IkJsYWNrIiAvPg0KICAgIDxwb2x5Z29uIHBvaW50cz0iMTYsMTAgMjQsMTAgMjQsMTQgMzIs
OCAyNCwyIDI0LDYgMTYsNiAgIiBjbGFzcz0iR3JlZW4iIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
</data>
<data name="RibbonControl.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>

View File

@@ -29,7 +29,7 @@ Public Class frmDocumentResultList
' Interface implementations
Private ReadOnly Property LogConfig As LogConfig Implements IBaseForm.LogConfig
Private ReadOnly Property Logger As Logger Implements IBaseForm.Logger
Private ReadOnly Property _Logger As Logger Implements IBaseForm._Logger
Public Property ShouldReturnToPreviousForm As Boolean = False Implements IResultForm.ShouldReturnToPreviousForm
' Helper Classes
@@ -50,6 +50,11 @@ Public Class frmDocumentResultList
Private ReadOnly Workspace As Workspace(Of Config)
Private WithEvents Watcher As Watcher
Private CopyWMFile2Temp As Boolean = False
Private WM_SUFFIX As String = "\\WINDREAM\OBJECTS"
Private MAP_SHAREDRIVE As String = ""
Private MAP_BLACKLIST As String = ""
' Runtime variables
Private Property ResultLists As List(Of DocumentResult)
@@ -79,6 +84,7 @@ Public Class frmDocumentResultList
Private Property GridList As List(Of GridControl)
Private Property ViewList As List(Of BandedGridView)
Private Property OperationMode As OperationMode Implements IResultForm.OperationMode
Private _documentPathHandler As DocumentPathHandler
Public ReadOnly Property Config1 As ConfigManager(Of Config)
Get
@@ -112,12 +118,13 @@ Public Class frmDocumentResultList
ResultLists = pParams.Results
LogConfig = pLogConfig
Logger = pLogConfig.GetLogger()
_Logger = pLogConfig.GetLogger()
FormHelper = New FormHelper(pLogConfig, Me)
_documentPathHandler = New DocumentPathHandler(pLogConfig)
UserLanguage = ObjectEx.NotNull(Environment.User.Language, State.UserState.LANG_EN_US)
LanguageEx.LogApplicationLanguage(Logger)
LanguageEx.SetApplicationLanguage(Logger, UserLanguage)
LanguageEx.LogApplicationLanguage(_Logger)
LanguageEx.SetApplicationLanguage(_Logger, UserLanguage)
Config = New ConfigManager(Of Config)(pLogConfig, oConfigPath, oConfigPath)
Helpers = New DocumentResultList.Helpers(pLogConfig)
@@ -126,7 +133,6 @@ Public Class frmDocumentResultList
FileEx = New Modules.Windows.File(pLogConfig)
LayoutManager = New Layout(pLogConfig, Config, New List(Of GridView) From {GridView1, GridView2, GridView3}, pEnvironment)
Workspace = New Workspace(Of Config)(pLogConfig, Config, WorkspaceManager1, UserLanguage)
End Sub
Private Function GetOperationMode() As OperationMode
@@ -139,18 +145,18 @@ Public Class frmDocumentResultList
oOperationMode = OperationMode.NoAppServer
End If
Logger.Debug("OperationMode set to [{0}]", oOperationMode)
_Logger.Debug("OperationMode set to [{0}]", oOperationMode)
If Params.OperationModeOverride <> OperationMode.None Then
Logger.Debug("Overriding OperationMode with [{0}]", Params.OperationModeOverride)
_Logger.Debug("Overriding OperationMode with [{0}]", Params.OperationModeOverride)
oOperationMode = Params.OperationModeOverride
End If
Logger.Debug("OperationMode is now [{0}]", oOperationMode)
_Logger.Debug("OperationMode is now [{0}]", oOperationMode)
Catch ex As Exception
Logger.Error(ex)
Logger.Warn("Error while determining OperationMode. Setting to [{0}]", oOperationMode)
_Logger.Error(ex)
_Logger.Warn("Error while determining OperationMode. Setting to [{0}]", oOperationMode)
End Try
Return oOperationMode
@@ -166,7 +172,7 @@ Public Class frmDocumentResultList
End If
LanguageEx.LogApplicationLanguage(Logger)
LanguageEx.LogApplicationLanguage(_Logger)
Documentloader = New Loader(LogConfig, OperationMode, EDMI_API_Client, Environment.User)
@@ -263,7 +269,8 @@ Public Class frmDocumentResultList
' This loads the default workspace, for now
Workspace.LoadWorkspace(Config.Config.SelectedWorkspace)
' Selektion zuverlässig setzen
SelectFirstRowInGrid1()
' This needs to done be after loading the grid
' so we can set the row handle and start loading the (only) file
@@ -298,7 +305,13 @@ Public Class frmDocumentResultList
End Try
End Sub
Private Sub SelectFirstRowInGrid1()
If GridView1.RowCount > 0 Then
GridView1.FocusedRowHandle = 0
Else
GridView1.FocusedRowHandle = GridControl.InvalidRowHandle
End If
End Sub
Private Sub Workspace_WorkspaceLoaded(sender As Object, e As String)
lblCurrentWorkspace.Caption = String.Format(lblCurrentWorkspace.Tag, e)
End Sub
@@ -316,8 +329,11 @@ Public Class frmDocumentResultList
End If
DocumentViewer1.Done()
If _documentPathHandler IsNot Nothing Then
_documentPathHandler.Cleanup()
End If
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
End Try
End Sub
@@ -341,19 +357,37 @@ Public Class frmDocumentResultList
End If
UpdateRibbonActions(oDocument)
If IsNothing(oDocument) Then
DocumentViewer1.CloseDocument()
FormHelper.ShowErrorMessage(New IOException("File could not be loaded!"), "GridView_FocusedRowChanged")
Exit Sub
End If
' Save reference to current document
_CurrentDocument = oDocument
' Load Document in Document Viewer
Dim oFileName = $"{oObjectId}.{oDocument.Extension}"
DocumentViewer1.LoadFile(oFileName, New MemoryStream(oDocument.Contents))
If IsNothing(oDocument) Then
DocumentViewer1.CloseDocument()
FormHelper.ShowErrorMessage(New IOException("File could not be loaded!"), "GridView_FocusedRowChanged")
Exit Sub
'If CopyWMFile2Temp = True Then
' _Logger.Debug("Loading document into viewer with path handler and copying WM file to temp. ObjectId: [{0}], Filename: [{1}], FullPath: [{2}]", oObjectId, oFileName, oFullPath)
' ' Optionen konfigurieren
' Dim options As New DocumentPathHandler.DocumentPathOptions With {
' .EnableMapping = True,
' .WMSuffix = WM_SUFFIX,
' .SpecificDrive = If(Len(MAP_SHAREDRIVE) = 1, MAP_SHAREDRIVE, ""),
' .DriveBlacklist = MAP_BLACKLIST,
' .CopyToTemp = True,
' .TempFolder = TEMP_DOCUMENT_FOLDER,
' .UnmapAfterCopy = True
' }
'Else
If Not IsNothing(oDocument.Contents) Then
_Logger.Debug("Loading document into viewer with MemoryStream handler (LoadFile_FromStream). ObjectId: [{0}], Filename: [{1}], FullPath: [{2}]", oObjectId, oFileName, oFullPath)
DocumentViewer1.LoadFile_FromStream(oFileName, New MemoryStream(oDocument.Contents))
Else
_Logger.Debug("Loading document into viewer from filepath (LoadFile_FromPath). ObjectId: [{0}], Filename: [{1}], FullPath: [{2}]", oObjectId, oFileName, oFullPath)
DocumentViewer1.LoadFile_FromPath(oFullPath)
End If
'End If
If OperationMode = OperationMode.ZooFlow Or OperationMode = OperationMode.WithAppServer Then
Await CtrlObjectPropertyDialog.LoadObject(oObjectId)
@@ -416,7 +450,7 @@ Public Class frmDocumentResultList
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return False
End Try
End Function
@@ -531,7 +565,7 @@ Public Class frmDocumentResultList
CheckoutManager = New CheckInOut(LogConfig, EDMI_API_Client)
If Not EDMI_API_Client.Connect() Then
Logger.Warn("Client could not connect to Service at [{0}]", Environment.Service.Address)
_Logger.Warn("Client could not connect to Service at [{0}]", Environment.Service.Address)
Return False
End If
@@ -562,13 +596,18 @@ Public Class frmDocumentResultList
UpdateTotalResults()
LoadGridDataAndLayout()
' After the new results are loaded, set the old row handle
' to trigger the row change events and load object properties
GridView1.FocusedRowHandle = oCurrentRowHandle
' Restore old selection only if still valid; otherwise select first row
If GridView1.IsValidRowHandle(oCurrentRowHandle) Then
GridView1.FocusedRowHandle = oCurrentRowHandle
ElseIf GridView1.RowCount > 0 Then
GridView1.FocusedRowHandle = 0
Else
GridView1.FocusedRowHandle = GridControl.InvalidRowHandle
End If
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
MessageBox.Show("Error while refreshing results:" & vbNewLine & vbNewLine & ex.Message, Text, MessageBoxButtons.OK, MessageBoxIcon.Error)
Return False
@@ -580,12 +619,12 @@ Public Class frmDocumentResultList
Private Sub LoadGridData(View As GridView, Result As DocumentResultList.DocumentResult)
If Result.Datatable.Columns.Contains(ColumnDocumentId) = False Then
Logger.Error($"Datatable is missing DocId Column [{ColumnDocumentId}] for search {Result.Title}!")
_Logger.Error($"Datatable is missing DocId Column [{ColumnDocumentId}] for search {Result.Title}!")
'Throw New ApplicationException($"Datatable is missing DocId Column [{ColumnDocumentId}] for search {Result.Title}!")
End If
If OperationMode = OperationMode.NoAppServer And Result.Datatable.Columns.Contains(ColumnFilepath) = False Then
Logger.Error($"Datatable is missing Filepath Column [{ColumnFilepath}] for search {Result.Title}!")
_Logger.Error($"Datatable is missing Filepath Column [{ColumnFilepath}] for search {Result.Title}!")
'Throw New ApplicationException($"Datatable is missing Filepath Column [{ColumnFilepath}] for search {Result.Title}!")
End If
@@ -781,9 +820,9 @@ Public Class frmDocumentResultList
GridView.BestFitColumns()
Catch ex As ApplicationException
MsgBox($"Error while loading grid data for search {Result.Title}: {vbNewLine}{vbNewLine}{ex.Message}", MsgBoxStyle.Critical, Text)
Logger.Error(ex)
_Logger.Error(ex)
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
End Try
End Sub
@@ -882,7 +921,7 @@ Public Class frmDocumentResultList
Await Watcher.OpenDocument(_CurrentDocument)
End If
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
End Try
End Sub
@@ -948,7 +987,7 @@ Public Class frmDocumentResultList
Try
Await Watcher.OpenDocument(_CurrentDocument)
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
End Try
End Sub
@@ -1056,7 +1095,7 @@ Public Class frmDocumentResultList
End If
End If
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
End Try
End Sub
@@ -1172,7 +1211,4 @@ Public Class frmDocumentResultList
End Sub
Private Sub GridView_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles GridView3.FocusedRowChanged, GridView2.FocusedRowChanged, GridView1.FocusedRowChanged
End Sub
End Class

View File

@@ -82,7 +82,7 @@ Public Class GridBuilder
ToList()
For Each oDateCol In oDateColumns
SetDateTimeColumn(oDateCol)
SetDateTimeColumn(oDateCol, "g")
Next
End Sub
@@ -96,19 +96,61 @@ Public Class GridBuilder
ToList()
For Each oDateCol In oDateColumns
SetDateTimeColumn(oDateCol)
SetDateTimeColumn(oDateCol, "g")
Next
End Sub
Private Sub SetDateTimeColumn(pColumn As GridColumn)
''' <summary>
''' Applies a proper datetime format string to all columns of the view.
''' </summary>
''' <remarks>The view's columns need to be loaded for this to work!</remarks>
Public Sub SetDateTimeColumns(pView As GridView, pFormatString As String)
If pView.Columns Is Nothing Then
Exit Sub
End If
Dim oDateColumns = pView.Columns.AsEnumerable.
Where(Function(column As GridColumn) column.ColumnType = GetType(Date)).
ToList()
For Each oDateCol In oDateColumns
SetDateTimeColumn(oDateCol, pFormatString)
Next
End Sub
Public Sub SetDateTimeColumns(pTreeList As TreeList, pFormatString As String)
If pTreeList.Columns Is Nothing Then
Exit Sub
End If
Dim oDateColumns = pTreeList.Columns.AsEnumerable.
Where(Function(column As TreeListColumn) column.ColumnType = GetType(Date)).
ToList()
For Each oDateCol In oDateColumns
SetDateTimeColumn(oDateCol, pFormatString)
Next
End Sub
Private Sub SetDateTimeColumn(pColumn As GridColumn, pFormatString As String)
If String.IsNullOrEmpty(pFormatString) Then
pFormatString = "g"
End If
pColumn.DisplayFormat.FormatType = FormatType.Custom
pColumn.DisplayFormat.FormatString = "g"
pColumn.DisplayFormat.FormatString = pFormatString
pColumn.DisplayFormat.Format = DateTimeFormatInfo.CurrentInfo
End Sub
Private Sub SetDateTimeColumn(pColumn As TreeListColumn)
Private Sub SetDateTimeColumn(pColumn As TreeListColumn, pFormatString As String)
If String.IsNullOrEmpty(pFormatString) Then
pFormatString = "g"
End If
pColumn.Format.FormatType = FormatType.Custom
pColumn.Format.FormatString = "g"
pColumn.Format.FormatString = pFormatString
pColumn.Format.Format = DateTimeFormatInfo.CurrentInfo
End Sub

View File

@@ -2,5 +2,5 @@
Public Interface IBaseForm
ReadOnly Property LogConfig As LogConfig
ReadOnly Property Logger As Logger
ReadOnly Property _Logger As Logger
End Interface

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.7.0.0")>
<Assembly: AssemblyFileVersion("2.7.0.0")>
<Assembly: AssemblyVersion("2.7.2.0")>
<Assembly: AssemblyFileVersion("2.7.2.0")>

View File

@@ -119,7 +119,7 @@ Public Class NNfrmNotification_Startup
RichEditControl1.Dock = Windows.Forms.DockStyle.Fill
Else
If IO.File.Exists(oMSG_STRING) Then
DocumentViewer1.LoadFile(oMSG_STRING)
DocumentViewer1.LoadFile_FromPath(oMSG_STRING)
DocumentViewer1.Visible = True
DocumentViewer1.Dock = Windows.Forms.DockStyle.Fill
Else

View File

@@ -12,7 +12,7 @@ Public Class ctrlObjectPropertyDialog
Implements IBaseForm
Private Property LogConfig As LogConfig Implements IBaseForm.LogConfig
Private Property Logger As Logger Implements IBaseForm.Logger
Private Property _Logger As Logger Implements IBaseForm._Logger
Private Property ControlManager As AttributeControls
Private Property GridBuilder As GridBuilder
Private Property Client As Client
@@ -38,7 +38,7 @@ Public Class ctrlObjectPropertyDialog
Public Sub Initialize(pLogConfig As LogConfig, pHostForm As Form, pClient As Client, pEnv As Environment)
LogConfig = pLogConfig
Logger = pLogConfig.GetLogger()
_Logger = pLogConfig.GetLogger()
HostForm = pHostForm
ControlManager = New AttributeControls(pLogConfig, pEnv, pClient)
Helper = New FormHelper(pLogConfig, pHostForm)
@@ -58,7 +58,7 @@ Public Class ctrlObjectPropertyDialog
Public Async Function SaveChanges() As Task(Of Boolean)
Try
For Each oChange As KeyValuePair(Of String, Object) In Changes
Logger.Info("Updating Attribute [{0}] with value [{1}]", oChange.Key, oChange.Value.ToString)
_Logger.Info("Updating Attribute [{0}] with value [{1}]", oChange.Key, oChange.Value.ToString)
Await Client.SetAttributeValueAsync(ObjectId, oChange.Key, oChange.Value, New Options.SetAttributeValueOptions With {
.Language = Environment.User.Language,
.Username = Environment.User.UserName
@@ -131,7 +131,7 @@ Public Class ctrlObjectPropertyDialog
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return False
Finally
Enabled = True
@@ -145,7 +145,7 @@ Public Class ctrlObjectPropertyDialog
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return False
End Try
End Function
@@ -156,7 +156,7 @@ Public Class ctrlObjectPropertyDialog
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return False
End Try
End Function
@@ -176,14 +176,14 @@ Public Class ctrlObjectPropertyDialog
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return False
End Try
End Function
Private Async Function GetBusinessEntitiesForObjectId(ObjectId As Long) As Task(Of List(Of Long))
Try
Dim oSQL = $"SELECT BE_ID FROM TBIDB_OBJECT_BE WHERE IDB_OBJ_ID = {ObjectId}"
Dim oSQL = $"SELECT BE_ID FROM TBIDB_OBJECT_BE WITH (NOLOCK) WHERE IDB_OBJ_ID = {ObjectId}"
Dim oResult = Await Client.GetDatatableFromIDBAsync(oSQL)
If oResult.OK = False Then
@@ -202,7 +202,7 @@ Public Class ctrlObjectPropertyDialog
Return oEntities
End If
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return New List(Of Long)
End Try
End Function
@@ -230,7 +230,7 @@ Public Class ctrlObjectPropertyDialog
End Function
Private Async Function GetPropertiesForObjectId(ObjectId As Long) As Task(Of DataTable)
Dim oSQL As String = $"SELECT * FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = {ObjectId}"
Dim oSQL As String = $"SELECT * FROM TBIDB_OBJECT WITH (NOLOCK) WHERE IDB_OBJ_ID = {ObjectId}"
Dim oResult = Await Client.GetDatatableFromIDBAsync(oSQL)
Return oResult.Table
@@ -246,7 +246,7 @@ Public Class ctrlObjectPropertyDialog
ControlManager.LoadControlsForAttributes(oAttributes, Root)
Await ControlManager.LoadControlValuesForAttributes(pObjectId, Root)
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
End Try
End Sub

View File

@@ -19,7 +19,7 @@ Public Class frmObjectPropertyDialog
Private Property FormHelper As FormHelper
Private ReadOnly Property LogConfig As LogConfig Implements IBaseForm.LogConfig
Private ReadOnly Property Logger As Logger Implements IBaseForm.Logger
Private ReadOnly Property _Logger As Logger Implements IBaseForm._Logger
Private ReadOnly Changes As New Dictionary(Of String, Object)
@@ -29,7 +29,7 @@ Public Class frmObjectPropertyDialog
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
LogConfig = pLogConfig
Logger = pLogConfig.GetLogger()
_Logger = pLogConfig.GetLogger()
Environment = pEnvironment
Client = pClient
ObjectId = pObjectId
@@ -75,7 +75,7 @@ Public Class frmObjectPropertyDialog
Private Async Function GetBusinessEntitiesForObjectId(ObjectId As Long) As Task(Of List(Of Long))
Try
Dim oSQL = $"SELECT BE_ID FROM TBIDB_OBJECT_BE WHERE IDB_OBJ_ID = {ObjectId}"
Dim oSQL = $"SELECT BE_ID FROM TBIDB_OBJECT_BE WITH (NOLOCK) WHERE IDB_OBJ_ID = {ObjectId}"
Dim oResult = Await Client.GetDatatableFromIDBAsync(oSQL)
If oResult.OK = False Then
@@ -94,7 +94,7 @@ Public Class frmObjectPropertyDialog
Return oEntities
End If
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return New List(Of Long)
End Try
End Function
@@ -122,7 +122,7 @@ Public Class frmObjectPropertyDialog
End Function
Private Async Function GetPropertiesForObjectId(ObjectId As Long) As Task(Of DataTable)
Dim oSQL As String = $"SELECT * FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = {ObjectId}"
Dim oSQL As String = $"SELECT * FROM TBIDB_OBJECT WITH (NOLOCK) WHERE IDB_OBJ_ID = {ObjectId}"
Dim oResult = Await Client.GetDatatableFromIDBAsync(oSQL)
Return oResult.Table
@@ -136,7 +136,7 @@ Public Class frmObjectPropertyDialog
Dim oEntityId As Long
If Long.TryParse(cmbBusinessEntity.EditValue, oEntityId) = False Then
_Logger.Warn("Could not Parse Entity from cmbBusinessEntity")
__Logger.Warn("Could not Parse Entity from cmbBusinessEntity")
Exit Sub
End If
@@ -149,7 +149,7 @@ Public Class frmObjectPropertyDialog
ControlManager.LoadControlsForAttributes(oAttributes, AttributeLayout)
Await ControlManager.LoadControlValuesForAttributes(ObjectId, AttributeLayout)
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
End Try
End Sub
@@ -173,7 +173,7 @@ Public Class frmObjectPropertyDialog
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return False
End Try
End Function
@@ -184,7 +184,7 @@ Public Class frmObjectPropertyDialog
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return False
End Try
End Function
@@ -204,7 +204,7 @@ Public Class frmObjectPropertyDialog
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return False
End Try
End Function
@@ -212,7 +212,7 @@ Public Class frmObjectPropertyDialog
Private Async Sub btnSave_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnSave.ItemClick
Try
For Each oChange As KeyValuePair(Of String, Object) In Changes
Logger.Info("Updating Attribute [{0}] with value [{1}]", oChange.Key, oChange.Value.ToString)
_Logger.Info("Updating Attribute [{0}] with value [{1}]", oChange.Key, oChange.Value.ToString)
Await Client.SetAttributeValueAsync(ObjectId, oChange.Key, oChange.Value, New Options.SetAttributeValueOptions With {
.Language = Environment.User.Language,

View File

@@ -172,7 +172,7 @@ Public Class frmSQLEditor
Private Function LoadConnections() As GalleryItemGroup
Try
Dim oSql = "SELECT GUID, Bezeichnung FROM TBDD_CONNECTION WHERE AKTIV = 1"
Dim oSql = "SELECT GUID, Bezeichnung FROM TBDD_CONNECTION WITH (NOLOCK) WHERE AKTIV = 1"
Dim oTable = Database.GetDatatable(oSql)
Dim oConnections = New List(Of Connection)

View File

@@ -112,7 +112,7 @@ Public Class frmNotification_Startup
RichEditControl1.Dock = Windows.Forms.DockStyle.Fill
Else
If IO.File.Exists(oMSG_STRING) Then
DocumentViewer1.LoadFile(oMSG_STRING)
DocumentViewer1.LoadFile_FromPath(oMSG_STRING)
DocumentViewer1.Visible = True
DocumentViewer1.Dock = Windows.Forms.DockStyle.Fill
Else

View File

@@ -6,8 +6,8 @@
<package id="EntityFramework" version="6.4.4" targetFramework="net462" />
<package id="EntityFramework.Firebird" version="6.4.0" targetFramework="net462" />
<package id="FirebirdSql.Data.FirebirdClient" version="7.5.0" targetFramework="net462" />
<package id="GdPicture" version="14.3.19" targetFramework="net462" />
<package id="GdPicture.runtimes.windows" version="14.3.19" targetFramework="net462" />
<package id="GdPicture" version="14.3.3" targetFramework="net462" />
<package id="GdPicture.runtimes.windows" version="14.3.3" targetFramework="net462" />
<package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net462" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="9.0.0" targetFramework="net462" />
<package id="Microsoft.Bcl.Cryptography" version="9.0.0" targetFramework="net462" />

View File

@@ -60,7 +60,7 @@
<Reference Include="DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

@@ -49,19 +49,19 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="DigitalData.Modules.Config">
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
<HintPath>..\..\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database">
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Interfaces">
<HintPath>..\..\Modules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
<HintPath>..\..\DDModules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Jobs">
<HintPath>..\..\Modules\Jobs\bin\Debug\DigitalData.Modules.Jobs.dll</HintPath>
<HintPath>..\..\DDModules\Jobs\bin\Debug\DigitalData.Modules.Jobs.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

@@ -54,6 +54,46 @@
<assemblyIdentity name="FirebirdSql.Data.FirebirdClient" publicKeyToken="3750abcc3150b00c" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.5.0.0" newVersion="7.5.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="NLog" publicKeyToken="5120e14c03d0593c" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.1.0" newVersion="6.0.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.4.0" newVersion="4.0.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.5.0" newVersion="4.1.5.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Security.Cryptography.Pkcs" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.0.0.1" newVersion="8.0.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Packaging" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.0.0.1" newVersion="8.0.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Text.Json" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.0.0.5" newVersion="8.0.0.5" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

View File

@@ -14,6 +14,8 @@
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
@@ -48,6 +50,9 @@
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<ItemGroup>
<Reference Include="BouncyCastle.Cryptography, Version=2.0.0.0, Culture=neutral, PublicKeyToken=072edcf4a5328938, processorArchitecture=MSIL">
<HintPath>..\packages\BouncyCastle.Cryptography.2.5.0\lib\net461\BouncyCastle.Cryptography.dll</HintPath>
</Reference>
<Reference Include="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Printing.v21.2.Core, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Sparkline.v21.2.Core, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
@@ -64,23 +69,120 @@
</Reference>
<Reference Include="DigitalData.Modules.EDMI.API, Version=1.5.4.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath>
<HintPath>..\..\DDModules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14">
<HintPath>D:\ProgramFiles\GdPicture.NET 14\Redist\GdPicture.NET (.NET Framework 4.5)\GdPicture.NET.14.dll</HintPath>
<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>
</Reference>
<Reference Include="DocumentFormat.OpenXml.Framework, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
<HintPath>..\packages\DocumentFormat.OpenXml.Framework.3.2.0\lib\net46\DocumentFormat.OpenXml.Framework.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
</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.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.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.3\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
</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.3\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Independentsoft.Msg">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\MSG .NET\Bin\22_11_19\Independentsoft.Msg.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<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>
<Reference Include="Newtonsoft.Json.Bson, Version=1.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.Bson.1.0.2\lib\net45\Newtonsoft.Json.Bson.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.10\lib\net45\NLog.dll</HintPath>
</Reference>
<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="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>
</Reference>
<Reference Include="protobuf-net.Core, Version=3.0.0.0, Culture=neutral, PublicKeyToken=257b51d87d2e4d67, processorArchitecture=MSIL">
<HintPath>..\packages\protobuf-net.Core.3.2.46\lib\net462\protobuf-net.Core.dll</HintPath>
</Reference>
<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="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>
</Reference>
<Reference Include="System.CodeDom, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.CodeDom.8.0.0\lib\net462\System.CodeDom.dll</HintPath>
</Reference>
<Reference Include="System.Collections.Immutable, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Collections.Immutable.8.0.0\lib\net462\System.Collections.Immutable.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
@@ -88,15 +190,49 @@
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.IO.Packaging, Version=8.0.0.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Packaging.8.0.1\lib\net462\System.IO.Packaging.dll</HintPath>
</Reference>
<Reference Include="System.Management" />
<Reference Include="System.Memory, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.6.0\lib\net462\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http.Formatting, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.6.0.0\lib\net45\System.Net.Http.Formatting.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.6.0\lib\net462\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.1.0\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Security" />
<Reference Include="System.Security.Cryptography.Pkcs, Version=8.0.0.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Cryptography.Pkcs.8.0.1\lib\net462\System.Security.Cryptography.Pkcs.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel" />
<Reference Include="System.Text.Encodings.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Encodings.Web.8.0.0\lib\net462\System.Text.Encodings.Web.dll</HintPath>
</Reference>
<Reference Include="System.Text.Json, Version=8.0.0.5, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Json.8.0.5\lib\net462\System.Text.Json.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Transactions" />
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
@@ -161,4 +297,11 @@
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.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')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<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>
</Project>

View File

@@ -1,4 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="BouncyCastle.Cryptography" version="2.5.0" targetFramework="net472" />
<package id="DocumentFormat.OpenXml" version="3.2.0" targetFramework="net472" />
<package id="DocumentFormat.OpenXml.Framework" version="3.2.0" targetFramework="net472" />
<package id="GdPicture" version="14.3.3" targetFramework="net472" />
<package id="GdPicture.runtimes.windows" version="14.3.3" targetFramework="net472" />
<package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net472" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="8.0.0" targetFramework="net472" />
<package id="Microsoft.CSharp" version="4.7.0" targetFramework="net472" />
<package id="Microsoft.VisualBasic" version="10.3.0" targetFramework="net472" />
<package id="Newtonsoft.Json" version="13.0.3" targetFramework="net472" />
<package id="Newtonsoft.Json.Bson" version="1.0.2" targetFramework="net472" />
<package id="NLog" version="4.7.10" targetFramework="net472" />
<package id="OpenMcdf" version="2.4.1" targetFramework="net472" />
<package id="protobuf-net" version="3.2.46" targetFramework="net472" />
<package id="protobuf-net.Core" version="3.2.46" targetFramework="net472" />
<package id="RtfPipe" version="2.0.7677.4303" targetFramework="net472" />
<package id="System.Buffers" version="4.6.0" targetFramework="net472" />
<package id="System.CodeDom" version="8.0.0" targetFramework="net472" />
<package id="System.Collections.Immutable" version="8.0.0" targetFramework="net472" />
<package id="System.IO.Packaging" version="8.0.1" targetFramework="net472" />
<package id="System.Management" version="8.0.0" targetFramework="net472" />
<package id="System.Memory" version="4.6.0" targetFramework="net472" />
<package id="System.Numerics.Vectors" version="4.6.0" targetFramework="net472" />
<package id="System.Runtime.CompilerServices.Unsafe" version="6.1.0" targetFramework="net472" />
<package id="System.Security.Cryptography.Pkcs" version="8.0.1" targetFramework="net472" />
<package id="System.Text.Encodings.Web" version="8.0.0" targetFramework="net472" />
<package id="System.Text.Json" version="8.0.5" targetFramework="net472" />
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net472" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net472" />
</packages>

View File

@@ -56,22 +56,22 @@
<Reference Include="DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DigitalData.Modules.Config, Version=1.1.4.1, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
<HintPath>..\..\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Interfaces, Version=1.7.1.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
<HintPath>..\..\DDModules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Patterns">
<HintPath>..\..\Modules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
<HintPath>..\..\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">

View File

@@ -11,10 +11,10 @@ Public Class frmObjectProperties
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
LogConfig = pLogConfig
Logger = pLogConfig.GetLogger()
_Logger = pLogConfig.GetLogger()
End Sub
Public ReadOnly Property LogConfig As LogConfig Implements IBaseForm.LogConfig
Public ReadOnly Property Logger As Logger Implements IBaseForm.Logger
Public ReadOnly Property _Logger As Logger Implements IBaseForm._Logger
End Class

View File

@@ -43,8 +43,7 @@ Partial Class Form1
GroupBox5 = New GroupBox()
btWriteBinary = New Button()
OpenFileDialog2 = New OpenFileDialog()
Button1 = New Button()
Button2 = New Button()
GroupBox1.SuspendLayout()
GroupBox2.SuspendLayout()
GroupBox3.SuspendLayout()
@@ -231,32 +230,14 @@ Partial Class Form1
'
OpenFileDialog2.FileName = "OpenFileDialog2"
OpenFileDialog2.Filter = "XML files (*.xml)|*.xml"
'
' Button1
'
Button1.Location = New System.Drawing.Point(361, 47)
Button1.Name = "Button1"
Button1.Size = New System.Drawing.Size(94, 29)
Button1.TabIndex = 5
Button1.Text = "Log Folder"
Button1.UseVisualStyleBackColor = True
'
' Button2
'
Button2.Location = New System.Drawing.Point(361, 82)
Button2.Name = "Button2"
Button2.Size = New System.Drawing.Size(94, 29)
Button2.TabIndex = 13
Button2.Text = "AppFolder"
Button2.UseVisualStyleBackColor = True
'
' Form1
'
AutoScaleDimensions = New System.Drawing.SizeF(8.0F, 20.0F)
AutoScaleMode = AutoScaleMode.Font
ClientSize = New System.Drawing.Size(879, 690)
Controls.Add(Button2)
Controls.Add(Button1)
Controls.Add(GroupBox5)
Controls.Add(GroupBox4)
Controls.Add(GroupBox3)

View File

@@ -414,11 +414,11 @@ Public Class Form1
End Function
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Process.Start("explorer.exe", _logConfig.LogDirectory)
End Sub
'Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
' Process.Start("explorer.exe", _logConfig.LogDirectory)
'End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Process.Start("explorer.exe", System.Windows.Forms.Application.UserAppDataPath())
End Sub
'Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
' Process.Start("explorer.exe", System.Windows.Forms.Application.UserAppDataPath())
'End Sub
End Class

View File

@@ -2,7 +2,7 @@
<PropertyGroup>
<RootNamespace>ZUGFeRDTest</RootNamespace>
<TargetFramework>net8.0-windows</TargetFramework>
<TargetFramework>net462</TargetFramework>
<OutputType>WinExe</OutputType>
<StartupObject>ZUGFeRDTest.My.MyApplication</StartupObject>
<MyType>WindowsForms</MyType>
@@ -17,15 +17,11 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="GdPicture" Version="14.3.18" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="6.1.1" />
<PackageReference Include="NLog" Version="6.0.4" />
<PackageReference Include="System.Data.SqlClient" Version="4.9.0" />
<PackageReference Include="GdPicture" Version="14.3.3" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="7.0.1" />
<PackageReference Include="NLog" Version="5.0.5" />
</ItemGroup>
<ItemGroup>
<Reference Include="BouncyCastle.Cryptography, Version=2.0.0.0, Culture=neutral, PublicKeyToken=072edcf4a5328938, processorArchitecture=MSIL">
<HintPath>..\packages\BouncyCastle.Cryptography.2.5.0\lib\net461\BouncyCastle.Cryptography.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Config">
<HintPath>..\..\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
@@ -41,160 +37,23 @@
<Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.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>
</Reference>
<Reference Include="DocumentFormat.OpenXml.Framework, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
<HintPath>..\packages\DocumentFormat.OpenXml.Framework.3.2.0\lib\net46\DocumentFormat.OpenXml.Framework.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NativeSDK.Settings, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\lib\net462\NativeSDK.Settings.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings.Edition, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.19\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>
<Reference Include="Newtonsoft.Json.Bson, Version=1.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.Bson.1.0.2\lib\net45\Newtonsoft.Json.Bson.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.5.1.0\lib\net46\NLog.dll</HintPath>
</Reference>
<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="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>
</Reference>
<Reference Include="protobuf-net.Core, Version=3.0.0.0, Culture=neutral, PublicKeyToken=257b51d87d2e4d67, processorArchitecture=MSIL">
<HintPath>..\packages\protobuf-net.Core.3.2.46\lib\net462\protobuf-net.Core.dll</HintPath>
</Reference>
<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="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>
</Reference>
<Reference Include="System.Collections.Immutable, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Collections.Immutable.8.0.0\lib\net462\System.Collections.Immutable.dll</HintPath>
</Reference>
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.IO.Packaging, Version=8.0.0.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Packaging.8.0.1\lib\net462\System.IO.Packaging.dll</HintPath>
</Reference>
<Reference Include="System.Management" />
<Reference Include="System.Memory, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.6.0\lib\net462\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http.Formatting, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.6.0.0\lib\net45\System.Net.Http.Formatting.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.6.0\lib\net462\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.1.0\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Security" />
<Reference Include="System.Security.Cryptography.Pkcs, Version=8.0.0.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Cryptography.Pkcs.8.0.1\lib\net462\System.Security.Cryptography.Pkcs.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel" />
<Reference Include="System.Text.Encodings.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Encodings.Web.8.0.0\lib\net462\System.Text.Encodings.Web.dll</HintPath>
</Reference>
<Reference Include="System.Text.Json, Version=8.0.0.6, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Json.8.0.6\lib\net462\System.Text.Json.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Transactions" />
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" />
<Reference Include="WindowsBase" />
</ItemGroup>
@@ -212,12 +71,4 @@
<Generator>SettingsSingleFileGenerator</Generator>
</None>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<Import Project="..\packages\GdPicture.runtimes.windows.14.3.19\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.3.19\build\net462\GdPicture.runtimes.windows.targets')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.3.19\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.3.19\build\net462\GdPicture.runtimes.windows.targets'))" />
</Target>
</Project>

View File

@@ -53,19 +53,19 @@
<ItemGroup>
<Reference Include="DigitalData.Modules.Config, Version=1.1.4.1, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
<HintPath>..\..\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Jobs, Version=1.8.6.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Jobs\bin\Debug\DigitalData.Modules.Jobs.dll</HintPath>
<HintPath>..\..\DDModules\Jobs\bin\Debug\DigitalData.Modules.Jobs.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="Microsoft.Extensions.Logging.Abstractions, Version=2.1.1.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">

View File

@@ -50,11 +50,11 @@
<ItemGroup>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

@@ -1,18 +1,21 @@
using System;
using System.IO;
using System.Linq;
using System.Collections.Generic;
using DigitalData.Modules.Interfaces;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using DigitalData.Modules.Interfaces;
using static DigitalData.Modules.Interfaces.Exceptions;
using static DigitalData.Modules.Interfaces.ZUGFeRDInterface;
using static DigitalData.Modules.Interfaces.PropertyValues;
using System.Data.SqlClient;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.Extensions.Configuration;
using System.Xml.Linq;
using Newtonsoft.Json.Linq;
using Microsoft.VisualStudio.Web.CodeGeneration.Contracts.Messaging;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Net.Http;
using System.Text.RegularExpressions;
using System.Xml.Linq;
using static DigitalData.Modules.Interfaces.Exceptions;
using static DigitalData.Modules.Interfaces.PropertyValues;
using static DigitalData.Modules.Interfaces.ZUGFeRDInterface;
namespace ZUGFeRDRESTService.Controllers
{
@@ -26,6 +29,37 @@ namespace ZUGFeRDRESTService.Controllers
public const string ADDED_WHO = "ZUGFeRD REST Service";
public const string MESSAGEID_DOMAIN = "test.wisag.de";
public const string VALIDATION_SUCCESS = "VALIDATION SUCCESS";
public const string REFERENCES_Rejection_30001 = "REFERENCES_Rejection_30001";
public const string REFERENCES_Rejection_30002 = "REFERENCES_Rejection_30002";
public const string REFERENCES_Rejection_30002_1 = "REFERENCES_Rejection_30002_1";
public const string REFERENCES_Rejection_30003_1 = "REFERENCES_Rejection_30003_1";
public const string REFERENCES_Rejection_30003_2 = "REFERENCES_Rejection_30003_2";
public const string REFERENCES_Rejection_30003_3 = "REFERENCES_Rejection_30003_3";
public const string REFERENCES_Rejection_30004_1 = "REFERENCES_Rejection_30004_1";
public const string REFERENCES_Rejection_30004_2 = "REFERENCES_Rejection_30004_2";
public const string REFERENCES_Rejection_30004_3 = "REFERENCES_Rejection_30004_3";
public const string REFERENCES_Rejection_30005_1 = "REFERENCES_Rejection_30005_1";
public const string REFERENCES_Rejection_30005_2 = "REFERENCES_Rejection_30005_2";
public const string REFERENCES_Rejection_30006 = "REFERENCES_Rejection_30006";
public const string REFERENCES_Rejection_30007 = "REFERENCES_Rejection_30007";
public const string REFERENCES_Rejection_30007_1 = "REFERENCES_Rejection_30007_1";
public const string REFERENCES_Rejection_30008 = "REFERENCES_Rejection_30008";
public const string REFERENCES_Rejection_30009 = "REFERENCES_Rejection_30009";
public const string REFERENCES_Rejection_30010 = "REFERENCES_Rejection_30010";
public const string REFERENCES_Rejection_30011 = "REFERENCES_Rejection_30011";
public const string REFERENCES_Rejection_30012 = "REFERENCES_Rejection_30012";
public const string AMOUNT_CALC_REJECTION = "AMOUNT_CALC_REJECTION";
public const string GERMAN = "de-DE";
public const string ENGLISH = "en-US";
public const string FRENCH = "fr-FR";
public const string SPAIN = "es-ES";
private List<string> _ValidationErrors;
private List<string> _AllowedLanguageCodes;
private string _UserLanguageCode = GERMAN;
private const int MAX_FILE_SIZE_DEFAULT = 25;
private readonly ZUGFeRDInterface _zugferd;
@@ -33,10 +67,9 @@ namespace ZUGFeRDRESTService.Controllers
private readonly DigitalData.Modules.Logging.LogConfig _logConfig;
private readonly DigitalData.Modules.Logging.Logger _logger;
private readonly DigitalData.Modules.Filesystem.File _file;
//private readonly DigitalData.Modules.Filesystem.File _file;
private readonly PropertyValues _props;
//private readonly Dictionary<string, XmlItemProperty> _propertyMap = new Dictionary<string, XmlItemProperty>();
private readonly List<XmlItemProperty> _propertyMapList = new List<XmlItemProperty>();
private readonly List<RejectionStringRow> _RecjectionMessageList = new List<RejectionStringRow>();
@@ -54,8 +87,6 @@ namespace ZUGFeRDRESTService.Controllers
{
_logConfig = logging.LogConfig;
_logger = _logConfig.GetLogger();
_file = new DigitalData.Modules.Filesystem.File(_logConfig);
_logger.Debug("Validation Controller initializing");
// Read config file and assign all option flags related to
@@ -82,7 +113,37 @@ namespace ZUGFeRDRESTService.Controllers
_logger.Debug("Property Map list initial: [{0}] entries found. [{1}] entries will be available.", oPropertyMapList.Count, _propertyMapList.Count);
_RecjectionMessageList = database.GetRejectionMessageList();
_ValidationErrors = new List<String>() {
REFERENCES_Rejection_30001,
REFERENCES_Rejection_30002,
REFERENCES_Rejection_30003_1,
REFERENCES_Rejection_30003_2,
REFERENCES_Rejection_30003_3,
REFERENCES_Rejection_30004_1,
REFERENCES_Rejection_30004_2,
REFERENCES_Rejection_30004_3,
REFERENCES_Rejection_30005_1,
REFERENCES_Rejection_30005_2,
REFERENCES_Rejection_30006,
REFERENCES_Rejection_30007,
REFERENCES_Rejection_30007_1,
REFERENCES_Rejection_30008,
REFERENCES_Rejection_30009,
REFERENCES_Rejection_30010,
REFERENCES_Rejection_30011,
REFERENCES_Rejection_30012,
AMOUNT_CALC_REJECTION
};
_AllowedLanguageCodes = new List<string>()
{
GERMAN,
ENGLISH,
FRENCH,
SPAIN,
};
_logger.Debug("Validation Controller initialized!");
}
@@ -146,14 +207,58 @@ namespace ZUGFeRDRESTService.Controllers
/// </summary>
/// <param name="file">This parameter's name needs to correspond to the html form's file-input name</param>
/// <param name="user_id">This is the email address which the user supplied</param>
/// <param name="language_id">This is language code which the user supplied (en-US, de-DE)</param>
[HttpPost]
public ValidationResponse Post(IFormFile file, string user_id)
public ValidationResponse Post(IFormCollection collection)
{
_logger.Info("Start processing request to ValidationController");
ZugferdResult oZugferdResult = null;
CheckPropertyValuesResult oPropertyResult = new CheckPropertyValuesResult();
var oUserId = string.Empty;
var oLanguageId = GERMAN;
IFormFile file = collection.Files[0];
foreach (var keyItem in collection.Keys)
{
if (keyItem == "user_id")
{
oUserId = collection[keyItem];
}
else if (keyItem == "language_id")
{
oLanguageId = collection[keyItem];
}
}
if (!string.IsNullOrEmpty(oUserId))
{
_logger.Info("UserID set to [{0}].", oUserId);
}
else
{
_logger.Info("UserID is empty!");
}
if (string.IsNullOrEmpty(oLanguageId))
{
_logger.Info("Language code was empty. Set to default 'de-DE'");
// DEFAULT-Sprache = Deutsch de-DE
_UserLanguageCode = GERMAN;
}
else if (_AllowedLanguageCodes.Where(i => i.Equals(oLanguageId, StringComparison.OrdinalIgnoreCase)).FirstOrDefault() != null)
{
_logger.Info("Language code is allowed. Set to [{0}].", oLanguageId);
_UserLanguageCode = oLanguageId;
}
else
{
_logger.Info("Language code was unknown: [{0}]. Set to default 'de-DE'", oLanguageId);
_UserLanguageCode = GERMAN;
}
try
{
using Stream oStream = file.OpenReadStream();
@@ -165,7 +270,6 @@ namespace ZUGFeRDRESTService.Controllers
if (oFileSizeIsOK == false)
{
//throw new ZUGFeRDExecption(ErrorType.FileTooBig, "FileTooBig");
throw new ZUGFeRDExecption(ErrorCodes.FileSizeLimitReachedException, _MaxFileSizeInMegabytes.ToString(), string.Empty, "FileTooBig");
}
@@ -174,6 +278,7 @@ namespace ZUGFeRDRESTService.Controllers
if (file.FileName.EndsWith(".pdf", StringComparison.OrdinalIgnoreCase))
{
oZugferdResult = _zugferd.ExtractZUGFeRDFileWithGDPicture(oStream);
oZugferdResult.ReceiptFileType = "PDF";
}
else if (file.FileName.EndsWith(".xml", StringComparison.OrdinalIgnoreCase))
{
@@ -185,23 +290,23 @@ namespace ZUGFeRDRESTService.Controllers
};
oZugferdResult = _zugferd.SerializeZUGFeRDDocument(oResult);
oZugferdResult.ReceiptFileType = "XML";
}
_logger.Info("Detected Specification was: [{0}]", oZugferdResult.Specification);
var oFilteredPropertyMap = _zugferd.FilterPropertyMap(_propertyMapList, oZugferdResult.Specification);
var oFilteredPropertyMap = _zugferd.FilterPropertyMap(_propertyMapList, oZugferdResult.Specification);
if (oFilteredPropertyMap.Count == 0)
{
_logger.Warn("No properties found in property map for specification [{0}]", oZugferdResult.Specification);
//throw new ZUGFeRDExecption(ErrorType.UnsupportedFormat, "Unsupported Format");
throw new ZUGFeRDExecption(ErrorCodes.UnsupportedFerdException, "Unsupported Format");
}
}
else
{
_logger.Debug("Property map contains [{0}] entries for specification [{1}]", oFilteredPropertyMap.Count, oZugferdResult.Specification);
}
_logger.Info("Starting structural check against the database.");
oPropertyResult = _props.CheckPropertyValues(oZugferdResult.SchemaObject, oFilteredPropertyMap, "MESSAGEID");
@@ -219,24 +324,21 @@ namespace ZUGFeRDRESTService.Controllers
if (oPropertyResult.MissingProperties.Count > 0)
{
//throw new ZUGFeRDExecption(ErrorType.MissingProperties, "Missing Properties");
throw new ZUGFeRDExecption(ErrorCodes.MissingValueException, "Missing Properties");
}
}
Tuple<bool, string> oValidateResult = ValidateBuyerOrderReference(oPropertyResult.ValidProperties);
Tuple<bool, string> oValidateResult = ValidateBuyerOrderReference(oPropertyResult.ValidProperties, oZugferdResult);
if (oValidateResult.Item1 == false)
{
//throw new ZUGFeRDExecption(ErrorType.UnknownError, "Unknown Error");
throw new ZUGFeRDExecption(ErrorCodes.UnhandledException, "Unknown Error");
}
string oValidateResultString = oValidateResult.Item2;
if (oValidateResultString == "ALL REFERENCES CHECKED POSITIVE")
if (oValidateResultString.Equals(VALIDATION_SUCCESS))
{
string oMessage = "Die hochgeladene Datei ist eine gültige-ZUGFeRD Rechnung";
_logger.Info($"Responding with message: [{oMessage}]");
return new ValidationResponse()
@@ -244,10 +346,10 @@ namespace ZUGFeRDRESTService.Controllers
status = RESPONSE_OK,
message = oMessage
};
} else
}
else
{
string oMessage = oValidateResultString;
_logger.Info($"Responding with message: [{oMessage}]");
return new ValidationResponse()
@@ -256,7 +358,8 @@ namespace ZUGFeRDRESTService.Controllers
message = oMessage
};
}
};
}
}
catch (ZUGFeRDExecption ex)
{
@@ -282,26 +385,24 @@ namespace ZUGFeRDRESTService.Controllers
oMessage = Regex.Replace(oMessage, "@REPLACE_PARAM2", ex.Param2, RegexOptions.IgnoreCase);
}
// Der REJECTION-Code wird in alle Meldungen eingefügt.
if (!string.IsNullOrEmpty(rejectionCodeNumber) && oMessage.Contains("@REJECTION_CODE", StringComparison.OrdinalIgnoreCase))
{
oMessage = Regex.Replace(oMessage, "@REJECTION_CODE", "Ablehnungscode: " + rejectionCodeNumber, RegexOptions.IgnoreCase);
}
// Determine if any errors should be sent in the response
switch (ex.ErrorCode)
{
case ErrorCodes.MissingValueException:
oErrors.AddRange(from item in oPropertyResult.MissingProperties
select (item.EN16931_ID + " (" + item.Description + ")"));
var oErrorsText = GetMissingValuesListString(oPropertyResult.MissingProperties);
if (!string.IsNullOrEmpty(oErrorsText) && oMessage.Contains("@REPLACE_PARAM3", StringComparison.OrdinalIgnoreCase))
{
oMessage = Regex.Replace(oMessage, "@REPLACE_PARAM3", oErrorsText, RegexOptions.IgnoreCase);
}
break;
default:
break;
}
}
else
else
{
oMessage = "Alte Logik. Meldung nicht gefunden";
oMessage = "Alte Logik. Meldung nicht gefunden";
}
_logger.Info($"Responding with message: [{oMessage}]");
@@ -315,21 +416,61 @@ namespace ZUGFeRDRESTService.Controllers
}
catch (ValidationException ex)
{
_logger.Error(ex);
var rejectionCodeNumber = this.GetRejectionCodeNumber(ex.ErrorCode);
// Der gesamte Ausgabetext muss anhand des ErrorCodes ermittelt werden
string oMessage = this.GetRejectionMessage(rejectionCodeNumber);
List<string> oErrors = ex.ValidationErrors.Select(e =>
{
return $"Element '{e.ElementName}' mit Wert '{e.ElementValue}': {e.ErrorMessageDE}";
}).ToList();
// Wenn es ValidationErrors gibt, werden diese nun übersetzt und in eine Liste übertragen werden
var mainText = GetTextByToken("ItemValueText");
var resultList = new List<string>();
foreach (var errorItem in ex.ValidationErrors)
{
var resultString = mainText;
if (!string.IsNullOrEmpty(errorItem.ElementName))
{
// replace @ITEM_NAME => e.ElementName
resultString = resultString.Replace("@ITEM_NAME", errorItem.ElementName, StringComparison.OrdinalIgnoreCase);
}
if (!string.IsNullOrEmpty(errorItem.ElementValue))
{
// replace ITEM_VALUE => e.ElementValue
resultString = resultString.Replace("@ITEM_VALUE", errorItem.ElementValue, StringComparison.OrdinalIgnoreCase);
}
var itemErrorText = GetTextByToken(errorItem.ErrorMessageToken);
if (!string.IsNullOrEmpty(itemErrorText))
{
// attach itemErrorText
resultString += " " + itemErrorText;
}
_logger.Debug($"resultString: [{resultString}]");
resultList.Add(resultString);
}
// wenn ergebnisse vorliegen, in html transformieren und anhängen
if (resultList.Count > 0)
{
var htmlResultString = "<ul>";
foreach (var resultItem in resultList)
{
htmlResultString += " <li>" + resultItem + "</li>" + Environment.NewLine;
}
htmlResultString += " </ul>";
oMessage += " " + htmlResultString;
}
return new ValidationResponse()
{
status = RESPONSE_ERROR,
message = oMessage,
errors = oErrors
message = oMessage
};
}
catch (Exception ex)
@@ -348,20 +489,73 @@ namespace ZUGFeRDRESTService.Controllers
}
}
private Tuple<bool, string> ValidateBuyerOrderReference(List<ValidProperty> pProperties)
private string GetMissingValuesListString(List<MissingProperty> missingProperties)
{
if (missingProperties == null || missingProperties.Count == 0)
{
return string.Empty;
}
string retValue = "<ul>";
foreach (var missingProperty in missingProperties)
{
var searchToken = missingProperty.EN16931_ID + "_Description";
var descriptionTranslated = GetTextByToken(searchToken);
var rowString = "<li>" + missingProperty.EN16931_ID + " (" + descriptionTranslated + ")</li>";
retValue += rowString;
}
retValue += "</ul>";
return retValue;
}
/// <summary>
/// Holt sprachgenauen Text anhand eines Titel-Tokens
/// </summary>
/// <returns></returns>
private string GetTextByToken(string tokenValue)
{
RejectionStringRow stringRow = null;
if (!string.IsNullOrEmpty(tokenValue))
{
stringRow = _RecjectionMessageList.Where(i => i.Title.Equals(tokenValue, StringComparison.OrdinalIgnoreCase) &&
i.Language.Equals(_UserLanguageCode, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
if (stringRow == null &&
!_UserLanguageCode.Equals(GERMAN, StringComparison.OrdinalIgnoreCase))
{
// Wenn kein sprachgenauer Text vorliegt, hole den deutschen Text.
stringRow = _RecjectionMessageList.Where(i => i.Title.Equals(tokenValue, StringComparison.OrdinalIgnoreCase) &&
i.Language.Equals(GERMAN, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
}
}
string retValue = string.Empty;
if (stringRow != null)
{
retValue = !string.IsNullOrEmpty(stringRow.String1) ? stringRow.String1.Trim() : string.Empty;
}
_logger.Debug($"Token [{tokenValue}] - String1 [{retValue}]");
return retValue;
}
/// <summary>
/// Hier wird eine externe Prozedur gerufen, PRCUST_INV_CHECK_FROM_PORTAL,
/// die das Ergebnis der Referenzpruefung liefert.
/// </summary>
private Tuple<bool, string> ValidateBuyerOrderReference(List<ValidProperty> pProperties, ZugferdResult pZugferdResult)
{
var oMessageId = GetMessageId();
_logger.Debug("Created new MessageId: [{0}]", oMessageId);
_logger.Debug("Created new MessageId: [{0}]", oMessageId);
_logger.Debug("Inserting properties into database.");
foreach (var oItem in pProperties)
if (!BulkInsertDataToDatabase(oMessageId, pProperties, pZugferdResult))
{
var oResult = InsertPropertyMap(oItem, oMessageId);
if (oResult == false)
{
_logger.Warn("Error while inserting the Property [{0}] into the Database!", oItem.Description);
}
_logger.Warn("Error while Inserting properties into database!");
return new Tuple<bool, string>(false, string.Empty);
}
_logger.Debug("Calling validation prodecure.");
@@ -377,6 +571,57 @@ namespace ZUGFeRDRESTService.Controllers
if (_database.MSSQL.ExecuteNonQuery(oCommand))
{
string oReturnValue = (string)oCommand.Parameters["@MSG_OUTPUT"].Value;
_logger.Debug("Validation Result message from DB: " + oReturnValue);
if (oReturnValue.Equals("ALL REFERENCES CHECKED POSITIVE", StringComparison.OrdinalIgnoreCase))
{
_logger.Debug("Validation Success");
oReturnValue = VALIDATION_SUCCESS;
}
else
{
// Gehe durch die möglichen Fehler, und ermittle Rückmeldung
foreach (var oRejectionItem in _ValidationErrors)
{
if (oReturnValue.Contains(oRejectionItem, StringComparison.OrdinalIgnoreCase))
{
_logger.Debug("oRejectionItem match: " + oRejectionItem);
var oDbMessage = this.GetRejectionMessage(oRejectionItem);
//Jetzt müssen ggf Platzhalter ersetzt werden.
if (oRejectionItem == REFERENCES_Rejection_30003_2)
{
string oReplaceParam1 = GetReplaceText1_30003_2(pProperties);
string oReplaceParam2 = GetReplaceText2_30003_2(pProperties);
oReturnValue = oDbMessage.Replace("@REPLACE_PARAM1", oReplaceParam1);
oReturnValue = oReturnValue.Replace("@REPLACE_PARAM2", oReplaceParam2);
}
else if (oRejectionItem == REFERENCES_Rejection_30003_3)
{
string oReplaceParam1 = GetReplaceText1_30003_3(pProperties);
oReturnValue = oDbMessage.Replace("@REPLACE_PARAM1", oReplaceParam1);
}
else if (oRejectionItem == REFERENCES_Rejection_30001)
{
// TODO - BUKR?
oReturnValue = oDbMessage.Replace("@REPLACE_PARAM1", "9999");
}
else
{
oReturnValue = oDbMessage;
}
break;
}
}
}
_logger.Debug("Validation terminal Result message: " + oReturnValue);
return new Tuple<bool, string>(true, oReturnValue);
}
@@ -390,86 +635,391 @@ namespace ZUGFeRDRESTService.Controllers
{
_logger.Error(e);
return new Tuple<bool, string>(false, string.Empty);
}
}
}
public string GetMessageId()
private string GetReplaceText1_30003_3(List<ValidProperty> pProperties)
{
string oReplaceParam1 = string.Empty;
// BuyerOrderReferencedDocument
var itemBT13 = pProperties.Where(i => i.TableColumn == "INVOICE_REFERENCE").FirstOrDefault();
string valueBt13 = "-";
if (itemBT13 != null)
{
valueBt13 = string.IsNullOrEmpty(itemBT13.Value) ? "-" : itemBT13.Value;
}
oReplaceParam1 += "<li>[BuyerOrderReferencedDocument] (BT-13) = [" + valueBt13 + "]</li>";
// BuyerReference
var itemBT10 = pProperties.Where(i => i.TableColumn == "INVOICE_REFERENCE3").FirstOrDefault();
string valueBt10 = "-";
if (itemBT10 != null)
{
valueBt10 = string.IsNullOrEmpty(itemBT10.Value) ? "-" : itemBT10.Value;
}
oReplaceParam1 += "<li>[BuyerReference] (BT-10) = [" + valueBt10 + "]</li>";
// CostCenter
var itemBT19 = pProperties.Where(i => i.TableColumn == "INVOICE_COST_CENTER").FirstOrDefault();
string valueBt19 = "-";
if (itemBT19 != null)
{
valueBt19 = string.IsNullOrEmpty(itemBT19.Value) ? "-" : itemBT19.Value;
}
oReplaceParam1 += "<li>[CostCenter] (BT-19) = [" + valueBt19 + "]</li>";
// BuyerID
var itemBT46 = pProperties.Where(i => i.TableColumn == "INVOICE_BUYER_ID").FirstOrDefault();
string valueBt46 = "-";
if (itemBT46 != null)
{
valueBt46 = string.IsNullOrEmpty(itemBT46.Value) ? "-" : itemBT46.Value;
}
oReplaceParam1 += "<li>[BuyerTradeParty] (BT-46) = [" + valueBt46 + "]</li>";
oReplaceParam1 = "<ul>" + oReplaceParam1 + "</ul>";
_logger.Debug("oReplaceParam1-Text: " + oReplaceParam1);
return oReplaceParam1;
}
private string GetReplaceText2_30003_2(List<ValidProperty> pProperties)
{
string oReplaceParam2 = string.Empty;
// BuyerTradeParty.Name
var itemBT44 = pProperties.Where(i => i.TableColumn == "INVOICE_BUYER_NAME").FirstOrDefault();
string valueBt44 = "-";
if (itemBT44 != null)
{
valueBt44 = string.IsNullOrEmpty(itemBT44.Value) ? "-" : itemBT44.Value;
}
oReplaceParam2 += "<li>[BuyerTradeParty.Name] (BT-44) = [" + valueBt44 + "]</li>";
// BuyerTradeParty.PostalTradeAddress.LineTwo
var itemBT51 = pProperties.Where(i => i.TableColumn == "INVOICE_BUYER_ADRESS2").FirstOrDefault();
string valueBt51 = "-";
if (itemBT51 != null)
{
valueBt51 = string.IsNullOrEmpty(itemBT51.Value) ? "-" : itemBT51.Value;
}
oReplaceParam2 += "<li>[BuyerTradeParty.PostalTradeAddress.LineTwo] (BT-51) = [" + valueBt51 + "]</li>";
oReplaceParam2 = "<ul>" + oReplaceParam2 + "</ul>";
_logger.Debug("oReplaceParam2-Text: " + oReplaceParam2);
return oReplaceParam2;
}
private string GetReplaceText1_30003_2(List<ValidProperty> pProperties)
{
string oReplaceParam1 = string.Empty;
// BuyerOrderReferencedDocument
var itemBT13 = pProperties.Where(i => i.TableColumn == "INVOICE_REFERENCE").FirstOrDefault();
string valueBt13 = "-";
if (itemBT13 != null)
{
valueBt13 = string.IsNullOrEmpty(itemBT13.Value) ? "-" : itemBT13.Value;
}
oReplaceParam1 += "<li>[BuyerOrderReferencedDocument] (BT-13) = [" + valueBt13 + "]</li>";
// BuyerReference
var itemBT10 = pProperties.Where(i => i.TableColumn == "INVOICE_REFERENCE3").FirstOrDefault();
string valueBt10 = "-";
if (itemBT10 != null)
{
valueBt10 = string.IsNullOrEmpty(itemBT10.Value) ? "-" : itemBT10.Value;
}
oReplaceParam1 += "<li>[BuyerReference] (BT-10) = [" + valueBt10 + "]</li>";
// CostCenter
var itemBT19 = pProperties.Where(i => i.TableColumn == "INVOICE_COST_CENTER").FirstOrDefault();
string valueBt19 = "-";
if (itemBT19 != null)
{
valueBt19 = string.IsNullOrEmpty(itemBT19.Value) ? "-" : itemBT19.Value;
}
oReplaceParam1 += "<li>[CostCenter] (BT-19) = [" + valueBt19 + "]</li>";
oReplaceParam1 = "<ul>" + oReplaceParam1 + "</ul>";
_logger.Debug("oReplaceParam1-Text: " + oReplaceParam1);
return oReplaceParam1;
}
private string GetMessageId()
{
return $"{Guid.NewGuid()}@{MESSAGEID_DOMAIN}";
}
public bool InsertPropertyMap(ValidProperty pProperty, string pMessageId)
private bool BulkInsertDataToDatabase(string pMessageId, List<ValidProperty> pProperties, ZugferdResult pZugferdResult)
{
if (string.IsNullOrEmpty(pMessageId))
{
return false;
}
if (!DeleteExistingPropertyValues(pMessageId))
{
return false;
}
DataTable oDataTable = PrepareDataTable(pMessageId, pProperties, pZugferdResult);
// ColumnList initialisieren
List<string> oColumnNames = new List<string> {
"REFERENCE_GUID",
"ITEM_DESCRIPTION",
"ITEM_VALUE",
"GROUP_COUNTER",
"SPEC_NAME",
"IS_REQUIRED"
};
bool oBulkResult = BulkInsert(oDataTable, "TBEDMI_ITEM_VALUE", oColumnNames);
if (!oBulkResult)
{
_logger.Error("Bulk Insert for MessageId [{0}] failed!", pMessageId);
return false;
}
_logger.Info("Bulk Insert finished. [{0}] rows inserted for MessageId [{1}].", oDataTable.Rows.Count, pMessageId);
return true;
}
private bool BulkInsert(DataTable pDataTable, string pDestinationTable, List<string> pColumnNames)
{
using (var oSqlBulkCopy = new SqlBulkCopy(_database.MSSQL.GetConnection()))
{
oSqlBulkCopy.DestinationTableName = pDestinationTable;
foreach (var columnItem in pColumnNames)
{
oSqlBulkCopy.ColumnMappings.Add(new SqlBulkCopyColumnMapping(columnItem, columnItem));
}
try
{
oSqlBulkCopy.WriteToServer(pDataTable);
}
catch (Exception ex)
{
_logger.Error(ex);
return false;
}
}
return true;
}
private DataTable PrepareDataTable(string pMessageId, List<ValidProperty> pProperties, ZugferdResult pDocument)
{
DataTable oDataTable = new DataTable();
oDataTable.Columns.Add(new DataColumn("REFERENCE_GUID", typeof(string)));
oDataTable.Columns.Add(new DataColumn("ITEM_DESCRIPTION", typeof(string)));
oDataTable.Columns.Add(new DataColumn("ITEM_VALUE", typeof(string)));
oDataTable.Columns.Add(new DataColumn("GROUP_COUNTER", typeof(Int32)));
oDataTable.Columns.Add(new DataColumn("SPEC_NAME", typeof(string)));
oDataTable.Columns.Add(new DataColumn("IS_REQUIRED", typeof(bool)));
// Erste Zeile enthält die Spezifikation
DataRow oFirstRow = oDataTable.NewRow();
oFirstRow["REFERENCE_GUID"] = pMessageId;
oFirstRow["ITEM_DESCRIPTION"] = "Verwendete Spezifikation der E-Rechnung";
oFirstRow["ITEM_VALUE"] = pDocument.Specification;
oFirstRow["GROUP_COUNTER"] = 0;
oFirstRow["SPEC_NAME"] = "ZUGFERD_SPECIFICATION";
oFirstRow["IS_REQUIRED"] = false;
_logger.Debug("Mapping Property [ZUGFERD_SPECIFICATION] with value [{0}]", pDocument.Specification);
oDataTable.Rows.Add(oFirstRow);
//' Zweite Zeile enthält das verwendete XML Schema
DataRow oSecondRow = oDataTable.NewRow();
oSecondRow["REFERENCE_GUID"] = pMessageId;
oSecondRow["ITEM_DESCRIPTION"] = "Verwendetes XML-Schema (XSD) der E-Rechnung";
oSecondRow["ITEM_VALUE"] = pDocument.UsedXMLSchema;
oSecondRow["GROUP_COUNTER"] = 0;
oSecondRow["SPEC_NAME"] = "ZUGFERD_XML_SCHEMA";
oSecondRow["IS_REQUIRED"] = false;
_logger.Debug("Mapping Property [ZUGFERD_XML_SCHEMA] with value [{0}]", pDocument.UsedXMLSchema);
oDataTable.Rows.Add(oSecondRow);
//' Dritte Zeile enthält das verwendete Datei-Format des Belegs (PDF/XML)
if (pDocument.ReceiptFileType != null)
{
DataRow oThirdRow = oDataTable.NewRow();
oThirdRow["REFERENCE_GUID"] = pMessageId;
oThirdRow["ITEM_DESCRIPTION"] = "Dateityp der E-Rechnung";
oThirdRow["ITEM_VALUE"] = pDocument.ReceiptFileType;
oThirdRow["GROUP_COUNTER"] = 0;
oThirdRow["SPEC_NAME"] = "RECEIPT_FILE_TYPE";
oThirdRow["IS_REQUIRED"] = false;
_logger.Debug("Mapping Property [RECEIPT_FILE_TYPE] with value [{0}]", pDocument.ReceiptFileType);
oDataTable.Rows.Add(oThirdRow);
}
foreach (var propertyItem in pProperties)
{
// ItemType = 3 => eingebettete Datei, nicht den base64 speichern
if (propertyItem.ItemType == 3)
{
continue;
}
// ItemType = 0 (normale texte) dürfen nicht leer sein - leere Werte werden überlesen
if (propertyItem.ItemType == 0 && string.IsNullOrEmpty(propertyItem.Value))
{
continue;
}
// If GroupCounter is -1, it means this is a default property that can only occur once.
// Set the actual inserted value to 0
var oGroupCounterValue = propertyItem.GroupCounter < 0 ? 0 : propertyItem.GroupCounter;
if (propertyItem.Value.Length > 4000)
{
_logger.Warn("Value for field [{0}] is longer than 4000 characters, will be truncated!", propertyItem.TableColumn);
propertyItem.Value = propertyItem.Value.Substring(0, 4000);
}
// Description mit BT-Feld aufbereiten
var betterDescription = propertyItem.Description;
if (!string.IsNullOrEmpty(propertyItem.EN16931_ID))
{
betterDescription = propertyItem.EN16931_ID + " (" + propertyItem.Description + ")";
}
DataRow newRow = oDataTable.NewRow();
newRow["REFERENCE_GUID"] = pMessageId;
newRow["ITEM_DESCRIPTION"] = betterDescription;
newRow["ITEM_VALUE"] = propertyItem.Value;
newRow["GROUP_COUNTER"] = oGroupCounterValue;
newRow["SPEC_NAME"] = propertyItem.TableColumn;
newRow["IS_REQUIRED"] = propertyItem.IsRequired;
_logger.Debug("Mapping Property [{0}] with value [{1}]", propertyItem.TableColumn, propertyItem.Value);
oDataTable.Rows.Add(newRow);
}
return oDataTable;
}
private bool DeleteExistingPropertyValues(string pMessageId)
{
try
{
if (pProperty.ItemType == 3)
var delItemValueSQL = "DELETE FROM TBEDMI_ITEM_VALUE WHERE REFERENCE_GUID = '" + pMessageId + "';";
var oCommand = new SqlCommand(delItemValueSQL);
var retValue = _database.MSSQL.ExecuteNonQuery(oCommand);
if (!retValue)
{
// Wir speichern keine Attachment-Werte in die DB
return true;
_logger.Warn("DELETE FROM TBEDMI_ITEM_VALUE NOT successfull");
return false;
}
if (pProperty.ItemType == 0 && string.IsNullOrEmpty(pProperty.Value.ToString()))
{
// Leere Texte speichern wir nicht in der DB
return true;
}
var oSql = $"INSERT INTO {pProperty.TableName} " +
"(REFERENCE_GUID, ITEM_DESCRIPTION, ITEM_VALUE, CREATEDWHO, SPEC_NAME, GROUP_COUNTER, IS_REQUIRED) VALUES " +
"(@REFERENCE_GUID, @ITEM_DESCRIPTION, @ITEM_VALUE, @CREATEDWHO, @SPEC_NAME, @GROUP_COUNTER, @IS_REQUIRED)";
string itemValue = string.Empty;
if (pProperty.Value.Length > 4000)
{
itemValue = pProperty.Value.Substring(1, 4000);
_logger.Warn("Value for field [{0}] is longer than 4000 characters, will be truncated!", pProperty.TableColumn);
}
else
{
itemValue = pProperty.Value;
}
var oParams = new SqlParameter[]
{
new SqlParameter("@REFERENCE_GUID", pMessageId),
new SqlParameter("@ITEM_DESCRIPTION", pProperty.Description),
new SqlParameter("@ITEM_VALUE", itemValue.Replace("'", "''")),
new SqlParameter("@CREATEDWHO", ADDED_WHO),
new SqlParameter("@GROUP_COUNTER", pProperty.GroupCounter),
new SqlParameter("@SPEC_NAME", pProperty.TableColumn),
new SqlParameter("@IS_REQUIRED", pProperty.IsRequired)
};
var oCommand = new SqlCommand(oSql);
oCommand.Parameters.AddRange(oParams);
return _database.MSSQL.ExecuteNonQuery(oCommand);
_logger.Debug("DELETE FROM TBEDMI_ITEM_VALUE successfull");
}
catch (Exception ex)
{
_logger.Error(ex);
return false;
}
}
try
{
var delItemFilesSQL = "DELETE FROM TBEDMI_ITEM_FILES WHERE REFERENCE_GUID = '" + pMessageId + "';";
var oCommand = new SqlCommand(delItemFilesSQL);
var retValue = _database.MSSQL.ExecuteNonQuery(oCommand);
if (!retValue)
{
_logger.Warn("DELETE FROM TBEDMI_ITEM_FILES NOT successfull");
return false;
}
_logger.Debug("DELETE FROM TBEDMI_ITEM_FILES successfull");
}
catch (Exception ex)
{
_logger.Error(ex);
return false;
}
return true;
}
/// <summary>
/// Ermittelt die Ausgabe-nachricht für einen Fehlercode
/// </summary>
public string GetRejectionMessage(string pErrorCode)
private string GetRejectionMessage(string pErrorCode)
{
_logger.Info("GetRejectionMessage() - errorCode.ToString(): '" + pErrorCode.ToString() + "'");
if (_RecjectionMessageList == null) return string.Empty;
// Sprache wird man vielleicht mal auswählen können
var language = "de-DE";
var searchTitle = "ZUGFERD_Rejection_" + pErrorCode + "_Web";
var searchTitle = string.Empty;
var messageItem = _RecjectionMessageList.Where(i => i.Title.Equals(searchTitle, StringComparison.OrdinalIgnoreCase) && i.Language.Equals(language, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
if (messageItem != null)
if (pErrorCode.Contains("2000"))
{
_logger.Info("GetRejectionMessage() - messageItem: '" + messageItem.String1 + "'");
return messageItem.String1;
searchTitle = "ZUGFERD_Rejection_" + pErrorCode + "_Web";
}
else if (pErrorCode.Contains("REFERENCES_Rejection_3000"))
{
searchTitle = pErrorCode + "_Web";
}
else if (pErrorCode.Contains("AMOUNT_CALC"))
{
searchTitle = "AMOUNT_CALC_REJECTION_Web";
}
else
{
searchTitle = "ZUGFERD_Rejection_20006_Web";
}
// Sprachgenauen Text suchen.
var messageItem = _RecjectionMessageList.Where(i => i.Title.Equals(searchTitle, StringComparison.OrdinalIgnoreCase) &&
i.Language.Equals(_UserLanguageCode, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
if (messageItem == null &&
!_UserLanguageCode.Equals(GERMAN, StringComparison.OrdinalIgnoreCase)) {
_logger.Info("GetRejectionMessage() - Es wurde kein passender Text für die Sprache [{0}] gefunden.", _UserLanguageCode);
// Wenn kein sprachgenauer Text vorliegt, hole den deutschen Text.
messageItem = _RecjectionMessageList.Where(i => i.Title.Equals(searchTitle, StringComparison.OrdinalIgnoreCase) &&
i.Language.Equals(GERMAN, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
}
if (messageItem != null && !string.IsNullOrEmpty(pErrorCode))
{
var resultText = string.Empty;
// Der REJECTION-Code wird in allen Meldungen ausgetauscht.
if (messageItem.String1.Contains("@REJECTION_CODE", StringComparison.OrdinalIgnoreCase))
{
var substituteText = this.GetLabelText("Ablehnungscode", _UserLanguageCode);
substituteText = string.IsNullOrEmpty(substituteText) ? "Ablehnungscode" : substituteText;
substituteText = substituteText + ": " + pErrorCode;
resultText = Regex.Replace(messageItem.String1, "@REJECTION_CODE", substituteText, RegexOptions.IgnoreCase);
}
else
{
resultText = messageItem.String1;
}
_logger.Info("GetRejectionMessage() - messageItem: '" + resultText + "'");
return resultText;
}
else
{
@@ -478,6 +1028,15 @@ namespace ZUGFeRDRESTService.Controllers
}
}
private string GetLabelText(string pLabel, string pLanguage)
{
// Sprachgenauen Text suchen.
var messageItem = _RecjectionMessageList.Where(i => i.Title.Equals(pLabel, StringComparison.OrdinalIgnoreCase) &&
i.Language.Equals(pLanguage, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
return messageItem != null ? messageItem.String1 : string.Empty;
}
private string GetRejectionCodeNumber(ErrorCodes rejectionCode)
{
switch (rejectionCode)

View File

@@ -15,7 +15,12 @@
<label>Benutzerkennung/Email:</label>
<input type="email" name="user_id" required />
</p>
<p>
<label>Sprachcode (de-DE etc.):</label>
<input type="text" name="language_id" value="de-DE" required />
</p>
<button type="submit">Submit</button>
</form>

View File

@@ -20,11 +20,11 @@
},
"Zugferd": {
"AllowZugferd10": true,
"AllowZugferd2x": false,
"AllowZugferd23x": false,
"AllowFacturX": false,
"AllowXRechnung": false,
"AllowPeppolBISBill3x": false
"AllowZugferd2x": true,
"AllowZugferd23x": true,
"AllowFacturX": true,
"AllowXRechnung": true,
"AllowPeppolBISBill3x": true
},
"GDPictureVersion": "",
"MaxFileSizeInMegabytes": 25