如何在更改后台文档时刷新XPage中的数据源?

Tol*_*ela 0 lotus-notes xpages

如果我从数据源获取NotesDocument对象,更改某些字段然后保存数据源,而不直接保存NotesDocument,则不会保存更改.

例如:

var doc:NotesDocument = document1.getDocument(true);
doc.replaceItemValue("TestField", "Test");
Run Code Online (Sandbox Code Playgroud)

我使用简单的操作保存数据源,文档中的字段"TestField"为空.

如何使用后台文档中的更改来更新数据源?

Pau*_*ers 5

史蒂夫是正确的,如果你想更新后端文档并在DominoDocument包装器数据源上反映出来,你需要保存.

但根据您的回答,您为什么要尝试更新后端文档?使用更新DominoDocument似乎更有意义document1.replaceItemValue("TestField", "test").

在queryNewDocument中,不存在后端文档.在此期间document1.save(),代码将有效地调用database.createDocument(),然后将所有字段写入document1新创建的Document对象.如果之前创建了一个Document对象,那么在Steve的回答评论中你会遇到问题 - 如果保存被取消,则需要删除Document对象.