BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Mail erstellen per Makro

Alles zur Programmierung im LibreOffice.
Fritz-Ha
Beiträge: 10
Registriert: Fr 12. Feb 2016, 20:15

Mail erstellen per Makro

Beitrag von Fritz-Ha » Mi 22. Jun 2016, 09:01

Hallo,

zu diesem Thema habe ich einige Einträge hier gefunden, die auch hilfreich waren.
Ich bin bei der Erstellung meines Makros dann aber doch auf ein Problem gestoßen:

Code: Alles auswählen

	
	select case GetGUIType() 
		case 4 
			MailAgent = CreateUnoService("com.sun.star.system.SimpleCommandMail")
		case 1	
			MailAgent = CreateUnoService("com.sun.star.system.SimpleSystemMail") 
	end select
	MailClient  = MailAgent.querySimpleMailClient()
	MailMessage = MailClient.createSimpleMailMessage()
	MailMessage.setRecipient("aaa@bbb.de")
	MailMessage.setSubject("Der Betreff")
	MailMessage.Body = "Hier der Text"
	MailClient.sendSimpleMailMessage(MailMessage, 0)
Das funktioniert alles bis auf die Zeile "MailMessage.Body ...."
LO meldet dann eine nicht gefundene Eigenschaft oder Methode: Body

Wo bitte liegt mein Fehler??

Danke

F.H.

mikele
Beiträge: 1642
Registriert: Mo 1. Aug 2011, 20:51

Re: Mail erstellen per Makro

Beitrag von mikele » Do 23. Jun 2016, 16:33

Hallo,

welche LO-Version benutzt du? Unter 4.4.7 und 5.0.3 kann ich das Problem nicht bestätigen.
Gruß,
mikele

Fritz-Ha
Beiträge: 10
Registriert: Fr 12. Feb 2016, 20:15

Re: Mail erstellen per Makro

Beitrag von Fritz-Ha » Fr 24. Jun 2016, 10:52

Danke schon mal.

Ich habe hier eine recht alte Version 4.1.2.3

Ich werd es zu Hause mal mit einer neuen Version versuchen.


mbG
F.H

Fritz-Ha
Beiträge: 10
Registriert: Fr 12. Feb 2016, 20:15

Re: Mail erstellen per Makro

Beitrag von Fritz-Ha » Mo 27. Jun 2016, 10:51

Ich hab es zu Hause unter Version 5 versucht. Keine Fehlermeldung.
Ist das Problem damit gelöst?
Nein, denn ich muss das irgendwie auf der alten Version (4.1) hinkriegen. Und ich gehe davon aus, dass auch damals schon
Mails mit Text erstellt werden konnten.
Kann mir denn jemand sagen, wie das funktionieren könnte?

Danke auf jeden Fall.

F.H.

craig
Beiträge: 1137
Registriert: Do 21. Apr 2016, 11:42

Re: Mail erstellen per Makro

Beitrag von craig » Mo 27. Jun 2016, 14:49

Hallo F.H.,

habe folgenden Code erfolgreich unter AOO 4.1.2 gestestet.
Du versuchst folgendes:

Code: Alles auswählen

MailAgent = CreateUnoService("com.sun.star.system.SimpleSystemMail") 
Hier liegt das Problem, da der Sevice "SimpleSystemMail" in AOO und in früheren LO-Versionen nicht existiert.
Deshalb mußt Du wie in meinem Code zusehen ist der Service "SystemMailProvider" geladen werden.

Woher ich das weiß?
Habe ich in der bei mir installierten SDK nachgesehen, ob unter diesem Pfad "com.sun.star.system." der Service "SimpleSystemMail" existiert. Dort fand ich unter der SDK für AOO jedoch nur den Service "SystemMailProvider".
Habe diesen ausprobiert, was dann funktioniert, allerdings mussten jetzt die Eigenschaften und Methoden auf diesen Service angepasst werden.
Dazu benutzte ich die IDE-Extension "MRI", damit kann mal den Code (Eigenschaften/ Methoden/Services/Interfaces) untersuchen.
Daraus folgt auch die weitere Anpassung des Codes, da ich auch die Eigenschaften und Methoden dem geladenen Service angepasst habe.

Code: Alles auswählen

REM  *****  BASIC  *****

Sub Main

  MailAgent = CreateUnoService("com.sun.star.system.SystemMailProvider")

' mri MailAgent

   MailClient  = MailAgent.queryMailClient()
   MailMessage = MailClient.createMailMessage()
   MailMessage.Recipient("aaa@bbb.de")
   MailMessage.Subject("Der Betreff")
   MailMessage.Body = "Hier der Text"
   MailClient.sendMailMessage(MailMessage, 0)
End Sub
Was noch fehlt, ist der Service "SimpleCommandMail". Hierfür habe ich enstprechend
Deiner Case-Anweisung noch keinen Service gefunden.
Ggf. schaust Du mal in der Doku nach unter dem Pfad: "com\sun\star\mail"
http://www.openoffice.org/api/docs/comm ... le-ix.html

MRI kannst Du Dir hier herunterladen und installieren. In der Dokumentation steht wie die Extension geladen werden kann.
http://extensions.services.openoffice.o ... ction-tool



Gruß

Craig
Gruß

Craig

Nie die Sicherungskopie vergessen!

════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 7.4.5.1 (x64) • AOO 4.1.8

Fritz-Ha
Beiträge: 10
Registriert: Fr 12. Feb 2016, 20:15

Re: Mail erstellen per Makro

Beitrag von Fritz-Ha » Di 28. Jun 2016, 11:06

Hallo Craig,

danke für die vielen Mühen, die du dir gemacht hast.
Ich habe deinen Code-Vorschlag probiert und bin bis zur Zeile

MailClient = MailAgent.queryMailClient()

gekommen. Da meldet LO mir ein nicht vorhandenes Object.
MRI und auch XRAY finden da auch kein Object für MailAgent

Der Service "com.sun.star.system.SystemMailProvider" ist wohl nicht vorhanden.

Es tut mir leid, aber damit bin ich nicht weiter gekommen.


Gruß,
F.H.

craig
Beiträge: 1137
Registriert: Do 21. Apr 2016, 11:42

Re: Mail erstellen per Makro

Beitrag von craig » Di 28. Jun 2016, 15:10

Hallo F.H.,

nachfolgender Link ist zwar für die LO 5.2 API, für Deine Version konnte ich keine alte Doku finden.
Ggf. bringt Dich dies auf die richtige Spur zur Lösung:
http://api.libreoffice.org/docs/idl/ref ... 1mail.html

Gruß

Craig
Nachtrag:
http://www.pitonyak.org/AndrewMacro.odt
Siehe ab Seite 94
Gruß

Craig

Nie die Sicherungskopie vergessen!

════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 7.4.5.1 (x64) • AOO 4.1.8

Dami
Beiträge: 24
Registriert: Di 20. Jan 2015, 09:33

Re: Mail erstellen per Makro

Beitrag von Dami » Fr 19. Aug 2016, 17:42

vielleicht hilft dir folgendes.
Das Makro erzeugt eine Mail mit Anhang des auktuellen (ThisComponent) Dokuments als PDF
und ein "Body"-Text.
Verwendet wird das standart Mailkonto.
Läuft unter 4.4.7
Mail.zip
(22 Bytes) 358-mal heruntergeladen

Freischreiber
Beiträge: 755
Registriert: Fr 28. Mär 2014, 10:41

Re: Mail erstellen per Makro

Beitrag von Freischreiber » Fr 19. Aug 2016, 19:04

Hallo F. H.,

mir hat dieser Thread aus Base geholfen: http://www.libreoffice-forum.de/viewtop ... =10#p43442

Es benutzt mailto und läuft jedenfalls unter LO 4.2.8.2

Gruß
Freischreiber
Freischreiber nutzt seit 6/2023 LibreOffice Version: 7.2.7.2 (x64) unter Windows 10 und SplitDB mit HSQL 2.7.2.

Fritz-Ha
Beiträge: 10
Registriert: Fr 12. Feb 2016, 20:15

Re: Mail erstellen per Makro

Beitrag von Fritz-Ha » Fr 11. Nov 2016, 07:53

Hallo alle,

die hier beschriebenen Probleme sind alle gelöst. In der Fa. haben wir jetzt auf die 5.1.5.2
aktualisiert. Da lässt sich der Text problemlos einfügen .

Allerdings habe ich ein anderes Problemchen:

Wie kann ich mehrere Mail-Adressen einfügen?

Meine Variante:

sAnschr = "x@y.de; a@b.de"
MailMessage.setRecipient(sAnschr)

funktioniert nicht. Es wird alles wie eine einzige Mailadresse behandelt und von Outlook dementsprechend nicht versand.


Danke.
F.H.

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten