Skip to main content
Skip table of contents

addFilesToPdf

Code

GROOVY
IPdfResult addFilesToPdf(String targetPdfFileName, String sourcePdfFileName, String... fileNamesToAdd)

Beschreibung

Einbetten von Dateien in eine bestehende PDF-Datei unter Verwendung des PDF/A-3U Formats.

Hinweis

Voraussetzung: Modul ZUGFERD ist freigeschaltet.

Parameter

  • targetPdfFileName
    Name der zu generierenden PDF/A3U-Datei (mit vollständiger Pfadangabe).
  • sourcePdfFileName
    Name der bestehenden PDF-Datei (mit vollständiger Pfadangabe).
  • fileNamesToAdd
    Liste von einer oder mehreren Dateien (mit vollständiger Pfadangabe), die in eine PDF Datei eingebettet werden sollen.. Die PDF-Dateien können wie folgt übergeben werden: String[], List<String> oder als einzelne Argumente vom Typ String.

Rückgabe

Ergebnis des Einbettens von Dateien in die PDF-Datei
Folgende Methoden stehen in dem Rückgabeobjekt IPdfResult zur Verfügung:

  • String getFileName()
    Unveränderter Name der übergebenen PDF-Datei.
  • boolean isSuccessful()
    War das Einbetten der Dateien in die PDF-Datei erfolgreich?

  • String getErrorCode()
    Liefert den Fehlercode, falls Einbetten in die PDF-Datei nicht erfolgreich war. Mit Hilfe der Fehlercodes können individuelle Ausgaben im Skripting hinterlegt werden.
    Folgende Fehlercodes stehen als Konstanten in der Klasse PdfConstants zur Verfügung

    • PdfConstants.PDF_ERRORCODE_NOTSUPPORTED_FILETYPE
      Dieser Dateityp wird bei der Generierung der ZUGFeRD-konformen PDF-Datei nicht unterstützt.

    • PdfConstants.PDF_ERRORCODE_FILENOTFOUND
      Die im Paramater sourcePdfFileName angegebene PDF-Datei ist nicht vorhanden.

    • PdfConstants.PDF_ERRORCODE_NOTSUPPORTED_PDFFORMAT
      Das PDF Format der im Paramater sourcePdfFileName angegebene PDF-Datei wird nicht unterstützt.

    • PDF_ERRORCODE_NOTCONVERTED_PDFA

    • Die im Paramater sourcePdfFileName angegebene PDF-Datei konnte nicht in  das PDF-Format PDFA konvertiert werden .

    • PDF_ERRORCODE_ZUGFERD_PDFA3
      Die im Paramater sourcePdfFileName angegebene PDF-Datei konnte nicht in  das PDF-Format PDFA/3 konvertiert werden .

    • PDF_ERRORCODE_ZUGFERD_INVALIDXML
      Die im Paramater xmlZugferdFileName angegebene xml-Datei entspricht nicht dem ZUGFeRD-Standard.

    • PDF_ERRORCODE_ZUGFERD_GENERAL
      Ein allgemeiner Fehler ist bei der Generierung der ZUGFeRD-konformen PDF-Datei aufgetreten.

    • PdfConstants.PDF_ERRORCODE_GENERAL

    • Ein allgemeiner Fehler aufgetreten.

Beispiele

GROOVY
String fileName1 = "C:/source/Quote.docx";
String fileName2 = "C:/source/Flyer1.pdf";
String fileName3 = "C:/source/Calculation.xlsm";
String[] files = new String[3];
files[0] = fileName1;
files[1] = fileName2;
files[2] = fileName3;
String sourcePdfFileName = "c:/Source/Quote.pdf";
String targetPdfFileName = "c:/Target/Quote with embedded files.pdf";
IPdfResult pdfResult = PdfUtils.addFilesToPdf(targetPdfFileName, sourcePdfFileName, files);
// Alternate variant for use of method
// IPdfResult result =  PdfUtils.addFilesToPdf("C:/target/mySourcePdfFile.pdf",  "C:/target/myNewPdfFile.pdf", fileName1, fileName2, fileName3);

if (!result.isSuccessful())
{
    if (ScriptUtils.equal(PdfConstants.PDF_ERRORCODE_GENERAL, result.getErrorCode()))
    {
        ...Error handling...
    }
}
else
{
    ...do something with "c:/Target/Quote with embedded files.pdf"...
}
     
// Alternate variant for use of method
// ZugferdConfigVO configVO = new ZugferdConfigVO(targetPdfFileName, sourcePdfFileName, files);
// configVO.setDeleteLogFiles(true);
// PdfUtils.addFilesToPdf(configVO);
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.