Autor Thema: VB6 und Lotus Notes - E-Mail Adressen  (Gelesen 2670 mal)

Offline Mortione

  • Frischling
  • *
  • Beiträge: 26
VB6 und Lotus Notes - E-Mail Adressen
« am: 15.11.05 - 12:09:44 »
Hallo zusammen,
ich habe folgendes Problem, ich generier aus einem VB6 Programm eine E-Mail, in dieser E-Mail wird zur Zeit eine Email-Adresse und eine Kopie erzeugt. Alles ok.
Jetzt muß ich aber die E-Mail an drei Adressen schicken.
Ic habe folgendes versucht:
Mail_To = "Adresse1@test.de" & ", " &  "Adresse2@test.de" & ",  “ & "Adresse3@test.de"
Es funktioniert so leider nicht, der String wird als eine Adresse interpretiert. Kann mir jemand einen Tipp geben ?
Danke im voraus.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: VB6 und Lotus Notes - E-Mail Adressen
« Antwort #1 am: 15.11.05 - 12:24:44 »
Das SendTo-Item des NotesDocuments erwartet bei mehreren Empfängern die Zuweisung eines Arrays.

HTH,
Bernhard

Offline Mortione

  • Frischling
  • *
  • Beiträge: 26
Re: VB6 und Lotus Notes - E-Mail Adressen
« Antwort #2 am: 15.11.05 - 12:33:59 »
Hallo Bernd,
hast Du ein kleines Beispiel. So weit bin ich.

Public Sub SendNotesMail(Subject As String, Recipient As String, BodyText As String, SaveIt As Boolean)
'Variablen Dimensionieren, die benötigt werden, um das Mail zu senden
    Dim Maildb As Object 'Die Datenbank
    Dim UserName As String 'Der Benutzername
    Dim MailDbName As String 'Der Datenbankname
    Dim MailDoc As Object 'Das Maildokument selbst
    Dim AttachME As Object 'Der Anhang (Richtext)
    Dim Session As Object 'Die Notes Session
    Dim EmbedObj As Object 'Ein eingebettetes Objekt (Anhang)
   
    Set Session = CreateObject("Notes.NotesSession")
   
     Set Maildb = Session.GETDATABASE("", MailDbName)
     If Maildb.isOpen = True Then
          'Fertig zum mailen!
     Else
         Maildb.OPENMAIL
     End If
   
    'Ein neues Maildokument erstellen
    Set MailDoc = Maildb.CREATEDOCUMENT
    MailDoc.Form = "Memo"
    MailDoc.sendto = Recipient
    MailDoc.Subject = Subject
    MailDoc.body = BodyText
   
   
    MailDoc.SAVEMESSAGEONSEND = SaveIt
   
    Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment1")
   
    'Lotus öffnen
    Dim Workspace As Object
    Set Workspace = CreateObject("Notes.NotesUIWorkspace")
    Call Workspace.EditDocument(True, MailDoc).GotoField("Body")

   
    'Aufräumen
    Set Maildb = Nothing
    Set MailDoc = Nothing
    Set AttachME = Nothing
    Set Session = Nothing
    Set EmbedObj = Nothing
End Sub

Private Sub Command1_Click()
    SendNotesMail Text1, Text3, Text4, Check1
End Sub


Danke im voraus



Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: VB6 und Lotus Notes - E-Mail Adressen
« Antwort #3 am: 15.11.05 - 15:40:58 »
Ein Beispiel steht in der DesignerHelp - dort wird auch gezeigt, wie man an drei Personen sendet.

Ansonsten ist es ganz einfach: Array of Strings bilden, die Elemente mit den Empfänger füllen und das Array dem SendTo-Item zuweisen.

Bernhard

Offline LotusMen

  • Frischling
  • *
  • Beiträge: 12
  • Geschlecht: Männlich
Re: VB6 und Lotus Notes - E-Mail Adressen
« Antwort #4 am: 15.11.05 - 22:15:15 »
Hallo Frank,

deine Anfrage bzw. Problem habe ich schon mehrmals realisiert. Hierbei übertrage ich über VBA (Word oder Excel) mit einer Aktion SubClick mehrere E-Mails gleichzeitig. In diesen VBA-Makros kann der Mitarbeiter sogar ohne VBA-Programmierkenntnisse die Notes-User selber definieren. Dieser VBA-Code fängt auch jegliche Fehlermeldungen ab. Diese Lösungen kannst du beispielsweise unter Word oder auch unter Excel einbauen, wobei ich persönlich Excel bevorzuge, da in einem Tabellenblatt die Stammdaten variabel hinterlegt werden können.

Bei Bedarf bitte meld dich !

mfg.
Gruss Uwe

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: VB6 und Lotus Notes - E-Mail Adressen
« Antwort #5 am: 15.11.05 - 22:45:45 »
Hallo "Lotusmänner", willkommen im Forum !

Dein Vorschlag geht aber meines Erachtens an der Frage von Frank vorbei. Es geht ja nicht darum, x Mails zu versenden, um x Empfänger zu erreichen, sondern EINE Mail mit den x Empfängern.

Und herrjeh, das ist doch nun nicht schwer:

Code
Dim aRecipients (0 To 1) As String

aRecipients (0) = "adresse1@Test.de"
aRecipients (1) = "adresse2@Test.de"
aRecipients (2) = "adresse3@Test.de"

MailDoc.SendTo = aRecipients
um bei der Syntax von Frank zu bleiben.

Wenn Du trotzdem Deinen Code veröffentlichen würdest, würden sich bestimmt viele freuen, insbesondere wegen des versprochenen ErrorHandlings, der ja bei Franks Code noch vollkommen fehlt. Als "VBA proofed code" hätte der dann was.

Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz