Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: markoii am 21.01.03 - 11:25:58
-
weiss jemand ein VBA-Script mit dem ich aus PowerPoint heraus eine Send To Funktion integrieren kann. Mit der unteren Funktion kann ich keine Anhänge mitsenden.
Sub Mail(Adressat As String, Optional Titel As String, Optional text As String)
Call shellexecute(0&, "Open", "mailto:" + Adressat + _
"?Subject=" + Titel + "&Body=" + text, "", "", 1)
End Sub
Sub EMailVersendenUeberAPI()
Call Mail("Harry.Hirsch@T-Online.de", "update auf homepage", _
"Besuchen Sie doch mal wieder unsere Website auf http://www.reinke-net.de")
End Sub
wäre für jede andere Möglichkeit auch Dankbar..
güße :-[ :-[
-
... wenn der Mailclient auf jeden Fall Notes ist, dann über die COM-Klassen arbeiten und ein Notesobject erstellen...
ata
-
... wenn der Mailclient auf jeden Fall Notes ist, dann über die COM-Klassen arbeiten und ein Notesobject erstellen...
ata
Danke dass du so schnell antwortest, aber so gut bin ich noch nicht hast du vielleicht ein Beispiel-Code. Ich arbeite auf W2k + Office 2k + R5.07a kein Outlook
grüsse :-\ :-\
-
... einen Beispielcode habe ich dir nicht, aber schau mal auf meiner Homepage im LousScript-Kurs unter Grundlagen | Download, dort habe ich eine Windows-Hilfedatenbank zu LotusScript-COM-Klassenprogrammierung, in der ist eigentlich alles drin was du brauchst...
ata
-
Hier der Code
Sub SendNotesMail()
dim ws as workspace
dim s as object
dim db as object
dim doc as object
st ws = DBEngine.Workspaces (0)
set s = CreateObject ("Notes.NotesSession")
set db = s.CurrentDatabase
set doc = db.CreateDocument
doc.form = "Memo"
doc.SendTo= "DeinEmpfängerName"
doc.Subject = "DeinSubject"
doc.Body = "DerInhaltDerMail"
call doc.send (true)
ws.close
end sub
eknori
-
ata ich schaue mal deine Seiten durch und versuch mich da durchzuarbeiten.
eknori danke für dein script, hab es grade ausprobiert, bekomme aber Fehlermeldung "Benutzerdefinierter Typ nicht definiert" bei workspace
-
Hi,
meines Erachtens kannst du die Variable weglassen. Ich vermute mal das Script stammt aus Access.
Lösche diese beiden Zeilen:
Dim ws As workspace
ws.close
Dann sollte das Ganze funktionieren.
Axel
-
@Axel: Hast recht; script hatte ich mal in ACCESS eingebaut :-[
-
O.k. habe ich auch probiert und jetzt bekomme ich die Fehlermeldung:
Laufzeitfehler '429'
Objekterstellung durch ActiveX-Komponente nicht möglich
bleibt beim debuggen hier stehen:
Set s = CreateObject("Notes.NotesSession")
-
Hi,
ich hab das Script von eknori mal auf die Schnelle getestet. Es läuft problemlos wenn Notes gestartet ist. Andernfalls kommt es zu einer Fehlermeldung bei der Zeile set doc = db.CreateDocument.
Das liegt aber daran, dass beim Notes-Start ein Passwort eingegeben werden muss. Irgendwo hab ich mal gelesen, wie man auch das Passwort übergeben kann. Hab's auf die Schnelle aber nicht gefunden.
Kann es sein, dass dein Notes nicht auber registriert ist ? Schau mal in der Registry ob es unter HKEY_CLASSES_ROOT einen Eintrag Notes.NotesSession gibt. Darunter muss es einen weiteren Schlüssel mit Namen CLSID geben.
Axel
-
das mit der CLSID war das Problem habe Notes nochmal installiert und jetzt geht`s.
Super Danke euch für die tolle Hilfe ;D ;D ;D
möchte ja nicht lästig erscheinen aber wie sprech ich attachments an mit doc.attachment = hat es nicht geklappt naja ist auch nicht so schlimm bekomm ich schon irgendwie raus. ::) ::)
-
... such mal in der Notes-Designer-Hilfe unter NotesEmbeddedObject...
ata
-
Hallo Leute ich hab doch noch was gefunden mit attachment-function :D :D
Sub NotesMail()
Dim strEmpfaenger, strBetreff, strText, strcc, strbcc As String
Dim strFile As String
strEmpfaenger = "mail@mail.com"
strBetreff = "Versandinfo"
strText = "Test"
strText = "Bitte beachten Sie ..."
strFile = "D:\Test\test.doc" 'ActiveDocument.FullName
NotesMailSend strEmpfaenger, strBetreff, strText, strcc, _
strbcc, strFile
End Sub
Function NotesMailSend(strEmpfaenger As Variant, strBetreff As Variant, _
strText As Variant, strcc As Variant, strbcc As Variant, strFilename As String)
' Dimensionierung der Objektvariablen
Dim objNotes As Object, objNotesDB As Object, objNotesMailDoc As Object
Dim SendItem, NCopyItem, BlindCopyToItem, i As Integer, rtitem
Dim msg As String
'
' Zuweisung der Objektvariablen
'On Error GoTo ExitF
Set objNotes = GetObject("", "Notes.Notessession")
Set objNotesDB = objNotes.GETDATABASE("", "")
' Öffnen der Standard-Maildatenbank / Erstellen neues Maildokument
Call objNotesDB.OPENMAIL
Set objNotesMailDoc = objNotesDB.CreateDocument
objNotesMailDoc.form = "Memo"
Call objNotesMailDoc.Save(True, False)
Set SendItem = objNotesMailDoc.APPENDITEMVALUE("SendTo", "")
Set NCopyItem = objNotesMailDoc.APPENDITEMVALUE("CopyTo", "")
Set BlindCopyToItem = objNotesMailDoc.APPENDITEMVALUE("BlindCopyTo", "")
objNotesMailDoc.SendTo = strEmpfaenger
objNotesMailDoc.Subject = strBetreff
Set rtitem = objNotesMailDoc.CREATERICHTEXTITEM("Body")
objNotesMailDoc.Body = strText
rtitem.ADDNEWLINE (1)
Call rtitem.EMBEDOBJECT(1454, "", strFilename)
' Mail zustellen
Call objNotesMailDoc.Save(True, False)
Call objNotesMailDoc.send(False)
objNotesMailDoc.RemoveItem ("DeliveredDate")
Call objNotesMailDoc.Save(True, False)
' Nachricht an Benutzer
msg = "Die E-Mail wurde erfolgreich versendet!"
MsgBox msg, vbInformation, "Notesmail versenden..."
' Objektvariablen zurücksetzenCall
objNotes.Close
objNotes.Quit
Set objNotes = Nothing
ExitF:
End Function
grüsse