Отправка сообщения посредством почтового клиента Lotus Notes

21.08.14

Интеграция - Email рассылки

Отправка сообщения посредством почтового клиента Lotus Notes из 1С 7,7 и 1с 8
Доброго времени суток.


Недавно столкнулся с необходимостью не только отправлять сообщения по средствам SMTP и POP3 протоколов, но и хранить отправленное сообщение в 
 папке "Отправленные" у пользователей. Для того, чтобы это реализовать, нужно было воспользоваться именно учетной записью конкретного пользователя.
Установить соединение с ЕГО клиентом LN и при помощи ЕГО же клиента осуществить отправку. 
 Есть несколько статей на данную тему, но нигде нет полностью работающего когда, а лишь отрывки.... Попытаюсь исправить ситуацию.

Используемые источники:

http://forum.ru-board.com/topic.cgi?forum=33&topic=0478

http://www.kb.mista.ru/article.php?id=679

Документация LN



 Итак, для 1С 7

 
 Процедура Сформировать ()
	ФайлВложения = "C:\123.txt";ЛотусСессия = CreateObject( "Lotus.NotesSession" );Если ЛотусСессия = "" ТогдаТекстОшибки = "Не установлен Lotus Notes !";
	Сообщить (ТекстОшибки);Иначе
	ЛотусСессия.Initialize("ПАРОЛЬ");
	ПользовательЛотуса = ЛотусСессия.CommonUserName;ИмяФайлаБд = ЛотусСессия.GETENVIRONMENTSTRING("mailFile", 1);
	БазаДанных = ЛотусСессия.GETDATABASE("", ИмяФайлаБД);Если БазаДанных.IsOpen=1 Тогда
	Сообщить ("Лотус готов для работы");Иначе Дирриктория = ЛотусСессия.GETDBDIRECTORY("");
	БазаДанных = Дирриктория.OpenMailDatabase();КонецЕсли;
	ПочтовыйДокумент = БазаДанных.CREATEDOCUMENT();
	ПочтовыйДокумент.AppendItemValue ("Form","Memo");ПочтовыйДокумент.AppendItemValue ("subject","test");ПочтовыйДокумент.AppendItemValue ("SendTo","mail@mail.com");
	ПочтовыйДокумент.AppendItemValue ("SendTo","mail@mail.com");
	ПочтовыйДокумент.AppendItemValue ("Body","тело письма");
	ВложениеПисьма = ПочтовыйДокумент.CREATERICHTEXTITEM("Attachment");
	ВложенныйОбъект=ВложениеПисьма.EMBEDOBJECT(1454, "", ФайлВложения, "Attachment");
	ПочтовыйДокумент.SaveMessageOnSend = 1;
	ПочтовыйДокумент.Save (1, 0);ПочтовыйДокумент.Send (1);КонецЕсли;КонецПроцедуры
Для 1С 8 практически то же самое:
 Процедура ОткрытьЛотус(Команда)
		ФайлВложения = "C:\123.txt";
		ЛотусСессия = Новый COMОбъект( "Lotus.NotesSession" ); Если ЛотусСессия = Неопределено Тогда
		ТекстОшибки = "Не установлен Lotus Notes !";
		Сообщить (ТекстОшибки); Иначе
		ЛотусСессия.Initialize("МойПароль");
		ПользовательЛотуса = ЛотусСессия.CommonUserName;
		ИмяФайлаБд = ЛотусСессия.GETENVIRONMENTSTRING("mailFile", True);
		БазаДанных = ЛотусСессия.GETDATABASE("", ИмяФайлаБД); Если БазаДанных.IsOpen=True Тогда
		Сообщить ("Лотус готов для работы"); Иначе Дирриктория = ЛотусСессия.GETDBDIRECTORY("");
		БазаДанных = Дирриктория.OpenMailDatabase(); КонецЕсли;
		ПочтовыйДокумент = БазаДанных.CREATEDOCUMENT();
		ПочтовыйДокумент.AppendItemValue ("Form","Memo");
		ПочтовыйДокумент.AppendItemValue ("subject","test");
		ПочтовыйДокумент.AppendItemValue ("SendTo","mail.mail.com");
		ПочтовыйДокумент.AppendItemValue ("Body","тело письма");
		ВложениеПисьма = ПочтовыйДокумент.CREATERICHTEXTITEM("Attachment");
		ВложенныйОбъект=ВложениеПисьма.EMBEDOBJECT(1454, "", ФайлВложения, "Attachment");
		ПочтовыйДокумент.SaveMessageOnSend = Истина;
		ПочтовыйДокумент.Save (Истина, Ложь);
		ПочтовыйДокумент.Send (Истина); КонецЕсли; КонецПроцедуры
	
В принципе, код понятен,  сильно объяснять ничего не надо. Показано, как работать с com объектом LN, как создать письмо и прикрепить Аттач.
Недостатки метода - ПАРОЛЬ, и конечно же сам LN ))), но не мы придумываем корпоративные стандарты.
Пароль можно как нибудь шифровать, или набирать разово при первой отправке, а далее хранить где нибудь, допустим, в параметрах сеанса.

Lotus Notes

См. также

Отправка счет-договора по email 1С 7.7 ТиС с помощью Python

Email рассылки Платформа 1С v7.7 1С:Торговля и склад 7.7 Абонемент ($m)

Данный код позволяет отправлять письма с вложениями (pdf счет договор) на email клиентов. Скрипт написан на Python.

1 стартмани

23.12.2022    5225    1    Drfreeman    5    

3

Отправляем почтой печатную форму любого документа (в формате xls)

Печатные формы Email рассылки Платформа 1С v7.7 1С:Торговля и склад 7.7 Россия Абонемент ($m)

Обработка позволяет отправлять почтой печатную форму любого документа (в формате xls).

1 стартмани

01.11.2022    2501    4    Sancha    6    

2

Отправка счетов из 1С ТиС по e-mail через SSL

Email рассылки Оперативный учет 7.7 1С:Торговля и склад 7.7 Россия Абонемент ($m)

Оперативная отправка печатной формы документа 1С в графическом или PDF формате по E-mail в том числе с использованием SSL.

1 стартмани

19.01.2021    4531    15    ukhin    0    

3

Отправка печатных форм по e-mail

Email рассылки Оперативный учет 7.7 1С:Торговля и склад 7.7 Россия Абонемент ($m)

Отправка печатных документов, отчетов и пр. форм по e-mail.

1 стартмани

28.07.2017    20062    20    АннаШ    44    

2

Обработка отправки документов по почте напрямую из 1С7.7 в файле EXCEL

Загрузка и выгрузка в Excel Email рассылки Документооборот и делопроизводство (СЭД) Платформа 1С v7.7 Конфигурации 1cv7 Россия Абонемент ($m)

Данная внешняя обработка предоставляет функционал для быстрой выгрузки документа в файл Excel и отправки электронного письма с вложенным документом напрямую из интерфейса 1С Предприятие 7.7.

1 стартмани

16.11.2014    39588    101    etmarket    20    

7

Рассылка ошибок из журнала регистрации 1С 7.7 на электронную почту

Журнал регистрации Email рассылки Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Очень полезно узнавать об ошибках при работе 1С раньше, чем пользователи придут жаловаться на проблемы. Если они вообще придут, а не будут молча ругать "глючную 1С".

1 стартмани

26.03.2014    18888    16    vcv    2    

5
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. smit1c 106 27.08.14 16:11 Сейчас в теме
2. MIracloid2000 30.08.14 02:11 Сейчас в теме
3. iolko 318 02.09.14 05:36 Сейчас в теме
(2) MIracloid2000, В целом, конечно лучше IMAP потому как гораздо проще и безопаснее, НО!!!! Есть варианты, когда надо отправить именно под УЗ конкретного пользователя и при этом (обязательно!!!) сохранить письмо в исходящих. Вот в этой ситуации (во всяком случае я не нашел решения) кроме как использовать именно клиента LN.
4. Swetlana 20 12.12.14 14:32 Сейчас в теме
Спасибо за хороший материал, как раз нужен :)
5. Swetlana 20 15.12.14 09:29 Сейчас в теме
Ошибка выходит при получении почты- Сохраненная форма не может содержать вычисляемые подформы, и вроде поначалу она не выходила. В чем может быть дело?
6. iolko 318 16.12.14 08:58 Сейчас в теме
(5) Swetlana, Доброго дня, если честно с получением почты я как то не разбирался, цель была отправить сообщение. Посмотрите в документации к LN. Ссылка присутствует в шапке.
7. crazy.admin91119 18.12.14 17:13 Сейчас в теме
Спасибо за статью!
очень полезная!
Оставьте свое сообщение