Results 1 to 2 of 2
  1. #1
    Join Date
    Dec 2002
    Location
    Houston, Texas
    Posts
    74

    Unanswered: VBA and lotus notes - Weired Error Message.

    http://www.fabalou.com/vbandvba/lotusnotesmail.asp - source code

    I am trying to implementing the lotus notes send mail but getting an weird error message.

    Error Message
    =============
    The expression On Click you entered as the even property setting produced
    the following error: Event procedure declaration does not match description
    of even having the same name.

    * The expression may not result in the name of a macro, the name of a user-defined function, or [Event Procedure].
    * There may have been an error evaluating the function, event, or macro.

    Code
    ====
    Private Sub LabelForgotPassword_Click(Subject As String, Attachment As String, Recipient As String, BodyText As String, SaveIt As Boolean)
    '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
    'The next line if for attachment
    '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")

    'Next line only works with 5.x and above. Replace password with your password
    Session.Initialize ("7786")

    '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 or using above password you can use other mailboxes.
    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.PostedDate = Now() 'Gets the mail to appear in the sent items folder
    MailDoc.Send 0, Recipient

    'Clean Up
    Set Maildb = Nothing
    Set MailDoc = Nothing
    Set AttachME = Nothing
    Set Session = Nothing
    Set EmbedObj = Nothing

    End Sub

    Any help will be appreciated....
    (My notes client up and running, I did put my password where I supposed to. Can we prompt user to put their password b/c about 140 people are going to use this, so I can't really put hardcoded password). We are using Lotus Notes 5.0.8(June 1, 2001 realease)
    Attached Thumbnails Attached Thumbnails SP32-20040804-075320.gif  

  2. #2
    Join Date
    Dec 2002
    Location
    Houston, Texas
    Posts
    74

    It's Now Working...

    Send Mail from Access 97 when Client is Lotus Notes
    http://www.fabalou.com/vbandvba/lotusnotesmail.asp - Source Code

    call sendnotesmail, use this behind a command button to send mail. and put the following code behind your form.

    Assuming you have lotus client (mine is 5.0.8)

    you can modify certain lines (for example verifying users)
    I am using a hidden text box for recipient and password.

    Use your judgement.

    ================================================== ===
    Public Sub SendNotesMail()

    Dim Subject As String, Recipient As String, BodyText As String, SaveIt As Boolean

    '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
    'The next line if for attachment
    '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")

    'Define recipient, body test, subject
    Recipient = Me.StrRecipient
    BodyText = Me.strOriginalPassword
    Subject = "Your Password"


    'Next line only works with 5.x and above. Replace password with your password
    'Session.Initialize

    '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 or using above password you can use other mailboxes.

    If Not fOSUserName = Me.txtUser Then
    MsgBox "You can only request password when you logged onto Windows NT with you AIG Valic ID"
    Exit Sub
    Else

    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.PostedDate = Now() 'Gets the mail to appear in the sent items folder
    MailDoc.Send 0, Recipient

    MsgBox "Your password has been sent. However, You may have to grant Plan Manager when prompted by Lotus Notes."

    'Clean Up
    Set Maildb = Nothing
    Set MailDoc = Nothing
    'Set AttachME = Nothing
    Set Session = Nothing
    Set EmbedObj = Nothing

    End If

    End Sub

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •