SharePoint 2010基础更新列表Where子句

时间:2014-05-19 23:06:35

标签: sharepoint designer foundation

我需要从列表B中提交的表单更新列表A,其中B.username = A.username。我习惯使用SharePoint 2010 Enterprise和一些高级工具,但现在我被困在2010 Foundation。

我不知道我是否只是有脑力或其他东西,但我无法使其发挥作用。这是基金会的限制吗?在2010 Designer的工作流编辑器中,我可以说使用列表B中的值更新列表A,但不知何故不提交where子句。有人可以帮忙吗?

我实际上要做的是拥有网络上所有用户的列表,而列表B中的表单只会更新"接受"或"拒绝"按用户在第一个列表中的名称。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

假设这是一对一的关系 - 也就是说,在列表B中的项目上触发的WF只会更新列表A中的一个项目 - 当您在WF中配置“更新列表项”操作并选择时除“当前项目”之外的“列表”,底部将显示一个名为“查找列表项”的部分,该部分将允许您定义WF如何在列表A中找到要更新的项目。

见这里: enter image description here

请记住,在使用SharePoint Designer时,您只能使用一对一的关系,并且您可以应用的唯一“where”子句是一个等于过滤器,您可以获得某些值(来自当前item,WF变量,启动参数或静态值)通过equals运算符与远程List中的字段(即列表A)进行比较。如果您定义一个可能导致多个匹配的子句 - 再次,列表B上的WF无法触发列表A中“ n ”项目的更新 - 您将看到此警告: enter image description here

警告:所有这些条件仅适用于通过SPD创建WF的情况;如果您可以访问Visual Studio,则可以使用它来创建&部署工作流,支持根据触发的单个WF更新远程列表中的多个项目,通过等于等等的方式查询关联项目。