1 Commits

Author SHA1 Message Date
Developer01
97d4ca26f4 Upgrade .NET8 ZugferdTest 2025-12-30 12:03:59 +01:00
45 changed files with 1246 additions and 1414 deletions

29
.github/upgrades/dotnet-upgrade-plan.md vendored Normal file
View File

@@ -0,0 +1,29 @@
# .NET 8.0 Upgrade Plan
## Execution Steps
Execute steps below sequentially one by one in the order they are listed.
1. Validate that an .NET 8.0 SDK required for this upgrade is installed on the machine and if not, help to get it installed.
2. Ensure that the SDK version specified in global.json files is compatible with the .NET 8.0 upgrade.
3. Upgrade GUIs.Test.ZUGFeRDTest\ZUGFeRDTest.vbproj
## Settings
This section contains settings and data used by execution steps.
### Excluded projects
Table below contains projects that do belong to the dependency graph for selected projects and should not be included in the upgrade.
| Project name | Description |
|:-------------|:-----------:|
| | Keine Projekte ausgeschlossen |
### Project upgrade details
This section contains details about each project upgrade and modifications that need to be done in the project.
#### GUIs.Test.ZUGFeRDTest\ZUGFeRDTest.vbproj modifications
Project properties changes:
- Keine Änderungen erforderlich. Das Projekt zielt bereits auf `net8.0-windows` und verwendet kompatible Pakete.

View File

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

View File

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

View File

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

View File

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

View File

@@ -64,7 +64,6 @@ Partial Class DocumentViewer
Me.lbFileNotLoaded = New DevExpress.XtraEditors.LabelControl() Me.lbFileNotLoaded = New DevExpress.XtraEditors.LabelControl()
Me.RichEditControl1 = New DevExpress.XtraRichEdit.RichEditControl() Me.RichEditControl1 = New DevExpress.XtraRichEdit.RichEditControl()
Me.lblInfo = New System.Windows.Forms.Label() Me.lblInfo = New System.Windows.Forms.Label()
Me.GdViewer = New GdPicture14.GdViewer()
CType(Me.BarManager1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.BarManager1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit3, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RepositoryItemTextEdit3, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -347,7 +346,7 @@ Partial Class DocumentViewer
' '
'SpreadsheetControl1 'SpreadsheetControl1
' '
Me.SpreadsheetControl1.Location = New System.Drawing.Point(59, 181) Me.SpreadsheetControl1.Location = New System.Drawing.Point(83, 177)
Me.SpreadsheetControl1.MenuManager = Me.BarManager1 Me.SpreadsheetControl1.MenuManager = Me.BarManager1
Me.SpreadsheetControl1.Name = "SpreadsheetControl1" Me.SpreadsheetControl1.Name = "SpreadsheetControl1"
Me.SpreadsheetControl1.ReadOnly = True Me.SpreadsheetControl1.ReadOnly = True
@@ -378,94 +377,13 @@ Partial Class DocumentViewer
' '
'RichEditControl1 'RichEditControl1
' '
Me.RichEditControl1.Location = New System.Drawing.Point(385, 166) Me.RichEditControl1.Location = New System.Drawing.Point(571, 238)
Me.RichEditControl1.MenuManager = Me.BarManager1 Me.RichEditControl1.MenuManager = Me.BarManager1
Me.RichEditControl1.Name = "RichEditControl1" Me.RichEditControl1.Name = "RichEditControl1"
Me.RichEditControl1.Size = New System.Drawing.Size(400, 200) Me.RichEditControl1.Size = New System.Drawing.Size(400, 200)
Me.RichEditControl1.TabIndex = 5 Me.RichEditControl1.TabIndex = 5
Me.RichEditControl1.Visible = False 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 'DocumentViewer
' '
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)

View File

@@ -123,6 +123,9 @@
<metadata name="BarManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="BarManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>285, 22</value> <value>285, 22</value>
</metadata> </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" /> <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"> <data name="buttonPrint.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
@@ -219,9 +222,6 @@
OCw4TDE2LDI0eiIgY2xhc3M9IkdyZWVuIiAvPg0KICA8L2c+DQo8L3N2Zz4L OCw4TDE2LDI0eiIgY2xhc3M9IkdyZWVuIiAvPg0KICA8L2c+DQo8L3N2Zz4L
</value> </value>
</data> </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"> <data name="btnSearch.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40

View File

@@ -596,9 +596,111 @@ Public Class DocumentViewer
Return False Return False
End Try End Try
End Function 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 ' 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 Private Function EnsureViewerReady() As Boolean
Try Try
' If the control field is Nothing (e.g., designer not yet created), try to lazy-create and add it ' If the control field is Nothing (e.g., designer not yet created), try to lazy-create and add it

View File

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

View File

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

View File

@@ -12,7 +12,7 @@
<AssemblyName>DigitalData.Controls.RegexEditor</AssemblyName> <AssemblyName>DigitalData.Controls.RegexEditor</AssemblyName>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<MyType>Windows</MyType> <MyType>Windows</MyType>
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion> <TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
</PropertyGroup> </PropertyGroup>
@@ -60,8 +60,12 @@
<Reference Include="DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL"> <Reference Include="DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
</Reference> </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"> <Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath> <HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference> </Reference>
<Reference Include="PresentationCore" /> <Reference Include="PresentationCore" />
<Reference Include="System" /> <Reference Include="System" />

View File

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

View File

@@ -76,6 +76,10 @@ Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "EDMIService.Tests", "EDMISe
EndProject EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Jobs", "..\DDModules\Jobs\Jobs.vbproj", "{39EC839A-3C30-4922-A41E-6B09D1DDE5C3}" Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Jobs", "..\DDModules\Jobs\Jobs.vbproj", "{39EC839A-3C30-4922-A41E-6B09D1DDE5C3}"
EndProject EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Verknüpfte Projekte", "Verknüpfte Projekte", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Config", "..\DDModules\Config\Config.vbproj", "{7B7766E6-DC73-19CD-042F-6B95CE11A733}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU Debug|Any CPU = Debug|Any CPU
@@ -186,6 +190,10 @@ Global
{39EC839A-3C30-4922-A41E-6B09D1DDE5C3}.Debug|Any CPU.Build.0 = Debug|Any CPU {39EC839A-3C30-4922-A41E-6B09D1DDE5C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{39EC839A-3C30-4922-A41E-6B09D1DDE5C3}.Release|Any CPU.ActiveCfg = Release|Any CPU {39EC839A-3C30-4922-A41E-6B09D1DDE5C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{39EC839A-3C30-4922-A41E-6B09D1DDE5C3}.Release|Any CPU.Build.0 = Release|Any CPU {39EC839A-3C30-4922-A41E-6B09D1DDE5C3}.Release|Any CPU.Build.0 = Release|Any CPU
{7B7766E6-DC73-19CD-042F-6B95CE11A733}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7B7766E6-DC73-19CD-042F-6B95CE11A733}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7B7766E6-DC73-19CD-042F-6B95CE11A733}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7B7766E6-DC73-19CD-042F-6B95CE11A733}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
@@ -216,7 +224,8 @@ Global
{9D4AC920-C78E-41C3-994E-91690FF79380} = {8FFE925E-8B84-45F1-93CB-32B1C96F41EB} {9D4AC920-C78E-41C3-994E-91690FF79380} = {8FFE925E-8B84-45F1-93CB-32B1C96F41EB}
{5A7913CE-7D3D-4E84-B23D-4747C178CD71} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A} {5A7913CE-7D3D-4E84-B23D-4747C178CD71} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A}
{E3DA65CA-964D-4896-991A-B5426884E215} = {7AF3F9C2-C939-4A08-95C1-0453207E298A} {E3DA65CA-964D-4896-991A-B5426884E215} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{39EC839A-3C30-4922-A41E-6B09D1DDE5C3} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A} {39EC839A-3C30-4922-A41E-6B09D1DDE5C3} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
{7B7766E6-DC73-19CD-042F-6B95CE11A733} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
EndGlobalSection EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {C1BE4090-A0FD-48AF-86CB-39099D14B286} SolutionGuid = {C1BE4090-A0FD-48AF-86CB-39099D14B286}

View File

@@ -66,31 +66,31 @@
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Base, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Base, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath> <HintPath>..\..\Modules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath> <HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.EDMI.API, Version=0.0.0.2, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.EDMI.API, Version=0.0.0.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath> <HintPath>..\..\Modules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath> <HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Patterns, Version=1.1.0.1, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Patterns, Version=1.1.0.1, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath> <HintPath>..\..\Modules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Windows, Version=1.4.4.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Windows, Version=1.4.4.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Windows\bin\Debug\DigitalData.Modules.Windows.dll</HintPath> <HintPath>..\..\Modules\Windows\bin\Debug\DigitalData.Modules.Windows.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.ZooFlow, Version=1.2.0.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.ZooFlow, Version=1.2.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\ZooFlow\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath> <HintPath>..\..\Modules\Patterns\bin\Debug\DigitalData.Modules.ZooFlow.dll</HintPath>
</Reference> </Reference>
<Reference Include="Microsoft.CSharp" /> <Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL"> <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 DATA_ONLY = 2
End Enum End Enum
Public Sub New(pLogConfig As LogConfig, pEnvironment As Environment, pParams As ClipboardWatcherParams) Public Sub New(LogConfig As LogConfig, Environment As Environment, Params As ClipboardWatcherParams)
' Dieser Aufruf ist für den Designer erforderlich. ' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent() InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
_LogConfig = pLogConfig _LogConfig = LogConfig
_Logger = pLogConfig.GetLogger() _Logger = LogConfig.GetLogger()
_Environment = pEnvironment _Environment = Environment
_Params = pParams _Params = Params
_ProfileSearch = New ProfileSearches(_LogConfig, _Environment, _Params.ClipboardContents) _ProfileSearch = New ProfileSearches(_LogConfig, _Environment, _Params.ClipboardContents)
_Logger.Debug("ClipboardContents: [{0}]", pParams.ClipboardContents) _Logger.Debug("ClipboardContents: [{0}]", Params.ClipboardContents)
_Logger.Debug("OperationModeOverride: [{0}]", pParams.OperationModeOverride.ToString) _Logger.Debug("OperationModeOverride: [{0}]", Params.OperationModeOverride.ToString)
_Language = ObjectEx.NotNull(_Environment.User.Language, State.UserState.LANG_EN_US) _Language = ObjectEx.NotNull(_Environment.User.Language, State.UserState.LANG_EN_US)
Thread.CurrentThread.CurrentUICulture = New CultureInfo(_Language) Thread.CurrentThread.CurrentUICulture = New CultureInfo(_Language)

View File

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

View File

@@ -68,7 +68,6 @@ Partial Class frmDocumentResultList
Me.btnSaveWorkspaceAs = New DevExpress.XtraBars.BarButtonItem() Me.btnSaveWorkspaceAs = New DevExpress.XtraBars.BarButtonItem()
Me.btnSaveAsMySearch = New DevExpress.XtraBars.BarButtonItem() Me.btnSaveAsMySearch = New DevExpress.XtraBars.BarButtonItem()
Me.lblCurrentWorkspace = New DevExpress.XtraBars.BarStaticItem() Me.lblCurrentWorkspace = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItem6 = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPageStart = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPageStart = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup_Navigation = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup_Navigation = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroupExport = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroupExport = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
@@ -222,9 +221,9 @@ Partial Class frmDocumentResultList
Me.RibbonControl.ColorScheme = DevExpress.XtraBars.Ribbon.RibbonControlColorScheme.Green Me.RibbonControl.ColorScheme = DevExpress.XtraBars.Ribbon.RibbonControlColorScheme.Green
Me.RibbonControl.ExpandCollapseItem.Id = 0 Me.RibbonControl.ExpandCollapseItem.Id = 0
Me.RibbonControl.Images = Me.SvgImageCollection1 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.BarButtonItem6}) 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})
resources.ApplyResources(Me.RibbonControl, "RibbonControl") resources.ApplyResources(Me.RibbonControl, "RibbonControl")
Me.RibbonControl.MaxItemId = 62 Me.RibbonControl.MaxItemId = 61
Me.RibbonControl.Name = "RibbonControl" Me.RibbonControl.Name = "RibbonControl"
Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPageStart, Me.RibbonPage2}) 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}) Me.RibbonControl.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2, Me.RepositoryItemSearchControl1, Me.cmbGridFontSize})
@@ -531,13 +530,6 @@ Partial Class frmDocumentResultList
Me.lblCurrentWorkspace.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph Me.lblCurrentWorkspace.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
Me.lblCurrentWorkspace.Tag = "Arbeitsbereich: {0}" 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 '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}) 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})
@@ -555,7 +547,6 @@ Partial Class frmDocumentResultList
' '
Me.RibbonPageGroupExport.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far Me.RibbonPageGroupExport.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
Me.RibbonPageGroupExport.ItemLinks.Add(Me.BarButtonItemExportGrid1) Me.RibbonPageGroupExport.ItemLinks.Add(Me.BarButtonItemExportGrid1)
Me.RibbonPageGroupExport.ItemLinks.Add(Me.BarButtonItem6)
Me.RibbonPageGroupExport.Name = "RibbonPageGroupExport" Me.RibbonPageGroupExport.Name = "RibbonPageGroupExport"
resources.ApplyResources(Me.RibbonPageGroupExport, "RibbonPageGroupExport") resources.ApplyResources(Me.RibbonPageGroupExport, "RibbonPageGroupExport")
' '
@@ -753,7 +744,6 @@ Partial Class frmDocumentResultList
resources.ApplyResources(Me.DocumentViewer1, "DocumentViewer1") resources.ApplyResources(Me.DocumentViewer1, "DocumentViewer1")
Me.DocumentViewer1.FileLoaded = False Me.DocumentViewer1.FileLoaded = False
Me.DocumentViewer1.Name = "DocumentViewer1" Me.DocumentViewer1.Name = "DocumentViewer1"
Me.DocumentViewer1.Viewer_ForceTemporaryMode = False
' '
'XtraSaveFileDialog 'XtraSaveFileDialog
' '
@@ -887,7 +877,7 @@ Partial Class frmDocumentResultList
Me.LayoutControlItem1.Name = "LayoutControlItem1" Me.LayoutControlItem1.Name = "LayoutControlItem1"
Me.LayoutControlItem1.Size = New System.Drawing.Size(224, 24) Me.LayoutControlItem1.Size = New System.Drawing.Size(224, 24)
resources.ApplyResources(Me.LayoutControlItem1, "LayoutControlItem1") resources.ApplyResources(Me.LayoutControlItem1, "LayoutControlItem1")
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(124, 13) Me.LayoutControlItem1.TextSize = New System.Drawing.Size(126, 13)
' '
'LayoutControlItem2 'LayoutControlItem2
' '
@@ -896,7 +886,7 @@ Partial Class frmDocumentResultList
Me.LayoutControlItem2.Name = "LayoutControlItem2" Me.LayoutControlItem2.Name = "LayoutControlItem2"
Me.LayoutControlItem2.Size = New System.Drawing.Size(224, 24) Me.LayoutControlItem2.Size = New System.Drawing.Size(224, 24)
resources.ApplyResources(Me.LayoutControlItem2, "LayoutControlItem2") resources.ApplyResources(Me.LayoutControlItem2, "LayoutControlItem2")
Me.LayoutControlItem2.TextSize = New System.Drawing.Size(124, 13) Me.LayoutControlItem2.TextSize = New System.Drawing.Size(126, 13)
' '
'EmptySpaceItem1 'EmptySpaceItem1
' '
@@ -927,9 +917,9 @@ Partial Class frmDocumentResultList
Me.AllowFormGlass = DevExpress.Utils.DefaultBoolean.[True] Me.AllowFormGlass = DevExpress.Utils.DefaultBoolean.[True]
resources.ApplyResources(Me, "$this") resources.ApplyResources(Me, "$this")
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.Controls.Add(Me.DockPanelFileList)
Me.Controls.Add(Me.DockPanelPreview) Me.Controls.Add(Me.DockPanelPreview)
Me.Controls.Add(Me.panelContainerStatus) Me.Controls.Add(Me.panelContainerStatus)
Me.Controls.Add(Me.DockPanelFileList)
Me.Controls.Add(Me.RibbonStatusBar) Me.Controls.Add(Me.RibbonStatusBar)
Me.Controls.Add(Me.RibbonControl) Me.Controls.Add(Me.RibbonControl)
Me.IconOptions.Icon = CType(resources.GetObject("frmDocumentResultList.IconOptions.Icon"), System.Drawing.Icon) Me.IconOptions.Icon = CType(resources.GetObject("frmDocumentResultList.IconOptions.Icon"), System.Drawing.Icon)
@@ -1080,5 +1070,4 @@ Partial Class frmDocumentResultList
Friend WithEvents btnSaveAsMySearch As DevExpress.XtraBars.BarButtonItem Friend WithEvents btnSaveAsMySearch As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroupSavedSearch As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents RibbonPageGroupSavedSearch As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents lblCurrentWorkspace As DevExpress.XtraBars.BarStaticItem Friend WithEvents lblCurrentWorkspace As DevExpress.XtraBars.BarStaticItem
Friend WithEvents BarButtonItem6 As DevExpress.XtraBars.BarButtonItem
End Class End Class

View File

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

View File

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

View File

@@ -82,7 +82,7 @@ Public Class GridBuilder
ToList() ToList()
For Each oDateCol In oDateColumns For Each oDateCol In oDateColumns
SetDateTimeColumn(oDateCol, "g") SetDateTimeColumn(oDateCol)
Next Next
End Sub End Sub
@@ -96,61 +96,19 @@ Public Class GridBuilder
ToList() ToList()
For Each oDateCol In oDateColumns For Each oDateCol In oDateColumns
SetDateTimeColumn(oDateCol, "g") SetDateTimeColumn(oDateCol)
Next Next
End Sub End Sub
''' <summary> Private Sub SetDateTimeColumn(pColumn As GridColumn)
''' 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.FormatType = FormatType.Custom
pColumn.DisplayFormat.FormatString = pFormatString pColumn.DisplayFormat.FormatString = "g"
pColumn.DisplayFormat.Format = DateTimeFormatInfo.CurrentInfo pColumn.DisplayFormat.Format = DateTimeFormatInfo.CurrentInfo
End Sub End Sub
Private Sub SetDateTimeColumn(pColumn As TreeListColumn, pFormatString As String) Private Sub SetDateTimeColumn(pColumn As TreeListColumn)
If String.IsNullOrEmpty(pFormatString) Then
pFormatString = "g"
End If
pColumn.Format.FormatType = FormatType.Custom pColumn.Format.FormatType = FormatType.Custom
pColumn.Format.FormatString = pFormatString pColumn.Format.FormatString = "g"
pColumn.Format.Format = DateTimeFormatInfo.CurrentInfo pColumn.Format.Format = DateTimeFormatInfo.CurrentInfo
End Sub End Sub

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -6,8 +6,8 @@
<package id="EntityFramework" version="6.4.4" targetFramework="net462" /> <package id="EntityFramework" version="6.4.4" targetFramework="net462" />
<package id="EntityFramework.Firebird" version="6.4.0" targetFramework="net462" /> <package id="EntityFramework.Firebird" version="6.4.0" targetFramework="net462" />
<package id="FirebirdSql.Data.FirebirdClient" version="7.5.0" targetFramework="net462" /> <package id="FirebirdSql.Data.FirebirdClient" version="7.5.0" targetFramework="net462" />
<package id="GdPicture" version="14.3.3" targetFramework="net462" /> <package id="GdPicture" version="14.3.19" targetFramework="net462" />
<package id="GdPicture.runtimes.windows" version="14.3.3" targetFramework="net462" /> <package id="GdPicture.runtimes.windows" version="14.3.19" targetFramework="net462" />
<package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net462" /> <package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net462" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="9.0.0" targetFramework="net462" /> <package id="Microsoft.Bcl.AsyncInterfaces" version="9.0.0" targetFramework="net462" />
<package id="Microsoft.Bcl.Cryptography" 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="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"> <Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath> <HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference> </Reference>
<Reference Include="Microsoft.CSharp" /> <Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL"> <Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

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

View File

@@ -54,46 +54,6 @@
<assemblyIdentity name="FirebirdSql.Data.FirebirdClient" publicKeyToken="3750abcc3150b00c" culture="neutral" /> <assemblyIdentity name="FirebirdSql.Data.FirebirdClient" publicKeyToken="3750abcc3150b00c" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.5.0.0" newVersion="7.5.0.0" /> <bindingRedirect oldVersion="0.0.0.0-7.5.0.0" newVersion="7.5.0.0" />
</dependentAssembly> </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> </assemblyBinding>
</runtime> </runtime>
</configuration> </configuration>

View File

@@ -14,8 +14,6 @@
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion> <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic> <Deterministic>true</Deterministic>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
@@ -50,9 +48,6 @@
<OptionInfer>On</OptionInfer> <OptionInfer>On</OptionInfer>
</PropertyGroup> </PropertyGroup>
<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="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" /> <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.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" /> <Reference Include="DevExpress.Sparkline.v21.2.Core, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
@@ -69,120 +64,23 @@
</Reference> </Reference>
<Reference Include="DigitalData.Modules.EDMI.API, Version=1.5.4.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.EDMI.API, Version=1.5.4.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath> <HintPath>..\..\Modules\EDMIAPI\bin\Debug\DigitalData.Modules.EDMI.API.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath> <HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference> </Reference>
<Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14">
<HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath> <HintPath>D:\ProgramFiles\GdPicture.NET 14\Redist\GdPicture.NET (.NET Framework 4.5)\GdPicture.NET.14.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>
<Reference Include="Independentsoft.Msg"> <Reference Include="Independentsoft.Msg">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\MSG .NET\Bin\22_11_19\Independentsoft.Msg.dll</HintPath> <HintPath>P:\Visual Studio Projekte\Bibliotheken\MSG .NET\Bin\22_11_19\Independentsoft.Msg.dll</HintPath>
</Reference> </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="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"> <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> <HintPath>..\packages\NLog.4.7.10\lib\net45\NLog.dll</HintPath>
</Reference> </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" />
<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.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" /> <Reference Include="System.Configuration" />
<Reference Include="System.Data" /> <Reference Include="System.Data" />
@@ -190,49 +88,15 @@
<Reference Include="System.Deployment" /> <Reference Include="System.Deployment" />
<Reference Include="System.Drawing" /> <Reference Include="System.Drawing" />
<Reference Include="System.IO.Compression" /> <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.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.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.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.Windows.Forms" />
<Reference Include="System.Xml" /> <Reference Include="System.Xml" />
<Reference Include="System.Core" /> <Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" /> <Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" /> <Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" /> <Reference Include="System.Net.Http" />
<Reference Include="WindowsBase" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Import Include="Microsoft.VisualBasic" /> <Import Include="Microsoft.VisualBasic" />
@@ -297,11 +161,4 @@
<None Include="packages.config" /> <None Include="packages.config" />
</ItemGroup> </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> <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> </Project>

View File

@@ -1,32 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <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="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> </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="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"> <Reference Include="DigitalData.Modules.Config, Version=1.1.4.1, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath> <HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Database, Version=2.2.7.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath> <HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Interfaces, Version=1.7.1.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Interfaces, Version=1.7.1.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath> <HintPath>..\..\Modules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Logging, Version=2.5.4.2, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath> <HintPath>..\..\Modules\Config\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Patterns"> <Reference Include="DigitalData.Modules.Patterns">
<HintPath>..\..\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath> <HintPath>..\..\Modules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
</Reference> </Reference>
<Reference Include="Microsoft.CSharp" /> <Reference Include="Microsoft.CSharp" />
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">

View File

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

View File

@@ -24,6 +24,7 @@ Partial Class Form1
'Das Bearbeiten mit dem Code-Editor ist nicht möglich. 'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
<System.Diagnostics.DebuggerStepThrough()> <System.Diagnostics.DebuggerStepThrough()>
Private Sub InitializeComponent() Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Form1))
OpenFileDialog1 = New OpenFileDialog() OpenFileDialog1 = New OpenFileDialog()
btRunJob = New Button() btRunJob = New Button()
ListBox1 = New ListBox() ListBox1 = New ListBox()
@@ -43,7 +44,8 @@ Partial Class Form1
GroupBox5 = New GroupBox() GroupBox5 = New GroupBox()
btWriteBinary = New Button() btWriteBinary = New Button()
OpenFileDialog2 = New OpenFileDialog() OpenFileDialog2 = New OpenFileDialog()
Button1 = New Button()
Button2 = New Button()
GroupBox1.SuspendLayout() GroupBox1.SuspendLayout()
GroupBox2.SuspendLayout() GroupBox2.SuspendLayout()
GroupBox3.SuspendLayout() GroupBox3.SuspendLayout()
@@ -57,10 +59,10 @@ Partial Class Form1
' '
' btRunJob ' btRunJob
' '
btRunJob.Location = New System.Drawing.Point(8, 29) btRunJob.Location = New System.Drawing.Point(7, 22)
btRunJob.Margin = New Padding(4, 5, 4, 5) btRunJob.Margin = New Padding(4, 4, 4, 4)
btRunJob.Name = "btRunJob" btRunJob.Name = "btRunJob"
btRunJob.Size = New System.Drawing.Size(295, 35) btRunJob.Size = New System.Drawing.Size(258, 26)
btRunJob.TabIndex = 0 btRunJob.TabIndex = 0
btRunJob.Text = "Run Job" btRunJob.Text = "Run Job"
btRunJob.UseVisualStyleBackColor = True btRunJob.UseVisualStyleBackColor = True
@@ -69,38 +71,39 @@ Partial Class Form1
' '
ListBox1.Anchor = AnchorStyles.Top Or AnchorStyles.Bottom Or AnchorStyles.Left Or AnchorStyles.Right ListBox1.Anchor = AnchorStyles.Top Or AnchorStyles.Bottom Or AnchorStyles.Left Or AnchorStyles.Right
ListBox1.FormattingEnabled = True ListBox1.FormattingEnabled = True
ListBox1.Location = New System.Drawing.Point(504, 12) ListBox1.ItemHeight = 15
ListBox1.Margin = New Padding(4, 5, 4, 5) ListBox1.Location = New System.Drawing.Point(441, 9)
ListBox1.Margin = New Padding(4, 4, 4, 4)
ListBox1.Name = "ListBox1" ListBox1.Name = "ListBox1"
ListBox1.Size = New System.Drawing.Size(362, 664) ListBox1.Size = New System.Drawing.Size(317, 499)
ListBox1.TabIndex = 1 ListBox1.TabIndex = 1
' '
' btValidateSerializePDF ' btValidateSerializePDF
' '
btValidateSerializePDF.Location = New System.Drawing.Point(8, 29) btValidateSerializePDF.Location = New System.Drawing.Point(7, 22)
btValidateSerializePDF.Margin = New Padding(4, 5, 4, 5) btValidateSerializePDF.Margin = New Padding(4, 4, 4, 4)
btValidateSerializePDF.Name = "btValidateSerializePDF" btValidateSerializePDF.Name = "btValidateSerializePDF"
btValidateSerializePDF.Size = New System.Drawing.Size(328, 35) btValidateSerializePDF.Size = New System.Drawing.Size(287, 26)
btValidateSerializePDF.TabIndex = 2 btValidateSerializePDF.TabIndex = 2
btValidateSerializePDF.Text = "Validate and Serialize PDF" btValidateSerializePDF.Text = "Validate and Serialize PDF"
btValidateSerializePDF.UseVisualStyleBackColor = True btValidateSerializePDF.UseVisualStyleBackColor = True
' '
' btValidateSerializeParseProps ' btValidateSerializeParseProps
' '
btValidateSerializeParseProps.Location = New System.Drawing.Point(8, 74) btValidateSerializeParseProps.Location = New System.Drawing.Point(7, 56)
btValidateSerializeParseProps.Margin = New Padding(4, 5, 4, 5) btValidateSerializeParseProps.Margin = New Padding(4, 4, 4, 4)
btValidateSerializeParseProps.Name = "btValidateSerializeParseProps" btValidateSerializeParseProps.Name = "btValidateSerializeParseProps"
btValidateSerializeParseProps.Size = New System.Drawing.Size(328, 35) btValidateSerializeParseProps.Size = New System.Drawing.Size(287, 26)
btValidateSerializeParseProps.TabIndex = 3 btValidateSerializeParseProps.TabIndex = 3
btValidateSerializeParseProps.Text = "Validate and Serialize PDF and Parse Props" btValidateSerializeParseProps.Text = "Validate and Serialize PDF and Parse Props"
btValidateSerializeParseProps.UseVisualStyleBackColor = True btValidateSerializeParseProps.UseVisualStyleBackColor = True
' '
' btCreateMD5Checksum ' btCreateMD5Checksum
' '
btCreateMD5Checksum.Location = New System.Drawing.Point(8, 29) btCreateMD5Checksum.Location = New System.Drawing.Point(7, 22)
btCreateMD5Checksum.Margin = New Padding(4, 5, 4, 5) btCreateMD5Checksum.Margin = New Padding(4, 4, 4, 4)
btCreateMD5Checksum.Name = "btCreateMD5Checksum" btCreateMD5Checksum.Name = "btCreateMD5Checksum"
btCreateMD5Checksum.Size = New System.Drawing.Size(295, 35) btCreateMD5Checksum.Size = New System.Drawing.Size(258, 26)
btCreateMD5Checksum.TabIndex = 4 btCreateMD5Checksum.TabIndex = 4
btCreateMD5Checksum.Text = "Create MD5 Checksum for PDF" btCreateMD5Checksum.Text = "Create MD5 Checksum for PDF"
btCreateMD5Checksum.UseVisualStyleBackColor = True btCreateMD5Checksum.UseVisualStyleBackColor = True
@@ -109,21 +112,21 @@ Partial Class Form1
' '
GroupBox1.Controls.Add(ButtonValidateXMLOnly) GroupBox1.Controls.Add(ButtonValidateXMLOnly)
GroupBox1.Controls.Add(btRunJob) GroupBox1.Controls.Add(btRunJob)
GroupBox1.Location = New System.Drawing.Point(16, 18) GroupBox1.Location = New System.Drawing.Point(14, 14)
GroupBox1.Margin = New Padding(4, 5, 4, 5) GroupBox1.Margin = New Padding(4, 4, 4, 4)
GroupBox1.Name = "GroupBox1" GroupBox1.Name = "GroupBox1"
GroupBox1.Padding = New Padding(4, 5, 4, 5) GroupBox1.Padding = New Padding(4, 4, 4, 4)
GroupBox1.Size = New System.Drawing.Size(319, 116) GroupBox1.Size = New System.Drawing.Size(279, 87)
GroupBox1.TabIndex = 7 GroupBox1.TabIndex = 7
GroupBox1.TabStop = False GroupBox1.TabStop = False
GroupBox1.Text = "Run Job like in eInvoice Service" GroupBox1.Text = "Run Job like in eInvoice Service"
' '
' ButtonValidateXMLOnly ' ButtonValidateXMLOnly
' '
ButtonValidateXMLOnly.Location = New System.Drawing.Point(8, 74) ButtonValidateXMLOnly.Location = New System.Drawing.Point(7, 56)
ButtonValidateXMLOnly.Margin = New Padding(4, 5, 4, 5) ButtonValidateXMLOnly.Margin = New Padding(4, 4, 4, 4)
ButtonValidateXMLOnly.Name = "ButtonValidateXMLOnly" ButtonValidateXMLOnly.Name = "ButtonValidateXMLOnly"
ButtonValidateXMLOnly.Size = New System.Drawing.Size(295, 35) ButtonValidateXMLOnly.Size = New System.Drawing.Size(258, 26)
ButtonValidateXMLOnly.TabIndex = 4 ButtonValidateXMLOnly.TabIndex = 4
ButtonValidateXMLOnly.Text = "Run XML Job (spez. Configuration)" ButtonValidateXMLOnly.Text = "Run XML Job (spez. Configuration)"
ButtonValidateXMLOnly.UseVisualStyleBackColor = True ButtonValidateXMLOnly.UseVisualStyleBackColor = True
@@ -133,21 +136,21 @@ Partial Class Form1
GroupBox2.Controls.Add(btValidateSerializePDF) GroupBox2.Controls.Add(btValidateSerializePDF)
GroupBox2.Controls.Add(btExtractPDFAttachments) GroupBox2.Controls.Add(btExtractPDFAttachments)
GroupBox2.Controls.Add(btValidateSerializeParseProps) GroupBox2.Controls.Add(btValidateSerializeParseProps)
GroupBox2.Location = New System.Drawing.Point(16, 144) GroupBox2.Location = New System.Drawing.Point(14, 108)
GroupBox2.Margin = New Padding(4, 5, 4, 5) GroupBox2.Margin = New Padding(4, 4, 4, 4)
GroupBox2.Name = "GroupBox2" GroupBox2.Name = "GroupBox2"
GroupBox2.Padding = New Padding(4, 5, 4, 5) GroupBox2.Padding = New Padding(4, 4, 4, 4)
GroupBox2.Size = New System.Drawing.Size(480, 167) GroupBox2.Size = New System.Drawing.Size(420, 125)
GroupBox2.TabIndex = 8 GroupBox2.TabIndex = 8
GroupBox2.TabStop = False GroupBox2.TabStop = False
GroupBox2.Text = "Run Functions on a single file (needs Breakpoint)" GroupBox2.Text = "Run Functions on a single file (needs Breakpoint)"
' '
' btExtractPDFAttachments ' btExtractPDFAttachments
' '
btExtractPDFAttachments.Location = New System.Drawing.Point(8, 118) btExtractPDFAttachments.Location = New System.Drawing.Point(7, 88)
btExtractPDFAttachments.Margin = New Padding(4, 5, 4, 5) btExtractPDFAttachments.Margin = New Padding(4, 4, 4, 4)
btExtractPDFAttachments.Name = "btExtractPDFAttachments" btExtractPDFAttachments.Name = "btExtractPDFAttachments"
btExtractPDFAttachments.Size = New System.Drawing.Size(328, 35) btExtractPDFAttachments.Size = New System.Drawing.Size(287, 26)
btExtractPDFAttachments.TabIndex = 3 btExtractPDFAttachments.TabIndex = 3
btExtractPDFAttachments.Text = "Extract PDF Attachments" btExtractPDFAttachments.Text = "Extract PDF Attachments"
btExtractPDFAttachments.UseVisualStyleBackColor = True btExtractPDFAttachments.UseVisualStyleBackColor = True
@@ -156,50 +159,50 @@ Partial Class Form1
' '
GroupBox3.Controls.Add(btCreateMD5Checksum) GroupBox3.Controls.Add(btCreateMD5Checksum)
GroupBox3.Controls.Add(txtMD5Checksum) GroupBox3.Controls.Add(txtMD5Checksum)
GroupBox3.Location = New System.Drawing.Point(16, 321) GroupBox3.Location = New System.Drawing.Point(14, 241)
GroupBox3.Margin = New Padding(4, 5, 4, 5) GroupBox3.Margin = New Padding(4, 4, 4, 4)
GroupBox3.Name = "GroupBox3" GroupBox3.Name = "GroupBox3"
GroupBox3.Padding = New Padding(4, 5, 4, 5) GroupBox3.Padding = New Padding(4, 4, 4, 4)
GroupBox3.Size = New System.Drawing.Size(480, 131) GroupBox3.Size = New System.Drawing.Size(420, 98)
GroupBox3.TabIndex = 9 GroupBox3.TabIndex = 9
GroupBox3.TabStop = False GroupBox3.TabStop = False
GroupBox3.Text = "Open PDF and calculate Checksum" GroupBox3.Text = "Open PDF and calculate Checksum"
' '
' txtMD5Checksum ' txtMD5Checksum
' '
txtMD5Checksum.Location = New System.Drawing.Point(8, 75) txtMD5Checksum.Location = New System.Drawing.Point(7, 56)
txtMD5Checksum.Margin = New Padding(4, 5, 4, 5) txtMD5Checksum.Margin = New Padding(4, 4, 4, 4)
txtMD5Checksum.Name = "txtMD5Checksum" txtMD5Checksum.Name = "txtMD5Checksum"
txtMD5Checksum.Size = New System.Drawing.Size(463, 27) txtMD5Checksum.Size = New System.Drawing.Size(406, 23)
txtMD5Checksum.TabIndex = 5 txtMD5Checksum.TabIndex = 5
' '
' txtPropName ' txtPropName
' '
txtPropName.Location = New System.Drawing.Point(8, 74) txtPropName.Location = New System.Drawing.Point(7, 56)
txtPropName.Margin = New Padding(4, 5, 4, 5) txtPropName.Margin = New Padding(4, 4, 4, 4)
txtPropName.Name = "txtPropName" txtPropName.Name = "txtPropName"
txtPropName.Size = New System.Drawing.Size(463, 27) txtPropName.Size = New System.Drawing.Size(406, 23)
txtPropName.TabIndex = 10 txtPropName.TabIndex = 10
' '
' GroupBox4 ' GroupBox4
' '
GroupBox4.Controls.Add(btFindExtractXMLValue) GroupBox4.Controls.Add(btFindExtractXMLValue)
GroupBox4.Controls.Add(txtPropName) GroupBox4.Controls.Add(txtPropName)
GroupBox4.Location = New System.Drawing.Point(16, 462) GroupBox4.Location = New System.Drawing.Point(14, 346)
GroupBox4.Margin = New Padding(4, 5, 4, 5) GroupBox4.Margin = New Padding(4, 4, 4, 4)
GroupBox4.Name = "GroupBox4" GroupBox4.Name = "GroupBox4"
GroupBox4.Padding = New Padding(4, 5, 4, 5) GroupBox4.Padding = New Padding(4, 4, 4, 4)
GroupBox4.Size = New System.Drawing.Size(480, 117) GroupBox4.Size = New System.Drawing.Size(420, 88)
GroupBox4.TabIndex = 11 GroupBox4.TabIndex = 11
GroupBox4.TabStop = False GroupBox4.TabStop = False
GroupBox4.Text = "GroupBox4" GroupBox4.Text = "GroupBox4"
' '
' btFindExtractXMLValue ' btFindExtractXMLValue
' '
btFindExtractXMLValue.Location = New System.Drawing.Point(8, 29) btFindExtractXMLValue.Location = New System.Drawing.Point(7, 22)
btFindExtractXMLValue.Margin = New Padding(4, 5, 4, 5) btFindExtractXMLValue.Margin = New Padding(4, 4, 4, 4)
btFindExtractXMLValue.Name = "btFindExtractXMLValue" btFindExtractXMLValue.Name = "btFindExtractXMLValue"
btFindExtractXMLValue.Size = New System.Drawing.Size(295, 35) btFindExtractXMLValue.Size = New System.Drawing.Size(258, 26)
btFindExtractXMLValue.TabIndex = 11 btFindExtractXMLValue.TabIndex = 11
btFindExtractXMLValue.Text = "Find and Extract XML Path Value" btFindExtractXMLValue.Text = "Find and Extract XML Path Value"
btFindExtractXMLValue.UseVisualStyleBackColor = True btFindExtractXMLValue.UseVisualStyleBackColor = True
@@ -207,21 +210,21 @@ Partial Class Form1
' GroupBox5 ' GroupBox5
' '
GroupBox5.Controls.Add(btWriteBinary) GroupBox5.Controls.Add(btWriteBinary)
GroupBox5.Location = New System.Drawing.Point(13, 589) GroupBox5.Location = New System.Drawing.Point(11, 442)
GroupBox5.Margin = New Padding(4, 5, 4, 5) GroupBox5.Margin = New Padding(4, 4, 4, 4)
GroupBox5.Name = "GroupBox5" GroupBox5.Name = "GroupBox5"
GroupBox5.Padding = New Padding(4, 5, 4, 5) GroupBox5.Padding = New Padding(4, 4, 4, 4)
GroupBox5.Size = New System.Drawing.Size(480, 87) GroupBox5.Size = New System.Drawing.Size(420, 65)
GroupBox5.TabIndex = 12 GroupBox5.TabIndex = 12
GroupBox5.TabStop = False GroupBox5.TabStop = False
GroupBox5.Text = "GroupBox5" GroupBox5.Text = "GroupBox5"
' '
' btWriteBinary ' btWriteBinary
' '
btWriteBinary.Location = New System.Drawing.Point(8, 29) btWriteBinary.Location = New System.Drawing.Point(7, 22)
btWriteBinary.Margin = New Padding(4, 5, 4, 5) btWriteBinary.Margin = New Padding(4, 4, 4, 4)
btWriteBinary.Name = "btWriteBinary" btWriteBinary.Name = "btWriteBinary"
btWriteBinary.Size = New System.Drawing.Size(295, 35) btWriteBinary.Size = New System.Drawing.Size(258, 26)
btWriteBinary.TabIndex = 11 btWriteBinary.TabIndex = 11
btWriteBinary.Text = "Write Binary to PDF" btWriteBinary.Text = "Write Binary to PDF"
btWriteBinary.UseVisualStyleBackColor = True btWriteBinary.UseVisualStyleBackColor = True
@@ -230,21 +233,42 @@ Partial Class Form1
' '
OpenFileDialog2.FileName = "OpenFileDialog2" OpenFileDialog2.FileName = "OpenFileDialog2"
OpenFileDialog2.Filter = "XML files (*.xml)|*.xml" OpenFileDialog2.Filter = "XML files (*.xml)|*.xml"
'
' Button1
'
Button1.Location = New System.Drawing.Point(316, 35)
Button1.Margin = New Padding(3, 2, 3, 2)
Button1.Name = "Button1"
Button1.Size = New System.Drawing.Size(82, 22)
Button1.TabIndex = 5
Button1.Text = "Log Folder"
Button1.UseVisualStyleBackColor = True
'
' Button2
'
Button2.Location = New System.Drawing.Point(316, 62)
Button2.Margin = New Padding(3, 2, 3, 2)
Button2.Name = "Button2"
Button2.Size = New System.Drawing.Size(82, 22)
Button2.TabIndex = 13
Button2.Text = "AppFolder"
Button2.UseVisualStyleBackColor = True
' '
' Form1 ' Form1
' '
AutoScaleDimensions = New System.Drawing.SizeF(8.0F, 20.0F) AutoScaleDimensions = New System.Drawing.SizeF(7F, 15F)
AutoScaleMode = AutoScaleMode.Font AutoScaleMode = AutoScaleMode.Font
ClientSize = New System.Drawing.Size(879, 690) ClientSize = New System.Drawing.Size(769, 518)
Controls.Add(Button2)
Controls.Add(Button1)
Controls.Add(GroupBox5) Controls.Add(GroupBox5)
Controls.Add(GroupBox4) Controls.Add(GroupBox4)
Controls.Add(GroupBox3) Controls.Add(GroupBox3)
Controls.Add(GroupBox2) Controls.Add(GroupBox2)
Controls.Add(GroupBox1) Controls.Add(GroupBox1)
Controls.Add(ListBox1) Controls.Add(ListBox1)
Margin = New Padding(4, 5, 4, 5) Icon = CType(resources.GetObject("$this.Icon"), Drawing.Icon)
Margin = New Padding(4, 4, 4, 4)
Name = "Form1" Name = "Form1"
Text = "E-Invoice-TEST-Tool" Text = "E-Invoice-TEST-Tool"
GroupBox1.ResumeLayout(False) GroupBox1.ResumeLayout(False)
@@ -277,4 +301,6 @@ Partial Class Form1
Friend WithEvents btWriteBinary As Button Friend WithEvents btWriteBinary As Button
Friend WithEvents ButtonValidateXMLOnly As Button Friend WithEvents ButtonValidateXMLOnly As Button
Friend WithEvents OpenFileDialog2 As OpenFileDialog Friend WithEvents OpenFileDialog2 As OpenFileDialog
Friend WithEvents Button1 As Button
Friend WithEvents Button2 As Button
End Class End Class

View File

@@ -129,4 +129,480 @@
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>25</value> <value>25</value>
</metadata> </metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAwAEBAQAAEABAAoAQAAxgAAABAQAAABAAgAaAUAAO4BAAAQEAAAAQAgAGgEAABWBwAAICAQAAEA
BADoAgAAvgsAACAgAAABAAgAqAgAAKYOAAAgIAAAAQAgAKgQAABOFwAAMDAQAAEABABoBgAA9icAADAw
AAABAAgAqA4AAF4uAAAwMAAAAQAgAKglAAAGPQAAAAAQAAEABADbAwAArmIAAAAAAAABAAgA3QMAAIlm
AAAAAAAAAQAgAN0DAABmagAAKAAAABAAAAAgAAAAAQAEAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAIAAAIAAAACAgACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP//
/wD///////////d3d3f3d3d/93d3d/d3d3/3d3d393d3f/d3/////3d/93f3d3d/d3/3d/d3d393f/d3
93d3f///93f3d3d/d3/3d/d3d393f/d393d3f/d/93f/////93/3d3d/d//3f/d3d393d3d/93d3f3d3
d3///////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAoAAAAEAAAACAAAAABAAgAAAAAAAABAAAAAAAAAAAAAAABAAAAAQAAAAAAAEJC
QgD29vYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAIC
AgICAgICAgICAgICAgICAQEBAQEBAQIBAQEBAQECAgEBAQEBAQECAQEBAQEBAgIBAQEBAQEBAgEBAQEB
AQICAQEBAgICAgICAgIBAQECAgEBAQIBAQEBAQECAQEBAgIBAQECAQEBAQEBAgEBAQICAQEBAgEBAQEB
AQICAgICAgEBAQIBAQEBAQECAQEBAgIBAQECAQEBAQEBAgEBAQICAQEBAgEBAQEBAQICAQECAgEBAQIC
AgICAgICAgEBAgIBAQEBAQECAQECAgIBAQICAQEBAQEBAgEBAQEBAQECAgEBAQEBAQIBAQEBAQEBAgIC
AgICAgICAgICAgICAgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAKAAAABAAAAAgAAAAAQAgAAAAAABABAAAAAAAAAAAAAAAAAAAAAAAAPb2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC//b29v/29vb/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv/29vb/9vb2/0JCQv9CQkL/QkJC//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/QkJC/0JCQv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv/29vb/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/9vb2/0JCQv9CQkL/QkJC//b29v/29vb/QkJC/0JCQv9CQkL/9vb2/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC//b29v/29vb/9vb2//b29v/29vb/9vb2/0JCQv9CQkL/QkJC//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/QkJC/0JCQv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv/29vb/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/9vb2/0JCQv9CQkL/QkJC//b29v/29vb/QkJC/0JCQv9CQkL/9vb2/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/QkJC/0JCQv/29vb/9vb2/0JCQv9CQkL/QkJC//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2/0JCQv9CQkL/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC//b29v/29vb/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAKAAAACAAAABAAAAAAQAEAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACA
gACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP///wD/////////////
//////////////////////////////93d3d3d3d/93d3d3d3d///d3d3d3d3f/d3d3d3d3f//3d3d3d3
d3/3d3d3d3d3//93d3d3d3d/93d3d3d3d///d3d3d3d3f/d3d3d3d3f//3d3d3d3d3/3d3d3d3d3//93
d3f//////////3d3d///d3d3//////////93d3f//3d3d/93d3d3d3f/d3d3//93d3f/d3d3d3d3/3d3
d///d3d3/3d3d3d3d/93d3f//3d3d/93d3d3d3f/d3d3//93d3f/d3d3d3d3/3d3d///d3d3/3d3d3d3
d////////3d3d/93d3d3d3f///////93d3f/d3d3d3d3/3d3d///d3d3/3d3d3d3d/93d3f//3d3d/93
d3d3d3f/d3d3//93d3f/d3d3d3d3/3d3d///d3d3/3d3d3d3d///d3f//3d3d////////////3d3//93
d3f///////////93d///d3d3d3d3f/d3f///d3f//3d3d3d3d3/3d3///3d3//93d3d3d3d/93d3d3d3
d///d3d3d3d3f/d3d3d3d3f//3d3d3d3d3/3d3d3d3d3//93d3d3d3d/93d3d3d3d///////////////
/////////////////////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAACAAAABAAAAAAQAIAAAAAAAABAAAAAAAAAAA
AAAAAQAAAAEAAAAAAABCQkIA9vb2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAP///wACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICAgICAgICAgIBAQEBAQEBAQEBAQEBAgIBAQEBAQEBAQEBAQEBAgICAgEBAQEBAQEB
AQEBAQECAgEBAQEBAQEBAQEBAQECAgICAQEBAQEBAQEBAQEBAQICAQEBAQEBAQEBAQEBAQICAgIBAQEB
AQEBAQEBAQEBAgIBAQEBAQEBAQEBAQEBAgICAgEBAQEBAQEBAQEBAQECAgEBAQEBAQEBAQEBAQECAgIC
AQEBAQEBAQEBAQEBAQICAQEBAQEBAQEBAQEBAQICAgIBAQEBAQECAgICAgICAgICAgICAgICAQEBAQEB
AgICAgEBAQEBAQICAgICAgICAgICAgICAgIBAQEBAQECAgICAQEBAQEBAgIBAQEBAQEBAQEBAQECAgEB
AQEBAQICAgIBAQEBAQECAgEBAQEBAQEBAQEBAQICAQEBAQEBAgICAgEBAQEBAQICAQEBAQEBAQEBAQEB
AgIBAQEBAQECAgICAQEBAQEBAgIBAQEBAQEBAQEBAQECAgEBAQEBAQICAgIBAQEBAQECAgEBAQEBAQEB
AQEBAQICAQEBAQEBAgICAgEBAQEBAQICAQEBAQEBAQEBAQEBAgICAgICAgICAgICAQEBAQEBAgIBAQEB
AQEBAQEBAQECAgICAgICAgICAgIBAQEBAQECAgEBAQEBAQEBAQEBAQICAQEBAQEBAgICAgEBAQEBAQIC
AQEBAQEBAQEBAQEBAgIBAQEBAQECAgICAQEBAQEBAgIBAQEBAQEBAQEBAQECAgEBAQEBAQICAgIBAQEB
AQECAgEBAQEBAQEBAQEBAQICAQEBAQEBAgICAgEBAQEBAQICAQEBAQEBAQEBAQEBAgICAgEBAQECAgIC
AQEBAQEBAgICAgICAgICAgICAgICAgICAQEBAQICAgIBAQEBAQECAgICAgICAgICAgICAgICAgIBAQEB
AgICAgEBAQEBAQEBAQEBAQECAgEBAQECAgICAgEBAQECAgICAQEBAQEBAQEBAQEBAQICAQEBAQICAgIC
AQEBAQICAgIBAQEBAQEBAQEBAQEBAgIBAQEBAQEBAQEBAQEBAgICAgEBAQEBAQEBAQEBAQECAgEBAQEB
AQEBAQEBAQECAgICAQEBAQEBAQEBAQEBAQICAQEBAQEBAQEBAQEBAQICAgIBAQEBAQEBAQEBAQEBAgIB
AQEBAQEBAQEBAQEBAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICAgICAgICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAA
AAAAAAAA9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b2
9v/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b2
9v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b2
9v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/9vb2//b2
9v/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/QkJC/0JC
Qv9CQkL/QkJC//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v/29vb/9vb2/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b2
9v/29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAAAABgAAAAAQAEAAAAAACABAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8A
AAD/AP8A//8AAP///wD/////////////////////////////////////////////////////////////
////////////////////////////////////93d3d3d3d3d3d3f/93d3d3d3d3d3f///93d3d3d3d3d3
d3f/93d3d3d3d3d3f///93d3d3d3d3d3d3f/93d3d3d3d3d3f///93d3d3d3d3d3d3f/93d3d3d3d3d3
f///93d3d3d3d3d3d3f/93d3d3d3d3d3f///93d3d3d3d3d3d3f/93d3d3d3d3d3f///93d3d3d3d3d3
d3f/93d3d3d3d3d3f///93d3d3d3d3d3d3f/93d3d3d3d3d3f///93d3d3d3d3d3d3f/93d3d3d3d3d3
f///93d3d3f///////////////93d3d3f///93d3d3f///////////////93d3d3f///93d3d3f/////
//////////93d3d3f///93d3d3f/93d3d3d3d3d3f/93d3d3f///93d3d3f/93d3d3d3d3d3f/93d3d3
f///93d3d3f/93d3d3d3d3d3f/93d3d3f///93d3d3f/93d3d3d3d3d3f/93d3d3f///93d3d3f/93d3
d3d3d3d3f/93d3d3f///93d3d3f/93d3d3d3d3d3f/93d3d3f///93d3d3f/93d3d3d3d3d3f///////
////93d3d3f/93d3d3d3d3d3f///////////93d3d3f/93d3d3d3d3d3f///////////93d3d3f/93d3
d3d3d3d3f/93d3d3f///93d3d3f/93d3d3d3d3d3f/93d3d3f///93d3d3f/93d3d3d3d3d3f/93d3d3
f///93d3d3f/93d3d3d3d3d3f/93d3d3f///93d3d3f/93d3d3d3d3d3f/93d3d3f///93d3d3f/93d3
d3d3d3d3f/93d3d3f///93d3d3f/93d3d3d3d3d3f///93d3f///93d3d3f/93d3d3d3d3d3f///93d3
f///93d3d3f/93d3d3d3d3d3f///93d3f///93d3d3f/////////////////93d3f///93d3d3f/////
////////////93d3f///93d3d3f/////////////////93d3f///93d3d3d3d3d3f/93d3f/////93d3
f///93d3d3d3d3d3f/93d3f/////93d3f///93d3d3d3d3d3f/93d3f/////93d3f///93d3d3d3d3d3
f/93d3d3d3d3d3d3f///93d3d3d3d3d3f/93d3d3d3d3d3d3f///93d3d3d3d3d3f/93d3d3d3d3d3d3
f///93d3d3d3d3d3f/93d3d3d3d3d3d3f///93d3d3d3d3d3f/93d3d3d3d3d3d3f///93d3d3d3d3d3
f/93d3d3d3d3d3d3f///////////////////////////////////////////////////////////////
//////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAMAAAAGAA
AAABAAgAAAAAAAAJAAAAAAAAAAAAAAABAAAAAQAAAAAAAEJCQgD29vYAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQEB
AQEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQIC
AgEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQEB
AQEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgIC
AgEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQEB
AQEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQIC
AgEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQEB
AQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgICAgICAgICAgICAgICAgICAgICAgEBAQEBAQEBAQICAgIC
AgEBAQEBAQEBAQICAgICAgICAgICAgICAgICAgICAgICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQIC
AgICAgICAgICAgICAgICAgICAgICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEB
AQEBAQEBAQICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEB
AQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQICAgIC
AgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQIC
AgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEB
AQEBAQEBAQICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgIC
AgICAgICAgICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgICAgICAgICAgIC
AgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgICAgICAgICAgICAgEBAQEBAQEBAQIC
AgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEB
AQEBAQEBAQICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEB
AQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQICAgIC
AgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQIC
AgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEB
AQEBAQEBAQICAgICAgEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgIC
AgEBAQEBAQICAgICAgEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQICAgIC
AgEBAQEBAQEBAQICAgICAgICAgICAgICAgICAgICAgICAgICAgEBAQEBAQICAgICAgEBAQEBAQEBAQIC
AgICAgICAgICAgICAgICAgICAgICAgICAgEBAQEBAQICAgICAgEBAQEBAQEBAQICAgICAgICAgICAgIC
AgICAgICAgICAgICAgEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQICAgICAgIC
AgEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQICAgICAgICAgEBAQEBAQICAgIC
AgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQICAgICAgICAgEBAQEBAQICAgICAgEBAQEBAQEBAQEB
AQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEB
AQEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEB
AQEBAQEBAQICAgICAgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgIC
AgEBAQEBAQEBAQEBAQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgEBAQEBAQEBAQEB
AQEBAQEBAQICAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAwAAAAYAAAAAEAIAAAAAAAgCUAAAAAAAAAAAAAAAAAAAAA
AAD29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v/29vb/9vb2//b2
9v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv/29vb/9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AACJUE5HDQoaCgAAAA1JSERSAAABAAAAAQAIBgAAAFxyqGYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAON
SURBVHic7d1BbgJBDADBEO2/R/PyzQ84ZIIc6Ko7yAKp5cNiHvd9319A0vf0AMAcAYAwAYAwAYAwAYAw
AYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYCw6/QN9t5/MQcvstY6er3v9387/X5tABAmABAmABAm
ABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAm
ABAmABAmABAmABAmABAmABAmABAmABB2TQ8Az6y1pkd4au89PcIRGwCECQCECQCECQCECQCECQCECQCE
CQCECQCECQCECQCECQCECQCECQCECQCE5e8B/Pffm0/z+Xw2GwCECQCECQCECQCECQCECQCECQCECQCE
CQCECQCECQCECQCECQCECQCECQCE5e8BnHr3/4d/d+4VnLEBQJgAQJgAQJgAQJgAQJgAQJgAQJjnAEir
P8dhA4AwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAw
AYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYCwa3oAmLTWmh5hlA0AwgQAwgQAwgQAwgQA
wgQAwgQAwgQAwgQAwgQAwgQAwgQAwgQAwgQAwgQAwtwDIG3vPT3CkdN7BjYACBMACBMACBMACBMACBMA
CBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMA
CBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACLumB3h3a63pEeDXbAAQJgAQJgAQ
JgAQJgAQJgAQJgAQJgAQJgAQJgAQJgAQJgAQJgAQJgAQJgAQlr8HsPeeHuGlTu8VfPrnU2cDgDABgDAB
gDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDAB
gDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDAB
gDABgDABgDABgDABgLDHfd/39BDADBsAhAkAhAkAhAkAhAkAhAkAhAkAhAkAhAkAhAkAhAkAhAkAhAkA
hAkAhAkAhP0AOIQlA0VHQvQAAAAASUVORK5CYIKJUE5HDQoaCgAAAA1JSERSAAABAAAAAQAIBgAAAFxy
qGYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOPSURBVHic7d1BbgJBDADBEPG8ee68ba/kBxwyiQx01R1k
gdTyYTG367oeX0DS9/QAwBwBgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgLD7
6Rustf5iDv7J3vvo9b7f13b6/doAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwA
IEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIOw+PQA8s/ee
HuGptdb0CEdsABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABAmABCWvwfw6r83
n+bz+Ww2AAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAjL3wM49e7/D//u
3Cs4YwOAMAGAMAGAMAGAMAGAMAGAMAGAMM8BkFZ/jsMGAGECAGECAGECAGECAGECAGECAGECAGECAGEC
AGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGECAGEC
AGECAGH36QFg0t57eoRRNgAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAI
cw+AtLXW9AhHTu8Z2AAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAg
TAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAg
TAAgTAAgTAAg7D49wLvbe0+PAL9mA4AwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAw
AYAwAYCw/D2Atdb0CP/q9F7Bp38+dTYACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMA
CBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMA
CBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACLtd1/WYHgKYYQOAMAGAMAGA
MAGAMAGAMAGAMAGAMAGAMAGAMAGAMAGAMAGAMAGAMAGAMAGAsB+06SYLLG5ISgAAAABJRU5ErkJggolQ
TkcNChoKAAAADUlIRFIAAAEAAAABAAgGAAAAXHKoZgAAAAlwSFlzAAAOwwAADsMBx2+oZAAAA49JREFU
eJzt3UFuAkEMAMEQ8bx57rxtr+QHHDKJDHTVHWSB1PJhMbfruh5fQNL39ADAHAGAMAGAMAGAMAGAMAGA
MAGAMAGAMAGAMAGAMAGAMAGAMAGAMAGAMAGAsPvpG6y1/mIO/sne++j1vt/Xdvr92gAgTAAgTAAgTAAg
TAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAg
TAAgTAAgTAAgTAAgTAAgTAAgTAAg7D49ADyz954e4am11vQIR2wAECYAECYAECYAECYAECYAECYAECYA
ECYAECYAECYAECYAECYAECYAECYAEJa/B/Dqvzef5vP5bDYACBMACBMACBMACBMACBMACBMACBMACBMA
CBMACBMACBMACBMACBMACBMACMvfAzj17v8P/+7cKzhjA4AwAYAwAYAwAYAwAYAwAYAwAYAwzwGQVn+O
wwYAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIA
YQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYQIAYffpAWDS3nt6hFE2AAgTAAgTAAgTAAgTAAgT
AAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAgTAAhzD4C0tdb0CEdO7xnYACBMACBMACBMACBMACBMACBM
ACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBM
ACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACBMACDsPj3Au9t7T48Av2YDgDABgDABgDAB
gDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgDABgLD8PYC11vQI/+r0XsGnfz51NgAIEwAIEwAI
EwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAI
EwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAIEwAI
EwAIEwAIEwAIEwAIu13X9ZgeAphhA4AwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAwAYAw
AYAwAYCwH7TpJgssbkhKAAAAAElFTkSuQmCC
</value>
</data>
</root> </root>

View File

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

View File

@@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<RootNamespace>ZUGFeRDTest</RootNamespace> <RootNamespace>ZUGFeRDTest</RootNamespace>
<TargetFramework>net462</TargetFramework> <TargetFramework>net8.0-windows</TargetFramework>
<OutputType>WinExe</OutputType> <OutputType>WinExe</OutputType>
<StartupObject>ZUGFeRDTest.My.MyApplication</StartupObject> <StartupObject>ZUGFeRDTest.My.MyApplication</StartupObject>
<MyType>WindowsForms</MyType> <MyType>WindowsForms</MyType>
@@ -16,44 +16,183 @@
<Product>$(AssemblyName)</Product> <Product>$(AssemblyName)</Product>
</PropertyGroup> </PropertyGroup>
<PropertyGroup>
<BaseOutputPath>$(MSBuildProjectDirectory)\bin\</BaseOutputPath>
<BaseIntermediateOutputPath>$(MSBuildProjectDirectory)\obj\</BaseIntermediateOutputPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<OutputPath>$(BaseOutputPath)Debug\</OutputPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
<OutputPath>$(BaseOutputPath)Release\</OutputPath>
</PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="GdPicture" Version="14.3.3" /> <PackageReference Include="GdPicture" Version="14.3.22" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="7.0.1" /> <PackageReference Include="Microsoft.Data.SqlClient" Version="6.1.1" />
<PackageReference Include="NLog" Version="5.0.5" /> <PackageReference Include="NLog" Version="6.0.4" />
<PackageReference Include="System.Data.SqlClient" Version="4.9.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Reference Include="DigitalData.Modules.Config"> <Reference Include="BouncyCastle.Cryptography, Version=2.0.0.0, Culture=neutral, PublicKeyToken=072edcf4a5328938, processorArchitecture=MSIL">
<HintPath>..\..\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath> <HintPath>..\packages\BouncyCastle.Cryptography.2.5.0\lib\net461\BouncyCastle.Cryptography.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Database"> <Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
<HintPath>..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath> <HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Interfaces"> <Reference Include="DocumentFormat.OpenXml.Framework, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
<HintPath>..\..\DDModules\Interfaces\bin\Debug\DigitalData.Modules.Interfaces.dll</HintPath> <HintPath>..\packages\DocumentFormat.OpenXml.Framework.3.2.0\lib\net46\DocumentFormat.OpenXml.Framework.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Jobs"> <Reference Include="GdPicture.NET.14, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\..\DDModules\Jobs\bin\Debug\DigitalData.Modules.Jobs.dll</HintPath> <HintPath>..\packages\GdPicture.14.3.19\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Logging"> <Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.19.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath> <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>
<Reference Include="Microsoft.CSharp" /> <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" />
<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.Configuration" />
<Reference Include="System.Data" /> <Reference Include="System.Data" />
<Reference Include="System.Deployment" /> <Reference Include="System.Deployment" />
<Reference Include="System.Drawing" /> <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.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" />
<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.Runtime.Serialization" />
<Reference Include="System.Security" /> <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.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.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.Windows.Forms" />
<Reference Include="System.Xml" /> <Reference Include="System.Xml" />
<Reference Include="System.Core" /> <Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" /> <Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" /> <Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" />
<Reference Include="WindowsBase" /> <Reference Include="WindowsBase" />
</ItemGroup> </ItemGroup>
@@ -71,4 +210,8 @@
<Generator>SettingsSingleFileGenerator</Generator> <Generator>SettingsSingleFileGenerator</Generator>
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\DDModules\Jobs\Jobs.vbproj" />
<ProjectReference Include="..\..\DDModules\Config\Config.vbproj" />
</ItemGroup>
</Project> </Project>

View File

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

View File

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

View File

@@ -106,6 +106,9 @@
<ItemGroup> <ItemGroup>
<Compile Include="Config.vb" /> <Compile Include="Config.vb" />
<Compile Include="Constants.vb" /> <Compile Include="Constants.vb" />
<Compile Include="..\\..\\DDModules\\Jobs\\ZUGFeRD\\WorkerArgs.vb">
<Link>ZUGFeRD\\WorkerArgs.vb</Link>
</Compile>
<Compile Include="My Project\Application.Designer.vb"> <Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen> <AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon> <DependentUpon>Application.myapp</DependentUpon>

View File

@@ -1,21 +1,18 @@
using DigitalData.Modules.Interfaces; using System;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.Extensions.Configuration;
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.IO;
using System.Linq; using System.Linq;
using System.Net.Http; using System.Collections.Generic;
using System.Text.RegularExpressions; using Microsoft.AspNetCore.Http;
using System.Xml.Linq; using Microsoft.AspNetCore.Mvc;
using DigitalData.Modules.Interfaces;
using static DigitalData.Modules.Interfaces.Exceptions; using static DigitalData.Modules.Interfaces.Exceptions;
using static DigitalData.Modules.Interfaces.PropertyValues;
using static DigitalData.Modules.Interfaces.ZUGFeRDInterface; using static DigitalData.Modules.Interfaces.ZUGFeRDInterface;
using static DigitalData.Modules.Interfaces.PropertyValues;
using System.Data.SqlClient;
using Microsoft.Extensions.Configuration;
using System.Xml.Linq;
using Newtonsoft.Json.Linq;
using System.Text.RegularExpressions;
namespace ZUGFeRDRESTService.Controllers namespace ZUGFeRDRESTService.Controllers
{ {
@@ -29,37 +26,6 @@ namespace ZUGFeRDRESTService.Controllers
public const string ADDED_WHO = "ZUGFeRD REST Service"; public const string ADDED_WHO = "ZUGFeRD REST Service";
public const string MESSAGEID_DOMAIN = "test.wisag.de"; 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 const int MAX_FILE_SIZE_DEFAULT = 25;
private readonly ZUGFeRDInterface _zugferd; private readonly ZUGFeRDInterface _zugferd;
@@ -67,9 +33,10 @@ namespace ZUGFeRDRESTService.Controllers
private readonly DigitalData.Modules.Logging.LogConfig _logConfig; private readonly DigitalData.Modules.Logging.LogConfig _logConfig;
private readonly DigitalData.Modules.Logging.Logger _logger; 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 PropertyValues _props;
//private readonly Dictionary<string, XmlItemProperty> _propertyMap = new Dictionary<string, XmlItemProperty>();
private readonly List<XmlItemProperty> _propertyMapList = new List<XmlItemProperty>(); private readonly List<XmlItemProperty> _propertyMapList = new List<XmlItemProperty>();
private readonly List<RejectionStringRow> _RecjectionMessageList = new List<RejectionStringRow>(); private readonly List<RejectionStringRow> _RecjectionMessageList = new List<RejectionStringRow>();
@@ -87,6 +54,8 @@ namespace ZUGFeRDRESTService.Controllers
{ {
_logConfig = logging.LogConfig; _logConfig = logging.LogConfig;
_logger = _logConfig.GetLogger(); _logger = _logConfig.GetLogger();
_file = new DigitalData.Modules.Filesystem.File(_logConfig);
_logger.Debug("Validation Controller initializing"); _logger.Debug("Validation Controller initializing");
// Read config file and assign all option flags related to // Read config file and assign all option flags related to
@@ -113,37 +82,7 @@ namespace ZUGFeRDRESTService.Controllers
_logger.Debug("Property Map list initial: [{0}] entries found. [{1}] entries will be available.", oPropertyMapList.Count, _propertyMapList.Count); _logger.Debug("Property Map list initial: [{0}] entries found. [{1}] entries will be available.", oPropertyMapList.Count, _propertyMapList.Count);
_RecjectionMessageList = database.GetRejectionMessageList(); _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!"); _logger.Debug("Validation Controller initialized!");
} }
@@ -207,58 +146,14 @@ namespace ZUGFeRDRESTService.Controllers
/// </summary> /// </summary>
/// <param name="file">This parameter's name needs to correspond to the html form's file-input name</param> /// <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="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] [HttpPost]
public ValidationResponse Post(IFormCollection collection) public ValidationResponse Post(IFormFile file, string user_id)
{ {
_logger.Info("Start processing request to ValidationController"); _logger.Info("Start processing request to ValidationController");
ZugferdResult oZugferdResult = null; ZugferdResult oZugferdResult = null;
CheckPropertyValuesResult oPropertyResult = new CheckPropertyValuesResult(); 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 try
{ {
using Stream oStream = file.OpenReadStream(); using Stream oStream = file.OpenReadStream();
@@ -270,6 +165,7 @@ namespace ZUGFeRDRESTService.Controllers
if (oFileSizeIsOK == false) if (oFileSizeIsOK == false)
{ {
//throw new ZUGFeRDExecption(ErrorType.FileTooBig, "FileTooBig");
throw new ZUGFeRDExecption(ErrorCodes.FileSizeLimitReachedException, _MaxFileSizeInMegabytes.ToString(), string.Empty, "FileTooBig"); throw new ZUGFeRDExecption(ErrorCodes.FileSizeLimitReachedException, _MaxFileSizeInMegabytes.ToString(), string.Empty, "FileTooBig");
} }
@@ -278,7 +174,6 @@ namespace ZUGFeRDRESTService.Controllers
if (file.FileName.EndsWith(".pdf", StringComparison.OrdinalIgnoreCase)) if (file.FileName.EndsWith(".pdf", StringComparison.OrdinalIgnoreCase))
{ {
oZugferdResult = _zugferd.ExtractZUGFeRDFileWithGDPicture(oStream); oZugferdResult = _zugferd.ExtractZUGFeRDFileWithGDPicture(oStream);
oZugferdResult.ReceiptFileType = "PDF";
} }
else if (file.FileName.EndsWith(".xml", StringComparison.OrdinalIgnoreCase)) else if (file.FileName.EndsWith(".xml", StringComparison.OrdinalIgnoreCase))
{ {
@@ -290,23 +185,23 @@ namespace ZUGFeRDRESTService.Controllers
}; };
oZugferdResult = _zugferd.SerializeZUGFeRDDocument(oResult); oZugferdResult = _zugferd.SerializeZUGFeRDDocument(oResult);
oZugferdResult.ReceiptFileType = "XML";
} }
_logger.Info("Detected Specification was: [{0}]", oZugferdResult.Specification); _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) if (oFilteredPropertyMap.Count == 0)
{ {
_logger.Warn("No properties found in property map for specification [{0}]", oZugferdResult.Specification); _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"); throw new ZUGFeRDExecption(ErrorCodes.UnsupportedFerdException, "Unsupported Format");
} }
else else
{ {
_logger.Debug("Property map contains [{0}] entries for specification [{1}]", oFilteredPropertyMap.Count, oZugferdResult.Specification); _logger.Debug("Property map contains [{0}] entries for specification [{1}]", oFilteredPropertyMap.Count, oZugferdResult.Specification);
} }
_logger.Info("Starting structural check against the database."); _logger.Info("Starting structural check against the database.");
oPropertyResult = _props.CheckPropertyValues(oZugferdResult.SchemaObject, oFilteredPropertyMap, "MESSAGEID"); oPropertyResult = _props.CheckPropertyValues(oZugferdResult.SchemaObject, oFilteredPropertyMap, "MESSAGEID");
@@ -324,21 +219,24 @@ namespace ZUGFeRDRESTService.Controllers
if (oPropertyResult.MissingProperties.Count > 0) if (oPropertyResult.MissingProperties.Count > 0)
{ {
//throw new ZUGFeRDExecption(ErrorType.MissingProperties, "Missing Properties");
throw new ZUGFeRDExecption(ErrorCodes.MissingValueException, "Missing Properties"); throw new ZUGFeRDExecption(ErrorCodes.MissingValueException, "Missing Properties");
} }
Tuple<bool, string> oValidateResult = ValidateBuyerOrderReference(oPropertyResult.ValidProperties, oZugferdResult); Tuple<bool, string> oValidateResult = ValidateBuyerOrderReference(oPropertyResult.ValidProperties);
if (oValidateResult.Item1 == false) if (oValidateResult.Item1 == false)
{ {
//throw new ZUGFeRDExecption(ErrorType.UnknownError, "Unknown Error");
throw new ZUGFeRDExecption(ErrorCodes.UnhandledException, "Unknown Error"); throw new ZUGFeRDExecption(ErrorCodes.UnhandledException, "Unknown Error");
} }
string oValidateResultString = oValidateResult.Item2; string oValidateResultString = oValidateResult.Item2;
if (oValidateResultString.Equals(VALIDATION_SUCCESS)) if (oValidateResultString == "ALL REFERENCES CHECKED POSITIVE")
{ {
string oMessage = "Die hochgeladene Datei ist eine gültige-ZUGFeRD Rechnung"; string oMessage = "Die hochgeladene Datei ist eine gültige-ZUGFeRD Rechnung";
_logger.Info($"Responding with message: [{oMessage}]"); _logger.Info($"Responding with message: [{oMessage}]");
return new ValidationResponse() return new ValidationResponse()
@@ -346,10 +244,10 @@ namespace ZUGFeRDRESTService.Controllers
status = RESPONSE_OK, status = RESPONSE_OK,
message = oMessage message = oMessage
}; };
} } else
else
{ {
string oMessage = oValidateResultString; string oMessage = oValidateResultString;
_logger.Info($"Responding with message: [{oMessage}]"); _logger.Info($"Responding with message: [{oMessage}]");
return new ValidationResponse() return new ValidationResponse()
@@ -358,8 +256,7 @@ namespace ZUGFeRDRESTService.Controllers
message = oMessage message = oMessage
}; };
} }
} };
} }
catch (ZUGFeRDExecption ex) catch (ZUGFeRDExecption ex)
{ {
@@ -385,24 +282,26 @@ namespace ZUGFeRDRESTService.Controllers
oMessage = Regex.Replace(oMessage, "@REPLACE_PARAM2", ex.Param2, RegexOptions.IgnoreCase); 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 // Determine if any errors should be sent in the response
switch (ex.ErrorCode) switch (ex.ErrorCode)
{ {
case ErrorCodes.MissingValueException: case ErrorCodes.MissingValueException:
oErrors.AddRange(from item in oPropertyResult.MissingProperties
var oErrorsText = GetMissingValuesListString(oPropertyResult.MissingProperties); select (item.EN16931_ID + " (" + item.Description + ")"));
if (!string.IsNullOrEmpty(oErrorsText) && oMessage.Contains("@REPLACE_PARAM3", StringComparison.OrdinalIgnoreCase))
{
oMessage = Regex.Replace(oMessage, "@REPLACE_PARAM3", oErrorsText, RegexOptions.IgnoreCase);
}
break; break;
default: default:
break; break;
} }
} }
else else
{ {
oMessage = "Alte Logik. Meldung nicht gefunden"; oMessage = "Alte Logik. Meldung nicht gefunden";
} }
_logger.Info($"Responding with message: [{oMessage}]"); _logger.Info($"Responding with message: [{oMessage}]");
@@ -416,61 +315,21 @@ namespace ZUGFeRDRESTService.Controllers
} }
catch (ValidationException ex) catch (ValidationException ex)
{ {
_logger.Error(ex);
var rejectionCodeNumber = this.GetRejectionCodeNumber(ex.ErrorCode); var rejectionCodeNumber = this.GetRejectionCodeNumber(ex.ErrorCode);
// Der gesamte Ausgabetext muss anhand des ErrorCodes ermittelt werden // Der gesamte Ausgabetext muss anhand des ErrorCodes ermittelt werden
string oMessage = this.GetRejectionMessage(rejectionCodeNumber); string oMessage = this.GetRejectionMessage(rejectionCodeNumber);
// Wenn es ValidationErrors gibt, werden diese nun übersetzt und in eine Liste übertragen werden List<string> oErrors = ex.ValidationErrors.Select(e =>
var mainText = GetTextByToken("ItemValueText");
var resultList = new List<string>();
foreach (var errorItem in ex.ValidationErrors)
{ {
var resultString = mainText; return $"Element '{e.ElementName}' mit Wert '{e.ElementValue}': {e.ErrorMessageDE}";
}).ToList();
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() return new ValidationResponse()
{ {
status = RESPONSE_ERROR, status = RESPONSE_ERROR,
message = oMessage message = oMessage,
errors = oErrors
}; };
} }
catch (Exception ex) catch (Exception ex)
@@ -489,73 +348,20 @@ namespace ZUGFeRDRESTService.Controllers
} }
} }
private string GetMissingValuesListString(List<MissingProperty> missingProperties) private Tuple<bool, string> ValidateBuyerOrderReference(List<ValidProperty> pProperties)
{
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(); var oMessageId = GetMessageId();
_logger.Debug("Created new MessageId: [{0}]", oMessageId); _logger.Debug("Created new MessageId: [{0}]", oMessageId);
_logger.Debug("Inserting properties into database."); _logger.Debug("Inserting properties into database.");
if (!BulkInsertDataToDatabase(oMessageId, pProperties, pZugferdResult)) foreach (var oItem in pProperties)
{ {
_logger.Warn("Error while Inserting properties into database!"); var oResult = InsertPropertyMap(oItem, oMessageId);
return new Tuple<bool, string>(false, string.Empty);
if (oResult == false)
{
_logger.Warn("Error while inserting the Property [{0}] into the Database!", oItem.Description);
}
} }
_logger.Debug("Calling validation prodecure."); _logger.Debug("Calling validation prodecure.");
@@ -571,57 +377,6 @@ namespace ZUGFeRDRESTService.Controllers
if (_database.MSSQL.ExecuteNonQuery(oCommand)) if (_database.MSSQL.ExecuteNonQuery(oCommand))
{ {
string oReturnValue = (string)oCommand.Parameters["@MSG_OUTPUT"].Value; 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); return new Tuple<bool, string>(true, oReturnValue);
} }
@@ -635,391 +390,86 @@ namespace ZUGFeRDRESTService.Controllers
{ {
_logger.Error(e); _logger.Error(e);
return new Tuple<bool, string>(false, string.Empty); return new Tuple<bool, string>(false, string.Empty);
} }
} }
private string GetReplaceText1_30003_3(List<ValidProperty> pProperties) public string GetMessageId()
{
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}"; return $"{Guid.NewGuid()}@{MESSAGEID_DOMAIN}";
} }
private bool BulkInsertDataToDatabase(string pMessageId, List<ValidProperty> pProperties, ZugferdResult pZugferdResult) public bool InsertPropertyMap(ValidProperty pProperty, string pMessageId)
{
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 try
{ {
var delItemValueSQL = "DELETE FROM TBEDMI_ITEM_VALUE WHERE REFERENCE_GUID = '" + pMessageId + "';"; if (pProperty.ItemType == 3)
var oCommand = new SqlCommand(delItemValueSQL);
var retValue = _database.MSSQL.ExecuteNonQuery(oCommand);
if (!retValue)
{ {
_logger.Warn("DELETE FROM TBEDMI_ITEM_VALUE NOT successfull"); // Wir speichern keine Attachment-Werte in die DB
return false; return true;
} }
_logger.Debug("DELETE FROM TBEDMI_ITEM_VALUE successfull"); 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);
} }
catch (Exception ex) catch (Exception ex)
{ {
_logger.Error(ex); _logger.Error(ex);
return false; 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> /// <summary>
/// Ermittelt die Ausgabe-nachricht für einen Fehlercode /// Ermittelt die Ausgabe-nachricht für einen Fehlercode
/// </summary> /// </summary>
private string GetRejectionMessage(string pErrorCode) public string GetRejectionMessage(string pErrorCode)
{ {
_logger.Info("GetRejectionMessage() - errorCode.ToString(): '" + pErrorCode.ToString() + "'"); _logger.Info("GetRejectionMessage() - errorCode.ToString(): '" + pErrorCode.ToString() + "'");
if (_RecjectionMessageList == null) return string.Empty; if (_RecjectionMessageList == null) return string.Empty;
var searchTitle = string.Empty; // Sprache wird man vielleicht mal auswählen können
var language = "de-DE";
var searchTitle = "ZUGFERD_Rejection_" + pErrorCode + "_Web";
if (pErrorCode.Contains("2000")) var messageItem = _RecjectionMessageList.Where(i => i.Title.Equals(searchTitle, StringComparison.OrdinalIgnoreCase) && i.Language.Equals(language, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
if (messageItem != null)
{ {
searchTitle = "ZUGFERD_Rejection_" + pErrorCode + "_Web"; _logger.Info("GetRejectionMessage() - messageItem: '" + messageItem.String1 + "'");
} return messageItem.String1;
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 else
{ {
@@ -1028,15 +478,6 @@ 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) private string GetRejectionCodeNumber(ErrorCodes rejectionCode)
{ {
switch (rejectionCode) switch (rejectionCode)

View File

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

View File

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