Ok I figured out how to solve this. But I am having another dilemma: how can I attach the results of a query, "qryAccessDate", to this email so that it shows up in the body of the email in HTML format. For instance with sendobjects this was how I accomplished the task:
-
DoCmd.SendObject acQuery, "qryPasswordsAboutToExpire", "HTML(*.html)", "MyBoss@aol.com", "", "", _
-
"Users With Passwords About to Expire", "The Passwords of the following " & _
-
"Users will expire within 5 days!", True, ""
-
But my question is how is this done in Lotus Notes without using sendobject?
Here's code for a basic lotus notes email from an Access DB:
-
Public Sub SendNotesMail(Subject As String, Attachment As String, Recipient As String, BodyText As String, SaveIt As Boolean)
-
'This public sub will send a mail and attachment if neccessary to the recipient including the body text.
-
'Requires that notes client is installed on the system.
-
-
'Set up the objects required for Automation into lotus notes
-
Dim Maildb As Object 'The mail database
-
Dim UserName As String 'The current users notes name
-
Dim MailDbName As String 'THe current users notes mail database name
-
Dim MailDoc As Object 'The mail document itself
-
Dim AttachME As Object 'The attachment richtextfile object
-
Dim Session As Object 'The notes session
-
Dim EmbedObj As Object 'The embedded object (Attachment)
-
-
'Start a session to notes
-
Set Session = CreateObject("Notes.NotesSession")
-
-
'Get the sessions username and then calculate the mail file name.
-
'You may or may not need this as for MailDBname with some systems you can pass an empty string
-
UserName = Session.UserName
-
MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " "))) & ".nsf"
-
-
'Open the mail database in notes
-
Set Maildb = Session.GETDATABASE("", MailDbName)
-
If Maildb.ISOPEN = True Then
-
'Already open for mail
-
Else
-
Maildb.OPENMAIL
-
End If
-
-
'Set up the new mail document
-
Set MailDoc = Maildb.CREATEDOCUMENT
-
MailDoc.Form = "Memo"
-
MailDoc.sendto = Recipient
-
MailDoc.Subject = Subject
-
MailDoc.Body = BodyText
-
MailDoc.SAVEMESSAGEONSEND = SaveIt
-
-
'Set up the embedded object and attachment and attach it
-
If Attachment <> "" Then
-
Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment")
-
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment, "Attachment")
-
MailDoc.CREATERICHTEXTITEM ("Attachment")
-
End If
-
-
'Send the document
-
MailDoc.Send 0, Recipient
-
-
'Clean Up
-
Set Maildb = Nothing
-
Set MailDoc = Nothing
-
Set AttachME = Nothing
-
Set Session = Nothing
-
Set EmbedObj = Nothing
-
End Sub
-
* Could someone also show me how to automate the sending of emails using the above code? I wish to send out emails every 60 days.