Frage

Ich unter Windows Workflow (WF) für .NET 4.0, und es scheint, fehlen ein paar Stücke zu sein. Aus BPM Perspektive, möchten Sie die Konzepte der Arbeitswarteschlangen und Sicherheit (Benutzerberechtigung) haben.

Zum Beispiel, sagen Sie mehrere langlaufende Workflow-Instanzen aus verschiedenen Workflows laufen auf einem Anwendungsserver (wie AppFabric) haben. Einige der Fälle bei einer Aktivität für einen Anruf von einem Client (vielleicht ein WCF Empfangen inhaltsbasierte Korrelation) warten. Kunden müssen den Server abfragen können, um zu bestimmen, welche Instanzen Workflow (aus jedem Workflow) für die Eingabe von ihnen warten. Dies muss auf Rechten basierenden (vorzugsweise Active Directory Services verwenden) auf das Aktivitätsniveau.

Zum Beispiel:

  • Workflow 1
    • Aktivität A, korreliert auf orderId
      • Rechte für: Abby, Bill
    • Aktivität B, korreliert auf orderId
      • Rechte für: Abby
  • Workflow 2
    • Aktivität C, korreliert auf workItemId
      • Rechte für: Bill

Workflow 1 hat drei Instanzen ausgeführt wird, zwei an Aktivität A (Aufträge 123 und 456) und eine an Aktivität B (um 789).
Workflow-2 hat 1 Instanz läuft bei Aktivität C (Workitem 99).

Bill fragt den Server und sieht:

Workflow  Activity  Key
1         A         orderId=123
1         A         orderId=456
2         C         workItemId=99

Abby fragt den Server und sieht:

Workflow  Activity  Key
1         A         orderId=123
1         A         orderId=456
1         B         orderId=789

Dieser Artikel bespricht die Funktionalität (Unterstützung für menschliche Aktivitäten) von Grund auf neu zu schreiben für WF 3.x.

Fragen:

  1. Ist jede dieser Funktionalität in WF 4? Wenn ja, was heißt es?
  2. Falls nicht, gibt es ein Open-Source-Projekt, das 4 jede dieser Funktionalität zu WF fügt?
  3. Wenn nicht, gibt es mehr up-to-date-Richtlinien es um die Umsetzung als die oben genannten Artikel?

. Hinweis: Ich möchte lieber nicht Paar die Lösung Sharepoint, wenn ich es vermeiden kann

War es hilfreich?

Lösung

Okay, lassen Sie sich mit dem einfachen awnsers starten.

  1. Nein, es gibt keine direkte Unterstützung für diesen in dem Feld
  2. Soweit ich bin mir bewusst, es gibt kein OS-Projekt diese Funktionalität bietet.
  3. Nicht, dass ich mir bewusst bin, aber dann muss ich zugeben, ich war auch nicht bewusst dieses Artikels.

Bisher für die schlechte Nachricht.

Angenommen, Sie so etwas wie dieses gibt es einige grundlegende Bausteine ??anstelle jedoch schreiben möchten. Wenn Sie die SqlWorkflowInstanceStore verwenden Sie eine Spalte erhalten die aktuellen Lesezeichen für einen bestimmten Workflow enthält. Dies wird Ihnen sagen, welche Aktivitäten zur Zeit in einem bestimmten Workflow aktiv sind, erhalten.

Es gibt auch das Konzept der Immobilienförderung im SqlWorkflowInstanceStore, die Sie extrahieren lassen, und somit Abfrage auf, Workflow-Variablen wie die orderId in Ihrem Beispiel. Eine andere Sache zu registrieren ist die Person, die den Workflow wie oft bestimmte Aktionen gestartet nur vom Urheber erlaubt sind.

Paar diese mit einem benutzerdefinierten Tabelle mit Sicherheitsregeln pro Workflow & WCF Betrieb und ich glaube, Sie sind gut auf dem Weg zu einer grundlegenden Implementierung hier.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top