Отправка e-mail через Microsoft Office Outlook

02.03.11

Разработка - Универсальные функции

Способ обхода повышенной безопасности Microsoft Office Outlook, для программного доступа к функциям работы с почтой. Используется библиотека Outlook Redemption.

Сама библиотека Outlook Redemption реализована в виде COM DLL. Разработчик Dmitry Streblechenko.

Смысл использования библиотеки состоит в том, что начиная с версии Outlook 2000 и по сей день Microsoft использует режим повышенной безопасности для доступа к Outlook через СDO. В результате программная работа с Outlook либо вообще блокируется, либо каждый раз выдаются предупреждающие сообщения, надоедающие пользователям. Библиотека Redemption позволяет обойти повышенную безопасность и спокойно работать с Microsoft Office Outlook.

Пример кода, для полуавтоматической отправки заказа поставщику из Управления Торговлей. Заказ сохраняется в XLS, присоединяется к письму, и письмо, готовое для отправки, отображается на экране. Далее в новом сообщении Outlook, пользователь может дописать что-нибудь и нажать кнопку Отправить.

функция ПослатьВложениеXLS(ПосылатьОтчет=ложь) экспорт
    Если ПосылатьОтчет тогда
        Отчет=Элементыформы.ПолеТабличногоДокумента;
    иначе
        Отчет=ПечатныйДокумент;
    конецесли;
    ФайлВФорматеXLS = "c:\temp\Заказ.xls"; //ПолучитьИмяВременногоФайла();
    Отчет.Записать(ФайлВФорматеXLS, ТипФайлаТабличногоДокумента.XLS);
    
    myOlApp = Новый COMОбъект("Outlook.Application");
    myItem = myOlApp.CreateItem(0); 
    //Redemption
    SafeItem = Новый COMОбъект("Redemption.SafeMailItem");
    SafeItem.Item = myItem;

    //Адрес
    Если Поставщик<>неопределено тогда
        Запрос=Новый запрос;
        Запрос.Текст="ВЫБРАТЬ КонтактнаяИнформация.Представление 
        | ИЗ 
        | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация 
        | ГДЕ 
        | КонтактнаяИнформация.Вид.Наименование =""Адрес электронной почты контрагента для обмена электронными документами"" 
        | И КонтактнаяИнформация.Объект = &Парам1";
        Запрос.УстановитьПараметр("Парам1",Поставщик);
        выборка=Запрос.Выполнить().Выбрать();
        выборка.следующий();
        адреспочты=выборка.Представление;
        если СокрЛП(адреспочты)<>"" тогда
            myRecipient = SafeItem.Recipients.Add(адреспочты);
        конецесли;
    конецесли;    
    SafeItem.Subject = Отчет.Область(3,2).Текст;
    myItem.BodyFormat=1;
    myItem.Body ="Добрый день.
    |
    |Заказ во вложении. Прошу выставить счет.
    |
    |С уважением,
    |Иванов Иван
    |
    |ООО «Иван»
    |+7 (111) 123-45-67";
    xlAplication = Новый COMОбъект("Excel.Application");    
    xlDoc=xlAplication.Workbooks.Open(ФайлВФорматеXLS);
    xlPS=xlDoc.Worksheets(1).PageSetup;
    xlPS.Zoom=False;
    xlPS.FitToPagesWide=1;
    xlDoc.Save();
    xlAplication.quit();
    myAttachments = myItem.Attachments();
    myAttachments.Add( ФайлВФорматеXLS, 1, 1, "Заказ поставщику");
    SafeItem.Display();
    УдалитьФайлы(ФайлВФорматеXLS);
конецфункции

У библиотеки Redemption есть один важный нюанс. Если вы используете 1С:Предприятие на платформе x64, то и Microsoft Office и библиотека Redemption должны использоваться только 32х-разрядные! То есть офис надо ставить x86. Дело в том, что сама клиентская платформа 1С не имеет версии x64, а достучаться из 32-х разрядной 1С в офис x64 не получается.

См. также

"Акты сверки +" Групповая подготовка и рассылка актов сверки для Бухгалтерии 3.0.

Взаиморасчеты Email рассылки Акт сверки Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Внешняя обработка для Бухгалтерии 3.0 - позволяет автоматически формировать документы «Акт сверки расчетов» с контрагентами за выбранный период с последующей фоновой отправкой на почту контрагента.

3000 руб.

25.11.2020    22417    182    6    

162

Автоматическая рассылка отчетов из 1С: Управление торговлей 10.3 и 1С:УПП по электронной почте

Email рассылки Оптовая торговля Платформа 1С v8.3 1С:Управление торговлей 10 1С:Управление производственным предприятием Управленческий учет Платные (руб)

Многим сотрудникам предприятия требуется актуальная и достоверная информация для принятия верных управленческих решений. Получить данную информацию можно при помощи отчетов, существующих в конфигурации «1С: Управление торговлей 10.3» или «1С:УПП». Но не всегда у пользователей есть время, возможность и/или желание формировать отчеты непосредственно в системе. Намного привычней и удобней получать готовые отчеты на электронную почту, не открывая 1С.

12000 руб.

16.04.2014    84387    100    91    

94

Email, SMS, Telegram рассылки из 1С - Директ Маркетинг

Управление взаимоотношениями с клиентами (CRM) Мессенджеры и боты SMS рассылки Email рассылки Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Полный набор инструментов для качественных транзакционных и маркетинговых Email, SMS, Telegram рассылок из 1С. Даже простые уведомления об оплате счетов способны существенно упростить сбор дебиторской задолженности. Применение всех возможностей прямого маркетинга выводит коммуникацию с клиентами, уровень сервиса и лояльность на новый уровень.

7788 руб.

07.04.2014    83867    41    191    

128

Массовая рассылка печатных форм любых документов по электронной почте

Email рассылки Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

За $m и Руб. Решение для массовой рассылки печатных форм (в том числе и дополнительных) любых документов, и произвольных файлов по электронной почте. Рассылка пакета документов. Добавление факсимильных печати и подписи. Произвольные шаблоны HTML/Simple text с автозаполнением любыми полями документа. Любые форматы файлов. Упаковка вложений в архив. Транслитерация имен файлов. Разбиение рассылки на произвольные порции. Обход спам-фильтров. Журналирование рассылок.

3600 руб.

30.06.2022    9144    64    88    

26

Групповое формирование, согласование, печать и отправка по e-mail актов сверок взаиморасчетов (Бухгалтерия предприятия, ред. 3.0)

Email рассылки Взаиморасчеты Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Указывайте любой период, список организаций, контрагентов, видов договоров (с покупателем, с поставщиком и др.), счетов бухгалтерского учёта, валюту, необходимость детализации по договорам, список печатных форм и форматов их сохранения, а затем формируйте, согласовывайте, контролируйте, печатайте и отправляйте по e-mail готовые акты сверок прямо из 1С: Бухгалтерия предприятия, ред. 3.0.

9000 руб.

03.04.2018    30646    64    24    

64
Оставьте свое сообщение