Создание сообщения Outlook

Автор izvne, 4 марта 2013, 15:00

0 Пользователи и 1 гость просматривают эту тему.

Yakov

А почему бы не воспользоваться диспетчером?

sub Mail
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem получение доступа к документу
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem задаём реквизиты письма
dim argsMail(1) as new com.sun.star.beans.PropertyValue
argsMail(0).Name = "Recipient"
argsMail(0).Value = "my@mail.ru"
argsMail(1).Name = "Subject"
argsMail(1).Value = "mySubject"

rem вызываем почтовый клиент по-умолчанию
dispatcher.executeDispatch(document, ".uno:SendMail", "", 0,argsMail())

end sub


spada

#31
Диспечером тоже пробовал. Я использовал большее кол-во аргументов. Макрос выполняется но при открытии окна thunderbird тема письма - noname, вложений нет, и Тело письма тоже нет. :(


dim argsMail(3) as new com.sun.star.beans.PropertyValue
argsMail(0).Name = "Recipient"
argsMail(0).Value = "my@mail.ru"
argsMail(1).Name = "Subject"
argsMail(1).Value = "mySubject"
argsMail(2).Name = "Body"
argsMail(2).Value = "mySubject"
argsMail(3).Name = "Attachement"
argsMail(3).Value = "file:///home/.../lalala.txt"


Может можно как-то с помощью BASIC вызвать скрипт который  в свою очередь будет совершать отправку письма?

Что значит 0 и "" в этой строке dispatcher.executeDispatch(document, ".uno:SendMail", "", 0,argsMail()) ???

Yakov

То есть задача отправить совершенно сторонний файл, а не документ LO?

rami

Цитата: spada от 12 марта 2015, 12:14Что значит 0 и "" в этой строке dispatcher.executeDispatch(document, ".uno:SendMail", "", 0,argsMail())
Насколько я знаю "" — это целевой фрейм, он должен быть пустой или "_self", 0 — это флаг поиска, только 0 или ничего. Всё это пережитки "великих замыслов"

spada

#34
Я так понимаю, что бесику все равно, что отправлять и упаковывать в письмо.  Но у меня задача стоит отправить диапазон ячеек в теле письма, чтоб получатель мог сразу распечатать или документ целиком в формате .xls.


Частично решена проблема с добавлением файла. Нужно зайти Настройки --- вкладка Интернет --- указать почтовую программу испульзуемую по умолчанию. /usr/bin/thunderbird

Тело письма попросту не добавляется т.к. нет такого метода как .setMessageBody  http://api.libreoffice.org/docs/idl/ref/interfacecom_1_1sun_1_1star_1_1system_1_1XSimpleMailMessage.html

Зато есть этот метод или библиотека.  Можно ли ее использовать? http://api.libreoffice.org/docs/idl/ref/XSimpleMailMessage2_8idl_source.html

economist

Как-то не по себе когда решения не найдено.  Вот предложу такой вариант.
Проверено на "обычном" ThunderBird, OutlookExpress под Windows XP, Vista, 7
Работает ТОЛЬКО в OpenOffice (даже "Portable"), но ни в каком LibreOffice!


Sub send_email
' Отправляет почту Почтовиком по умолчанию
' Проверено на "обычном" ThunderBird, OutlookExpress под Windows XP, Vista, 7
' Работает ТОЛЬКО в OpenOffice (даже "Portable"), но ни в каком LibreOffice!
' Отправляет интерактивно, с отрытием окна письма в "почтовике" по умолчанию

Dim vAttach(1) ' массив для 2-х вложений (0, 1), если больше - делайте функцией

'eMailer = createUnoService("com.sun.star.system.SimpleCommandMail")
'не сработает нигде, т.к. сервис убран в OpenOffice 4.1.2 и свежих LibreOffice

eMailer = createUnoService("com.sun.star.system.SystemMailProvider")
'это работает в OpenOffice 4.1.2, но НЕ работает в LibreOffice!!!

eMailClient = eMailer.queryMailClient
eMailMessage = eMailClient.createMailMessage()
eMailMessage.Recipient = "pechkin100@mail.ru"
eMailMessage.Subject = "Subject Text"
eMailMessage.Body = "Testing body text"
vAttach(0) = ConvertToUrl("C:\DOWNLOAD\replace.dat")' или "file:///home/.../lalala.txt"
vAttach(1) = ConvertToUrl("C:\DOWNLOAD\replace2.dat")'
eMailMessage.Attachement=vAttach()
eMailClient.sendMailMessage(eMailMessage, 0) ' другие флаги, чтобы убрать появление
'окна почтовика вместо 0 - 1,2, DEFAULTS, NO_USER_INTERFACE, NO_LOGON_DIALOG - ничего
'не дали, окно все равно появляется, но это и не особо напрягает.
End Sub
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...