Also...
du kannst natürlich über das NotesUIWorkspace Objekt eine Maske öffnen.
Aber nur um das ganze etwas genauer zu sagen:
Einer "geöffneten" Maske liegt immer ein Dokument zu grunde.
Im Prinzip sagt das im Dokument enthaltene Feld "Form" welche Maske zum Anzeigen des Dokuments verwendet werden soll:
! Ich hab den Code direkt hier eingegeben, also noch nicht laufen gelassen !
Dim db as NotesDatabase
Dim doc as NotesDocument
Dim s as NotesSession
Dim uidoc as NotesUIDocument
Dim uiws as NotesUIWorkspace
Set s = New NotesSession
Set db = s.CurrentDatabase
Set doc = db.CreateDocument
doc.Form = "Preview"
Set uiws = New NotesUIWorkspace
Set uidoc = uiws.EditDocument(True, doc, False)
Um das aktuelle Dokument in einer neuen Maske zu öffnen:
Dim doc as NotesDocument
Dim uidoc as NotesUIDocument
Dim uidoc_preview as NotesUIDocument
Dim uiws as NotesUIWorkspace
Set uiws = New NotesUIWorkspace
Set uidoc = uiws.CurrentDocument
Set doc = uidoc.Document
Set s = New NotesSession
Set db = s.CurrentDatabase
Set doc_preview = doc.CopyToDatabase(doc.ParentDatabase)
doc_preview.Form = "Preview"
Set uidoc_preview = uiws.EditDocument(True, doc_preview, False)
!! Das aktuelle Dokument (uidoc) wird, wenn es gespeichert wird, zukünftig auch mit der Maske "Maskenname" geöffnet.
Um das zu umgehen kann man ein temporäres Dokument für die Vorschau erstellen:
Dim db as NotesDatabase
Dim doc as NotesDocument
Dim doc_preview as NotesDocument
Dim s as NotesSession
Dim uidoc as NotesUIDocument
Dim uidoc_preview as NotesUIDocument
Dim uiws as NotesUIWorkspace
Set uiws = New NotesUIWorkspace
Set uidoc = uiws.CurrentDocument
Set doc = uidoc.Document
doc.Form = "Preview"
Set uidoc_printpreview = uiws.EditDocument(True, doc, False)