Я бы отнес это скорее к багу, чем к фиче.
Как это работает. Вы получаете документ и меняете в нем значения, но не сохраняете его. Если потом снова получить это документ то тут могут быть варианты:
- Если получать документ в NotesDocumentCollection, тогда там будет ссылка на ранее объявленный документ, то есть содержащий изменения.
- Если получать документ напрямую Getdocumentbykey или GetDocumentByUNID, тогда вы получите документ который реально хранится в базе, то есть без ранее сделанных изменений.
Все это показано на скрипте ниже.
Dim session As New NotesSession Dim db As NotesDatabase Dim nv As NotesView Dim dc As NotesDocumentCollection Dim doc1 As NotesDocument Dim doc2 As NotesDocument Set db = session.Currentdatabase Set nv = db.Getview("LookupByDocUNID") Set doc1 = nv.Getdocumentbykey("7E697F4EEBC18C3343257F090030BADC", True) Call doc1.Replaceitemvalue("F1", "TEST111") 'replace 'test1' -> 'TEST111' Call doc1.Replaceitemvalue("F2", "TEST222") 'replace 'test2' -> 'TEST222' 'NOT Save doc1 !!!!!!!!!!!!!!! 'v1 Set dc = nv.Getalldocumentsbykey("7E697F4EEBC18C3343257F090030BADC", true) Set doc2 = dc.Getfirstdocument() Print doc2.F1(0) 'Printed 'TEST111' Print doc2.F2(0) 'Printed 'TEST222' 'v2 Set doc2 = nv.Getdocumentbykey("7E697F4EEBC18C3343257F090030BADC", true) Print doc2.F1(0) 'Printed 'test1' Print doc2.F2(0) 'Printed 'test2'