Merge pull request #855 from langfr/issue/EmptyDocumentID

Suppress empty nodes in output XML
This commit is contained in:
Jochen Staerk
2025-06-26 10:46:03 +02:00
committed by GitHub
2 changed files with 52 additions and 5 deletions

View File

@@ -600,19 +600,19 @@ public class ZUGFeRD2PullProvider implements IXMLProvider {
xml += getTradePartyAsXML(trans.getRecipient(), false, false);
xml += "</ram:BuyerTradeParty>";
if (trans.getSellerOrderReferencedDocumentID() != null) {
if (trans.getSellerOrderReferencedDocumentID() != null && !trans.getSellerOrderReferencedDocumentID().trim().isEmpty()) {
xml += "<ram:SellerOrderReferencedDocument>"
+ "<ram:IssuerAssignedID>"
+ XMLTools.encodeXML(trans.getSellerOrderReferencedDocumentID()) + "</ram:IssuerAssignedID>"
+ "</ram:SellerOrderReferencedDocument>";
}
if (trans.getBuyerOrderReferencedDocumentID() != null) {
if (trans.getBuyerOrderReferencedDocumentID() != null && !trans.getBuyerOrderReferencedDocumentID().trim().isEmpty()) {
xml += "<ram:BuyerOrderReferencedDocument>"
+ "<ram:IssuerAssignedID>"
+ XMLTools.encodeXML(trans.getBuyerOrderReferencedDocumentID()) + "</ram:IssuerAssignedID>"
+ "</ram:BuyerOrderReferencedDocument>";
}
if (trans.getContractReferencedDocument() != null) {
if (trans.getContractReferencedDocument() != null && !trans.getContractReferencedDocument().trim().isEmpty()) {
xml += "<ram:ContractReferencedDocument>"
+ "<ram:IssuerAssignedID>"
+ XMLTools.encodeXML(trans.getContractReferencedDocument()) + "</ram:IssuerAssignedID>"
@@ -666,7 +666,7 @@ public class ZUGFeRD2PullProvider implements IXMLProvider {
* "<ID>2013-51112</ID>" +
* "</DeliveryNoteReferencedDocument>"
*/
if (trans.getDespatchAdviceReferencedDocumentID() != null) {
if (trans.getDespatchAdviceReferencedDocumentID() != null && !trans.getDespatchAdviceReferencedDocumentID().trim().isEmpty()) {
xml += "<ram:DespatchAdviceReferencedDocument>";
xml += "<ram:IssuerAssignedID>" + XMLTools.encodeXML(trans.getDespatchAdviceReferencedDocumentID()) + "</ram:IssuerAssignedID>";
xml += "</ram:DespatchAdviceReferencedDocument>";
@@ -902,7 +902,7 @@ public class ZUGFeRD2PullProvider implements IXMLProvider {
}
xml += "<ram:DuePayableAmount>" + currencyFormat(calc.getDuePayable()) + "</ram:DuePayableAmount>"
+ "</ram:SpecifiedTradeSettlementHeaderMonetarySummation>";
if (trans.getInvoiceReferencedDocumentID() != null) {
if (trans.getInvoiceReferencedDocumentID() != null && !trans.getInvoiceReferencedDocumentID().trim().isEmpty()) {
xml += "<ram:InvoiceReferencedDocument>"
+ "<ram:IssuerAssignedID>"
+ XMLTools.encodeXML(trans.getInvoiceReferencedDocumentID()) + "</ram:IssuerAssignedID>";