SharePoint 2010内容组织者条件字符串XML
-
10-10-2019 - |
题
我正在与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的“平等”?我感谢这可能是一个微不足道的建议。这似乎是在这里暗示的,但没有明确说明:
您是通过编程性创建规则吗?我目前正在尝试执行此操作,并且它们成功出现在列表中,但仅当我通过UI再次保存它们时才起作用。
找到它,您想要“ iSqual”。如所述,使用powershell访问列表项目是这样做的。
$ web = get-spweb(weburl); $ list = $ web.lists [“内容组织者规则”]; $ list.items [0] >> c: arule.txt
然后,您可以在文件中查找条件。