Autor Thema: Serienmail aus VB6 mit Notes versenden  (Gelesen 2376 mal)

Offline Strossi

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Serienmail aus VB6 mit Notes versenden
« am: 13.09.04 - 15:28:13 »

Ich habe ein Problem! Ich möchte aus einer Listbox von VB6 alle aufgelisteten emailadressen in das Feld BlindCopyTo von Lotus Notes eintragen. Aber das funktioniert nicht. Ich kann nur max.15 Adressen speichern. Bei mehr als 15 werden alle bis auf eine gelöscht. Kann mir jemadb einen Tip geben. Wäre sehr dankbar daführ. Probiere schon einige Tage daran herum.

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #1 am: 13.09.04 - 15:35:30 »
Gibst Du uns mal ben Code, den Du verwendest? Vielleicht können wir Dir dann eine Alternative aufzeigen.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Strossi

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #2 am: 13.09.04 - 15:40:14 »
Hier der Code:

Listbox von VB:
For icounter = Me.lstMail.ListCount - 1 To 0 Step -1
            KundenMail = Me.lstMail.List(icounter)
            EMailadressen = EMailadressen & KundenMail & ","

Aufruf Notes:

SendNotesMail cboThema.Text, EMailadressen, (BodyTxt)


Email versenden mit Notes:
'Die Session starten
    Set Session = CreateObject("Notes.NotesSession")
        UserName = Session.UserName
        MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " "))) & ".nsf"
   
    'Datenbank öffnen
    Set Maildb = Session.GETDATABASE("", MailDbName)
        If Maildb.ISOPEN = False Then Maildb.OPENMAIL
     
    'Ein neues Maildokument erstellen
    Set MailDoc = Maildb.CREATEDOCUMENT
        MailDoc.Form = "MemoKDE"
        MailDoc.BlindCopyTo = Recipient
        MailDoc.Subject = Subject
        MailDoc.Body = BodyText
        MailDoc.SAVEMESSAGEONSEND = SaveIt
        'MailDoc.ReturnReceipt = "1" 'e-Mail bestätigung vom Empfänger

    'Eingebettete Objekte und Anhänge hinzufügen
    Set NewObj = CreateObject("Scripting.FileSystemObject")
    Set myFolder = NewObj.GetFolder("C:\" + k_Country)
    Set AllFiles = myFolder.Files
    Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment")
        For Each s_Files In AllFiles
            i = InStr(s_Files, ".")
            Datei = LCase(Mid(s_Files, i))
               
                If Datei = ".pdf" Then
                    Attachment = s_Files
                       
                        If Attachment <> "" Then
                            Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment, "Attachment")
                        End If
                End If
       Next
    'Senden
    MailDoc.PostedDate = Now()
    MailDoc.SEND 0, Recipient

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #3 am: 13.09.04 - 15:52:21 »
Da wird vermutlich der String zu lang :(

Versuche doch, was passiert, wenn Du statt eines einzigen Strings direkt die Lise aus der Listbox übergibst. Falls das nicht geht, würde ich im NotesDocument das Feld BindCopyTo als NotesItem erstellen und dann per AppendToTextList die einzelnen Empfänger so im Dokument eintragen.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Strossi

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #4 am: 13.09.04 - 16:16:23 »
OK probier ich mal aus.
Danke für die Info

Gruß Strossi :-)

Offline Strossi

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #5 am: 16.09.04 - 06:30:18 »
Hallo leute habe es geschaft. Mehrere E-Mailadressen mit einem VB Script in das Feld  BlindCopyTo zu schreiben. Das mit NotesItem oder so war gut hat aber nicht geklappt. Hier die Lösung:

Ein dynamisches Array Dimensionieren.
Dim Emailadressen() as string

Die Anzahl der Adressen im Listenfeld zuordnen
AnZahl=Listbox1.ListCount

max.Größe des Array bestimmen
ReDim Emailadressen(Anzahl)

mit einer For schleife die Emailadressen aus der Listbox in das Array schreiben.
For i=listbox1.ListCount-1 to 0 step-1
      Lesen=listbox1.List(i)
      Emailadressen(i)=Lesen
next i

Nun das Array übergeben
z.B. MailDoc.BlindCopyTo=Emailadressen

Jetzt werden alle Emailadressen untereinander Aufgelistet.
Habs mit 147 Stück probiert funktioniert tadellos.

Danke nochmals für eure Tipps
Gruß Strossi
 ;D

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #6 am: 16.09.04 - 09:29:17 »
Das war die andere Variante, die ich gemeint habe, allerdings sollte das ohne Umkopieren funktionieren, etwa so:

MailDoc.BlindCopyTo=listbox1.List
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #7 am: 16.09.04 - 09:39:44 »
Da Jens der String-Variante noch nicht explizit widersprochen hat:
Und mehrere Addressaten müssen immer in einem Array stehen - sie in einem String zu verketten, wird von Notes im Backend nicht akzeptiert (bzw. nicht aufgelöst).

HTH,
Bernhard
« Letzte Änderung: 16.09.04 - 10:11:48 von koehlerbv »

Offline Strossi

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #8 am: 16.09.04 - 09:51:05 »
Das war die andere Variante, die ich gemeint habe, allerdings sollte das ohne Umkopieren funktionieren, etwa so:

MailDoc.BlindCopyTo=listbox1.List

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #9 am: 16.09.04 - 09:51:33 »
Und je nach Implementation kommt die Listbox als Array oder als List daher, normalerweise - wie hier zu sehen - als Array
« Letzte Änderung: 16.09.04 - 09:51:59 von Semeaphoros »
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Strossi

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #10 am: 16.09.04 - 09:52:27 »
Die Variante mit der Listbox anhängen wurde von notes nicht akzeptiert. Zumindest nicht bei mir.

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #11 am: 16.09.04 - 09:59:14 »
Und wenn Du die Variable MailAdressen als Variant deklarierst (gibts das in VB6 ?) und so zuweisest:

MailAdressen = listbox1.List

und das dann an Notes übergibst?
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Strossi

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #12 am: 16.09.04 - 10:08:50 »
 ::) Also ich habe deinen Vorschlag gerade mal durchgeführt.
Aber da erhalte ich den Fehler: Variable nicht Optional.
Doch die Variante mit dem Array functioniert und ist sehr schnell.
Haupt sache es geht.
Gruß Strossi

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Serienmail aus VB6 mit Notes versenden
« Antwort #13 am: 16.09.04 - 10:11:18 »
Danke fürs Testen. erweitert den Horizont :) Scheint mir aber trotzdem etwas seltsam zu sein, dass das Umkopieren erforderlich ist, aber wie Du sahgst, es funktioniert.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz