2 Commits

Author SHA1 Message Date
4dc454403b Modules.Interfaces: Log-Meldungen ergänzt 2026-09-03 15:04:44 +02:00
5b83e5d265 Modules.Interface: Version 2.4.6.0
Für XML-Dateien wird jetzt der Validator durchlaufen
2026-09-03 14:08:32 +02:00
3 changed files with 15 additions and 3 deletions

View File

@@ -13,7 +13,7 @@ Imports System.Runtime.InteropServices
<Assembly: AssemblyCompany("Digital Data")>
<Assembly: AssemblyProduct("Modules.Interfaces")>
<Assembly: AssemblyCopyright("Copyright © 2026")>
<Assembly: AssemblyTrademark("2.4.5.0")>
<Assembly: AssemblyTrademark("2.4.6.0")>
<Assembly: ComVisible(False)>
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.4.5.0")>
<Assembly: AssemblyFileVersion("2.4.5.0")>
<Assembly: AssemblyVersion("2.4.6.0")>
<Assembly: AssemblyFileVersion("2.4.6.0")>

View File

@@ -194,6 +194,14 @@ Public Class ZUGFeRDInterface
}
End Using
oResult = _Validator.ValidateZUGFeRDDocument(oResult)
If oResult.ValidationErrors.Count > 0 Then
_logger.Warn($"XML-Logik - Nach Validator() Errors: {oResult.ValidationErrors.Count}")
Else
_logger.Info($"XML-Logik - Nach Validator() NO Errors.")
End If
Catch ex As ZUGFeRDExecption
' Don't log ZUGFeRD Exceptions here, they should be handled by the calling code.
' It also produces misleading error messages when checking if an attachment is a zugferd file.

View File

@@ -26,6 +26,7 @@ Public Class Validator
For Each oNode As XElement In oDecimalNodes
Dim oParsedValue As Decimal = 0.0
If Decimal.TryParse(oNode.Value, oParsedValue) = False Then
_logger.Warn($"Invalid Decimal Value in {oNode.Name.LocalName}")
pResult.ValidationErrors.Add(New ZugferdValidationError() With {
.ElementName = oNode.Name.LocalName,
.ElementValue = oNode.Value,
@@ -50,6 +51,8 @@ Public Class Validator
For Each oNode As XElement In oCurrencyCodeNodes
Dim oValid = ValidateCurrencyCode(oNode.Value)
If oValid = False Then
_logger.Warn($"Invalid CurrencyCode in {oNode.Name.LocalName}")
pResult.ValidationErrors.Add(New ZugferdValidationError() With {
.ElementName = oNode.Name.LocalName,
.ElementValue = oNode.Value,
@@ -78,6 +81,7 @@ Public Class Validator
Dim oValid = ValidateCurrencyCode(oCurrencyID)
If oValid = False Then
_logger.Warn($"Invalid CurrencyID in {oNode.Name.LocalName}")
pResult.ValidationErrors.Add(New ZugferdValidationError() With {
.ElementName = oNode.Name.LocalName,
.ElementValue = oCurrencyID,