Dokument: Bereichsbezogen, Global

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 9 Minuten Lesedauer
  • Die Dokument Die API bietet Methoden zum Initialisieren einer PDF-Datei, zum Hinzufügen von Inhalten und zum Schließen der PDF-Datei. Nach dem Hinzufügen von Inhalten kann das Dokument an einen Zieldatensatz angehängt werden.

    Diese API ist Teil von ServiceNow Plugin „PDF-Generierungsdienstprogramme“ (com.snc.apppdfgenerator) und wird in bereitgestellt sn_pdfgeneratorutils Namespace. Das Plugin ist standardmäßig aktiviert.

    Diese API hängt von einer Suite von Klassen ab, um verschiedene Elemente aus einer PDF-Datei zu erstellen.
    • Zelle Erstellt ein Zellenobjekt als Zelle in einer Tabelle. Sie können diese API verwenden, um die Zelle zu formatieren und zusätzliche Blöcke wie Absätze und Bilder einzubeziehen.
    • Farbe Erstellt ein Farbobjekt, das zum Definieren von Farbattributen verwendet wird, die Sie auf Elemente in einer PDF-Datei anwenden können, z. B. Zellen, Tabellen und Linien.
    • Bild Erstellt ein Bildobjekt, das ein Bild und sein Layout in einer PDF-Datei darstellt. Ermöglicht das Definieren von Attributen wie Skala, Ausrichtung und Rahmenfarbe.
    • Position Erstellt ein Linienobjekt mit Methoden zum Zeichnen einer Linie in einer PDF-Datei.
    • Absatz Erstellt ein Absatzobjekt, das einen Textblock in einer PDF-Datei darstellt.
    • PdfSeite Erstellt ein PdfPage-Objekt, das eine PDF-Seite und ihre Attribute darstellt, z. B. Größe, Breite und Farbe.
    • Stil Erstellt einen Stil zum Definieren von Eigenschaften wie Schriftgröße, Rahmen und Ausrichtung. Sie können denselben Stil auf mehrere Objekte gleichzeitig anwenden.
    • Tabelle Erstellt ein Tabellenobjekt, das einem PDF-Dokument hinzugefügt werden soll. Definiert die Daten, die in jeder Zelle verwendet werden sollen, und legt Stile, Ränder und Ausrichtung fest.

    Das folgende Beispiel zeigt, wie Sie eine Standard-PDF mit erstellen Dokument API und mehrere Komponenten, z. B. eine Tabelle, eine Zelle und ein Absatz. Das Ergebnis ist eine Liste von Incidents aus der Tabelle „Incident“ [Incident], die in einer PDF-Datei aufgeführt sind. Sie können dieses Beispiel in Ihrer Instanz testen, wenn Sie ersetzen <sys_id> Mit der sys_ID eines Incident-Datensatzes.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    var whiteColor =  sn_pdfgeneratorutils.Color([1,1,1]);
    var greyColor =  sn_pdfgeneratorutils.Color([0.8,0.8,0.8]);
    var headerBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
     
    // Query the Incident table
    var gr = new GlideRecord("incident");
    gr.query();
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [70,200], false);
     
    var headerStyle = new sn_pdfgeneratorutils.Style;
    headerStyle.setBackgroundColor(headerBgColor);
    headerStyle.setTextAlignment("text-center");
    headerStyle.setBold();
    headerStyle.setFontColor(whiteColor);
     
    table.setHeaderStyle(headerStyle);
     
    var nParagraph = new sn_pdfgeneratorutils.Paragraph("Number");
    var sParagraph = new sn_pdfgeneratorutils.Paragraph("Short Description");
     
    var hdrCell1 = new sn_pdfgeneratorutils.Cell;
    var hdrCell2 = new sn_pdfgeneratorutils.Cell;
     
    hdrCell1.addParagraph(nParagraph);
    hdrCell2.addParagraph(sParagraph);
     
    table.addHeaderCell(hdrCell1);
    table.addHeaderCell(hdrCell2);
     
    var row = 0;
     
    while(gr.next()) {
    var numCell = new sn_pdfgeneratorutils.Cell;
    var sdCell = new sn_pdfgeneratorutils.Cell;
     
    var numberParagraph = new sn_pdfgeneratorutils.Paragraph(gr.number);
    var sdParagraph = new sn_pdfgeneratorutils.Paragraph(gr.short_description);
     
    numCell.addParagraph(numberParagraph);
    sdCell.addParagraph(sdParagraph);
     
    if (row % 2 == 1) {
         table.setDefaultbackGroundColor(greyColor);
    } else {
         table.setDefaultbackGroundColor(whiteColor);
    }
     
    table.addCell(numCell);
    table.addCell(sdCell);
     
    row = row + 1;
    }
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<sys_id>", "SampleGenerationTest.pdf");

    Der PDF-Anhang wird in der Tabelle „Anhänge“ [sys_attachment] aufgeführt.

    Beispiel-PDF mit Ausgabe als zweispaltige Tabelle mit Incident-Nummern und -Beschreibungen.

    Dokument – Dokument(PdfPage pageSize)

    Instanziiert einen Dokument Objekt und generiert ein PDF-Dokument.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    pageSize PdfSeite PDF-Seitengröße.
    Tabelle : 2. Rückgaben
    Typ Beschreibung
    Objekt PDF-Dokument.

    Das folgende Beispiel zeigt, wie ein erstellt wird Dokument Objekt und PDF zurückgeben.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document(pageSize);

    Dokument – addAndStartNewPage()

    Fügt dem Dokument eine Seite hinzu, indem die aktuelle Seite beendet und eine neue erstellt wird.

    Zusätzliche Methoden zum Hinzufügen einer neuen Seite in einem Dokument:
    • AddNewPage() Fügt dem Dokument eine neue leere Seite hinzu. Verwenden Sie , um zu erzwingen, dass ein Seitenumbruch ein neues Kapitel oder einen neuen Abschnitt in Ihrem Dokument startet.
    • AddNewPageAtIndex() Fügt eine neue Seite im angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 festlegen, wird eine Seite sechs eingefügt oder die Seite an der Position der vorhandenen Seite sechs in einem Dokument eingefügt. Die ursprüngliche Seite sechs wird zu Seite sieben.
    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie einem Dokument eine neue Seite hinzugefügt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    var para1 = new sn_pdfgeneratorutils.Paragraph("This text lands on the first page.");
    var para2 = new sn_pdfgeneratorutils.Paragraph("This text lands on the new page.");
    
    document.addParagraph(para1);
    
    document.addAndStartNewPage();
    
    document.addParagraph(para2);
    
    // save pdf as attachment to target record in the Incident table
    document.saveAsAttachment("incident", "<record_sys_id>", "newPage.pdf");

    Dokument – addAuthor(Zeichenfolgenautor)

    Fügt dem Feld „Autor“ in PDF-Dokumenteigenschaften einen Namen hinzu.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    Autor Zeichenfolge Name des Autors des Dokuments.
    Tabelle : 6. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie Sie dem Feld Autor in PDF-Dokumenteigenschaften einen Namen hinzufügen. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var author = "John Do";
    
    document.addAuthor(author);

    Dokument – addImage(Image)

    Fügt einem Dokument ein Bild hinzu.

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    Bild Bild Bild, das einem Dokument hinzugefügt werden soll.
    Tabelle : 8. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie einem Dokument ein Bild hinzugefügt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare image using sys attachment
    var image = new sn_pdfgeneratorutils.Image("<imgAttachment_sys_id>");
    
    // add the image to the doc
    document.addImage(image);
    
    document.saveAsAttachment("incident", "<record_sys_id>", "docWithImage.pdf");

    Dokument – addNewLine()

    Fügt dem Dokument eine neue leere Zeile hinzu.

    Tabelle : 9. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 10. Ergebnisse
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie einem Dokument eine neue Position hinzugefügt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    document.addNewLine();

    Dokument – addNewPage()

    Fügt dem Dokument eine neue leere Seite hinzu. Verwenden Sie , um zu erzwingen, dass ein Seitenumbruch ein neues Kapitel oder einen neuen Abschnitt in Ihrem Dokument startet.

    Zusätzliche Methoden zum Hinzufügen einer neuen Seite in einem Dokument:
    • AddAndStartNewPage() Fügt dem Dokument eine Seite hinzu, indem die aktuelle Seite beendet und eine neue erstellt wird.
    • AddNewPageAtIndex() Fügt eine neue Seite im angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 festlegen, wird eine Seite sechs eingefügt oder die Seite an der Position der vorhandenen Seite sechs in einem Dokument eingefügt. Die ursprüngliche Seite sechs wird zu Seite sieben.
    Tabelle : 11. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 12. Ergebnisse
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie einem Dokument eine neue leere Seite hinzugefügt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    Usage:
    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    document.addNewPage();

    Dokument – addNewPageAtIndex(Nummernindex)

    Fügt eine neue Seite im angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 festlegen, wird eine Seite sechs eingefügt oder die Seite an der Position der vorhandenen Seite sechs in einem Dokument eingefügt. Die ursprüngliche Seite sechs wird zu Seite sieben.

    Zusätzliche Methoden zum Hinzufügen einer neuen Seite in einem Dokument:
    • AddAndStartNewPage() Fügt dem Dokument eine Seite hinzu, indem die aktuelle Seite beendet und eine neue erstellt wird.
    • AddNewPage() Fügt dem Dokument eine neue leere Seite hinzu. Verwenden Sie , um zu erzwingen, dass ein Seitenumbruch ein neues Kapitel oder einen neuen Abschnitt in Ihrem Dokument startet.
    Tabelle : 13. Parameter
    Name Typ Beschreibung
    index Anzahl Position, an der eine neue Seite eingefügt werden soll.
    Tabelle : 14. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie eine neue PDF-Seite zu Position 6 eines Dokuments hinzugefügt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    var index = 6;
    
    document.addNewPageAtIndex(index);

    Dokument – addParagraph(Absatz)

    Fügt einem Dokument einen Absatz hinzu.

    Tabelle : 15. Parameter
    Name Typ Beschreibung
    Absatz Absatz Textblock, der als Absatzobjekt bereitgestellt wird.
    Tabelle : 16. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie einem Dokument ein Absatz hinzugefügt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    var para = "Lorem ipsum dolor sit amet.";
    
    document.addParagraph(para);

    Dokument – addTable(Tabellentabelle)

    Fügt einem Dokument eine Tabelle hinzu.

    Tabelle : 17. Parameter
    Name Typ Beschreibung
    table Tabelle Tabelle, die in das Dokument eingefügt werden soll.
    Tabelle : 18. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie Sie einem Dokument eine Tabelle hinzufügen. Siehe Tabellen-API Weitere Informationen zum Definieren einer Tabelle. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var table = new sn_pdfgeneratorutils.Table([70,200], false);
    
    document.addTable(table);

    Dokument – close()

    Schließt ein Dokument.

    Tabelle : 19. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 20. Ergebnisse
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie ein Dokument geschlossen wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    document.close();

    Dokument – createDocument(PdfPage pageSize)

    Erstellt ein Dokument mit der angegebenen Seitengröße.

    Tabelle : 21. Parameter
    Name Typ Beschreibung
    pageSize PdfSeite Größe der Dokumentseite.
    Tabelle : 22. Rückgaben
    Typ Beschreibung
    Objekt PDF-Dokument.

    Das folgende Beispiel zeigt, wie ein Dokument erstellt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);

    Dokument – getPageCount()

    Ruft die Anzahl der Seiten im Dokument ab.

    Tabelle : 23. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 24. Ergebnisse
    Typ Beschreibung
    Anzahl Anzahl der Seiten im Dokument.

    Das folgende Beispiel zeigt, wie die Seitenanzahl eines neunseitigen Dokuments abgerufen wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    var count = document.getPageCount();
    
    gs.info("The number of pages is " + count);

    Ausgabe:

    The number of pages is 9

    Dokument – getPageSize()

    Ruft die Standardseitengröße des Dokuments ab.

    Tabelle : 25. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 26. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Wert der Standardseitengröße, die mit festgelegt wurde PdfSeite API.
    Mögliche Werte:
    • A4: 595 x 842 Punkte
    • FÜHRUNGSKRAFT: 522 x 756 Punkte
    • BRIEF: 612 x 792 Punkte
    • HAUPTBUCH: 792 x 1224 Punkte

    Das folgende Beispiel zeigt, wie die Seitengröße eines Dokuments abgerufen wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    var pagesize = document.getPageSize();

    Dokument – isClosed()

    Gibt an, ob ein Dokument geschlossen oder geöffnet ist.

    Tabelle : 27. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 28. Ergebnisse
    Typ Beschreibung
    Keine Kennzeichnung, die angibt, ob ein Dokument geöffnet oder geschlossen ist.
    Gültige Werte:
    • Wahr: Dokument ist geschlossen.
    • Falsch: Dokument ist geöffnet.

    Standardwert: wahr

    Das folgende Beispiel zeigt, wie die Seitengröße eines Dokuments abgerufen wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    var closed = document.isClosed();

    Dokument – saveAsAttachment (Zeichenfolge tableName, Zeichenfolge tableSysId, Zeichenfolge Dateiname)

    Hängt die Dokumentdatei an die angegebene Zieltabelle an.

    Tabelle : 29. Parameter
    Name Typ Beschreibung
    tableName Zeichenfolge Name der Tabelle, an die das Dokument angehängt werden soll.
    tableSysId Zeichenfolge SYS_ID des Datensatzes, an den das Dokument angehängt werden soll.
    fileName Zeichenfolge Name des anzuhängenden Dokuments.
    Tabelle : 30. Rückgaben
    Typ Beschreibung
    Zeichenfolge SYS_ID des angehängten Dokuments in der Tabelle „Anhänge“ [sys_attachment].

    Das folgende Beispiel zeigt, wie ein Dokument an einen Incident-Datensatz angehängt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    // Additional document properties
    
    document.saveAsAttachment("incident", "<record_sys_id>", "SampleDocGeneration.pdf");

    Dokument – setBaseDirection (Zeichenfolgenrichtung)

    Legt die Basis-Text-Flow-Richtung fest, von der basierend auf der Zeichenerkennung neu angeordnet werden soll

    Tabelle : 31. Parameter
    Name Typ Beschreibung
    direction Zeichenfolge Text-Flow-Richtung.
    Gültige Werte:
    • LEFT_TO_RIGHT: Text-Flow von links nach rechts anordnen. Die Textrichtung wird nur neu angeordnet, wenn Sprachzeichen von links nach rechts erkannt werden.
    • RIGHT_TO_LEFT: Reihenfolgetext-Flow von rechts nach links. Die Textrichtung wird nur neu angeordnet, wenn Sprachzeichen von rechts nach links erkannt werden.

    STANDARD: LEFT_TO_RIGHT

    Tabelle : 32. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie der Text-Flow von links nach rechts festgelegt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    document.setBaseDirection("RIGHT_TO_LEFT");

    Dokument – setMargins(Nummer oben Rand, Zahl rechts Rand, Zahl unten Rand, Zahl links Rand)

    Legt die Seitenrandgrößen im Dokument fest.

    Tabelle : 33. Parameter
    Name Typ Beschreibung
    Oberer Rand Anzahl Höhe des oberen Rands in Punkten.
    Rechter Margin Anzahl Breite des rechten Rands in Punkten.
    BottomMargin Anzahl Höhe des unteren Rands in Punkten.
    Linker Rand Anzahl Breite des linken Rands in Punkten.
    Tabelle : 34. Ausgabe
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie Seitenränder in einem Dokument festgelegt werden. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument API.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
    
    document.setMargins(72,36,36,36);