CIB job technischer Leitfaden (DE)

7. Kommandos

7.11. CIB job

Allgemein
Kommando „load“
Kommando „save“
Kommando „mem“
Kommando „identity“
Kommando „delete“
Kommando „version“
Kommando „htmltopdf“

Allgemein

Bei den Defaulteinstellungen in der Auftragsdatei und in der Konfigurationsdatei wird das spezielle Kommando „job“ unterstützt. Damit können auch für CIB job selbst Voreinstellungen (Properties) getroffen werden.

Kommandoname: „job“.

Dieser Kommandoname wird ausschließlich im Abschnitt <defaults> der Auftragsdatei und der Konfigurationsdatei verwendet. Die Defaulteinstellungen für das Kommando „job“ bestimmen nicht die Properties der einzelnen Schritte. Möchten Sie diese setzen, so setzten Sie diese über die Defaulteinstellungen des entsprechenden Kommandos in der jobconfig.xml. Properties, die in einem Schritt gesetzt werden, überschreiben die Defaulteinstellungen. Das Kommando enthält ein Attribut „id“ (Implementiert ab Version 1.4). Enthält ein Property-Element eines Steps als Wert $(id), so wird die Zeichenkette durch den id-Wert des Jobs ersetzt. Ist bei einem Job keine id angegeben, so wird die „DefaultID“ (Portnummer des Socketserver) ausgegeben.

CIB job stellt folgende Kommandos bereit:


Kommando „load“

Sonderkommando, mit dem ein im Dateisystem vorliegendes Dokument als Ergebnisdokument des Schrit­tes in den Speicher geladen wird. Es kann dann als Eingabe für den nächsten Schritt dienen.

Bei diesem Schritt muss die CIB job-Property „InputFilename“ auf die zu ladende Datei gesetzt werden. Die CIB job-Property „WorkSpace“ wird berücksichtigt.

Falls die Job-Property „UseInMemoryProcessing“ den Wert „false“ hat, so ist dieser Schritt deaktiviert.


Kommando „save“

Sonderkommando, das das Eingabedokument des Schrittes im Dateisystem speichert. Das Eingabedokument kann dabei im Auftrag enthalten sein oder von einem vorhergehenden Schritt erzeugt worden sein. Auf diese Weise können Zwischen- oder Endergebnisdokumente auf dem Server im Dateisystem abgelegt werden.

Bei diesem Schritt muss die CIB job-Property „OutputFilename“ auf die zu schreibende Datei gesetzt werden. Die CIB job-Property „WorkSpace“ wird berücksichtigt.

Sind sowohl die Property „OutputFilename“ als auch die Property „OutputUrl“ angegeben, so wird der Pfad zu einem Ergebnisdokument zurückgegeben. Dies gilt für beide OutputModi (Direct/XML).  Ist lediglich die Property „OutputFilename“ gesetzt, so ist das Ergebnis der Dateiname.

Falls die Job-Property „UseInMemoryProcessing“ den Wert „false“ hat, so ist dieser Schritt deaktiviert.

 

ab Version 1.4.20:

Optional lässt sich die boolsche Property „CreatePath“ setzen. Damit wird erreicht, dass ein evtl. nicht vorhandenes Verzeichnis aus „OutputFilename“ erzeugt wird. Dabei gilt es Zugriffsrechte zu beachten.

Unter unixoiden Betriebssystemen existiert zusätzlich dazu die optionale Property „DirectoryPermissions“. Der gesetzte Wert bestimmt die Zugriffsberichtigungen der erzeugten Verzeichnisse. Es wird ein Eingabewert in der Form ‚0755’ erwartet. Defaultwert ist ‚0777’.  Wichtig: Die im System gesetzte umask wird immer beachtet.


Kommando „mem“

Sonderkommando, mit dem eine im Auftrag direkt enthaltene Datei oder andere Daten als Eingabe für nachfolgende Schritte zur Verfügung gestellt werden können. Die Datei ist dazu als Textelement im XML enthalten, genauer als Wert der Property „InputData“ bei diesem Schritt. Ab Version 1.4.19 akzeptiert mem auch als Eingabe die Ausgabe eines vorherigen Schrittes über das Input-Element.

In der Regel sind die Daten dabei Base64-encoded abgelegt. Zusätzlich können die Daten komprimiert oder verschlüsselt sein. Dies wird durch die Property „InputEncoding“ definiert.

Die dekodierten Daten können außerdem in ein anderes Charset umgewandelt werden, indem die Properties „InputCharset“ auf das Charset der Daten und „OutputCharset“ auf das gewünschte Charset gesetzt werden.

Abschließend können die Daten wieder encoded werden, indem die Property „OutputEncoding“ gesetzt wird.

Die Eingabe kann auch die Ausgabe eines anderen Schrittes sein.

Auf diese Weise können beliebige Zwischenergebnisse verschlüsselt, komprimiert oder anders umgewandelt werden.

Zusätzlich kann mit der Property „ContentType“ dem Ergebnis eine MIME-Type zugewiesen werden.

Falls die Job-Property „UseInMemoryProcessing“ den Wert „false“ hat, so ist dieser Schritt deaktiviert.


Kommando „identity“

Sonderkommando, mit dem ein Zwischenergebnis „umbenannt“ werden kann.

Die Eingabe dieses Schrittes entspricht der Ausgabe (ohne Kopiervorgang). Da ein identity-Schritt ebenfalls einen Namen besitzt, hat also das durchgereichte Zwischenergebnis nun diesen Namen angenommen.

Es kann so zum Beispiel dem Endergebnis ein fester Name zugewiesen werden, egal aus welchen Schritten er erzeugt wurde.

Es werden keine Properties berücksichtigt.

Falls die Job-Property „UseInMemoryProcessing“ den Wert „false“ hat, so ist dieser Schritt deaktiviert.


Kommando „delete“

Sonderkommando, mit dem ein im Dateisystem vorliegendes Dokument gelöscht werden kann.

Bei diesem Schritt muss die CIB job-Property „InputFilename“ auf die zu löschende Datei gesetzt werden. Die CIB job-Property „WorkSpace“ wird berücksichtigt.

 

ab Version 1.4.20:

Zusätzlich existiert die boolsche Property „RemovePath“.  Bei gesetztem Wert wird versucht den kompletten Pfad, der in „InputFilename“ gesetzt wurde, zu löschen. Dabei gelten die üblichen Konventionen, z.B. lassen sich Verzeichnisse mit Inhalt nicht löschen. Verzeichnisse, die in „WorkSpace“ gesetzt wurden, werden nicht beachtet.

Sollte es nicht möglich sein, ein Verzeichnis zu löschen, so wird eine Warnung ins logfile geschrieben. Das Programm bricht in diesem Fall nicht mit einem Fehler ab.

Es ist nicht möglich nur einen Pfad ohne Dateiangabe zu setzen, der Job wird in einem solchen fall mit einem Fehler beendet.

Falls die Job-Property „UseInMemoryProcessing“ den Wert „false“ hat, so ist dieser Schritt deaktiviert.


Kommando „version“

Sonderkommando, das als Ergebnis die Versionsnummern der verwendeten CIB docgen Module im XML-Format liefert. Das Kommando kann ausschließlich mit dem OutputMode „Xml” verwendet werden.

Implementiert ab Version 1.4.20

Liste der unterstützten Output-Properties:

  • VersionCommandMerge
  • VersionCommandFormat
  • VersionCommandPdfToolbox
  • VersionCommandMail


Kommando „htmltopdf“

Sonderkommando dass eine HTML-Eingabedatei mit Hilfe der Library „wkhtmltox.dll“ nach Pdf konvertiert wird. Die Eingabedatei wird durch die Property InputFilename gesetzt. Die Pdf-Ausgabe erfolgt durch die Property OutputFilename.

Implementiert ab Version 3.0.0

Wichtig: Für Linux wird mindestens gclib 2.10 benötigt.