我有一个字段,它使用计算列类型来引用ID字段。它基本上是:名称和ID。例如,Name01,Name02,Name03等。
但是,当我向sharepoint添加新行时,此列不会自动更新,我必须手动单击该字段才能更新它。
有什么办法可以解决这个问题吗?谢谢
发布于 2012-11-01 17:32:28
我也看到过这种行为,但并不明显,因为当您第一次创建该列时(以及每次编辑该列时),一切看起来都很好。
我发现我可以使用SharePoint Designer工作流来解决这个问题。工作流会更新普通文本字段以存储ID值,然后计算列可以引用该文本字段,而不是实际的ID字段。
具体步骤如下:
<代码>H19添加工作流操作以更新当前项目(更新列表项)<代码>H210<代码>G211
然后,我只需在我的计算列中引用ItemID,而不是ID,它就像一个护身符。
一个缺点是用户最终会在新建和编辑表单上看到ItemID字段,除非您做些什么来隐藏它。
如果您手头有更多的时间,并且希望避免向工作流历史记录列表发送垃圾邮件,则可以在事件处理程序中执行相同的变通方法。
发布于 2011-03-16 17:02:37
这是设计好的。
计算列的表达式中不能包含ID字段。原因是sharepoint在创建/更新时存储计算字段的结果值。一旦创建了项,ID就不存在了。因此,它没有什么可以填充的。但是,一旦更新了值,您就可以看到ID已填充并且现在可用。
https://stackoverflow.com/questions/5327299
复制相似问题