从数据库中读取“模板版本为”

问题描述

我需要从数据库中读取属性模板版本为

我尝试过:

  1. 检查了NotesDatabase类(LS和Java),但没有快速找到任何内容
  2. 在catalog.nsf进行了检查,但仍然看不到该值。

有人知道该怎么做吗?谢谢。

enter image description here

解决方法

以下是使用Java获取模板版本的便捷代码段:

private static String getVersionNumber(Database db) {
    NoteCollection noteCollection;
    noteCollection = db.createNoteCollection(true);
    noteCollection.setSelectSharedFields(true);
    noteCollection.setSelectionFormula("$TITLE=\"$TemplateBuild\"");
    noteCollection.buildCollection();
    final String noteID = noteCollection.getFirstNoteID();
    final Document designDoc = db.getDocumentByID(noteID);

    return designDoc.getItemValueString("$TemplateBuild");
}

类似地,您可以获取模板的生成日期:

private static Date getBuildDate(Database db) {
    NoteCollection noteCollection;
    noteCollection = db.createNoteCollection(true);
    noteCollection.setSelectSharedFields(true);
    noteCollection.setSelectionFormula("$TITLE=\"$TemplateBuild\"");
    noteCollection.buildCollection();
    final String noteID = noteCollection.getFirstNoteID();
    final Document designDoc = db.getDocumentByID(noteID);

    return ((DateTime) designDoc.getItemValueDateTimeArray("$TemplateBuildDate").get(0)).toJavaDate();
}