如何知道sharepoint设计器工作流程中的循环结束?

时间:2010-02-08 03:54:40

标签: sharepoint sharepoint-designer

在moss 2007 Service Pack 2中

我设计了一个sharepoint设计器循环工作流程,它处理列表中的每个项目,并使用列表中的标志列跟踪最后处理的项目。

最初列表中的所有项目都有标志列值=否

循环工作流首先查找列表中第一个带有flag = no

的项目

在继续执行此项后,它将其标志变为是。然后它只处理下一个项目。

到达列表中的最后一项,然后将其标记为是。

循环工作流然后以找不到的错误列表项结束,因为在下一次迭代中它没有找到任何没有标记的项。

我的问题是 - 我怎么知道最后一项已被处理。这样我就可以启动一个工作流程,将所有标志重置为no,以使orignal工作流程再次可用。

2 个答案:

答案 0 :(得分:0)

创建条件如果[当前项目中的字段]等于[值]并且仅在满足此条件时执行操作,否则它将退出工作流程。

答案 1 :(得分:0)

至少可以说,在SharePoint工作流程中进行任何类型的循环都是痛苦的。如果流程一次被触发多次,那么您的方法几乎肯定会导致并发问题。

对于这些复杂的要求,您可能需要查看第三方软件。我在使用此产品时有偏见,但您可能需要考虑Workflow Power Pack,它允许将C#或VB代码直接嵌入到SharePoint Designer工作流程中,而无需复杂的Visual Studio开发周期。

如果您不想进入第三方大道,请查看以下文章。