| Author: Ruediger Seiffert
 Date:
 Thursday, 1/28/99 5:10 PM EST
 Subject:
 Re: Help. Agent to kick off email after web post
 
 
 
 
 Hi,
 
 ok, you can "steal" the following.
 Ruediger
 
 I suppose you have a flag in your faq-document which will be set if it´s answered
 (faq_answered="true").
 Create another flag which will prevent multiple sending of the same message:
 
 Field (editable - hidden):
 email_already_sent
 Default Value: "false"
 
 Then put the following in the documents QueryClose-Event
 
 Sub QueryClose(Source As Notesuidocument, Continue As Variant)
 Dim doc as NotesDocument
 Dim var1 As String
 ...
 Dim varN As String
 Dim s as New NotesSession
 
 Set doc = source.Document
 var1 = doc.Field1(0)
 ...
 
 If doc.faq_answered(0)="true" and doc.email_already_sent(0)="false" Then
 Call SentNotification(var1, ..., varN, Mailaddress)
 doc.email_already_sent(0)="true" <---- This prevents multiple EMail-Notifications
 Call doc.Save(True, False) <---- I don´t know if this is necessary for QueryClose - test it ;-)
 End If
 End Sub
 
 
 
 And this is your SUB:
 
 Sub SentNotification(s As NotesSession, replytoaddr as String, emailaddr As String) ' <---- Define the variables you need in the same order then you give them to this Sub
 
 Dim s As New NotesSession
 Dim mailDoc As New NotesDocument(s.CurrentDatabase)
 mailDoc.SaveMessageOnSend = False
 Call mailDoc.ReplaceItemValue("Form", "Memo")
 Call mailDoc.ReplaceItemValue("SendTo", emailaddr )					' SendTo can either be canonical or an email address
 Call mailDoc.ReplaceItemValue("Subject", "Your subject goes here.")
 
 ' you can create "Copy", "BlindCopy" etc. in the same manner
 
 ' note that some of the entries below MUST be email addresses and not canonical names
 fromuser = thisAgent.OnBehalfOf			' canonical format ( Agent runs on behalf of a specific user.)
 replytoaddr = doc.ReplyTo(0)				' e-mail format, not canonical
 If (replytoaddr ="") Then
 ' cannot have "", will get Invalid User error for SMTP
 replytoaddr ="somebody@mindwatering.net"
 End If
 mailDoc.From = replytoaddr 					' can be canonical if person doc exists, otherwise make email address format
 mailDoc.ReplyTo = replytoaddr					' must be email address format
 mailDoc.Principal = fromuser					' should be canonical
 mailDoc.INetFrom = replytoaddr 				' must be email address format
 
 ' build the body field
 Dim rtitem As New NotesRichTextItem( mailDoc,"Body")
 Call rtitem.AppendText("Bla Bl Bla " & UName & "!")
 Call rtitem.AddNewLine(1)
 Call rtitem.AppendText("More and more Text")
 Call rtitem.AddNewLine(1)
 ......
 ......
 
 Call mailDoc.Send( False, emailaddr )
 End Sub
 
 
 
 
 previous page
 
 
 |