- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想做的是通读 lotus notes 5 并将其中的所有文档导出到本地 modeshape 存储库,但是一旦我读完所有百万条记录/文档,该过程就会从 lotus notes 中的第一条记录开始读取但我不想要那个。我只需要阅读莲花笔记中最近修改的文档。
我的函数看起来像这样:
public void run() {
logger.log(Level.INFO, "entering run");
try {
String pathToFolder = "";
s = NotesFactory.createSession(host, "username", "password");
Database db = s.getDatabase("", nsffilename);
if (!db.isOpen()) {
db.open();
}
DocumentCollection docCol = db.getAllDocuments();
Document doc = docCol.getFirstDocument();
while (doc != null) {
doc = docCol.getNextDocument();
}
}
}
我在网上找到了一些代码,贴在这里: http://www-12.lotus.com/ldd/doc/domino_notes/7.0/help7_designer.nsf/f4b82fbb75e942a6852566ac0037f284/c698b5888603d5cd8525704a00417105?OpenDocument
但这只适用于 lotus notes 8 及以上版本。但我坚持使用莲花笔记 5。如果有什么方法可以在 Lotus Notes 5 中获取最近修改的文档,请告诉我。
最佳答案
创建一个 View ,第一列 @Modified
按降序排列,并使用 View 类读取所有文档 - 最后修改最先。
...
View view = db.getView("YourViewSortedByLastModified");
view.setAutoUpdate(false);
Document tmpdoc;
Document doc = view.getFirstDocument();
while (doc != null) {
// do with your doc what you want
tmpdoc = view.getNextDocument(doc);
doc.recycle();
doc = tmpdoc;
}
您可以在到达上次运行的文档时中断 while 循环。
不要出于性能原因,在您的 View 选择公式中包含任何提供当前时间或日期的函数,如@Now 或@Today。最好列出所有文档并在到达上次运行的文档时停止循环。
DocumentCollection
中的文档顺序是不确定的。通常最旧的文件排在第一位,但您不能依赖这一点。如果您遍历 View
,文档在 View 中的顺序将保持不变。
关于java - 如何在 Lotus Notes 5 中查找最近修改的文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21789616/
我是一名优秀的程序员,十分优秀!