Email versenden - Lotus Script Agent

  • Hallo, ich soll einen Lotus Skript Agenten schreiben, der mir eine Email verschickt (das klappt wunderbar).



    Aber was nicht funktioniert ist, dass ich die Email befülle. Ich muss einige Daten mitschicken, die entweder aus einer Form oder einer View kommen. Hat jemand hierfür ein Beispiel? (oder gibt es elegantere Methoden?)



    :danke:

  • Hi,


    Ist ja nicht ganz so schwer.


    Jedoch ohne zu Wissen, wie Dein Agent bisher aussieht und von wo er die Daten holen soll und was es noch
    fuer Rahmenbedingungen gibt, ist es schwer Dir Beispiele zu zeigen.


    Und was verstehts Du unter dem Begriff 'Befuellen'? Sollen die Daten im Body der Mail autauchen?



    Andreas

  • Also anbei noch mein Quellcode:


    Ich möchte quasi den Text der hier mit AppendText hinzugefügt wurde und auch noch weitere Felder aus einer Form oder einer View hinzufügen. (z. B. einen Namen, Anrede, damit die Emails die gesendet werden individuell sind)


    Ja, die Daten sollen dynamisch in den Body der Mail reingeschrieben werden.


    Option Public
    Option Declare


    Sub Initialize


    Dim sendto As String
    Dim memo As NotesDocument
    Dim db As NotesDatabase
    Dim s As New NotesSession
    Dim view As NotesView
    Dim nav As NotesViewNavigator
    Dim entry As NotesViewEntry
    Dim entryvalue As Variant
    Dim value As String
    Dim body As NotesRichTextItem
    Dim rtnav As NotesRichTextNavigator
    Dim col As Integer
    Dim richStyle As NotesRichTextStyle
    Dim form As NotesForm
    '-----------------------------------
    Dim mailText As String
    Dim subject As String


    Set db = s.CurrentDatabase


    ' Memo and Body
    Set memo = db.CreateDocument()
    memo.Form = "memo"
    sendto = "...emailadresse..."
    'später: sendto = Join(db.GetView("($Persons-Setup)").getFirstDocument().dco_ContractorEmail,";")
    Call memo.replaceItemValue("sendto", sendto)
    Call memo.replaceItemValue("subject", "Erinnerung - fällige Evaluation")
    Set body = memo.CreateRichTextItem("Body")
    Set richStyle = s.CreateRichTextStyle
    richStyle.Bold = True
    'Fett: Call body.AppendStyle(richStyle)
    Call body.AppendText("Sehr geehrte Damen und Herren,")
    Call body.AddNewline(2)
    Call body.AppendText("Evaluation erforderlich für: ")
    Call body.AppendDocLink(memo, "Link")


    Set view = db.getview("va_ContractsNextEnd")


    Call body.Appendtext(mailText)
    'Call docMail.send(False)
    ' Dokument speichern


    memo.Form = "Gesendet"


    Call memo.save(True, False, True)


    Call memo.Send(False)


    End Sub

  • Hi,


    Erst einmal kommt es darauf an, von wo Du die Daten lesen willst.


    Aus einem Dokument, dann Dokument einstellen (NotesDocument), Felder auslesen (NotesDocument.GetItemValue("Itemname").
    Wenn Du die Daten aus einer Ansicht lesen willst, Ansich einstellen (NotesDatabase.GetView("Viewname")), Werte lesen mittels NotesView.ColumnValues.



    Andreas

  • Hallo,


    eine Variante, die ich schon genutzt habe, wäre die Mail vorzubereiten und dem Mitarbeiter in seiner Mail-DB in den Entwürfen zu speichern und dann im Frontend anzuzeigen.


    Versenden muss er sie dann halt selber.


    CU,
    Axel