Wiki-Quellcode von Ceyoniq: Nscale-Plugin
Zeige letzte Bearbeiter
| author | version | line-number | content |
|---|---|---|---|
| 1 | {{content/}} | ||
| 2 | |||
| 3 | Über das kostenpflichtige //ceyoniq// Plugin ist es möglich das //Nscale// DMS System an {{formcycle/}} anzubinden. | ||
| 4 | |||
| 5 | {{info}} | ||
| 6 | Auf Seiten des //Nscale// Dokumenten Management Systems ist mindestens die Version 8 der REST Schnittstelle notwendig. Weiterhin muss die //Nscale//-Lizenz einen Zugriff auf die REST API zulassen. | ||
| 7 | {{/info}} | ||
| 8 | |||
| 9 | Die Installation erfolgt unter Mandant > [[Plugins>>doc:Formcycle.UserInterface.Client.Plugins]]. | ||
| 10 | |||
| 11 | |||
| 12 | |||
| 13 | {{panel title="Konfiguration der Verbindungseinstellungen zum Nscale System" initial="hidden" triggerable="true"}} | ||
| 14 | |||
| 15 | |||
| 16 | |||
| 17 | ((( | ||
| 18 | Die nachfolgenden Einstellungen sind durch einen Administrator, der die Rechte zum Konfigurieren von Plugins besitzt, vorzunehmen. Das Plugin kann nur im Bereich eines Mandanten installiert werden. | ||
| 19 | ))) | ||
| 20 | |||
| 21 | ((( | ||
| 22 | Folgende Eigenschaften für die Anbindung des Nscale Systems können definiert werden: | ||
| 23 | |||
| 24 | |||
| 25 | |||
| 26 | ))) | ||
| 27 | |||
| 28 | ; Nscale REST-Endpoint URL {{id name="bundle_prop_endpoint_url"/}} | ||
| 29 | : Absolute URL zu einem Webservice-Endpoint im //Nscale// DMS-System | ||
| 30 | ; Basic-Auth Account | ||
| 31 | : Login für eine Basic-Auth Kommunikation | ||
| 32 | ; Basic-Auth Passwort | ||
| 33 | : Passwort für eine Basic-Auth Kommunikation | ||
| 34 | ; KeyStore Name (.p12 Datei) | ||
| 35 | : Name einer Datei-Ressource, welche einen Keystore im PKCS12 Format enthält. Dieser Keystore kann verwendet werden, um SSL-Zertifikate für die Kommunikation mit dem //Nscale// REST-Webservice verfügbar zu machen, wenn diese beispielsweise nicht im Standard-JAVA-Truststore verfügbar sind. | ||
| 36 | ; KeyStore Passwort | ||
| 37 | : Passwort für den Zugriff auf den Keystore | ||
| 38 | ; Connection Timeout (Pflichtangabe) | ||
| 39 | : Wert für ein Connection-Timeout Sekunden. (Standardwert: 10 s) | ||
| 40 | ; Read Timeout (Read-Timeout) | ||
| 41 | : Wert für ein Read-Timeout in Sekunden. (Standardwert: 30 s) | ||
| 42 | |||
| 43 | {{/panel}} | ||
| 44 | |||
| 45 | == Aktions-Plugin //Nscale Upload// == | ||
| 46 | |||
| 47 | Für die Übermittlung von Dateien in das //Nscale //DMS steht das Aktions-Plugin **Nscale Upload** im Workflow zur Verfügung. | ||
| 48 | Im Vorfeld ist dafür innerhalb der Aktion ein Ablageordner aus dem //Nscale//-System zu definieren. | ||
| 49 | Die dafür notwendige Konfigurationsoberfläche des Plugins ist in einzelne Funktionsbereiche unterteilt, die nachfolgend beschrieben werden. | ||
| 50 | |||
| 51 | === Nscale System Konfiguration === | ||
| 52 | |||
| 53 | {{figure image="nscale_system_config.png"}} | ||
| 54 | Beispielkonfiguration mit fest definierten Ablageordner aus dem Nscale-System | ||
| 55 | {{/figure}} | ||
| 56 | |||
| 57 | {{figure image="nscale_system_config_2.png"}} | ||
| 58 | Beispielkonfiguration zum Ermitteln eines Ablageordners aus dem Nscale-System zur Laufzeit. In den Abfrage-Werten können Platzhalter verwendet werden. | ||
| 59 | {{/figure}} | ||
| 60 | |||
| 61 | In diesem Bereich wird die Festlegung für den Datei-Ablageordner im //Nscale //System getroffen. | ||
| 62 | Dies geschieht in folgenden Schritten: | ||
| 63 | |||
| 64 | * Festlegung eines **DocArea Name**, welche den Zielablageordner beinhaltet muss. | ||
| 65 | Die Werte innerhalb der DocArea-Auswahlliste werden automatisch beim der Anzeige der Workflow-Aktions-Eigenschaften ermittelt. | ||
| 66 | Sollte keine Verbindung zum konfigurierten //Nscale //System möglich sein, erscheint eine entsprechende Fehlermeldung. | ||
| 67 | |||
| 68 | * Festlegung über "**Ablageordner per Nscale-Abfrage festlegen?**", ob ein fest definierter //Nscale// Ordner als Ziel-Ordner definiert werden soll oder ob die Bestimmung des Zielordner zur Laufzeit erfolgt. | ||
| 69 | |||
| 70 | * Ist "**Ablageordner per Nscale-Abfrage festlegen?**" nicht ausgewählt, so ist der //Nscale //Ablageordner aus dem Feld **Ablageordner **auszuwählen. | ||
| 71 | Das Auswahlfeld wird automatisch bei der Festlegung der DocArea befüllt. | ||
| 72 | |||
| 73 | * Ist "**Ablageordner per Nscale-Abfrage festlegen?"** ausgewählt, so erscheint automatisch eine Tabelle für die Auswahl der **Suchparameter für Nscale Ablageordner**. | ||
| 74 | Diese Tabelle dient der Definition von Suchparametern zum Ausfinden eines konkreten //Nscale //Ablageordners zum Ausführungszeit der Plugin-Aktion. | ||
| 75 | Dafür sind unter Umständen bereits Parameter vorgegeben, welche mit Werten belegt werden können, oder es können eigene Suchparameter über das [[image:icon_add.png]] hinzugefügt werden. | ||
| 76 | Über den Button [[image:icon_del.png]] lassen sich Parameter aus der Abfrage entfernen. Auf die zu suchenden Ablageordner müssen alle definierten Sucheigenschaften zutreffen. | ||
| 77 | Ein Klick auf den **Ablageordner suchen** Button führt eine Suche im //Nscale //System mit den definierten Parameter durch. | ||
| 78 | Damit lässt sich im Vorfeld ermitteln, ob zur Laufzeit auch ein Ordner aus dem //Nscale //System ermittelt werden kann. | ||
| 79 | \\{{info}}Hinweise: Platzhalter in den Abfrage-Parametern können nur zur Laufzeit aufgelöst werden. Bei einer testweisen Suche im Vorfeld kann nur mit festen Abfragewerten gearbeitet werden.{{/info}} | ||
| 80 | |||
| 81 | === Daten für die Übermittlung an das DMS === | ||
| 82 | |||
| 83 | {{figure image="daten_config.png"}} | ||
| 84 | Konfiguration zum Übermitteln mehrerer Formular-Upload Dateien mit Angabe eines eigenen Displaynamens für die neue Ressource. | ||
| 85 | {{/figure}} | ||
| 86 | |||
| 87 | In der Tabelle **Metadaten **können zusätzliche Daten, welche als Eigenschaften an der hochgeladen Ressource hinterlegt werden, definiert werden. | ||
| 88 | Aktuell werden nur //Nscale //Eigenschaften vom Typ "String" unterstützt. | ||
| 89 | |||
| 90 | Mit dem Konfigurations-Parameter **Dateien** können die zu übertragenden Dateien festgelegt werden. | ||
| 91 | Die Dateien können dabei aus folgenden Bereichen stammen: | ||
| 92 | |||
| 93 | * Formular-Uploads | ||
| 94 | * Dateien aus dateibereitstellenden Aktionen | ||
| 95 | * Datei-Ressourcen des Mandanten | ||
| 96 | * Datei-Ressourcen des Formulars | ||
| 97 | * Dateien aus externen Quellen | ||
| 98 | * Anhänge aus dem aktuellen Vorgang, welche mittels Dateinamen-Suche ermittelt wurden | ||
| 99 | |||
| 100 | === Rückgabewerte === | ||
| 101 | |||
| 102 | Wenn Dateien und Metadaten erfolgreich an das //Nscale// DMS übermittelt werden konnten, terminiert die Plugin-Aktion normal und liefert folgende Informationen aus dem //Nscale// System zurück: | ||
| 103 | |||
| 104 | * **Ressourcen Zähler **(//[%$<Name der Aktion>.RESULT.resourceCount%]//): Anzahl der erfolgreich übermittelten Dateien | ||
| 105 | * **Ressources-Informationen**: Der Zugriff auf die Informationen zu den übermittelten Ressourcen erfolgt über eine Zahlvariable ([i]). Ein möglicher Wert muss sich im Bereich von 0 bis zum Wert des **Ressourcen Zähler** -1 befinden. | ||
| 106 | ** **Id **(//[%$<Name der Aktion>.RESULT.resources[i].id%]//): Id der hinzugefügten Ressource aus dem //Nscale// System | ||
| 107 | ** **DisplayName **(//[%$<Name der Aktion>.RESULT.resources[i].displayName%]//): Name der hinzugefügten Ressource | ||
| 108 | * **Folder-Id **(//[%$<Name der Aktion>.RESULT.folder.id%]//): Id des //Nscale //Ordners, in den die übermittelte Ressource abgelegt wurde | ||
| 109 | * **Folder-DisplayName **(//[%$<Name der Aktion>.RESULT.folder.displayName%]//): Name des //Nscale //Ordners, in den die übermittelte Ressource abgelegt wurde | ||
| 110 | |||
| 111 | Fehler, während der Plugin-Verarbeitung, welche zu einem Abbruch der Workflow-Verarbeitungskette führen: | ||
| 112 | |||
| 113 | * **AUTHORIZATION_FAILED**: Tritt auf, wenn mit den hinterlegten Login-Daten keine erfolgreiche Authentifizierung am //Nscale //System durchgeführt werden konnte. | ||
| 114 | * **NO_TARGET_FOLDER**: Wenn kein Zielverzeichnis im //Nscale //System für die Ablage von Dateien definiert wurde. Wenn das Zielverzeichnis auf Grundlage einer Nscale-Abfrage ermittelt wird, | ||
| 115 | so wird diese Abfrage für Analysezwecke im Protokoll vermerkt. | ||
| 116 | * **SRV_CONNECTION_ERROR**: Tritt auf, wenn keine Verbindung zum angebundenen //Nscale //System aufgebaut werden kann | ||
| 117 | * **SRV_METHOD_ERROR**: Tritt auf, wenn der //Nscale// Webservice-Methode einen Fehler zurück lieferte. | ||
| 118 | * **INTERNAL_ERROR**: Tritt auf, wenn es bei der Verarbeitung zu einer Ausnahme kam, welche nicht mit den anderen Fehler-Typen bereits verarbeitet wurde. | ||
| 119 | |||
| 120 | Fehler, während der Plugin-Verarbeitung, welche nicht zu einem Abbruch der Workflow-Verarbeitungskette führen: | ||
| 121 | |||
| 122 | * **NO_PAYLOAD_DATA**: Tritt auf, wenn zur Laufzeit keine Daten (Metadaten, Dateien) ermittelt werden konnten, die an den angebundenen //Nscale //Service übermittelt werden sollen. | ||
| 123 | Es wird eine Warnung über das Auftreten dieser Ausnahme im Protokoll erzeugt. | ||
| 124 | |||
| 125 | == Versionshistorie == | ||
| 126 | |||
| 127 | === 1.3.0 === | ||
| 128 | |||
| 129 | * Anpassung: Der Fehler "NO_PAYLOAD_DATA" wurde als "weicher" Fehler deklariert, wodurch ein Auftreten dieser Ausnahme standardmäßig nicht zum Abbruch der Workflow-Verarbeitungskette führt. | ||
| 130 | * Erweiterung der Ausschriften im Protokoll beim Auftreten spezieller Ausnahmen | ||
| 131 | |||
| 132 | === 1.2.0 === | ||
| 133 | |||
| 134 | * Initiale Version der Nscale-Anbindung |