PDA

Vollständige Version anzeigen : Mail mit Anhang an Notes (aus Access) senden


jonsonjo
12.07.2001, 12:14
Hallo,

ich habe hier eine Funktion mit der man Mails von Access aus an Notes wieterleiten kann. Dies funktioniert auch prima!

Ich möchte nun in meinem Mail auch eine Datei als Anhang verschicken. Hat jemand einen Tip wie ich den Code anpassen muß, damit das funktioniert?

Gruß jonsonjo

Public Function sendNotesMail(subject As String, recipient As String, bodytext As String, SaveIt As Boolean) As Boolean
'Benötigt Lotus Notes Client 4.5.x oder besser

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

On Error GoTo err_SendNotesMail

'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 = ""
MailDbName = ""
'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
MailDoc.Send 0, recipient
'Clean Up
Set Maildb = Nothing
Set MailDoc = Nothing
Set AttachME = Nothing
Set Session = Nothing
sendNotesMail = True
end_SendNotesMail:
Exit Function
err_SendNotesMail:
MsgBox Err.Description & Err.Number, vbCritical, "Fehler Lotus Notes"
Resume end_SendNotesMail
End Function

Wile E G
13.07.2001, 10:42
hi
in deiner function schien das versenden mit anhang schon mal vorgesehen gewesen zu sein(Dim AttachME As Object ), anscheinend wurde diese funktionalität später gelöscht, schau doch mal, ob es da wo du es her hast noch eine zweite prozedur gibt.
Mich würde übrigens die lösung dieses problems auch sehr interessieren.
Gruß Wile E.G.

Morli
13.07.2001, 11:48
Hi jonsonjo,

schau doch mal hier im Forum (Suche: Outlook).
Da findest du z.B. den Verweis auf ACCESS - OUTLOOK (http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=41202)

Gruß

Rainer ;)

Wile E G
13.07.2001, 11:55
hi rainer,
aber das funktioniert doch nur mit outlook oder? für lotus notes muss es doch auch was geben?
Gruß Wile E.G.

MICHIF
13.07.2001, 12:20
Folgende Prozedur funktioniert bei mir

Sub MAIL()
Dim Betreff As String
Dim Empfaenger As String
Dim Text1 As String
Dim Text2 As String
Dim Text3 As String
Dim ABSENDER As String
Dim DATEIANHANG As String
Dim rtitem As Object
Dim EmbeddedObject As Object

Empfaenger = "die email Adresse"
Betreff = "Mail vom " & DATE & " " & TIME
Text1 = "Anbei die gewünschte Datei"
DATEIANHANG = "C:\ecetera\ecetera"
ABSENDER = "mfg "


On Error GoTo Err_Mail_Click
Dim SessionNotes As Object, NotesDB As Object, NotesDoc As Object
Set SessionNotes = CreateObject("Notes.NOTESSESSION")
Set NotesDB = SessionNotes.GETDATABASE("", "")
NotesDB.OPENMAIL
If NotesDB.ISOPEN = False Then
MsgBox "Bitte melden Sie sich zunächst vollständig in Notes an!", vbInformation + vbOKOnly
Exit Sub
End If

Set NotesDoc = NotesDB.CREATEDOCUMENT
With NotesDoc
.Form = "Memo"
.Subject = Betreff
.sendto = Empfaenger
'.copyto = ' Kopie an
'.blindcopyto= Blindkopie
.body = Text1 & vbCrLf & Text2 & vbCrLf & Text3 & vbCrLf & ABSENDER 'Text
'.body = Text1 & vbCrLf & ABSENDER
'.DefaultMailSaveOption = 0
'.MailSaveOption = 0
.DeliveryReport = "B"
.Importance = "2"
'.logo = "Barmenia"
.SAVEMESSAGEONSEND = True ' bei True wird ein Exemplar in Notes in Gesendet gestellt
.ReturnReceipt = "1"
.SIGN = "1"
'.encrypt ="0"
'.Principal = session.UserName
'.viewicon ="74"
'.from = session.UserName
'.SaveOptions = 0
'.SecureMail = ""
'.SenderTag = "F"

''''''''''''''''''''''''''''' Dateianhang''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Const embed_ATT = 1454
Set rtitem = .CREATERICHTEXTITEM("DATEIANHANG")
Set EmbeddedObject = rtitem.EMBEDOBJECT(embed_ATT, "", DATEIANHANG, "DATEIANHANG")
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''''''''''''
.SEND False
End With
Set SessionNotes = Nothing
Set NotesDB = Nothing
Set NotesDoc = Nothing
Set rtitem = Nothing
Set EmbeddedObject = Nothing
Exit_Mail_Click:
Exit Sub
Err_Mail_Click:
MsgBox Err.Description
Resume Exit_Mail_Click
End Sub

jonsonjo
18.07.2001, 08:44
Hallo Michif,

vielen Dank für Deine Prozedur, es hat prima geklappt... und es soll noch Leute geben die Sagen daß man aus Access keine Mails an Notes schicken kann (????)

Jetzt habe ich nur noch ein kleines Problem wenn ich das Mail an mehrere Adressen versenden möchte. Die erste Adresse nimmt er richtig an, die nächsten ändert er aber so, daß dieses Mail nie ankommt (obwohl im Ordner "Versenden" die Adressen noch richtig geschrieben sind). Gibt es hier einen Trick, wie die Adressen geschrieben sein müssen?

Gruß jonsonjo

jonsonjo
18.07.2001, 10:32
Hallo Michif,

kann man auch mehrere Dateianhänge verschicken? Wenn ja, wie muß ich das angeben, denn als "Datei1, Datei2" nimmt er es mir nicht an, sondern sagt, daß der Dateiname unbekannt sei.

Hast Du ein Tip für mich?

Gruzß jonsonjo

jonsonjo
20.07.2001, 05:34
Hallo,

wie sieht es aus? Hat jemand einen Vorschlag für mich wie ich das mit den mehreren Absender und mehrere Dateianhänge bewerkstelligen kann? Danke.

Gruß jonsonjo

kaosqlco
15.08.2001, 14:18
Hallo,

ich habe das gleiche Problem wie jonsonjo:

Ich möchte eine Mail an mehrere Adressaten versenden.
Wenn ich (wie in Notes üblich) die einzelnen Empfänger per Komma und Leerzeichen trenne, sehe ich zwar im Postausgang eine korrekt adressierte Mail, bei den Empfängern kommt aber nichts an.
Wenn ich statt nur eines Empfängers mehrere über Empfängerx definiere, habe ich das Problem, daß ich nicht weiß, wie ich die Empfänger unter '.sendto' trenne.

Wer kann mir helfen?

Gruß kaosqlco

Lupus
15.08.2001, 21:26
<font color="#FF0000" face="Arial" size="2">ABER HALLO !!!!!!!!!!

gibt es evtl dazu im Downloadbereich ein Beispiel </font>

<font color="#FF0000" face="Arial" size="3">.... so ein Access-DAU wie ich würde sich da riiiiiiiiiesig freuen_ :D </font>

<font color="#FF0000" face="Arial" size="2"> Gruß Lupus</font>

Günther Kramer
16.08.2001, 06:52
Nein, ich bin noch nicht dazu gekommen!!!

Das Projekt liegt immer noch auf meinem Schreibtisch, sorry.

Pipo
16.08.2001, 09:30
Die Variable ".sendto" muß bei einer größeren Anzahl von Absendern ein Array sein. Ich hatte das gleiche Problem.
Bei Anhängen könnte es Ähnlich sein, habe es aber noch nicht Probiert.

jonsonjo
16.08.2001, 09:47
Hallo Pipo,

da ich in dem Thema "Array" nicht so bewandert bin, wie würde dann der Code / Variablenzuordnung lauten?

Gruß jonsonjo

Pipo
16.08.2001, 10:49
Auszugsweise ist hier ein Beispiel:

Dim Anzahl As Integer
Dim Z As Integer
Dim Adresse() As String
Anzahl = DCount("*", "tabVerteiler", "Funktion like 'Ing*'")
ReDim Adresse(Anzahl - 1)

Set Data = CurrentDb()
Set tb = Data.OpenRecordset("tabverteiler", dbOpenDynaset)


Kriterium = "Funktion like 'Ing*'"

tb.FindFirst Kriterium
While Not tb.NoMatch
If Not IsNull(tb!USER_ID) Then

Adresse(Z) = tb!USER_ID

End If
Z = Z + 1
tb.FindNext Kriterium

Wend

Da es nur Auszugsweise ist hoffe ich das sich keine Fehler eingeschlichen haben. Aber für einen Hinweis müsste es reichen.

kalle
16.08.2001, 13:45
Hallo!

auch von mir, bitte legt eine Beispiel mdb in den Downloadbereich und gebt's hier bekannt. Damit würdet ihr sicherlich viiiiielen hier einen grooooßen Gefallen tun :-)

Gruß, Kalle

Pipo
16.08.2001, 21:20
Dieses Thema wird in diesem Forum wie es Günter bereits erwähnte unter Projekte behandelt. Wir wollen keine halblösungen für dieses Thema veröffendlichen. Da Jonsonjo bereits einen kleinen Erfolg für sich Verbucht möchte ich ihm für sein Problem nur meine Erfahrung hierzu weitergeben. Eine fertige Lösung habe ich hierzu nicht. Ich hoffe Günter wird sich dieser Sache noch einmal Annehmen und es wird weiterendwickelt.