工作流程:如果项目存在或不存在,如何创建/更新项目

时间:2014-04-17 14:04:48

标签: sharepoint sharepoint-2007

我有2个列表:列表A和列表B.

我的目标是将列表A中的项目复制到列表B。

在SharePoint Designer 2007中,以下是可用的工作流命令:

- Create List Item
- Update List Item
- Copy List Item

哪个命令在列表B&#34中创建一个列表项;如果它不存在",则更新列表B&#34中的列表项;如果它存在"?

2 个答案:

答案 0 :(得分:3)

我昨天在工作中遇到了同样的问题。以下是我今天解决的问题。

解释: 父:列出A. 目标:清单B

创建工作流并将其与父列表关联。 工作流程可以随意开始。

您的工作流程需要3个步骤。

步骤1:创建工作流变量并使用查找将变量设置为目标列表的标题(可以是任何唯一字段)。我选择了Title字段,因为我知道每个项目都是唯一的。 无需条件。 操作:设置变量:Fo​​o到Bar(其中Bar是您选择匹配的字段)

步骤2:检查刚刚分配的变量是否等于您在父列表中创建/编辑的项目的标题(或您选择的唯一字段)。 所以你的条件是:如果变量:Fo​​o等于Bar(其中Bar是你选择的字段) 你的行动将是:停止工作流程

步骤3:如果我们进入第3步,那么我们的变量与现有项目不匹配 此步骤不需要任何条件。 操作:复制项目然后停止工作流程。

就是这样!

此外,如果您想循环浏览列表并处理所有内容,本文对我非常有帮助: SharePoint Looping Workflow - How to: Loop through and process all items in a list

我希望这是有道理的。我希望它对你有用,对我有用!

答案 1 :(得分:1)

您的工作流程需要先检查清单B.如果该项目存在,那么它将需要"更新列表项"。如果它不存在,则需要"复制列表项"。

那你怎么检查?

这里有一篇很棒的文章: http://blog-sharepoint.blogspot.com/2009/08/spd-workflow-test-if-value-exists-in.html