ZUGFeRD Service: Ablehnungsmails
This commit is contained in:
parent
76ce9c075d
commit
c79707f1e1
@ -64,6 +64,7 @@ Public Class ZUGFeRDInterface
|
|||||||
Public ElementName As String
|
Public ElementName As String
|
||||||
Public ElementValue As String
|
Public ElementValue As String
|
||||||
Public ErrorMessage As String
|
Public ErrorMessage As String
|
||||||
|
Public ErrorMessageDE As String
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
''' <summary>
|
''' <summary>
|
||||||
|
|||||||
@ -28,7 +28,8 @@ Public Class Validator
|
|||||||
pResult.ValidationErrors.Add(New ZugferdValidationError() With {
|
pResult.ValidationErrors.Add(New ZugferdValidationError() With {
|
||||||
.ElementName = oNode.Name.LocalName,
|
.ElementName = oNode.Name.LocalName,
|
||||||
.ElementValue = oNode.Value,
|
.ElementValue = oNode.Value,
|
||||||
.ErrorMessage = "Value could not be parsed as Decimal"
|
.ErrorMessage = "Value could not be parsed as Decimal.",
|
||||||
|
.ErrorMessageDE = "Der Wert konnte nicht in eine Dezimalzahl umgewandelt werden."
|
||||||
})
|
})
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
@ -50,7 +51,8 @@ Public Class Validator
|
|||||||
pResult.ValidationErrors.Add(New ZugferdValidationError() With {
|
pResult.ValidationErrors.Add(New ZugferdValidationError() With {
|
||||||
.ElementName = oNode.Name.LocalName,
|
.ElementName = oNode.Name.LocalName,
|
||||||
.ElementValue = oNode.Value,
|
.ElementValue = oNode.Value,
|
||||||
.ErrorMessage = "Invalid CurrencyCode. Only 3-Character codes are allowed."
|
.ErrorMessage = "Invalid CurrencyCode. Only 3-Character codes are allowed.",
|
||||||
|
.ErrorMessageDE = "Ungültiger Währungscode. Es sind nur 3-stellige Codes erlaubt."
|
||||||
})
|
})
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
@ -76,7 +78,8 @@ Public Class Validator
|
|||||||
pResult.ValidationErrors.Add(New ZugferdValidationError() With {
|
pResult.ValidationErrors.Add(New ZugferdValidationError() With {
|
||||||
.ElementName = oNode.Name.LocalName,
|
.ElementName = oNode.Name.LocalName,
|
||||||
.ElementValue = oCurrencyID,
|
.ElementValue = oCurrencyID,
|
||||||
.ErrorMessage = "Invalid currencyID. Only 3-Character codes or empty values are allowed."
|
.ErrorMessage = "Invalid currencyID. Only 3-Character codes or empty values are allowed.",
|
||||||
|
.ErrorMessageDE = "Ungültige WährungsID. Es sind nur 3-Zeichen lange Codes oder ein leerer Wert erlaubt."
|
||||||
})
|
})
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
|
|||||||
@ -33,8 +33,11 @@ Namespace ZUGFeRD
|
|||||||
''' <param name="pNamePortal">Name of the Portal from config</param>
|
''' <param name="pNamePortal">Name of the Portal from config</param>
|
||||||
''' <param name="pTemplateId">ID for E-Mail-Template from config</param>
|
''' <param name="pTemplateId">ID for E-Mail-Template from config</param>
|
||||||
''' <param name="pErrorCode">Error Code</param>
|
''' <param name="pErrorCode">Error Code</param>
|
||||||
|
''' <param name="pParameter1">Zusätzlicher Parameter 1</param>
|
||||||
|
''' <param name="pParameter2">Zusätzlicher Parameter 2</param>
|
||||||
Public Sub AddToEmailQueueMSSQL(pMessageId As String, pBodyText As String, pEmailData As EmailData, pSourceProcedure As String,
|
Public Sub AddToEmailQueueMSSQL(pMessageId As String, pBodyText As String, pEmailData As EmailData, pSourceProcedure As String,
|
||||||
pEmailAccountId As Integer, pNamePortal As String, pTemplateId As Integer, pErrorCode As ErrorCode)
|
pEmailAccountId As Integer, pNamePortal As String, pTemplateId As Integer, pErrorCode As ErrorCode,
|
||||||
|
pParameter1 As String, pParameter2 As String)
|
||||||
|
|
||||||
Dim useLegacyMethod = True
|
Dim useLegacyMethod = True
|
||||||
Dim oErrorCode As String = String.Empty
|
Dim oErrorCode As String = String.Empty
|
||||||
@ -89,7 +92,7 @@ Namespace ZUGFeRD
|
|||||||
AddToEmailQueueMSSQL(pMessageId, pBodyText, pEmailData, pSourceProcedure, pEmailAccountId, pNamePortal)
|
AddToEmailQueueMSSQL(pMessageId, pBodyText, pEmailData, pSourceProcedure, pEmailAccountId, pNamePortal)
|
||||||
Else
|
Else
|
||||||
_logger.Debug("New rejection mail logic is configured!")
|
_logger.Debug("New rejection mail logic is configured!")
|
||||||
AddToEmailQueueMSSQL(pMessageId, pTemplateId, oErrorCode, pEmailAccountId)
|
AddToEmailQueueMSSQL(pMessageId, pTemplateId, oErrorCode, pEmailAccountId, pParameter1, pParameter2)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
@ -103,7 +106,18 @@ Namespace ZUGFeRD
|
|||||||
''' <param name="pTemplateId">GUID for TBDD_EMAIL_TEMPLATE from config</param>
|
''' <param name="pTemplateId">GUID for TBDD_EMAIL_TEMPLATE from config</param>
|
||||||
''' <param name="pErrorCode">ErrorID (TBDD_GUI_LANGUAGE_PHRASE)</param>
|
''' <param name="pErrorCode">ErrorID (TBDD_GUI_LANGUAGE_PHRASE)</param>
|
||||||
''' <param name="pEmailAccountId">Sending profile from config</param>
|
''' <param name="pEmailAccountId">Sending profile from config</param>
|
||||||
Private Sub AddToEmailQueueMSSQL(pMessageId As String, pTemplateId As Integer, pErrorCode As String, pEmailAccountId As Integer)
|
''' <param name="pParameter1">Zusätzlicher Parameter 1</param>
|
||||||
|
''' <param name="pParameter2">Zusätzlicher Parameter 2</param>
|
||||||
|
Private Sub AddToEmailQueueMSSQL(pMessageId As String, pTemplateId As Integer, pErrorCode As String, pEmailAccountId As Integer,
|
||||||
|
pParameter1 As String, pParameter2 As String)
|
||||||
|
|
||||||
|
If pParameter1.IsNullOrEmpty Then
|
||||||
|
pParameter1 = ""
|
||||||
|
End If
|
||||||
|
|
||||||
|
If pParameter2.IsNullOrEmpty Then
|
||||||
|
pParameter2 = ""
|
||||||
|
End If
|
||||||
|
|
||||||
Try
|
Try
|
||||||
Dim oExecute = $"EXECUTE dbo.PRDD_SEND_REJECTION_MAIL
|
Dim oExecute = $"EXECUTE dbo.PRDD_SEND_REJECTION_MAIL
|
||||||
@ -113,6 +127,8 @@ Namespace ZUGFeRD
|
|||||||
, 'ZUGFeRD Service'
|
, 'ZUGFeRD Service'
|
||||||
, {pTemplateId}
|
, {pTemplateId}
|
||||||
, '{pErrorCode}'
|
, '{pErrorCode}'
|
||||||
|
, '{pParameter1}'
|
||||||
|
, '{pParameter2}'
|
||||||
, 77
|
, 77
|
||||||
"
|
"
|
||||||
If _mssql.ExecuteNonQuery(oExecute) = False Then
|
If _mssql.ExecuteNonQuery(oExecute) = False Then
|
||||||
|
|||||||
@ -9,25 +9,34 @@
|
|||||||
Public Const EMAIL_SUBJECT_REJECTED = "@NAME_ZUGFERD_PORTAL: Beleg abgelehnt"
|
Public Const EMAIL_SUBJECT_REJECTED = "@NAME_ZUGFERD_PORTAL: Beleg abgelehnt"
|
||||||
Public Const EMAIL_SUBJECT_EXCEPTION = "@NAME_ZUGFERD_PORTAL: Unbehandelte Ausnahme"
|
Public Const EMAIL_SUBJECT_EXCEPTION = "@NAME_ZUGFERD_PORTAL: Unbehandelte Ausnahme"
|
||||||
|
|
||||||
|
' OutOfMemoryException = 20009
|
||||||
|
' UnhandledException = 20010
|
||||||
|
' FileMoveException = 200011
|
||||||
Public Const EMAIL_UNHANDLED_EXCEPTION = """
|
Public Const EMAIL_UNHANDLED_EXCEPTION = """
|
||||||
<p>Beim Verarbeiten der Datei mit der Message ID '{0}' ist ein schwerer Fehler aufgetreten.</p>
|
<p>Beim Verarbeiten der Datei mit der Message ID '{0}' ist ein schwerer Fehler aufgetreten.</p>
|
||||||
<p>Fehlerbeschreibung: {1}</p>
|
<p>Fehlerbeschreibung: {1}</p>
|
||||||
<pre>{2}</pre>
|
<pre>{2}</pre>
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
' MissingValueException = 20007
|
||||||
Public Const EMAIL_MISSINGPROPERTIES_1 = "<p>Die angehängte Datei entspricht nicht dem WISAG ZUGFeRD-Format: {0}</p>"
|
Public Const EMAIL_MISSINGPROPERTIES_1 = "<p>Die angehängte Datei entspricht nicht dem WISAG ZUGFeRD-Format: {0}</p>"
|
||||||
Public Const EMAIL_MISSINGPROPERTIES_2 = "<p>Die folgenden Eigenschaften wurden als ERFORDERLICH eingestuft, wurden aber nicht gefunden:<p/>"
|
Public Const EMAIL_MISSINGPROPERTIES_2 = "<p>Die folgenden Eigenschaften wurden als ERFORDERLICH eingestuft, wurden aber nicht gefunden:</p>"
|
||||||
|
|
||||||
|
' MD5HashException = 20002
|
||||||
Public Const EMAIL_MD5_ERROR = "<p>Die von Ihnen gesendete Rechnung ({0}) wurde bereits von unserem System verarbeitet.</p>"
|
Public Const EMAIL_MD5_ERROR = "<p>Die von Ihnen gesendete Rechnung ({0}) wurde bereits von unserem System verarbeitet.</p>"
|
||||||
|
|
||||||
|
' ValidationException = 20001
|
||||||
Public Const EMAIL_VALIDATION_ERROR = "
|
Public Const EMAIL_VALIDATION_ERROR = "
|
||||||
<p>Die von Ihnen gesendete Rechnung hat die ZUGFeRD Validierung nicht bestanden.</p>
|
<p>Die von Ihnen gesendete Rechnung hat die ZUGFeRD Validierung nicht bestanden.</p>
|
||||||
<p>Die folgenden Felder sind nicht korrekt:<ul>{0}</ul></p>"
|
<p>Die folgenden Felder sind nicht korrekt:<ul>{0}</ul></p>"
|
||||||
|
|
||||||
|
' TooMuchFerdsException = 20005
|
||||||
Public Const EMAIL_TOO_MUCH_FERDS = "<p>In Ihrer Email ({0}) sind mehr als ein ZUGFeRD Dokument enthalten. Bitte prüfen Sie die Rechnungsanhänge. Nur eine Rechnung darf das ZUGFeRD-Format enthalten.</p>"
|
Public Const EMAIL_TOO_MUCH_FERDS = "<p>In Ihrer Email ({0}) sind mehr als ein ZUGFeRD Dokument enthalten. Bitte prüfen Sie die Rechnungsanhänge. Nur eine Rechnung darf das ZUGFeRD-Format enthalten.</p>"
|
||||||
|
|
||||||
|
' NoFerdsException = 20006
|
||||||
Public Const EMAIL_NO_FERDS = "<p>Ihre Email ({0}) enthielt keine ZUGFeRD-Dokumente.</p>"
|
Public Const EMAIL_NO_FERDS = "<p>Ihre Email ({0}) enthielt keine ZUGFeRD-Dokumente.</p>"
|
||||||
|
|
||||||
|
' FileSizeLimitReachedException = 20008
|
||||||
Public Const EMAIL_FILE_SIZE_REACHED = "
|
Public Const EMAIL_FILE_SIZE_REACHED = "
|
||||||
<p>Die von Ihnen gesendete Rechnung oder einer der Rechnungs-Anhänge überschreitet die erlaubte Größe von <strong>{0} MB</strong>.</p>
|
<p>Die von Ihnen gesendete Rechnung oder einer der Rechnungs-Anhänge überschreitet die erlaubte Größe von <strong>{0} MB</strong>.</p>
|
||||||
<p>Die folgende Datei hat die erlaubte Größe überschritten:<ul>
|
<p>Die folgende Datei hat die erlaubte Größe überschritten:<ul>
|
||||||
@ -35,6 +44,7 @@
|
|||||||
</ul></p>
|
</ul></p>
|
||||||
"
|
"
|
||||||
|
|
||||||
|
' InvalidFerdException = 20004
|
||||||
Public Const EMAIL_INVALID_DOCUMENT = "
|
Public Const EMAIL_INVALID_DOCUMENT = "
|
||||||
<p>Ihre Email ({0}) enthielt ein ZUGFeRD Dokument, welches aber inkorrekt formatiert wurde.</p>
|
<p>Ihre Email ({0}) enthielt ein ZUGFeRD Dokument, welches aber inkorrekt formatiert wurde.</p>
|
||||||
<p>Mögliche Gründe für ein inkorrektes Format sind:<ul>
|
<p>Mögliche Gründe für ein inkorrektes Format sind:<ul>
|
||||||
@ -43,6 +53,7 @@
|
|||||||
</ul></p>
|
</ul></p>
|
||||||
"
|
"
|
||||||
|
|
||||||
|
' UnsupportedFerdException = 20003
|
||||||
Public Const EMAIL_UNSUPPORTED_DOCUMENT = "
|
Public Const EMAIL_UNSUPPORTED_DOCUMENT = "
|
||||||
<p>Ihre Email ({0}) enthielt ein ZUGFeRD Format ({1}), welches zur Zeit noch nicht freigeschaltet ist.</p>
|
<p>Ihre Email ({0}) enthielt ein ZUGFeRD Format ({1}), welches zur Zeit noch nicht freigeschaltet ist.</p>
|
||||||
"
|
"
|
||||||
|
|||||||
@ -222,13 +222,15 @@ Public Class ImportZUGFeRDFiles
|
|||||||
_history.Update_HistoryEntry(oMessageId, oMD5CheckSum, oMessage)
|
_history.Update_HistoryEntry(oMessageId, oMD5CheckSum, oMessage)
|
||||||
|
|
||||||
Dim oErrorList As String = ""
|
Dim oErrorList As String = ""
|
||||||
|
Dim oErrorListDE As String = ""
|
||||||
For Each oError In oErrors
|
For Each oError In oErrors
|
||||||
oErrorList += $"<li>Element '{oError.ElementName}' mit Wert '{oError.ElementValue}': {oError.ErrorMessage}</li>"
|
oErrorList += $"<li>Element '{oError.ElementName}' with Value '{oError.ElementValue}': {oError.ErrorMessage}</li>"
|
||||||
|
oErrorListDE += $"<li>Element '{oError.ElementName}' mit Wert '{oError.ElementValue}': {oError.ErrorMessageDE}</li>"
|
||||||
Next
|
Next
|
||||||
|
|
||||||
Dim oBody = String.Format(EmailStrings.EMAIL_VALIDATION_ERROR, oErrorList)
|
Dim oBody = String.Format(EmailStrings.EMAIL_VALIDATION_ERROR, oErrorList)
|
||||||
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "ValidationException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.ValidationException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "ValidationException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.ValidationException, oErrorListDE, oErrorList)
|
||||||
AddRejectedState(oMessageId, "ValidationException", "Die Rechnungsvalidierung ist fehlgeschlagen!", "", oSQLTransaction)
|
AddRejectedState(oMessageId, "ValidationException", "Die Rechnungsvalidierung ist fehlgeschlagen!", "", oSQLTransaction)
|
||||||
|
|
||||||
Catch ex As MD5HashException
|
Catch ex As MD5HashException
|
||||||
@ -241,7 +243,7 @@ Public Class ImportZUGFeRDFiles
|
|||||||
|
|
||||||
Dim oBody = String.Format(EmailStrings.EMAIL_MD5_ERROR, ex.FileName)
|
Dim oBody = String.Format(EmailStrings.EMAIL_MD5_ERROR, ex.FileName)
|
||||||
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "MD5HashException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.MD5HashException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "MD5HashException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.MD5HashException, ex.FileName, "")
|
||||||
AddRejectedState(oMessageId, "MD5HashException", "Die gesendete Rechnung wurde bereits verarbeitet!", "", oSQLTransaction)
|
AddRejectedState(oMessageId, "MD5HashException", "Die gesendete Rechnung wurde bereits verarbeitet!", "", oSQLTransaction)
|
||||||
|
|
||||||
Catch ex As UnsupportedFerdException
|
Catch ex As UnsupportedFerdException
|
||||||
@ -254,7 +256,7 @@ Public Class ImportZUGFeRDFiles
|
|||||||
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
||||||
Dim oBody As String = String.Format(EmailStrings.EMAIL_UNSUPPORTED_DOCUMENT, oEmailData.Subject, ex.XmlFile)
|
Dim oBody As String = String.Format(EmailStrings.EMAIL_UNSUPPORTED_DOCUMENT, oEmailData.Subject, ex.XmlFile)
|
||||||
|
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "UnsupportedFerdException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.UnsupportedFerdException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "UnsupportedFerdException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.UnsupportedFerdException, ex.XmlFile, "")
|
||||||
AddRejectedState(oMessageId, "UnsupportedFerdException", "Nicht unterstütztes Datenformat", "", oSQLTransaction)
|
AddRejectedState(oMessageId, "UnsupportedFerdException", "Nicht unterstütztes Datenformat", "", oSQLTransaction)
|
||||||
|
|
||||||
Catch ex As InvalidFerdException
|
Catch ex As InvalidFerdException
|
||||||
@ -267,7 +269,7 @@ Public Class ImportZUGFeRDFiles
|
|||||||
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
||||||
Dim oBody = String.Format(EmailStrings.EMAIL_INVALID_DOCUMENT, oEmailData.Subject)
|
Dim oBody = String.Format(EmailStrings.EMAIL_INVALID_DOCUMENT, oEmailData.Subject)
|
||||||
|
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "InvalidFerdException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.InvalidFerdException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "InvalidFerdException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.InvalidFerdException, "", "")
|
||||||
AddRejectedState(oMessageId, "InvalidFerdException", "Inkorrekte Formate", "", oSQLTransaction)
|
AddRejectedState(oMessageId, "InvalidFerdException", "Inkorrekte Formate", "", oSQLTransaction)
|
||||||
|
|
||||||
Catch ex As TooMuchFerdsException
|
Catch ex As TooMuchFerdsException
|
||||||
@ -278,7 +280,7 @@ Public Class ImportZUGFeRDFiles
|
|||||||
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
||||||
Dim oBody = String.Format(EmailStrings.EMAIL_TOO_MUCH_FERDS, oEmailData.Subject)
|
Dim oBody = String.Format(EmailStrings.EMAIL_TOO_MUCH_FERDS, oEmailData.Subject)
|
||||||
|
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "TooMuchFerdsException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.TooMuchFerdsException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "TooMuchFerdsException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.TooMuchFerdsException, "", "")
|
||||||
AddRejectedState(oMessageId, "TooMuchFerdsException", "Email enthielt mehr als ein ZUGFeRD-Dokument", "", oSQLTransaction)
|
AddRejectedState(oMessageId, "TooMuchFerdsException", "Email enthielt mehr als ein ZUGFeRD-Dokument", "", oSQLTransaction)
|
||||||
|
|
||||||
Catch ex As NoFerdsException
|
Catch ex As NoFerdsException
|
||||||
@ -289,7 +291,7 @@ Public Class ImportZUGFeRDFiles
|
|||||||
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
||||||
Dim oBody = String.Format(EmailStrings.EMAIL_NO_FERDS, oEmailData.Subject)
|
Dim oBody = String.Format(EmailStrings.EMAIL_NO_FERDS, oEmailData.Subject)
|
||||||
|
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "NoFerdsException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.NoFerdsException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "NoFerdsException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.NoFerdsException, "", "")
|
||||||
AddRejectedState(oMessageId, "NoFerdsException", " Email enthielt keine ZUGFeRD-Dokumente", "", oSQLTransaction)
|
AddRejectedState(oMessageId, "NoFerdsException", " Email enthielt keine ZUGFeRD-Dokumente", "", oSQLTransaction)
|
||||||
|
|
||||||
Catch ex As MissingValueException
|
Catch ex As MissingValueException
|
||||||
@ -302,9 +304,14 @@ Public Class ImportZUGFeRDFiles
|
|||||||
|
|
||||||
_history.Update_HistoryEntry(oMessageId, oMD5CheckSum, $"REJECTED - Missing Required Properties: [{oMessage}]")
|
_history.Update_HistoryEntry(oMessageId, oMD5CheckSum, $"REJECTED - Missing Required Properties: [{oMessage}]")
|
||||||
|
|
||||||
|
Dim oMissingFieldList As String = ""
|
||||||
|
For Each oMissingFieldDescription In ex.MissingProperties
|
||||||
|
oMissingFieldList += $"<li>{oMissingFieldDescription}</li>"
|
||||||
|
Next
|
||||||
|
|
||||||
Dim oBody = _email.CreateBodyForMissingProperties(ex.File.Name, ex.MissingProperties)
|
Dim oBody = _email.CreateBodyForMissingProperties(ex.File.Name, ex.MissingProperties)
|
||||||
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
Dim oEmailData = _file.MoveAndRenameEmailToRejected(oArgs, oMessageId)
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "MissingValueException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.MissingValueException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "MissingValueException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.MissingValueException, ex.File.Name, oMissingFieldList)
|
||||||
AddRejectedState(oMessageId, "MissingValueException", "Es fehlten ZugferdSpezifikationen", oMessage, oSQLTransaction)
|
AddRejectedState(oMessageId, "MissingValueException", "Es fehlten ZugferdSpezifikationen", oMessage, oSQLTransaction)
|
||||||
|
|
||||||
Catch ex As FileSizeLimitReachedException
|
Catch ex As FileSizeLimitReachedException
|
||||||
@ -322,7 +329,7 @@ Public Class ImportZUGFeRDFiles
|
|||||||
|
|
||||||
Dim oBody = String.Format(EmailStrings.EMAIL_FILE_SIZE_REACHED, oArgs.MaxAttachmentSizeInMegaBytes, oFileWithoutMessageId)
|
Dim oBody = String.Format(EmailStrings.EMAIL_FILE_SIZE_REACHED, oArgs.MaxAttachmentSizeInMegaBytes, oFileWithoutMessageId)
|
||||||
|
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "FileSizeLimitReachedException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.FileSizeLimitReachedException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "FileSizeLimitReachedException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.FileSizeLimitReachedException, oArgs.MaxAttachmentSizeInMegaBytes, oFileWithoutMessageId)
|
||||||
AddRejectedState(oMessageId, "FileSizeLimitReachedException", "Erlaubte Dateigröße überschritten", "", oSQLTransaction)
|
AddRejectedState(oMessageId, "FileSizeLimitReachedException", "Erlaubte Dateigröße überschritten", "", oSQLTransaction)
|
||||||
|
|
||||||
|
|
||||||
@ -341,7 +348,7 @@ Public Class ImportZUGFeRDFiles
|
|||||||
.From = oArgs.ExceptionEmailAddress,
|
.From = oArgs.ExceptionEmailAddress,
|
||||||
.Subject = $"OutOfMemoryException im ZUGFeRD-Parser @ {oMessageId}"
|
.Subject = $"OutOfMemoryException im ZUGFeRD-Parser @ {oMessageId}"
|
||||||
}
|
}
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "OutOfMemoryException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.OutOfMemoryException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "OutOfMemoryException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.UnhandledException, ex.Message, ex.StackTrace)
|
||||||
|
|
||||||
' Rollback Transaction
|
' Rollback Transaction
|
||||||
oSQLTransaction.Rollback()
|
oSQLTransaction.Rollback()
|
||||||
@ -360,7 +367,7 @@ Public Class ImportZUGFeRDFiles
|
|||||||
.From = oArgs.ExceptionEmailAddress,
|
.From = oArgs.ExceptionEmailAddress,
|
||||||
.Subject = $"UnhandledException im ZUGFeRD-Parser @ {oMessageId}"
|
.Subject = $"UnhandledException im ZUGFeRD-Parser @ {oMessageId}"
|
||||||
}
|
}
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "UnhandledException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.UnhandledException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "UnhandledException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.UnhandledException, ex.Message, ex.StackTrace)
|
||||||
|
|
||||||
' Rollback Transaction
|
' Rollback Transaction
|
||||||
oSQLTransaction.Rollback()
|
oSQLTransaction.Rollback()
|
||||||
@ -386,7 +393,7 @@ Public Class ImportZUGFeRDFiles
|
|||||||
.From = oArgs.ExceptionEmailAddress,
|
.From = oArgs.ExceptionEmailAddress,
|
||||||
.Subject = $"FileMoveException im ZUGFeRD-Parser @ {oMessageId}"
|
.Subject = $"FileMoveException im ZUGFeRD-Parser @ {oMessageId}"
|
||||||
}
|
}
|
||||||
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "FileMoveException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.FileMoveException)
|
_email.AddToEmailQueueMSSQL(oMessageId, oBody, oEmailData, "FileMoveException", _EmailOutAccountId, oArgs.NamePortal, oArgs.RejectionTemplateId, ErrorCode.UnhandledException, ex.Message, ex.StackTrace)
|
||||||
|
|
||||||
_logger.Warn("Could not move files!")
|
_logger.Warn("Could not move files!")
|
||||||
_logger.Error(ex)
|
_logger.Error(ex)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user