Inhaltsverzeichnis

DocCreator verwenden

Sebastian Bartsch Aktualisiert von Sebastian Bartsch

Beim DocCreator handelt es sich um eine REST API auf deren Ressourcen über HTTP Aufrufe zugegriffen wird.

In dieser Dokumentation wird davon ausgegangen, dass der DocCreator unter der Basis-Adresse: https://yourserver.com/doccreator/ erreichbar ist. Die nachfolgenden Ressourcen werden an die Basis-Adresse angehangen.

Grundsätzliches

Für die korrekte Funktion sind zusätzliche Informationen erforderlich die über den Header mit jedem Aufruf einer Ressource übergeben werden müssen.

Header

Wert

X-Api-Key

Übergeben Sie hier den Wert der in der applicationsettings.json Datei unter der Einstellung X-Api-Key eingetragen ist.

Content-Type

application/json

Accept

*/*

Erstellen von neuen Dokumenten

Methode

POST

Ressource

api/v1/creator

Response Header

Es wird das erstellte Dokument als Download bereitgestellt.

Der Dateiname wird über den Request-Body festgelegt.

Content-Type

application/octet-stream

Content-Disposition

attachment; filename=CreatedSampleDocument.docx; filename*=UTF-8''CreatedSampleDocument.docx

Im Body wird eine JSON Datenstruktur übergeben die sämtliche erforderlichen Informationen enthält um ein Dokument zu erzeugen

{
"processId": "pid",
"stepId": "sid",
"fileId": "1",
"templateName": "sampleTemplate.docx",
"documentFileName": "CreatedSampleDocument",
"documentAuthor": "DocuScan DocCreator",
"attachmentSubTableName": "DOKERSTELLEN",
"fileNameField": "DOK",
"processFields": [
{"fieldName": "AN", "fieldValue":"Anstragssteller"},
{"fieldName": "FRIST", "fieldValue":""}
],
"mergeFieldMappings": [
{"fieldName": "name", "fieldValue": "Sebastian"},
{"fieldName": "address", "fieldValue": "DocuScan GmbH\rSchloss Buschfeld\r50374 Erftstadt"},
{"fieldName": "signature", "fieldValue": "steve.png", "fieldType": "Image"},
{"fieldName": "barcode", "fieldValue": "Hello World!", "fieldType": "Barcode",
"fieldOptions" : {
"$type": "DataMatrix",
"moduleSize": 1,
"dpi": 96,
"compactionMode": "Text",
"size": "Matrix22x22"}
}
]
}

Aufruf des DocCreator

Der DocCreator ist eine Webanwendung und kann daher überall dort konsumiert werden wo die Verarbeitung von REST-APIs möglich ist. Wir haben im Artikel Barcodes mit dem DocCreator einbetten ein JavaScript Beispiel zusammengestellt.

Datenstruktur des Request-Body

Eigenschaft

Beschreibung

processId

Die JobRouter Prozess ID

stepId

Die JobRouter Schritt ID

fileId

Der Index der Zeilennummer einer Untertabelle

templateName

Der Name einer Vorlage im Template-Ordner

documentFileName

Dies ist der Name der Datei die am Ende der Erstellung dem Benutzer zum Download angeboten wird.

documentAuthor

Hier kann der Standard-Autor des Dokuments überschrieben werden. Der Standardwert wird in der Konfigurationsdatei festgelegt.

attachmentSubTableName

Name der Untertabelle in der das erstellte Dokument eingefügt werden soll.

fileNameField

Feldname des Anhangsfeldes der Untertabelle in das das erstelle Dokument eingefügt werden soll.

processFields

Eine Auflistung von zusätzlichen Feldern die parallel zum erstellten Dokument mit Werten gefüllt werden sollen.

Hier entspricht fieldName dem Feldnamen in der Tabelle und fieldValue dem Wert.

mergeFieldMapping

Eine Auflistung von Feldern und Werten die in der Vorlage ersetzt werden sollen. Lesen Sie unten weiter für mehr Details.

MergeFieldMapping

Der DocCreator sucht und ersetzt sogenannte MergeFields in Word-Dokumenten. Über das MergeFieldMapping geben Sie an welches MergeField in der Vorlage mit einem bestimmten Wert ersetzt werden soll.

Die Konfiguration erwartet dabei folgende Angaben:

Eigenschaft

Beschreibung

fieldName

Der Name des MergeFields, so wie es in der Vorlage benannt wurde.

fieldValue

Der Wert der in das MergeField eingesetzt wird. Bitte beachten Sie hierzu auch weiterführende Informationen bei der Beschreibung der einzelnen Feldtypen.

fieldType

Die Art des verwendeten MergeFields. Der DocCreator kann MergeField auf vielfältige Art und Weise verarbeiten.

fieldOptions

Zusätzliche Einstellungen die nur in Sonderfällen erforderlich sind.

Hierbei unterscheidet der DocCreator zur Zeit zwischen unterschiedlichen Arten von Feld-Typen

Text

Einfacher Text. Die Angabe des Typs in bei diesen Feldern optional.

Image

Ein Bild auf dem Image-Ordner

Barcode

Ein Barcode der dynamisch erstellt wird

Feld-Typ: Text

Textfelder ist der einfachste denkbare Typ. Hier wird das MergeField einfach durch den Wert ersetzt.

Feld-Typ: Image

In diesem Fall wird anhand der Angabe bei fieldValue das zugehörige Bild im Image-Ordner herausgesucht und in die Vorlage eingefügt. Lautet der Wert z.B. logo.png, dann wird im Image-Ordner nach der Datei logo.png gesucht. Sollten Sie die Bilder in Unterordnern organisiert haben, dann fügen Sie den Pfad relativ zum Image-Ordner in die Eigenschaft fieldValue ein. Beispiel: signatures/steve.png

Feld-Typ: Barcode

Dieser Feld-Typ ermöglicht die dynamische Erstellung von Barcodes. Da es sich hierbei um einen sehr komplexen Vorgang handelt sind zu den bereit genannten Eigenschaften zusätzlich fieldOptions erforderlich. Das Beispiel oben veranschaulicht dies. Um diesen Artikel nicht zu überfrachten haben wir dieses Thema im Artikel Barcodes mit dem DocCreator einbetten beschrieben.

Wie waren wir?

Barcodes mit dem DocCreator einbetten

Aufrufbeispiel des DocCreator mit JavaScript

Support