Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: manboo8000 am 08.02.18 - 09:05:44

Titel: Erinnerungsmail mit Link zur Datenbank?
Beitrag von: manboo8000 am 08.02.18 - 09:05:44
Hallo, folgende Frage:

Lässt sich aus einer Datenbank relativ simpel automatisch bspw. zum 1. des Monats eine Mail an einen bestimmten Personenkreis versenden? In der Mail soll am Besten ein Link zur Datenbank enthalten sein.

Die Funktion @Mailsend ist ja eher auf Dokumentebene angesiedelt. Das ist hier aber nicht gewünscht.
Titel: Re: Erinnerungsmail mit Link zur Datenbank?
Beitrag von: JayDee am 08.02.18 - 12:59:36
Ja. Es braucht einen zeitgesteuerten Agenten, der jeden 1. des Monats läuft
@MailSend kann keine Datenbanklinks verschicken, daher fällt Formelsprache aus, aber ein kleines LotusScript kann das natürlich.
Titel: Re: Erinnerungsmail mit Link zur Datenbank?
Beitrag von: Klafu am 08.02.18 - 13:39:18
Aus der Hilfe

Code
  1.	This script creates a new mail memo. In the Body item of the memo, the script places a doclink to the current database.
Dim session As New NotesSession
Dim db As NotesDatabase
Dim newDoc As NotesDocument
Dim rtitem As NotesRichTextItem
Set db = session.CurrentDatabase
Set newDoc = New NotesDocument( db )
Set rtitem = New NotesRichTextItem( newDoc, "Body" )
Call rtitem.AppendDocLink( db, db.Title )
newDoc.Subject = "Here is a link to the database"
newDoc.SendTo = "Lauri Nodwell"
newDoc.Send( False )

Ich denke das zeitgesteuerte Versenden sollte kein Problem darstellen.
Chris
Titel: Re: Erinnerungsmail mit Link zur Datenbank?
Beitrag von: manboo8000 am 10.02.18 - 10:54:13
Aus der Hilfe

Code
  1.	This script creates a new mail memo. In the Body item of the memo, the script places a doclink to the current database.
Dim session As New NotesSession
Dim db As NotesDatabase
Dim newDoc As NotesDocument
Dim rtitem As NotesRichTextItem
Set db = session.CurrentDatabase
Set newDoc = New NotesDocument( db )
Set rtitem = New NotesRichTextItem( newDoc, "Body" )
Call rtitem.AppendDocLink( db, db.Title )
newDoc.Subject = "Here is a link to the database"
newDoc.SendTo = "Lauri Nodwell"
newDoc.Send( False )

Ich denke das zeitgesteuerte Versenden sollte kein Problem darstellen.
Chris

Danke für die Rückmeldung. Da ich in LotusScript leider keine Erfahrung habe, noch folgende Fragen.

In einem Konfigurationsdokument in der Datenbank stehen in mehreren Feldern die Empfänger. Wie baue ich das in den "SendTo"-Bereich ein?
Wie kann ich in der Nachricht noch einen Text zusätzlich zu dem Link zur Datenbank erfassen?

Vielen Dank für die Mithilfe
Titel: Re: Erinnerungsmail mit Link zur Datenbank?
Beitrag von: WildVirus am 10.02.18 - 11:51:57
Danke für die Rückmeldung. Da ich in LotusScript leider keine Erfahrung habe, noch folgende Fragen.
Gerade für Einsteiger hilft die Noteshilfe einiges. Wenn Du dann mit Deinem Programm nicht weiter kommst, poste es hier mit genauer Fehlerbeschreibung

In einem Konfigurationsdokument in der Datenbank stehen in mehreren Feldern die Empfänger.
Kommt drauf an, was das für ein Konfigdokument ist. Falls Profiledokument über die entsprechenden Funktion aus der Notesdatabase-Class. Ansonsten über eine Ansicht (Stichwort Notesview)

Wie baue ich das in den "SendTo"-Bereich ein?
Ändere die Stelle ab
Code
newDoc.SendTo = konfigdoc.xxxx
Konfigdoc ist Dein Object, das auf das Konfigurationsdokument verweist und xxxx der Feldname, in dem die Empfänger stehen

Wie kann ich in der Nachricht noch einen Text zusätzlich zu dem Link zur Datenbank erfassen?
Such mal in der Noteshilfe nach der NotesRichTextItem-Class. Ziel ist das Body-Feld, das ist das normale Feld, in das Du Deine Mails schreibst. Da kannst Du fast alles reinpacken

Bau es zwischen den zwei Zeilen ein
Code
Set rtitem = New NotesRichTextItem( newDoc, "Body" )
Call rtitem.AppendDocLink( db, db.Title )

Viel Erfolg
Axel