diff --git a/History.md b/History.md index d10e86b5..a940a217 100644 --- a/History.md +++ b/History.md @@ -3,6 +3,8 @@ - #201 correct embedded files in XRechnung - transaction calculator getGrandTotal now public +- corrected sample in docs thanks to tweimer PR #204 +- don't write "null" as paymentDescription if no Bank account is specified 2.0.2 ======= diff --git a/library/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRD2PullProvider.java b/library/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRD2PullProvider.java index 28261db5..3129943e 100644 --- a/library/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRD2PullProvider.java +++ b/library/src/main/java/org/mustangproject/ZUGFeRD/ZUGFeRD2PullProvider.java @@ -571,9 +571,12 @@ public class ZUGFeRD2PullProvider implements IXMLProvider { } - if (trans.getPaymentTerms() == null) { - xml = xml + " \n" - + " " + paymentTermsDescription + "\n"; + if ((trans.getPaymentTerms() == null)&&((paymentTermsDescription!=null)||(trans.getTradeSettlement()!=null)||(hasDueDate))) { + xml = xml + "\n"; + + if (paymentTermsDescription!=null) { + xml = xml + "" + paymentTermsDescription + "\n"; + } if (trans.getTradeSettlement() != null) { for (IZUGFeRDTradeSettlement payment : trans.getTradeSettlement()) { @@ -645,9 +648,13 @@ public class ZUGFeRD2PullProvider implements IXMLProvider { } private String buildPaymentTermsXml() { - String paymentTermsXml = ""; IZUGFeRDPaymentTerms paymentTerms = trans.getPaymentTerms(); + if (paymentTerms==null) { + return ""; + } + String paymentTermsXml = ""; + IZUGFeRDPaymentDiscountTerms discountTerms = paymentTerms.getDiscountTerms(); Date dueDate = paymentTerms.getDueDate(); if (dueDate != null && discountTerms != null && discountTerms.getBaseDate() != null) {