当doc时,xpages当前时间和用户名。是在javascript中创建的

时间:2014-04-18 12:32:45

标签: javascript xpages

我想显示通过xpages创建文档的时间。在clasic lotus notes中,我在编写字段时使用计算。

计算字段显示当前日期:

session.createDateTime("Today") 

如何显示当前时间(撰写文档/ x页时)?

我在计算字段中尝试过类似的东西:

var ndt:NotesDateTime = session.createDateTime("Today");
ndt.toJavaDate().toLocaleString()

但它也显示日期,我想每次打开文档。日期改变。

为了显示用户名,我尝试添加一个计算标签:

    if (currentDocument.isNewNote())
{return @Name("[CN]", session.getEffectiveUserName());
}

但是,如果我稍后重新打开文档,当然标签值为空,我应该在else案例中添加类似{Lotus Notes for @ThisValue的内容。

1 个答案:

答案 0 :(得分:2)

将日期时间转换器应用于您的控件并将其设置为仅显示时间。

更新

请阅读关于价值变化的最后一句话。也许你误将计算字段中的Computedfield控件的作用与一个计算字段在一个Notes表单中的作用有误:在xpages中,控件就像一个“计算显示”字段,因为它不会在doc中存储值,它只是显示它们。在您的情况下,如果数据源isNew(),您可能希望使用beforePageload事件的组合,其中您将当前日期时间值写入Notes字段。然后,您的计算字段显示之前存储的值。

更新#2:

如果您只想显示首次创建文档的时间,您当然不需要在文档中计算和存储该值。而只是使用上面提到的computedField,然后将@Created的ssjs版本应用于它。最后将前面提到的Datetime转换器应用于控件。