如何将User字段设置为Sharepoint 2010中当前通过XML登录的用户的默认值?

时间:2012-04-27 01:19:29

标签: sharepoint sharepoint-2010

我正在尝试在XML中为User类型的字段创建字段定义,并且需要将其默认值设置为当前登录的用户。我该怎么做?

提前多多感谢。

4 个答案:

答案 0 :(得分:2)

这是我最接近的人:

<Field ID="{99ced9dc-5715-47a7-9ede-1733f027eeb4}" 
    Name="MyField" 
    DisplayName="My Field" 
    Type="User" 
    List="UserInfo" 
    UserSelectionMode="PeopleOnly" 
    Required="TRUE">
    <DefaultFormula>=";#"&amp;Me</DefaultFormula>
</Field>

它没有blow up,但它也没有给出所需的结果。问题是Me会给出用户的名称,但由于User FieldLookup Field的特殊类型,因此会忽略该名称。所需要的只是身份证,但我还没能找到能给我这个价值的东西。

以下是一些可能的解决方法:

答案 1 :(得分:1)

我不这么认为当前登录用户有任何常量,类似于DateTime类型的[today]常量。因此,您可能必须创建自己继承自SPFieldUser的字段并解析由您引入的默认值常量,例如: [current]。然后你的字段xml定义看起来像

<Field Type="MyCurrentUser" Name="MyCurrentUser" ID="{...}">
    <Default>[current]</Default>
</Field>

答案 2 :(得分:0)

这不是XML,但您可以创建在创建项目时运行的工作流程。它会检查该字段是否为空,如果是,则将当前用户添加为值。我做到了这一点并且有效。

答案 3 :(得分:-3)

我写了一个附加组件(SharePoint Default Value Add-On),它在“创建列”对话框中注入了“默认值”部分。

将“当前用户”(正在添加项目的用户)设置为默认值。

enter image description here