Umgang mit DMS Updates
Mit jedem größerem DMS-Update gibt es in der Regel Änderungen und Erweiterungen der API. Deshalb stehen dann auch im WMS neue oder erweiterte Aktivitäten für des Zugriff auf das DMS zur Verfügung.
Diese Aktivitäten funktionieren aber nur mit der passenden DMS-Version. Deshalb sollten nach dem DMS-Update alle Workflows mit DMS-Aktivitäten im WMS aktualisiert werden.
Vorgehen bei einem DMS Update
1 DMS-Update
Installieren Sie zunächst das DMS-Update.
2 Workflow-Definition öffnen
Öffnen Sie die Workflow-Definition(en) im WMS, die DMS-Aktivitäten enthalten.
Sie erhalten die Meldung “Die konfigurierte DMS-Verbindung weist eine andere Version auf als die verwendeten Aktivitäten. Sollen die Aktivitäten an die DMS-Version angepasst werden?”
→ Bestätigen Sie die Meldung mit “Ja” → Der Workflow ist nun auf die aktuelle DMS-Version aktualisiert
3 Workflow unter neuer Version speichern
Speichern Sie den Workflow unter einer neuen Version! Auch wenn keine pausierten Workflow-Instanzen dazu vorhanden sind.
Ab WMS 1.1.3 Ab Version 1.1.3 wird bei einem DMS-Update immer eine neue Version erstellt (auch bei Klick auf speichern)
Sie erhalten das Fenster zur Eingabe der neuen Versionsnummer. Diese können Sie anpassen und am besten noch einen Kommentar dazu angeben.
Klicken Sie auf “Ok” um die Version zu speichern.
→ Ab jetzt wird diese neu erstellte Version bei Start des Workflows verwendet. Noch pausierte Workflows mit der alten DMS-Version verwenden die vorherige Version.
Wichtig: Die Funktion “Aktuelle Version verwenden” im Monitor ist NICHT notwendig und kann zu Fehlern bei der Ausführung der noch pausierten Instanzen führen.
Ab WMS 1.1.3 Ab Version 1.1.3 gibt es bei einem DMS-Update im Monitor die Möglichkeit “Aktuelle Version verwenden” nicht mehr.
Inhalt
Technischer Hintergrund
DMS-API
Da die [accantum] DMS-Aktivitäten die API-Schnittstelle des DMS verwenden, sind sie abhängig von der DMS-Version.
Bestimmte Aktivitäten sind also erst ab späteren DMS-Version verfügbar, in denen das DMS die API-Schnittstellen bereitstellt. Zu Problemen kann es immer dann kommen, wenn es im DMS ein API-Änderung gibt.
Aktivität “Workflow starten (WMS)
Ausgangslage:
Workflow A startet den SUP-Workflow B und übergibt die WmsAccAttributes.
Während des DMS-Updates ist Workflow A pausiert.
Der Administrator aktualisiert Workflow A und B auf die neue DMS-Version
Folge (bis Version 1.1.2): Beim Fortsetzen der vor dem Update pausierten Workflows kommt es zu diesem Fehler in der “Workflow starten”-Aktivität:
InvalidCastException: Das Objekt "Accantum.Wms.Activities.AccDms.V702.Results.WmsAccAttributes" kann nicht in Typ "Accantum.Wms.Activities.AccDms.V704.Results.WmsAccAttributes" umgewandelt werden.
Anpassung in 1.1.2.365
Die Aktivität Workflow starten - Aktivität prüft die Argumente, die an den SUP-Workflow übergeben werden und sucht aus den Versionen des SUP-Workflows die zu der DMS-Version passende heraus, um diese zu starten.
Beispiel:
Alle Workflows sind auf die aktuelle DMS Version aktualisiert (siehe Vorgehen oben). Es gibt aber noch pausierte Workflows, die mit der alten Version laufen.
Neu gestartete Workflows verwenden immer die aktuellste Workflow-Version (also die mit dem aktuellen DMS)
Alte (beim Update pausierte) Workflows verwenden die vorherige Version des SUP-Workflows, da dieser ebenfalls noch mit der alten DMS-Version arbeitet
WMS Aktivitäten
Jede DMS-Aktivität ist an eine bestimmte DMS-Version gebunden. Es gibt intern also für jede DMS-Version eine eigene Aktivität.
Wenn Sie einen Workflow öffnen, sehen Sie nur die Aktivitäten der Version zu Ihrer hinterlegten DMS-Verbindung. Solange kein Workflow geöffnet oder keine DMS-Verbindung hinterlegt ist, sehen Sie die Aktivitäten der aktuellsten DMS-Version.
In den meisten Fällen ändert sich kaum etwas von Version zu Version.
Wenn es allerdings eine API-Änderung im DMS gibt, dann müssen die Workflows im WMS auf die neue DMS-Version angehoben werden, um neue Funktionalitäten zu nutzen und 100% kompatibel zu sein.
Das Vorgehen gilt nicht nur für DMS-Updates, sondern ist (bedingt) auch bei “Downgrades” der DMS-Version durchführbar. Zu beachten ist aber dann, dass nur Aktivitäten der niedrigeren Version verwendet werden.