SharePoint Online DMS Schnittstelle

Produktlinien: Standard, Expert
Erstellt: 17.01.2019, Änderung:
Metadaten schreiben ab Version 6.4.0.10 hinzugefügt.
Mehr ansehen

Die SharePoint Online DMS Extension erlaubt die Integration mit SharePoint Online.

  • Vertec-generierte und erweiterte Office-Berichte können ihre Ausgabe direkt in Sharepoint speichern. Das Ergebnis wird in Office Online angezeigt und kann direkt weiterverarbeitet werden.
  • Dokumente und Mails können aus den Office-, Explorer- und Outlook Addins direkt in SharePoint gespeichert werden.
  • Dokumente können aus Vertec heraus in Office Online geöffnet und bearbeitet werden.

Folgende Vorgänge sind mit der vorliegenden Version nicht möglich:

  • Speichern von Office-generierten Berichten in SharePoint
  • Verwenden von Berichts-Vorlagen aus SharePoint

Zur Inbetriebnahme der Schnittstelle sind folgende Schritte nötig

Voraussetzungen

Für den Betrieb der Schnittstelle wird ein SharePoint Online benötigt. Darin muss mindestens ein Hauptuser / Administrator mit Login vorhanden sein. Hier in den Beispielen verwenden wir ein Microsoft Office 365 mit Sharepoint Online.

Ausserdem braucht es ein Vertec ab Version 6.3.

Die Vertec Systemeinstellung Allgemein > Existenz von Dokumentfiles überprüfen arbeitet nicht mit der SharePoint Online DMS Schnittstelle zusammen und sollte deaktiviert werden, um ungültige Aktivitäten zu vermeiden. Ab Vertec 6.3.0.15 ist diese Systemeinstellung in Vertec nicht mehr vorhanden.

Schnittstelle in Vertec installieren

Um die Schnittstelle zu installieren, öffnen Sie im Ordner Einstellungen > Extensions die SharePoint Online DMS Extension und klicken auf Installieren.

Die Schnittstelle legt folgende Systemeinstellungen CRM/Aktivitäten an:

DMS SharePoint Application ID: Anwendungs-ID in SharePoint Online, siehe Abschnitt Vertec Applikation in Office 365 registrieren.

PropertyName: DmsSharePointApplicationId. StringProperty.

DMS SharePoint Application Secret: Vertec Registrierungs-Schlüssel in SharePoint Online, siehe Abschnitt Vertec Applikation in Office 365 registrieren.

PropertyName: DmsSharePointApplicationSecret. StringProperty.

DMS SharePoint Library URL: Pfad zur freigegebenen SharePoint Site, siehe Abschnitt Sharepoint Site anlegen oder bestimmen.

PropertyName: DmsSharePointDocumentLibraryUrl. StringProperty.

Nach Änderung der Werte in den Systemeinstellungen muss Vertec neu gestartet oder bei der SharePoint Online DMS Extension auf den Button Reload geklickt werden.

Dokumentenpfad

Der Basispfad – Systemeinstellungen Allgemein > Dokumentenpfad – wird mit SharePoint: gefolgt vom Verzeichnis, in welches im SharePoint die Vertec Dokumente gespeichert werden sollen, angegeben, z.B. SharePoint:\mydir.

Die Dokumente, die aus Vertec heraus generiert oder via Office-Addins ins Vertec gespeichert werden, werden so direkt in SharePoint Online gespeichert.

Das Vertec Pfad-System wurde so erweitert, dass mit dem SharePoint: Präfix (anstelle von z.B. C:) ein Sharepoint Pfad angegeben werden kann. Es ist also auch möglich, nur bestimmte Dokumente in Sharepoint zu speichern, ohne den generellen Dokumentpfad auf Sharepoint umzustellen.

Mehrere Dokumentbibliotheken via Sharepoint-Schnittstelle anbinden

Ab Vertec 6.3.0.18 können mehrere verschiedene Dokumentbibliotheken (Libraries) angesprochen werden. Die verschiedenen Libraries werden dabei mit dem Pfad unterschieden.

Dabei ist es möglich, dass die Library URL in Vertec nur teilweise angegeben wird, und zwar so, dass alle zu verwendenden Library URLs durch Vervollständigung dieses Pfades erzeugbar sind.

Vertec prüft zunächst die im System hinterlegte Library URL auf ihre Vollständigkeit. Ist sie das, wird dieses Verzeichnis verwendet. Findet Vertec mit diesem Schritt noch keine Library, wird nun sukzessive jeweils das vorderste Verzeichnis aus dem Vertec Dokumentenpfad an die Library URL angehängt, bis eine Library gefunden wird. Der Rest des Dokumentenpfads wird dazu verwendet, um innerhalb der Library den Pfad der Datei festzulegen.

Möchte man mehrere Dokument-Libraries nutzen und Dokumente pro Klasse speichern, muss man folgendes beachten:

  • Unter Systemeinstellungen Allgemein > Dokumentenpfad muss der Root-DMS-Pfad hinterlegt werden, z.B. Sharepoint:\MultiSite2\Shared Documents. Dies ist der Standard-Pfad und wird für alle Objekte verwendet, die nicht einen anderen Pfad hinterlegt haben (siehe nächster Punkt). Der Standard-Pfad muss als eigenständiger Pfad gültig sein.
  • Im Ordner Einstellungen > Klasseneinstellungen muss für alle Klassen, die vom Standard-Verzeichnis abweichen, ein absoluter Sharepoint-Pfad eingetragen werden, bei Adressen zum Beispiel Sharepoint:\MultiSite1\Shared Documents\Kontakte\%if oclistypeof(Kontakt) then oclastype(Kontakt).firma.name else name endif%.

Vertec Applikation in Office 365 registrieren

Dieser Vorgang muss einmal pro Firma durchgeführt werden.

  • https://portal.office.com öffnen und auf Admin klicken. Es erscheint das Microsoft 365 admin center.
  • Links im Menü auf Mehr anzeigen klicken
  • Links im Menü Admin Center ausklappen
  • Links im Menü auf Azure Active Directory klicken, Weiterleitung zu Azure Active Directory Admin Center.
  • Links im Menü auf Azure Active Directory klicken, es öffnet sich rechts ein neuer Bereich, der ein zweites Menü auf der linken Seite hat
  • Links im zweiten Menü auf App-Registrierungen klicken

Applikation erstellen

  1. Auf + Registrierung einer neuen Anwendung klicken
  2. Namen eingeben, z.B. Vertec
  3. Anwendungstyp muss Web-App/API sein
  4. Anmelde-URL (wird von uns nicht verwendet, muss aber angegeben werden): https://localhost/
  5. Auf Erstellen klicken.
  6. Danach sollte Startseite -> Kunde AG – App-Registrierung > Vertec offen sein, mit Vertec = Name der soeben erstellen App

Berechtigungen festlegen und erteilen

  1. Auf Einstellungen > Erforderliche Berechtigungen > + Hinzufügen klicken
  2. 1 Hiermit wählen Sie eine API aus wählen
  3. In der Liste Microsoft Graph auswählen und auf Auswählen klicken
  4. Es erscheint nun eine lange Liste mit Berechtigungen. ACHTUNG: diese Liste besteht aus zwei Bereichen: Anwendungsberechtigungen (oben) und Delegierte Berechtigungen. Die Rechte sind teilweise doppelt vorhanden. Es müssen alle 4 folgenden Rechte bei Anwendungsberechtigungen aktiviert werden.
    • Read and write items in all site collections (preview)
    • Read and write files in all site collections
    • Create, edit and delete items and lists in all site collections
    • Have full control of all site collections
  5. Auf Auswählen klicken
  6. Auf Fertig klicken
  7. Auf Berechtigungen erteilen klicken und nochmals mit JA-Button bestätigen. Dieser Schritt aktiviert die soeben ausgewählten Rechte, Administratorberechtigungen sind erforderlich. Dieser Schritt muss erfolgreich sein, sonst funktioniert die Anbindung später nicht. Bei Problemen meldet Azure einen Fehler.

Schlüssel erstellen

  1. Auf Schlüssel klicken
  2. In der Liste Kennwörter beim leeren Eintrag im Feld Schlüsselbeschreibung einen Namen für den Schlüssel eingeben, zB VertecSchlüssel
  3. Bei Dauer Läuft nie ab wählen
  4. Auf Speichern klicken
  5. Den Schlüssel, der in der Spalte Wert erscheint, müssen Sie sich unbedingt merken. Dieser muss in den Vertec Systemeinstellungen unter DMS SharePoint Application Secret eingegeben werden (siehe Schnittstelle in Vertec installieren). Der Schlüssel ist später nicht mehr abrufbar.
  6. Die DmsSharePointApplicationId (Anwendungs-Id, NICHT Object Id), welche links sichtbar sein sollte (der Wert sieht etwa so aus: b78c9f62-fbc3-4f29-a6e9-86514d89b47b), in den Vertec Systemeinstellungen unter DMS SharePoint Application ID eintragen (siehe Schnittstelle in Vertec installieren).

Sharepoint Site anlegen oder bestimmen

Dieser Vorgang muss einmal pro Firma durchgeführt werden.

An dieser Stelle gibt es 3 Fälle:

  1. Es wird eine neue SharePoint Site angelegt (bitte entsprechende Anleitung von Microsoft befolgen) oder eine bestehende SharePoint Site verwendet.

    • Diese Site im Browser öffnen
  2. Es wird ein neues Team mit TeamSite angelegt (bitte entsprechende Anleitung von Microsoft befolgen) oder eine bestehende TeamSite verwendet, in welcher die Dokumente ablegt werden sollen.
    • Microsoft Teams Webapp öffnen
    • Zum entsprechenden Team navigieren bzw. entsprechendes Team öffnen
    • Files anzeigen
    • In Sharepoint öffnen anwählen
  3. Es wird eine neue Office365 Group mit Group Site angelegt (bitte entsprechende Anleitung von Microsoft befolgen) oder eine bestehende Office365 Gruppe mit Group Site verwendet.

    • Die Site der Office 365 Gruppe im Browser öffnen

Alle 3 Fälle führen zum gleichen Ergebnis: Es gibt nun eine SharePoint Site und diese ist im Browser geöffnet.

Nun im Menü Einstellungen den Menüpunkt Websiteinhalte anklicken:

Es erscheint eine Liste, welche die Dokumentbibliotheken der Site enthält. Im Aktionsmenü der entsprechenden Dokumentbibliothek auf Einstellungen klicken:

Unter Webadresse sollte nun ein Link in der Form https://kundenoffice365.sharepoint.com/sites/KundenTeam/Freigegebene Dokumente/Forms/AllItems.aspx? sichtbar sein.

Kopieren Sie den ersten Teil des Links, ohne /Forms/AllItems.aspx etc. (also https://kundenoffice365.sharepoint.com/sites/KundenTeam/Freigegebene Dokumente) und tragen Sie ihn in den Vertec Systemeinstellungen unter DMS SharePoint Document Library URL ein (siehe Schnittstelle in Vertec installieren).

Metadaten schreiben

Ab Vertec 6.4.0.10 wird mit der StoreDocument Methode die Aktivität als Objekt übergeben. Die Standard-Schnittstelle funktioniert weiter wie bisher, Metadaten werden nur geschrieben, wenn dies entsprechend eingerichtet wird.

Damit Metadaten geschrieben werden, muss die verwendete DMS-Schnittstelle wie folgt überschrieben bzw. ergänzt werden. Das Beispiel bezieht sich auf die Standard Vertec Sharepoint DMS Schnittstelle.

Es wird ein Script erstellt mit folgendem Text:

#
import DmsSharePoint

class MyDmsSharePointExtension(DmsSharePoint.DmsSharePointExtension):
    __doc__ = "Erweiterung DMS-Extension mit Metadaten"
#    pass

    # Override this method in a subclass to be able to define meta data during document upload.
    # This method is called by Vertec for each document that is uploaded. If the returned
    # dictionary contains entries, Vertec interprets the keys as site column name and the values
    # as site column value and writes meta data accordingly during document upload.
    def getMetaDataDict(self, vertecFilePath, content, aktivitaet):
        self.Log("getMetaDataDict(...)" + (" with aktivitaet" if aktivitaet else " without aktivitaet"))
               
        # override the extension and uncomment this line to activate the meta data example
        return self.getExampleMetaDataDict(vertecFilePath, content, aktivitaet)

        # empty dict => Vertec does not try to write meta data to SharePoint
        return dict()

Damit wird die Methode getExampleMetaDataDict aktiviert, die sich in der Standardschnittstelle befindet und Beispiel-Metadaten zurückgibt. Den entsprechenden Code finden Sie in der Standardschnittstelle:

Die übergebenen Felder müssen zum Metadaten-Schema Ihres Sharepoint passen. Diese Methode wird deshalb im oben erzeugten Script ebenfalls überschieben:

def getExampleMetaDataDict(vertecFilePath, content, aktivitaet):

oder statt der folgenden Zeile

return self.getExampleMetaDataDict(vertecFilePath, content, aktivitaet)

direkt die entsprechenden Werte zurückgegeben.

Dann wird ein Extension-Eintrag erzeugt mit <Name des Scripts>.<Name der Methode> (wie man eine Extension kundenspezifisch anpasst, ist im Artikel Arbeiten mit Schnittstellen (Extensions) beschrieben).

Die Standard Sharepoint Online DMS Schnittstelle wird daraufhin deaktiviert und die hier neu erzeugte installiert.