Sharepoint日期时间问题

本文关键字:问题 时间 日期 Sharepoint | 更新日期: 2023-09-27 18:18:34

我们在sharepoint 2010列表中有几个计算字段。

计算如下:=DATE(YEAR(Start),MONTH(Start),1),它将返回月份的开始时间。

=DATE(YEAR(Start),MONTH(Start)+1,1)-1,它们将返回月底。

如果我们在sharepoint 2010中为用户设置了区域设置为"遵循web设置",它就像一个魅力,返回12/1/201112/31/2011

然而,如果有人想个性化他们的日历,以自动调整到他们的时区,他们可以点击My Settings,然后点击My regional settings,并适当地改变他们的时区。

但是,当发生这种情况时,上面的日期计算从结果中减去一天,并返回11/30/2011作为开始,12/30/2011作为结束。

除了强制所有人使用相同的时区之外,还有其他方法可以解决这个问题吗?

Sharepoint日期时间问题

您就不能检查时区并根据代码中的开关调整计算吗?

似乎答案是如何在SharePoint列表中计算日期和时间。当使用=DATE任何类型的计算时,您实际上是在设置日期,因此通过将日期设置为12/1/2011,您实际上也将其设置为12/1/2011 12:00:00 AM。而且,当当地时间据此调整时,时间迫使他们回到前一天。

这不是一个有意的事情。并且可以通过在实际结果中添加一些时间来克服:

=DATE(YEAR(Start + .5),MONTH(Start + .5),1)         
=DATE(YEAR(Start - .5),MONTH(Start - .5)+1,1)-1

从上面的计算中我们可以看到,.5实际上在初始计算中添加了一些小时,如果用户想要将他们的时区设置为更自定义的东西,这将为我们提供适当的设置。

这并不适用于所有时区,然而,考虑到国际时区可能会跨越以上.5的时差,并将其标记为未来一天,或晚一天。

但是,对我们来说,这个问题已经解决了,我们的用户可以再次在他们的区域设置中设置PST, EST, CST, MST等。