Das ist ein wenig tricky. Am einfachsten wäre es, wenn Du die zu füllenden Felder auch in Dok A hast. Dann kannst Du per DialogBox die Felder füllen und wenn die DialogBox mit "OK" geschlossen wird, werden die Werte erstens in Dok A übernommen und zweites im Hintergrund ein Dok B erzeugt, in das die Daten geschossen werden.
Ansonsten müßtest Du folgendermaßen vorgehen :
- Dokument vom Typ B im Hintergrund erstellen, Form setzen
Set notesDocument = notesDatabase.CreateDocument
notesDocument.Form = "Maske B"
Call notesDocument.Save
- erzeugtes, leeres Dokument mit DialogBox öffnen
flag = workspace.DialogBox (..., notesDocument)
- User füllt das Dokument aus und schließt mit "OK"
- Dokument speichern
If flag = True Then
Call notesDocument.Save
End If
- im UIDoc die Werte aus dem Dok B auslesen und in die Felder schreiben
Call UIDoc.FieldSetText("FeldA", notesDocument.FeldA(0))
Wobei ich ehrlich gestehen muß, ich hab so einen Stunt noch nie gemacht. Kann durchaus sein, daß ich da jetzt etwas übersehen habe.
Und man muß sich natürlich auch überlegen, wie man mit dem im ersten Step erzeugten Document umgeht, falls der User abbricht. Sonst hat man jede Menge Leichen in der Datenbank liegen.