2009-01-23 46 views
1

我有一個SharePoint(WSS 3.0,VS 2005)工作流程,它附帶了一個工作流修改表單,我想在一段時間後禁用並繼續使用來自協會表格。有條件地繞過Sharepoint的'onWorkflowModified'活動

如果定時器啓動,通過'onWorkflowModified'活動的最佳方式是什麼?似乎只有監聽修改數據的方法會導致工作流無限期地在活動中等待。

謝謝!

編輯:在並行活動的一個分支中的'onWorkflowModified'活動阻止任何事情發生,直到它被處理 - 這就是我想要避免的。

回答

0

事實證明,正如懷疑的那樣,'onWorkflowModified'從'HandleExternalEventActivity'繼承,這是一個阻塞活動。因此,將它作爲並行活動的一個分支會導致工作流程停止,直到處理完爲止。解決這個問題的最簡單方法是在計時器啓動時觸發它正在等待的事件,並區分從計時器接收事件和用戶。

希望這可以幫助別人!

0

您可能可以運行並行活動。一個聽,另一個等待事件。如果任何一方通過,你可以取消另一方。您無需在onWorkflowActivated步驟中專門做任何事情。只有SharePoint需要啓動工作流程並提供初始數據。