我有一个 SharePoint(WSS 3.0,VS 2005)工作流,它附加了一个工作流修改表单,我想在一段时间后禁用它并继续使用关联表单中的参数。
如果计时器到了,跳过“onWorkflowModified”活动的最佳方法是什么?似乎侦听修改数据的唯一方法会导致工作流无限期地等待活动。
谢谢!
编辑:并行活动的一个分支中的“onWorkflowModified”活动阻止任何事情发生,直到它被处理——这是我试图避免的。
我有一个 SharePoint(WSS 3.0,VS 2005)工作流,它附加了一个工作流修改表单,我想在一段时间后禁用它并继续使用关联表单中的参数。
如果计时器到了,跳过“onWorkflowModified”活动的最佳方法是什么?似乎侦听修改数据的唯一方法会导致工作流无限期地等待活动。
谢谢!
编辑:并行活动的一个分支中的“onWorkflowModified”活动阻止任何事情发生,直到它被处理——这是我试图避免的。
您可能可以运行并行活动。一个监听,另一个等待事件。如果其中任何一个被逐步执行,您可以取消另一个。您无需在 onWorkflowActivated 步骤中专门执行任何操作。仅 SharePoint 需要它来启动工作流并提供您的初始数据。
事实证明,正如怀疑的那样,“onWorkflowModified”继承自“HandleExternalEventActivity”,这是一个阻塞活动。因此,将其作为并行活动中的一个分支会导致工作流停止,直到它被处理。绕过它的最简单方法是在计时器启动时触发它正在等待的事件,并区分从计时器接收事件和用户接收事件。
希望这可以帮助别人!