hallo zusammen, ich hoffe, dass ihr mir einen kleinen denkanstoss geben könnt. ich weiss nämlich nicht mehr weiter ;-)
ich habe eine datenbank A, in der ich masken erstellt habe (formulare). nachdem ein mitarbeiter ein formular ausgefüllt hat, soll er es mittels seiner mail-db versenden. zu beginn habe ich es mir einfach gemacht und die systemaktion "weiterleiten" eingebunden. klappt auch alles wunderbar... kann nur nicht den empfänger etc. vorgeben und die mail nicht sofort versenden, ohne das der user noch aktionen ausführen muss.
ich habe mich nun umgeschaut und festgestellt, dass "RenderToRTItem" genau das ist, was ich brauche. ich habe das beispiel aus der hilfe etwas modifiziert, aber er bringt mir immer ne fehlermeldung. zudem zeigt er die ausgehende mail beim user nicht in der ansicht "Gesendet" sondern in "Entwurf" an. hier mein code:
Sub Click(Source As Button)
Dim session As New NotesSession
Dim workspace As New NotesUIWorkspace
Dim db As NotesDatabase
Dim maildb As NotesDatabase
Dim uidoc As NotesUIDocument
Dim docA As NotesDocument
Dim docB As NotesDocument
Dim rtitem As NotesRichTextItem
Dim success As Variant
Set db = session.CurrentDatabase
Set uidoc = workspace.CurrentDocument
Set docA = uidoc.Document
Call uidoc.Save
Set maildb = session.GetDatabase("","")
maildb.OpenMail
Set docB = New NotesDocument(maildb)
docB.Form = "Memo"
docB.Subject = "Geldwäsche Verdachtsmeldung"
docB.SendTo = "Geldwaeschebeauftragter"
Set rtitem = New NotesRichTextItem(docB, "Body")
Call docB.Save(True, True)
success = docA.RenderToRTItem(rtitem)
Call docB.Save(True, True)
Call docB.Send(False)
Call uidoc.Close
End Sub
das dokument soll in der datenbank A nicht gespeichert werden. dafür habe ich auch schon das queryclose-ereignis eingestellt, welches auch funktioniert:
Sub Queryclose(Source As Notesuidocument, Continue As Variant)
If Not Source.IsNewDoc Then
noteid$ = source.document.NoteID
Delete source '[ this deletes the memory reference to the uidoc and anything inferred from it, except noteid$ lingers on ]
Dim S As New notessession
Set db = s. currentdatabase
Set doc = db.GetDocumentbyID(noteid$)
Call doc.Remove(True)
End If
End Sub
was muss ich daran ändern?! jetzt schon vielen dank für eure antworten... gruß thilo.