Merge pull request #182 from HKB-CSS/master

additionalReferencedDocuments according to BG-24 XRechnung (rechnungsbegruendende Unterlagen) as Array of FileAttachment
This commit is contained in:
Jochen Staerk
2020-10-28 20:54:50 +01:00
committed by GitHub
2 changed files with 31 additions and 10 deletions

View File

@@ -436,5 +436,13 @@ public interface IExportableTransaction {
return null;
}
/**
* get additional referenced documents acccording to BG-24 XRechnung (Rechnungsbegruendende Unterlagen),
* i.e. <ram:AdditionalReferencedDocument> in <ram:ApplicableHeaderTradeAgreement> (only supported for zf2)
*
* @return a array of objects from class FileAttachment
*/
default FileAttachment[] getAdditionalReferencedDocuments() {
return null;
}
}

View File

@@ -493,6 +493,19 @@ public class ZUGFeRD2PullProvider implements IXMLProvider, IAbsoluteValueProvide
+ " </ram:ContractReferencedDocument>\n";
}
// Additional Documents of XRechnung (Rechnungsbegruendende Unterlagen - BG-24 XRechnung)
if (trans.getAdditionalReferencedDocuments() != null) {
for (FileAttachment f : trans.getAdditionalReferencedDocuments()) {
final String documentContent = Base64.encodeBase64String(f.getData());
xml = xml + " <ram:AdditionalReferencedDocument>\n"
+ " <ram:IssuerAssignedID>" + f.getFilename() + "</ram:IssuerAssignedID>\n"
+ " <ram:TypeCode>916</ram:TypeCode>\n"
+ " <ram:Name>" + f.getDescription() + "</ram:Name>\n"
+ " <ram:AttachmentBinaryObject mimeCode=\"" + f.getMimetype() + "\"\n"
+ " filename=\"" + f.getFilename() + ">" + documentContent + "\n"
+ " </ram:AdditionalReferencedDocument>\n";
}
}
xml = xml + " </ram:ApplicableHeaderTradeAgreement>\n"
+ " <ram:ApplicableHeaderTradeDelivery>\n";