Exportschnittstellen
Otris Documents SOAP
Eine der wohl am häufigsten genutzten Schnittstellen in Verbindung mit Squeeze ist die Otris Documents SOAP Schnittstelle.
Diese Schnittstelle bietet die Möglichkeit bidirektional mit dem Documents System zu interagieren.
Konfiguration
Um ein Documents System per SOAP anzusprechen und Aktionen auszuführen, muss an der Squeeze Dokumentenklasse ein Export definiert werden:
Beim Speichern der Konfiguration wird versucht eine Verbindung zum Server herzustellen. Gelingt dieser Verbindungsaufbau nicht erscheint die Fehlermeldung in einem neuen Dialog, wie hier zu sehen ist:
Wenn die Verbindung jedoch hergestellt werden konnte, wird die Konfiguration zu den definierten Exportschnittstellen hinzugefügt.
Fehler wenn keine Internetverbindung besteht
Die mit Documents ausgelieferte WSDL verweist auf ein Schema, welches bei W3C liegt. Sollte keine Internetverbindung bestehen, führt das zu einem Fehler, da das Schema nicht geladen werden kann. Um diesen Fehler zu umgehen und auf eine Interverbindung verzichten zu können, kann folgender Workaround genutzt werden:
Sicherung der WSDL erstellen
Im Soap Server Verzeichnis von Documents sollte eine Sicherung der Originalen WSDL erstellt werden:
Verweis zum Schema anpassen
in der DOCUMENTS.wsdl muss nun der Verweis so angepasst werden dass auf eine xsd verwiesen wird, die im lokalen netzwerk erreichbar ist. Am einfachsten ist hier, auf den Documents Server selbst zu verweisen (z.B. mittels IP des Documents-Servers)
Die xop.xsd
muss nun noch im public root Verzeichnis des Documents Servers abgelegt werden, damit diese auch für Squeeze erreichbar ist.
Sobald diese Schritte erfolgt sind, sollte der Verbindungsaufbau mit Documents möglich sein.
SharePoint API
Diese Schnittstelle bietet die Möglichkeit bidirektional mit dem SharePoint System zu interagieren.
Kompatibilität
Konfiguration
Um ein Sharepoint System per REST/OData anzusprechen und Aktionen auszuführen, muss an der Squeeze Dokumentenklasse ein Export definiert werden:
Authentifizierung
Meist wird als Authentifizierungsart die Benutzerauthentifizierung genutzt:
Beim Authentication Type ist "Benutzer" auszuwählen und die Felder "Benutzername" sowie "Passwort", eines Benutzers der dem SharePoint System bekannt ist, auszufüllen.
Die Felder "ClientId" sowie "Client Secret" sind nur bei dem Authentication Type "App" relevant.
Entität
Um in das System zu exportieren, muss zunächst die Entität bestimmt werden, in welche exportiert werden soll:
- Dokumentenbibliothek?
- Liste?
Nachdem dies ausgewählt wurde, kann im Feld "Entity ID" die entsprechende Liste oder Dokumentenbibliothek angegeben werden in der letztendlich der Export stattfindet.
Für Dokumentenbibliotheken muss der technische Name angegeben werden, bei Listen der Anzeigename.
Dokumentenbibilothek
Für die Dokumentenbibliotheken gibt es noch zwei weitere Einstellungen.
Export Folder Structure gibt den Pfad in der Dokumentenbibliothek an, in den exportiert werden soll. Dieser kann dynamisch aus Feldwerten der Felder der jeweiligen Dokumentenklasse angegeben werden. Hierzu in dem Feld den Pfad von links nach rechts mit Feldern der Dokumentenklasse auswählen:
Die letzte Einstellungsmöglichkeit gibt an, ob SQUEEZE den Export-Pfad erstellen soll, falls dieser nicht vorhanden ist.
Ist der Pfad nicht vorhanden und SQUEEZE soll diesen nicht erstellen, wird ein Fehler beim Export eines Vorgangs durch den SharePoint zurückgegeben.
Feldwerte exportieren
Mit den Namen im Zielsystem (externe Feldnamen) können die Spalten eines Listeneintrages bzw. weitere Spalten/Details eines Eintrags einer Dokumentenbibliothek angegeben werden.
Diese können in der Dokumentenklasse bei den Feldern angegeben werden.
Positionen exportieren
Jedes "Table"-Feld (in dem Beispiel die "LineItems") kann als JSON exportiert werden, wenn ein Zielname definiert wurde.
Dabei muss das Zielfeld mehrzeilig sein.
Reservierte Zielnamen
Der reservierte Zielname "ContentTypeID" gibt das SQUEEZE Feld an, welches den Inhaltstyp des exportierten Vorgangs angibt. Hier reicht es, den Namen anzugeben, SQUEEZE holt sich die ID selbst vom SharePoint.
Hierbei handelt es sich um die globalen Inhaltstypen (Root) des SharePoints.