可以将SharePoint列从日期/时间更改为计算的日期/时间

时间:2010-04-13 17:27:39

标签: sharepoint

我有一个SharePoint列表,其列最初定义为日期/时间,并已手动填充日期/时间信息。我真的想根据另一个字段更改的状态自动填充此列(例如= IF([theStatus] =“Closed”,[Modified])。

当我编辑这个日期字段时,我想添加上面的代码,我将脚本粘贴到“计算”字段中,保存时,我收到以下错误:

该公式包含对字段的引用。

如果我做错了什么或者SharePoint不允许这种类型的修改,我将不胜感激。

2 个答案:

答案 0 :(得分:2)

对于DateTime字段,“计算的”默认值主要用于=Today+1之类的内容。不幸的是,您无法引用其他字段,您唯一可以引用的变量是Today。为了在计算中引用字段,您需要使用配置为显示DateTime而不是DateTime字段类型的Calculated字段类型。遗憾的是,您无法将现有的DateTime字段转换为计算字段,因此您必须创建一个新字段。

但是,如果您想要在对象模型中播放,则可以始终使用工作流或事件处理程序。我认为如果你走这条路线,SharePoint Designer工作流程也可以解决问题。

答案 1 :(得分:1)

实际上,我做过这样的事情。从用户输入的日期和时间开始,我必须构建用户定义代码,例如“2009/12/13 07:05-AVALTG23”。

我没有任何其他方式:

  • 创建一个自定义操作(在VS2005中),在给定日期时间的情况下,返回格式的字符串以及我想要的操作。由于您正在编写自定义操作并返回字符串,因此您可以随心所欲地执行任何操作。
  • 创建对象时,将启动工作流程,填充“自定义代码”字段。

因此,对于任何如此简单的获取列值,格式化并弹出另一个,我必须开发自定义活动并创建工作流.... 很多工作,但几乎是我能找到的唯一方法。

希望这有帮助!