我发现将日期存储在备注表单的日期时间字段中的唯一方法是:
theDoc2.replaceItemValue("lastAccess",session.createDateTime("Today"));
但这只会创建一个Date,而不是DateTime。此外,我不想创建像“今日12”这样的静态时间,但我想要动态地使用当前的日期时间。
使用这个我得到一个错误(调用方法NotesDocument.replaceItemValue(string,Date)null发生异常):
theDoc2.replaceItemValue("lastAccess",@Now());
并使用它,表单字段从日期/时间更改为文本数据类型,我想保留日期/时间类型:
theDoc2.replaceItemValue("lastAccess",@Now().toLocaleString);
有什么想法吗?
答案 0 :(得分:4)
试一试:
正如您所写,.replaceItemValue("fieldName", @Now())
会引发错误。
但是,我让它与
一起工作.replaceItemValue("fieldName", session.createDateTime(@Now()))
在这种情况下,该值将作为时间/日期存储在Notes字段中,其中包含所有必需的组件,如
17.01.2014 12:45:51 CET
从我所看到的,两者之间的区别在于@Now()返回Date 数据类型,而session.createDateTime()返回 NotesDateTime对象 < / p>
另一方面,对我而言,它也使用了您原来的方法:
session.createDateTime("Today")
不知道是什么导致了你的问题;你有xpage字段的可编辑represantion吗?如果是这样,它是否启用了某种转换器,可以在提交期间进行一些过滤?
答案 1 :(得分:1)
theDoc2.replaceItemValue("lastAccess",session.createDateTime("Today"+@Now().toLocaleTimeString()));