From ad1b165ed79b5e61591d81934587575841b3f757 Mon Sep 17 00:00:00 2001 From: Stephan Date: Wed, 27 Nov 2024 17:54:51 +0100 Subject: [PATCH] UBL correction, ApplicableHeaderTradeDelivery not part of the standard --- ZUGFeRD/InvoiceDescriptor22UblReader.cs | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/ZUGFeRD/InvoiceDescriptor22UblReader.cs b/ZUGFeRD/InvoiceDescriptor22UblReader.cs index 5ba876fa..b9786e77 100644 --- a/ZUGFeRD/InvoiceDescriptor22UblReader.cs +++ b/ZUGFeRD/InvoiceDescriptor22UblReader.cs @@ -223,18 +223,6 @@ public override InvoiceDescriptor Load(Stream stream) // }; //} - string _despatchAdviceNo = XmlUtils.NodeAsString(doc.DocumentElement, "//cac:ApplicableHeaderTradeDelivery/cac:DespatchAdviceReferencedDocument/cbc:Id", nsmgr); - DateTime? _despatchAdviceDate = XmlUtils.NodeAsDateTime(doc.DocumentElement, "//cac:ApplicableHeaderTradeDelivery/cac:DespatchAdviceReferencedDocument/cbc:IssueDate", nsmgr); - - if (_despatchAdviceDate.HasValue || !String.IsNullOrWhiteSpace(_despatchAdviceNo)) - { - retval.DespatchAdviceReferencedDocument = new DespatchAdviceReferencedDocument() - { - ID = _despatchAdviceNo, - IssueDateTime = _despatchAdviceDate - }; - } - // TODO: Find value //retval.Invoicee = _nodeAsParty(doc.DocumentElement, "//ram:ApplicableHeaderTradeSettlement/ram:InvoiceeTradeParty", nsmgr); retval.Payee = _nodeAsParty(doc.DocumentElement, "//cac:PayeeParty", nsmgr); @@ -331,6 +319,12 @@ public override InvoiceDescriptor Load(Stream stream) break; // only one occurrence allowed in UBL } + XmlNode despatchDocumentReferenceIdNode = doc.DocumentElement.SelectSingleNode("/ubl:Invoice/cac:DespatchDocumentReference/cbc:ID", nsmgr); + if (despatchDocumentReferenceIdNode != null) + { + retval.SetDespatchAdviceReferencedDocument(despatchDocumentReferenceIdNode.InnerText); + } + retval.AddTradePaymentTerms( description: XmlUtils.NodeAsString(doc.DocumentElement, "//cac:PaymentTerms/cbc:Note", nsmgr), dueDate: XmlUtils.NodeAsDateTime(doc.DocumentElement, "//cbc:DueDate", nsmgr)