Compare commits

...

40 Commits

Author SHA1 Message Date
Developer01
af916cc5d2 Merge branch 'master' of https://vcs.digitaldata.works/AppStd/EmailProfiler 2026-01-23 13:48:15 +01:00
Developer01
5980d907b2 Commit wegen frmMain Controls 2026-01-23 13:47:47 +01:00
OlgunR
7f95c28b5e Refactor grid column logic, lock designer controls
Refactored GridView5 column formatting to only show relevant columns and improve maintainability. Added .Locked metadata to many controls in frmMain.resx to enforce read-only state in the designer. Restored SVG images for XtraTabPages and updated TrayLocation metadata for components.
2026-01-22 11:38:18 +01:00
OlgunR
6b291e82a7 Improve Monitoring tab UI: add email limit panel
Added a top panel to the Monitoring tab for specifying the number of emails to fetch, with a label and input field. Refactored grid layout by placing gridMonitoring inside a docked panel for better separation and flexibility. Updated designer code and .resx metadata to support new controls and lock them in the designer. No changes to business logic.
2026-01-22 11:24:41 +01:00
OlgunR
35bdee53e3 Add Monitoring tab with grid for TBEMLP_HISTORY data
Added a new Monitoring tab to frmMain with a DevExpress grid displaying TBEMLP_HISTORY records. Updated designer and resource files to support the new tab and controls. Introduced LoadMonitoringIntoGrid method to populate and format the grid. Resized various UI controls for improved readability and updated label texts. Updated licenses.licx and project DLL HintPaths for compatibility.
2026-01-22 10:06:46 +01:00
Developer01
38e682dcef Update GDPicture Variablenname LicenseString 2025-12-09 16:34:04 +01:00
Developer01
543db62095 GDPicture Local 2025-12-08 15:23:29 +01:00
Developer01
44267288ef GDPictureLicense via config 2025-12-08 14:47:11 +01:00
Developer01
904c4a7f2e GD Picture 14.3.18 2025-12-08 10:09:18 +01:00
Developer01
12e9538968 clsWorkEmail 2025-12-03 13:07:09 +01:00
Developer01
f150041a33 Stage Commit clsWorkemail 2025-12-03 13:01:50 +01:00
Developer01
109d497e37 MS AssemblyInfo 2025-12-03 12:49:37 +01:00
Developer01
8fb7992c22 Oauth 2 integriert 2025-11-27 17:55:35 +01:00
7d04f4c3b5 Ungekürztes Subject verwenden 2025-10-01 10:21:31 +02:00
d397c9ec95 EMailProfiler.Common: Version 3.1.2.0 2025-10-01 09:43:54 +02:00
d7c2c86a00 Ein leeres Subject führt offensichtlich zu unverarbeiteten E-Mails. Variable und deren Logging geprüft und abgesichert 2025-10-01 09:43:01 +02:00
db06af6a37 EMailprofile.Common: Version 3.1.1.0 2025-09-10 08:47:44 +02:00
1bcf91f7c8 EMailprofile.Common: Korrektur Fall ein normaler Anhang ist defekt. 2025-09-10 08:46:36 +02:00
d0e93841fe Test-Tool Aktualisierungen 2025-09-10 08:45:13 +02:00
6c47b9ddec EMailProfile.Common: Version 3.1.0.0 2025-09-05 11:49:41 +02:00
ec5c3999ab EmailProfile.Common: Korrektur, damit Email mit PDF-Datei und kaputten eingebetteten Anhängen abgelehnt und temp. Dateien gelöscht werden. 2025-09-05 11:47:53 +02:00
06cfc97ebd Verweis-Pfade zu unseren DLLS an die neue Struktur angepasst. 2025-09-04 09:46:56 +02:00
Developer01
c5715e7c89 TLS Anpassungen und Logging 2025-06-26 16:42:22 +02:00
Developer01
2ea8178aaa Merge 2025-06-24 14:50:50 +02:00
Developer01
f0d1520286 Form logging und methode wie im Service benutzen 2025-06-24 14:49:07 +02:00
86a11a0670 lokale Referenzen korrigiert 2025-05-30 10:44:06 +02:00
b68f94f35f EmailProfiler.Common: Liste der Anhänge einschränken, so dass nur erlaubte Dateitypen enthalten sind. 2025-02-13 11:20:23 +01:00
a73b8f5a16 EMailProfiler.Common: Die Config-Klasse MUSS Config heißen 2025-01-17 14:25:20 +01:00
c42440968f EMail Profiler Service: Version 3.0.5.0 2025-01-17 13:19:46 +01:00
73475a585e Email Profiler APP: Version 3.0.2.0 2025-01-17 13:18:31 +01:00
187c869560 EmailProfiler.Common: Version 3.0.10.0 2025-01-17 11:38:07 +01:00
acdbf643fb EmailProfiler.Common: Auswertung der neuen DB Spalte ALLOW_XML_RECEIPTS 2025-01-17 11:36:51 +01:00
5fd352dd1a EmailProfiler.Form: Version 3.0.1.0 2025-01-17 11:09:49 +01:00
c6ac431d7f EmailProfiler.Form: Neues DB-Feld ALLOW_XML_RECEIPTS und dazugehörige Checkbox eingebaut. ConnectionString in Mysettings angepasst. 2025-01-17 11:08:49 +01:00
169f8c0ec8 EmailProfiler.Common: Version 3.0.9.0 2025-01-16 09:46:26 +01:00
c3d20191b5 EMail Profiler: Test-Projekt kann jetzt EML-Dateien einlesen. / Der erste E-Mail-Anhang darf eine XML-Datei sein 2025-01-16 09:45:28 +01:00
371cace3ef EmailProfiler Form: Version 3.0.0.0 2025-01-09 10:21:04 +01:00
9dc6f7b43f EmailProfiler.Common: Version 3.0.8.0 2025-01-09 10:18:26 +01:00
33e2da02cb EMailProfiler APP: Version 3.0.4.0 2025-01-09 10:16:51 +01:00
ba999fa1d9 EMailProfiler: Config-Daten in zentraler Klasse. abfrage der GDPicture Lizenz über Config-Modul 2025-01-09 10:13:07 +01:00
38 changed files with 6092 additions and 3810 deletions

View File

@@ -1,9 +1,5 @@
Imports WINDREAMLib
Imports Limilabs.Mail
Imports Limilabs.Mail.MIME
Imports Limilabs.Mail.Headers
Imports MailBox = Limilabs.Mail.Headers.MailBox
Imports Limilabs.Client.IMAP
Imports Limilabs.Client.IMAP
Imports WINDREAMLib
Public Class ClassCurrent
Public Shared Property WM_DRIVE As String
@@ -23,7 +19,6 @@ Public Class ClassCurrent
Public Shared Property CURRENT_DRIVE_CHECK As String = ""
Public Shared Property CURRENT_DRIVE_ISFULL As Boolean = False
Public Shared Property CURRENT_WORKMAIL_UID_LIST As New List(Of Long)
Public Shared Property CURRENT_ImapObject As Imap
@@ -51,7 +46,7 @@ Public Class ClassCurrent
Public Shared Property TEMP_FILES As List(Of String) = New List(Of String)
Public Shared Property TEMP_WORK_FILES As List(Of String) = New List(Of String)
Public Shared Property GDPictureLicense As String = "None"
Public Shared Property GDPictureLicense As String = ""
Public Shared Property EmailAttachments As List(Of EmailAttachment) = New List(Of EmailAttachment)
End Class

View File

@@ -5,9 +5,13 @@ Public Class Config
Public Property ConnectionString As String = ""
Public Property Debug As Boolean = False
Public Property EmailAccountId As Integer = 0
Public Property EmailTitlePrefix As String = "EmailProfiler"
Public Property EmailSenderLimitation As String = ""
Public Property UseWindream As Boolean = False
''' <summary>
@@ -23,5 +27,18 @@ Public Class Config
Public Property InfoTemplateId As Integer = 0
Public Property EmailTestReceiver As String = ""
Public Property EmailTestHTML As String = ""
''' <summary>
''' Enthält die Version des GDPicture Modules,
''' für das der Lizenzschlüssel aus TBDD_3RD_PARTY_MODULES
''' gelesen werden soll.
''' </summary>
Public Property GDPictureVersion As String = ""
''' <summary>
''' Enthält die Lizenznummer des GDPicture Modules.
''' Nur wenn nicht über die Datenbank zu holen!!.
''' </summary>
Public Property GDPictureLicenseAsString As String = ""
End Class

View File

@@ -12,6 +12,8 @@ Public Class EmailAttachment
Public ErrorCodeValue As ErrorCode = ErrorCode.Unknown
Public ErrorCodeComment As String = ""
Public AttachmentPosition As Integer = 0
Public EmbeddedFiles As List(Of EmailAttachment) = New List(Of EmailAttachment)
Public ReadOnly Property Extension As String

View File

@@ -8,27 +8,32 @@ Public Class MailContainer
''' The Mail object created by Limilabs
''' </summary>
Public ReadOnly Property Mail As IMail
''' <summary>
''' The IMAP Id coming from the IMAP folder. Used to reference the mail.
''' </summary>
Public ReadOnly Property ImapId As Integer
''' <summary>
''' The original MessageID from the eml file
''' </summary>
Public ReadOnly Property MessageIdOriginal As String
''' <summary>
''' The new MessageID, which is generated by hashing the original MessageID
''' </summary>
Public ReadOnly Property MessageId As String
''' <summary>
''' The subject, truncated to SUBJECT_MAX_LENGTH characters
''' </summary>
Public ReadOnly Property Subject As String
Public ReadOnly Property SubjectOriginal As String
Public ReadOnly Property SenderDomain As String
Public ReadOnly Property SenderAddress As String
Public ReadOnly Property SenderAddress As String
Public Sub New(pMail As IMail, pImapId As Integer)
Mail = pMail

View File

@@ -49,26 +49,99 @@
<Reference Include="AE.Net.Mail, Version=1.7.10.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\AE.Net.Mail.1.7.10.0\lib\net45\AE.Net.Mail.dll</HintPath>
</Reference>
<Reference Include="BouncyCastle.Cryptography, Version=2.0.0.0, Culture=neutral, PublicKeyToken=072edcf4a5328938, processorArchitecture=MSIL">
<HintPath>..\packages\BouncyCastle.Cryptography.2.5.0\lib\net461\BouncyCastle.Cryptography.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Base">
<HintPath>..\..\..\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Config">
<HintPath>..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database">
<HintPath>..\..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Language">
<HintPath>..\..\..\DDModules\Language\bin\Debug\DigitalData.Modules.Language.dll</HintPath>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Messaging">
<HintPath>..\..\..\DDModules\Messaging\bin\Debug\DigitalData.Modules.Messaging.dll</HintPath>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Messaging\bin\Debug\DigitalData.Modules.Messaging.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Patterns">
<HintPath>..\..\..\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Patterns\bin\Debug\DigitalData.Modules.Patterns.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14, Version=14.2.90.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.2.90\lib\net462\GdPicture.NET.14.dll</HintPath>
<Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
<HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath>
</Reference>
<Reference Include="DocumentFormat.OpenXml.Framework, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
<HintPath>..\packages\DocumentFormat.OpenXml.Framework.3.2.0\lib\net46\DocumentFormat.OpenXml.Framework.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Markdown, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.Markdown.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\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.21\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Interop.WINDREAMLib">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WINDREAMLib.dll</HintPath>
@@ -85,22 +158,95 @@
<Reference Include="Mail">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\Limilabs\Mail.dll\Mail.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NativeSDK.Exceptions, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\NativeSDK.Exceptions.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\lib\net462\NativeSDK.Settings.dll</HintPath>
</Reference>
<Reference Include="NativeSDK.Settings.Edition, Version=14.3.21.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.21\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.0.5\lib\net46\NLog.dll</HintPath>
</Reference>
<Reference Include="OpenMcdf, Version=2.4.1.0, Culture=neutral, PublicKeyToken=fdbb1629d7c00800, processorArchitecture=MSIL">
<HintPath>..\packages\OpenMcdf.2.4.1\lib\net40\OpenMcdf.dll</HintPath>
</Reference>
<Reference Include="protobuf-net, Version=3.0.0.0, Culture=neutral, PublicKeyToken=257b51d87d2e4d67, processorArchitecture=MSIL">
<HintPath>..\packages\protobuf-net.3.2.46\lib\net462\protobuf-net.dll</HintPath>
</Reference>
<Reference Include="protobuf-net.Core, Version=3.0.0.0, Culture=neutral, PublicKeyToken=257b51d87d2e4d67, processorArchitecture=MSIL">
<HintPath>..\packages\protobuf-net.Core.3.2.46\lib\net462\protobuf-net.Core.dll</HintPath>
</Reference>
<Reference Include="RtfPipe, Version=2.0.7677.4303, Culture=neutral, PublicKeyToken=5f6ab4ce530296d2, processorArchitecture=MSIL">
<HintPath>..\packages\RtfPipe.2.0.7677.4303\lib\net45\RtfPipe.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.6.0\lib\net462\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.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.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.IO.Packaging, Version=8.0.0.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Packaging.8.0.1\lib\net462\System.IO.Packaging.dll</HintPath>
</Reference>
<Reference Include="System.Management" />
<Reference Include="System.Memory, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.6.0\lib\net462\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http.Formatting, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.6.0.0\lib\net45\System.Net.Http.Formatting.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.6.0\lib\net462\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.1.0\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Security" />
<Reference Include="System.Security.Cryptography.Pkcs, Version=8.0.0.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Cryptography.Pkcs.8.0.1\lib\net462\System.Security.Cryptography.Pkcs.dll</HintPath>
</Reference>
<Reference Include="System.ServiceModel" />
<Reference Include="System.Text.Encodings.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Encodings.Web.8.0.0\lib\net462\System.Text.Encodings.Web.dll</HintPath>
</Reference>
<Reference Include="System.Text.Json, Version=8.0.0.6, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Json.8.0.6\lib\net462\System.Text.Json.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Transactions" />
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
@@ -117,15 +263,16 @@
<Compile Include="ClassDBConfig.vb" />
<Compile Include="ClassCurrent.vb" />
<Compile Include="clsEmail.IMAP.vb" />
<Compile Include="Data\Config.vb" />
<Compile Include="Data\EmailAttachment.vb" />
<Compile Include="EmailStrings.vb" />
<Compile Include="Enum\EmailStrings.vb" />
<Compile Include="clsEncryption.vb" />
<Compile Include="clsWindream_allgemein.vb" />
<Compile Include="clsWindream_Index.vb" />
<Compile Include="clsWorkEmail.vb" />
<Compile Include="clsWorker.vb" />
<Compile Include="Enum\ErrorCode.vb" />
<Compile Include="MailContainer.vb" />
<Compile Include="Data\MailContainer.vb" />
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
@@ -165,11 +312,11 @@
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<Import Project="..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets')" />
<Import Project="..\packages\GdPicture.runtimes.windows.14.3.21\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.3.21\build\net462\GdPicture.runtimes.windows.targets')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets'))" />
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.3.21\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.3.21\build\net462\GdPicture.runtimes.windows.targets'))" />
</Target>
</Project>

View File

@@ -12,8 +12,8 @@ Imports System.Runtime.InteropServices
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("DigitalData.EMLProfiler")>
<Assembly: AssemblyCopyright("Copyright © 2024")>
<Assembly: AssemblyTrademark("3.0.7.0")>
<Assembly: AssemblyCopyright("Copyright © 2025")>
<Assembly: AssemblyTrademark("3.0.10.0")>
<Assembly: ComVisible(False)>
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("3.0.7.0")>
<Assembly: AssemblyFileVersion("3.0.7.0")>
<Assembly: AssemblyVersion("3.5.0.0")>
<Assembly: AssemblyFileVersion("3.5.0.0")>

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
</configSections>
@@ -7,17 +7,17 @@
<!-- Dieser Abschnitt definiert die Protokollierungskonfiguration für My.Application.Log -->
<source name="DefaultSource" switchName="DefaultSwitch">
<listeners>
<add name="FileLog"/>
<add name="FileLog" />
<!-- Auskommentierung des nachfolgenden Abschnitts aufheben, um in das Anwendungsereignisprotokoll zu schreiben -->
<!--<add name="EventLog"/>-->
</listeners>
</source>
</sources>
<switches>
<add name="DefaultSwitch" value="Information"/>
<add name="DefaultSwitch" value="Information" />
</switches>
<sharedListeners>
<add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" initializeData="FileLogWriter"/>
<add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" initializeData="FileLogWriter" />
<!-- Auskommentierung des nachfolgenden Abschnitts aufheben und APPLICATION_NAME durch den Namen der Anwendung ersetzen, um in das Anwendungsereignisprotokoll zu schreiben -->
<!--<add name="EventLog" type="System.Diagnostics.EventLogTraceListener" initializeData="APPLICATION_NAME"/> -->
</sharedListeners>
@@ -25,9 +25,45 @@
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="NLog" publicKeyToken="5120e14c03d0593c" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0"/>
<assemblyIdentity name="NLog" publicKeyToken="5120e14c03d0593c" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.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.Text.Json" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.0.0.6" newVersion="8.0.0.6" />
</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>
</assemblyBinding>
</runtime>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2"/></startup></configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" /></startup></configuration>

View File

@@ -115,6 +115,8 @@ Public Class clsWindream_Index
Catch ex As Exception
End Try
Return "String"
End Function
Public Function RunIndexing_Vektor(ByVal oDocument As WMObject, ByVal Indizes As String(), ByVal aValues As String())
Try
@@ -244,9 +246,9 @@ Public Class clsWindream_Index
'clsLogger.AddError("## Fehler in RunIndexing_Vektor - Fehler: " & ex.Message, "RunIndexingVektor")
oDocument.Save()
oDocument.unlock()
Return False
End Try
End Try
Return False
End Function
Public Function RunIndexing(ByVal oDocument As WMObject, ByVal Indizes() As String, ByVal aValues() As Object, Objekttyp As String)
@@ -630,8 +632,9 @@ Public Class clsWindream_Index
'clsLogger.AddError(ex.Message, "ClassSearchResult.RunIndexing")
oDocument.Save()
oDocument.unlock()
Return False
End Try
Return False
End Function
#End Region
Public Function GetVektorArray(ByVal oDocument As WMObject, oIndexName As String, NIIndexe As Object, CheckDuplikat As Boolean)
@@ -834,7 +837,7 @@ Public Class clsWindream_Index
''' _indexname = Name des zu überprüfenden Indexfeldes
Public Function GetValueforIndex_WMFile(ByVal _dok As WMObject, _indexname As String)
Try
Const WMEntityDocument = 1
'Const WMEntityDocument = 1
Dim IndexwertAusWindream As Object = Nothing
IndexwertAusWindream = _dok.GetVariableValue(_indexname)
Return IndexwertAusWindream.ToString

View File

@@ -279,8 +279,9 @@ Public Class clsWindream_allgemein
Catch ex As Exception
Logger.Error(ex)
Return False
End Try
Return False
End Function
#End Region

View File

@@ -3,6 +3,7 @@ Imports System.IO
Imports System.Text.RegularExpressions
Imports System.Threading
Imports DigitalData.Modules.Base
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Patterns
@@ -17,7 +18,7 @@ Public Class clsWorkEmail
Private Const SUBJECT_MAX_LENGTH = 25
Private Const MESSAGE_ID_MAX_LENGTH = 100
Private CurrentMail As MailContainer = Nothing
Private _CurrentMail As MailContainer = Nothing
Private CurrentTempMailPath As String
@@ -47,40 +48,58 @@ Public Class clsWorkEmail
Private ReadOnly _LicenseManager As New LicenseManager
Private ReadOnly _ValidExtensions As List(Of String)
Private ReadOnly _ValidFirstExtensions As List(Of String)
Private ReadOnly _GraphicExtensions As List(Of String)
Private DoubleBytes As Double
Private _worked_email As Boolean = False
Sub New(LogConf As LogConfig, ConStr As String, WmConStr As String, pUseWindream As Boolean, EmailAccountID As Integer, EmlProfPraefix As String, pRejectionTemplateId As Integer, pInfoTemplateId As Integer)
Sub New(LogConf As LogConfig, ConStr As String, WmConStr As String, pConfigData As Config)
Try
_Logger = LogConf.GetLogger
_LogConfig = LogConf
_DB_MSSQL = New MSSQLServer(LogConf, ConStr)
_Logger.Debug("clsWorkmail _email initialized")
_UseWindream = pUseWindream
_UseWindream = pConfigData.UseWindream
_Patterns = New Patterns2(LogConf)
_RejectionTemplateId = pRejectionTemplateId
_InfoTemplateId = pInfoTemplateId
_RejectionTemplateId = pConfigData.RejectionTemplateId
_InfoTemplateId = pConfigData.InfoTemplateId
_Logger.Debug($"_RejectionTemplateId: {_RejectionTemplateId}")
_ValidExtensions = New List(Of String) From {"pdf", "xls", "xlsx", "doc", "docx", "ppt", "pptx"}
_ValidFirstExtensions = New List(Of String) From {"xml"}
_ValidFirstExtensions.AddRange(_ValidExtensions)
_GraphicExtensions = New List(Of String) From {"jpg", "bmp", "jpeg", "gif", "png", "xml"}
If pUseWindream Then
If _UseWindream Then
_windream = New clsWindream_allgemein(LogConf)
_windream_index = New clsWindream_Index(LogConf)
_windreamConnectionString = WmConStr
End If
If pConfigData.GDPictureLicenseAsString = String.Empty Then
_Logger.Debug("clsWorkEmail - GDPicture local is empty ..switching to db-getting ...")
GDPictureLicense = ConfigDbFunct.GetProductLicense("GDPICTURE", pConfigData.GDPictureVersion, _LogConfig, ConStr)
Else
_Logger.Debug("")
_Logger.Debug(String.Format("clsWorkEmail - GDPicture License from local config [{0}]", pConfigData.GDPictureLicenseAsString))
_Logger.Debug("")
GDPictureLicense = pConfigData.GDPictureLicenseAsString
End If
_LicenseManager.RegisterKEY(GDPictureLicense)
If String.IsNullOrEmpty(GDPictureLicense) = False Then
_LicenseManager.RegisterKEY(GDPictureLicense)
Else
_Logger.Error("clsWorkEmail() - No value for GDPictureLicense found")
End If
_EmailAccountID = EmailAccountID
SUBJECT_PRAFIX = EmlProfPraefix
_EmailAccountID = pConfigData.EmailAccountId
SUBJECT_PRAFIX = pConfigData.EmailTitlePrefix
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Public Function WorkEmailMessage(pMailMessage As IMail, poUID As Long, pValidationSQL As String) As Boolean
Try
For Each m As MailBox In pMailMessage.From
@@ -88,9 +107,9 @@ Public Class clsWorkEmail
Next
'TODO: Move all of these CURRENT_MAIL vars into a business object of type mail container
CurrentMail = New MailContainer(pMailMessage, poUID)
_CurrentMail = New MailContainer(pMailMessage, poUID)
_Logger.Debug($"Working on email from: {CURRENT_MAIL_FROM}...Subject: {pMailMessage.Subject}")
_Logger.Debug($"Working on email from: {_CurrentMail.SenderAddress}...Subject: {pMailMessage.Subject}")
CURRENT_MAIL_BODY_ALL = ""
CURRENT_MAIL_BODY_ANSWER1 = ""
CURRENT_MAIL_BODY_Substr2 = ""
@@ -123,29 +142,29 @@ Public Class clsWorkEmail
'
'End If
If IsNothing(CURRENT_MAIL_SUBJECT) Then
CURRENT_MAIL_SUBJECT = ""
If IsNothing(_CurrentMail.SubjectOriginal) Then
CURRENT_MAIL_SUBJECT = String.Empty
_Logger.Warn("Subject was nothing!")
Else
_Logger.Debug("Subject: [{0}]", CURRENT_MAIL_SUBJECT)
CURRENT_MAIL_SUBJECT = _CurrentMail.SubjectOriginal.ToUpper.EscapeForSQL()
_Logger.Debug("Fixed Subject: [{0}]", CURRENT_MAIL_SUBJECT)
End If
_Logger.Info($"Working on email from : {CURRENT_MAIL_FROM}...")
Dim oSql = $"Select COALESCE(MAX(GUID),0) FROM TBEMLP_HISTORY WHERE EMAIL_MSGID = '{CurrentMail.MessageId}'"
Dim oSql = $"Select COALESCE(MAX(GUID),0) FROM TBEMLP_HISTORY WHERE EMAIL_MSGID = '{_CurrentMail.MessageId}'"
Dim oHistoryID = _DB_MSSQL.GetScalarValue(oSql)
If oHistoryID > 0 And IS_LOCAL_TEST = False Then
_Logger.Info($"Message with subject [{CURRENT_MAIL_SUBJECT}] from [{CURRENT_MAIL_FROM}] has already been worked!")
_Logger.Info($"Message with subject [{_CurrentMail.SubjectOriginal}] from [{_CurrentMail.SenderAddress}] has already been worked!")
Return True
End If
Dim oTempMailExists As Boolean = Save2TempDirectory(CurrentMail)
Dim oTempMailExists As Boolean = Save2TempDirectory(_CurrentMail)
'Checking wether Mail can be opened
Dim oTempMailAccessible As Boolean = False
If oTempMailExists = False Then
_Logger.Warn("Could not process email [{0}], file does not exist!", CurrentMail.MessageId)
_Logger.Warn("Could not process email [{0}], file does not exist!", _CurrentMail.MessageId)
Return False
End If
@@ -158,7 +177,7 @@ Public Class clsWorkEmail
End Try
If oTempMailAccessible = False Then
_Logger.Warn("Could not process email [{0}], file is not accessible!", CurrentMail.MessageId)
_Logger.Warn("Could not process email [{0}], file is not accessible!", _CurrentMail.MessageId)
Return False
End If
@@ -167,21 +186,21 @@ Public Class clsWorkEmail
If pValidationSQL <> "" Then
Dim oReplaceValues = New Dictionary(Of String, String) From {
{"EMAIL", CurrentMail.SenderAddress},
{"DOMAIN", CurrentMail.SenderDomain}
{"EMAIL", _CurrentMail.SenderAddress},
{"DOMAIN", _CurrentMail.SenderDomain}
}
Dim pValidationSQLWithPlaceholders = _Patterns.ReplaceCustomValues(pValidationSQL, oReplaceValues)
Dim oResult As String = ObjectEx.NotNull(_DB_MSSQL.GetScalarValue(pValidationSQLWithPlaceholders), "")
If oResult <> "" Then
Dim oRejectionCodeString = GetRejectionCodeString(CurrentMail.MessageId, ErrorCode.SenderValidationFailed)
Dim oRejectionCodeString = GetRejectionCodeString(_CurrentMail.MessageId, ErrorCode.SenderValidationFailed)
'insert history und exit
InsertHistoryEntryWithStatus(CurrentMail, "REJECTED", oRejectionCodeString)
AddTrackingStatusMSSQL(CurrentMail.MessageId, oRejectionCodeString, "Email-Adress validation failed", "", "EMailProfiler")
InsertHistoryEntryWithStatus(_CurrentMail, "REJECTED", oRejectionCodeString)
AddTrackingStatusMSSQL(_CurrentMail.MessageId, oRejectionCodeString, "Email-Adress validation failed", "", "EMailProfiler")
AddToEmailQueueMSSQL(CurrentMail.MessageId, oResult, "Email validation failed", _EmailAccountID,
AddToEmailQueueMSSQL(_CurrentMail.MessageId, oResult, "Email validation failed", _EmailAccountID,
_RejectionTemplateId, ErrorCode.SenderValidationFailed, "", "")
' Return early from processing eml
@@ -191,13 +210,14 @@ Public Class clsWorkEmail
End If
If CURRENT_MAIL_SUBJECT.Contains("[PROCESSMANAGER]") Then
Return PROCESS_MANAGER_IN(CurrentMail)
Return ProcessManager_IN(_CurrentMail)
Else
_Logger.Debug("CommonEmail-Process-Sniffer")
Dim oCommonEmailResult = COMMON_EMAIL_IN(CurrentMail)
' Allgemeine Verarbeitung der EMail
Dim oCommonEmailResult = CommonEmail_IN(_CurrentMail)
If oCommonEmailResult = False Then
Return False
@@ -206,19 +226,18 @@ Public Class clsWorkEmail
If CURRENT_ATTMT_COUNT = 0 Then
_Logger.Info("### Mail contained no Attachments!! ###")
Dim oRejectionCodeString = GetRejectionCodeString(CurrentMail.MessageId, ErrorCode.NoAttachments)
InsertHistoryEntryWithStatus(CurrentMail, "REJECTED", oRejectionCodeString)
AddTrackingStatusMSSQL(CurrentMail.MessageId, oRejectionCodeString, "No Attachments", "", "EMailProfiler")
Dim oRejectionCodeString = GetRejectionCodeString(_CurrentMail.MessageId, ErrorCode.NoAttachments)
InsertHistoryEntryWithStatus(_CurrentMail, "REJECTED", oRejectionCodeString)
AddTrackingStatusMSSQL(_CurrentMail.MessageId, oRejectionCodeString, "No Attachments", "", "EMailProfiler")
Dim oBody = EmailStrings.EMAIL_NO_FERDS
If AddToEmailQueueMSSQL(CurrentMail.MessageId, oBody, "No Attachments", _EmailAccountID,
If AddToEmailQueueMSSQL(_CurrentMail.MessageId, oBody, "No Attachments", _EmailAccountID,
_RejectionTemplateId, ErrorCode.NoAttachments, "", "") = True Then
CURRENT_ImapObject.DeleteMessageByUID(poUID)
End If
Else
' Jetzt werden die ggf gefundenen Attachment-Fehler überprüft und verarbeitet
Dim oNormalAttachmentsNotValid As Boolean = False
Dim oEmbeddedAttachmentsNotValid As Boolean = False
@@ -228,9 +247,9 @@ Public Class clsWorkEmail
Any(Function(emb) emb.EmbeddedFiles.Any(Function(ext) ext.IsAttachmentValid = False))
If oEmbeddedAttachmentsNotValid = True Then
Dim oRejectionCodeString = GetRejectionCodeString(CurrentMail.MessageId, ErrorCode.EmbeddedFileAttachmentCorrupt)
InsertHistoryEntryWithStatus(CurrentMail, "REJECTED", oRejectionCodeString)
AddTrackingStatusMSSQL(CurrentMail.MessageId, oRejectionCodeString, "Embedded File corrupt", "", "EMailProfiler")
Dim oRejectionCodeString = GetRejectionCodeString(_CurrentMail.MessageId, ErrorCode.EmbeddedFileAttachmentCorrupt)
InsertHistoryEntryWithStatus(_CurrentMail, "REJECTED", oRejectionCodeString)
AddTrackingStatusMSSQL(_CurrentMail.MessageId, oRejectionCodeString, "Embedded File corrupt", "", "EMailProfiler")
SendRejectionMailToSenderIfEmbeddedAttachmentsAreNotValid()
@@ -239,7 +258,7 @@ Public Class clsWorkEmail
Else
If IS_LOCAL_TEST = False Then
InsertHistoryEntry(CurrentMail)
InsertHistoryEntry(_CurrentMail)
End If
oNormalAttachmentsNotValid = EmailAttachments.Any(Function(ext) ext.IsAttachmentValid = False)
@@ -273,7 +292,7 @@ Public Class clsWorkEmail
If oHtmlFilenameList.IsNotNullOrEmpty() Then
AddToEmailQueueMSSQL(CurrentMail.MessageId, "", "Attachment invalid", _EmailAccountID, _InfoTemplateId, ErrorCode.NormalFileAttachmentCorrupt, oHtmlFilenameList, "")
AddToEmailQueueMSSQL(_CurrentMail.MessageId, "", "Attachment invalid", _EmailAccountID, _InfoTemplateId, ErrorCode.NormalFileAttachmentCorrupt, oHtmlFilenameList, "")
End If
End Sub
@@ -287,7 +306,7 @@ Public Class clsWorkEmail
Dim oHtmlFilenameList As String = GetHtmlFilenameList()
If oHtmlFilenameList.IsNotNullOrEmpty() Then
AddToEmailQueueMSSQL(CurrentMail.MessageId, "", "Attachment invalid", _EmailAccountID, _RejectionTemplateId, ErrorCode.EmbeddedFileAttachmentCorrupt, oHtmlFilenameList, "")
AddToEmailQueueMSSQL(_CurrentMail.MessageId, "", "Attachment invalid", _EmailAccountID, _RejectionTemplateId, ErrorCode.EmbeddedFileAttachmentCorrupt, oHtmlFilenameList, "")
End If
End Sub
@@ -305,7 +324,7 @@ Public Class clsWorkEmail
If attachmentItem.IsAttachmentValid = False Or oEmbeddedAttachmentsInvalid = True Then
AddTrackingStatusMSSQL(CurrentMail.MessageId, attachmentItem.OrgFileName, "FILE CONSISTENCY NOT OK", attachmentItem.ErrorCodeComment, "EMail Profiler")
AddTrackingStatusMSSQL(_CurrentMail.MessageId, attachmentItem.OrgFileName, "FILE CONSISTENCY NOT OK", attachmentItem.ErrorCodeComment, "EMail Profiler")
filenameHtmlString += "<li>" + attachmentItem.OrgFileName + "</li>"
End If
@@ -317,7 +336,7 @@ Public Class clsWorkEmail
For Each embeddedItem In attachmentItem.EmbeddedFiles
If embeddedItem.IsAttachmentValid = False Then
AddTrackingStatusMSSQL(CurrentMail.MessageId, embeddedItem.OrgFileName, "EMBEDDED FILE CONSISTENCY NOT OK", embeddedItem.ErrorCodeComment, "EMail Profiler")
AddTrackingStatusMSSQL(_CurrentMail.MessageId, embeddedItem.OrgFileName, "EMBEDDED FILE CONSISTENCY NOT OK", embeddedItem.ErrorCodeComment, "EMail Profiler")
embeddedFilenamesHtmlString += "<li>" + embeddedItem.OrgFileName + "</li>"
End If
@@ -524,7 +543,8 @@ Public Class clsWorkEmail
Return True
End Function
Private Function PROCESS_MANAGER_IN(pCurrentMail As MailContainer) As Boolean
Private Function ProcessManager_IN(pCurrentMail As MailContainer) As Boolean
Try
_Logger.Info(String.Format("PM-related message found....[{0}]", pCurrentMail.Mail.Subject))
@@ -534,7 +554,6 @@ Public Class clsWorkEmail
Dim TEMP_PROCESS_PROFILE_DT As DataTable = DT_POLL_PROCESS
Dim PM_ROW As DataRow() = TEMP_PROCESS_PROFILE_DT.Select(oExpression)
For Each row As DataRow In PM_ROW
Try
WM_REFERENCE_INDEX = row("WM_REFERENCE_INDEX")
Catch ex As Exception
@@ -548,11 +567,9 @@ Public Class clsWorkEmail
WM_IDX_BODY_SUBSTR_LENGTH = row("WM_IDX_BODY_SUBSTR_LENGTH")
DeleteMail = row("DELETE_MAIL")
If COPY2HDD(pCurrentMail, row("COPY_2_HDD"), row("PATH_ORIGINAL"), row("PATH_EMAIL_ERRORS"), False) = True Then
EXTRACT_BODY(pCurrentMail)
If Copy2HDD(pCurrentMail, row("COPY_2_HDD"), row("PATH_ORIGINAL"), row("PATH_EMAIL_ERRORS"), False) = True Then
ExtractBody(pCurrentMail)
End If
Next
If CURRENT_MAIL_SUBJECT.Contains("[PROCESSMANAGER][EA]") Then
@@ -565,9 +582,9 @@ Public Class clsWorkEmail
_Logger.Info(String.Format("Keyword contained a : at end...removing it..."))
CURRENT_MAIL_BODY_ANSWER1 = CURRENT_MAIL_BODY_ANSWER1.Replace(":", "")
End If
If GET_WMDOC_INFO() = True Then
If GetWMDocInfo() = True Then
If DT_STEPS.Rows.Count > 0 Then
WORK_POLL_STEPS()
WorkPollSteps()
Else
_Logger.Info("No steps configured for this Profile ....")
End If
@@ -583,7 +600,7 @@ Public Class clsWorkEmail
Return False
End Try
End Function
Dim DoubleBytes As Double
Default Public Property FormatBytes(ByVal BytesCaller As ULong) As String
Get
Try
@@ -614,7 +631,8 @@ Public Class clsWorkEmail
End Set
End Property
Function COMMON_EMAIL_IN(pCurrentMail As MailContainer) As Boolean
Function CommonEmail_IN(pCurrentMail As MailContainer) As Boolean
Try
_Logger.Info(String.Format("COMMON_EMAIL_IN...Subject [{0}]", pCurrentMail.Mail.Subject))
@@ -641,6 +659,7 @@ Public Class clsWorkEmail
Dim oPathOriginal As String = oRow.ItemEx("PATH_ORIGINAL", "")
Dim oExtractMainPath As String = oRow.ItemEx("PATH_EMAIL_TEMP", "")
Try
Dim oSplit As String()
Dim oStorage As String
@@ -679,9 +698,9 @@ Public Class clsWorkEmail
_Logger.Warn($"Unexpected Error in Checking RemainingTotalFreeSpace for Storage [{oExtractMainPath}]: {ex.Message}")
End Try
If COPY2HDD(pCurrentMail, oRow("COPY_2_HDD"), oRow("PATH_ORIGINAL"), oRow("PATH_EMAIL_ERRORS"), True) = True Then
If ExtractAttachments(pCurrentMail, oExtractMainPath) = True Then
If Copy2HDD(pCurrentMail, oRow("COPY_2_HDD"), oRow("PATH_ORIGINAL"), oRow("PATH_EMAIL_ERRORS"), True) = True Then
Dim oAllowXMLReceipts As Boolean = oRow("ALLOW_XML_RECEIPTS")
If ExtractAttachments(pCurrentMail, oExtractMainPath, oAllowXMLReceipts) = True Then
Return True
Else
_Logger.Warn("!##Returning false from EXTRACT_ATTACHMENTS!##")
@@ -763,7 +782,8 @@ Public Class clsWorkEmail
End Try
End Function
Private Function COPY2HDD(pCurrentMail As MailContainer, pShouldCopyToDisk As Boolean, pDestination As String, pPathErrors As String, pUseMessageIdAsFilename As Boolean) As Boolean
Private Function Copy2HDD(pCurrentMail As MailContainer, pShouldCopyToDisk As Boolean, pDestination As String, pPathErrors As String, pUseMessageIdAsFilename As Boolean) As Boolean
Try
If pShouldCopyToDisk = True Then
_Logger.Debug("COPY_2_HDD is ACTIVE!")
@@ -807,7 +827,8 @@ Public Class clsWorkEmail
Return False
End Try
End Function
Private Function EXTRACT_BODY(pCurrentMail As MailContainer)
Private Function ExtractBody(pCurrentMail As MailContainer)
Dim oTable As DataTable = _DB_MSSQL.GetDatatable("SELECT * FROM TBDD_FUNCTION_REGEX WHERE UPPER(FUNCTION_NAME) IN (UPPER('EMAIL_PROFILER - RemoveHTMLText'),UPPER('EMAIL_PROFILER - RemoveHTMLText1'))")
Dim oBodyText As String = ""
@@ -903,7 +924,7 @@ Public Class clsWorkEmail
End Try
End Function
Private Function ExtractAttachments(pCurrentMail As MailContainer, pExtractPath As String) As Boolean
Private Function ExtractAttachments(pCurrentMail As MailContainer, pExtractPath As String, pAllowXMLReceipts As Boolean) As Boolean
_Logger.Debug("In ExtractAttachments - pExtractPath = [{0}]", pExtractPath)
CURRENT_ATTMT_COUNT = 0
@@ -926,18 +947,24 @@ Public Class clsWorkEmail
Return True
End If
Dim oAttachmentCount As Integer = 0
Dim oAttachmentCount As Integer = 0 ' Anzahl gültige Anhänge
Dim AttachmentPosition As Integer = 0 ' Position des Anhangs in der EMail
For Each oAttachment As MimeData In pCurrentMail.Mail.Attachments
Dim oAttachmentList As List(Of MimeData) = GetPurgedAttachmentList(pCurrentMail.Mail.Attachments, pAllowXMLReceipts)
For Each oAttachment As MimeData In oAttachmentList
_Logger.Info("Working on Attachment [{0}]", oAttachment.SafeFileName)
AttachmentPosition += 1
Dim oEmailAttachment As EmailAttachment = New EmailAttachment() With
{
.OrgFileName = oAttachment.SafeFileName
.OrgFileName = oAttachment.SafeFileName,
.AttachmentPosition = AttachmentPosition
}
EmailAttachments.Add(oEmailAttachment)
If ValidateFileExtension(oEmailAttachment) = False Then
If ValidateFileExtension(oEmailAttachment, pAllowXMLReceipts) = False Then
oEmailAttachment.ErrorCodeValue = ErrorCode.NormalFileAttachmentCorrupt
Continue For
End If
@@ -976,14 +1003,25 @@ Public Class clsWorkEmail
' Verarbeite Embedded Attachments
WorkEmbeddedAttachments(oEmailAttachment, oGdPicturePDF)
' Prüfen ob es ungültige Anhänge gibt.
Dim oEmbeddedAttachmentsNotValid As Boolean = EmailAttachments.
Where(Function(att) att.EmbeddedFiles.Count > 0).
Any(Function(emb) emb.EmbeddedFiles.Any(Function(ext) ext.IsAttachmentValid = False))
If oEmbeddedAttachmentsNotValid = True Then
MESSAGE_ERROR = True
Continue For
End If
Else
oAttachmentCount -= 1
CleanUpFilePath(oEmailAttachment.DestFilePath)
UpdateAttachmentTableAfterError(oEmailAttachment.OrgFileName, pCurrentMail.MessageId, "PDF Structure corrupt")
oEmailAttachment.FileStatus = oStatus
oEmailAttachment.ErrorCodeValue = ErrorCode.NormalFileAttachmentCorrupt
oEmailAttachment.ErrorCodeComment = "PDF Structure corrupt"
oEmailAttachment.IsAttachmentValid = False
MESSAGE_ERROR = True
Continue For
End If
@@ -1008,6 +1046,47 @@ Public Class clsWorkEmail
End Function
''' <summary>
''' Holt aus alle Anhängen diejenigen raus,
''' die einen erlaubten Dateianhang haben
''' </summary>
''' <param name="pAttachmentList"></param>
''' <param name="pAllowXMLReceipts"></param>
''' <returns>Liste der Dateien, die wir verarbeiten wollen, nothing im Fehlerfall</returns>
Private Function GetPurgedAttachmentList(pAttachmentList As IMimeDataReadOnlyCollection, pAllowXMLReceipts As Boolean) As List(Of MimeData)
_Logger.Debug("GetPurgedAttachmentList()")
Try
Dim retValue As List(Of MimeData) = New List(Of MimeData)
Dim oIsValidExtension As Boolean = False
For Each oAttachment As MimeData In pAttachmentList
Dim lowerFilename = oAttachment.SafeFileName.ToLower
If pAllowXMLReceipts = True Then
oIsValidExtension = _ValidFirstExtensions.Any(Function(ext) lowerFilename.EndsWith(ext))
Else
oIsValidExtension = _ValidExtensions.Any(Function(ext) lowerFilename.EndsWith(ext))
End If
If oIsValidExtension = True Then
retValue.Add(oAttachment)
End If
Next
_Logger.Debug("GetPurgedAttachmentList() retValue contains [{0}] attachments.", retValue.Count)
Return retValue
Catch ex As Exception
_Logger.Error(ex)
End Try
Return Nothing
End Function
Private Sub WorkEmbeddedAttachments(pEmailAttachment As EmailAttachment, pGDPicturePDF As GdPicturePDF)
Dim embeddedFileCount As Integer = pGDPicturePDF.GetEmbeddedFileCount()
@@ -1027,7 +1106,7 @@ Public Class clsWorkEmail
oEmbeddedFile.FileStatus = pGDPicturePDF.GetStat()
If oEmbeddedFile.FileStatus = GdPictureStatus.OK Then
If ValidateFileExtension(oEmbeddedFile) = False Then
If ValidateFileExtension(oEmbeddedFile, False) = False Then
oEmbeddedFile.ErrorCodeValue = ErrorCode.EmbeddedFileAttachmentCorrupt
Continue For
End If
@@ -1082,6 +1161,38 @@ Public Class clsWorkEmail
End Try
End Function
''' <summary>
''' Aktualisiert Datensätze in der Tabelle TBEMLP_HISTORY_ATTACHMENT
''' wenn ein Fehler bei einem Attachment aufgetreten ist.
''' </summary>
Private Sub UpdateAttachmentTableAfterError(pOrgFileName As String, pMessageID As String, pComment As String)
If String.IsNullOrEmpty(pOrgFileName) Then
_Logger.Info("Parameter [pOrgFileName] missing")
Return
End If
If String.IsNullOrEmpty(pMessageID) Then
_Logger.Info("Parameter [pMessageID] missing")
Return
End If
If pComment Is Nothing Then
pComment = "-"
Return
End If
Dim updateSQL As String = "UPDATE [DD_ECM].[dbo].[TBEMLP_HISTORY_ATTACHMENT] SET COMMENT = '@PARAM_COMMENT', EMAIL_ATTMT_INDEX = '-' WHERE EMAIL_MSGID = '@PARAM_MSGID' AND EMAIL_ATTMT = '@PARAM_ORGFILE';"
updateSQL = updateSQL.Replace("@PARAM_COMMENT", pComment)
updateSQL = updateSQL.Replace("@PARAM_MSGID", pMessageID)
updateSQL = updateSQL.Replace("@PARAM_ORGFILE", pOrgFileName)
_Logger.Info("Execute UPDATE-SQL: [{0}]", updateSQL)
_DB_MSSQL.ExecuteNonQuery(updateSQL)
End Sub
''' <summary>
''' Falls Datei bereits existiert, lösche sie jetzt
''' </summary>
@@ -1115,13 +1226,19 @@ Public Class clsWorkEmail
End Try
End Function
Private Function ValidateFileExtension(pAttachmentData As EmailAttachment) As Boolean
Private Function ValidateFileExtension(pAttachmentData As EmailAttachment, pAllowXMLReceipts As Boolean) As Boolean
_Logger.Debug("Validate extension of [{0}]", pAttachmentData.OrgFileName)
Dim lowerFilename = pAttachmentData.OrgFileName.ToLower
Dim oIsValidExtension = _ValidExtensions.Any(Function(ext) lowerFilename.EndsWith(ext))
Dim oIsValidExtension As Boolean = False
Dim oIsGraphicExtension = _GraphicExtensions.Any(Function(ext) lowerFilename.EndsWith(ext))
If pAllowXMLReceipts = True AndAlso pAttachmentData.AttachmentPosition = 1 Then
oIsValidExtension = _ValidFirstExtensions.Any(Function(ext) lowerFilename.EndsWith(ext))
Else
oIsValidExtension = _ValidExtensions.Any(Function(ext) lowerFilename.EndsWith(ext))
End If
If oIsValidExtension = False Then
If oIsGraphicExtension = False Then
_Logger.Warn("File has no valid extension, and it has no graphic extension. In this case we have to inform the sender!")
@@ -1135,187 +1252,6 @@ Public Class clsWorkEmail
Return True
End Function
' MP - 15.11.2024 - Logik obsolet
'Private Function EXTRACT_ATTACHMENTS(pCurrentMail As MailContainer, pExtractPath As String, pErrorPath As String)
' _Logger.Debug("In EXTRACT_ATTACHMENTS...")
' _Logger.Debug(String.Format("PATH_TEMP[{0}]", pExtractPath))
' Dim oAttachmentCount As Integer
' oAttachmentCount = 0
' TEMP_WORK_FILES.Clear()
' Try
' If CurrentTempMailPath <> Nothing Then
' If File.Exists(CurrentTempMailPath) Then
' Dim oATTFilename = ""
' For Each oAttachment As MimeData In pCurrentMail.Mail.Attachments
' oATTFilename = oAttachment.SafeFileName.ToString.ToLower
' Dim oValidExtensions = New List(Of String) From {"pdf", "xls", "xlsx", "doc", "docx", "ppt", "pptx"}
' Dim oGraphicExtensions = New List(Of String) From {"jpg", "bmp", "jpeg", "gif", "png", "xml"}
' Dim oValidExt = oValidExtensions.Any(Function(ext) oATTFilename.EndsWith(ext))
' If oValidExt = False Then
' _Logger.Info("Invalid FileExtension [{0}]", oATTFilename)
' Dim GraphicExt = oGraphicExtensions.Any(Function(ext) oATTFilename.EndsWith(ext))
' If GraphicExt = False Then
' Dim oInfo = $"Consistency or extension of attached file {oATTFilename} is not ok."
' AddTrackingStatusMSSQL(CurrentMail.MessageId, oInfo, "PDF CONSISTENCY NOT OK", "Info GUI", "EML_PROF_EXTR_ATT1")
' AddToEmailQueueMSSQL(CurrentMail.MessageId, oInfo, "PDF CONSISTENCY NOT OK", _EmailAccountID,
' _InfoTemplateId, ErrorCode.NormalFileAttachmentCorrupt, oATTFilename, "")
' End If
' Continue For
' End If
' Dim oAttachmentFilePath = ""
' _Logger.Info("Working on Attachment [{0}]", oAttachment.SafeFileName)
' Try
' Dim oFileInfo = New FileInfo(oAttachment.SafeFileName)
' Dim oFilenameWithoutExtension = Path.GetFileNameWithoutExtension(oAttachment.SafeFileName)
' Dim oFilename = StringEx.ConvertTextToSlug(oFilenameWithoutExtension) & oFileInfo.Extension
' 'Dim oAttachmentFileName = $"{CURRENT_MAIL_MESSAGE_ID}~{pCurrentMail.SenderDomain}~{oFilename}"
' Dim oAttachmentFileName = $"{pCurrentMail.MessageId}~Attm{oAttachmentCount}{oFileInfo.Extension}"
' _Logger.Debug("Final Filename for Attachment: [{0}]", oAttachmentFileName)
' Dim oExtractTempPath = Path.Combine(pExtractPath, "Temp")
' If Directory.Exists(oExtractTempPath) = False Then
' Directory.CreateDirectory(oExtractTempPath)
' End If
' oAttachmentFilePath = Path.Combine(oExtractTempPath, oAttachmentFileName)
' _Logger.Debug("Final Path for Attachment: [{0}]", oAttachmentFilePath)
' If File.Exists(oAttachmentFilePath) Then
' _Logger.Warn("File [{0}] already exists!", oAttachmentFilePath)
' File.Delete(oAttachmentFilePath)
' End If
' _Logger.Debug(String.Format("Trying to save attachment [{0}]", oAttachmentFilePath))
' Try
' oAttachment.Save(oAttachmentFilePath)
' 'oAttachment.Save(oAttachmentFileString)
' Dim oFileInfo1 As New FileInfo(oAttachmentFilePath)
' 'ToDo Konsistenz prüfen
' If oFileInfo.Extension.ToLower = ".pdf" Then
' Dim oPDFConsistent As Boolean = True
' Dim oLicenseManager As New LicenseManager
' oLicenseManager.RegisterKEY(GDPictureLicense)
' Dim oGdPicturePDF As New GdPicturePDF()
' ' Lic
' Dim oStatus As GdPictureStatus = oGdPicturePDF.LoadFromFile(oAttachmentFilePath, True)
' If oStatus <> GdPictureStatus.OK Then
' oPDFConsistent = False
' Dim oResult = $"PDF-Consistency of attached file {oATTFilename} is not ok. ({oStatus.ToString})"
' AddTrackingStatusMSSQL(CurrentMail.MessageId, oResult, "PDF CONSISTENCY NOT OK", "Info GUI", "EML_PROF_EXTR_ATT2")
' AddToEmailQueueMSSQL(CurrentMail.MessageId, oResult, "PDF CONSISTENCY NOT OK", _EmailAccountID,
' _InfoTemplateId, ErrorCode.EmbeddedFileAttachmentCorrupt, oATTFilename, "")
' File.Delete(oAttachmentFilePath)
' Continue For
' Else
' Dim embeddedFileCount As Integer = oGdPicturePDF.GetEmbeddedFileCount()
' If embeddedFileCount > 0 Then
' For i As Integer = 0 To embeddedFileCount - 1
' Dim oEmbAttName As String = oGdPicturePDF.GetEmbeddedFileName(i)
' Dim fileDetail As IO.FileInfo
' fileDetail = My.Computer.FileSystem.GetFileInfo(oEmbAttName)
' If oGdPicturePDF.GetStat() = GdPictureStatus.OK Then
' Dim FileSize As Integer = oGdPicturePDF.GetEmbeddedFileSize(i)
' oValidExt = oValidExtensions.Any(Function(ext) oEmbAttName.EndsWith(ext))
' If oValidExt = False Then
' _Logger.Info("Invalid FileExtension of embedded file [{0}]", oEmbAttName)
' Dim GraphicExt = oGraphicExtensions.Any(Function(ext) oEmbAttName.EndsWith(ext))
' If GraphicExt = False Then
' Dim oInfo = $"Consistency or extension of attached file [{oEmbAttName}] is not ok."
' AddTrackingStatusMSSQL(CurrentMail.MessageId, oInfo, "Extension invalid", "Info GUI", "EML_PROF_EXTR_ATT3")
' AddToEmailQueueMSSQL(CurrentMail.MessageId, oInfo, "Extension invalid", _EmailAccountID,
' _InfoTemplateId, ErrorCode.EmbeddedFileAttachmentCorrupt, oEmbAttName, "")
' End If
' Continue For
' End If
' If oGdPicturePDF.GetStat() = GdPictureStatus.OK Then
' Dim FileData As Byte() = New Byte(FileSize) {}
' Dim status As GdPictureStatus = oGdPicturePDF.ExtractEmbeddedFile(0, FileData)
' If status <> GdPictureStatus.OK Or FileSize = 0 Then
' oPDFConsistent = False
' Dim oResult = $"Consistency or PDF-State of embedded file [{oEmbAttName}] is not ok."
' AddTrackingStatusMSSQL(CurrentMail.MessageId, oResult, "PDF CONSISTENCY EMBEDDED FILE NOT OK", "Info GUI", "EML_PROF_EXTR_ATT4")
' AddToEmailQueueMSSQL(CurrentMail.MessageId, oResult, "PDF CONSISTENCY EMBEDDED FILE NOT OK", _EmailAccountID,
' _InfoTemplateId, ErrorCode.EmbeddedFileAttachmentCorrupt, oEmbAttName, "")
' Continue For
' End If
' End If
' End If
' Next
' End If
' End If
' End If
' Dim oFileLength As Long = oFileInfo1.Length
' If oFileLength > 2 Then
' _Logger.Info(String.Format("Attachment saved to [{0}]", oAttachmentFilePath))
' InsertAttachmentHistoryEntry(pCurrentMail, oAttachment.SafeFileName, oAttachmentFileName)
' oAttachmentCount += 1
' Else
' _Logger.Warn($"##!! oFileLength for AttachmentObjects is <2 !!##")
' Dim oResult = $"Consistency of attached file [{oAttachment.SafeFileName}] is not ok."
' AddTrackingStatusMSSQL(CurrentMail.MessageId, oResult, "CONSISTENCY ATTACHED FILE NOT OK", "Info GUI", "EML_PROF_EXTR_ATT5")
' AddToEmailQueueMSSQL(CurrentMail.MessageId, oResult, "CONSISTENCY ATTACHED FILE NOT OK", _EmailAccountID,
' _InfoTemplateId, ErrorCode.EmbeddedFileAttachmentCorrupt, oAttachment.SafeFileName, "")
' Try
' File.Delete(oAttachmentFilePath)
' Catch ex As Exception
' _Logger.Error(ex)
' End Try
' End If
' Catch ex As Exception
' _Logger.Warn($"Error while saving attachment-name: {ex.Message} - AttachmentName: {oAttachmentFilePath}")
' MESSAGE_ERROR = True
' End Try
' Catch ex As Exception
' _Logger.Warn($"Error while creating and saving attachment-name: {ex.Message} - AttachmentName: {oAttachmentFilePath}")
' MESSAGE_ERROR = True
' End Try
' TEMP_WORK_FILES.Add(oAttachmentFilePath)
' Next
' Else
' _Logger.Warn($"If cause 2 EXTRACT_ATTACHMENTS: {CurrentTempMailPath} not existing")
' End If
' Else
' _Logger.Warn($"EXTRACT_ATTACHMENTSIf cause 1: CURRENT_TEMP_MAIL_PATH is NOTHING")
' End If
' CURRENT_ATTMT_COUNT = oAttachmentCount
' If MESSAGE_ERROR = True Then
' WorkTempFiles("delete")
' Return False
' Else
' WorkTempFiles("move")
' Return True
' End If
' Catch ex As Exception
' _Logger.Error(ex)
' MESSAGE_ERROR = True
' Return False
' End Try
'End Function
Private Sub WorkTempFiles(pAction As String)
For Each _file In TEMP_WORK_FILES
_Logger.Debug("Working ({0}) on temp work file: [{1}]", pAction, _file)
@@ -1487,7 +1423,7 @@ Public Class clsWorkEmail
End Function
Private Function WORK_POLL_STEPS() As Boolean
Private Function WorkPollSteps() As Boolean
Try
Dim oFoundSomething As Boolean = False
_worked_email = False
@@ -1505,7 +1441,7 @@ Public Class clsWorkEmail
Dim sql As String = String.Format("SELECT * FROM TBEMLP_POLL_INDEXING_STEPS WHERE STEP_ID = {0} AND ACTIVE = 1", POLL_STEP_GUID)
DT_INDEXING_STEPS = _DB_MSSQL.GetDatatable(sql)
If DT_INDEXING_STEPS.Rows.Count > 0 Then
WORK_INDEXING_STEPS()
WorkIndexingSteps()
Else
_Logger.Info("No Indexing Steps found?! - SQL: " & sql)
End If
@@ -1523,7 +1459,7 @@ Public Class clsWorkEmail
If DT_INDEXING_STEPS.Rows.Count >= 1 Then
_Logger.Info($"An index for direct answer was configured. Therefore it will be used...")
End If
WORK_INDEXING_STEPS()
WorkIndexingSteps()
_worked_email = True
End If
@@ -1545,7 +1481,8 @@ Public Class clsWorkEmail
Return False
End Try
End Function
Private Function WORK_INDEXING_STEPS() As Boolean
Private Function WorkIndexingSteps() As Boolean
Try
For Each row As DataRow In DT_INDEXING_STEPS.Rows
@@ -1565,6 +1502,7 @@ Public Class clsWorkEmail
Return False
End Try
End Function
Private Function IndexFile(oidxname As String, oidxvalue As String, oConcat_act_Value As Boolean)
Dim OArrIndex() As String
@@ -1615,9 +1553,9 @@ Public Class clsWorkEmail
End If
End Function
Private Function GET_WMDOC_INFO() As Boolean
Private Function GetWMDocInfo() As Boolean
Try
Dim oDOC_ID = REGEX_CHECK_DOC_ID(CURRENT_MAIL_SUBJECT.Replace("10636", "133092").Replace("10644", "133092"))
Dim oDOC_ID = RegExCheckDocID(CURRENT_MAIL_SUBJECT.Replace("10636", "133092").Replace("10644", "133092"))
If Not IsNothing(oDOC_ID) Then
Dim oDT_BASE_ATTR As DataTable = _DB_MSSQL.GetDatatableWithConnection("SELECT * FROM BaseAttributes WHERE dwDocID = " & oDOC_ID, _windreamConnectionString)
If Not IsNothing(oDT_BASE_ATTR) Then
@@ -1662,7 +1600,8 @@ Public Class clsWorkEmail
Return False
End Try
End Function
Public Function REGEX_CHECK_DOC_ID(SearchString As String)
Public Function RegExCheckDocID(SearchString As String)
Try
Dim oRegex As New Regex("\[DID#{1}([0-9]+)]{1}")
_Logger.Debug("REGEX_String before replacing: '" & SearchString & "'")

View File

@@ -1,23 +1,22 @@
Imports EmailProfiler.Common.ClassCurrent
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Database
Imports System.IO
Imports DigitalData.Modules.Base
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Messaging.Mail
Imports EmailProfiler.Common.ClassCurrent
Imports Limilabs.Mail
Imports Limilabs.Mail.Headers
Imports System.Reflection.Emit
Imports GdPicture14
Public Class clsWorker
Private ReadOnly Logger As Logger
Private ReadOnly Fetcher As MailFetcher
Private ReadOnly Database As MSSQLServer
Private ReadOnly UseWindream As Boolean = False
Private ReadOnly _Logger As Logger
Private ReadOnly _Fetcher As MailFetcher
Private ReadOnly _Database As MSSQLServer
Private ReadOnly _UseWindream As Boolean = False
Private ReadOnly ClassWindreamAllgemein As clsWindream_allgemein
Private ReadOnly ClassWindreamIndex As clsWindream_Index
Private ReadOnly ClassWorkMail As clsWorkEmail
Private ReadOnly _ClassWorkMail As clsWorkEmail
Private ReadOnly Encryption As clsEncryption
Private ReadOnly ProfileId As Integer = 0D
Private ReadOnly _ProfileId As Integer = 0D
Private ReadOnly EmailLimitationSender As String = ""
Private ReadOnly EmailLimitationEnabled As Boolean = False
@@ -25,106 +24,96 @@ Public Class clsWorker
Private ReadOnly LocalEmlFile As String = ""
Sub New(pLogConfig As LogConfig, pConnectionString As String, pWindreamConnectionString As String, pPollProfileId As Integer, pUseWindream As Boolean,
pEmailAccountID As Integer, pEmailPrefix As String, pEmailLimitationSender As String, pRejectionTemplateId As Integer, pInfoTemplateId As Integer, Optional pLocalEML As String = "")
Logger = pLogConfig.GetLogger
Sub New(pLogConfig As LogConfig, pConnectionString As String, pWindreamConnectionString As String, pPollProfileId As Integer, pConfigData As Config, Optional pLocalEML As String = "")
_Logger = pLogConfig.GetLogger
'ClassEmailImap = New clsEmailIMAP(pLogConfig)
Fetcher = New MailFetcher(pLogConfig)
Database = New MSSQLServer(pLogConfig, pConnectionString)
_Fetcher = New MailFetcher(pLogConfig)
_Database = New MSSQLServer(pLogConfig, pConnectionString)
UseWindream = pUseWindream
EmailLimitationSender = pEmailLimitationSender
_UseWindream = pConfigData.UseWindream
EmailLimitationSender = pConfigData.EmailSenderLimitation
If EmailLimitationSender.Contains("@") Then
Logger.Info("Email Sender Limitation active for address: [{0}]", EmailLimitationSender)
_Logger.Info("Email Sender Limitation active for address: [{0}]", EmailLimitationSender)
EmailLimitationEnabled = True
End If
If UseWindream Then
If _UseWindream Then
ClassWindreamAllgemein = New clsWindream_allgemein(pLogConfig)
ClassWindreamIndex = New clsWindream_Index(pLogConfig)
End If
ClassWorkMail = New clsWorkEmail(pLogConfig, pConnectionString, pWindreamConnectionString, pUseWindream, pEmailAccountID, pEmailPrefix, pRejectionTemplateId, pInfoTemplateId)
_ClassWorkMail = New clsWorkEmail(pLogConfig, pConnectionString, pWindreamConnectionString, pConfigData)
Encryption = New clsEncryption("!35452didalog=", pLogConfig)
ProfileId = pPollProfileId
_ProfileId = pPollProfileId
LocalEmlFile = pLocalEML
End Sub
Private Sub DeleteTempFiles()
For Each _file In TEMP_FILES
Logger.Debug("Trying to delete temp file: [{0}]", _file)
_Logger.Debug("Trying to delete temp file: [{0}]", _file)
If IO.File.Exists(_file) Then
If File.Exists(_file) Then
Try
IO.File.Delete(_file)
File.Delete(_file)
Catch ex As Exception
Logger.Error(ex)
Logger.Warn("Could not delete the tempfile from TEMP_FILES: [{0}]", _file)
_Logger.Error(ex)
_Logger.Warn("Could not delete the tempfile from TEMP_FILES: [{0}]", _file)
End Try
End If
Next
TEMP_FILES.Clear()
End Sub
Private Function LoadEmailAccounts() As DataTable
Return Database.GetDatatable("SELECT * FROM TBDD_EMAIL_ACCOUNT WHERE ACTIVE = 1")
Return _Database.GetDatatable("SELECT * FROM TBDD_EMAIL_ACCOUNT WHERE ACTIVE = 1")
End Function
Private Function LoadPollingProfiles(pProfileId As Integer) As DataTable
Dim oSQL = "SELECT * FROM TBEMLP_POLL_PROFILES WHERE ACTIVE = 1"
If ProfileId = 0 Then
If _ProfileId = 0 Then
oSQL &= " ORDER BY SEQUENCE"
Else
oSQL &= $" AND GUID = {pProfileId}"
End If
Return Database.GetDatatable(oSQL)
Return _Database.GetDatatable(oSQL)
End Function
Public Sub Start_WorkingProfiles(Optional LocalEmail As Boolean = False, Optional CallFromService As Boolean = False)
Public Sub Start_WorkingProfiles(Optional LocalEmail As Boolean = False)
Try
DeleteTempFiles()
IS_LOCAL_TEST = LocalEmail
If Database.DBInitialized = False Then
Logger.Warn("Database is not initialized. Exiting.")
If _Database.DBInitialized = False Then
_Logger.Warn("Database is not initialized. Exiting.")
Exit Sub
End If
Logger.Debug("now windream_init... ")
If UseWindream Then
_Logger.Debug("now windream_init... ")
If _UseWindream Then
If ClassWindreamAllgemein.Init = False Then
Logger.Info("windream could not be initialized!!")
_Logger.Info("windream could not be initialized!!")
Exit Sub
Else
Logger.Debug("windream_initialized!")
_Logger.Debug("windream_initialized!")
End If
End If
Dim EmailAccountTable As DataTable = LoadEmailAccounts()
Dim PollingProfileTable = LoadPollingProfiles(ProfileId)
Dim oSQLGDPicture = "SELECT LICENSE FROM TBDD_3RD_PARTY_MODULES WHERE ACTIVE = 1"
If CallFromService = True Then
oSQLGDPicture = "SELECT LICENSE FROM TBDD_3RD_PARTY_MODULES WHERE NAME = 'GDPICTURE EMAIL_PROFILER'"
End If
GDPictureLicense = Database.GetScalarValue(oSQLGDPicture)
Dim PollingProfileTable = LoadPollingProfiles(_ProfileId)
If IsNothing(PollingProfileTable) Then
Logger.Warn("Error while fetching Polling Profiles. Exiting.")
_Logger.Warn("Error while fetching Polling Profiles. Exiting.")
Exit Sub
End If
If PollingProfileTable.Rows.Count = 0 Then
Logger.Warn("No active Polling Profiles found. Exiting.")
_Logger.Warn("No active Polling Profiles found. Exiting.")
Exit Sub
End If
Logger.Debug("Count of active profiles: " & PollingProfileTable.Rows.Count.ToString)
_Logger.Debug("Count of active profiles: " & PollingProfileTable.Rows.Count.ToString)
For Each oProfile As DataRow In PollingProfileTable.Rows
@@ -133,31 +122,31 @@ Public Class clsWorker
CURRENT_PROFILE_GUID = oProfile.Item("GUID")
DT_POLL_PROCESS = Nothing
Dim sql = String.Format("SELECT * FROM TBEMLP_POLL_PROCESS WHERE PROFILE_ID = {0} AND ACTIVE = 1", CURRENT_PROFILE_GUID)
DT_POLL_PROCESS = Database.GetDatatable(sql)
DT_POLL_PROCESS = _Database.GetDatatable(sql)
If Not IsNothing(DT_POLL_PROCESS) Then
If DT_POLL_PROCESS.Rows.Count = 0 Then
Logger.Info("No processes configured for this Email-Profile - " & sql)
_Logger.Info("No processes configured for this Email-Profile - " & sql)
Continue For
Else
DT_STEPS = Nothing
DT_STEPS = Database.GetDatatable($"SELECT T.* FROM TBEMLP_POLL_STEPS T,TBEMLP_POLL_PROCESS T1 WHERE T.PROCESS_ID = T1.GUID AND T1.PROFILE_ID = {CURRENT_PROFILE_GUID} AND T1.ACTIVE = 1")
DT_STEPS = _Database.GetDatatable($"SELECT T.* FROM TBEMLP_POLL_STEPS T,TBEMLP_POLL_PROCESS T1 WHERE T.PROCESS_ID = T1.GUID AND T1.PROFILE_ID = {CURRENT_PROFILE_GUID} AND T1.ACTIVE = 1")
End If
Else
Logger.Warn("DT_POLL_PROCESS is nothing")
_Logger.Warn("DT_POLL_PROCESS is nothing")
Continue For
End If
CURRENT_EMAIL_GUID = 0
CURRENT_POLL_TYPE = oProfile.Item("POLL_TYPE")
Logger.Debug(String.Format("Working on profile: ({0}-{1}-{2}) ", oProfile.Item("GUID"), oProfile.Item("PROFILE_NAME"), CURRENT_POLL_TYPE))
_Logger.Debug(String.Format("Working on profile: ({0}-{1}-{2}) ", oProfile.Item("GUID"), oProfile.Item("PROFILE_NAME"), CURRENT_POLL_TYPE))
CURRENT_EMAIL_GUID = oProfile.Item("EMAIL_CONF_ID")
Dim FilteredRows As List(Of DataRow) = EmailAccountTable.
Select($"GUID = {CURRENT_EMAIL_GUID}").
ToList()
Logger.Debug("FilteredRows: " & FilteredRows.Count)
_Logger.Debug("FilteredRows: " & FilteredRows.Count)
If FilteredRows.Count = 1 Then
Dim oRow = FilteredRows(0)
@@ -170,18 +159,18 @@ Public Class clsWorker
Dim oMailArchiveFolder = oRow("ARCHIVE_FOLDER")
Dim oMailAuthType = oRow("AUTH_TYPE")
Logger.Debug("Mail Server: {0}", oMailServer)
Logger.Debug("Mail From: {0}", oMailFrom)
_Logger.Debug("Mail Server: {0}", oMailServer)
_Logger.Debug("Mail From: {0}", oMailFrom)
Dim PWPlain = Encryption.DecryptData(oMailPassword)
If Not IsNothing(PWPlain) Then
If PWPlain <> "" Then
oMailPassword = PWPlain
Else
Logger.Warn("PWPlain is string.empty - Could not decrypt passwort")
_Logger.Warn("PWPlain is string.empty - Could not decrypt passwort")
End If
Else
Logger.Warn("PWPlain is nothing - Could not decrypt passwort")
_Logger.Warn("PWPlain is nothing - Could not decrypt passwort")
End If
CURRENT_WORKMAIL_UID_LIST.Clear()
@@ -197,26 +186,24 @@ Public Class clsWorker
oPollResult = FetchMessages(oMailServer, oMailPortIn, oMailUser, oMailPassword, oMailAuthType, oMailArchiveFolder)
Case Else
Logger.Error("Poll Type [{0}] is not supported!", CURRENT_POLL_TYPE)
_Logger.Error("Poll Type [{0}] is not supported!", CURRENT_POLL_TYPE)
oPollResult = False
End Select
End If
If CURRENT_WORKMAIL_UID_LIST.Count() > 0 Or LocalEmail = True Then
If LocalEmail Then
Logger.Info("Working with local Mail")
_Logger.Info("Working with local Mail")
Dim oEmail As IMail = New MailBuilder().CreateFromEmlFile(LocalEmlFile)
Dim oUID = String.Concat(Now.Month.ToString, Now.Day, Now.Hour, Now.Minute, Now.Second)
ClassWorkMail.WorkEmailMessage(oEmail, oUID, oValidationSql)
'CURRENT_MAIL_MESSAGE = Nothing
_ClassWorkMail.WorkEmailMessage(oEmail, oUID, oValidationSql)
Else
Try
Logger.Info(String.Format("Pulled: [{0}] E-Mails", CURRENT_WORKMAIL_UID_LIST.Count()))
_Logger.Info(String.Format("Pulled: [{0}] E-Mails", CURRENT_WORKMAIL_UID_LIST.Count()))
For Each oMailId In CURRENT_WORKMAIL_UID_LIST
Dim oEmail As IMail = Fetcher.FetchMail(oMailId)
Dim oEmail As IMail = _Fetcher.FetchMail(oMailId)
If Not IsNothing(oEmail) Then
If EmailLimitationEnabled Then
@@ -225,52 +212,51 @@ Public Class clsWorker
oEmailFrom = m.Address
Next
If oEmailFrom <> EmailLimitationSender Then
Logger.Debug($"Skipping email {oEmailFrom} ...Subject [{oEmail.Subject}]")
_Logger.Debug($"Skipping email {oEmailFrom} ...Subject [{oEmail.Subject}]")
Continue For
End If
End If
If ClassWorkMail.WorkEmailMessage(oEmail, oMailId, oValidationSql) = True Then
' Hier wird die einzelne EMail jetzt verarbeitet
If _ClassWorkMail.WorkEmailMessage(oEmail, oMailId, oValidationSql) = True Then
If LocalEmlFile = "" Then
DeleteOrMoveEmailFile(oMailId)
End If
End If
Else
Logger.Info("### oEmail was nothing ###")
_Logger.Info("### oEmail was nothing ###")
End If
'CURRENT_MAIL_MESSAGE = Nothing
Next
If CURRENT_POLL_TYPE = "IMAP" And CURRENT_WORKMAIL_UID_LIST.Count > 0 Then
Fetcher.Disconnect()
_Fetcher.Disconnect()
End If
Catch ex As Exception
Logger.Error(ex)
Logger.Warn($"Unexpected Error working CURRENT_WORKMAIL_UID_LIST: {ex.Message} ")
_Logger.Error(ex)
_Logger.Warn($"Unexpected Error working CURRENT_WORKMAIL_UID_LIST: {ex.Message} ")
End Try
End If
Else
Logger.Debug(String.Format("No emails for profile!"))
_Logger.Debug(String.Format("No emails for profile!"))
End If
Else
Logger.Warn("For the Email-Profile ID " & CURRENT_EMAIL_GUID & " no record could be found!")
_Logger.Warn("For the Email-Profile ID " & CURRENT_EMAIL_GUID & " no record could be found!")
End If
Database.ExecuteNonQuery("UPDATE TBEMLP_POLL_PROFILES SET LAST_TICK = GETDATE() WHERE GUID = " & oProfile.Item("GUID").ToString)
_Database.ExecuteNonQuery("UPDATE TBEMLP_POLL_PROFILES SET LAST_TICK = GETDATE() WHERE GUID = " & oProfile.Item("GUID").ToString)
Else
Logger.Warn("For the Email-Profile ID " & CURRENT_EMAIL_GUID & " no record could be found! Check wether Email-Profile is active!")
_Logger.Warn("For the Email-Profile ID " & CURRENT_EMAIL_GUID & " no record could be found! Check wether Email-Profile is active!")
End If
Next
DeleteTempFiles()
Database.ExecuteNonQuery("UPDATE TBEMLP_CONFIG SET LAST_TICK = GETDATE() WHERE GUID = 1")
_Database.ExecuteNonQuery("UPDATE TBEMLP_CONFIG SET LAST_TICK = GETDATE() WHERE GUID = 1")
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
End Try
End Sub
@@ -282,9 +268,9 @@ Public Class clsWorker
Dim oClientId As String = pServer
Dim oClientSecret As String = pPassword
Dim oTenantId As String = pArchiveFolder
oSession = Fetcher.ConnectToO365(pUsername, oClientId, oTenantId, oClientSecret)
oSession = _Fetcher.ConnectToO365(pUsername, oClientId, oTenantId, oClientSecret)
Else
oSession = Fetcher.Connect(pServer, pPort, pUsername, pPassword, pAuthType, New MailSession.MailSessionOptions() With {
oSession = _Fetcher.Connect(pServer, pPort, pUsername, pPassword, pAuthType, New MailSession.MailSessionOptions() With {
.EnableTls1_1 = True,
.EnableTls1_2 = True
})
@@ -292,25 +278,25 @@ Public Class clsWorker
If oSession.Connected = False AndAlso oSession.Error IsNot Nothing Then
Logger.Warn("Connection to Mail Server failed!")
Logger.Error(oSession.Error)
_Logger.Warn("Connection to Mail Server failed!")
_Logger.Error(oSession.Error)
Return False
ElseIf oSession.Connected = False Then
Logger.Warn("Connection to Mail Server failed!")
_Logger.Warn("Connection to Mail Server failed!")
Return False
End If
CURRENT_ImapObject = Fetcher.Client
Dim oMailIds As List(Of Long) = Fetcher.ListAllMails()
CURRENT_ImapObject = _Fetcher.Client
Dim oMailIds As List(Of Long) = _Fetcher.ListAllMails()
If oMailIds Is Nothing Then
Logger.Warn("List of UIDs was Nothing. Exiting.")
_Logger.Warn("List of UIDs was Nothing. Exiting.")
Return False
End If
If oMailIds.Count = 0 Then
Logger.Debug("No Emails found.")
_Logger.Debug("No Emails found.")
Return True
End If
@@ -319,7 +305,7 @@ Public Class clsWorker
Return True
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
Return False
End Try
@@ -327,41 +313,41 @@ Public Class clsWorker
Private Sub DeleteOrMoveEmailFile(pMailId As Integer)
Try
If MESSAGE_ERROR = True Then
Logger.Warn("Did not delete or move Message with UID [{0}] as there was an MessageError!", pMailId)
_Logger.Warn("Did not delete or move Message with UID [{0}] as there was an MessageError!", pMailId)
Return
End If
If IsNothing(Fetcher.Client) Then
Logger.Warn("Did not delete or move Message with UID [{0}] as ImapClient is null", pMailId)
If IsNothing(_Fetcher.Client) Then
_Logger.Warn("Did not delete or move Message with UID [{0}] as ImapClient is null", pMailId)
Return
End If
If DeleteMail = True Then
Fetcher.Client.DeleteMessageByUID(pMailId)
Logger.Info("Email with Id [{0}] was deleted.", pMailId)
_Fetcher.Client.DeleteMessageByUID(pMailId)
_Logger.Info("Email with Id [{0}] was deleted.", pMailId)
Else
If TestImapFolderExists(SUCCESS_IMAP_FOLDER) Then
If Fetcher.Client.MoveByUID(pMailId, SUCCESS_IMAP_FOLDER) IsNot Nothing Then
Logger.Info("Email with UID [{0}] was moved", pMailId)
If _Fetcher.Client.MoveByUID(pMailId, SUCCESS_IMAP_FOLDER) IsNot Nothing Then
_Logger.Info("Email with UID [{0}] was moved", pMailId)
End If
Else
Logger.Warn("IMAP Folder [{0}] does not exist. Emails could not be moved!", SUCCESS_IMAP_FOLDER)
_Logger.Warn("IMAP Folder [{0}] does not exist. Emails could not be moved!", SUCCESS_IMAP_FOLDER)
End If
End If
Catch ex As Exception
Logger.Error(ex)
_Logger.Error(ex)
End Try
End Sub
Private Function TestImapFolderExists(pFolderName As String) As Boolean
Try
Return Fetcher.Client.
Return _Fetcher.Client.
GetFolders().
Where(Function(f) f.Name = pFolderName).
Any()
Catch ex As Exception
Logger.Warn("Could not get IMAP folders. Returning False.")
Logger.Error(ex)
_Logger.Warn("Could not get IMAP folders. Returning False.")
_Logger.Error(ex)
Return False
End Try
End Function

View File

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

View File

@@ -10,7 +10,7 @@
</configSections>
<connectionStrings>
<add name="EmailProfiler.Form.My.MySettings.MyDatasetConnString"
connectionString="Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd"
connectionString="Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;User ID=sa;Password=dd;Encrypt=True;TrustServerCertificate=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
<startup>
@@ -26,12 +26,6 @@
</runtime>
<userSettings>
<EmailProfiler.Form.My.MySettings>
<setting name="MyConnectionString" serializeAs="String">
<value>Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd</value>
</setting>
<setting name="MyServer" serializeAs="String">
<value />
</setting>
<setting name="EmailTest_Receipiant" serializeAs="String">
<value />
</setting>
@@ -45,6 +39,9 @@
</userSettings>
<applicationSettings>
<EmailProfiler.Form.My.MySettings>
<setting name="MyConnectionString" serializeAs="String">
<value>Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd</value>
</setting>
<setting name="FB_DATABASE" serializeAs="String">
<value />
</setting>

View File

@@ -1,22 +0,0 @@
Imports DigitalData.Modules.Config.ConfigAttributes
Public Class Config
<ConnectionString>
Public Property ConnectionString As String = ""
Public Property Debug As Boolean = False
Public Property EmailAccountId As Integer = 0
Public Property EmailTitlePrefix As String = "EmailProfiler"
Public Property EmailSenderLimitation As String = ""
Public Property UseWindream As Boolean = False
''' <summary>
''' GUID des EMail Templates das bei Ablehnungsmails verwendet wird.
''' Siehe Tabelle DD_ECM.dbo.TBDD_EMAIL_TEMPLATE
''' </summary>
Public Property RejectionTemplateId As Integer = 0
Public Property InfoTemplateId As Integer = 0
Public Property EmailTestReceiver As String = ""
Public Property EmailTestHTML As String = ""
End Class

View File

@@ -60,31 +60,35 @@
<Reference Include="DevExpress.XtraGrid.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" />
<Reference Include="DevExpress.XtraPrinting.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DigitalData.GUIs.Common, Version=2.5.6.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<Reference Include="DigitalData.GUIs.Common">
<HintPath>..\..\..\2_DLL Projekte\DDMonorepo\GUIs.Common\bin\Debug\DigitalData.GUIs.Common.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Base, Version=1.3.6.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<Reference Include="DigitalData.Modules.Base">
<HintPath>..\..\..\2_DLL Projekte\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Config, Version=1.2.2.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<Reference Include="DigitalData.Modules.Config">
<HintPath>..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.3.4.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<Reference Include="DigitalData.Modules.Database">
<HintPath>..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.6.3.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\..\2_DLL Projekte\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Messaging, Version=1.9.3.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<Reference Include="DigitalData.Modules.Messaging">
<HintPath>..\..\..\2_DLL Projekte\DDModules\Messaging\bin\Debug\DigitalData.Modules.Messaging.dll</HintPath>
</Reference>
<Reference Include="EmailProfiler.Common, Version=3.0.4.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\EmailProfiler.Common\bin\Debug\EmailProfiler.Common.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="Microsoft.Identity.Client, Version=4.55.0.0, Culture=neutral, PublicKeyToken=0a613f4dd989e8ae, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Identity.Client.4.55.0\lib\net461\Microsoft.Identity.Client.dll</HintPath>
</Reference>
<Reference Include="Microsoft.IdentityModel.Abstractions, Version=6.22.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Abstractions.6.22.0\lib\net461\Microsoft.IdentityModel.Abstractions.dll</HintPath>
</Reference>
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.5.0.5\lib\net46\NLog.dll</HintPath>
</Reference>
@@ -93,6 +97,7 @@
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.IdentityModel" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
@@ -119,7 +124,6 @@
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup>
<Compile Include="Config.vb" />
<Compile Include="frmMain.vb">
<SubType>Form</SubType>
</Compile>
@@ -151,6 +155,7 @@
<Compile Include="MyDataset.vb">
<DependentUpon>MyDataset.xsd</DependentUpon>
</Compile>
<Compile Include="Settings.vb" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="frmMain.resx">
@@ -206,19 +211,10 @@
</ItemGroup>
<ItemGroup>
<Content Include="envelope.ico" />
<Content Include="MailLicense.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<None Include="Resources\email_go.png" />
<None Include="Resources\key_16xLG.png" />
<None Include="Resources\Encrypt.png" />
<None Include="Resources\folder_Closed_16xLG.png" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\EmailProfiler.Common\EmailProfiler.Common.vbproj">
<Project>{9f748dcd-952e-40a0-9dad-65bf8a39b231}</Project>
<Name>EmailProfiler.Common</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
</Project>

View File

@@ -1,23 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<License>
<Id>4dc5ef40-f1a9-468b-994c-b7ed600ad878</Id>
<ProductName>Mail.dll</ProductName>
<SubscriptionUntil>2022-07-29</SubscriptionUntil>
<RegisteredTo>Digital Data GmbH</RegisteredTo>
<LicenseType>single developer</LicenseType>
<BuyerName>Digital Data GmbH</BuyerName>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
<Reference URI="">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<DigestValue>75MRtl4ipYelIZYlpT8O7QDX9Zc=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>Raxfkz6DfQVs/sMvH+F2nH0eHXD8FoUFSdP3t7AgBUdpABJQx86srlyuMSEhXPlc1THCqPouEVob4RsWnd9OXvTiPPSOUSK9zuNG6uz93KLAhpSD5PraAgBCF4jwZArlAp7aCNfZpHqQ3w6TRHS+CfravUU0AHHG3MZ1ZcRkGuo=</SignatureValue>
</Signature>
</License>

View File

@@ -12,8 +12,8 @@ Imports System.Runtime.InteropServices
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("Digital Data")>
<Assembly: AssemblyProduct("EmailProfiler Config")>
<Assembly: AssemblyCopyright("Copyright © 2024")>
<Assembly: AssemblyTrademark("2.14.0.0")>
<Assembly: AssemblyCopyright("Copyright © 2025")>
<Assembly: AssemblyTrademark("3.1.0")>
<Assembly: ComVisible(False)>
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.14.0.0")>
<Assembly: AssemblyVersion("3.1.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -15,7 +15,7 @@ Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0"), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.14.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
@@ -54,29 +54,14 @@ Namespace My
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security "& _
"Info=True;User ID=sa;Password=dd")> _
Public Property MyConnectionString() As String
Public ReadOnly Property MyConnectionString() As String
Get
Return CType(Me("MyConnectionString"),String)
End Get
Set
Me("MyConnectionString") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("")> _
Public Property MyServer() As String
Get
Return CType(Me("MyServer"),String)
End Get
Set
Me("MyServer") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
@@ -172,8 +157,8 @@ Namespace My
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.SpecialSettingAttribute(Global.System.Configuration.SpecialSetting.ConnectionString), _
Global.System.Configuration.DefaultSettingValueAttribute("Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security "& _
"Info=True;User ID=sa;Password=dd")> _
Global.System.Configuration.DefaultSettingValueAttribute("Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;User ID=sa;Passwo"& _
"rd=dd;Encrypt=True;TrustServerCertificate=True")> _
Public ReadOnly Property MyDatasetConnString() As String
Get
Return CType(Me("MyDatasetConnString"),String)

View File

@@ -2,12 +2,9 @@
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="My" GeneratedClassName="MySettings" UseMySettingsClassName="true">
<Profiles />
<Settings>
<Setting Name="MyConnectionString" Type="System.String" Scope="User">
<Setting Name="MyConnectionString" Type="System.String" Scope="Application">
<Value Profile="(Default)">Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd</Value>
</Setting>
<Setting Name="MyServer" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="EmailTest_Receipiant" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
@@ -38,10 +35,10 @@
<Setting Name="MyDatasetConnString" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
&lt;SerializableConnectionString xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt;
&lt;ConnectionString&gt;Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd&lt;/ConnectionString&gt;
&lt;ConnectionString&gt;Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;User ID=sa;Password=dd;Encrypt=True;TrustServerCertificate=True&lt;/ConnectionString&gt;
&lt;ProviderName&gt;System.Data.SqlClient&lt;/ProviderName&gt;
&lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd</Value>
<Value Profile="(Default)">Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;User ID=sa;Password=dd;Encrypt=True;TrustServerCertificate=True</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -1,3 +1,4 @@
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.GridLookUpEdit, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

File diff suppressed because it is too large Load Diff

View File

@@ -105,87 +105,160 @@ SELECT GUID, PROFILE_NAME, POLL_TYPE, EMAIL_CONF_ID, COMMENT, LAST_TICK, ACTIVE,
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TBEMLP_POLL_PROCESSTableAdapter" GeneratorDataComponentClassName="TBEMLP_POLL_PROCESSTableAdapter" Name="TBEMLP_POLL_PROCESS" UserDataComponentName="TBEMLP_POLL_PROCESSTableAdapter">
<MainSource>
<DbSource ConnectionRef="MyDatasetConnString (MySettings)" DbObjectName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DbSource ConnectionRef="MyDatasetConnString (MySettings)" DbObjectName="DD_ECM.dbo.TBEMLP_POLL_PROCESS" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM TBEMLP_POLL_PROCESS
WHERE (GUID = @Original_GUID)</CommandText>
<CommandText>DELETE FROM [TBEMLP_POLL_PROCESS] WHERE (([GUID] = @Original_GUID) AND ([PROCESS_NAME] = @Original_PROCESS_NAME) AND ([STEP_NAME] = @Original_STEP_NAME) AND ([PROFILE_ID] = @Original_PROFILE_ID) AND ([COPY_2_HDD] = @Original_COPY_2_HDD) AND ([WM_IMPORT] = @Original_WM_IMPORT) AND ((@IsNull_WM_OBJEKTTYPE = 1 AND [WM_OBJEKTTYPE] IS NULL) OR ([WM_OBJEKTTYPE] = @Original_WM_OBJEKTTYPE)) AND ((@IsNull_WM_VECTOR_LOG = 1 AND [WM_VECTOR_LOG] IS NULL) OR ([WM_VECTOR_LOG] = @Original_WM_VECTOR_LOG)) AND ((@IsNull_WM_PATH = 1 AND [WM_PATH] IS NULL) OR ([WM_PATH] = @Original_WM_PATH)) AND ((@IsNull_WM_FILE_NAME = 1 AND [WM_FILE_NAME] IS NULL) OR ([WM_FILE_NAME] = @Original_WM_FILE_NAME)) AND ((@IsNull_WM_REFERENCE_INDEX = 1 AND [WM_REFERENCE_INDEX] IS NULL) OR ([WM_REFERENCE_INDEX] = @Original_WM_REFERENCE_INDEX)) AND ([PATH_EMAIL_TEMP] = @Original_PATH_EMAIL_TEMP) AND ([PATH_EMAIL_ERRORS] = @Original_PATH_EMAIL_ERRORS) AND ([DELETE_MAIL] = @Original_DELETE_MAIL) AND ((@IsNull_COMMENT = 1 AND [COMMENT] IS NULL) OR ([COMMENT] = @Original_COMMENT)) AND ([ACTIVE] = @Original_ACTIVE) AND ((@IsNull_SEQUENCE = 1 AND [SEQUENCE] IS NULL) OR ([SEQUENCE] = @Original_SEQUENCE)) AND ((@IsNull_ADDED_WHO = 1 AND [ADDED_WHO] IS NULL) OR ([ADDED_WHO] = @Original_ADDED_WHO)) AND ((@IsNull_ADDED_WHEN = 1 AND [ADDED_WHEN] IS NULL) OR ([ADDED_WHEN] = @Original_ADDED_WHEN)) AND ((@IsNull_CHANGED_WHO = 1 AND [CHANGED_WHO] IS NULL) OR ([CHANGED_WHO] = @Original_CHANGED_WHO)) AND ((@IsNull_CHANGED_WHEN = 1 AND [CHANGED_WHEN] IS NULL) OR ([CHANGED_WHEN] = @Original_CHANGED_WHEN)) AND ([WM_IDX_BODY_TEXT] = @Original_WM_IDX_BODY_TEXT) AND ([WM_IDX_BODY_SUBSTR_LENGTH] = @Original_WM_IDX_BODY_SUBSTR_LENGTH) AND ((@IsNull_PATH_ORIGINAL = 1 AND [PATH_ORIGINAL] IS NULL) OR ([PATH_ORIGINAL] = @Original_PATH_ORIGINAL)) AND ((@IsNull_ALLOW_XML_RECEIPTS = 1 AND [ALLOW_XML_RECEIPTS] IS NULL) OR ([ALLOW_XML_RECEIPTS] = @Original_ALLOW_XML_RECEIPTS)))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PROCESS_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PROCESS_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_STEP_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="STEP_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_PROFILE_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PROFILE_ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_COPY_2_HDD" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="COPY_2_HDD" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_WM_IMPORT" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="WM_IMPORT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_OBJEKTTYPE" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_OBJEKTTYPE" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_OBJEKTTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_OBJEKTTYPE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_VECTOR_LOG" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_VECTOR_LOG" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_VECTOR_LOG" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_VECTOR_LOG" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_PATH" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_PATH" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_PATH" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_PATH" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_FILE_NAME" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_FILE_NAME" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_REFERENCE_INDEX" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_REFERENCE_INDEX" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_REFERENCE_INDEX" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_REFERENCE_INDEX" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PATH_EMAIL_TEMP" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_EMAIL_TEMP" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PATH_EMAIL_ERRORS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_EMAIL_ERRORS" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_DELETE_MAIL" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="DELETE_MAIL" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_COMMENT" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="COMMENT" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_COMMENT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="COMMENT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_ACTIVE" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="ACTIVE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_SEQUENCE" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SEQUENCE" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_SEQUENCE" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SEQUENCE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_ADDED_WHO" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ADDED_WHO" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ADDED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ADDED_WHO" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_ADDED_WHEN" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ADDED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_CHANGED_WHO" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_CHANGED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_CHANGED_WHEN" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="CHANGED_WHEN" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_CHANGED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="CHANGED_WHEN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_IDX_BODY_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_IDX_BODY_TEXT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_WM_IDX_BODY_SUBSTR_LENGTH" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_IDX_BODY_SUBSTR_LENGTH" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_PATH_ORIGINAL" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PATH_ORIGINAL" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PATH_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_ALLOW_XML_RECEIPTS" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ALLOW_XML_RECEIPTS" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_ALLOW_XML_RECEIPTS" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="ALLOW_XML_RECEIPTS" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>INSERT INTO TBEMLP_POLL_PROCESS
(PROCESS_NAME, STEP_NAME, PROFILE_ID, COPY_2_HDD, WM_IMPORT, WM_OBJEKTTYPE, WM_VECTOR_LOG, WM_PATH, WM_FILE_NAME, WM_REFERENCE_INDEX, PATH_EMAIL_TEMP, PATH_EMAIL_ERRORS,
DELETE_MAIL, COMMENT, ACTIVE, SEQUENCE, ADDED_WHO, WM_IDX_BODY_TEXT, WM_IDX_BODY_SUBSTR_LENGTH, PATH_ORIGINAL)
VALUES (@PROCESS_NAME,@STEP_NAME,@PROFILE_ID,@COPY_2_HDD,@WM_IMPORT,@WM_OBJEKTTYPE,@WM_VECTOR_LOG,@WM_PATH,@WM_FILE_NAME,@WM_REFERENCE_INDEX,@PATH_EMAIL_TEMP,@PATH_EMAIL_ERRORS,@DELETE_MAIL,@COMMENT,@ACTIVE,@SEQUENCE,@ADDED_WHO,@WM_IDX_BODY_TEXT,@WM_IDX_BODY_SUBSTR_LENGTH,@PATH_ORIGINAL);
SELECT GUID, PROCESS_NAME, STEP_NAME, PROFILE_ID, COPY_2_HDD, WM_IMPORT, WM_OBJEKTTYPE, WM_VECTOR_LOG, WM_PATH, WM_FILE_NAME, WM_REFERENCE_INDEX, PATH_EMAIL_TEMP, PATH_EMAIL_ERRORS, DELETE_MAIL, COMMENT, ACTIVE, SEQUENCE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, WM_IDX_BODY_TEXT, WM_IDX_BODY_SUBSTR_LENGTH FROM TBEMLP_POLL_PROCESS WHERE (GUID = SCOPE_IDENTITY())</CommandText>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>INSERT INTO [TBEMLP_POLL_PROCESS] ([PROCESS_NAME], [STEP_NAME], [PROFILE_ID], [COPY_2_HDD], [WM_IMPORT], [WM_OBJEKTTYPE], [WM_VECTOR_LOG], [WM_PATH], [WM_FILE_NAME], [WM_REFERENCE_INDEX], [PATH_EMAIL_TEMP], [PATH_EMAIL_ERRORS], [DELETE_MAIL], [COMMENT], [ACTIVE], [SEQUENCE], [ADDED_WHO], [ADDED_WHEN], [CHANGED_WHO], [CHANGED_WHEN], [WM_IDX_BODY_TEXT], [WM_IDX_BODY_SUBSTR_LENGTH], [PATH_ORIGINAL], [ALLOW_XML_RECEIPTS]) VALUES (@PROCESS_NAME, @STEP_NAME, @PROFILE_ID, @COPY_2_HDD, @WM_IMPORT, @WM_OBJEKTTYPE, @WM_VECTOR_LOG, @WM_PATH, @WM_FILE_NAME, @WM_REFERENCE_INDEX, @PATH_EMAIL_TEMP, @PATH_EMAIL_ERRORS, @DELETE_MAIL, @COMMENT, @ACTIVE, @SEQUENCE, @ADDED_WHO, @ADDED_WHEN, @CHANGED_WHO, @CHANGED_WHEN, @WM_IDX_BODY_TEXT, @WM_IDX_BODY_SUBSTR_LENGTH, @PATH_ORIGINAL, @ALLOW_XML_RECEIPTS);
SELECT GUID, PROCESS_NAME, STEP_NAME, PROFILE_ID, COPY_2_HDD, WM_IMPORT, WM_OBJEKTTYPE, WM_VECTOR_LOG, WM_PATH, WM_FILE_NAME, WM_REFERENCE_INDEX, PATH_EMAIL_TEMP, PATH_EMAIL_ERRORS, DELETE_MAIL, COMMENT, ACTIVE, SEQUENCE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, WM_IDX_BODY_TEXT, WM_IDX_BODY_SUBSTR_LENGTH, PATH_ORIGINAL, ALLOW_XML_RECEIPTS FROM TBEMLP_POLL_PROCESS WHERE (GUID = SCOPE_IDENTITY())</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="PROCESS_NAME" ColumnName="PROCESS_NAME" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@PROCESS_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="PROCESS_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="STEP_NAME" ColumnName="STEP_NAME" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@STEP_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="STEP_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PROFILE_ID" ColumnName="PROFILE_ID" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@PROFILE_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="PROFILE_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="COPY_2_HDD" ColumnName="COPY_2_HDD" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@COPY_2_HDD" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="COPY_2_HDD" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WM_IMPORT" ColumnName="WM_IMPORT" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@WM_IMPORT" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="WM_IMPORT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_OBJEKTTYPE" ColumnName="WM_OBJEKTTYPE" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@WM_OBJEKTTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="WM_OBJEKTTYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_VECTOR_LOG" ColumnName="WM_VECTOR_LOG" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@WM_VECTOR_LOG" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="WM_VECTOR_LOG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_PATH" ColumnName="WM_PATH" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@WM_PATH" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="WM_PATH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_FILE_NAME" ColumnName="WM_FILE_NAME" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@WM_FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="WM_FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_REFERENCE_INDEX" ColumnName="WM_REFERENCE_INDEX" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@WM_REFERENCE_INDEX" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="WM_REFERENCE_INDEX" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PATH_EMAIL_TEMP" ColumnName="PATH_EMAIL_TEMP" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@PATH_EMAIL_TEMP" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="PATH_EMAIL_TEMP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PATH_EMAIL_ERRORS" ColumnName="PATH_EMAIL_ERRORS" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@PATH_EMAIL_ERRORS" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="PATH_EMAIL_ERRORS" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="DELETE_MAIL" ColumnName="DELETE_MAIL" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@DELETE_MAIL" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="DELETE_MAIL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="COMMENT" ColumnName="COMMENT" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(500)" DbType="AnsiString" Direction="Input" ParameterName="@COMMENT" Precision="0" ProviderType="VarChar" Scale="0" Size="500" SourceColumn="COMMENT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ACTIVE" ColumnName="ACTIVE" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@ACTIVE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="ACTIVE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SEQUENCE" ColumnName="SEQUENCE" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@SEQUENCE" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="SEQUENCE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="ADDED_WHO" ColumnName="ADDED_WHO" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@ADDED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="ADDED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WM_IDX_BODY_TEXT" ColumnName="WM_IDX_BODY_TEXT" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@WM_IDX_BODY_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="WM_IDX_BODY_TEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WM_IDX_BODY_SUBSTR_LENGTH" ColumnName="WM_IDX_BODY_SUBSTR_LENGTH" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@WM_IDX_BODY_SUBSTR_LENGTH" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="WM_IDX_BODY_SUBSTR_LENGTH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="PATH_ORIGINAL" ColumnName="PATH_ORIGINAL" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@PATH_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="PATH_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@PROCESS_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PROCESS_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@STEP_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="STEP_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@PROFILE_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PROFILE_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@COPY_2_HDD" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="COPY_2_HDD" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@WM_IMPORT" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="WM_IMPORT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_OBJEKTTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_OBJEKTTYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_VECTOR_LOG" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_VECTOR_LOG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_PATH" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_PATH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_REFERENCE_INDEX" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_REFERENCE_INDEX" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@PATH_EMAIL_TEMP" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_EMAIL_TEMP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@PATH_EMAIL_ERRORS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_EMAIL_ERRORS" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@DELETE_MAIL" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="DELETE_MAIL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@COMMENT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="COMMENT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@ACTIVE" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="ACTIVE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@SEQUENCE" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SEQUENCE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@ADDED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ADDED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@ADDED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@CHANGED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@CHANGED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="CHANGED_WHEN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_IDX_BODY_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_IDX_BODY_TEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@WM_IDX_BODY_SUBSTR_LENGTH" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_IDX_BODY_SUBSTR_LENGTH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@PATH_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@ALLOW_XML_RECEIPTS" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="ALLOW_XML_RECEIPTS" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT GUID, PROCESS_NAME, STEP_NAME, PROFILE_ID, COPY_2_HDD, WM_IMPORT, WM_OBJEKTTYPE, WM_VECTOR_LOG, WM_PATH, WM_FILE_NAME, WM_REFERENCE_INDEX, PATH_EMAIL_TEMP, PATH_EMAIL_ERRORS,
DELETE_MAIL, COMMENT, ACTIVE, SEQUENCE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, WM_IDX_BODY_TEXT, WM_IDX_BODY_SUBSTR_LENGTH, PATH_ORIGINAL
DELETE_MAIL, COMMENT, ACTIVE, SEQUENCE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, WM_IDX_BODY_TEXT, WM_IDX_BODY_SUBSTR_LENGTH, PATH_ORIGINAL, ALLOW_XML_RECEIPTS
FROM TBEMLP_POLL_PROCESS</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>UPDATE TBEMLP_POLL_PROCESS
SET PROCESS_NAME = @PROCESS_NAME, STEP_NAME = @STEP_NAME, PROFILE_ID = @PROFILE_ID, COPY_2_HDD = @COPY_2_HDD, WM_IMPORT = @WM_IMPORT, WM_OBJEKTTYPE = @WM_OBJEKTTYPE,
WM_VECTOR_LOG = @WM_VECTOR_LOG, WM_PATH = @WM_PATH, WM_FILE_NAME = @WM_FILE_NAME, WM_REFERENCE_INDEX = @WM_REFERENCE_INDEX, PATH_EMAIL_TEMP = @PATH_EMAIL_TEMP,
PATH_EMAIL_ERRORS = @PATH_EMAIL_ERRORS, DELETE_MAIL = @DELETE_MAIL, COMMENT = @COMMENT, ACTIVE = @ACTIVE, SEQUENCE = @SEQUENCE, CHANGED_WHO = @CHANGED_WHO,
WM_IDX_BODY_TEXT = @WM_IDX_BODY_TEXT, WM_IDX_BODY_SUBSTR_LENGTH = @WM_IDX_BODY_SUBSTR_LENGTH, PATH_ORIGINAL = @PATH_ORIGINAL
WHERE (GUID = @Original_GUID);
SELECT GUID, PROCESS_NAME, STEP_NAME, PROFILE_ID, COPY_2_HDD, WM_IMPORT, WM_OBJEKTTYPE, WM_VECTOR_LOG, WM_PATH, WM_FILE_NAME, WM_REFERENCE_INDEX, PATH_EMAIL_TEMP, PATH_EMAIL_ERRORS, DELETE_MAIL, COMMENT, ACTIVE, SEQUENCE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, WM_IDX_BODY_TEXT, WM_IDX_BODY_SUBSTR_LENGTH FROM TBEMLP_POLL_PROCESS WHERE (GUID = @GUID)</CommandText>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>UPDATE [TBEMLP_POLL_PROCESS] SET [PROCESS_NAME] = @PROCESS_NAME, [STEP_NAME] = @STEP_NAME, [PROFILE_ID] = @PROFILE_ID, [COPY_2_HDD] = @COPY_2_HDD, [WM_IMPORT] = @WM_IMPORT, [WM_OBJEKTTYPE] = @WM_OBJEKTTYPE, [WM_VECTOR_LOG] = @WM_VECTOR_LOG, [WM_PATH] = @WM_PATH, [WM_FILE_NAME] = @WM_FILE_NAME, [WM_REFERENCE_INDEX] = @WM_REFERENCE_INDEX, [PATH_EMAIL_TEMP] = @PATH_EMAIL_TEMP, [PATH_EMAIL_ERRORS] = @PATH_EMAIL_ERRORS, [DELETE_MAIL] = @DELETE_MAIL, [COMMENT] = @COMMENT, [ACTIVE] = @ACTIVE, [SEQUENCE] = @SEQUENCE, [ADDED_WHO] = @ADDED_WHO, [ADDED_WHEN] = @ADDED_WHEN, [CHANGED_WHO] = @CHANGED_WHO, [CHANGED_WHEN] = @CHANGED_WHEN, [WM_IDX_BODY_TEXT] = @WM_IDX_BODY_TEXT, [WM_IDX_BODY_SUBSTR_LENGTH] = @WM_IDX_BODY_SUBSTR_LENGTH, [PATH_ORIGINAL] = @PATH_ORIGINAL, [ALLOW_XML_RECEIPTS] = @ALLOW_XML_RECEIPTS WHERE (([GUID] = @Original_GUID) AND ([PROCESS_NAME] = @Original_PROCESS_NAME) AND ([STEP_NAME] = @Original_STEP_NAME) AND ([PROFILE_ID] = @Original_PROFILE_ID) AND ([COPY_2_HDD] = @Original_COPY_2_HDD) AND ([WM_IMPORT] = @Original_WM_IMPORT) AND ((@IsNull_WM_OBJEKTTYPE = 1 AND [WM_OBJEKTTYPE] IS NULL) OR ([WM_OBJEKTTYPE] = @Original_WM_OBJEKTTYPE)) AND ((@IsNull_WM_VECTOR_LOG = 1 AND [WM_VECTOR_LOG] IS NULL) OR ([WM_VECTOR_LOG] = @Original_WM_VECTOR_LOG)) AND ((@IsNull_WM_PATH = 1 AND [WM_PATH] IS NULL) OR ([WM_PATH] = @Original_WM_PATH)) AND ((@IsNull_WM_FILE_NAME = 1 AND [WM_FILE_NAME] IS NULL) OR ([WM_FILE_NAME] = @Original_WM_FILE_NAME)) AND ((@IsNull_WM_REFERENCE_INDEX = 1 AND [WM_REFERENCE_INDEX] IS NULL) OR ([WM_REFERENCE_INDEX] = @Original_WM_REFERENCE_INDEX)) AND ([PATH_EMAIL_TEMP] = @Original_PATH_EMAIL_TEMP) AND ([PATH_EMAIL_ERRORS] = @Original_PATH_EMAIL_ERRORS) AND ([DELETE_MAIL] = @Original_DELETE_MAIL) AND ((@IsNull_COMMENT = 1 AND [COMMENT] IS NULL) OR ([COMMENT] = @Original_COMMENT)) AND ([ACTIVE] = @Original_ACTIVE) AND ((@IsNull_SEQUENCE = 1 AND [SEQUENCE] IS NULL) OR ([SEQUENCE] = @Original_SEQUENCE)) AND ((@IsNull_ADDED_WHO = 1 AND [ADDED_WHO] IS NULL) OR ([ADDED_WHO] = @Original_ADDED_WHO)) AND ((@IsNull_ADDED_WHEN = 1 AND [ADDED_WHEN] IS NULL) OR ([ADDED_WHEN] = @Original_ADDED_WHEN)) AND ((@IsNull_CHANGED_WHO = 1 AND [CHANGED_WHO] IS NULL) OR ([CHANGED_WHO] = @Original_CHANGED_WHO)) AND ((@IsNull_CHANGED_WHEN = 1 AND [CHANGED_WHEN] IS NULL) OR ([CHANGED_WHEN] = @Original_CHANGED_WHEN)) AND ([WM_IDX_BODY_TEXT] = @Original_WM_IDX_BODY_TEXT) AND ([WM_IDX_BODY_SUBSTR_LENGTH] = @Original_WM_IDX_BODY_SUBSTR_LENGTH) AND ((@IsNull_PATH_ORIGINAL = 1 AND [PATH_ORIGINAL] IS NULL) OR ([PATH_ORIGINAL] = @Original_PATH_ORIGINAL)) AND ((@IsNull_ALLOW_XML_RECEIPTS = 1 AND [ALLOW_XML_RECEIPTS] IS NULL) OR ([ALLOW_XML_RECEIPTS] = @Original_ALLOW_XML_RECEIPTS)));
SELECT GUID, PROCESS_NAME, STEP_NAME, PROFILE_ID, COPY_2_HDD, WM_IMPORT, WM_OBJEKTTYPE, WM_VECTOR_LOG, WM_PATH, WM_FILE_NAME, WM_REFERENCE_INDEX, PATH_EMAIL_TEMP, PATH_EMAIL_ERRORS, DELETE_MAIL, COMMENT, ACTIVE, SEQUENCE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, WM_IDX_BODY_TEXT, WM_IDX_BODY_SUBSTR_LENGTH, PATH_ORIGINAL, ALLOW_XML_RECEIPTS FROM TBEMLP_POLL_PROCESS WHERE (GUID = @GUID)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="PROCESS_NAME" ColumnName="PROCESS_NAME" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@PROCESS_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="PROCESS_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="STEP_NAME" ColumnName="STEP_NAME" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@STEP_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="STEP_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PROFILE_ID" ColumnName="PROFILE_ID" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@PROFILE_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="PROFILE_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="COPY_2_HDD" ColumnName="COPY_2_HDD" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@COPY_2_HDD" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="COPY_2_HDD" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WM_IMPORT" ColumnName="WM_IMPORT" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@WM_IMPORT" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="WM_IMPORT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_OBJEKTTYPE" ColumnName="WM_OBJEKTTYPE" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@WM_OBJEKTTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="WM_OBJEKTTYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_VECTOR_LOG" ColumnName="WM_VECTOR_LOG" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@WM_VECTOR_LOG" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="WM_VECTOR_LOG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_PATH" ColumnName="WM_PATH" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@WM_PATH" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="WM_PATH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_FILE_NAME" ColumnName="WM_FILE_NAME" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@WM_FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="WM_FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="WM_REFERENCE_INDEX" ColumnName="WM_REFERENCE_INDEX" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@WM_REFERENCE_INDEX" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="WM_REFERENCE_INDEX" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PATH_EMAIL_TEMP" ColumnName="PATH_EMAIL_TEMP" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@PATH_EMAIL_TEMP" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="PATH_EMAIL_TEMP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PATH_EMAIL_ERRORS" ColumnName="PATH_EMAIL_ERRORS" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@PATH_EMAIL_ERRORS" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="PATH_EMAIL_ERRORS" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="DELETE_MAIL" ColumnName="DELETE_MAIL" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@DELETE_MAIL" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="DELETE_MAIL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="COMMENT" ColumnName="COMMENT" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(500)" DbType="AnsiString" Direction="Input" ParameterName="@COMMENT" Precision="0" ProviderType="VarChar" Scale="0" Size="500" SourceColumn="COMMENT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ACTIVE" ColumnName="ACTIVE" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@ACTIVE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="ACTIVE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="SEQUENCE" ColumnName="SEQUENCE" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@SEQUENCE" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="SEQUENCE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="CHANGED_WHO" ColumnName="CHANGED_WHO" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@CHANGED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WM_IDX_BODY_TEXT" ColumnName="WM_IDX_BODY_TEXT" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@WM_IDX_BODY_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="WM_IDX_BODY_TEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="WM_IDX_BODY_SUBSTR_LENGTH" ColumnName="WM_IDX_BODY_SUBSTR_LENGTH" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@WM_IDX_BODY_SUBSTR_LENGTH" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="WM_IDX_BODY_SUBSTR_LENGTH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="PATH_ORIGINAL" ColumnName="PATH_ORIGINAL" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="varchar(1000)" DbType="AnsiString" Direction="Input" ParameterName="@PATH_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="1000" SourceColumn="PATH_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="GUID" ColumnName="GUID" DataSourceName="DD_ECM_TEST.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@PROCESS_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PROCESS_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@STEP_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="STEP_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@PROFILE_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PROFILE_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@COPY_2_HDD" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="COPY_2_HDD" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@WM_IMPORT" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="WM_IMPORT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_OBJEKTTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_OBJEKTTYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_VECTOR_LOG" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_VECTOR_LOG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_PATH" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_PATH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_REFERENCE_INDEX" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_REFERENCE_INDEX" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@PATH_EMAIL_TEMP" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_EMAIL_TEMP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@PATH_EMAIL_ERRORS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_EMAIL_ERRORS" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@DELETE_MAIL" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="DELETE_MAIL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@COMMENT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="COMMENT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@ACTIVE" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="ACTIVE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@SEQUENCE" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SEQUENCE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@ADDED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ADDED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@ADDED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@CHANGED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@CHANGED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="CHANGED_WHEN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@WM_IDX_BODY_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_IDX_BODY_TEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@WM_IDX_BODY_SUBSTR_LENGTH" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_IDX_BODY_SUBSTR_LENGTH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@PATH_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@ALLOW_XML_RECEIPTS" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="ALLOW_XML_RECEIPTS" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PROCESS_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PROCESS_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_STEP_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="STEP_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_PROFILE_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PROFILE_ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_COPY_2_HDD" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="COPY_2_HDD" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_WM_IMPORT" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="WM_IMPORT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_OBJEKTTYPE" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_OBJEKTTYPE" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_OBJEKTTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_OBJEKTTYPE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_VECTOR_LOG" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_VECTOR_LOG" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_VECTOR_LOG" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_VECTOR_LOG" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_PATH" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_PATH" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_PATH" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_PATH" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_FILE_NAME" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_FILE_NAME" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_WM_REFERENCE_INDEX" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_REFERENCE_INDEX" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_REFERENCE_INDEX" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_REFERENCE_INDEX" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PATH_EMAIL_TEMP" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_EMAIL_TEMP" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PATH_EMAIL_ERRORS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_EMAIL_ERRORS" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_DELETE_MAIL" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="DELETE_MAIL" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_COMMENT" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="COMMENT" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_COMMENT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="COMMENT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_ACTIVE" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="ACTIVE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_SEQUENCE" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SEQUENCE" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_SEQUENCE" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SEQUENCE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_ADDED_WHO" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ADDED_WHO" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ADDED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ADDED_WHO" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_ADDED_WHEN" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ADDED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_CHANGED_WHO" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_CHANGED_WHO" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CHANGED_WHO" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_CHANGED_WHEN" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="CHANGED_WHEN" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_CHANGED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="CHANGED_WHEN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_WM_IDX_BODY_TEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WM_IDX_BODY_TEXT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_WM_IDX_BODY_SUBSTR_LENGTH" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="WM_IDX_BODY_SUBSTR_LENGTH" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_PATH_ORIGINAL" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PATH_ORIGINAL" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PATH_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PATH_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_ALLOW_XML_RECEIPTS" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ALLOW_XML_RECEIPTS" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_ALLOW_XML_RECEIPTS" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="ALLOW_XML_RECEIPTS" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBEMLP_POLL_PROCESS" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</UpdateCommand>
@@ -216,6 +289,7 @@ SELECT GUID, PROCESS_NAME, STEP_NAME, PROFILE_ID, COPY_2_HDD, WM_IMPORT, WM_OBJE
<Mapping SourceColumn="WM_IDX_BODY_TEXT" DataSetColumn="WM_IDX_BODY_TEXT" />
<Mapping SourceColumn="WM_IDX_BODY_SUBSTR_LENGTH" DataSetColumn="WM_IDX_BODY_SUBSTR_LENGTH" />
<Mapping SourceColumn="PATH_ORIGINAL" DataSetColumn="PATH_ORIGINAL" />
<Mapping SourceColumn="ALLOW_XML_RECEIPTS" DataSetColumn="ALLOW_XML_RECEIPTS" />
</Mappings>
<Sources />
</TableAdapter>
@@ -768,6 +842,7 @@ SELECT GUID, NAME, EMAIL_FROM, EMAIL_SMTP, EMAIL_USER, EMAIL_PW, PORT, ACTIVE, A
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ALLOW_XML_RECEIPTS" msprop:Generator_ColumnPropNameInRow="ALLOW_XML_RECEIPTS" msprop:Generator_ColumnPropNameInTable="ALLOW_XML_RECEIPTSColumn" msprop:Generator_ColumnVarNameInTable="columnALLOW_XML_RECEIPTS" msprop:Generator_UserColumnName="ALLOW_XML_RECEIPTS" type="xs:boolean" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -1073,9 +1148,9 @@ SELECT GUID, NAME, EMAIL_FROM, EMAIL_SMTP, EMAIL_USER, EMAIL_PW, PORT, ACTIVE, A
</xs:element>
<xs:annotation>
<xs:appinfo>
<msdata:Relationship name="FK_TBEMLP_POLL_PROCESS_PROFILE_ID" msdata:parent="TBEMLP_POLL_PROFILES" msdata:child="TBEMLP_POLL_PROCESS" msdata:parentkey="GUID" msdata:childkey="PROFILE_ID" msprop:Generator_UserParentTable="TBEMLP_POLL_PROFILES" msprop:Generator_UserChildTable="TBEMLP_POLL_PROCESS" msprop:Generator_RelationVarName="relationFK_TBEMLP_POLL_PROCESS_PROFILE_ID" msprop:Generator_ChildPropName="GetTBEMLP_POLL_PROCESSRows" msprop:Generator_UserRelationName="FK_TBEMLP_POLL_PROCESS_PROFILE_ID" msprop:Generator_ParentPropName="TBEMLP_POLL_PROFILESRow" />
<msdata:Relationship name="FK_TBEMLP_POLL_STEPS_PROCESS_ID" msdata:parent="TBEMLP_POLL_PROCESS" msdata:child="TBEMLP_POLL_STEPS" msdata:parentkey="GUID" msdata:childkey="PROCESS_ID" msprop:Generator_UserParentTable="TBEMLP_POLL_PROCESS" msprop:Generator_UserChildTable="TBEMLP_POLL_STEPS" msprop:Generator_RelationVarName="relationFK_TBEMLP_POLL_STEPS_PROCESS_ID" msprop:Generator_ChildPropName="GetTBEMLP_POLL_STEPSRows" msprop:Generator_UserRelationName="FK_TBEMLP_POLL_STEPS_PROCESS_ID" msprop:Generator_ParentPropName="TBEMLP_POLL_PROCESSRow" />
<msdata:Relationship name="FK_TBEMLP_POLL_INDEXING_STEPS_STEP_ID" msdata:parent="TBEMLP_POLL_STEPS" msdata:child="TBEMLP_POLL_INDEXING_STEPS" msdata:parentkey="GUID" msdata:childkey="STEP_ID" msprop:Generator_UserParentTable="TBEMLP_POLL_STEPS" msprop:Generator_UserChildTable="TBEMLP_POLL_INDEXING_STEPS" msprop:Generator_RelationVarName="relationFK_TBEMLP_POLL_INDEXING_STEPS_STEP_ID" msprop:Generator_ChildPropName="GetTBEMLP_POLL_INDEXING_STEPSRows" msprop:Generator_UserRelationName="FK_TBEMLP_POLL_INDEXING_STEPS_STEP_ID" msprop:Generator_ParentPropName="TBEMLP_POLL_STEPSRow" />
<msdata:Relationship name="FK_TBEMLP_POLL_PROCESS_PROFILE_ID" msdata:parent="TBEMLP_POLL_PROFILES" msdata:child="TBEMLP_POLL_PROCESS" msdata:parentkey="GUID" msdata:childkey="PROFILE_ID" msprop:Generator_UserParentTable="TBEMLP_POLL_PROFILES" msprop:Generator_UserChildTable="TBEMLP_POLL_PROCESS" msprop:Generator_RelationVarName="relationFK_TBEMLP_POLL_PROCESS_PROFILE_ID" msprop:Generator_ChildPropName="GetTBEMLP_POLL_PROCESSRows" msprop:Generator_ParentPropName="TBEMLP_POLL_PROFILESRow" msprop:Generator_UserRelationName="FK_TBEMLP_POLL_PROCESS_PROFILE_ID" />
<msdata:Relationship name="FK_TBEMLP_POLL_STEPS_PROCESS_ID" msdata:parent="TBEMLP_POLL_PROCESS" msdata:child="TBEMLP_POLL_STEPS" msdata:parentkey="GUID" msdata:childkey="PROCESS_ID" msprop:Generator_UserParentTable="TBEMLP_POLL_PROCESS" msprop:Generator_UserChildTable="TBEMLP_POLL_STEPS" msprop:Generator_RelationVarName="relationFK_TBEMLP_POLL_STEPS_PROCESS_ID" msprop:Generator_ChildPropName="GetTBEMLP_POLL_STEPSRows" msprop:Generator_ParentPropName="TBEMLP_POLL_PROCESSRow" msprop:Generator_UserRelationName="FK_TBEMLP_POLL_STEPS_PROCESS_ID" />
<msdata:Relationship name="FK_TBEMLP_POLL_INDEXING_STEPS_STEP_ID" msdata:parent="TBEMLP_POLL_STEPS" msdata:child="TBEMLP_POLL_INDEXING_STEPS" msdata:parentkey="GUID" msdata:childkey="STEP_ID" msprop:Generator_UserParentTable="TBEMLP_POLL_STEPS" msprop:Generator_UserChildTable="TBEMLP_POLL_INDEXING_STEPS" msprop:Generator_RelationVarName="relationFK_TBEMLP_POLL_INDEXING_STEPS_STEP_ID" msprop:Generator_ChildPropName="GetTBEMLP_POLL_INDEXING_STEPSRows" msprop:Generator_ParentPropName="TBEMLP_POLL_STEPSRow" msprop:Generator_UserRelationName="FK_TBEMLP_POLL_INDEXING_STEPS_STEP_ID" />
</xs:appinfo>
</xs:annotation>
</xs:schema>

View File

@@ -0,0 +1,11 @@
Namespace My
'Diese Klasse ermöglicht die Behandlung bestimmter Ereignisse der Einstellungsklasse:
' Das SettingChanging-Ereignis wird ausgelöst, bevor der Wert einer Einstellung geändert wird.
' Das PropertyChanged-Ereignis wird ausgelöst, nachdem der Wert einer Einstellung geändert wurde.
' Das SettingsLoaded-Ereignis wird ausgelöst, nachdem die Einstellungswerte geladen wurden.
' Das SettingsSaving-Ereignis wird ausgelöst, bevor die Einstellungswerte gespeichert werden.
Partial Friend NotInheritable Class MySettings
End Class
End Namespace

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,12 +1,15 @@
Imports System.ComponentModel
Imports System.IO
Imports System.Net.Mail
Imports System.Text.RegularExpressions
Imports System.Windows.Forms.VisualStyles.VisualStyleElement.Tab
Imports DevExpress.XtraPrinting.Export
Imports DigitalData.GUIs.Common
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Messaging
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Messaging.Mail
Imports DigitalData.GUIs.Common
Imports EmailProfiler.Common
Public Class frmMain
@@ -21,36 +24,58 @@ Public Class frmMain
Private _SQLServerConString As String
Private _Worklist As List(Of String)
Private _limilab As Limilab
Private _ConfigManager As ClassDBConfig
Private _DBConfig As ClassDBConfig.Config
Private MyConnectionString As String
Private _MailSender As Mail.MailSender
Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
Try
LogConfig = New LogConfig(LogConfig.PathType.CustomPath, Path.Combine(My.Application.Info.DirectoryPath, "Log"), Nothing, My.Application.Info.CompanyName, My.Application.Info.ProductName)
_limilab = New Limilab(LogConfig)
ConfigManager = New ConfigManager(Of Config)(LogConfig, Application.UserAppDataPath, Application.CommonAppDataPath, Application.StartupPath)
Logger = LogConfig.GetLogger()
_limilab = New Limilab(LogConfig)
Dim oUserAppDataPath As String = Application.UserAppDataPath
Dim oCommonAppDataPath = Application.CommonAppDataPath
Dim oStartupPath = Application.StartupPath
Dim oAppconfig As String = "AppConfig.xml"
Dim oAppConfigFilePath As String = Path.Combine(oStartupPath, oAppconfig)
If File.Exists(oAppConfigFilePath) Then
Logger.Info("Die Datei AppConfig.xml ist im StartUp-Path vorhanden.")
' UserAppDataPath = StartupPath
oCommonAppDataPath = oStartupPath
Else
Logger.Info("Keine AppConfig.xml-Konfiguration!")
End If
ConfigManager = New ConfigManager(Of Config)(LogConfig, oUserAppDataPath, oCommonAppDataPath, oStartupPath)
ConfigManager.Save()
LogConfig.Debug = ConfigManager.Config.Debug
If ConfigManager.Config.Debug = True Then
Logger.Info("!! DEBUG is ACTIVE !!")
End If
LogConfig.Debug = ConfigManager.Config.Debug
InitDatabase()
ToolStripProgressBar2.Visible = False
Logger.Debug($"AppConfig is located at: [{AppDomain.CurrentDomain.SetupInformation.ConfigurationFile}]")
Try
If ConfigManager.Config.UseWindream Then
_windream = New clsWindream_allgemein(LogConfig)
End If
Catch ex As Exception
Logger.Error(ex)
ConfigManager.Save()
End Try
If ConfigManager.Config.UseWindream Then
_windream = New clsWindream_allgemein(LogConfig)
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in FormLoad")
End Try
If Set_ConnectionStrings() Then
Load_AllData()
LoadMonitoringIntoGrid()
Check_Steps()
Active_Color(ACTIVECheckBox)
Active_Color(ACTIVECheckBox1)
@@ -58,9 +83,15 @@ Public Class frmMain
Active_Color(ACTIVECheckBox3)
Active_Color(ACTIVECheckBox4)
End If
If ConfigManager.Config.UseWindream Then
ObjektTypenEintragen()
End If
Try
If ConfigManager.Config.UseWindream Then
ObjektTypenEintragen()
End If
Catch ex As Exception
Logger.Error(ex)
ConfigManager.Save()
End Try
_Encryption = New clsEncryption("!35452didalog=", LogConfig)
End Sub
@@ -97,6 +128,7 @@ Public Class frmMain
Me.TBEMLP_POLL_INDEXING_STEPSTableAdapter.Fill(Me.MyDataset.TBEMLP_POLL_INDEXING_STEPS)
Catch ex As Exception
MsgBox("Unexpected Error in Load_AllData: " & ex.Message, MsgBoxStyle.Critical)
ConfigManager.Save()
End Try
End Sub
Sub Load_Profiles()
@@ -168,11 +200,11 @@ Public Class frmMain
Select Case AUTH_TYPEComboBox.Text
Case "OAUTH2"
EMAIL_SMTPLabel.Text = "Anwendungs-ID (Client):"
EMAIL_PWLabel.Text = "Anwendungs-Geheimnnis:"
EMAIL_PWLabel.Text = "Geheimnis ID Value"
ARCHIVE_FOLDERLabel.Text = "Verzeichnis-ID (Mandant):"
Case Else
EMAIL_SMTPLabel.Text = "Server:"
EMAIL_PWLabel.Text = "Neues Passwort:"
EMAIL_PWLabel.Text = "Passwort:"
ARCHIVE_FOLDERLabel.Text = "Archive Ordner:"
End Select
End Sub
@@ -210,8 +242,8 @@ Public Class frmMain
_database = New MSSQLServer(LogConfig, _SQLServerConString)
Logger.Debug("Inititalizing Configuration")
_ConfigManager = New ClassDBConfig(LogConfig, _database)
_DBConfig = _ConfigManager.GetConfig()
Dim oConfigManager As ClassDBConfig = New ClassDBConfig(LogConfig, _database)
_DBConfig = oConfigManager.GetConfig()
If _DBConfig Is Nothing Then
MsgBox("Configuration could not be loaded. Please check the Logfile.", MsgBoxStyle.Critical, Text)
@@ -251,7 +283,6 @@ Public Class frmMain
If chkbxUserAut.Checked Then
con = "Data Source=" & Me.txtServer.Text & ";Trusted_Connection=True;"
Else
'con = "Server=" & Me.txtServer.Text & ";Database=" & Me.cmbDatenbank.Text & ";User Id=" & Me.txtUser.Text & ";Password=" & Me.txtPasswort.Text & ";"
con = "Server=" & Me.txtServer.Text & ";User Id=" & Me.txtUser.Text & ";Password=" & Me.txtPasswort.Text & ";"
End If
Dim connection As New SqlClient.SqlConnection(con) 'csb.ConnectionString)
@@ -299,9 +330,6 @@ Public Class frmMain
'DialogResult = Windows.Forms.DialogResult.OK
Dim result As MsgBoxResult
Dim msg = "Die Verbindung wurde erfolgreich aufgebaut!" & vbNewLine & "Möchten Sie diese Verbindung nun in der Anwendung speichern?"
'If USER_LANGUAGE <> "de-DE" Then
' msg = "Connection was successfully opened!" & vbNewLine & "Would You like to save it?"
'End If
result = MessageBox.Show(msg, "Database-Connection", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If result = MsgBoxResult.Yes Then
'Set the construction string
@@ -309,7 +337,7 @@ Public Class frmMain
ConfigManager.Config.ConnectionString = MyConnectionString
_database = New MSSQLServer(LogConfig, MyConnectionString)
_ConfigManager = New ClassDBConfig(LogConfig, _database)
Dim oConfigManager As ClassDBConfig = New ClassDBConfig(LogConfig, _database)
'csb.ConnectionString
'_database.Init(MyConnectionString)
@@ -336,20 +364,21 @@ Public Class frmMain
End Sub
Private Sub BackgroundWorker1_DoWork(sender As Object, e As DoWorkEventArgs) Handles BackgroundWorker1.DoWork
ConfigManager.Config.EmailTitlePrefix = "EmailProfilerTestClient"
ConfigManager.Config.EmailAccountId = ToolStripEmailAccountID2.Text
ConfigManager.Config.GDPictureVersion = "11.2024"
If _RunwithLocalemail = False Then
LogConfig.Debug = True
Dim _work As New clsWorker(LogConfig, _SQLServerConString, _DBConfig.WindreamConnectionString, GUIDTextBox.Text,
ConfigManager.Config.UseWindream, ToolStripEmailAccountID2.Text, "EmailProfilerTestClient",
ConfigManager.Config.EmailSenderLimitation, ConfigManager.Config.RejectionTemplateId, ConfigManager.Config.InfoTemplateId)
Dim _work As New clsWorker(LogConfig, _SQLServerConString, _DBConfig.WindreamConnectionString, GUIDTextBox.Text, ConfigManager.Config)
_work.Start_WorkingProfiles()
Else
For Each ofile As String In _Worklist
Logger.Info($"## Manual working on file {ofile} ... ")
Dim _work As New clsWorker(LogConfig, _SQLServerConString, _DBConfig.WindreamConnectionString, GUIDTextBox.Text,
ConfigManager.Config.UseWindream, ToolStripEmailAccountID2.Text, "EmailProfilerTestClient",
ConfigManager.Config.EmailSenderLimitation, ConfigManager.Config.RejectionTemplateId, ConfigManager.Config.InfoTemplateId, ofile.ToString)
Dim _work As New clsWorker(LogConfig, _SQLServerConString, _DBConfig.WindreamConnectionString, GUIDTextBox.Text, ConfigManager.Config, ofile.ToString)
_work.Start_WorkingProfiles(True)
Next
@@ -452,7 +481,6 @@ Public Class frmMain
Private Sub ToolStripButton10_Click(sender As Object, e As EventArgs) Handles ToolStripButton10.Click
Load_Processes()
End Sub
Private Sub ToolStripButton8_Click(sender As Object, e As EventArgs) Handles ToolStripButton8.Click
Try
TBEMLP_POLL_PROCESSBindingSource.EndEdit()
@@ -633,13 +661,20 @@ Public Class frmMain
Select Case PROCESS_NAMEComboBox.Text
Case "ProcessManager"
txtSubjectExample.Text = "[ProcessManager][EA][DID#[%Dokument-ID]]"
cbAllowXMLReceipt.Enabled = False
cbAllowXMLReceipt.Checked = False
Case "Attachment Sniffer"
lblDownloadPath.Text = "Download-Path Attachments:"
cbAllowXMLReceipt.Enabled = True
Case "ZugFeRD-Parser"
lblDownloadPath.Text = "Download-Path Attachments:"
cbAllowXMLReceipt.Enabled = False
cbAllowXMLReceipt.Checked = False
Case Else
txtSubjectExample.Text = ""
lblDownloadPath.Text = "Download-Path:"
cbAllowXMLReceipt.Enabled = False
cbAllowXMLReceipt.Checked = False
End Select
End If
End Sub
@@ -652,8 +687,8 @@ Public Class frmMain
If _LoadInProgress = True Then Exit Sub
LogConfig.Debug = LOG_ERRORS_ONLYCheckBox.Checked
ConfigManager.Save()
Dim upd = $"UPDATE TBEMLP_CONFIG SET CHANGED_WHO = '{Environment.UserName}',LOG_ERRORS_ONLY = '{LOG_ERRORS_ONLYCheckBox.Checked}' WHERE GUID = 1"
_database.ExecuteNonQuery(upd)
Dim upr = $"UPDATE TBEMLP_CONFIG SET CHANGED_WHO = '{Environment.UserName}',LOG_ERRORS_ONLY = '{LOG_ERRORS_ONLYCheckBox.Checked}' WHERE GUID = 1"
_database.ExecuteNonQuery(upr)
Load_Config()
End Sub
@@ -728,16 +763,48 @@ Public Class frmMain
Private Sub btnsendtestmail_Click(sender As Object, e As EventArgs) Handles btnsendtestmail.Click
If txtTestmail.Text <> String.Empty Then
ConfigManager.Save()
My.Settings.Save()
Cursor = Cursors.WaitCursor
Dim PWPlain = _Encryption.DecryptData(EMAIL_PWTextBox.Text)
'NEW
_MailSender = New Mail.MailSender(LogConfig)
Dim oDefault As Boolean = True
If CheckBoxEnableTls1_1.Checked Or CheckBoxEnableTls1_2.Checked Then
oDefault = False
End If
Dim oOptions As New Mail.MailSession.MailSessionOptions() With {
.EnableTls1_1 = CheckBoxEnableTls1_1.Checked,
.EnableTls1_2 = CheckBoxEnableTls1_2.Checked,
.EnableDefault = oDefault
}
Dim oResult As Mail.MailSession.SessionInfo = _MailSender.Connect(EMAIL_SMTPTextBox.Text, PORTTextBox.Text, EMAIL_USERTextBox.Text, PWPlain, AUTH_TYPEComboBox.Text, oOptions)
If _limilab.NewSMTPEmail(txtTestmail.Text, "Testmail", "This is the body (text will be replaced within profile)", EMAIL_FROMTextBox.Text, EMAIL_SMTPTextBox.Text, PORTTextBox.Text,
EMAIL_USERTextBox.Text, PWPlain, AUTH_TYPEComboBox.Text, "frmMain-Test", "", "", True) = True Then
If oResult.Connected = False Then
Cursor = Cursors.Default
MsgBox("Could not create a MailSession / connect to server. Please check the log.", MsgBoxStyle.Exclamation)
Exit Sub
End If
Dim oAddresses As List(Of String) = txtTestmail.Text.Split(";").ToList()
Dim oAddedWhen = Now
Dim oAttachments As New List(Of String)
Dim oBody As String = $"This is just a template body (text will be replaced within the run) - ProfileID: {EMAILIDTextBox.Text}"
Dim oMessageSent = _MailSender.SendMail(oAddresses, EMAIL_FROMTextBox.Text, "Testmail from EmailProfilerConfig", oBody, oAddedWhen, oAttachments, False)
Cursor = Cursors.Default
If oMessageSent = True Then
MsgBox("Email has been send successfully.", MsgBoxStyle.Information)
Else
MsgBox("Could not send the testmail. Please check the log.", MsgBoxStyle.Exclamation)
End If
'NEW END
'If _limilab.NewSMTPEmail(txtTestmail.Text, "Testmail", "This is the body (text will be replaced within profile)", EMAIL_FROMTextBox.Text, EMAIL_SMTPTextBox.Text, PORTTextBox.Text,
' EMAIL_USERTextBox.Text, PWPlain, AUTH_TYPEComboBox.Text, "frmMain-Test", "", "", True) = True Then
' MsgBox("Email has been send successfully.", MsgBoxStyle.Information)
'Else
' MsgBox("Could not send the testmail. Please check the log.", MsgBoxStyle.Exclamation)
'End If
End If
End Sub
@@ -757,7 +824,6 @@ Public Class frmMain
Dim oUser = oRow.Item("EMAIL_USER")
Dim oAuthType = oRow.Item("AUTH_TYPE")
Dim oArchiveFolder = oRow.Item("ARCHIVE_FOLDER")
Dim oFetcher As New MailFetcher(LogConfig)
Dim oSession As MailSession.SessionInfo
@@ -961,4 +1027,63 @@ Public Class frmMain
PATH_ORIGINALTextBox.Text = FolderBrowserDialog1.SelectedPath
End If
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
ConfigManager.Save()
End Sub
Private Sub PATH_EMAIL_ERRORSTextBox_TextChanged(sender As Object, e As EventArgs) Handles PATH_EMAIL_ERRORSTextBox.TextChanged
End Sub
Private Sub PATH_ORIGINALTextBox_TextChanged(sender As Object, e As EventArgs) Handles PATH_ORIGINALTextBox.TextChanged
End Sub
Private Sub COMMENT_PROFILESTextBox_TextChanged(sender As Object, e As EventArgs) Handles COMMENT_PROFILESTextBox.TextChanged
End Sub
' Loads the TBEMLP_HISTORY table into the monitoring grid and formats columns
Private Sub LoadMonitoringIntoGrid()
Try
' Fill dataset table (adapter exists in designer)
Me.TBEMLP_HISTORYTableAdapter.Fill(Me.MyDataset.TBEMLP_HISTORY)
' Bind the grid to the binding source defined in the designer
Me.gridMonitoring.DataSource = Me.TBEMLP_HISTORYBindingSource
' Format columns on the view
Dim gv = TryCast(Me.GridView5, DevExpress.XtraGrid.Views.Grid.GridView)
If gv IsNot Nothing Then
gv.PopulateColumns()
' Hide all columns first
For Each column As DevExpress.XtraGrid.Columns.GridColumn In gv.Columns
column.Visible = False
Next
' Show only the desired columns
Dim visibleColumns = New String() {"GUID", "EMAIL_MSGID", "EMAIL_FROM", "EMAIL_SUBJECT", "EMAIL_DATE", "ADDED_WHEN", "STATUS", "PROFILE_ID"}
For Each columnName In visibleColumns
Dim column = gv.Columns.ColumnByFieldName(columnName)
If column IsNot Nothing Then
column.Visible = True
End If
Next
' Optionally format specific columns
If gv.Columns.ColumnByFieldName("EMAIL_DATE") IsNot Nothing Then
gv.Columns("EMAIL_DATE").DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime
gv.Columns("EMAIL_DATE").DisplayFormat.FormatString = "yyyy-MM-dd HH:mm:ss"
End If
gv.OptionsView.ColumnAutoWidth = False
gv.BestFitColumns()
End If
Catch ex As Exception
If Logger IsNot Nothing Then Logger.Error(ex) Else Debug.WriteLine(ex.ToString())
End Try
End Sub
End Class

View File

@@ -1,4 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Identity.Client" version="4.55.0" targetFramework="net462" />
<package id="Microsoft.IdentityModel.Abstractions" version="6.22.0" targetFramework="net462" />
<package id="NLog" version="5.0.5" targetFramework="net461" />
<package id="S22.Imap" version="3.6.0.0" targetFramework="net462" />
</packages>

View File

@@ -48,21 +48,27 @@
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<ItemGroup>
<Reference Include="DigitalData.Modules.Base">
<HintPath>..\..\..\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Config">
<HintPath>..\..\..\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=2.2.0.0, Culture=neutral, processorArchitecture=MSIL">
<Reference Include="DigitalData.Modules.Base, Version=1.3.6.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Language">
<HintPath>..\..\..\DDModules\Language\bin\Debug\DigitalData.Modules.Language.dll</HintPath>
<Reference Include="DigitalData.Modules.Config, Version=1.2.2.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<Reference Include="DigitalData.Modules.Database, Version=2.3.4.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging, Version=2.6.3.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="EmailProfiler.Common">
<HintPath>..\EmailProfiler.Common\bin\Debug\EmailProfiler.Common.dll</HintPath>
</Reference>
<Reference Include="EmailProfiler.Common">
<HintPath>..\EmailProfiler.Common\bin\Debug\EmailProfiler.Common.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
@@ -96,7 +102,6 @@
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup>
<Compile Include="Config.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
@@ -158,11 +163,5 @@
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\EmailProfiler.Common\EmailProfiler.Common.vbproj">
<Project>{9f748dcd-952e-40a0-9dad-65bf8a39b231}</Project>
<Name>EmailProfiler.Common</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
</Project>

View File

@@ -12,8 +12,8 @@ Imports System.Runtime.InteropServices
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("SERV_EMAIL")>
<Assembly: AssemblyCopyright("Copyright © 2024")>
<Assembly: AssemblyTrademark("3.0.3.0")>
<Assembly: AssemblyCopyright("Copyright © 2025")>
<Assembly: AssemblyTrademark("3.3.0")>
<Assembly: ComVisible(False)>
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("3.0.3.0")>
<Assembly: AssemblyFileVersion("3.0.3.0")>
<Assembly: AssemblyVersion("3.3.0.0")>
<Assembly: AssemblyFileVersion("3.3.0.0")>

View File

@@ -4,6 +4,7 @@ Imports EmailProfiler.Common
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Public Class MyService
#Region "+++++ variables +++++"
Private Worker As BackgroundWorker
@@ -11,17 +12,17 @@ Public Class MyService
Private LogConfig As LogConfig
Private Logger As Logger
'Private _database As clsDatabase
Private EmailWorker As clsWorkEmail
Private DBConfigManager As ClassDBConfig
Private DBConfig As ClassDBConfig.Config
'Private EmailWorker As clsWorkEmail
Private _DBConfig As ClassDBConfig.Config
Private ConfigManager As ConfigManager(Of Config)
Private Config As Config
Private _ConfigData As Config
Private Database As MSSQLServer
#End Region
Protected Overrides Sub OnStart(args() As String)
Try
Dim oLogPath = Path.Combine(My.Application.Info.DirectoryPath, "Log")
@@ -31,33 +32,32 @@ Public Class MyService
Logger.Info("Service started.")
ConfigManager = New ConfigManager(Of Config)(LogConfig, My.Application.Info.DirectoryPath)
Config = ConfigManager.Config
_ConfigData = ConfigManager.Config
If Config.ConnectionString = String.Empty Then
If _ConfigData.ConnectionString = String.Empty Then
Logger.Warn("No ConnectionString configured. Exiting.")
Else
If Config.Debug = True Then
If _ConfigData.Debug = True Then
LogConfig.Debug = True
Else
LogConfig.Debug = False
End If
Database = New MSSQLServer(LogConfig, Config.ConnectionString)
Database = New MSSQLServer(LogConfig, _ConfigData.ConnectionString)
Logger.Debug("Database initialized!")
DBConfigManager = New ClassDBConfig(LogConfig, Database)
DBConfig = DBConfigManager.GetConfig()
Dim oDBConfigManager As ClassDBConfig = New ClassDBConfig(LogConfig, Database)
_DBConfig = oDBConfigManager.GetConfig()
If DBConfig IsNot Nothing Then
If _DBConfig IsNot Nothing Then
Logger.Debug("DBConfig initialized!")
Else
Logger.Warn("Error while initializing DBConfig")
End If
EmailWorker = New clsWorkEmail(LogConfig, Config.ConnectionString, DBConfig.WindreamConnectionString,
Config.UseWindream, Config.EmailAccountId, Config.EmailTitlePrefix,
Config.RejectionTemplateId, Config.InfoTemplateId)
Logger.Debug("Module Workmail initialized")
' MP 10.01.25 - Das Objekt wird hier gar nicht weiter verwendet. erstmal raus damit
'EmailWorker = New clsWorkEmail(LogConfig, _ConfigData.ConnectionString, _DBConfig.WindreamConnectionString, _ConfigData)
'Logger.Debug("Module Workmail initialized")
If Database.DBInitialized = False Then
Logger.Warn("No Connection was established! Exiting.")
@@ -72,7 +72,7 @@ Public Class MyService
AddHandler Worker.RunWorkerCompleted, AddressOf Worker_Completed
' Set the Interval
Timer.Interval = DBConfig.TimerInterval * 60000
Timer.Interval = _DBConfig.TimerInterval * 60000
Timer.Enabled = True
Logger.Debug("Timer started.")
@@ -97,16 +97,11 @@ Public Class MyService
Dim oProfileIdForPolling = 0
Dim oWorker As New clsWorker(LogConfig,
Config.ConnectionString,
DBConfig.WindreamConnectionString,
_ConfigData.ConnectionString,
_DBConfig.WindreamConnectionString,
oProfileIdForPolling,
Config.UseWindream,
Config.EmailAccountId,
Config.EmailSenderLimitation,
Config.EmailTitlePrefix,
Config.RejectionTemplateId,
Config.InfoTemplateId)
oWorker.Start_WorkingProfiles(False, True)
_ConfigData)
oWorker.Start_WorkingProfiles(False)
Catch ex As Exception
Logger.Error(ex)
End Try
@@ -114,6 +109,7 @@ Public Class MyService
Protected Overrides Sub OnStop()
Logger.Info("## Service was stopped manually. ##")
End Sub
Private Sub Worker_Completed(sender As Object, e As RunWorkerCompletedEventArgs)
'This event fires when the DoWork event completes
Try

View File

@@ -10,6 +10,9 @@ EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "EmailProfiler.Common", "EmailProfiler.Common\EmailProfiler.Common.vbproj", "{9F748DCD-952E-40A0-9DAD-65BF8A39B231}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "wisag_check_Att", "wisag_check_Att\wisag_check_Att.vbproj", "{CD67B0B9-A7DE-447D-9982-E7AC43481DDC}"
ProjectSection(ProjectDependencies) = postProject
{9F748DCD-952E-40A0-9DAD-65BF8A39B231} = {9F748DCD-952E-40A0-9DAD-65BF8A39B231}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution

View File

@@ -1,6 +1,6 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class Form1
Inherits System.Windows.Forms.Form
Inherits DevExpress.XtraBars.Ribbon.RibbonForm
'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
<System.Diagnostics.DebuggerNonUserCode()> _
@@ -22,34 +22,41 @@ Partial Class Form1
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Form1))
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
Me.bsifolderbrowser = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem()
Me.btRunEmailCheck = New DevExpress.XtraBars.BarButtonItem()
Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem()
Me.bsitemppath = New DevExpress.XtraBars.BarStaticItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.BarButtonItem4 = New DevExpress.XtraBars.BarButtonItem()
Me.btExtractMailAttachments = New DevExpress.XtraBars.BarButtonItem()
Me.rpPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup4 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.FolderBrowserDialog1 = New System.Windows.Forms.FolderBrowserDialog()
Me.ListBox1 = New System.Windows.Forms.ListBox()
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.BarButtonItem4 = New DevExpress.XtraBars.BarButtonItem()
Me.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog()
Me.OpenFileDialog2 = New System.Windows.Forms.OpenFileDialog()
Me.OpenFileDialog3 = New System.Windows.Forms.OpenFileDialog()
Me.BehaviorManager1 = New DevExpress.Utils.Behaviors.BehaviorManager(Me.components)
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.BehaviorManager1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'RibbonControl1
'
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.bsifolderbrowser, Me.BarButtonItem2, Me.BarButtonItem3, Me.bsitemppath, Me.BarButtonItem4})
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.bsifolderbrowser, Me.btRunEmailCheck, Me.BarButtonItem3, Me.bsitemppath, Me.BarButtonItem4, Me.btExtractMailAttachments})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
Me.RibbonControl1.MaxItemId = 7
Me.RibbonControl1.MaxItemId = 8
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.Size = New System.Drawing.Size(800, 150)
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.rpPage1})
Me.RibbonControl1.Size = New System.Drawing.Size(800, 158)
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
'
'BarButtonItem1
@@ -67,12 +74,12 @@ Partial Class Form1
Me.bsifolderbrowser.Name = "bsifolderbrowser"
Me.bsifolderbrowser.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
'
'BarButtonItem2
'btRunEmailCheck
'
Me.BarButtonItem2.Caption = "Run Email_Check"
Me.BarButtonItem2.Id = 3
Me.BarButtonItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem2.Name = "BarButtonItem2"
Me.btRunEmailCheck.Caption = "Run Email_Check"
Me.btRunEmailCheck.Id = 3
Me.btRunEmailCheck.ImageOptions.SvgImage = CType(resources.GetObject("btRunEmailCheck.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.btRunEmailCheck.Name = "btRunEmailCheck"
'
'BarButtonItem3
'
@@ -89,11 +96,25 @@ Partial Class Form1
Me.bsitemppath.Name = "bsitemppath"
Me.bsitemppath.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
'
'RibbonPage1
'BarButtonItem4
'
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3})
Me.RibbonPage1.Name = "RibbonPage1"
Me.RibbonPage1.Text = "RibbonPage1"
Me.BarButtonItem4.Caption = "Extract Attachments from PDF-File"
Me.BarButtonItem4.Id = 6
Me.BarButtonItem4.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem4.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem4.Name = "BarButtonItem4"
'
'btExtractMailAttachments
'
Me.btExtractMailAttachments.Caption = "Extract Attachments from EML-File"
Me.btExtractMailAttachments.Id = 7
Me.btExtractMailAttachments.ImageOptions.SvgImage = CType(resources.GetObject("btExtractMailAttachments.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.btExtractMailAttachments.Name = "btExtractMailAttachments"
'
'rpPage1
'
Me.rpPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3, Me.RibbonPageGroup4})
Me.rpPage1.Name = "rpPage1"
Me.rpPage1.Text = "Funktionen"
'
'RibbonPageGroup1
'
@@ -104,46 +125,55 @@ Partial Class Form1
'
'RibbonPageGroup2
'
Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem2)
Me.RibbonPageGroup2.ItemLinks.Add(Me.btRunEmailCheck)
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
Me.RibbonPageGroup2.Text = "Run"
'
'RibbonStatusBar1
'
Me.RibbonStatusBar1.ItemLinks.Add(Me.bsifolderbrowser)
Me.RibbonStatusBar1.ItemLinks.Add(Me.bsitemppath)
Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 423)
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
Me.RibbonStatusBar1.Size = New System.Drawing.Size(800, 27)
'
'ListBox1
'
Me.ListBox1.Dock = System.Windows.Forms.DockStyle.Fill
Me.ListBox1.FormattingEnabled = True
Me.ListBox1.Location = New System.Drawing.Point(0, 150)
Me.ListBox1.Name = "ListBox1"
Me.ListBox1.Size = New System.Drawing.Size(800, 273)
Me.ListBox1.TabIndex = 2
'
'RibbonPageGroup3
'
Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem4)
Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
Me.RibbonPageGroup3.Text = "PDF Handling"
'
'BarButtonItem4
'RibbonPageGroup4
'
Me.BarButtonItem4.Caption = "Extract PDF-Attachments"
Me.BarButtonItem4.Id = 6
Me.BarButtonItem4.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem4.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem4.Name = "BarButtonItem4"
Me.RibbonPageGroup4.ItemLinks.Add(Me.btExtractMailAttachments)
Me.RibbonPageGroup4.Name = "RibbonPageGroup4"
Me.RibbonPageGroup4.Text = "EML Handling"
'
'RibbonStatusBar1
'
Me.RibbonStatusBar1.ItemLinks.Add(Me.bsifolderbrowser)
Me.RibbonStatusBar1.ItemLinks.Add(Me.bsitemppath)
Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 426)
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
Me.RibbonStatusBar1.Size = New System.Drawing.Size(800, 24)
'
'ListBox1
'
Me.ListBox1.Dock = System.Windows.Forms.DockStyle.Fill
Me.ListBox1.FormattingEnabled = True
Me.ListBox1.Location = New System.Drawing.Point(0, 158)
Me.ListBox1.Name = "ListBox1"
Me.ListBox1.Size = New System.Drawing.Size(800, 268)
Me.ListBox1.TabIndex = 2
'
'OpenFileDialog1
'
Me.OpenFileDialog1.Filter = "PDF Files|*.pdf"
Me.OpenFileDialog1.InitialDirectory = "e:\"
'
'OpenFileDialog2
'
Me.OpenFileDialog2.Filter = "EML Files|*.eml"
Me.OpenFileDialog2.InitialDirectory = "e:\temp"
Me.OpenFileDialog2.Title = "Wähle EML-Datei"
'
'OpenFileDialog3
'
Me.OpenFileDialog3.FileName = "OpenFileDialog3"
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -153,21 +183,24 @@ Partial Class Form1
Me.Controls.Add(Me.RibbonStatusBar1)
Me.Controls.Add(Me.RibbonControl1)
Me.Name = "Form1"
Me.Text = "Form1"
Me.Ribbon = Me.RibbonControl1
Me.StatusBar = Me.RibbonStatusBar1
Me.Text = "EMail Profiler - Test Tool"
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.BehaviorManager1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents RibbonControl1 As DevExpress.XtraBars.Ribbon.RibbonControl
Friend WithEvents RibbonPage1 As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents rpPage1 As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonStatusBar1 As DevExpress.XtraBars.Ribbon.RibbonStatusBar
Friend WithEvents FolderBrowserDialog1 As FolderBrowserDialog
Friend WithEvents bsifolderbrowser As DevExpress.XtraBars.BarStaticItem
Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents btRunEmailCheck As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents ListBox1 As ListBox
@@ -175,4 +208,9 @@ Partial Class Form1
Friend WithEvents BarButtonItem4 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents OpenFileDialog1 As OpenFileDialog
Friend WithEvents btExtractMailAttachments As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup4 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents OpenFileDialog2 As OpenFileDialog
Friend WithEvents OpenFileDialog3 As OpenFileDialog
Friend WithEvents BehaviorManager1 As DevExpress.Utils.Behaviors.BehaviorManager
End Class

View File

@@ -154,7 +154,7 @@
NC43QzMyLjEsMTQuMywzMS44LDE0LDMxLjMsMTR6IiBjbGFzcz0iWWVsbG93IiAvPg0KPC9zdmc+Cw==
</value>
</data>
<data name="BarButtonItem2.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<data name="btRunEmailCheck.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
@@ -227,6 +227,25 @@
MywzdjE2YzAsMC42LTAuNCwxLTEsMXMtMS0wLjQtMS0xVjEwaC0ydjEzICAgYzAsMS43LDEuMywzLDMs
M3MzLTEuMywzLTNWN2MwLTIuOC0yLjItNS01LTVzLTUsMi4yLTUsNXYxNmMwLDMuOSwzLjEsNyw3LDdz
Ny0zLjEsNy03VjEwSDIyeiIgY2xhc3M9IkJsYWNrIiAvPg0KICA8L2c+DQo8L3N2Zz4L
</value>
</data>
<data name="btExtractMailAttachments.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAKQCAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLlJlZHtmaWxsOiNEMTFD
MUM7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7Zmls
bDojNzI3MjcyO30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuNzU7fQo8L3N0eWxl
Pg0KICA8ZyBpZD0iTWFpbCI+DQogICAgPHBhdGggZD0iTTE2LDE4LjNsMTQtOFYyNWMwLDAuNS0wLjUs
MS0xLDFIM2MtMC41LDAtMS0wLjUtMS0xVjEwLjNMMTYsMTguM3ogTTI5LDZIM0MyLjUsNiwyLDYuNSwy
LDd2MWwxNCw4bDE0LThWNyAgIEMzMCw2LjUsMjkuNSw2LDI5LDZ6IiBjbGFzcz0iQmxhY2siIC8+DQog
IDwvZz4NCjwvc3ZnPgs=
</value>
</data>
<metadata name="FolderBrowserDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
@@ -235,4 +254,13 @@
<metadata name="OpenFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>186, 17</value>
</metadata>
<metadata name="OpenFileDialog2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>327, 17</value>
</metadata>
<metadata name="OpenFileDialog3.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>468, 17</value>
</metadata>
<metadata name="BehaviorManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>609, 17</value>
</metadata>
</root>

View File

@@ -1,24 +1,26 @@
Imports System.ComponentModel
Imports System.IO
Imports System.Net.Mail
Imports System.IO
Imports System.Text.RegularExpressions
Imports DigitalData.Modules
Imports DevExpress.Data.Helpers.ExpressiveSortInfo
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Imports EmailProfiler.Common
Imports GdPicture14
Imports Independentsoft.Email.Mime
Imports Attachment = Independentsoft.Email.Mime.Attachment
Imports LicenseManager = GdPicture14.LicenseManager
Public Class Form1
Private _logger As DigitalData.Modules.Logging.Logger
Private Shared MyLogger As LogConfig
Private _logger As Logger
Private Shared _MyLogger As LogConfig
Private _Worklist As List(Of String)
Private MyDatabase As MSSQLServer
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
Try
MyLogger = New LogConfig(LogConfig.PathType.CustomPath, Path.Combine(My.Application.Info.DirectoryPath, "Log"), Nothing, My.Application.Info.CompanyName, My.Application.Info.ProductName)
_logger = MyLogger.GetLogger()
MyLogger.Debug = True
_MyLogger = New LogConfig(LogConfig.PathType.CustomPath, Path.Combine(My.Application.Info.DirectoryPath, "Log"), Nothing, My.Application.Info.CompanyName, My.Application.Info.ProductName)
_logger = _MyLogger.GetLogger()
_MyLogger.Debug = True
Dim dbResult As Boolean
@@ -27,7 +29,7 @@ Public Class Form1
Exit Sub
End If
MyDatabase = New MSSQLServer(MyLogger, My.Settings.DD_ECM_CONSTRING)
MyDatabase = New MSSQLServer(_MyLogger, My.Settings.DD_ECM_CONSTRING)
If MyDatabase.DBInitialized = True Then
dbResult = True
@@ -65,8 +67,15 @@ Public Class Form1
End If
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
Private Sub btRunEmailCheck_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btRunEmailCheck.ItemClick
' Check Email
ListBox1.Items.Clear()
If bsifolderbrowser Is Nothing Or String.IsNullOrEmpty(bsifolderbrowser.Caption) Then
MsgBox("Es wurde kein input-Verzeichnis konfiguriert. Abbruch!", MsgBoxStyle.Information)
Return
End If
Dim di As New DirectoryInfo(bsifolderbrowser.Caption)
' Get a reference to each file in that directory.
Dim fiArr As FileInfo() = di.GetFiles()
@@ -112,7 +121,7 @@ Public Class Form1
If oCount = 1 Then
Continue For
End If
Dim oAttachmentFileString
Dim oAttachmentFileString As String = ""
oString = String.Format(" Working on Attachment [{0}]", oAttachment.GetFileName)
_logger.Info(oString)
ListBox1.Items.Add(oString)
@@ -133,7 +142,7 @@ Public Class Form1
oString = " ## Attachment NOT EXISTING ##"
_logger.Info(oString)
ListBox1.Items.Add(oString)
If System.IO.File.Exists(oAttachmentFileString) = False Then
If File.Exists(oAttachmentFileString) = False Then
_logger.Debug(String.Format("Trying to save attachment [{0}]", oAttachmentFileString))
Try
oAttachment.Save(oAttachmentFileString)
@@ -191,7 +200,7 @@ Public Class Form1
End Try
End Function
Private Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem4.ItemClick
Private Sub btExtractPdfAttachments_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem4.ItemClick
' FileOpen Dialog
Dim fileOpenDlg = OpenFileDialog1
@@ -206,8 +215,9 @@ Public Class Form1
End Sub
Private Sub ExtractEmbeddedPDFAttachments(pFilename As String)
Try
Dim oSQLGDPicture = "SELECT LICENSE FROM TBDD_3RD_PARTY_MODULES WHERE ACTIVE = 1"
Dim GDPictureLicense As String = "21182889975216572111813147150675976632"
Dim GDPictureLicense As String = ConfigDbFunct.GetProductLicense("GDPICTURE", "11.2024", _MyLogger, My.Settings.DD_ECM_CONSTRING)
Dim oValidExtensions = New List(Of String) From {"pdf", "xls", "xlsx", "doc", "docx", "ppt", "pptx"}
Dim oGraphicExtensions = New List(Of String) From {"jpg", "bmp", "jpeg", "gif", "png", "xml"}
@@ -236,7 +246,7 @@ Public Class Form1
Dim oValidExt = oValidExtensions.Any(Function(ext) oEmbAttName.EndsWith(ext))
If oValidExt = False Then
_Logger.Info("Invalid FileExtension of embedded file [{0}]", oEmbAttName)
_logger.Info("Invalid FileExtension of embedded file [{0}]", oEmbAttName)
Dim GraphicExt = oGraphicExtensions.Any(Function(ext) oEmbAttName.EndsWith(ext))
If GraphicExt = False Then
Dim oInfo = $"Consistency or extension of attached file [{oEmbAttName}] is not ok."
@@ -268,4 +278,33 @@ Public Class Form1
End Try
End Sub
Private Sub btExtractMailAttachments_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btExtractMailAttachments.ItemClick
' Hier verarbeiten wir eine ausgewählte EML-Datei
' und speichern alle Anhänge auf die Platte.
' Der Einstieg und der Ablauf entspricht dem des Services.
' Unterschied ist die lokale Datei
Dim connectionString As String = "Server=SDD-VMP04-SQL17\DD_DEVELOP01;Database=DD_ECM;User Id=sa;Password=dd"
Dim oConfigData As Config = New Config() With {
.Debug = False,
.GDPictureVersion = "11.2024",
.UseWindream = False,
.ConnectionString = connectionString
}
Dim Worker As ExtractAttachmentsFromEMLFile = New ExtractAttachmentsFromEMLFile()
' FileOpen Dialog
Dim fileOpenDlg = OpenFileDialog2
If fileOpenDlg.ShowDialog() = DialogResult.OK Then
Dim oFilename = fileOpenDlg.FileName
' Call Extract Method
Worker.CallWorkerProcess(oFilename, oConfigData)
End If
End Sub
End Class

View File

@@ -0,0 +1,30 @@
Imports System.IO
Imports DigitalData.Modules.Logging
Imports EmailProfiler.Common
Public Class ExtractAttachmentsFromEMLFile
Private ReadOnly _LogConfig As LogConfig
Sub New()
Dim oLogPath = Path.Combine(My.Application.Info.DirectoryPath, "Log")
_LogConfig = New LogConfig(LogConfig.PathType.CustomPath, oLogPath, Nothing, "Digital Data", "DD EmailProfiler TEST", 30)
End Sub
Public Sub CallWorkerProcess(pEMLFilename As String, pConfigData As Config)
Dim oProfileIdForPolling = 1
Dim oWorker As New clsWorker(_LogConfig,
pConfigData.ConnectionString,
"",
oProfileIdForPolling,
pConfigData,
pEMLFilename)
oWorker.Start_WorkingProfiles(True)
End Sub
End Class

View File

@@ -1,4 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="GdPicture" version="14.2.90" targetFramework="net48" />
<package id="GdPicture.runtimes.windows" version="14.2.90" targetFramework="net48" />
<package id="NLog" version="5.0.5" targetFramework="net461" />
</packages>

View File

@@ -15,6 +15,8 @@
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
<TargetFrameworkProfile />
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
@@ -54,18 +56,27 @@
<Reference Include="DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraBars.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" />
<Reference Include="DigitalData.Modules.Config">
<HintPath>..\..\..\2_DLL Projekte\DDModules\Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database">
<HintPath>..\..\..\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\..\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
<HintPath>..\..\..\2_DLL Projekte\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14">
<HintPath>D:\ProgramFiles\GdPicture.net 14\Redist\GdPicture.NET (.NET Framework 4.5)\GdPicture.NET.14.dll</HintPath>
<Reference Include="EmailProfiler.Common">
<HintPath>..\EmailProfiler.Common\bin\Debug\EmailProfiler.Common.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14, Version=14.2.90.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.2.90\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference>
<Reference Include="Independentsoft.Email">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Email .NET\Bin\Independentsoft.Email.dll</HintPath>
</Reference>
<Reference Include="Mail">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\Limilabs\Mail.dll\Mail.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.5.0.5\lib\net46\NLog.dll</HintPath>
@@ -100,6 +111,7 @@
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup>
<Compile Include="TestClasses\ExtractAttachmentsFromEMLFile.vb" />
<Compile Include="Form1.vb">
<SubType>Form</SubType>
</Compile>
@@ -150,4 +162,11 @@
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<Import Project="..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.2.90\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.2.90\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets'))" />
</Target>
</Project>