我正在尝试在XML中为User类型的字段创建字段定义,并且需要将其默认值设置为当前登录的用户。我该怎么做?
提前多多感谢。
答案 0 :(得分:2)
这是我最接近的人:
<Field ID="{99ced9dc-5715-47a7-9ede-1733f027eeb4}"
Name="MyField"
DisplayName="My Field"
Type="User"
List="UserInfo"
UserSelectionMode="PeopleOnly"
Required="TRUE">
<DefaultFormula>=";#"&Me</DefaultFormula>
</Field>
它没有blow up,但它也没有给出所需的结果。问题是Me
会给出用户的名称,但由于User Field是Lookup Field的特殊类型,因此会忽略该名称。所需要的只是身份证,但我还没能找到能给我这个价值的东西。
以下是一些可能的解决方法:
答案 1 :(得分:1)
我不这么认为当前登录用户有任何常量,类似于DateTime类型的[today]
常量。因此,您可能必须创建自己继承自SPFieldUser的字段并解析由您引入的默认值常量,例如: [current]
。然后你的字段xml定义看起来像
<Field Type="MyCurrentUser" Name="MyCurrentUser" ID="{...}">
<Default>[current]</Default>
</Field>
答案 2 :(得分:0)
这不是XML,但您可以创建在创建项目时运行的工作流程。它会检查该字段是否为空,如果是,则将当前用户添加为值。我做到了这一点并且有效。
答案 3 :(得分:-3)