Wenn ich mir unsicher bin, probiere ich das in der Praxis aus, das ist besser, als darüber zu sinnieren, wie eine Doku, die im Zweifelsfall auch noch falsch ist, gemeint sein könnte. Ein Script, das in einer Datenbank ein Dokument erstellt und danach über den Schlüssel in einer Ansicht dieses Dokument sucht, ist schnell geschrieben. Danach weißt Du, wie es in der Praxis ist.
Mit einer kleinen Anpassung Deines Scriptes umgehst Du das Problem und gewinnst bei einer großen Ansicht möglicherweise etwas an Performance
| Dim merker List As Integer |
| |
| If Not IsElement (merker (key)) Then |
| Set doc = view.GetDocumentByKey(key, True) |
| If doc Is Nothing Then |
| Set doc = New NotesDocument(dbThis) |
| ... |
| Call doc.Save(True, False) |
| End If |
| merker (key) = 1 |
| End If |
EDIT: Da fehlte eine Klammer, nicht, dass ich pingelig wäre ...
EDIT2: Und natürlich sollte der merker auch dann gesetzt werden, wenn das Dokument in der Ansicht gefunden wurde, also außerhalb des inneren If