【问题标题】:Lotus Notes : Insert date value in Lotus Notes form using java agentLotus Notes:使用 Java 代理在 Lotus Notes 表单中插入日期值
【发布时间】:2013-05-09 08:09:25
【问题描述】:

我正在尝试使用 java 代理将数据从分隔文本文件上传到 lotus notes 表单。当我尝试将日期值插入注释文档时,就会出现问题。当我使用ComputeWithForm插入后,它返回false。我正在使用 simpledateformat 将日期格式化为 MM/dd/yyyy 格式,但它仍然无法正常工作。以下是我的代码的摘录。

         String delim, key,  thekey, myDate;
            Date date = new Date();
            SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy);
            myDate = dateFormat.format(date);
newdoc.replaceItemValue("UploadDBDate", myDate);

任何帮助都会很棒。

谢谢, 喜满洲

【问题讨论】:

  • 您希望字段值存储为文本还是日期?
  • 字段需要存储为日期

标签: java validation date lotus-notes lotus


【解决方案1】:

myDate 是一个字符串对象。 replaceItemValue 方法不知道您已将日期放入该字符串,因此它将其视为普通文本。如果 uploadDBDate 是 DateTime 字段,则会在 computeWithForm 操作期间导致类型不匹配。

Java 的 Lotus 类包括 DateTime 类。 Session 类有一个 createDateTime 方法,您可以传递一个“mm/dd/yyyy”字符串并返回一个 DateTime 对象。然后,您可以将该 DateTime 对象传递给 replaceItemValue,而不是传递 myDate。

【讨论】:

  • 非常感谢.. 这有效。我需要更多地学习 Notes java API。
【解决方案2】:

我建议你做这些事情: 1)禁用computewithform并简单地保存文档然后验证字段UploadDBDate,它的值是否正确?它有正确的类型吗? 2) 如果 UploadDBDate 一切正常,则说明表单存在问题,因此请尝试调查您在表单上进行的计算,因为存在问题。

【讨论】:

  • 我评论了上面的行,它为该字段增加了价值,并且创建了文档没有任何问题。虽然我会删除 Compute WithForm 并让你得到结果。表格上也没有进行任何计算。由于这个日期字段,它根本没有被保存
  • 我删除了 ComputeWithForm 并保存了表单。并且以后重新保存表单没有问题。表单上没有这样的验证。所有字段都是计算形式。
猜你喜欢
  • 2012-11-07
  • 1970-01-01
  • 2015-10-09
  • 1970-01-01
  • 2012-09-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多