SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Workflow Dokumentenbibliothek

bewertet von 0 Usern
Nicht beantwortet Dieser Beitrag hat 0 Geprüfte Antworten | 9 Antworten | 2 Followers

Top-500-Beitragsschreiber
31 Beiträge
ImTraining erstellt in 18 Feb 2015 12:29

Hallo Community,

Wie könnte ich diesen Workflow für eine Dokumentenbibliothek schreiben?

Es soll eine Dokumentenbibliothek sein, Wenn ein Dokument hinzugefügt wird, soll angegeben werden wie lange es gültig ist und wann es abläuft.
Solange es Gültig ist soll es behalten werden und sobald es aber abläuft soll es aus der Bibliothek gelöscht werden.
Ist es über einen Automatischen Workflow überhaupt möglich?.

Könnte es mir jemand schreiben bzw. eine Vorlage geben wie ich es schaffen könnte?
Bin echt ratlos...

Nutze SharePoint Designer 2013

Besten dank

Manuel

Alle Antworten

Top-10-Beitragsschreiber
19.137 Beiträge

Lasse den Workflow bei Neuanlage automatisch starten. Erste Aktion ist dann "Auf Feldänderung warten" (o.s.ä.) und damit läßt Du den Workflow warten, bis das Feld "Läuft ab am" nicht leer ist. Dann kannst Du den Workflow mit der Aktion "Bis Datum anhalten" bis zum Inhalt des Feldes "Läuft ab am" warten. Der Workflow "schläft" in der Zeit und braucht keinerlei Systemressourcen. Danach kannst Du dann ganz normal im Workflow weitermachen, z.B. jemanden benachrichtigen oder das Dokument löschen.

Viele Grüße
Andi
af @ evocom de
Blog
Top-500-Beitragsschreiber
31 Beiträge

Hat wunderbar geklappt danke :)

Top-500-Beitragsschreiber
33 Beiträge

Andi Fandrich:

Der Workflow "schläft" in der Zeit und braucht keinerlei Systemressourcen.

Ich wollte mich, bevor ich das bei unsso umsetze, noch einmal genau wegen dieser Frage vergewissern. Ich möchte eine Vertragsdatenbank realisieren, die die jeweils für den Vertrag verantwortliche Person rechtzeitig darüber informiert, wenn der Vertrag ausläuft. Ich habe den Workflow so realisiert, dass er beim Hochladen des Vertrags startet und dann folgendes macht:

  1. Prüfung, ob Ablaufdatum entspricht HEUTE
  2. Pause bis Ablaufdatum erreicht ist
  3. Mail an die verantwortliche Person.

Der Workflow hat funktioniert. Beim Testen habe ich pünktlich um 0:00 Uhr die Mail bekommen. Wenn wir in der Bibliothek mal 1000 Dateien haben, dann wird es ja faktisch so sein, dass sich der Workflow bei 1000 Dokumenten im Wartestadium befindet. Belastet dies das System tatsächlich nicht? Wie macht der SharePoint das denn? Wenn die Mail auf die Minute genau raus geht, dann ist da doch kein Timerjob im Spiel, oder?

Top-10-Beitragsschreiber
19.137 Beiträge

Diese 1.000 Workflows belasten das System tatsächlich kein Stück (außer daß sie Speicherplatz in der Datenbank verbrauchen). Beim "Einschlafen" wird für den Aufwachzeitpunkt eine Markierung in einer Datenbank gemacht. Der Timer prüft regelmäßig derartige Markierungen und "weckt" die entsprechenden Workflows dann rechtzeitig auf.

Edit: deshalb ist sowas auch nie auf die Minute genau. Der Timer läuft immer nur alle paar Minuten (standardmäßig fünf).

Viele Grüße
Andi
af @ evocom de
Blog
Top-500-Beitragsschreiber
33 Beiträge

Prima, vielen Dank für die schnelle Rückmeldung :)

Top-500-Beitragsschreiber
33 Beiträge

Bei mir ist eine weitere Frage aufgepoppt:

Wie verhält sich denn ein "schlafender" Workflow, wenn der SharePoint-Server oder die Datenbank neu gestartet wird?

Top-10-Beitragsschreiber
19.137 Beiträge

Das macht dem überhaupt gar nichts ;-)

Ein "schlafender" Workflow wird in die Datenbank persistiert, d.h. es wird sein Zustand gespeichert, so daß er daraus später wiederhergestellt werden kann. Das klappt problemlos auch nach einem Neustart. Und sogar nach einer Migration.

Viele Grüße
Andi
af @ evocom de
Blog
Top-500-Beitragsschreiber
33 Beiträge

Jetzt verzweifle ich ... :-(

Ich habe mit dem Sharepoint Designer für eine Dokumentenbibliothek einen Workflow erstellt. Dieser "wartet", bis bei den Elementen ein Datum erreicht ist, und sendet dann eine Email an eine Person. Er wird automatisch ausgeführt, wenn ein Element erstellt und / oder geändert wird. Es hatte alles wunderbar geklappt.

Jetzt habe ich auf Bitten der Fachabteilung schon mehrmals kleine Änderungen am Workflow vornehmen müssen (z.B. Anpassung des Emailtextes). Wenn ich es richtig recherchiert habe, muss der Workflow bei den "wartenden" Elementen gestoppt und wieder gestartet werden, damit die vorgenommenen Änderungen am Workflow bei diesen Elementen auch greifen können. Das ist bei inzwischen über 800 Elementen natürlich mühsam.

Aus dem Grund bin ich so vorgegangen, dass ich den Workflow über die Workfloweinstellungen, die über die Bibliothekseinstellungen aufgerufen werden, entfernt habe und ihn anschließend vom SharePoint Designer aus wieder veröffentlicht habe. Ist das eine Variante, die prinzipiell in Ordnung ist?

Ich hatte jedenfalls dann plötzlich das Problem, dass der Workflow nicht mehr automatisch gestartet hat, wenn ich an einem Element eine Änderung vorgenommen habe. Er blieb beim Workflow-Status "Started" hängen. Ein manuelles Anstoßen des Workflows war zunächst aber noch möglich. Nachdem ich den Workflow auf oben genannten Weg inzwischen nun mehrmals entfernt und wieder veröffentlicht habe, erhalte ich jetzt zusätzlich auch noch die Fehlermeldung "Das hat leider nicht geklappt", wenn ich bei einem Dokument über die Registerkarte "Dateien" auf den Button "Workflows" klicken möchte, um den Workflow von dort manuell zu starten oder mir die ausgeführten und abgeschlossene Workflows für das Element anzeigen zu lassen. Hat jemand eine Idee?

Die Dokumente in der Bibliothek sind alle eingecheckt, und die Option "Auschecken von Dokumenten erfordern, bevor sie bearbeitet werden können" ist deaktiviert. Daran kann es also nicht liegen. Es gibt auch keine offenen Pflichtfelder, die ausgefüllt sein müssen. Von den verwendeten Spaltentypen gibt es eine, die auf Informationen aus den verwalteten Metadaten zugreift. Das war aber auch schon der Fall, als der Workflow noch funktioniert hat.

Top-10-Beitragsschreiber
19.137 Beiträge

Martin Reusch:
muss der Workflow bei den "wartenden" Elementen gestoppt und wieder gestartet werden, damit die vorgenommenen Änderungen am Workflow bei diesen Elementen auch greifen können

Das ist richtig. Änderungen greifen immer nur bei neu gestarteten, aber nicht bei bereits laufenden Workflows.

Martin Reusch:
den Workflow über die Workfloweinstellungen, die über die Bibliothekseinstellungen aufgerufen werden, entfernt habe

Das ist eine sehr rüde Methode. Ich habe keine Ahnung, ob das offiziell "in Ordnung" ist, würde es selbst aber bei einem Produktivsystem nicht machen. Ich habe bisher immer nur die alten Workflows entfernt, bei denen unter laufende Instanzen eine Null angezeigt wurde.

Wenn Du Glück hast, werden Deine Probleme durch die CleanUp-Timerjobs behoben. Es gibt da einige, die in unterschiedlichen Intervallen laufen.

Viele Grüße
Andi
af @ evocom de
Blog
Seite 1 von 1 (10 Elemente) | RSS