我正在与SharePoint 2010内容组织者合作,并通过编程设置条件。

它是ecmdocumentRouterrule.conditionsstring属性,它接受以下XML片段的字符串表示:

<Conditions><Condition Column='F38E4008-F1C7-476C-8FB1-17C0A363D16B|Crisp Name|Crisp Name' Operator='Equals' Value='quavers' /></Conditions>

我有一个带有名为“ Crisp Name”的列的内容类型。当它的价值为“颤音”时,它应该采取一些措施。我认为问题是获得正确的操作员价值,但我不知道应该使用哪个。内容组织者规则将成功创建,但是当我尝试在SharePoint中进行编辑时,我会收到一个运行时错误。如果我从代码中删除此条件,则可以按预期查看和编辑SharePoint中的规则。我需要使用平等的条件,尝试了一些变体,包括'=='和'eq'不确定这里缺少什么。

这是一个非常紧迫的要求,任何帮助都将不胜感激

有帮助吗?

解决方案 4

感谢WillFG有用的信息,可以知道参考。但是,在再次介入事物之后,但是在带有新鲜内容类型的新鲜网站收藏中,事实证明,我的问题是在列列ID上的案例敏感性 - 需要较低的情况。我尝试了“相等”和“等等”,并且都正确添加了条件。在两种情况下,我都可以通过UI查看和编辑规则。感谢您的宝贵时间

其他提示

我使用了以下语法,并且效果很好:

$spListItem["RoutingConditions"] ='<Conditions><Condition Column="9ce114d1-0f9d-4825-8a74-a9fc891723c2|ProjectId|Project Id" Operator="IsEqual" Value="123456" /></Conditions>'

您是否尝试过没有S的“平等”?我感谢这可能是一个微不足道的建议。这似乎是在这里暗示的,但没有明确说明:

http://msdn.microsoft.com/en-us/library/microsoft.office.recordsmanagement.recordsrepository.ecmdocumentrouterrule.aspx

您是通过编程性创建规则吗?我目前正在尝试执行此操作,并且它们成功出现在列表中,但仅当我通过UI再次保存它们时才起作用。

找到它,您想要“ iSqual”。如所述,使用powershell访问列表项目是这样做的。

$ web = get-spweb(weburl); $ list = $ web.lists [“内容组织者规则”]; $ list.items [0] >> c: arule.txt

然后,您可以在文件中查找条件。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top