Отправка 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 не получается.

См. также

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

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

3000 руб.

25.11.2020    25502    267    8    

230

SALE! 50%

Мессенджеры и боты SMS рассылки Email рассылки Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

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

4800 2400 руб.

07.04.2014    86231    52    195    

137

Email рассылки Программист Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

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

4920 руб.

30.06.2022    11741    77    100    

39

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

Создать и отправить 1000 Актов серки контрагентам за 5 мин ?! Легко! Разработано для конфигурации УНФ Массовое создание и рассылка Актов сверки в три клика.

6000 руб.

13.01.2022    11171    8    13    

14

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

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

12000 руб.

16.04.2014    85988    101    91    

96

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

Данная обработка позволяет сократить объем ручных операций, выполняемых ежемесячно бухгалтером или его помощником за счет автоматизации систематического процесса.

7800 руб.

12.02.2019    33687    27    24    

26

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

Обработка позволяет автоматически сформировать акты сверок на почту контрагентов (почта берется из контактных данных контрагента). При формировании акта сверки формируется подпись с указанием контактов для связи с бухгалтерией нашей организации (формируется исходя из контактов из карточки организации). Присутствует возможность ручного редактирования электронной почты контрагента для отправки. Отправка осуществляется с системной записи электронной почты. В случае, если у контрагента нет адреса электронной почты, эти контрагенты будут выведены в отдельной табличной части. Это очень удобно, так как сразу наглядно виден список контрагентов, которым невозможно отправить акты сверок!

7080 руб.

11.05.2021    10034    7    2    

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