Hallo Reinhard
Ich habe jetzt eine Möglichkeit gefunden, eine e-Mail per Makro zu senden,
und zwar mit PDFAnhang und Boddy und Subject.
Ich verwende dazu MailMerge, allerdings mit einer fast leeren Datenbank:
1 Tabelle mit ID und einer Spalte "Mail" und nur en Record, bei dem
"eMail" leer ist.
die wichtigen Daten werden also nicht aus der Datenbank geholt, sondern
direkt über das Makro.
die Daten aus der Datenbank zu holen ist aber auch kein Problem.
mit meiner Googlemail Adresse schaffe ich es leider nicht, eine
Verbindung aufzubauen.
Das liegt wahrscheinlich am https.
Aber mit gmx.net oder web.de geht alles prima.
zuerst muss man unter Extras->Optionen->LO Writer->Serienbrief-E-Mail,
Die Verbindung zu seinem Mail-Account einrichten ,Authentifizieren und
Testen.
Danach Datenbank einrichten( siehe oben)
Makro in ein Modul(bib Standard) einfügen,
und aus dem Dokument, welches du als PDF Anhang senden möchtest ausführen.
(vorher noch die empfännger e-Mail adresse anpassen.)
Hier der Code:
REM ***** BASIC *****
'Copyright (c) 2011 Frieder Delor, Mailto: delorfr@googlemail.com
'This program is free software; you can redistribute it and/or modify it
under
'the terms of the GNU General Public License as published by the Free
Software
'Foundation; either version 2 of the License, or (at your option) any later
'version.
'This program is distributed in the hope that it will be useful, but
WITHOUT
'ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS
'FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
details.
'You should have received a copy of the GNU General Public License along
with
'this program; if not, write to the Free Software Foundation, Inc., 59
Temple
'Place, Suite 330, Boston, MA 02111-1307 USA
' ========================================================================
sub mailmerge_Email_WithAttechement
'Testen ob Writer oder nicht.
If Not ThisComponent.supportsService("com.sun.star.text.TextDocument") Then
MsgBox "Dieses Makro kann nur aus einem Writer Dokument ausgeführt
werden." ,16,"Fehler"
exit Sub
End if
'Pfad und name bestimmen
GlobalScope.BasicLibraries.LoadLibrary( "Tools" )
sUrl = ThisComponent.getURL()
Path = DirectoryNameoutofPath(sUrl, "/")
Pfad1 = ConvertFromUrl(Path)
sDir = Pfad1 & GetPathSeparator & "Test1.pdf"
sDir1 = converttourl(sDir)
sName =FileNameOutOfPath(sURL)
sName=Left(sName,len(sName)-4)
'exportfilter
dim args1(1) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ExportFormFields" 'just show the contents of the
Form.Fields
args1(0).Value= True
args1(1).Name = "Printing" ' you don't need that.
args1(1).Value= 0
dim args2(1) as new com.sun.star.beans.PropertyValue
args2(0).Name = "FilterName"
args2(0).Value = "writer_pdf_Export"
args2(1).Name = "FilterData"
args2(1).Value = args1
'Die geöffnete Datei als pdf exportieren
ThisComponent.storeToURL(sDir1,args2())
'Mailmerge initialisieren
Dim oMailMerge As Object
oMailMerge = createUnoService("com.sun.star.text.MailMerge")
GlobalScope.BasicLibraries.LoadLibrary( "XrayTool" )
Xray oMailMerge
With oMailMerge
.DataSourceName="MailmergeDatenbank"
'"MailmergeDatenbank" Muss Existieren!!
'Muss eine Tabelle mit Namen "Tabelle1" enthalten.
'Muss ID und eine Spalte, mit name "eMail" enthalten.
'Es genügt aber 1 Record, bei dem die Spalte "eMail" Leer ist.
.DocumentURL=sUrl
.CommandType=0
.Command="Tabelle1"
.OutputType=3 '3=eMail
.Subject="Subject"
.AddressFromColumn="eMail"
'hier wird die empfänger adresse gesetzt(können auch mehr sein).
'zb: Array("delorfr@googlemail.com", "you@bsp.net")
.CopiesTo= Array("delorfr@googlemail.com")
'wenn du die empfänger aus der Liste haben willst, kannst du auf
"CopiesTo" verzichten.
.SendAsHTML=False
.SendAsAttachment=True
.MailBody="Hallo" 'das ist die eigentliche Nachricht
.AttachmentFilter="writer_pdf_Export"
.AttachmentName=sName & ".pdf"
End With
'senden
oMailMerge.execute(Array())
'Freigeben
oMailMerge.dispose
'PDF Datei wieder Löschen
Kill sDir
end sub
--
Informationen zum Abmelden: E-Mail an users+help@de.libreoffice.org
Probleme? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.