2016-08-08 12 views
1

Ich arbeite mit Activiti-API und in meinem Projekt habe ich ein Panel, mit dem Benutzer eine Prozessinstanz aussetzen können. Um diese Aussetzung zu machen, befolge ich die aufgelisteten Schritte here, allerdings möchte ich irgendwie den angemeldeten Benutzer speichern, der den Prozess angehalten hat, ist das möglich?Activiti: So speichern Sie den Benutzer, der eine Activiti-Prozessinstanz auf Activiti DB gesperrt hat

Ich habe bereits eine Zeichenfolge mit dem Benutzer in meinem Code, aber ich weiß nicht, wie ich es in Activiti-Datenbank als der Benutzer speichern konnte, der die Prozessinstanz gesperrt hat.

Vielen Dank im Voraus!

Antwort

0

In der Benutzeroberfläche, die Sie zum Aufrufen von "Suspend" verwenden, sollten Sie die API aufrufen, um eine Prozessvariable mit dem UserId THEN Call Suspend zu erstellen.

Die API eine Prozessvariable zu erstellen, ist hier: http://www.activiti.org/userguide/#_create_or_update_variables_on_a_process_instance

+0

Harley, vielen Dank für Ihren Kommentar. Ich denke, es ist eine gute Lösung für das Problem. Ich muss auch den Benutzer speichern, der einen neuen Workflow hochgeladen hat, so dass wir in diesem Fall keine Variablen haben. Gibt es Idea, wie könnte ich das machen? –

+0

Ahh, es ist schwieriger, zu protokollieren, wer eine Bereitstellung veröffentlicht hat, da die Informationen nicht nachverfolgt werden. In der Vergangenheit haben wir dies auf eine von zwei Arten behandelt: 1. Überladen der Mieter-ID mit der Benutzer-ID (wenn Sie nicht mehrere Mandanten haben, ist es sicher). –

+0

2. Verwaltete einen externen Metadatenspeicher (Datenbanktabelle) mit einem Fremdschlüssel für die Bereitstellungs-ID, die die Benutzer-ID enthält. 3. Fügen Sie eine Ressourcendatei zum Bereitstellungspaket hinzu, indem Sie den DeploymentManager erweitern –