将天数添加到@Today

Adding days to @Today

这可能是一个愚蠢的问题,但我正在尝试通过使用@Today 将(例如)2 天添加到今天的日期。有没有办法在不使用公式语言中的@Adjust 的情况下做到这一点?

除了使用@Adjust,我认为在公式语言中没有其他方法可以做到这一点。我想知道避免@Adjust 的原因是什么?

在 LotusScript 中有一个函数 CDat 可以将数字转换为 date/time 值。我想 CDbl 函数会将 date/time 转换为数字。假设这是真的,您可以将今天的日期转换为数字(自 1900 年 1 月 1 日以来的天数),然后将其加 2,然后将其转换回日期。

视情况而定。不确定为什么要避免 @Adjust,但在某些情况下您需要使用它。

您是否尝试在表单的字段中执行此操作,例如计算截止日期?

假设您有一个名为 Due_DT 的 "Computed When Composed" 字段。

您可以使用 LotusScript 来完成。例如,您可以通过 Call Source.FieldSetText( "Due_DT", Cstr( Today() + 2 ) ).

使用 PostOpen() 代码强制执行它

一般来说,使用 @Adjust( @Today; 0; 0; 2; 0; 0; 0 ) 自动填充未来两天后的值会更容易。

另一方面,如果您试图将日期作为 LotusScript 函数或子例程的一部分进行操作,那么您可以使用 Torsten 的方法,或者您可以使用 NotesDateTime class 和它的 AdjustDay() 方法。

如果您尝试在视图中执行此操作,请重新考虑问题。在视图选择或列公式中包含 @Now@Today 会影响服务器性能。 (观看指数不断刷新。)