Hi,
ich habe das Ganze mal in grauer Vorzeit mit Script realisiert.
Function CreateMailMemo(varSendTo As Variant, sSubject As String) As Integer
Dim session As New NotesSession
Dim workspace As New NotesUIWorkspace
Dim maildb As NotesDatabase
Dim maildoc As NotesDocument
Dim profile As NotesDocument
Dim sMailAdress As String
Dim sMailSubject As String
CreateMailMemo = 0
Set maildb = New NotesDatabase("","")
maildb.OpenMail
Set profile = maildb.GetProfileDocument("CalendarProfile")
Set maildoc = New NotesDocument(maildb)
maildoc.Form = "Memo"
maildoc.Logo = profile.DefaultLogo(0)
maildoc.Principal = profile.Owner(0)
maildoc.SendTo = varSendTo
maildoc.Subject = sSubject
Call workspace.EditDocument(True, maildoc)
End Function
Der Funktion, sie stammt aus einer Adress-DB, werden die Mailadresse und die Betreffszeile als Parameter übergeben.
Ob das Ganze auch mit der Formelsprache zu machen ist, kann ich nicht sagen. Ich hatte es damals versucht, bin aber gescheitert.
Axel
Hi,
wenn du das ganze im Frontend machst, dann bleibt dir nichts anderes übrig.
Besser ist es das Dokument im Backend zu erzeugen und dann anzuzeigen.
Beispielsweise so:
Dim session As New NotesSession
Dim workspace As New NotesUIWorkspace
Dim currentdb As NotesDatabase
Dim uidocNew As NotesUIDocument
Dim docNew As NotesDocument
Set currentdb = session.CurrentDatabase
Set docNew = New Document(currentdb)
'Füllen der Felder, auch der RTF-Felder
Call docNew.Save(True,False) 'Temp. Speichern des Backend-Doc. damit RTF-Feld angezeigt wird.
Set uidocNew = workspace.EditDocument(True, taskdoc) 'Dokument im Frontend öffnen
Call docNew.Remove(True) 'Das Dokument, das im Backend erstellt wurde, löschen
...
Wenn nun der User das Dokument ohne zu speichern beendet, ist das Dokument rückstandsfrei weg.
Axel